Chapter 10 Routing

download Chapter 10 Routing

of 50

description

Routing

Transcript of Chapter 10 Routing

  • William StallingsData and Computer CommunicationsChapter 10Packet Switching

  • PrinciplesCircuit switching designed for voiceResources dedicated to a particular callMuch of the time a data connection is idleData rate is fixedBoth ends must operate at the same rate

  • Basic OperationData transmitted in small packetsTypically 1000 octetsLonger messages split into series of packetsEach packet contains a portion of user data plus some control infoControl infoRouting (addressing) infoPackets are received, stored briefly (buffered) and past on to the next nodeStore and forward

  • Use of Packets

  • AdvantagesLine efficiencySingle node to node link can be shared by many packets over timePackets queued and transmitted as fast as possibleData rate conversionEach station connects to the local node at its own speedNodes buffer data if required to equalize ratesPackets are accepted even when network is busyDelivery may slow downPriorities can be used

  • Switching TechniqueStation breaks long message into packetsPackets sent one at a time to the networkPackets handled in two waysDatagramVirtual circuit

  • DatagramEach packet treated independentlyPackets can take any practical routePackets may arrive out of orderPackets may go missingUp to receiver to re-order packets and recover from missing packets

  • Virtual CircuitPreplanned route established before any packets sentCall request and call accept packets establish connection (handshake)Each packet contains a virtual circuit identifier instead of destination addressNo routing decisions required for each packetClear request to drop circuit a dedicated path

  • Virtual Circuits v DatagramVirtual circuitsNetwork can provide sequencing and error controlPackets are forwarded more quicklyNo routing decisions to makeLess reliableLoss of a node looses all circuits through that nodeDatagramNo call setup phaseBetter if few packetsMore flexibleRouting can be used to avoid congested parts of the network

  • Packet Size

  • Circuit v Packet SwitchingPerformancePropagation delayTransmission timeNode delay

  • Event Timing

  • External and Internal OperationPacket switching - datagrams or virtual circuitsInterface between station and network nodeConnection orientedStation requests logical connection (virtual circuit)All packets identified as belonging to that connection & sequentially numberedNetwork delivers packets in sequenceExternal virtual circuit servicee.g. X.25Different from internal virtual circuit operationConnectionlessPackets handled independentlyExternal datagram serviceDifferent from internal datagram operation

  • Combinations (1)External virtual circuit, internal virtual circuitDedicated route through networkExternal virtual circuit, internal datagramNetwork handles each packet separatelyDifferent packets for the same external virtual circuit may take different internal routesNetwork buffers at destination node for re-ordering

  • Combinations (2)External datagram, internal datagramPackets treated independently by both network and userExternal datagram, internal virtual circuitExternal user does not see any connectionsExternal user sends one packet at a timeNetwork sets up logical connections

  • External Virtual Circuit andDatagram Operation

  • InternalVirtualCircuit andDatagram Operation

  • RoutingComplex, crucial aspect of packet switched networksCharacteristics requiredCorrectnessSimplicityRobustnessStabilityFairnessOptimalityEfficiency

  • Performance CriteriaUsed for selection of routeMinimum hopLeast costSee Stallings appendix 10A for routing algorithms

  • Costing of Routes

  • Decision Time and PlaceTimePacket or virtual circuit basisPlaceDistributedMade by each nodeCentralizedSource

  • Network Information Source and Update TimingRouting decisions usually based on knowledge of network (not always)Distributed routingNodes use local knowledgeMay collect info from adjacent nodesMay collect info from all nodes on a potential routeCentral routingCollect info from all nodesUpdate timingWhen is network info held by nodes updatedFixed - never updatedAdaptive - regular updates

  • Routing StrategiesFixedFloodingRandomAdaptive

  • Fixed RoutingSingle permanent route for each source to destination pairDetermine routes using a least cost algorithm (appendix 10A)Route fixed, at least until a change in network topology

  • Fixed RoutingTables

  • FloodingNo network info requiredPacket sent by node to every neighborIncoming packets retransmitted on every link except incoming linkEventually a number of copies will arrive at destinationEach packet is uniquely numbered so duplicates can be discardedNodes can remember packets already forwarded to keep network load in boundsCan include a hop count in packets

  • Flooding Example

  • Properties of FloodingAll possible routes are triedVery robustAt least one packet will have taken minimum hop count routeCan be used to set up virtual circuitAll nodes are visitedUseful to distribute information (e.g. routing)

  • Random RoutingNode selects one outgoing path for retransmission of incoming packetSelection can be random or round robinCan select outgoing path based on probability calculationNo network info neededRoute is typically not least cost nor minimum hop

  • Adaptive RoutingUsed by almost all packet switching networksRouting decisions change as conditions on the network changeFailureCongestionRequires info about networkDecisions more complexTradeoff between quality of network info and overheadReacting too quickly can cause oscillationToo slowly to be relevant

  • Adaptive Routing - AdvantagesImproved performanceAid congestion control (See chapter 12)Complex systemMay not realize theoretical benefits

  • ClassificationBased on information sourcesLocal (isolated)Route to outgoing link with shortest queueCan include bias for each destinationRarely used - do not make use of easily available infoAdjacent nodesAll nodes

  • Isolated Adaptive Routing

  • ARPANET Routing Strategies(1)First Generation1969Distributed adaptiveEstimated delay as performance criterionBellman-Ford algorithm (appendix 10a)Node exchanges delay vector with neighborsUpdate routing table based on incoming infoDoesn't consider line speed, just queue lengthQueue length not a good measurement of delayResponds slowly to congestion

  • ARPANET Routing Strategies(2)Second Generation1979Uses delay as performance criterionDelay measured directlyUses Dijkstras algorithm (appendix 10a)Good under light and medium loadsUnder heavy loads, little correlation between reported delays and those experienced

  • ARPANET Routing Strategies(3)Third Generation1987Link cost calculations changedMeasure average delay over last 10 secondsNormalize based on current value and previous results

  • X.251976Interface between host and packet switched networkAlmost universal on packet switched networks and packet switching in ISDNDefines three layersPhysicalLinkPacket

  • X.25 - PhysicalInterface between attached station and link to nodeData terminal equipment DTE (user equipment)Data circuit terminating equipment DCE (node)Uses physical layer specification X.21Reliable transfer across physical linkSequence of frames

  • X.25 - LinkLink Access Protocol Balanced (LAPB)Subset of HDLCsee chapter 7

  • X.25 - PacketExternal virtual circuitsLogical connections (virtual circuits) between subscribers

  • X.25 Use of Virtual Circuits

  • Virtual Circuit ServiceVirtual CallDynamically establishedPermanent virtual circuitFixed network assigned virtual circuit

  • Virtual Call

  • Packet Format

  • MultiplexingDTE can establish 4095 simultaneous virtual circuits with other DTEs over a single DTC-DCE linkPackets contain 12 bit virtual circuit number

  • Virtual Circuit Numbering

  • Flow and Error ControlHDLS (Chapter 7)

  • Packet SequencesComplete packet sequencesAllows longer blocks of data across network with smaller packet size without loss of block integrityA packetsM bit 1, D bit 0B packetsThe restZero or more A followed by B

  • Reset and RestartResetReinitialize virtual circuitSequence numbers set to zeroPackets in transit lostUp to higher level protocol to recover lost packetsTriggered by loss of packet, sequence number error, congestion, loss of network internal virtual circuitRestartEquivalent to a clear request on all virtual circuitsE.g. temporary loss of network access

  • Required ReadingStalling Chapter 10X.25 info from ITU-T web siteRouting information from Comer