Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 10 лет назад пользователемКирилл Ноговицын
2 Quality of Service
3 3 Overview > What is QoS? What is QoS? > Label-Based Routing Label-Based Routing > IPQoS IPQoS > ATM QoS ATM QoS > CLI CLI
4 QoS What is QoS?
5 5 Definition QoS = ability of network element to have some level of assurance that data traffic and service requirements can be satisfied
6 6 QoS Approaches > Relative QoS Example: Differentiated Services, VLAN user priority > Guaranteed QoS Example: Integrated Services, ATM QoS
7 QoS Label-Based Routing
8 8 Overview > History and Now > Classification and Routing > Configuration > Example
9 9 Label-Based Routing: History > = Evolution of source-based routing > Source-based routing: Present in all SpeedTouch router products up to R4.1 Allows to route traffic source and destination-based to certain gateways or ports (= atm pvcs) = Fixed label with only source address parameter
10 10 Label-Based Routing: Now > Available from R4.2 onwards > Classification of traffic on many criteria > Reuses firewall engine all firewall criteria available > Traffic routing through different ATM PVCs with different QoS classes > Can be combined with IPQoS in future
11 11 Classification and Routing > Classification: before routing packet enters router and is classified > Labels attached to routes > Routes with labels have highest priority > Routes with labels only route packets with correct labels
12 12 Classification and Routing – Continued > First match is chosen > Use of traffic stream cache First time: slow path Next time: fast path
13 13 Classification and Routing – Illustrated intf labelfwd Fast-path classifier Slow-path
14 14 Configuration > CLI only > Label menu Creation / deletion of labels TOS marking possible
15 15 Configuration – Continued > Label / rule menu Creation / deletion of rules Default chain = _auto_labels > Used for backward compatibility or when configuring source- based routes Default chain linked to user_labels User_labels chain to be used only Every new rule must be attached to user_labels with certain index Statistics possible: rule stats
16 16 Labelling Mechanism
17 17 Rules > Source Interface (preferably NOT used) [srcintf [!]= ] > Source Interface Group (preferably used) [srcintfgrp [!]= ] > IP src [!]= (IP/mask notation) dst [!]= (IP/mask notation)
18 18 Rules – Continued > ToS (tagging) tos [!]= precedence [!]= dscp [!]= > Protocol prot [!] = > Port srcport [!] & srcportend dstport [!] & dstportend
19 19 Rules – Continued > Known ports = {echo|discard|systat|daytime|qotd|chargen|ftp- data|ftp|telnet|smtp|time|nicname|dns|domain |sql*net|bootps|bootpctftp|gopher|finger|www- http|kerberos|rtelnet|pop2|pop3|sunrpc|auth|sqlserv|nntp|sntp| ntp |ingres-net|netbios-ns|netbios-dgm|netbios-ssn|imap2|sql- net|pcmail-srv|snmp|snmptrap|bgp|irc-o|at-rtmp |at-nbp|at-echo|at- zis|ipx|imap3|clearcase|ulistserv|ldap|netware- ip|snpp|ike|exec|biff|login|who|syslog |printer|talk|ntalk|utime|rip|timed|netwall|uucp|uucp-rlogin|new- rwho|rtsp|...} or number>
20 20 Example Scenario: > 2 PPPoA sessions with traffic separation Session 1: PPPoA1: only icmp traffic Session 2: PPPoA2: only UDP and TCP traffic > 4 labels required Label ICMP rule 0: from LAN and protocol ICMP through PPPoA1 Label TCP rule 1: from LAN and protocol TCP through PPPoA2 Label UDP rule 2: from LAN and protocol UDP through PPPoA2 Label DNSLOCAL rule 3: from local and protocol UDP port 53
21 21 Example: Network Setup SpeedTouch 610 Eth0 : BRAS Internet PC A : DG : TCP traffic, through pppoa2 ICMP traffic, through pppoa1 PPPoA PPPoA
22 22 Configuration: Example Start from configuration with 2 PPPoA sessions 1. Create labels :label add name=dnslocal :label add name=icmp :label add name=tcp :label add name=udp 2. Create label rules :label rule create chain=user_labels index=0 srcintfgrp=lan prot=icmp label=icmp :label rule create chain=user_labels index=1 srcintfgrp=lan prot=tcp label=tcp :label rule create chain=user_labels index=2 srcintfgrp=lan prot=udp label=udp :label rule create chain=user_labels index=3 srcintfgrp=local prot=udp dstport=dns label=dnslocal
23 23 Configuration: Example – Continued 3. Create routes to PPPoA1 and PPPoA2 :ip rtadd dst= /0 label=dnslocal intf=pppoa2 :ip rtadd dst= /0 label=icmp intf=pppoa1 :ip rtadd dst= /0 label=tcp intf=pppoa2 :ip rtadd dst= /0 label=udp intf=pppoa2 > Remark: PPP routes can be added Through PPP session directly Through IP menu used in this example because multiple routes had to be added
24 QoS IPQoS
25 25 Overview > Features > Implementation > Configuration > Example > Scenario
26 26 New Features: Problem Solving WANGateway Ethernet Mbps ADSL Mbps Delay Delay Variation Uncontrolled Packet Loss Packet Loss TCP slowdown Voice degradation Game hiccups Video noise Delay TCP choke (BW=Window/Delay) Slow response time for web browsing Delay Variation (jitter) Extra buffering delay on voice
27 27 New Features: How It Works – 600 Series WANGateway Ethernet Mbps ADSL Mbps Limited Delay Limited Delay Variation Controlled Packet Loss Best Effort Highest Priority Upstream IP traffic identified based on: labels: IP header-based : configured on CPE Diffserv Codepoints: set by applications VLAN tags (802.1p): Set by endpoints? TCP Ack => Ack filtering Traffic assigned to 1 of 6 queues: 1: Expedited Forwarding: Absolute top priority traffic (rate limited) 2-5: Assured Forwarding : each queue given fair share of available bandwidth 6:Best Effort: take what is left
28 28 New Features: How It Works – 500 Series LANWANGateway Ethernet Mbps ADSL Mbps Limited Delay Limited Delay Variation Controlled Packet Loss Best Effort Highest Priority Residential QoS focused on: Plug and play operation: VLAN, DiffServ Priority: EF: VoIP, Gaming AF: interactive sessions BE: rest Implementation : EF queues collapsed to 2 queues WFQ between 2 Queues Diffserv compliant NOT AF compliant
29 29 New Features: How It Works – For Dummies Through well-chosen defaults in templates ApplicationLabelDiffServTCP Ack Web (http) (pop, imap) Windows / MSN Messenger Rtp (SIP data) SIP phones (280/282) Download (ftp) speed unaffected by upload activity …
30 30 New Features: What Is Kept for R5.3 > Per flow rate limiting > ALG-based labelling > Head-of-Line blocking
31 31 Implementation in > Classification and labelling > IPQoS queues per VP/VC > Hierarchical Fixed Priority and Weighted Fair Queuing Scheduling > Tail Drop and Propagation discard strategies
32 32 Implementation in – Continued > Classification of data and configuration of corresponding internal Class (0..15) Defclass: Default class of assigned connection Ackclass: Class of ACK segments of TCP connection > Default set of labels with corresponding Class > Rate limiting for real-time queue > TCP-ACK filtering and prioritization
33 33 High-Level Module Overview Automatic class mapping: > VLAN User Priority > ATM QoS
34 34 High-Level Module Overview – Example DSCP – AF/EF
35 35 Routed Data Path – WFQ
36 36 Configuration > intf > IPQoS configuration Queuing mechanism Queuing rules > Label configuration Queuing order / Classification > Label rules Data matching
37 37 IPQoS Configuration – CLI dest = destination of interface (phonebook entry) [state = ] Enable, disable IP QoS for interface [discard = ] Packet discard strategy (congestion) [priority = ] Subqueue priority algorithm [realtimerate = ] Percentage of bandwidth [burstsize = ] Burst size in kilo bytes [weight1 = ] Weight of queue 1 used for WFQ [weight2 = ] [weight3 = ] [weight4 = ] [maxpackets = ] Maximum number of packets in all queues [maxbytes = ] Maximum size in kilo bytes in all queues default
38 38 IPQoS Queue Configuration – CLI > Propagation from queue to next lower priority queue > IPQoS queue configuration dest = destination of interface (phonebook entry) queue = Number of subqueue [propagate = ] Propagate packets in low priority queue (instead of dropping) [maxpackets = ] Maximum number of packets in subqueue [maxbytes = ] Maximum subqueue size in kilo bytes
39 39 Default Set of Labels WFQ per VP / VC
40 40 Labels – CLI > Label add name > Label configuration name = Name of label to config [classification = ] Methods of classification [defclass = ] Default class of assigned connection [ackclass = ] Class of ACK segments of TCP connection [ttloverwrite = ] Enable / disable ttl overwrite [ttl = ] Time To Live in IP packet (ttl- overwrite) [tosmarking = ] Enable/disable tos marking [tos = ] Type of Service specification in IP packet (tos-marking) [trace = ] Enable/disable tracing for this label
41 41 Labels – CLI – Illustrated
42 42 Labels / Rules > Rules = Label-based routing > Multiple PVCs Same labels / rules possible Other destination of routing = other PVC = other queues > Example configurations Default queues RT and BE WFQ with different weights ACK prioritization for maximal downstream
43 43 IPQoS: Example 1 SpeedTouch 610 Eth0 : BRAS Internet PC A : DG : IPoA PC A : DG :
44 44 Example 1 =>:ip ifconfig intf=ipoa dest=ipoa-qos =>:ip ipadd... Outdated CLI commands =>:ipqos config dest=ipoa-qos state=enabled =>:label rule create chain=user_labels index=0 src= label=RealTime =>:label rule create chain=user_labels index=1 src=! label=BestEffort
45 45 Statistics > UDP flood from PC > VoIP call Label rule stats Ipqos queue stats
46 46 Example 2: WFQ SpeedTouch 610 Eth0 : IPoA PC A : DG : WFQ2 5% BRAS Internet PC C : DG : WFQ4 75% FTP server PC B : DG : WFQ3 15%
47 47 Example 2: WFQ – Continued :ipqos config dest=ipoa2 state=enabled priority=wfq weight1=5 weight2=5 weight3=15 weight4=75 Default labels: Rules: :label rule create chain=user_labels src= label=WFQ2 :label rule create chain=user_labels src= label=WFQ3 :label rule create chain=user_labels src= label=WFQ4
48 48 Example 3 ACK SpeedTouch 610 Eth0 : BRAS Internet PC A : DG : IPoA :label config name=ack-prio classification=increase defclass=4 ackclass=14 :label rule create chain=user_labels src= /24 label=ack-prio MAXIMAL downstream bandwidth use!
49 49 ACK
50 50 IPQoS Scenario – WFQ > ATM 512kb uplink (100%) > 128kb Real Time and overload = drop (=25%) > 256kb Gold and overload = propagate to Silver (=50% guaranteed) > Silver = Best Effort (rest) RT queue 5 / 25% WFQ BE queue 0 / no label match PQ Silver weight=30 Gold weight= WFQ 3 weight=2 WFQ 4 weight=2 WAN LAN
51 51 IPQoS Scenario – BW > RealTime traffic has 25% from 512kb = 128kb > Remaining 512kb –128kb = 384kb for WFQ > 66% of 384kb = 253kb Gold > 30% of 384kb = 115kb Silver
52 52 IPQoS Scenario – BW – Continued > All available BW used In case of no RT traffic, minimum guaranteed BW: Gold = 66% of 512kb = 338kb > Guaranteed: 128kb RT 256kb Gold + propagation to Silver
53 53 Upstream BW Theoretical subdivide = max RT + Max Gold + max Silver RT 128kb Gold 256kbSilver 128kb WFQ Less RT + max Gold + max Silver traffic RT GoldSilver WFQ BW 512kb Less RT + less Silver + max Gold traffic RT GoldSilver WFQ Less RT + less Gold + max Silver traffic RT GoldSilver WFQ
54 54 IPQoS Scenario – Configuration
55 55 IPQoS Scenario – Label
56 56 Scenario Overview SpeedTouch 610 Eth0 : BRAS Internet PC A : DG : IPoA Phone : DG : PC B : DG : FTP-server FTP-upload RT-traffic UDP-flood Gold traffic
57 57 Label Rule Stats Are labels matching?
58 58 IPQoS Queue Stats > Clear stats: => ipqos queue stats clear enable
59 59 user.ini [ phone.ini ] add name=dsl addr=0*38 type=ipoa [ ipoa.ini ] ifadd intf=ipoa dest=dsl ifconfig intf=ipoa ifattach intf=ipoa [ ipqos.ini ] config dest=dsl state=enabled realtimerate=25 burstsize=2 weight1=30 weight2=66 weight3=2 weight4=2 queue config dest=dsl queue=0 queue config dest=dsl queue=1 queue config dest=dsl queue=2 propagate=enabled queue config dest=dsl queue=3 queue config dest=dsl queue=4 queue config dest=dsl queue=5
60 60 user.ini – Continued [ label.ini ] add name=BestEffort add name=Gold add name=RealTime add name=Silver add name=WFQ1 add name=WFQ2 add name=WFQ3 add name=WFQ4 config name=BestEffort classification=increase defclass=4 ackclass=4 config name=Gold classification=increase defclass=8 ackclass=8 config name=RealTime classification=increase defclass=14 ackclass=14 config name=Silver classification=increase defclass=6 ackclass=6 config name=WFQ1 classification=increase defclass=6 ackclass=6 config name=WFQ2 classification=increase defclass=8 ackclass=8 config name=WFQ3 classification=increase defclass=10 ackclass=10 config name=WFQ4 classification=increase defclass=12 ackclass=12 chain create chain=user_labels rule create chain=user_labels index=0 src= label=RealTime rule create chain=user_labels index=1 src= label=RealTime rule create chain=user_labels index=2 src= label=Gold rule create chain=user_labels index=3 src= label=Gold rule create chain=user_labels index=4 src= label=Gold rule create chain=user_labels index=5 src= label=Gold
61 ATM QoS
62 62 Overview > QoS Profiles > Connection Admission Control > Shaping > Scheduling > ATM Bundling
63 ATM QoS QoS Profiles
64 64 Terminology > Peak Cell Rate (PCR): Max. number of ATM cells per second that may be sent on connection > Sustainable Cell Rate (SCR): Average number of ATM cells per second that may be sent on connection > Maximum Burst Size (MBS): Max. number of ATM cells per second that may be sent in burst (exceeding SCR for short period of time)
65 65 CBR Constant Bit Rate > Static amount of guaranteed bandwidth > Typically used for video GUARANTEED PCR NON COMPLIANT linerate cps time maxCTD
66 66 VBR Variable Bit Rate > Variable amount of guaranteed bandwidth > Typically used for bursty traffic PCR NON COMPLIANT linerate cps time SCR GUARANTEED MBS maxCTD
67 67 VBR: Real-Time / Non Real-Time > Real-Time Intended for real-time traffic with constrained delay and delay variation values Extra parameter: maxCTD (max. cell transfer delay, also applicable to CBR) > Non-Real-Time Intended for non-real-time traffic with bursty characteristic, but without transfer delay limitations
68 68 UBR Unspecified Bit Rate > All traffic non-guaranteed > Variable delay, best effort NON-GUARANTEED PCR NON COMPLIANT linerate cps time
69 ATM QoS Connection Admission Control
70 70 CAC > Connection Admission Control (CAC) Verification if connection that is requested to be established can be accepted > Parameters Guaranteed bandwidths of each connection Available line-rate > Main principle Σ guaranteed bandwidths available line-rate Non-guaranteed bandwidth always accepted, even when exceeding available line-rate
71 71 CAC – Continued > Calculation effective bandwidth: CBR > Parameters: PCR, SCR=PCR, MBS=1 cell > Available bandwidth: DSL line-rate > Recalculation: re-synchronization DSL-line Rule of thumb: effective bandwidth = PCR VBR-rt > Parameters: PCR, SCR, MBS > Available bandwidth: DSL line-rate > Recalculation: re-synchronization DSL-line
72 72 CAC – Continued > Calculation effective bandwidth VBR-nrt: > Parameters: PCR, SCR, MBS > Available bandwidth: DSL line-rate - Σ eff. real-time bandwidth recalculation: CAC of new real-time connection (CBR or VBR-rt) Re-synchronization DSL-line > Useful tool: CAC excel-sheetCAC excel-sheet
73 ATM QoS Shaping
74 74 Definition Shaping = altering traffic characteristics to ensure that cells are conform to traffic contract
75 75 Mechanisms > Buffering / queuing > PCR limitation Leaky Bucket shaping > Burst length limitation Token Bucket shaping
76 76 Connection Types > CBR, UBR: PCR shaping > VBR-rt / -nrt: PCR, SCR, MBS shaping
77 ATM QoS Scheduling
78 78 Definition Scheduling = selecting among all queues containing at least one cell that will be transmitted on output link
79 79 Selecting Order > Order of selecting: 1. CBR 2.VBR-rt 3.VBR-nrt 4. UBR > Round Robin scheduling between connections of same class
80 ATM QoS ATM Bundling
81 81 Concept Bundle concept allows multiple virtual circuits between CPE and BRAS to be grouped or bundled so that each end is treated as single IP interface. Allows ATM devices between BRAS and CPE to treat individual VCs in bundle with different QoS
82 82 Use Cases > VLAN user priority mapping > IP Precedence / DSCP mapping > Connection mapping
83 83 Priority Mapping > VLAN priority TPID = 0x8100, TCI = priority (3bit) + CFI (1bit) + VID (12bit) > TOS byte in IP header IP Precedence: DSCP:
84 84 ATM Bundling > Priority mapping: VLAN priority - IP Precedence / DSCP > Configuration > No need of VLAN to use IP precedence / DSCP mapping
85 85 Priority Mapping 802.1p valueIP PrecedenceDSCPInteral ClassQoS QueueATM-bundle mapping 76, 7CS6, CS715 Real-Time atm3_36 65 EF CS AF41 CS4 13 AF4 AF42, AF AF31 CS3 11 AF3 5 AF32, AF AF21 CS2 9 AF2 atm2_36 4 AF22, AF238 1 AF11 CS1 7 AF1 3 AF12, AF136 5 Best Effortatm1_36 00CS
86 86 ATM Bundling > Connection mapping: Load balancing of multiple IP-streams > Every IP-stream => stream-ID (ever increasing) > Stream-ID modulo 16 used to match against selector values
87 CLI
88 88 CLI > Creating Connection Traffic Descriptor (CTD) :atm qosbook ctdadd name=cbr_ctd_400 conformance=CBR peakrate=400 :atm qosbook add name cbr_400 txctd cbr_ctd_400 rxctd cbr_ctd_400 :atm qosbook ctdadd name=vbrrt_ctd_100 conformance=VBR peakrate=300 sustrate=100 maxburst=1200 realtime=enabled :atm qosbook add name vbrrt_100 txctd vbrrt_ctd_100 rxctd vbrrt_ctd_100 :atm qosbook ctdadd name=ubr_ctd_300 conformance=UBR peakrate=300 :atm qosbook add name ubr_300 txctd ubr_ctd_300 rxctd ubr_ctd_300
89 89 CLI – Continued > Creating ATM interface with QoS profile :atm phonebook add name=ph1_36 addr=1*36 :atm phonebook add name=ph2_36 addr=2*36 :atm phonebook add name=ph3_36 addr=3*36 :atm ifadd intf atm1_36 :atm ifconfig intf=atm1_36 dest=ph1_36 qos=cbr_400 ulp=mac :atm ifattach intf=atm1_36 :atm ifadd intf atm2_36 :atm ifconfig intf=atm2_36 dest=ph2_36 qos=vbrrt_100 ulp=mac :atm ifattach intf=atm2_36 :atm ifadd intf atm3_36 :atm ifconfig intf=atm3_36 dest=ph3_36 qos=ubr_300 ulp=mac :atm ifattach intf=atm3_36
90 90 CLI – Continued > Creating ATM bundle + defining selector range :atm bundle add name atm_bundle :atm bundle config name= atm_bundle policy=priority propagate=disabled :atm bundle ifadd name atm_bundle intf atm1_36 :atm bundle ifadd name atm_bundle intf atm2_36 :atm bundle ifadd name atm_bundle intf atm3_36 :atm bundle ifconfig name= atm_bundle intf=atm1_36 state=enabled low=0 high=5 :atm bundle ifconfig name= atm_bundle intf=atm2_36 state=enabled low=6 high=9 :atm bundle ifconfig name= atm_bundle intf=atm3_36 state=enabled low=10 high=15 :atm bundle attach name atm_bundle
91 91 CLI – Continued > Priority mapping: enable on incoming bridge interface > VLAN priority :eth bridge ifconfig intf=ethport1 prioconfig=overwrite :eth bridge ifconfig intf=ethport1 prioconfig=increase > IP precedence :eth bridge ifconfig intf=ethport1 prioconfig=overwrite ipprec=precedence > DSCP :eth bridge ifconfig intf=ethport1 prioconfig=overwrite ipprec=dscp
Еще похожие презентации в нашем архиве:
© 2025 MyShared Inc.
All rights reserved.