intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài viết CCNP QoS - Đặng Quang Minh

Chia sẻ: Hiếu Nguyễn | Ngày: | Loại File: DOC | Số trang:13

92
lượt xem
16
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài viết trình bày nhu cầu về QoS và các mô hình QoS, Diffserv QoS, thứ tự các tác vụ QoS được thực hiện, cấu hình Diffserv.

Chủ đề:
Lưu

Nội dung Text: Bài viết CCNP QoS - Đặng Quang Minh

Bài viết CCNP QoS<br />  <br /> <br /> Tác giả: Đăng Quang Minh <br /> ̣<br /> <br />  <br /> <br /> I. NHU CẦU VỀ QOS VÀ CÁC MÔ HÌNH QOS:<br />  <br /> <br /> 1.1. Nhu cầu về QoS:<br /> <br />  <br /> <br /> ­         Theo truyền thống, khi nhu cầu về băng thông tăng lên, hiện tượng nghẽn mạng <br /> có thể x ảy ra. Ta có thể giải quyết bằng cách tăng băng thông kết nối hoặc dùng <br /> thiết bị phần cứng khác thay thế. Nhược điểm cách này là không chỉ ra cách thức để <br /> ưu tiên một loại traffic này so với một traffic khác.<br /> <br />  <br /> <br /> ­         QoS là một công cụ tổng thể được dùng để bảo vệ, ưu tiên một số traffic quan <br /> trọng hoặc các traffic đòi hỏi xử lý nhanh về thời gian. QoS sẽ mô tả cách thức <br /> packet được chuyển mạch (forward) như thế nào.<br /> <br />  <br /> <br /> ­         Các ứng dụng khác nhau sẽ có các nhu cầu khác nhau cho việc truyền dữ liệu.  Ví <br /> dụ web, video, audio…<br /> <br />  <br /> <br /> ­         Khi một packets đi từ host này đến host kia, một gói tin (packet) có thể gặp các <br /> vấn đề:<br /> <br />  <br /> <br /> Delay: do routers xử lý tìm kiếm trong bảng routing table, thời gian packet truyền <br /> trên đường truyền. <br /> Jitter: các packets không đến đúng như thời gian dự định. Các dữ liệu dạng audio sẽ <br /> bị ảnh hưởng nhiều bởi vấn đề này. <br /> Loss: mất packets<br />  <br /> <br /> 1.2. Các mô hình QoS:<br /> <br />  <br /> <br /> BEST-EFFORT DELIVERY:<br /> <br />  <br /> <br /> ­         Một network chỉ đơn thuần forward những packets mà nó nhận được.<br /> <br /> ­         Switch và routers chỉ cố gắng hết sức (best­effort) để forward packets đi mà không <br /> bận tâm đến kiểu của traffic hay độ ưu tiên của dịch vụ.<br /> <br />  <br /> <br /> INTEGRATED SERVICE MODEL<br /> <br />  <br /> <br /> ­          Sắp xếp đường đi trước từ nguồn đến đích cho các dữ liệu được ưu tiên.<br /> <br /> ­          RSVP (RFC 1633) là một protocol dạng này.<br /> <br /> ­          RSVP sẽ yêu cầu trước băng thông và giữ (reserve) bw trên cả đường đi từ <br /> nguồn đến đích.<br /> <br /> ­          Mỗi thiết bị mạng trên đường đi phải kiểm tra xem nó có thể hỗ trợ cho yêu cầu <br /> trên hay không. Khi yêu cầu tối thiểu được đáp ứng, ứng dụng nguồn sẽ được thông <br /> báo xác nhận. Sau đó, ứng dụng có thể sử dụng đường truyền.<br /> <br />  <br /> <br /> DIFFERENTIATED SERVICES MODEL<br /> <br />  <br /> <br /> ­          Giải pháp IntServ tỏ ra không hiệu quả và không có khả năng mở rộng khi nhiều <br /> source phải cạnh tranh với nhau về băng thông.<br /> <br /> ­          Trong giải pháp differentiated, mỗi routers và switch sẽ quản lý packets riêng lẻ. <br /> Mỗi routers sẽ có một chính sách riêng để quản lý và sẽ tự quyết định cách thức <br /> chuyển packet theo cách riêng.<br /> <br /> ­          IntServ sẽ quản lý theo kiểu per­flow, trong khi Difserv sẽ quản lý theo kiểu per­<br /> hop.<br /> <br /> ­          Diffserv sẽ quyết định chính sách QoS dựa vào cấu trúc của gói IP.<br /> <br /> ­          Course switching sẽ tập trung vào Diffserv.<br /> <br />  <br /> <br /> II. DIFFSERV QOS<br />  <br /> <br /> ­          Mỗi router và switch sẽ kiểm tra packets để quyết định sẽ fw packet đó như thế <br /> nào.<br /> <br /> ­          Đối với packets, nó chỉ đơn thuần gán vài thông số vào header. Các thông số có <br /> thể là phân loại (classifications, marking…)Packet sẽ giả sử routers và switch biết <br /> cách handle nó.<br /> <br /> ­          Việc phân loại có thể diễn ra ở Layer­2 hoặc Layer­3<br /> <br /> ­          Layer2: Thông thường, một layer frame sẽ không có trường( field ) nào để phân <br /> loại frame. Tuy nhiên, khi frame được truyền giữa switch và switch, frame có thể <br /> được phân loại dựa vào CoS. <br /> <br /> ­          CoS: được dùng trên đường trunk switch­switch.<br /> <br /> ­          Hai kiểu trunking sẽ quản lý giá trị CoS này rất khác nhau:<br /> <br />  <br /> <br /> ISL: 4 bit user­id sẽ được dùng để chỉ ra giá trị CoS của frame. <br /> Dot1q: user­field sẽ được dùng để chỉ ra giá trị CoS. Các frame từ native vlan sẽ <br /> nhận giá trị CoS mặc định. <br /> <br /> ­          Layer3: DSCP.<br /> <br />  <br /> <br /> 2.1. Class of services:<br />  <br /> <br /> ­          Trên đường trunking, frame được thêm vào tagging.<br /> <br /> ­          Dot1q: mỗi frame được thêm vào 12­bit vlan­id và một field gồm 3 bit để chỉ ra <br /> độ ưu tiên. Những frame đến từ native­vlan sẽ được cấu hình giá trị mặc định.<br /> <br /> ­          ISL: có 4 bit trong user­field. Dùng 3 bit thấp nhất để gán priority.<br /> <br />  <br /> <br /> 2.2. Layer 3 DSCP:<br /> <br />  <br /> <br /> ­          Dùng Tos trong ip datagram<br /> <br /> ­          Giá trị DSCP có cùng vị trí trong header giống như TOS nhưng sẽ được diễn dịch <br /> khác.<br /> <br /> ­          Xem thêm bảng chuyển đổi trong giáo trình.<br /> <br />  <br /> <br />  <br /> <br /> III. THỨ TỰ CÁC TÁC VỤ QOS ĐƯỢC THỰC HIỆN:<br />  <br /> <br />  <br />  <br /> <br />  <br /> <br /> 3.1 Ingress queue:<br /> <br />  <br /> <br /> ­          Phần lớn switch có hai dạng queue: standard và priority queue<br /> <br /> ­          Những packets với độ ưu tiên = 5 sẽ được phục vụ trước<br /> <br /> ­          Course bcmsn ko khảo sát kỹ phần này.<br /> <br />  <br /> <br /> 3.2. Phân loại, trust và marking:<br /> <br />  <br /> ­          Quá trình phân loại packets có thể dựa trên tcp/udp hoặc các cơ chế phức tạp <br /> khác.<br /> <br /> ­          Frame có thể mang nhiều giá trị CoS, ToS, DSCP…Switch sẽ quyết định là sẽ <br /> dùng (tin) trust giá trị nào.<br /> <br /> ­          Có thể cấu hình switch để đánh dấu hoặc thay đổi các giá trị QoS này.<br /> <br />  <br /> <br /> 3.3. Policers:<br /> <br />  <br /> <br /> ­          Việc giới hạn băng thông thực hiện bởi policers<br /> <br /> ­          Sau khi packet đã được phân loại, ta có thể cấu hình switch để giới hạn traffic.<br /> <br />  <br /> <br /> 3.4. Scheduling:<br /> <br />  <br /> <br /> ­          Scheduling còn được gọi là egress queueing hoặc congestion management<br /> <br /> ­          Packets được gán vào egress queue dựa theo giá trị CoS: giá trị 0­3 gán vào <br /> standard, 4­7 gán vào second standard queue<br /> <br /> ­          Catalyst dùng kỹ thuật gọi là WRR. Kích thước của mỗi queue được cấu hình <br /> theo tỉ lệ. Mỗi queue được gán một trọng số.<br /> <br /> ­          Priority queue sẽ luôn được phục vụ trước và không bị xếp vào hàng đợi này.<br /> <br />  <br /> <br /> 3.5. Congestion Avoidance:<br /> <br />  <br /> <br /> ­          Nếu việc nghẽn vẫn xảy ra mặc dù đã xếp hàng đợi, packets phải bị drop.<br /> <br /> ­          Một switch phải dự đoán việc congestion bằng hai cách:<br />  <br /> <br /> •         TAIL­DROP<br /> <br /> •         WRED<br /> <br />  <br /> <br /> 3.5.1. Tail-drop:<br /> <br />  <br /> <br /> ­          Những packets đến sau trong hàng đợi sẽ bị drop<br /> <br /> ­          Gây ra hiện tượng tcp global synchronization (xem thêm trong sách)<br /> <br />  <br /> <br /> 3.5.2. WRED:<br /> <br />  <br /> <br /> ­ WRED sẽ drop một số packet đã có trong hàng đợi<br /> <br /> Các packets sẽ bị drop đến một giới hạn nào đó.<br /> <br />  <br /> <br />  <br /> <br /> IV. CẤU HÌNH DIFFSERV:<br />  <br /> <br /> Phần này tập trung vào cấu hình trong Catalyst switch. Catalyst 3550 có rất nhiều tính năng <br /> QoS mạnh.<br /> <br />  <br /> <br /> Để cho phép cấu hình QoS trên switch, dùng l ệnh:<br /> <br />  <br /> Switch(config)# mls qos<br /> <br />  <br /> <br />  <br /> <br /> <br /> <br /> <br />  <br /> <br />  <br /> <br /> Trong hình vẽ trên, giá trị DSCP sẽ được dùng khi packet được di chuyển trong switch như <br /> sau:<br /> <br />  <br /> <br /> 1. Packet được gán một giá trị DSCP. Giá trị này được tính từ inbound switch port. <br /> <br /> 2. Khi packet được switch bên trong, mỗi giá trị DSCP có thể đưọc thay đổi hoặc hành động <br /> tương ứng.<br /> <br /> 3. Khi packet được xếp ở hàng đợi, giá trị DSCP sẽ được chuyển sang CoS. Giá trị CoS này <br /> có thể được dùng để xác định hàng đợi hay scheduling. <br /> <br />  <br /> <br /> Theo phần trước, Catalyst switch sẽ tham khảo các đại lượng: CoS và DSCP.<br /> <br />  <br /> <br /> Compute CoS<br /> <br /> From Internal DSCP                                mls qos map dscp­cos ...<br /> <br /> Trust CoS:                                                mls qos map cos­dscp ...<br /> <br /> Trust IP Precedence:                                mls qos map ip­prec­dscp ...<br /> <br /> Trust DSCP:                                              mls qos trust dscp ...<br /> <br />                                                                    mls qos map dscp­mutation ...<br /> <br />  <br /> <br /> IV.1. Cấu hình QoS Trust:<br /> <br />  <br /> <br /> Khi một packet đi v ào một switch, switch sẽ chọn lựa thông số mà nó sẽ tin cậy  (trust). Sau <br /> đó, packet sẽ được  xử lý tương ứng trên thông số được tin cậy này.<br /> <br />  <br /> <br /> Switch(config­if)# mls qos trust {cos,dscp,ip precedence}<br /> <br />  <br /> <br /> Nếu gi á trị CoS được dùng, nó phải chuyển sang DSCP tương ứng theo bảng:<br /> <br />  <br /> <br /> Cos 0 1 2 3 4 5 6 7<br /> DSCP 0 8 16 24 32 40 48 56<br />                  <br />  <br /> <br /> Các giá trị IP Precedence sẽ được chuyển sang DSCP:<br /> <br />  <br /> <br /> Ip  0 1 2 3 4 5 6 7<br /> Precedence<br /> DSCP 0 8 16 24 32 40 48 56<br /> <br />  <br /> <br /> IV.2. Định nghĩa Policy<br /> <br />  <br /> <br /> Policy được định nghĩa và dùng trong các bưóc sau:<br /> <br />  <br /> <br /> 1. Một hoặc nhiều class được dùng để phân loại traffic.<br /> <br /> 2. Một hoặc nhiều policy được định nghĩa, tham khảo đến một hoặc nhiều class. Mỗi <br /> policy có thể chứa các hành động như đánh dấu (mark), police hoặc định dạng (shape) <br /> traffic cho từng class.<br /> <br /> 3. Mỗi egress queue có thể được gán một policy trong mỗi chiều traffic. Ví dụ một policy có <br /> thể gán cho chiều inbound, trong không một policy khác có thể gán cho chiều outbound. Khi <br /> đã được gán, policy bắt đầu phân loại và xử lý các traffic đi qua switch.<br /> <br />  <br /> <br />  <br /> <br /> Switch (config)#  class­map class­name [match all | match any]<br /> <br />  <br /> <br /> Việc phân loại traffic có thể dựa vào access­list, NBAR….<br /> <br />  <br /> <br /> Với access­list:<br /> Switch(config­cmap)# match access­group name access­list<br /> <br /> Với NBAR:<br /> <br /> Switch(config­cmap)# match protocol [protocol name]<br /> <br />  <br /> <br /> Bước kế tiếp, định nghĩa QoS policy<br /> <br />  <br /> <br /> switch(config)# policy­map policy­name<br /> <br />  <br /> <br /> Ch ỉ ra class trong policy<br /> <br /> Switch(config­pmap)# class class­name<br /> <br />  <br /> <br /> Sau đó, ta có thể set các dscp value hoặc ip precedence<br /> <br /> Switch(config­pmap)# set dscp dscp­value<br /> <br />  <br /> <br /> Sau cùng, áp dụng QoS vào một interface, tối đa một cho inbound, một cho outbound.<br /> <br />  <br /> <br /> Switch(config­if)# service­policy [input|output] policy­name<br /> <br />  <br /> <br /> IV.3. Hiệu chỉnh egress scheduling:<br /> <br />  <br /> <br /> Phần này sẽ trình bày packet sẽ được phân phối vào các hàng đợi và được xử lý như thế <br /> nào.<br />  <br /> <br /> Mặc định có 2 hàng đợi được gán trọng số 4 và 255.<br /> <br />  <br /> <br /> Để thay đổi giá trị mặc định trên, dùng lệnh<br /> <br />  <br /> <br /> Switch(config­if)# wrr­queue bandwidth weight1 weight 2 [weight3] [weight 4]<br /> <br />  <br /> <br /> Ánh xạ packet vào egress­queue:<br /> <br />  <br /> <br /> Switch(config­if)# wrr­queue cos­map queue­id threshold cos­list<br /> <br />  <br /> <br /> Packet có giá trị CoS được chỉ ra trong cos­list sẽ được đặt trong hàng đợi queue­id. Mặc <br /> định, CoS giá trị 1 sẽ được đặt trong hàng 1, CoS 2 và 3 sẽ vào hàng 1 threshold 2, Cos 4 vào <br /> hàng 2 threshold 1, CoS 6 v à 7 v ào hàng 2 threshold 2. CoS 5 luôn được đặt vào priority­<br /> queue, nếu có một priority­queue.<br /> <br />  <br /> <br /> Tránh nghẽn bằng cách dùng tail­drop:<br /> <br />  <br /> <br /> Switch(config­if)# no wrr­queue random­detect queue­id<br /> <br />  <br /> <br /> Tránh nghẽn bằng cách dùng wred:<br /> <br />  <br /> <br /> Switch(config­if)# wrr­queue random­detect queu­id<br /> Thay đổi các giới hạn trong hàng đợi<br /> <br />  <br /> <br /> Switch(config­if)#wrr­queue random­detect {max­threshold|min­threshold} queue­id<br />
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2