Review of Networking Concepts Part 1: Switching Networks © Jörg Liebeherr, 2000-2003 CS757 Summary of Topics • • • • • Taxonomy of switching networks Principles of circuit and packet switching Multiplexing techniques: FDM, TDM, statistical multiplexing Datagram and Virtual-circuit packet networks Packet forwarding in datagram and VC packet networks © Jörg Liebeherr, 2000-2003 CS757 Communication Networks • Problem: Connect end systems that want to exchange information (Device = telephone, computer, terminals, etc.) • Simple Solution: Connect each pair of end system by a dedicated point-to-point link – The simple solution is sufficient if the number of end systems is small © Jörg Liebeherr, 2000-2003 CS757 Communication Networks • With a large number of end systems it is not practical to connect each pair © Jörg Liebeherr, 2000-2003 CS757 Communication Networks • A communication network provides a scalable solution to connect a large number of end systems • Principles: – There are two types of devices: end systems and nodes – Each node is connected to at least one node – Network nodes carry the information from a source to a destination end system – Note: Network nodes do not generate information © Jörg Liebeherr, 2000-2003 CS757 Communication Networks • A generic communication network: end system Node Communication Network Other names for “end system”: station, host, terminal Other names for “node”: switch, router, gateway © Jörg Liebeherr, 2000-2003 CS757 Example Networks • Evolution of the UUNet Network 1996-2000 • UVA Backbone Network Source: National Science Foundation © Jörg Liebeherr, 2000-2003 CS757 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 © Jörg Liebeherr, 2000-2003 Packet-Switched Network Datagram Network Time Division Multiplexing Wavelength Division Multiplexing CS757 Virtual Circuit Network Circuit Switching • In a circuit-switched network, a dedicated communication path (“circuit”) is established between two stations through the nodes of the network • The dedicated path is called a circuit-switched connection or circuit • A circuit occupies a fixed capacity of each link for the entire lifetime of the connection. Capacity unused by the circuit cannot be used by other circuits • Data is not delayed at the switches © Jörg Liebeherr, 2000-2003 CS757 Circuit Switching • • • Circuit-switched communication involves three phases: 1. Circuit Establishment 2. Data Transfer 3. Circuit Release “Busy Signal” if capacity for a circuit not available Most important circuit-switching networks: • Telephone networks • ISDN (Integrated Services Digital Networks) © Jörg Liebeherr, 2000-2003 CS757 Circuit Switching circuit 2 C B D 1 2 3 5 4 A © Jörg Liebeherr, 2000-2003 circuit 1 7 CS757 6 E Implementation of Circuit-Switching • There are two ways to implement circuits – Frequency Division Multiplexing (FDM) – Time Division Multiplexing (TDM) – Wavelength Division Multiplexing (WDM) • Example: Voice in (analog) telephone network: Needed bandwidth: 3000 Hz Allocated bandwidth: 4000 Hz Therefore, a channel with 64 kHz can carry 16 voice conversations © Jörg Liebeherr, 2000-2003 CS757 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 © Jörg Liebeherr, 2000-2003 Channel 2 (f2) S w i t c h Channel 3 (f3) Channel 4 (f4) Channel 5 (f5) Channel 6 (f6) CS757 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 © Jörg Liebeherr, 2000-2003 CS757 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 3 Source 4 U Source 5 X 12345612 U X Source 6 © Jörg Liebeherr, 2000-2003 2 4 5 6 CS757 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 © Jörg Liebeherr, 2000-2003 CS757 Circuit Switch switch fabric memory •A circuit switch relays a circuit from an input to an output link •A switch may reassign frequencies (FDM) or time slot allocation (TDM) •No queueing delays are experienced © Jörg Liebeherr, 2000-2003 CS757 Packet Switching • • Data are sent as formatted bit-sequences, so-called packets Packets have the following structure: Header Data Trailer • Header and Trailer carry control information • 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 © Jörg Liebeherr, 2000-2003 CS757 A Packet Switch input queues output queues switch fabric memory © Jörg Liebeherr, 2000-2003 CS757 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 Packets from different streams Transmission line 1 2 1 N 2 output buffer N © Jörg Liebeherr, 2000-2003 CS757 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 © Jörg Liebeherr, 2000-2003 CS757 Virtual-Circuit Packet Switching • Virtual-circuit packet switching is a hybrid of circuit switching and packet switching – All data is transmitted as packets – Emulates a circuit-switched network • All packets from one packet stream are sent along a preestablished path (=virtual circuit) – Guarantees in-sequence delivery of packets – Note: Packets from different virtual circuits may be interleaved © Jörg Liebeherr, 2000-2003 CS757 Virtual-Circuit Packet Switching • Communication with virtual circuits (VC) takes place in three phases: 1. VC Establishment 2. Data Transfer 3. VC Disconnect • Note: Packet headers don’t need to contain the full destination address of the packet • Circuit-switched and virtual-circuit packet-switched networks are said to provide a connection-oriented service. © Jörg Liebeherr, 2000-2003 CS757 Packet Forwarding and Routing • There are two parts to the routing problem: 1. How to pass a packet from an input interface to the output interface of a router (packet forwarding)? 2. How to calculate routes (routing algorithm)? • Packet forwarding is done differently in datagram and virtualcircuit packet networks • Route calculation is similar in datagram and virtual-circuit packet networks © Jörg Liebeherr, 2000-2003 CS757 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 © Jörg Liebeherr, 2000-2003 A.3 C.2 A.1 A.2 A.3 D 3 A.1 A.2 A.2 7 CS757 A.2 6 E 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 C.2 A.3 A.2 A.1 C.1 A.1 A.3 A.2 7 A.2 A.3 © Jörg Liebeherr, 2000-2003 D 2 C.2 4 A.1 A.2 A.3 CS757 6 E 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 © Jörg Liebeherr, 2000-2003 n CS757 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 © Jörg Liebeherr, 2000-2003 n CS757 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 © Jörg Liebeherr, 2000-2003 X C To D To Next hop CS757 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 © Jörg Liebeherr, 2000-2003 2 d 3 CS757 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 © Jörg Liebeherr, 2000-2003 2 d 3 CS757 d Forwarding with VCs Part 1: VC setup from X to E nin Vin nout Vout - - C 5 nin D 5 nout Vout E 3 A B C nin X E nin X © Jörg Liebeherr, 2000-2003 Vin Vin 5 Vin B 3 nout Vout B 5 D nout Vout D 3 CS757 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 C nin X © Jörg Liebeherr, 2000-2003 3 Vin 5 E nin Vin B 3 nout Vout B 5 D nout Vout D 3 CS757 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 © Jörg Liebeherr, 2000-2003 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 CS757 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