Switching Networks ECE 466 Communication Networks • A communication network provides a scalable solution to connect a large number of end systems end system node Communication Network Other names for “end system”: station, host, terminal Other names for “node”: switch, router, gateway ECE 466 Taxonomy of Networks • Communication networks can be classified based on the way in which the nodes exchange information: Communication Network Circuit-Switched Network Frequency Division Multiplexing Packet-Switched Network Datagram Network Time Division Multiplexing Wavelength Division Multiplexing ECE 466 Virtual Circuit Network Circuit Switching • A dedicated communication path (“circuit”) is established • Each circuit occupies a fixed capacity – Unused capacity cannot be used by other circuit – “Busy Signal” if capacity for a circuit not available • Circuit-switched communication involves three phases: Circuit Establishment Data Transfer Circuit Release • Circuit-switched multiplexing – FDM, WDM – TDM • Data is not formatted (“raw bit stream”) ECE 466 Circuit Switching circuit 2 C B D 1 2 3 5 4 A circuit 1 7 ECE 466 6 E Timing in Circuit Switching Host Node 1 Host Node 2 3 Circuit Establishment Data Transmission DATA Circuit Termination ECE 466 Processing delay 4 Implementation of Circuit-Switching • There are three ways to implement circuits – Frequency Division Multiplexing (FDM) – Time Division Multiplexing (TDM) – Wavelength Division Multiplexing (WDM) ECE 466 Frequency Division Multiplexing (FDM) Approach: Divide the frequency spectrum into logical channels and assign each information flow one logical channel Channel 1 (f1) Source 1 1 Source 2 Source 3 Source 4 Source 5 Source 6 Channel 2 (f2) S w i t c h Channel 3 (f3) Channel 4 (f4) Channel 5 (f5) Channel 6 (f6) ECE 466 2 S w i t c h 3 4 5 6 Frequency Division Multiplexing (FDM) Endsystem Endsystem Circuit Switch Circuit Switch Endsystem Endsystem • A circuit switch bundles (multiplexes) multiple voice calls on a highbandwidth link • Frequency-Division-Multiplexing (FDM): Each circuit receives a fixed bandwidth. The frequency of each call is shifted, so that multiple calls do not interfere ECE 466 Time Division Multiplexing (TDM) Approach: Multiple signals can be carried on a single transmission medium by interleaving portions of each signal in time Source 1 1 Source 2 Source 3 M M 2 3 Source 4 U Source 5 X 12345612 U X Source 6 4 5 6 ECE 466 Time Division Multiplexing (TDM) endsystem Circuit Switch endsystem endsystem slots Circuit Switch endsystem frames • Time is divided into frames of fixed length • Each frame has a fixed number of constant-sized “slots” • Each circuit obtains one or more “slots” per frame ECE 466 Packet Switching • Data are sent as formatted bit-sequences, so-called packets Header Data • Each packet is passed through the network from node to node along some path (Forwarding/Routing) • At each node, the entire packet is received, stored briefly, and then forwarded to the next node (Store-and-Forward Networks) • Packet transmission is never interrupted (no preemption) • No capacity is allocated for packets • Multiplexing: Statistical TDM ECE 466 A Packet Switch input queues output queues switch fabric memory ECE 466 Statistical Multiplexing • Packet transmission on a link is referred to as statistical multiplexing – There is no fixed allocation of packet transmissions – Packets are multiplexed as they arrive • Packet switches require buffering Packets from different streams Transmission line 1 2 1 N 2 output buffer N ECE 466 1 Datagram Packet Switching • The network nodes process each packet independently If Host A sends two packets back-to-back to Host B over a datagram packet network, the network cannot tell that the packets belong together In fact, the two packets can take different routes • Packets are called datagrams • Implications of datagram packet switching: • A sequence of packets can be received in a different order than it was sent • Each packet header must contain the full address of the destination ECE 466 Timing of Datagram Packet Switching Host Node 1 Transmission delay Host Node 2 3 4 Packet 1 Packet 2 Packet 3 Packet 1 Packet 2 Packet 3 Packet 1 Packet 2 Packet 3 ECE 466 Datagram Packet Switching C B C.2 C.1 C.1 C.2 1 2 C.1 C.2 5 A.1 A.3 A.2 4 A A.1 A.2 A.3 A.3 C.2 A.1 A.2 A.3 D 3 A.1 A.2 A.2 7 ECE 466 A.2 6 E Virtual-Circuit Packet Switching • Virtual-circuit packet switching is a hybrid of circuit switching and packet switching: – All data is transmitted as packets – All packets from one packet stream are sent along a preestablished path (=virtual circuit) • Communication with virtual circuits (VC) takes place in three phases: 1. VC Establishment 2. Data Transfer 3. VC Release ECE 466 Virtual-Circuit Packet Switching • • Guarantees in-sequence delivery of packets, but packets from different virtual circuits may be interleaved Packet headers don’t need to contain the full destination address of the packet ECE 466 Timing of VC Packet Switching Host Node 1 Host Node 2 3 4 VC Establishment Transmission delay Pkt1 Pkt2 Pkt3 Pkt1 Pkt2 Pkt3 Pkt1 Pkt2 Pkt3 VC Termination ECE 466 Virtual-Circuit Packet Switching C.2 VC 2 B C C.1 C.1 C.2 1 3 C.1 5 A A.1 VC 1 D 2 C.2 4 A.1 A.2 A.3 C.2 A.3 A.2 A.1 C.1 A.1 A.3 A.2 7 A.2 A.3 ECE 466 6 E Packet Forwarding and Routing • Datagram networks organize their routing table according to destination addresses. All packets with same destination are handled in the same way • VC packet networks set up routing table for each virtual circuit during the call-establishment phase. Each switch has a routing table entry for each virtual circuit going through this switch. ECE 466 Packet Forwarding of Datagrams • Recall: In datagram networks, each packet must carry the full destination address • Each router maintains a routing table which has one row for each possible destination address • The lookup yields the address of the next hop (next-hop routing) Routing Table of node v to via (next hop) w v n x d n ECE 466 d Packet Forwarding of Datagrams • When a packet arrives at an incoming link, ... 1. The router looks up the routing table 2. The routing table lookup yields the address of the next node (next hop) 3. The packet is transmitted onto the outgoing link that goes to the next hop Routing Table of node v to via (next hop) d w d v n x d n ECE 466 d Forwarding Datagrams To Next hop To A - A A B B B - C C C D D C D D E B E E X C X D A To Next hop Next hop To E E B E E E E E A C B C C C D C E C A A A B X - B - B B C D C C D D D - E D E B X E X C X C To D To Next hop ECE 466 Next hop Next hop A B B B C B D B E - X B Packet Forwarding with Virtual Circuits • Recall: In VC networks, the route is setup in the connection establishment phase • During the setup, each router assigns a VC number (VC#) to the virtual circuit • The VC# can be different for each hop • VC# is written into the packet headers Routing Table of node v from VC# to path of virtual circuit VC# 2 w 3 1 v n x w 2 d 3 ECE 466 d Packet Forwarding of Virtual Circuits • When a packet with VCin in header arrives from router nin, ... 1. The router looks up the routing table for an entry with (VCin, nin) 2. The routing table lookup yields (VCout, nout) 3. The router updates the VC# of the header to VCout and transmits the packet to nout Routing Table of node v from VC# to 2 VC# 2 w 3 path of virtual circuit 1 3 1 v n x w 2 n 3 ECE 466 d Forwarding with VCs Part 1: VC setup from X to E nin Vin nout Vout - - C 5 nin Vin D 5 nout Vout E 3 A B nin X C nin X E Vin 5 Vin B 3 nout Vout B 5 D nout Vout D 3 ECE 466 nin C Vin 3 nout Vout - - Forwarding with VCs Part 2: Forwarding the packet nin Vin nout Vout - - C 5 nin Vin D 5 nout Vout E 2 A 2 B 5 5 X 3 C nin X Vin 5 E nin Vin B 3 nout Vout B 5 D nout Vout D 3 ECE 466 nin C Vin 3 nout Vout - - Comparison Datagram Packet Switching Circuit Switching Dedicated transmission path Continuous transmission Path stays fixed for entire connection Call setup delay Negligible transmission delay No queueing delay Busy signal overloaded network Fixed bandwidth for each circuit No overhead after call setup No dedicated transmission path Transmission of packets Route of each packet is independent No setup delay Transmission delay for each packet Queueing delays at switches Delays increase in overloaded networks Bandwidth is shared by all packets Overhead in each packet ECE 466 VC Packet Switching No dedicated transmission path Transmission of packets Path stays fixed for entire connection Call setup delay Transmission delay for each packet Queueing delays at switches Delays increase in overloaded networks Bandwidth is shared by all packets Overhead in each packet Packet Switching Technologies • Both packet switching technologies are used. • Datagram packet switching: – Internet – Switched LANs • Virtual-circuit packet switching – Asynchronous Transfer Mode (ATM) – Multi-protocol label switching (MPLS) ECE 466