1 / 34

Lecture 5. MPLS/DiffServ

Lecture 5. MPLS/DiffServ. D. Moltchanov , TUT, Spring 2010. Outline. QoS in IP domains Why MPLS/DiffServ? Mapping of PHB info Traffic engineering concepts Bandwidth allocation models. QoS in IP networks: which approach?. Overprovisioning!... Where? IntServ model: is not supported

brittanyv
Download Presentation

Lecture 5. MPLS/DiffServ

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lecture 5. MPLS/DiffServ D. Moltchanov, TUT, Spring 2010

  2. Outline • QoS in IP domains • Why MPLS/DiffServ? • Mapping of PHB info • Traffic engineering concepts • Bandwidth allocation models

  3. QoS in IP networks: which approach? • Overprovisioning!... Where? • IntServ model:is not supported • DiffServ model • Scales well in backbone • QoS for aggregated traffic patterns • MPLS model • Resource reservation along the path • Scales well in backbone • Source routing • …. does not provide QoS! • MPLS + DiffServ • May complement each other • Dynamic QoS may finally become reality • Independent technologies

  4. Problem ofMPLS • MPLS only network • Notraffic policing unit • We may not get any guarantees

  5. Problem ofDiffServ • How to get rid of SPF routing? • No protocols for establishing reservation in routers on demand • No mechanisms to get rid of hop-by-fop forwarding • All the traffic here goes A-C-D or B-C-D

  6. MLPS andDiffServ functionalities • What we have to have to provide QoS 1. Scheduling, queuing, etc.:class of service 2. Bandwidth provisioning for each class DiffServMPLSMPLS and DiffServ 1: yes 1: no 1: yes 2: no* 2: yes** 2: yes SLA: yes SLA: no SLA: yes CAC: yes CAC: no CAC: yes *there is no tool to signal DiffServ configuration to routers ** main route and backup routes + fast reroute of TE • Interoperation ofDiffServandMPLS • IETF RFC 3270, 2002 • MPLS Support of Differentiated Services

  7. Interoperation of MLPS andDiffServ • How? Are there any problem? • DiffServ is L3,MPLS is L2… • How to exchange information between them? • How to assign PHB to LSP? • How to engineer the traffic? • How to isolate the traffic? • MPLS/DiffServ node must • Detect PHB of incoming packet • Detect PHB of outgoing packet • Handle packet according to MPLS label and DiffServ • MPLS engines handling packets • Vital: somehow encapsulate DiffServ info in MPLS header!

  8. How to map DiffServ info into MPLS label? • LSR:switching based onMPLS header • LSRdoes not read IP header – does not knowDSCP • Why? This is initial philosophy of MPLS • We need to map betweenPHBtoMPLS header somehow • IETF RFC 3270 • Use EXP field in MPLS header • There are only 3 bits there • Differentiated Services Codepoint (DSCP):6bits • Problem:How to encode 6 bitsusing 3 bits only? • To method have been proposed inIETF 3270

  9. DiffServ/MPLS mapping:E-LSP • Method 1: E-LSP • DiffServ network with less than 8 PHBs • In EXP filed we set PHB • One-to-one EXP-PHB mapping • LSP withEXP setis calledE-LSP • EXP-inferred LSP • There is no strict rules how to map • E-LSP determines PHB schedulerand dropping priority • PHB scheduler:how to treat packets with the same PHB • Example:

  10. DiffServ/MPLS mapping:L-LSP • Method 2: L-LSP • What else we can use in MPLS header?Label field only! • IETF RFC 3270:useLabel field for • DetectPHB scheduler • Implicitly determines PHB • EXP field identifies the dropping probability • EXP/PSC-PHB mapping • This LSP is called L-LSP (Label-inferred LSP) • Scheduler information:carried byCR-LDPor RSVP-TE • label –> scheduler -> PHB • ifEF PHB is concernedLabel field is simply used! • Number of priorities can be more than 8

  11. DiffServ/MPLS mapping • Example of L-LSP E-LSPL-LSP Defined byEXP onlyDefined byLabel and/or EXP Up to 8 PHBsUnlimited number of PHBs* Label:path onlyLabel:pathandscheduler Signaling is not neededSignaling required * Number of LSP is limited by DiffServ (64)

  12. Example of mapping: E-LSP и L-LSP • E-LSP:up to 8 differentPHB • L-LSP: PHBswith different dropping probabilities

  13. TE inDiffServ/MPLS • Some problems cannot be solved using • DiffServ only • MPLS only • What can we do: • UseDiffServ/MPLS • UseMPLS-TE designed for DiffServ/MPLS • MPLS/DiffServ-aware Traffic Engineering • New standards for DiffServ/MPLS-TE • IETF RFC 3564, 2003 • IETF RFC 4125, 2005 • IETF RFC 4127, 2005 • IETF RFC 4128, 2005

  14. TE inDiffServ/MPLS: CTx • Reserve bandwidth for each class • RFC 3564: concept of“class type”, CT for short • Bandwidth reservation, traffic admission • RFC 3564 does not define how to map traffic toCT • We can come up with our own solutions • There are 8CTs with 8 priorities • CT0 – CT7 : CT0 – Best Effort • Priorities: preemption • LSP supportingCTis calledDiffServ-TE LSP • Example: • Two traffic classes:VoIPand data • Two network services:BEfor dataandEFforVoIP • Task:guarantees forVoIP

  15. TE inDiffServ/MPLS: example • Providing guarantees toVoIP • CT0 for data + separate queue • CT1 for VoIP + separate queue • At each node organize separate queues • Define mappingPHB –> LSP –> CTx, x=0,1

  16. TE inDiffServ/MPLS: TE • How to computeLSPs? • MPLS-TE • CSPF based on available bandwidth, link attributes • Then,SPF to find shortest path • ForDiffServ/MPLS-TE • We have to take into accountCTx • TED:avaiable bandwidth for eachCT +priorities, attributes, etc. • New changesfor IGPare required (OSPF, IS-IS) • Ideal case: support 64 values (8 CTx * 8 priorities) • IETF:only 8 values • 8 TEclasses (TE0-TE7) out ofpossible 64 • Define CT • Define priority

  17. TE inDiffServ/MPLS: TE-CT mapping • ChoosingTEclasses for a network (at most 8) • IGPhave to carry info about available bandwidth perTE • MessageUnreserved Bandwidth • Earlier forMPLS-TE (underserved bandwidth forMPLS-TE) • СSPFuses this information

  18. TE inDiffServ/MPLS: signaling • Signaling forDiffServ/MPLS-TE • MessageRSVP PATH • CT carries it in Classtype (CT) object • IdentifiesCT out of which bandwidth is reserved • Smooth transition toDiffServ/MPLS • CTobject is inRSVP PATHforCT1-CT7 only • If not defined then -CT0 (best effort) • A node that does not supportDiffServ/MPLS • Does not handle the message • Does not setup LSP • Return PATH ERR • If error is returned another attempt without CT object is made • After LSP successfully set • Available bandwidth for each TE=(CTx,priority) is recomputed • IGPbroadcasts this information

  19. Example • Broadcasting info about available bandiwidth • For eachTE (CTx,priority) • TEDatAis filling

  20. Example • А:computesLSPbased onCSPF • Available bandwidth for thisTE (CTx,priority) • Administrative groups • ClassicIGP metrics • ThenSPFwithout constraints

  21. Example • IfRSVP PATH – RSVP RESVwas successful • LSP has been set • Recompute and distribute info about available bandwidth • NodesC, D • TEDatAis filling

  22. Example • IfC doesnot supportDiffServ/MPLS-TE • LSPis not set • RSVP PATH-ERRreturned toA

  23. Example • Upon reception ofRSVP PATH-ERR • А may try to set up LSP once again • In this caseRSVP PATH does notcontain CTobject

  24. Traffic engineering inDiffServ/MPLS • Bandwidth distribution between CTx • Measured in percents • Percent of available bandwidth assigned to CTx • It is calledBandwidth Constraint, BC • How BCandCT are related to each other • Bandwidth constraint model • There are twoBCs currently defined • Maximum Allocation Model, MAM • Russians Dolls Model, RDM

  25. Мaximum allocation model (MAM) • EachBCis assigned a single CT • Available bandwidth is strictly (somehow) divided between CTx • Advantages: • Isolated traffic of CTs well • Shortcomings: • Free bandwidth in CTx cannot be used by traffic of CTy

  26. MAM: problem of full isolation • Example • All links are 10Mbps • Data traffic A-D: 10 Mbps • Reservations at all links: CT1 - 1Mbps; CT0 - 9Mbps • +: data traffic cannot use shortest path viaG even if it is free • -: VoIP traffic always use shortest path

  27. Russian dolls model (RDM) • What RDM does? • Tries to decrease the level of isolation • Allows dynamically share available bandwidth between CTx • According to RDM: • CT0: Best effort • CT7:Strict guarantees • The level of bandwidth sharing is different • BC7: fixed available bandwidth forCT7 only • BC0:all available bandwidth of the link, shared between allCTx • Example of RDM: • BC6: can be used by CT7 and CT6 traffic • BC5:can be used byCT7, CT6, CT5 traffic • BC4:can be used byCT7, CT6, CT5, CT4 traffic

  28. Russian dolls model (RDM) • Example of RDM • Advantages • Shares available bandwidth • The network is more dynamic • Shortcomings • Traffic is not well isolated • The level of isolation is different for CTx

  29. RDM example • Example • Two CT (CT0-data, CT1-VoIP), all links are 10Mbps • Data traffic: A-D 9Mbps • BC1 = CT1 = 1Mbps; BC0 = CT0 + CT1 = 10 Mbps • If there is noVoIP traffic, this path can be used for data

  30. RDM example • Example • Data traffic: A-D 10Mbps • If there is noVoIP traffic, this path can be used for data • All the bandwidth is used at C-G-D path

  31. RDM example • VoIP traffic: A-D 1Mbps • using priority we intercept and take over this path forVoIP

  32. Bandwidth constraints (BC) models • Propertiesof BC model • Different model at different links can be used • IGP ‘Bandwidth constraint’distributes • Type ofBC model • Available bandwidth for each TE=(CTx, priority) • Compare MAMandRDM MAM RDM OneBCto oneCT OneBCtoone/few СЕ Full traffic isolationWeak isolation Interception is not neededInterception is needed Not effective bandwidth usage Effective bandwidth usage

  33. ImplementingDiffServ/MPLS-TE • Define bandwidth constraints mode • MAMor/and RDM for each link • Available bandwidth forBCat each link • Set these parameters in interior nodes • DefineTE=(CTx, priority) • Do we actually need priorities within a single CT? • ChooseIGP with DiffServ/MPLS-TE • IS-ISor OSPF • SetDiffServparameters in network nodes • Check traffic conformance to specifications • Define class mapping DiffServ/MPLS • E-LSP (if no more than 8 PHBs) • L-LSP (of more than 8 PHBs) • Define packet marking at ingress nodes

  34. Transition:MPLS-TE ->DiffServ/MPLS-TE • Stage 1: • Define CTxand priorities • LSPwithoutCT object in RSVP-PATHcorresponds toCT0 • Stage 2: • Mapping (CTx,priority) ->TE class • Unreserved Bandwidth TLV carries info for eachTE • New and old nodes • Earlier (MPLS-TE)for each link • Old nodes:must interpret as(CT0,i) for alli • New nodes:TEi, i=0,1,…,7 • Define either MAM of RDM for each link • (CTx,j)should correspond to a certainTEi and be assigned to BCi • Stage 3: • Check whether all this stuff is working…

More Related