Cisco hỗ trợ đánh dấu nhiều trường cho một loại policing. Để làm như vậy, đầu tiên lệnh police sử dụng để thiết lập tốc độ, nhưng hành đông không được cấu hình
94
trong lệnh police. Thay vào đó, bằng cách bỏ qua các hành động, lệnh police đặt người sử dụng vào submode khác, trong đó tất cả các hành động có thể được thêm vào dòng riêng biệt. Để cấu hình multiple actions, multiple conform-action, exceed- action, or violate-action thì lệnh con được sử dụng. Ví dụ 2-9 cho cho thấy một mẫu, với đánh dấu DSCP bằng 0 và FR DE cho các gói tin đó vi phạm các hợp đồng lưu lượng:
Ví dụ 2-9. Multi-action Policing
R3#conf t
Enter configuration commands, one per line. End with CNTL/Z. R3(config)#policy-map testpol1 R3(config-pmap)#class class-default R3(config-pmap-c)#police 128000 252000 R3(config-pmap-c-police)#conform-action transmit R3(config-pmap-c-police)#exceed-action transmit R3(config-pmap-c-police)#violate-action set-dscp-transmit 0 R3(config-pmap-c-police)#violate-action set-frde-transmit
Lưu ý rằng trước đó không phải là một lệnh police duy nhất, nhưng thay vào đó, nó sử dụng một chế độ sub-command sau lệnh police. Trong đó lưu ý rằng có hai trường hợp violate-action subcommand, với những hành động khác nhau được liệt kê.
2.5.4. Policing by Percentage
Giống như cho lệnh shape, IOS hỗ trợ một phiên bản của lệnh police cho phép bạn cấu hình tốc độ policing như là tỷ lệ phần trăm băng thông liên kết. Bạn cũng có thể cấu hình giá trị Bc và Be bằng một số đơn vị mili giây, từ đó IOS tính toán giá trị Bc và Be dựa trên số liêu thực tế mỗi mili giây có thể được gửi trong nhiều bit. Ví dụ 2-10 cho thấy một ví dụ về một cấu hình dual-rate policing sử dụng tùy chọn tỷ lệ phần trăm.
Ví dụ 2-10. Cấu hình Percentage-Based Policing
R3#show running-config ! Portions omitted for Brevity policy-map test-pol2
class class-default
police cir percent 25 bc 500 ms pir percent 50 be 500 ms interface serial0/0
bandwidth 252
service-policy output test-pol2 R3#show policy-map interface s0/0 Serial0/0
Service-policy output: test-pol2 Class-map: class-default (match-any) 4 packets, 152 bytes
5 minute offered rate 0 bps, drop rate 0 bps Match: any
95 cir 25 % bc 500 ms
cir 24000 bps, bc 4000 bytes pir 50 % be 500 ms
pir 128000 bps, be 8000 bytes conformed 0 packets, 0 bytes; actions: transmit
exceeded 0 packets, 0 bytes; actions: drop
violated 0 packets, 0 bytes; actions: drop
conformed 0 bps, exceed 0 bps, violate 0 bps R3#
Cú pháp của lệnh police bao gồm các từ khóa phần trăm, thông báo với IOS để giải thích CIR và PIR như tỷ lệ phần trăm giá trị liên kết. Một khi được kích hoạt trên interface serial0/0, trong đó có lệnh bandwidth 252, IOS có thể giải thích tỷ lệ phần trăm và tốc độ bit thực tế. Ví dụ, đầu ra của của lệnh show policy-map interface s0/0
là danh sách CIR là 25 phần trăm trên một dây dẫn, và sau đó là 24.000 bps tiếp theo. Cách tính toán chỉ đơn giản là tỷ lệ phần trăm thời gian hoăc băng thông giao diện, hoặc 25 phần trăm của 252 kbps. Các PIR được tính tương tự, trong trường hợp này là 50 phần trăm của PIR, hoặc 50 phần trăm của 128 kbps.
2.5.5. CB Policing mặc đinh Bc và Be
Bảng 2-13. Tóm tắt các tính toán mặc định cho Bc và Be với CB Policer Type of Policing
Configuration
Telltale signs in the police command
Defaults
Single Rate, Single Bucket/Two color
No violate-action or Be
configured, no PIR configured
Bc = CIR/32 Be = 0 Single Rate, Dual Bucket/Three
color
violate-action and/or Be is configured, no PIR configured
Bc = CIR/32 Be = Bc Dual Rate, Dual Bucket/Three
color
PIR is configured Bc = CIR/32 Be = PIR/32
2.5.6. Tóm tắt cấu hình CB Policing
Hỗ trợ Single-rate, two-color policing, trong đó sử dụng một xô thẻ và hai nhóm hành động (conform and exceed)
Single-rate, three-color policing, trong đó sử dụng hai xô thẻ và ba nhóm hành động (conform, exceed, and violate)
Dual-rate, three-color policing, sử dụng hai xô thẻ, hỗ trợ cả hai tốc độ CIR và PIR
"Two Color" và "Three color" thuật ngữ dùng để chỉ các loại hành động có thể được xác định bởi policer cụ thể là conform, exceed và violate
96 Hỗ trợ policing một tập hợp lưu lượng truy cập bằng cách sử dụng classes MQC, với lệnh cho phép police, trong một lớp lưu lượng truy cập bao gồm các gói dữ liệu cần phải được khống chế.
Hỗ trợ cho nhiều hành động policing bằng cách lặp lại các từ khóa conform- action, exceed-action và violate-action
Đối với single-rate policing, nếu Bc và Be không được cấu hình, IOS tính toán các giá trị như Be = 0 và Bc lớn hơn một trong hai giá trị 1500 hoặc CIR/32.
Đối với dual-rate policing, nếu Bc và Be không được cấu hình,, IOS tính toán các giá trị như sau: Bc lớn hơn một trong hai giá trị 1500 hoặc CIR/32, và Be lớn hơn một trong hai giá trị 1500 hoặc PIR/32.
Lệnh police chó phép cấu hình tỉ lệ phần trăm tốc độ của băng thông liên kết, với Bc và Be thiết lập với đơn vị là milliseconds
Foundation Summary
ISPs make the business choice of whether to police, and how aggressively to police. The options reduce to the following three basic options:
Do not police. To support the traffic, build the network to support the traffic as if all customers will send and receive data at the clock rate of the access link. From a sales perspective, close deals by claiming that no policing will be done, but encourage customers who exceed their contracts to pay for more bandwidth.
Police at the contracted rate. To support these traffic levels, the network only needs to be built to support the collective contracted rates, although the core would be overbuilt to support new customers. From a sales perspective, encourage customers that are beginning to exceed their contracts to upgrade, and give incentives.
Police somewhere in between the contracted rate and the access-link clock rate. For instance, ISP1 might police PB Tents at 5 Mbps, when the contract reads 2 Mbps. The network can be built to support the collective policed rates. The sales team can encourage customers to buy a larger contracted rate when they consistently exceed the contracted rate, but keep customer satisfaction higher by pointing out their generosity by only policing at rates much higher than the contracted rates.
97
Bảng 2-14 summarizes some of the key points about when and where you should consider using policing and shaping.
Bảng 2-14. Policing and Shaping: When to Use Them, and Where Topic Rationale
Why police? + Nếu một mạng láng giềng có thể gửi nhiều hơn so với hợp đồng lưu lượng truy cập quy định, policing có thể được sử dụng để thực thi các hợp đồng, bảo vệ mạng khỏi bị tràn ngập với quá nhiều lưu lượng truy cập.
Where to police? + Thông thường, policing được thực hiện khi các gói dữ liệu đi vào thiết bị lần đầu tiên trong một mạng. Policing đầu ra cũng được hỗ trợ, mặc dù nó ít được sử dụng.
Why shape? + Thứ nhất sử dụng shaping khi mạng lân cận sử dụng policing. Thay vì chờ đợi cho policing của hàng xóm loại bỏ lưu lượng truy cập thì shaper có thể trì hoãn lưu lượng truy cập để nó không bị xóa bỏ.
+ Thứ hai với những tác động của chặn lối ra. Với shaping có thể tránh được chặn lối ra, hoặc giảm thiểu, về cơ bản có thể di chuyển các hàng đợi từ bên trong đám mây, và trở lại vào bộ định tuyến doanh nghiệp . Bằng cách đó, các công cụ định tuyến xếp hàng đợi có thể lựa chọn các hoạt động dịch vụ với các loại lưu thông cụ thể cho chất lượng tốt hơn.
Where to shape? + Chức năng của shaping luôn luôn theo hướng đi ra. Thông thường, Shaping được thực hiện trên một bộ định tuyến các gói dữ liệu đi ra, đi vào một mạng khác. Đây có thể là cạnh giữa một router và WAN multiaccess, hoặc có thể chỉ là một liên kết đến một ISP.
Traffic shaping implements this basic logic by defining a measurement interval, and a number of bits that can be sent in that interval, so that the overall shaped rate is not exceeded. Table 2-15 lists some related definitions.
Bảng 2-15. Shaping Terminology Term Definition
Tc Khoảng thời gian đo bằng mili giây, của sự cam kết bùng nổ (Bc) có thể được gửi đi. Với nhiều công cụ định hình, Tc = Bc / CIR. Bc Kích thước bùng nổ cam kết, được đo bằng bit. Đây là số lượng
của lưu lượng truy cập có thể được gửi qua khoảng thời gian Tc. Thông thường cũng được xác định trong hợp đồng lưu lượng. CIR Tốc độ thông tin cam kết, số bit trên mỗi giây, xác định tỷ lệ quy
định trong hợp đồng lưu lượng.
Shaped Rate Tỷ lệ, bit trên giây, nhận một giá trị cấu hình cụ thể muốn để hình thành lưu lượng truy cập. trong một số trường hợp, tỷ lệ Shaped được thiết lập giá trị tương tự như CIR; trong những trường hợp khác, tỷ lệ Shaped được thiết lập một giá trị lớn hơn,
98
với hy vọng lưu lượng truy cập thông qua mạng lớn hơn. với hy vọng gửi lưu lượng truy cập thông qua mạng.
Be Kích thước bùng nổ dư thừa, tính theo bit. Đây là số bit nawmg ngoài Bc có thể được gửi sau một thời gian không hoạt động. Traffic Shaping sử dụng một xô thẻ để kiểm soát các cơ chế quyết định gói tin conform với tốc độ shaping, và exceed tốc độ. Hai hành động chính xoay quanh các xô thẻ và các thẻ:
The re-filling of the bucket with new tokens
The consumption of tokens by the Shaper to gain the right to forward packets.
Hình 2-22. Mechanics of Filling the Shaping Token Bucket
Hình 2-23 liệt kê toàn bộ quá trình được sử dụng shaping, cấu hình giá trị cho Bc và Be.
Các công thức IOS sử dụng để tính toán Tc khi bạn cấu hình tốc độ shaping Bc như sau:
Tc = Bc/CIR.
99
CB Shaping tính toán giá trị Bc và Be nếu lệnh shape không bao gồm giá trị. Từ đó, nó tính toán Tc. Với tốc độ shape thấp hơn (nhỏ hơn 320kbs), CB Shaping giả định một Bc 8000 bit, và tính toán Tc dựa trên công thức Tc = Bc / CIR. Lưu ý rằng tại 320 kbps, các Tc tính toán được sẽ là 25 mili giây, hoặc 0,025 giây.
Đối với tốc độ cao hơn 320 kbps, CB Shaping thay vì sử dụng một Tc mặc định là 0,025 giây (250 mili giây), và tính toán Bc dựa trên cùng một công thức, mà với một phép biến đổi đại số Bc = Tc * CIR. Ví dụ, tại 240 kbps, Bc = 0,025 * 240 kbps = 12.000 bit.
CB Shaping mặc định thì Be bằng Bc.
CB Shaping có thể thích ứng với tốc độ shaping dựa trên nhận BECNs hoặc tin nhắn Foresight. Khi Shaper nhận được một tin nhắn BECN hoặc Foresight, nó giảm 25 phần trăm so tốc độ tối đa, lặp đi lặp lại quá trình này cho mỗi lần nhận BECN hoặc tin nhắn Foresight, cho đến khi đạt tốc độ tối thiể. Tốc độ tăng trở lại sau 12 khoảng thời gian liên tiếp xảy ra mà không có một tin nhắn BECN hoặc Foresight. Tốc độ shaping tăng bằng 1/12 tốc độ tối đa trong mỗi Tc, cho đến khi tốc độ tối đa đạt được. Quá trình này dẫn đến sự gia tăng tốc độ shaping dựa trên công thức sau: (Bc + Be) / 12.
Khi shaper sử dụng một công cụ xếp hàng đơi, thay vì có một hàng đợi shaping duy nhất, shaping nhiều hàng đợi tồn tại. Nếu FRTS đã được cấu hình để sử dụng PQ, ví dụ, có đến bốn hàng đợi có thể được tạo ra cho shaping. Hình 2-24 cho thấy ý tưởng cơ bản, shaping được kích hoạt trên giao diện vật lý, FIFO Queuing trên giao diện vật lý, và PQ cấu hình cho hàng đợi shaping.
Hình 2-24. FIFO Queuing for the Physical Interface, Plus PQ for the Shaping Queue.
QoS thiết kế định hình cuộc gọi cho mỗi VC. Cho cùng một router, với hai phiên bản 24-kbps VCs CIR (cấu hình trên một subinterface point-to-point riêng) hàng đợi shaping được tạo ra cho mỗi subinterface, với hàng đợi đầu ra. Hình 2-25 mô tả ý tưởng tổng thể.
100
Hình 6-25. Fancy Queuing for the Physical Interface as well as for Two Sets of Shaping Queues
Lệnh shape CB Shaping có một lựa chọn peak-rate shaping. Ví dụ, lệnh shape peak 24000 shapes các gói tin với tốc độ cao hơn 24 kbps. Để tính toán tốc độ thực tế, bạn sẽ sử dụng công thức sau:
Shaping_rate = configured_rate(1 + Be/Bc).
Bảng 2-12 tóm tắt những điểm chính để so sánh giữa các CB Shaping và FRTS.
Bảng 2-12. Comparison of CB Shaping and FRTS Features
Feature CB Shaping FRTS
Hỗ trợ ATM, FR, HDLC, PPP, LAN giao diện. Có Không Có thể kích hoạt trên interfaces và
subinterfaces
Có Có
Có thể kích hoạt trên một Frame Relay DLCI hỗ trợ per-VC shaping trên multipoint
interfaces
Không Có
Hỗ trợ shaping thích nghi Có Có Hỗ trợ đồng thời FRF.12 Frame Relay
Fragmentation
Không Có Hỗ trợ MLP trên Frame và ATM
Fragmentation
Có Có
Các phương pháp xếp hàng trong shaping hàng đợi FIFO, WFQ, CBWFQ, LLQ FIFO, WFQ, CBWFQ, LLQ, PQ, CQ
Các phương pháp xếp hàng trên Physical interface
Tất cả FIFO, FRF[*]
101
Feature CB Shaping FRTS
Có thể phân loại lưu lượng để hình thành một tập hợp con của lưu lượng truy cập vào một interface/VC
Có Không
Default Tc Thay đổi 125 ms
CB Policing bao gồm rất nhiều chi tiết nhỏ về cách chọn các gói dữ liệu conform, exceed, or violate hợp đồng lưu lượng. Bảng 2-17 liệt kê những điểm chính về CB Policing sử dụng xô thẻ.
Bảng 2-17. Summary of CB Policing Mechanics
Feature Behavior of Single-Rate, Two- Color Behavior of Single- Rate, Three-Color Behavior of Dual- Rate, Three-Color Size of "first" bucket
Bc (bytes) Bc (bytes) Bc (bytes) Size of "second"
bucket
N/A Be (bytes) Be (bytes) Refill of first
bucket
Prorated portion of Bc based on
packet arrival time
Prorated portion of Bc based on packet arrival time Prorated portion of Bc based on packet arrival time Refill of second bucket
N/A Filled by spilled Tokens from refill of first bucket Prorated portion of Be based on packet arrival time Logic for "conform" action 1st bucket => packet size decrement 1st bucket by packet size 1st bucket => packet size; decrement 1st bucket by packet size
1st bucket => packet size; decrement 1st bucket by packet size
Logic to choose "exceed" action
All packets that do not conform
Doesn't conform, but 2nd bucket => packet size decrement 2nd bucket by packet size
Doesn't conform, but 2nd bucket => packet size; decrement BOTH buckets by packet size Logic to choose "violate" action
102
Hình 2-22. Refilling Dual Token Buckets with CB Policing
Hình 2-27 depicts the mechanics of how a dual-rate, three-color policer works in regards to refilling tokens into the dual token buckets:
Hình 2-27. Refilling CIR and PIR Dual Token Buckets with CB Policing
Bảng 2-18 tóm tắt các chi tiết nhỏ về giá trị mặc định cho Bc và Be. Bảng liệt kê tất cả ba trường hợp.
Bảng 2-18. Tóm tắt các tính toán mặc định cho Bc và Be với CB Policer
Type of Policing Configuration
Telltale signs in the police
command Defaults
Single Rate, Single Bucket/Two color No violate-action or Be configured, no PIR configured Bc = CIR/32 Be = 0 Single Rate, Dual Bucket/Three
color violate-action and/or Be is configured, no PIR configured Bc = CIR/32 Be = Bc Dual Rate, Dual Bucket/Three color PIR is configured Bc = CIR/32
103
Bảng 2-19 liệt kê các hành động khác nhau liên quan đến CB policing.
Bảng 2-19. Policing Actions Used by CAR and CB Policing Command Mode and Function
drop Xóa bỏ gói tin
set-dscp-transmit Thiết lập DSCP và truyền các gói tin
set-prec-transmit Thiết lập IP precedence (0 đến 7) và gửi các gói tin set-qos-transmit Thiết lập QoS nhóm ID (1 đến 99) và gửi các gói tin
set-clp-transmit Thiết lập ATM CLP bit (ATM giao diện duy nhất) và gửi các gói tin
Danh sách sau tóm tắt các tính năng cốt lõi của thiết bị Cisco thực hiện CB Policing.
Hỗ trợ Single-rate, two-color policing, trong đó sử dụng một xô thẻ và hai