Switching and Forwarding

Slides:



Advertisements
Similar presentations
CSCI-1680 Switching Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Rodrigo Fonseca.
Advertisements

Communication Networks Recitation 3 Bridges & Spanning trees.
Part 2: Preventing Loops in the Network
Spring 2003CS 4611 Switching and Forwarding Outline Store-and-Forward Switches Bridges and Extended LANs Cell Switching Segmentation and Reassembly.
Packet Switching COM1337/3501 Textbook: Computer Networks: A Systems Approach, L. Peterson, B. Davie, Morgan Kaufmann Chapter 3.
Fundamentals of Computer Networks ECE 478/578 Lecture #13: Packet Switching (2) Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
1 Switching and Forwarding Bridges and Extended LANs.
1 Chapter 3 Switching and Forwarding Outline 3.1 Switching and Forwarding 3.2 Bridges and LAN Switches 3.3 Cell Switching (ATM) 3.4 Implementation and.
CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 23 Introduction to Computer Networks.
CSE331: Introduction to Networks and Security Lecture 7 Fall 2002.
1 Chapter 8 Local Area Networks - Internetworking.
Chapter 3 Ethernet Bridges & Switches, ATM Switching Professor Rick Han University of Colorado at Boulder
1 ELEN Lecture 13 LAN Bridges Routers, Switches, Gateways Network layer -IP Reading: 6.7,
CSE331: Introduction to Networks and Security Lecture 6 Fall 2002.
Internetworking Devices that connect networks are called Internetworking devices. A segment is a network which does not contain Internetworking devices.
1 Switching and Forwarding Bridges and Extended LANs.
Introduction to Computer Networks 09/23 Presenter: Fatemah Panahi.
1 25\10\2010 Unit-V Connecting LANs Unit – 5 Connecting DevicesConnecting Devices Backbone NetworksBackbone Networks Virtual LANsVirtual LANs.
Connecting LANs, Backbone Networks, and Virtual LANs
17-LAN extensions: Fiber Modems, Repeaters, Bridges and Switches Dr. John P. Abraham Professor UTPA.
MODULE IV SWITCHED WAN.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
29-Aug-154/598N: Computer Networks Switching and Forwarding Outline –Store-and-Forward Switches.
CPS 356: Introduction to Computer Networks Lecture 7: Switching technologies Ch 2.8.2, 3.1, 3.4 Xiaowei Yang
ECE 4450:427/527 - Computer Networks Spring 2015 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 6.1: Internetworking Dr. Nghi Tran.
1 Flow Identification Assume you want to guarantee some type of quality of service (minimum bandwidth, maximum end-to-end delay) to a user Before you do.
Fundamentals of Computer Networks ECE 478/578 Lecture #12: Packet Switching Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
CSS432: Switching and Bridging 1 Switching and Bridging Textbook Ch3.1 and 3.4 Professor: Munehiro Fukuda.
15.1 Chapter 15 Connecting LANs, Backbone Networks, and Virtual LANs Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or.
Sem1 - Module 8 Ethernet Switching. Shared media environments Shared media environment: –Occurs when multiple hosts have access to the same medium. –For.
1 Data Link Layer Lecture 23 Imran Ahmed University of Management & Technology.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Connecting Devices CORPORATE INSTITUTE OF SCIENCE & TECHNOLOGY, BHOPAL Department of Electronics and.
Where are we? Chapter 3 and 4 are focused on getting the data from one place to another. Switching and routing Review the next slides First our goal is.
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Chapter 16 Connecting LANs, Backbone Networks, and Virtual LANs.
M. Veeraraghavan (originals by J. Liebeherr) 1 Need for Routing in Ethernet switched networks What do bridges do if some LANs are reachable only in multiple.
1 Chapter 3 Internetworking Computer Networks: A Systems Approach, 5e Larry L. Peterson and Bruce S. Davie Copyright © 2010, Elsevier Inc. All rights Reserved.
Unit III Bandwidth Utilization: Multiplexing and Spectrum Spreading In practical life the bandwidth available of links is limited. The proper utilization.
CS440 Computer Networks 1 Packet Switching Neil Tang 10/6/2008.
Univ. of TehranComputer Network1 Advanced topics in Computer Networks University of Tehran Dept. of EE and Computer Engineering By: Dr. Nasser Yazdani.
5: DataLink Layer 5a-1 Bridges and spanning tree protocol Reference: Mainly Peterson-Davie.
1 Chapter 3: Packet Switching (Switched LANs) Dr. Rocky K. C. Chang 23 February 2004.
1 Switching and Forwarding Sections Connecting More Than Two Hosts Multi-access link: Ethernet, wireless –Single physical link, shared by multiple.
Computer Networks-Packet Switching1 CHAPTER-3 PACKET SWITCHING.
3. INTERNETWORKING (PART 1) Rocky K. C. Chang Department of Computing The Hong Kong Polytechnic University 18 February
1 Introduction to Computer Networks University of Ilam By: Dr. Mozafar Bag Mohammadi Packet Switching.
Fall, 2001CS 6401 Switching and Routing Outline Routing overview Store-and-Forward switches Virtual circuits vs. Datagram switching.
1 Packet Switching Outline Switching and Forwarding Bridges and Extended LANs.
Chapter 3 Part 1 Switching and Bridging
Chapter 3 Part 3 Switching and Bridging
Advanced Computer Networks
Chapter 3: Packet Switching (overview)
Advanced Computer Networks
3. Internetworking (part 1)
Packet Switching Outline Store-and-Forward Switches
3. Internetworking (part 2: switched LANs)
: An Introduction to Computer Networks
Switching and Forwarding Bridges and Extended LANs
Chapter 3 Part 1 Switching and Bridging
SWITCHING Switched Network Circuit-Switched Network Datagram Networks
Chapter 3 Part 3 Switching and Bridging
Switching and Bridging Textbook Ch3.1 and 3.4
Bridges and Extended LANs
Switching and Forwarding
Dr. Rocky K. C. Chang 23 February 2004
PRESENTATION COMPUTER NETWORKS
Chapter 3 Part 3 Switching and Bridging
Packet Switching Outline Store-and-Forward Switches
ECE 4450:427/527 - Computer Networks Spring 2017
Bridges Neil Tang 10/10/2008 CS440 Computer Networks.
Virtual LAN (VLAN).
Presentation transcript:

Switching and Forwarding 3.2 Bridges and LAN Switches 3.3 Cell Switching (ATM) 3.4 Implementation and Performance

Two limitations on the directly connected networks limit on how many hosts can be attached, examples only two hosts can be attached to a point-to-point link the Ethernet specification allows no more than 1,024 hosts

limit on how large of a geographic area a single network can serve, examples an Ethernet can span only 2,500 m wireless networks are limited by the ranges of their radios point-to-point links can be quite long

Goal build networks that can be global in scale Problem how to enable communication between hosts that are not directly connected Solution computer networks use packet switches to enable packets to travel from one host to another, even when no direct connection exists between those hosts

Packet switch a device with several inputs and outputs leading to and from the hosts that the switch interconnects Core job of a switch take packets that arrive on an input and forward (or switch) them to the right output so that they will reach their appropriate destination

A key problem that a switch must deal with is the finite bandwidth of its outputs if packets destined for a certain output arrive at a switch and their arrival rate exceeds the capacity of that output, then we have a problem of contention the switch queues (buffers) packets until the contention subsides, but if it lasts too long, the switch will run out of buffer space and be forced to discard packets when packets are discarded too frequently, the switch is said to be congested

3.1 Switching and Forwarding a multi-input, multi-output device, which transfers packets from an input to one or more outputs star topology switched networks are more scalable (i.e., growing to large numbers of nodes) than shared-media networks because of the ability to support many hosts at full speed

A switch provides a star topology

Scalable Networks The figure shows the protocol graph that would run on a switch that is connected to two T3 links and one STS-1 SONET link Example protocol graph running on a switch

A switch forwards packets from input port to output port Port selected based on address in packet header Advantages cover large geographic area (tolerate latency) support large numbers of hosts (scalable bandwidth)

Example switch with three input and output ports

How does the switch decide on which output port to place each packets? general answer it looks at the header of the packet for an identifier that it uses to make the decision three common approaches datagram (or connectionless) approach virtual circuit (or connection-oriented approach) source routing

3.1.1 Datagram Switching Sometimes called connectionless model Analogy: postal system No connection setup phase no round trip delay waiting for connection setup a host can send data as soon as it is ready

Each packet is forwarded independently of previous packets that might have been sent to the same destination two successive packets from host A to host B may follow completely different paths (perhaps because of a change in the forwarding table at some switch in the network)

A switch or link failure might not have any serious effect on communication if it is possible to find an alternate route around the failure and to update the forwarding table accordingly Since every packet must carry the full address of the destination, the overhead per packet is higher than for the connection-oriented model

Source host has no way of knowing if the network is capable of delivering a packet or if the destination host is even up and running Each switch maintains a forwarding (routing) table

Example the hosts have addresses A, B, C, and so on a switch consults a forwarding table (routing table) to decide how to forward a packet

Datagram forwarding: an example network

The table shows the forwarding information that switch 2 needs to forward datagrams Destination Port A 3 B C D E 2 F 1 G H

3.1.2 Virtual Circuit Switching Sometimes called connection-oriented model Analogy: phone call Explicit connection setup (and tear-down) phase it requires that a virtual connection from the source host to the destination host is set up before any data is sent Typically wait full RTT (Round Trip Time) for connection setup before sending first data packet

If a switch or a link in a connection fails the connection is broken and a new one needs to be established Subsequence packets follow same circuit Each switch maintains a Virtual Circuit (VC) table

Entry in the VC table on a single switch contains a virtual circuit identifier (VCI) uniquely identifies the connection at this switch which will be carried inside the header of the packets that belong to this connection

an incoming interface on which packets for this VC arrive at the switch an outgoing interface in which packets for this VC leave the switch a potentially different VCI that will be used for outgoing packets

Two classes of approaches to establish connection state Permanent Virtual Circuit (PVC) Switched Virtual Circuit (SVC)

Permanent Virtual Circuit (PVC) administrator configures the state, in which case the virtual circuit is “permanent” administrator can also delete the state, so a permanent virtual circuit (PVC) might be thought of as a long-lived, or administratively configured VC

Switched Virtual Circuit (SVC) a host may set up and delete a VC by sending messages without the involvement of a network administrator this is referred to as signaling, and the resulting virtual circuits are said to be switched an SVC should more accurately be called a “signaled” VC, since it uses signaling (not switching) to distinguish an SVC from a PVC

Example assume that a network administrator wants to manually create a new virtual connection from host A to host B two-stage process connection setup data transfer

An example of a virtual circuit network (11) (7) (5) (4) An example of a virtual circuit network

The administrator picks a VCI value that is currently unused on each link for the connection suppose VCI = 5, the link from host A to switch 1 VCI = 11, the link from switch 1 to switch 2 VCI = 7, the link from switch 2 to switch 3 VCI = 4, the link from switch 3 to host B

VC table entry at switch 1 Incoming Interface Incoming VCI Outgoing Interface Outgoing VCI 2 5 1 11 VC table entry at switch 1 Incoming Interface Incoming VCI Outgoing Interface Outgoing VCI 3 11 2 7 VC table entry at switch 2 Incoming Interface Incoming VCI Outgoing Interface Outgoing VCI 7 1 4 VC table entry at switch 3

A packet is sent into a virtual circuit network

A packet makes its way through a virtual circuit network

Hop-by-hop flow control each node is ensured of having the buffers it needs to queue the packets that arrive on that circuit example, an X.25 network-a packet-switched network that uses the connection-oriented model

X.25 network employs the following three-part strategy buffers are allocated to each virtual circuit when the circuit is initialized the sliding window protocol is run between each pair of nodes along the virtual circuit, and this protocol is augmented with flow control to keep the sending node from overrunning the buffers allocated at the receiving node

the circuit is rejected by a given node if not enough buffers are available at that node when the connection request message is processed

Examples of virtual circuit technologies Asynchronous Transfer Mode (ATM) Frame Relay, e.g., Virtual Private Network (VPN) Frame Relay operates only at the physical and data link layers

3.1.3 Source Routing Neither virtual circuits nor conventional datagrams All the information about network topology that is required to switch a packet across the network is provided by the source host

Various ways to implement source routing method1 put an ordered list of switch ports in the header and to rotate the list so that the next switch in the path is always at the front of the list for each packet that arrives on an input, the switch would read the port number in the header and transmit the packet on that output

Source routing in a switched network (where the switch reads the rightmost number)

method2 example, rather than rotate the header, each switch just strip the first element as it uses it method3 have the header carry a pointer to the current “next port” entry, so that each switch just updates the pointer rather than rotating the header

and (c) pointer. The labels are read right to left Three ways to handle headers for source routing: (a) rotation, (b) stripping, and (c) pointer. The labels are read right to left

3.2 Bridges and LAN Switches LANs have physical limitations (e.g., 2500m) Bridge (LAN switch) connect two or more LANs Extended LAN a collection of LANs connected by one or more bridges accept and forward strategy (accept all frames transmitted on either of the Ethernets, so it could forward them to the other)

3.2.1 Learning Bridges Do not forward when unnecessary whenever a frame from host A that is addressed to host B arrives on port 1, there is no need for the bridge to forward the frame out over port 2

Illustration of a learning bridge

Host Port A 1 B C X 2 Y Z How does a bridge come to learn on which port the various hosts reside? each bridge inspects the source address in all the frames it receives when host A sends a frame to a host on either side of the bridge, the bridge receives this frame and records the fact that a frame from host A was just received on port 1 in this way, the bridge can build a table just like the following table

Host Port A 1 B C X 2 Y Z

3.2.2 Spanning Tree Algorithm Problem: extended LAN has a loop in it frames potentially loop through the extended LAN forever example bridges B1, B4, and B6 form a loop

Extended LAN with loops

Solution: bridges run a distributed spanning tree algorithm spanning tree is a subgraph of a graph that covers (spans) all the vertices, but contains no cycles

Example of (a) a cyclic graph; (b) a corresponding spanning tree

Spanning tree algorithm (developed by Radia Perlman) each bridge has a unique identifier (e.g., B1, B2, B3) the algorithm first elects the bridge with the smallest ID as the root of the spanning tree the root bridge always forwards frames out over all of its ports

each bridge computes the shortest path to the root and notes which of its ports is on this path this port is selected as the bridge’s preferred path to the root

finally, all the bridges connected to a given LAN elect a single designated bridge that will be responsible for forwarding frames toward the root bridge each LAN’s designated bridge is the one that is closest to the root, and if two or more bridges are equally close to the root, then the bridges’ identifiers with the smallest ID wins

Spanning tree with some ports not selected

Bridges have to exchange configuration messages with each other and then decide whether or not they are the root or a designated bridge based on these messages configuration messages contain the ID for the bridge that is sending the message the ID for what the sending bridge believes to be the root bridge the distance, measured in hops, from the sending bridge to the root bridge

each bridge records current best configuration message for each port initially, each bridge believes it is the root when learn not root, stop generating config messages in steady state, only root generates configuration messages when learn not designated bridge, stop forwarding config messages in steady state, only designated bridges forward config 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 upon receiving a config message over a particular port the bridge checks to see if that new message is better than the current best configuration message recorded for that

the new configuration message is considered “better” than the currently recorded information if it identifies a root with a smaller ID or it identifies a root with an equal ID but with a shorter distance or the root ID and distance are equal, but the sending bridge has a smaller ID

Sequence of events assume all the bridges boot at about the same time and all the bridges would start off by claiming to be the root (Y, d, X) denotes a configuration message from node X in which it claims to be distance d from root node Y

Sequence of events on the activity at node B3 B3 receives (B2, 0, B2) since 2 < 3, B3 accepts B2 as root [(B2, 1, B3)] B3 adds one to the distance advertised by B2 (0) and thus sends (B2, 1, B3) toward B5 [(B2, 1, B3), (B2, 2, B5)] meanwhile, B2 accepts B1 as root because it has the lower ID, and it sends (B1, 1, B2) toward B3 [(B1, 1, B2), (B1, 2, B3)]

B5 accepts B1 as root and sends (B1, 1, B5) toward B3 [(B1, 1, B5), (B1, 2, B3)] B3 accepts B1 as root, and it notes that both B2 and B5 are closer to the root than it is [(B1, 2, B3), (B1, 1, B2), (B1, 1, B5)] B3 stops forwarding messages on both its interfaces (this leaves B3 with both ports not selected) [(B1, 1, B2), (B1, 1, B5)]

Spanning tree with some ports not selected (1) (5b) (6) (2) (7) (4b) (3) (4a) (5a) Spanning tree with some ports not selected

3.2.3 Broadcast and Multicast Since most LANs support both broadcast and multicast, then bridges must also support these two features Broadcast each bridge forwards a frame with a destination broadcast address out on each active (selected) port other than the one on which the frame was received Multicast implemented in exactly the same way, with each host deciding itself whether or not to accept she message

3.2.4 Limitations of Bridges Do not scale Do not accommodate heterogeneity

Do not Scale It is not realistic to connect more than a few (tens of) LANs by means of bridges the spanning tree algorithm scales linearly, i.e., there is no provision for imposing a hierarchy on the extended LAN bridges forward all broadcast frames and broadcast does not scale

Virtual LAN (VLAN) used to increase the scalability of extended LANs allows a single extended LAN to be partitioned into several seemingly separate LANs each virtual LAN is assigned an identifier (sometimes called a color), and packets can only travel from one segment to another if both segments have the same identifier this limits the number of segments in an extended LAN that will receive any given broadcast packet

Example four hosts (W, X, Y, Z) on four different LAN segments in the absence of VLANs, any broadcast packet from any host will reach all the other hosts suppose that we define the segments connected to hosts W and X as being in one LAN, VLAN 100 also define the segments that connect to hosts Y and Z as being in VLAN 200 to do his, we need to configure a VLAN ID on each port of bridges B1 and B2 the link between B1 and B2 is considered to be in both VLANs

Two virtual LANs share a common backbone

When a packet sent by host X arrives at bridge B2 the bridge observes that it came in a port that was configured as being in VLAN 100 it inserts a VLAN header between the Ethernet header and its payload the bridge applies normal rules for forwarding to the packet, with the extra restriction that the packet may not be sent out an interface that is not part of VLAN 100 thus, even a broadcast packet can’t be sent out the interface to host Z, which is in VLAN 200 Ethernet header VLAN header Payload

An attractive feature of VLANs it is possible to change the logical topology without moving any wires or changing any addresses example if we want to make the segment that connects to host Z be part of VLAN 100, and thus enable X, W and Z be on the same virtual LAN, we would just need to change one piece of configuration on bridge B2

Do not Accommodate Heterogeneity Bridges are fairly limited in the kinds of networks they can interconnect Bridges make use of the networks frame header and so can support only networks that have exactly the same format for addresses Bridges can be used to connect Ethernets to Ethernets, 802.5 (Token Ring) to 802.5, and Ethernets to 802.5 rings, since both networks support the same 48-bit address format Bridges do not readily generalize to other kinds of networks, such as ATM