* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Packet Switching, ATM, switch Fabric
Survey
Document related concepts
Distributed firewall wikipedia , lookup
Point-to-Point Protocol over Ethernet wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
Multiprotocol Label Switching wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Deep packet inspection wikipedia , lookup
Nonblocking minimal spanning switch wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Computer network wikipedia , lookup
Network tap wikipedia , lookup
Airborne Networking wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Spanning Tree Protocol wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Transcript
Introduction to Computer Networks Lecture 9: Packet Switching University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani Univ. of Tehran Introduction to Computer Network 1 outline Store-and-Forward Switches Bridges and Extended LANs Packet switching Cell Switching Segmentation and Reassembly Univ. of Tehran Introduction to Computer Network 2 Scalable Networks Limitation of directly connected networks. Limit on the number of hosts; For example, Ethernet is 1024 hosts. Limit on the geographical area of LANs. 2500 m in Ethernet. Solution: This is like telephone network. Then, use Switches. Univ. of Tehran Introduction to Computer Network 3 Switches forwards packets from input port to output port T3 T3 STS-1 Input ports port selected based on address in packet header If two packets are destined to the same output, one must be buffered (queued). This is called contention. Switch T3 T3 STS-1 Output ports Needs some kinds of scheduling for packet delivery. If the buffer overflow, it will be a congestion. Univ. of Tehran Introduction to Computer Network 4 An Ethernet Network Router Problem: Outside world Shared network limits throughput. Lots of collisions reduces efficiency. Univ. of Tehran Introduction to Computer Network 5 Interconnecting LANs Bridges (aka Ethernet switches) were introduced to allow the interconnection of several local area networks (LANs) without a router. By partitioning a large LAN into multiple smaller networks, there are fewer collisions, and more parallel communications. It is now common for the port of an Ethernet switch to connect to just one (or a small number of) hosts. Univ. of Tehran Introduction to Computer Network 6 Ethernet Switching Ethernet Switch Ethernet Switch/Bridge Benefits: Number of collisions is reduced. Capacity is increased: Router Outside world Problem? How to determine the output port? Univ. of Tehran Introduction to Computer Network 7 One Ethernet Switch in “Packard” Univ. of Tehran Introduction to Computer Network 8 Output ports? Learning Bridges Maintain a forwarding table for hosts. Port Host 1 A 1 B 1 C 2 X 2 Y 2 X A B C Port 1 Bridge Port 2 X Y Z How to populate table. Manually by system admin. (not good) Learn table entries based on source address (flexible). Univ. of Tehran Introduction to Computer Network 9 Learning Bridges, (Forwarding) 1. 2. 3. If the frame destination address is in the routing table, forward the frame to the corresponding port. Otherwise, broadcast the frame. Update the table if the source address is not in the table. The table is learned by examining the Ethernet SA of arriving packets. Table is an optimization; need not be complete Always forward broadcast frames Univ. of Tehran Introduction to Computer Network 10 Ethernet Switching Learning addresses B A C 2 3 1 Ethernet Switch 6 I J Ethernet Switch Univ. of Tehran 4 5 K D J F E F G Ethernet Switch Switch learns that ‘F’ is reachable through port 5 N L M O H Outside Q Router world P Ethernet Switch Introduction to Computer Network 11 Ethernet Switching Ethernet address Port A 1 Learning addresses B A C 2 3 1 Ethernet Switch 6 I J B 2 C 3 D 4 E, F, G, H, Q 5 I, J, K, L, M, N, O, P 6 D E F 4 5 K G Ethernet Switch L M N H Outside Q Router world O P Ethernet Switch Ethernet Switch Q: How do we prevent loops? Univ. of Tehran Introduction to Computer Network 12 Preventing loops Spanning Tree Protocol The network of bridges is a graph. The Spanning Tree Protocol finds a subgraph that spans all the vertices without loops. Spanning => all bridges are included. Tree => the topology has no loops. The distributed protocol runs: To determine which bridge is the root of the tree, and Each bridge turns off ports that are not part of the tree. Univ. of Tehran Introduction to Computer Network 13 Spanning Tree Algorithm A Spanning tree B B3 C B5 D B2 B7 E K F B1 G H B6 B4 I A distributed spanning tree algorithm select which bridges actively forward developed by Radia Perlman Univ. now IEEE 802.1 specification of Tehran Introduction to Computer Network J 14 Example Spanning Tree B8 B3 Protocol operation: B5 B7 B2 3. B1 B6 Univ. of Tehran 1. 2. B4 Introduction to Computer Network Picks a root For each LAN, picks a designated bridge that is closest to the root. All bridges on a LAN send packets towards the root via the designated bridge. 15 Example Spanning Tree B8 Spanning Tree: B3 B5 B1 B7 B2 B2 B4 B5 B7 B1 Root B6 Univ. of Tehran B8 B4 Introduction to Computer Network 16 Algorithm Details Bridges exchange configuration messages id for bridge sending the message id for what the sending bridge believes to be root bridge distance (hops) from sending bridge to root bridge Each bridge records current best configuration message for each port Initially, each bridge believes it is the root Univ. of Tehran Introduction to Computer Network 17 Algorithm Detail (cont) When learn not root, stop generating config messages in steady state, only root generates configuration messages Root continues to periodically send config messages If any bridge does not receive config message after a period of time, it starts generating config messages claiming to be the root Univ. of Tehran Introduction to Computer Network 18 Spanning Tree Protocol 1. Each bridge periodically sends a configuration message out of every port. A message contains: (ID of sender, ID of root, distance from sender to root). 2. Initially, every bridge claims to be root and sends a distance field of 0. 3. A bridge keeps sending the same message (periodically) until it hears a “better” message. “Better” means: • • • A root with a smaller ID A root with equal ID, but with shorter distance The root ID and distance are the same as we already have, but the sending bridge has a smaller ID. 4. Once a bridge hears a better configuration message, it stops generating its own messages, and just forwards ones that it receives (adding 1 to the distance). 5. If the bridge realizes that it is not the designated bridge for a LAN, it stops sending configuration messages to that LAN. Eventually: • • Only the root bridge generates configuration messages, Other bridges send configuration messages to LANs for which they are the designated bridge. Univ. of Tehran Introduction to Computer Network 19 Broadcast and Multicast Forward all broadcast/multicast frames current practice Learn when no group members downstream Accomplished by having each member of group G send a frame to bridge multicast address with G in source field Univ. of Tehran Introduction to Computer Network 21 Limitations of Bridges Do not scale spanning tree algorithm does not scale broadcast does not scale Do not accommodate heterogeneity Caution: beware of transparency Univ. of Tehran Introduction to Computer Network 22 Packet Switching Schemes Learning bridges are a special case. We need a general form for packet switching or specifying the output in the packet. They are three format for specifying the output in the a packet Source routing: List entire path in the packet Virtual circuits: like telephone circuit, identify packets with ids. Datagram: Put only destination address in packets’ headers. Univ. of Tehran Introduction to Computer Network 23 Source Routing List entire path in packet Router processing, one option Driving directions (north 3 hops, east, etc..) Examine first step in directions Strip first step from packet Forward to step just stripped off Or the address can be implemented by a linked list in the packet header. Univ. of Tehran Introduction to Computer Network 24 Source Routing Example Packet 4,3 3,4,3 2 Sender 1 2 R1 4 3 1 R1 3 4 3 2 1 R2 4 3 Receiver All routing information is provided by the source. Univ. of Tehran Introduction to Computer Network 25 Source Routing Advantages Disadvantages Switches can be very simple and fast Variable (unbounded) header size Sources must know or discover topology (e.g., failures) Typical use Debugging and management Univ. of Tehran Introduction to Computer Network 26 Virtual Circuits/Tag Switching Use the telephone model virtual circuits Each flow is identified by a Virtual Circuits Identifier (VCI). Connection setup phase, Signaling Each packet carries connection ID Use other means to route setup request Each router allocates flow ID on local link Creates mapping of inbound flow ID/port to outbound flow ID/port Sent from source with 1st hop connection ID Router processing Lookup flow ID – simple table lookup Replace flow ID with outgoing flow ID Forward to output port Swap labels Univ. of Tehran Introduction to Computer Network 27 Virtual Circuit Connection setup establishes a path through switches A virtual circuit ID (VCI) identifies path Uses packet switching, with packets containing VCI VCIs are often indices into per-switch connection tables; change at each hop VC1 VC2 1 2 VC1 In, VC Out, VC 1, 1 4, 1 1, 2 4, 3 Univ.2, of 1 Tehran 4, 2 4 VC1 VC2 3 4 1 VC3 2 VC1 3 VC2 VC1 …. Introduction to Computer Network 28 Virtual Circuits Examples In-port Lookup table for Switch R1 Packet Sender In-VCI Out-port Out-VCI 1 5 3 7 4 11 0 8 5 7 1 2 2 R1 R2 4 3 1 4 1,7 4,2 3 2 1,5 3,7 2 1 R3 4 3 Receiver 6 2,2 3,6 Subsequence packets follow the same circuit Univ. of Tehran Introduction to Computer Network 29 Virtual Circuits Advantages Disadvantages More efficient lookup (simple table lookup) More flexible (different path for each flow) Can reserve bandwidth at connection setup Easier for hardware implementations Small per-packet header overhead. Still need to route connection setup request More complex failure recovery – must recreate connection state Typical uses ATM – combined with fix sized cells MPLS – tag switching for IP networks Univ. of Tehran Introduction to Computer Network 30 Virtual Circuit Model Typically wait full RTT for connection setup before sending first data packet. While the connection request contains the full address for destination, each data packet contains only a small identifier, making the per-packet header overhead small. If a switch or a link in a connection fails, the connection is broken and a new one needs to be established. Connection setup provides an opportunity to reserve Univ. of Tehran resources. Introduction to Computer Network 31 Datagram Switching No connection setup phase since it is costly. Each packet is forwarded independently Sometimes called connectionless model Analogy: postal system Packet Each switch maintains a forwarding (routing) table Univ. of Tehran Sender R R 1 2 R1 4 3 1 2 R1 4 R4 3 R3 R 2 1 R2 3 4 Receiver R R3 Introduction to Computer Network 32 Datagram Model There is no round trip time delay waiting for connection setup; a host can send data as soon as it is ready. Source host has no way of knowing if the network is capable of delivering a packet or if the destination host is even up. Since packets are treated independently, it is possible to route around link and node failures. Since every packet must carry the full address of the destination, the overhead per packet is higher. Univ. of Tehran Introduction to Computer Network 33 Techniques: Comparison Datagram Forwarding cost Bandwidth utilization Resource reservations Robustness* Circuit switching high Virtual circuit switching low high flexible low none flexible yes high low low none *The idea is that in case of failure, circuit and VC are lost; datagram routing can adapt after routing update …. Univ. of Tehran Introduction to Computer Network 34 Cell Switching (ATM) Connection-oriented packet-switched network Used in both WAN and LAN settings Signaling (connection setup) Protocol: Q.2931 Specified by ATM forum Packets are called cells 5-byte header + 48-byte payload Commonly transmitted over SONET other physical layers possible Univ. of Tehran Introduction to Computer Network 35 Variable vs Fixed-Length Packets No Optimal Length if small: high header-to-data overhead if large: low utilization for small messages Fixed-Length Easier to Switch in Hardware simpler enables parallelism Univ. of Tehran Introduction to Computer Network 36 Big vs Small Packets Small Improves Queue behavior finer-grained pre-emption point for scheduling link maximum packet = 4KB link speed = 100Mbps transmission time = 4096 x 8/100 = 327.68us high priority packet may sit in the queue 327.68us in contrast, 53 x 8/100 = 4.24us for ATM near cut-through behavior two 4KB packets arrive at same time link idle for 327.68us while both arrive at end of 327.68us, still have 8KB to transmit in contrast, can transmit first cell after 4.24us at end of 327.68us, just over 4KB left in queue Univ. of Tehran Introduction to Computer Network 37 Big vs Small (cont) Small Improves Latency (for voice) voice digitally encoded at 64Kbps (8-bit samples at 8KHz) need full cell’s worth of samples before sending cell example: 1000-byte cells implies 125ms per cell (too long) smaller latency implies no need for echo cancellors ATM Compromise: 48 bytes = (32+64)/2 Univ. of Tehran Introduction to Computer Network 38 Cell Format User-Network Interface (UNI) 4 8 16 3 1 8 384 (48 bytes) GFC VPI VCI Type CLP HEC (CRC-8) Payload host-to-switch format GFC: Generic Flow Control (still being defined) VCI: Virtual Circuit Identifier VPI: Virtual Path Identifier Type: management, congestion control, AAL5 (later) CLP: Cell Loss Priority HEC: Header Error Check (CRC-8) Network-Network Interface (NNI) switch-to-switch format Univ. Tehranbecomes part Introduction to Computer ofGFC of VPI fieldNetwork 39 Segmentation and Reassembly ATM Adaptation Layer (AAL) AAL 1 and 2 designed for applications that need guaranteed rate (e.g., voice, video) AAL 3/4 designed for packet data AAL 5 is an alternative standard for packet data AAL AAL … … ATM Univ. of Tehran ATM Introduction to Computer Network 40 AAL 3/4 Convergence Sublayer Protocol Data Unit (CSPDU) 8 8 16 < 64 KB CPI Btag BASize User data 0– 24 8 8 16 Pad 0 Etag Len CPI: common part indicator (version field) Btag/Etag:beginning and ending tag BAsize: hint on amount of buffer space to allocate Length: size of whole PDU Univ. of Tehran Introduction to Computer Network 41 Cell Format 40 ATM header 4 10 Type SEQ MID 352 (44 bytes) Payload 6 10 Length CRC-10 Type 2 BOM: beginning of message COM: continuation of message EOM end of message SEQ: sequence of number MID: message id Length: number of bytes of PDU in this cell It uses 4 extra bytes for SAR, not good! Univ. of Tehran Introduction to Computer Network 42 AAL5 CS-PDU Format < 64 KB 0– 47 bytes 16 16 32 Data Pad Reserved Len CRC-32 pad so trailer always falls at end of ATM cell Length: size of PDU (data only) CRC-32 (detects missing or misordered cells) Cell Format end-of-PDU bit in Type field of ATM header Univ. of Tehran Introduction to Computer Network 43 ATM Layers Aplication PHY in ATM is usually SONET. TCP Higher Layers IP AAL DLL ATM PHY PHY TCP/IP ATM • Sending IP over ATM is done by address translation. • ATM is also used in LAN. Then, It tries to emulate LAN. • The Technology is called LANE. Univ. of Tehran Introduction to Computer Network 44 Switches A means to create connectivity Why switching? Efficient utilization of resources Store and forward scheme incoming links Node outgoing links Memory Univ. of Tehran Introduction to Computer Network 45 Switched Network A network consisting of switching elements. Hosts can connect to the network directly or through LANs. n links Switches Univ. of Tehran Introduction to Computer Network Switched Network 46 Basic concepts An ideal switch: route all incoming packet to their requested outputs with the following conditions: No loss Minimum delay Preserving order Output contention: At least two input goes to one output. we need buffer and queuing (how much?) Congestion: no buffer space left. Drop packet Univ. of Tehran Introduction to Computer Network 47 Design Factors Throughput Max throughput- N x line speed where N is the # of input line Ave throughput – At random is %60. Packet per second (PPS)- # of packets switched per second Throughput depends on the traffic. Quality of service: Ave delay of cells Jitter Reliability in switching cells. Univ. of Tehran Introduction to Computer Network 48 Design Factors Scalability: how the architecture scale, linear? Square? Regarding the speed of input line Regarding the # of input port. Cost: # of logic gates Memory Bandwidth or # of pines Univ. of Tehran Introduction to Computer Network 49 Performance Factors Traffic pattern: Addressing and operation: Packet arrival rate. Destination distribution Unicast or multicast operation Priority- Differentiation among packets Univ. of Tehran Introduction to Computer Network 50 Functional requirement User plane: Data is carried transparently Header are processed and VPI/VCI is used for routing. LC IPP 0 0 LC … … SFC OPP Central unit Univ. of Tehran Introduction to Computer Network 51 Functional requirement IPP+ SFC+ OPP Store and forward system. Cntrl plane: Signaling Identified by VPI/VCI, 5/0 is for call admission. May use SFC for transporting ctrl packets. CAC LC IPP OPP … … Univ. of Tehran SFC LC CAC- Call Admission Control Introduction to Computer Network 52 Functional requirement Management plane: System Management (SM) must handle management cell. Should support Network wide operations. May use SFC for transporting management cells. SM LC IPP OPP … … Univ. of Tehran SFC LC Introduction to Computer Network 53 Workstation-Based switch Aggregate bandwidth 1/2 of the I/O bus bandwidth capacity shared among all hosts connected to switch example: 800Mbps bus can support 8 T3 ports Packets-per-second must be able to switch small packets 100,000 packets-persecond is achievable e.g., 64-byte packets implies 51.2Mbps Univ. of Tehran I/O bus CPU Interface 1 Interface 2 Interface 3 Main memory Introduction to Computer Network 54 Architectures: First Generation Shared Backplane CPU Route Table Buffer Memory Line Interface Line Interface Line Interface MAC MAC MAC Typically < 0.5Gbps aggregate capacity Limited by rate of shared memory Slide by Nick McKeown Univ. of Tehran Introduction to Computer Network 55 Architectures: Second Generation CPU Typically < 5Gb/s aggregate capacity Limited by shared bus Buffer Memory Route Table Line Card Line Card Line Card Buffer Memory Buffer Memory Buffer Memory Fwding Cache Fwding Cache Fwding Cache MAC MAC MAC Slide by Nick McKeown Univ. of Tehran Introduction to Computer Network 56 Architectures: Third Generation Switched Backplane Line Card Local Buffer Memory CPU Card Line Card Routing Table Local Buffer Memory Fwding Table Fwding Table MAC MAC Typically < 50Gbps aggregate capacity Univ. of Tehran Introduction to Computer Network Slide by Nick McKeown 57 Switch fabric design Shared Media Space division Bus Architecture Shared buffer Cross bar architecture Combination of above Note: Self-routing is to direct packet inside the fabric. Univ. of Tehran Introduction to Computer Network 58 Bus Architecture IPP puts cells on bus OPP buffer cells Control Processor (CP) exchanges control messages configures connections Bus interconnects various components. » In nonblocking systems bandwidth is equal to sum of external link bandwidths; » bus width must increase with number of links » capacitive loading reduces clock rate as number of links grows Univ. of Tehran Introduction to Computer Network 59 Divided Bus with Knockout Concentrators w/n Split bus into n “minibuses” with w/n wires each Each minibus driven by just one IPP. cuts capacitive loading in half adding fanout components allows higher clock frequencies IPP IPP IPP IPP w OPPs OPPs concentrate n minibuses onto L<n outputs (optional) OPPs must each be able to buffer up to L cells in parallel Parallel reception complicates control somewhat Concentration reduces required OPP memory bandwidth Univ. of Tehran Introduction to Computer Network 60 Knockout Switch Inputs D D D D Concentrator select l of n packets Complexity: n2 Univ. of Tehran D D D D D D D 1 D 2 D D Outputs Introduction to Computer Network 3 4 61 Shared Buffer Switches n n IPP OPP . . . n Queues are rarely full, then, memory for queues is unused mostly With shared memory, we can achieve same performance level with less memory. Requires a central memory with bandwidth equal to twice the external link bandwidth. Per output or per flow queues typically implemented as linked lists. . . . n CP ... For switches with 10 or more links, can reduce required memory by up to an order of magnitude. Univ. of Tehran Introduction to Computer Network 62 crossbar Architecture crossbar allows multiple cells to pass in parallel to distinct outputs IPP OPP » use of point-to-point transmission eliminates capacitive loading at circuit board level » parallelism reduces data path width at IPPs, OPPs control circuit arbitrates access to outputs retains quadratic complexity, but concentrates it within chip, reducing system cost Univ. of Tehran Introduction to Computer Network 63 UT switch Design Univ. of Tehran Introduction to Computer Network 64 UT Internal Design Data Path Shared Memory (SM) Input Processor Output Processor Memory Management (Pointer Path) User Interface Control Path Central Unit Univ. of Tehran Introduction to Computer Network 65 UT Capacity mode 40 Gb/s Shared Memory IPP0 OPP0 Dual chip mode 40 Gb/s Shared Memory IPP15 CM # of chips # of cells stored 0 1 5500 1 2 11000 Univ. of Tehran Introduction to Computer Network OPP15 66 Examples: Cisco GSR - 12416 WAN Router – Large throughput; SONET links Up to 16 line cards at 10 Gbps each Crossbar Fabric Cisco GSR 12416 19” Line Cards: 1-port OC-192c 4-port OC48c Many others (ATM, Ethernet, …) 6ft 2ft Univ. of Tehran Introduction to Computer Network 67