DiffServ: 26/06/05 DiffServ DiffServ QoS in internet Elon Rot , Itay Poleg Presentation for ATM Networks course (EE-046992)
DiffServ: 26/06/05
DiffServDiffServQoS in internet
Elon Rot , Itay Poleg
Presentation for ATM Networks course (EE-046992)
DiffServ: 26/06/05
Why do we need QoS ?
• IP revolution - from “IP over everything” to “everything over IP”
• Current Internet guarantee: Best Effort only.• Some applications require more:
– Guarantee delay, jitter– Guarantee bandwidth – Guarantee loss rate
(VoIP, Conference-Calls, VPN, VOD…)
• Although QoS is available in lower layers (ATM, FR, Ethernet) we need a media independent IP QoS
DiffServ: 26/06/05
Little History
• An 8 bit field in the IP-header– Seems like a good idea for future use.
• Lots of initial research in the late 80s and early 90s.– Often takes a telecommunications view of the network.
• ATM QoS and Integrated services were developed based on these results (1995).– Focus on per-flow, hard QoS.– Effort was driven by perceived application needs.
• In the last years (from 1998), the focus has shifted towards Differentiated services.– Focus is on QoS for flow aggregates, e.g., all the flows
belonging to one customer.• From 2000 , you can buy a router that support DiffServ
(Cisco)
DiffServ: 26/06/05
What is needed to support QoS
• Between the network and its clients - Traffic contract– Traffic specification/desired QoS/supported
QoS
• At network edge:– Signaling and admission control– Packet classification/marking– Traffic shaping– Traffic policing
DiffServ: 26/06/05
What is needed to support QoS
• At routers: – Classification and scheduling– Smart Routing – Buffer management.– Traffic monitoring– Traffic reshaping
DiffServ: 26/06/05
Different QoS approaches
• Per flow Vs. aggregate– More groups leads to:
more flexibility, more admission,more routers resources
• Statistical Vs. Deterministic guarantee – Sometimes statistical
are not enough– Deterministic more complex, less utilization
• End-to-End Vs. Per-Hope-Behavior – User see E2E– PHB is simpler to implement
DiffServ: 26/06/05
IntServ
• Per-flow QoS guarantees
• Reservation of resources using RSVP
• Two service models:– controlled-load service: performance is as
good as unloaded network– guaranteed service: firm bound of throughput
and delay
DiffServ: 26/06/05
IntServ drawbacks
• Scalability – RSVP support along the path– Maintaining “soft” reservations
• Complexity– Support for each flow – Need to administrate allocations
DiffServ: 26/06/05
What is DiffServ?
• Aggregate connections flows to different classes
• Different demand can be guaranteed to each class
• Guarantees implementations are per hop behavior
• Each flow gets required services statistically
Edge Routers:Usually work at lower rateTherefore can implement more functionalitylike marking & shaping traffic
Core Routers:Usually work at high rateSo we want packet handle to be fast and simple(using the classifications)Per-class service
DiffServ architecture
DiffServ: 26/06/05
DiffServ architecture
• Edge routers– Each flow is handled separately, and each
packet is marked according to the SLA
• Core routers– Deals with classes (rather then flow) so can
be more simple. – Each router still need to manage buffering
and scheduling
DiffServ: 26/06/05
Traffic Conditioner Block (TCB)
Classification: selects a packet in a traffic stream based on the content of some portion of the packet header
DiffServ: 26/06/05
Traffic Conditioner Block (TCB)
Metering: checks whether the traffic falls within the negotiated profile.
DiffServ: 26/06/05
Traffic Conditioner Block (TCB)
Marking: marks packet to a particular DS behavior aggregate
DiffServ: 26/06/05
Traffic Conditioner Block (TCB)
Shaper/Droper: delays if necessary and then forwards or discards the packets .
DiffServ: 26/06/05
Classification
• How to mark?6 bit it the IP header.
• Remainder – IP header
• Type Of Service field
versionheaderlength
total length (in bytes)
Identification Fragment offset
source IP address
destination IP address
options (0 to 40 bytes) (Not used)
4 bytes
time-to-live (TTL) protocol header checksum
bit # 0 15 23 248 317 16
0MF
DF
ToS
DiffServ: 26/06/05
ToS field
• IP-v4
• DS-Field
0 1 2 3 4 5 6 7
Precedence Type of Service 0
Must be zero
One hot field for :
Delay,cost,throughput, reliability
Priority
0 1 2 3 4 5 6 7Class SelectorCodepoints
CurrentlyUnused
Differentiated Services Codepoint (DSCP)
DiffServ: 26/06/05
PHB
• Externally observable forwarding treatments at a single node
• PHB can be described in relative or absolute terms
• PHBs are typically implemented by means of buffer management and packet scheduling
• All packets with the same DSCP are treated the same, Four types of classes available:– Default– Class-Selector – Expedited Forwarding (EF)– Assured Forwarding (AF)
DiffServ: 26/06/05
PHB types
• Default PHB: – Traditional best effort treatment.– Must be implemented – Used for unsupported DSCP
• Class-Selector PHB– Backward compatibility– Eight possible combinations (including default)
The DSCP (6 bit) pattern is: 000000
The DSCP (6 bit) pattern is: xxx000
DiffServ: 26/06/05
PHB types
• Expedited Forwarding PHB– Providing low loss, low latency, low jitter,
assured bandwidth, end-to-end service through DS domains
– Implies isolation: guarantee for the EF traffic should not be influenced by the other traffic classes
– Non-conformant traffic is dropped or shaped.– Possible service: providing a virtual wire
The DSCP (6 bit) pattern is: 101110
DiffServ: 26/06/05
PHB types
• Assured Forwarding (AF): – A method by which Behavior Aggregates can be given
different forwarding assurances.– The intent is that it will be used to implement services
that differ relative to each other (e.g., gold, silver,…).– AF defines 4 classes with some bandwidth and buffers
allocated to them.– Within each class, there are three drop priorities, which
affect which packets will get dropped first if there is congestion.
– Non-conformant traffic is remarked.
DiffServ: 26/06/05
AF table
Class
Dropprecedence
Class 1 Class 2 Class 3 Class 4
Low Drop
001010(AF11)
010010(AF21)
011010(AF31)
100010(AF41)
Medium Drop
001100(AF12)
010100(AF22)
011100(AF32)
100100(AF42)
High Drop
001110(AF13)
010110(AF23)
011110(AF33)
100110(AF43)
The DSCP (6 bit) pattern is: xyzab0
xyz is the class: 001-class1 ; 010-class2 ; 011-class3 ; 100-class4ab is the drop precedence: 01-low ; 10-medium ; 11-high
DiffServ: 26/06/05
Service
• A service describes the overall treatment of a customer’s traffic within a DS domain.– Customers see services, not PHBs.
• To support a service, many components must work together:– Mapping of service to PHBs, traffic conditioning,
network provisioning, PHB-based forwarding.
• Services in the DiffServ architecture is defined in the form of Service Level Agreement (SLA).
DiffServ: 26/06/05
Conclusion
• Diffserv provides:– Internet Class Of Service: several ToS
guaranteed in each DS domain.
– Using PHB to achieve the requirements.
– Provisioning of network resources according to SLAs
DiffServ: 26/06/05
Advantage– Scalability
• No dynamic change of stateSaves communication between routers
• Can be deployed for specific domain independently
– Simple• Relatively low number of states
Using a stateless approach that minimize the need of nodes to remember anything about flows
• Divide load on routers, edge vs. coreedge routers – a few strong and expensive routerscore routers – a lot simple and chip
• No signaling
– Easily adjustable to SLAs
DiffServ: 26/06/05
Disadvantages
– Not real end-to-end QoS:• Only PHB – which are not easily map to E2E• Limited number of classes – can’t isolated specific
flow.• Inside aggregate each flow get the same (only
statistic guarantees)
– Routing independent mechanism – Admission control:
• Fairly static• Manually or with another mechanism
DiffServ: 26/06/05
Diffserv-aware-MPLS
• DiffServ enable scalable network design with multiple CoS.
• MPLS enable path protection and restoration (create an end-to-end specific path)
• Combine those two protocols give us the ability to give strict E2E QoS guarantees while optimizing the use of network resource
DiffServ: 26/06/05
Diffserv-aware-MPLS
Incoming Traffic
Ingress node(TCB)
With both Diffserv& MPLS support
LSP 1 (AF1)
LSP 2 (AF3)
LSP 3 (EF)
LSP 4 (default)
Core router(LSR)
Support Diffservand MPLS
DiffServ: 26/06/05
References
• Internet Architecture and Protocols EE-046000http://www.ee.technion.ac.il/courses/046000/
• Cisco www.cisco.com/warp/public/cc/pd/iosw/ioft/iofwft/prodlit/difse_wp.htm
• QoS - by: ANJALI KULKARNI YI-AN CHEN www.cse.buffalo.edu/~qiao/cse620/present_2000/presentation.ppt
• IEFT RFCs 2474, 2475, 2598, 3270 www.ietf.org/rfc.html
• MPLS DiffServ-aware Traffic Engineeringhttp://www.juniper.net/solutions/literature/white_papers/200048.pdf