Virtual-Circuit Switching:ATM (Asynchronous Transmission Mode) andMPLS(Multiprotocol Label Switching)2007. 10
Virtual Circuit (VC) Switching • Hybrid of packets and circuits • Circuits: establish and teardown along end-to-end path • Packets: divide the data into packets with identifiers • Packets carry a virtual-circuit identifier • Associates each packet with the virtual circuit • Determines the next link along the path • Intermediate nodes maintain state VC • Forwarding table entry • Allocated resources
Packet 1 Packet 1 Packet 1 Packet 2 Packet 2 Packet 2 Packet 3 Packet 3 Packet 3 Timing of Virtual-Circuit Packet Switching Host 1 Host 2 Node 1 Node 2 propagation delay between Host 1 and Node 1 VC establishment Data transfer VC termination
Establishing the Circuit • Signaling • Creating the entries in the forwarding tables • Reserving resources for the virtual circuit, if needed • Two main approaches to signaling • Network administrator configures each node • Source sends set-up message along the path • Set-up latency • Time for the set-up message to traverse the path • … and return back to the source • Routing • End-to-end path is selected during circuit set-up
Virtual Circuit Identifier (VC ID) • Virtual Circuit Identifier (VC ID) • Source set-up: establish path for the VC • Switch: mapping VC ID to an outgoing link • Packet: fixed length label in the header 1: 7 2: 7 1: 14 2: 8 link 7 1 link 14 2 link 8
Swapping the Label at Each Hop • Problem: using VC ID along the whole path • Each virtual circuit consumes a unique ID • Starts to use up all of the ID space in the network • Label swapping • Map the VC ID to a new value at each hop • Table has old ID, and next link and new ID 1: 7, 20 2: 7, 53 20: 14, 78 53: 8, 42 link 7 1 link 14 2 link 8
Virtual Circuits Similar to IP Datagrams • Data divided in to packets • Sender divides the data into packets • Packet has address (e.g., IP address or VC ID) • Store-and-forward transmission • Multiple packets may arrive at once • Need buffer space for temporary storage • Multiplexing on a link • No reservations: statistical multiplexing • Packets are interleaved without a fixed pattern • Reservations: resources for group of packets • Guarantees to get a certain number of “slots”
Virtual Circuits Differ from IP Datagrams • Forwarding look-up • Virtual circuits: fixed-length connection id • IP datagrams: destination IP address • Initiating data transmission • Virtual circuits: must signal along the path • IP datagrams: just start sending packets • Router state • Virtual circuits: routers know about connections • IP datagrams: no state, easier failure recovery • Quality of service • Virtual circuits: resources and scheduling per VC • IP datagrams: difficult to provide QoS
Asynchronous Transfer Mode: ATM • 1990’s/00 standard for high-speed (155Mbps to 622 Mbps and higher) Broadband Integrated Service Digital Network architecture • Goal:integrated, end-end transport of carry voice, video, data • meeting timing/QoS requirements of voice, video (versus Internet best-effort model) • “next generation” telephony: technical roots in telephone world • packet-switching (fixed length packets, called “cells”) using virtual circuits
ATM architecture • adaptation layer: only at edge of ATM network • data segmentation/reassembly • roughly analagous to Internet transport layer • ATM layer:“network” layer • cell switching, routing • physical layer
ATM Physical Layer Physical Medium Dependent (PMD) sublayer • SONET/SDH: transmission frame structure (like a container carrying bits); • bit synchronization; • bandwidth partitions (TDM); • several speeds: OC3 = 155.52 Mbps; OC12 = 622.08 Mbps; OC48 = 2.45 Gbps, OC192 = 9.6 Gbps • TI/T3: transmission frame structure (old telephone hierarchy): 1.5 Mbps/ 45 Mbps • unstructured: just cells (busy/idle)
ATM Physical Layer (more) Two pieces (sublayers) of physical layer: • Transmission Convergence Sublayer (TCS):adapts ATM layer above to PMD sublayer below • Physical Medium Dependent (PMD) : depends on physical medium being used TCS Functions: • Header checksum generation: 8 bits CRC • Cell delineation • With “unstructured” PMD sublayer, transmission of idle cells when no data cells to send
ATM Layer: Virtual Circuits • analogous to IP network layer • very different services than IP network layer • VC transport: cells carried on VC from source to dest • call setup, teardown for each call before data can flow • each packet carries VC identifier (not destination ID) • every switch on source-dest path maintain “state” for each passing connection • link,switch resources (bandwidth, buffers) may be allocated to VC: to get circuit-like perf.
ATM VCs • Advantages of ATM VC approach: • QoS performance guarantee for connection mapped to VC (bandwidth, delay, delay jitter) • Drawbacks of ATM VC approach: • Inefficient support of datagram traffic • VC introduces call setup latency, processing overhead for short lived connections
ATM Layer: ATM cell • 5-byte ATM cell header • 48-byte payload • Why?: small payload -> short cell-creation delay for digitized voice • halfway between 32 and 64 (compromise!) Cell header Cell format
ATM cell header • VCI: virtual channel ID • will changefrom link to link thru net • PT: Payload type (e.g. RM cell versus data cell) • CLP:Cell Loss Priority bit • CLP = 1 implies low priority cell, can be discarded if congestion • HEC: Header Error Checksum • cyclic redundancy check
ATM Service • very different services than IP network layer Guarantees ? Network Architecture Internet ATM ATM ATM ATM Service Model best effort CBR VBR ABR UBR Congestion feedback no (inferred via loss) no congestion no congestion yes no Bandwidth none constant rate guaranteed rate guaranteed minimum none Loss no yes yes no no Order no yes yes yes yes Timing no yes yes no no
ATM Adaptation Layer (AAL) • ATM Adaptation Layer (AAL): “adapts” upper layers (IP or native ATM applications) to ATM layer below • AAL present only in end systems, not in switches • AAL layer segment (header/trailer fields, data) fragmented across multiple ATM cells • analogy: TCP segment in many IP packets
ATM Adaptation Layer (AAL) [more] Different versions of AAL layers, depending on ATM service class: • AAL1: for CBR (Constant Bit Rate) services, e.g. circuit emulation (phone) • AAL2: for VBR (Variable Bit Rate) services, e.g., MPEG video • AAL5: for data (eg, IP datagrams) User data AAL PDU ATM cell
app transport IP AAL ATM phy app transport IP Eth phy ATM phy ATM phy IP AAL ATM phy Eth phy IP-Over-ATM
How far along are we? • Standardization bodies - ATM Forum, ITU-T • We may never see end-to-end ATM (1997) • Backbone: - 1995 vBNS (ATM) - 1998 Abilene (SONET) - 2000 IP over DWDM • ATM - too complex - too expansive <IP> • Internet technology + ATM philosophy • but ATM ideas continue to powerfully influence design of next-generation Internet • ex: MPLS, admission ctl., resource reservation, …...
PPP or Ethernet header IP header remainder of link-layer frame MPLS header label Exp TTL S 5 1 3 20 Multiprotocol label switching (MPLS) • initial goal: speed up IP forwarding by using fixed length label (instead of IP address) to do forwarding • borrowing ideas from Virtual Circuit (VC) • but IP datagram still keeps IP address!
Label Substitution • Have a friend go to B ahead of you using one of the previous two techniques. At every road they reserve a lane just for you. At every intersection they post a big sign that says for a given lane which way to turn and what new lane to take.
Label Encapsulation • MPLS Encapsulation is specified over various media types. Top labels may use existing format, lower label(s) use a new “shim” label format.
MPLS Link Layers MPLS -- run over multiple link layers Following link layers currently exist: • ATM: label -- in VCI/VPI field of ATM header • Frame Relay: label -- in DLCI field in FR header • PPP/LAN: uses ‘shim’ header inserted between L2 and L3 headers Translation between link layers types must be supported MPLS is between L2 and L3 It intended to be “multi-protocol” below and above
MPLS capable routers • a.k.a. label-switched router • forwards packets to outgoing interface based only on label value (don’t inspect IP address) • MPLS forwarding table distinct from IP forwarding tables • signaling protocol needed to set up forwarding • Hop-by-hop or source routing to establish labels • forwarding possible along paths that IP alone would not allow (e.g., source-specific routing) !! • use MPLS for traffic engineering • RSVP-TE • must co-exist with IP-only routers
in out out label label dest interface 10 6 A 1 12 9 D 0 in out out label label dest interface in out out label label dest interface 8 6 A 0 6 - A 0 MPLS forwarding tables in out out label label dest interface 10 A 0 12 D 0 8 A 1 R6 0 0 D 1 1 R3 R4 R5 0 0 A R2 R1
Best of Both Worlds • MPLS + IP form a middle ground that combines the best of IP and the best of virtual circuit switching technologies • ATM and Frame Relay cannot easily come to the middle so IP has!
Multi-Protocol Label Switching • Key ideas of MPLS • Label-switched path spans group of routers • Explicit path set-up, including backup paths • Flexible mapping of data traffic to paths • Motivating applications • Small routing tables and fast look-ups • Virtual Private Networks • Traffic engineering • Path protection and fast reroute
Status of MPLS • Deployed in practice • Small control and data plane overhead in core • Virtual Private Networks • Traffic engineering and fast reroute • Challenges • Protocol complexity • Configuration complexity • Difficulty of collecting measurement data • Continuing evolution • Standards • Operational practices and tools
Optical Networks • 1 st Generation: optical fibers substitute copper as physical layer • Submarine Systems • SONET (synchronous optical) in TDM • FDDI for LAN, Gbit Ethernet etc. • 2 nd Generation: optical switching and multiplexing/ WDM • broadcast-and-select networks • WDM rings • wavelength routing networks • 3 th Generation: optical packet switching???
Input & Output fiber array Wavelength Dispersive Element 1-D MEMS Micro-mirror Array Input Fiber Output Fiber 1 Output Fiber 2 Digital MirrorControl Electronics 1011 Optical Switch • 1-input 2-outoput illustration with four wavelengths • 1-D MEMS (micro-electromechanical system) with dispersive optics • Dispersive element separates the ’s from inputs • MEMS independently switches each • Dispersive element recombines the switched ’s into outputs
All-opticalOXC DWDM Fibersin DWDM Fibersout DWDM Demux DWDM Demux DWDM Mux DWDM Mux All-Optical Switching • Optical Cross-Connects (OXC) • Wavelength Routing Switches (WRS) • route a channel from any I/P port to any O/P port • Natively switch s while they are still multiplexed • Eliminate redundant optical-electronic-optical conversions
MPS • MPS = Multi-Protocol Lambda Switching • MPLS + OXC • Combining MPLS traffic eng control with OXC • All packets with one label are sent on one wavelength • Next Hop Forwarding Label Entry (NHFLE) • <Input port, > to <output port, > mapping