Data Communication and Networks Lecture 5 Networks: (Multiplexing, Circuit Switching, Packet Switching) October 2, 2003 Joseph Conron Computer Science Department New York University
Multiplexing
Frequency Division Multiplexing zFDM zUseful bandwidth of medium exceeds required bandwidth of channel zEach signal is modulated to a different carrier frequency zCarrier frequencies separated so signals do not overlap (guard bands) ze.g. broadcast radio zChannel allocated even if no data
Frequency Division Multiplexing Diagram
Synchronous Time Division Multiplexing zData rate of medium exceeds data rate of digital signal to be transmitted zMultiple digital signals interleaved in time zMay be at bit level of blocks zTime slots preassigned to sources and fixed zTime slots allocated even if no data zTime slots do not have to be evenly distributed amongst sources
Time Division Multiplexing
Statistical TDM zIn Synchronous TDM many slots are wasted zStatistical TDM allocates time slots dynamically based on demand zMultiplexer scans input lines and collects data until frame full zData rate on line lower than aggregate rates of input lines
Switching Networks zLong distance transmission is typically done over a network of switched nodes zNodes not concerned with content of data zEnd devices are stations yComputer, terminal, phone, etc. zA collection of nodes and connections is a communications network zData routed by being switched from node to node
Nodes zNodes may connect to other nodes only, or to stations and other nodes zNode to node links usually multiplexed zNetwork is usually partially connected ySome redundant connections are desirable for reliability zTwo different switching technologies yCircuit switching yPacket switching
Simple Switched Network
Circuit Switching zDedicated communication path between two stations zThree phases yEstablish yTransfer yDisconnect zMust have switching capacity and channel capacity to establish connection zMust have intelligence to work out routing
Circuit Switching - Issues zCircuit switching is inefficient (designed for voice) yResources dedicated to a particular call yMuch of the time a data connection is idle yData rate is fixed xBoth ends must operate at the same rate zSet up (connection) takes time zOnce connected, transfer is transparent
Packet Switching
Basic Operation zData transmitted in small packets yTypically 1000 octets yLonger messages split into series of packets yEach packet contains a portion of user data plus some control info zControl info yRouting (addressing) info zPackets are received, stored briefly (buffered) and passed on to the next node yStore and forward
Use of Packets
Switching Technique zStation breaks long message into packets zPackets sent one at a time to the network zPackets handled in two ways yDatagram yVirtual circuit
Datagram zEach packet treated independently zPackets can take any practical route zPackets may arrive out of order zPackets may go missing zUp to receiver to re-order packets and recover from missing packets
Virtual Circuit zPreplanned route established before any packets sent zCall request and call accept packets establish connection (handshake) zEach packet contains a virtual circuit identifier instead of destination address zNo routing decisions required for each packet zClear request to drop circuit zNot a dedicated path
Virtual Circuits v Datagram zVirtual circuits yNetwork can provide sequencing and error control yPackets are forwarded more quickly xNo routing decisions to make yLess reliable xLoss of a node loses all circuits through that node zDatagram yNo call setup phase xBetter if few packets yMore flexible xRouting can be used to avoid congested parts of the network
Routing zComplex, crucial aspect of packet switched networks zCharacteristics required yCorrectness ySimplicity yRobustness yStability yFairness yOptimality yEfficiency
Performance Criteria zUsed for selection of route zMinimum hop zLeast cost ySee Stallings chapter 12 for routing algorithms
Costing of Routes
Network Information Source and Update Timing zRouting decisions usually based on knowledge of network (not always) zDistributed routing yNodes use local knowledge yMay collect info from adjacent nodes yMay collect info from all nodes on a potential route zCentral routing yCollect info from all nodes zUpdate timing yWhen is network info held by nodes updated yFixed - never updated yAdaptive - regular updates
Routing Strategies zFixed zFlooding zRandom zAdaptive
Fixed Routing zSingle permanent route for each source to destination pair zDetermine routes using a least cost algorithm (chapter 12.3) zRoute fixed, at least until a change in network topology
Fixed Routing Tables
Flooding zNo network info required zPacket sent by node to every neighbor zIncoming packets retransmitted on every link except incoming link zEventually a number of copies will arrive at destination zEach packet is uniquely numbered so duplicates can be discarded zNodes can remember packets already forwarded to keep network load in bounds zCan include a hop count in packets
Flooding Example
Properties of Flooding zAll possible routes are tried yVery robust zAt least one packet will have taken minimum hop count route yCan be used to set up virtual circuit zAll nodes are visited yUseful to distribute information (e.g. routing)
Random Routing zNode selects one outgoing path for retransmission of incoming packet zSelection can be random or round robin zCan select outgoing path based on probability calculation zNo network info needed zRoute is typically not least cost nor minimum hop
Adaptive Routing zUsed by almost all packet switching networks zRouting decisions change as conditions on the network change yFailure yCongestion zRequires info about network zDecisions more complex zTradeoff between quality of network info and overhead zReacting too quickly can cause oscillation zToo slowly to be relevant
Adaptive Routing - Advantages zImproved performance zAid congestion control (See chapter 13) zComplex system yMay not realize theoretical benefits
Classification zBased on information sources yLocal (isolated) xRoute to outgoing link with shortest queue xCan include bias for each destination xRarely used - do not make use of easily available info yAdjacent nodes yAll nodes
Isolated Adaptive Routing
ARPANET Routing Strategies(1) zFirst Generation y1969 yDistributed adaptive yEstimated delay as performance criterion yBellman-Ford algorithm (chapter 12.3) yNode exchanges delay vector with neighbors yUpdate routing table based on incoming info yDoesn't consider line speed, just queue length yQueue length not a good measurement of delay yResponds slowly to congestion
ARPANET Routing Strategies(2) zSecond Generation y1979 yUses delay as performance criterion yDelay measured directly yUses Dijkstra’s algorithm (Chapter 12.3) yGood under light and medium loads yUnder heavy loads, little correlation between reported delays and those experienced
ARPANET Routing Strategies(3) zThird Generation y1987 yLink cost calculations changed yMeasure average delay over last 10 seconds yNormalize based on current value and previous results