390 likes | 538 Views
Spring 2006 EE 5304/EETS 7304 Internet Protocols. Lecture 10. Multiprotocol Label Switching (MPLS). Tom Oh Dept of Electrical Engineering taehwan@engr.smu.edu. Administrative Issues. We will have test 2 on April 4. Test will consists of Lecture 6-10
E N D
Spring 2006 EE 5304/EETS 7304 Internet Protocols Lecture 10 Multiprotocol Label Switching (MPLS) Tom Oh Dept of Electrical Engineering taehwan@engr.smu.edu
Administrative Issues • We will have test 2 on April 4. • Test will consists of Lecture 6-10 • Multiple choice, true/false, short answers • We will have review for test 2 today. • You can use one 3 ½ x 5 card.
Outline (Comer, pg. 232) • Motivations (IP vs ATM) • Idea of label switching • MPLS standards • MPLS traffic engineering
Early 1990s “IP vs ATM” IP ATM Developed by: Computer scientists Public carriers Standardized by: DoD, IETF ITU Prevalence: Since 1978 Since 1988 Packet lengths: Variable Fixed, short Designed for: Data All services Packet forwarding: Connectionless Connection-oriented Routing tables: Complex prefix match Simple VPI/VCI lookup QoS: Best effort Guaranteed QoS Traffic control: Simple Complex
Strengths of ATM • High speed, high throughput switches • VPI/VCI lookup is an exact match algorithm (compared to longest prefix match for IP addresses) • More control over traffic (virtual circuits compared to hop-by-hop routing in IP) • Bandwidth can be reserved on virtual circuits • Traffic flows can be “pinned” to specific routes, allowing more uniform traffic distribution in network
Why MPLS (1/4) • Internet is getting bigger in any dimension • Traffic volume • Number of user • Number of nodes • Bandwidth Required • ISPs need higher performance switching & routing equipment • Scalability • Many solutions being proposed to address those problems: • IP V6 • IP over ATM • Gigabit Ethernet • IP Switching
Why MPLS (2/4) IP over ATM • Overlay model • IP over ATM described in RFC 1483 • “Classical IP over ATM” in RFC 1577 • Problem of mapping IP onto ATM was taken up by a number of standard bodies. • IP over ATM • IP over Large Public Data Networks • LAN emulation • Multiprotocol over ATM
WHY MPLS (3/4) • Leverage existing ATM hardware • Ultra fast-forwarding • IP traffic engineering • Constraint-based routing • Virtual Private Networks • Controllable tunneling mechanism • Voice/Video on IP • Delay variation + QoS constraints • Diversity routing for load-balancing and reliability
Idea of Label Switching • How to take advantage of ATM strengths without adopting ATM entirely or changing IP control plane (routing protocols)? • Generalize idea of VPI/VCI lookup to “label” • Label is an extra field attached to IP packet header that serves as an index pointing to an entry in routing table Routing table Entry contains next hop (or output port) and new outgoing label value Exact match Label Packet
Label Switching (cont) • LSR (label switching router) is router capable of forwarding packets based on label • Where is the label attached? • Assume LSR are deployed gradually in “islands” in Internet • Edge LSR will attach label which is used throughout island Island of LSRs IP packets IP packets from other routers Detach label Attach label
CIRCUITSWITCHING PACKETForwarding HYBRID IP MPLS+IP ATM BEST OF BOTH WORLDS • MPLS + IP forms a middle ground that combines the best of IP and the best of circuit switching technologies. • ATM and Frame Relay cannot easily come to the middle so IP has!!
AT&T Next Generation Network Architecture: The Concept of One [Eslambolchi, 2002]
Next Generation Network Architecture (Dec 2002, J. Jaffee: Lucent President) M. El-Sayed and J. Jaffee, “A View of Telecommunications Network Evolution”, IEEE Communication Magazine, Dec. 2002.
Multiprotocol Label Switching (MPLS) • Various companies experimented with proprietary label switching • 1997 IETF MPLS working group began to standardize technology integrating ATM-like "label swapping" for packet forwarding with IP layer routing • Use existing IP routing protocols • MPLS-enabled routers = LSRs • Ingress edge LSR examines packets and classifies to a flow called forwarding equivalence class (FEC) • FEC = class of packets that should be handled same way along same routes
MPLS (cont) • FEC granularity is arbitrary - one or more IP "flows" can be mapped to one FEC • Packets are assigned label to identify FEC • Label value is arbitrary, only serves to identify packets of same FEC • Label might be VPI/VCI field in ATM header, DLCI field in frame relay header, or added "shim" label inserted between data link layer header and network layer header → "multiprotocol” Layer 2 frame Layer 2 header Shim label IP packet
MPLS (cont) • Core LSRs forward packets based only on MPLS labels, no need to inspect IP header • Incoming label is looked up in forwarding table called label forwarding information base (LFIB) • LFIB contains next hop, forwarding instructions, and new label value • Contiguous LSRs constitute an MPLS domain (maybe an island within IP network) • Concatenated labels constitute a label switched path (LSP) through MPLS domain
MPLS (cont) MPLS domain Egress edge LSR3 Ingress edge LSR1 LSR2 LSP LSR3 table LSR1 table In-label Next hop Dest. address Next hop Out-label 4 R4 172.12.3 LSR2 6 LSR2 table In-label Next hop Out-label 6 LSR3 4
MPLS (cont) • Egress LSR removes label • LSPs are established by a label distribution protocol (LDP) and a routing protocol • LSRs learn topology of network using existing routing protocols, eg, OSPF • A label distribution protocol coordinates assignment of labels among routers, can be standardized LDP [RFC 3031] or extension of RSVP (RSVP-TE)
IP+ATM • ATM switches already use label switching for packet forwarding (label = VPI/VCI fields) → ATM switches do not need changes in forwarding hardware to support MPLS • IP+ATM refers to combination of ATM, MPLS, and IP technologies in ATM switches • ATM switches do need changes in control plane (software) • Need to operate IP routing protocols to exchange routing info with regular IP routers • Need to support LDP
MPLS Traffic Engineering • Traffic engineering tries to ensure sufficient resources are available in network to meet traffic demands • Includes uniform distribution of traffic as much as possible • Hop-by-hop IP routing is not designed for traffic engineering • MPLS allows explicit routing - labels “pin” traffic flows to specific routes
MPLS Traffic Engineering (cont) All traffic goes one way Hop-by-hop IP routing Dest. Router chooses least-cost route to dest. Label2 Label2 MPLS explicit routing Dest. Label1 Label1 Router forwards by label
Spring 2006 EE 5304/EETS 7304 Internet Protocols Lecture 10 Quality of Service (QoS) in IP Tom Oh Dept of Electrical Engineering taehwan@engr.smu.edu
Outline • Intserv (Integrated services) • Diffserv (Differentiated services)
Support of QoS in IP • TCP/IP protocol architecture designed in late 1970s to enable a scalable, decentralized internet • IP allows different types of networks to interconnect but only best-effort service (although ToS field in IP header recognizes need for QoS) • TCP adds reliability above IP – the only QoS parameter provided • Success of Internet attests to correctness of TCP/IP design philosophy but mid-1990s Internet was opened to commercial traffic and ISPs
QoS Support in IP (cont) • New applications are regularly being tried, not imagined in 1970s • Examples: streaming audio/video, voice over IP, desktop videoconferencing, distance learning,… • Many applications require QoS better than best-effort
IETF Integrated Services (Intserv) • Early 1990s IETF Intserv working group began specifications of architecture based on: • Guaranteed service: hard QoS per packet flow • Bandwidth, packet delay, delay jitter • Flow can be identified by <source IP address, destination IP address, protocol field, source port, destination port> • Resource reservations • Applications request QoS through standardized Resource Reservation Protocol (RSVP) [RFC 2205] • Or controlled-load service: better than best-effort
Intserv (cont) • Sender generates RSVP Path message with service specification RSpec and traffic description TSpec • TSpec = peak (max.) rate, average rate, min/max packet size, etc. • RSpec = required bandwidth, slack (tolerable node delay), etc. • Path message finds a route to receiver (remembered by every router) and assigns a unique identifier to session • Receiver returns RSVP Resv message in backward direction to request bandwidth • Resv message carries RSpec and TSpec
Intserv (cont) • Admission control: every router has chance to admit/reject new sessions and reserve enough resources to ensure the requested QoS • Calculates necessary resources to meet requested QoS based on TSpec • Decides to accept or reject new session • Reserves resources (if accepted) • Forwards Resv message to next router
Problems with Intserv • Not scalable to very large networks: routers process requests for each flow and store state info (bandwdith reservation), which increases with number of flows • Reservation overhead is costly for short-lived sessions • RSVP must be deployed to all routers • Not flexible: small number of predefined service classes
IETF Differentiated Services (diffserv) • Late 1990s IETF Diffserv working group objectives: • Deployable in gradual stages • Scalable and flexible service architecture, eg, no per-flow state info. • Minimal overhead on backbone routers • Service differentiation with coarse granularity (different classes of service) instead of absolute guaranteed services with fine granularity (per flow)
Stateless Core for Scalability Simple core routers Complex edge routers
Diffserv (cont) • To keep core stateless, packets are classified to service class at network edge • Packets carry their service class designation in diffserv code point (DSCP) • DSCP = first 6 bits re-interpreted from ToS field in IP packet header • 26 = 64 possible codepoints • Network core uses DSCP in packet header • Core routers forward packets according to their DSCP
Diffserv (cont) • Diffserv idea: define per-node functional components that can be put together to make different end-to-end services, instead of predefining end-to-end services • Example: intserv guarantees packet delay < D, but not clear what each router should do • DSCP identifies a specific predefined per-hop behavior (PHB) • PHB = instructions for treating packet described in terms of "external behavior" • Eg, queue packet at head of line or back of line • No state info. needed in each core router
Diffserv (cont) • 2 PHBs defined: EF and AF • Expedited forwarding (EF) PHB • Forward packets with minimal delay and loss (ie, guaranteed minimum bandwidth) • Only way to guarantee is limiting rate of incoming traffic at network edges => bandwidth brokers keep network-wide view of used/available resources and make decisions for admitting traffic • Other mechanisms: traffic priorities, weighted fair queueing, traffic shaping,...?
Diffserv (cont) • Assured forwarding (AF) PHB • Statistical service with lower assurance than guaranteed service • 4 relative classes can be defined (standard, bronze, silver, gold) • 3 packet discarding priorities in each class
TEST 2 Review • ATM • Cell format, QoS, ATM Services, CAC • IPv4 and ICMP • Role of IP Interworking, IPv4 header, Fragmentation, • IP address, ICMP • More about IP Addresses • IP addresses, ARP • Dynamic Host Configuration Protocol • Subnetting • Classless inter-domain routing (CIDR)
TEST 2 Review-cont • Network Address translation (NAT) • Virtual Private Networking (VPN) • Mobile IP • IPv6 • Motivation and highlights • IPv6 Header, flow label, Next Header • IPv6 extensions • IPv6 addresses • Transitioning from IPv4 to IPv6
TEST 2 Review-Cont • Router, Type of Routers • Generic router and generation routers. • ATM Switching Origins, ATM switching • ATM Fabrics (Space Division Switch, Shared Medium Switch Shared Memory Switch, and Fully Interconnected Switch). • MPLS • Idea of Label Switching • MPLS Standards • MPLS traffic engineering