packet networks

Upload: ma-raza

Post on 07-Jul-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 Packet Networks

    1/75

    Network Layer 

    Network Layer: the most complex layer  Requires the coordinated actions of multiple,

    geographically distributed network elements

    (switches & routers !ust be able to deal with "ery large scales #illions of users (people & communicating de"ices

    #iggest $hallenges

     %ddressing: where should information be directed to Routing: what path should be used to get information

    there

  • 8/18/2019 Packet Networks

    2/75

    t 't 

    Network

    Packet Switching

    )ransfer of information as payload in data packets

    *ackets undergo random delays & possible loss

     +ifferent applications impose differing requirementson the transfer of information

  • 8/18/2019 Packet Networks

    3/75

    Perspectives of Packet Networks

    xternal -iew of the network .er"ices that the network pro"ides to the transport layer  .er"ices are independent of the underlying network

    /hether the network ser"ice requires setting up of connections

    /hether data transfer requires any quality0of0ser"ice guarantees

    1nternal 2peration of the network $onsiders physical topology of the network and its interconnection

     %pproaches used to direct information 3 datagram, "irtual circuit  %ddressing and routing procedures

    +eal with congestion inside the network

    )raffic management inside the network

  • 8/18/2019 Packet Networks

    4/75

    ndsystem

    4*hysical

    layer 

    +ata linklayer 

    *hysical

    layer 

    +ata linklayer nd

    system5

    Networklayer 

    Networklayer 

    *hysical

    layer 

    +ata linklayer 

    Networklayer 

    *hysical

    layer 

    +ata linklayer 

    Networklayer 

    )ransportlayer 

    )ransportlayer 

    !essages!essages

    .egments

    Networkser"ice

    Networkser"ice

    Network Service

    Network layer can offer a "ariety of ser"ices to transport layer 

    $onnection0oriented ser"ice or connectionless ser"ice

    #est0effort or delay6loss guarantees

  • 8/18/2019 Packet Networks

    5/75

    Connectionless vs. Connection-oriented

    $onnectionless : 2nly two basic interactions between transport and network layer 

    Request to network layer to send a packet

    1ndication from network layer that a packet has arri"ed

    7ser can request packet transmission at any time

    No need to inform network layer ahead of time Responsibility for error control, sequencing and flow control on transport0layer 

    $onnection0oriented : $onnection0setup required

    Network layer must be informed about the new flow to be sent to the network

    Network layer maintains state information about the flows it is handling

     %llows usage and quality0of0ser"ice negotiations Network resources may be allocated

    $onnection0termination required

    $omplex than connectionless ser"ice

  • 8/18/2019 Packet Networks

    6/75

    Network Service vs. Operation

    Network .er"ice $onnectionless (7+*

    +atagram )ransfer 

    $onnection02riented ()$* Reliable and possibly

    constant bit rate transfer 

    1nternal Network 2peration $onnectionless

    +atagram operation

    1*

    $onnection02riented -irtual $ircuit operation

    )elephone connection

     %)!

    -arious combinations are possible $onnection0oriented ser"ice o"er $onnectionless operation

    $onnectionless ser"ice o"er $onnection02riented operation

    $ontext & requirements determine what makes sense

  • 8/18/2019 Packet Networks

    7/75

      (

    8

    8 9 9

       9

    89

    9

       9 (

    9

    !edium

     % #

    8 9 9   9

      (

    $

    9   (   

    9   (   

    9 9 8

    nd system5

    nd system4

    Network

    9

    *hysical layer entity

    +ata link layer entity 8Network layer entity

    8 Network layer entity

    )ransport layer entity

    Complexity at the Edge or in the Core

    Need for the network to grow to "ery large scale 3

     keep the core of the network simple (connectionless packet network

     pro"ide necessary complexity at the edge

  • 8/18/2019 Packet Networks

    8/75

    Network Layer !"nctions

    ssential#o"ting: mechanisms for determining the

    set of best paths for routing packets requires

    the collaboration of network elements !orwarding: transfer of packets from N

    inputs to outputsPriority $ Sched"ling: determining order of

    packet transmission in each N2ptional: congestion control, segmentation &

    reassembly, security

  • 8/18/2019 Packet Networks

    9/75

    Packet-SwitchingNetworks

    Datagrams and Virtual Circuits

  • 8/18/2019 Packet Networks

    10/75

    %he Switching !"nction +ynamic interconnection of inputs to outputs

    nables dynamic sharing of transmission resource

    )wo fundamental approaches: $onnectionless

    $onnection02riented: $all setup control, $onnection control

    #ackbone Network

     %ccess Network

    .witch

  • 8/18/2019 Packet Networks

    11/75

    *acketswitch

    Network

    )ransmissionline

    7ser 

    Packet Switching Network

    *acket switching network )ransfers packets

    between users

    )ransmission lines ;packet switches(routers

    2rigin in messageswitching

    )wo modes of operation: $onnectionless -irtual $ircuit

  • 8/18/2019 Packet Networks

    12/75

    !essage switchingin"ented for telegraphy

    ntire messagesmultiplexed onto sharedlines, stored & forwarded

  • 8/18/2019 Packet Networks

    13/75

    +elay

    .ource

    +estination

    τ

    !inimum delay = 8τ  ; 8T 

    .witch

    .witch 9

    &essage Switching 'elay

     %dditional queueing delays possible at each link

  • 8/18/2019 Packet Networks

    14/75

    Long &essages vs. Packets

     %pproach : send !bitmessage

    *robability messagearri"es correctly

    2n a"erage it takes about8 transmissions6hop

    )otal > bits transmitted ? @

    !bits

    !bitmessage source dest

    #R=p='0@ #R='0@

  • 8/18/2019 Packet Networks

    15/75

    Packet Switching - 'atagram

    !essages broken into smallerunits (packets

    .ource & destinationaddresses in packet header 

    $onnectionless, packets

    routed independently(datagram *acket may arri"e out of

    order  *ipelining of packets across

    network can reduce delay,increase throughput Lower delay that message

    switching, suitable forinteracti"e traffic

    *acket 9

    *acket

    *acket

    *acket 9

    *acket 9

  • 8/18/2019 Packet Networks

    16/75

    +elay

    8 9

    8 9

    89

    !inimum +elay = 8τ  ; B(T 68 (single path assumed

     %dditional queueing delays possible at each link*acket pipelining enables message to arri"e sooner 

    Packet Switching 'elay

     %ssume three packets corresponding to one messagetra"erse same path

  • 8/18/2019 Packet Networks

    17/75

    8 9

    8 9

    89

    8τ  ; 9(T 68 first bit recei"ed

    8τ  ; 8(T 68 first bit released

    8τ   ; B (T 68 last bit released

    Lτ   + (L- )P   first bit recei"ed

    Lτ  + LP   first bit released

    Lτ  + LP + (k- )P last bit releasedwhere T = k P 

    ( hops L hops

    .ource

    +estination

    .witch

    .witch 9

    τ 

    'elay for k-Packet &essage over L

    )ops

  • 8/18/2019 Packet Networks

    18/75

    +estination

    address

    2utput

    port

    8B 9

    9BC

    D'DCB

    @

    9

    B@@

    #o"ting %a*les in 'atagram

    Networks

    Route determined by tablelookup

    Routing decision in"ol"esfinding next hop in route to

    gi"en destination Routing table has an entry

    for each destinationspecifying output port that

    leads to next hop .iEe of table becomes

    impractical for "ery largenumber of destinations

  • 8/18/2019 Packet Networks

    19/75

    Example+ ,nternet #o"ting

    1nternet protocol uses datagram packetswitching across networks Networks are treated as data links

  • 8/18/2019 Packet Networks

    20/75

    Packet Switching irt"al Circ"it

    $all set0up phase sets up pointers in fixed path along network  %ll packets for a connection follow the same path

     %bbre"iated header identifies connection on each link *ackets queue for transmission -ariable bit rates possible, negotiated during call set0up +elays "ariable, cannot be less than circuit switching

    -irtual circuit

    *acket *acket

    *acket

    *acket

  • 8/18/2019 Packet Networks

    21/75

    ./

    ./9

    ./n

    $onnectrequest

    $onnectrequest

    $onnectrequest

    $onnectconfirm

    $onnectconfirm

    $onnectconfirm

    /

    Connection Set"p

    .ignaling messages propagate as route is selected .ignaling messages identify connection and setup tables in

    switches )ypically a connection is identified by a local tag, -irtual

    $ircuit 1dentifier (-$1 ach switch only needs to know how to relate an incoming tag

    in one input to an outgoing tag in the corresponding output 2nce tables are setup, packets can flow along path

  • 8/18/2019 Packet Networks

    22/75

    8 9

    8 9

    89

    Release

    $onnectrequest

    $R

    $R$onnectconfirm

    $$

    $$

    Connection Set"p 'elay

    $onnection setup delay is incurred before any packetcan be transferred

    +elay is acceptable for sustained transfer of largenumber of packets

    )his delay may be unacceptably high if only a few

    packets are being transferred

  • 8/18/2019 Packet Networks

    23/75

    ,np"t

    C,

    O"tp"t

    port

    O"tp"t

    C,

    01 01

    12

    0(

    0(

    3

    43

    04 55

    4(

    06

    (5

    irt"al Circ"it !orwarding %a*les

    ach input port of packetswitch has a forwardingtable

    Lookup entry for -$1 of

    incoming packet +etermine output port (next

    hop and insert -$1 for nextlink

    -ery high speeds are

    possible )able can also include

    priority or other informationabout how packet should betreated

  • 8/18/2019 Packet Networks

    24/75

    8

    9

    8 9

    89

    !inimum delay = 8τ  ; T  

    t .ource

    +estination

    .witch

    .witch 9

    C"t-%hro"gh switching

    .ome networks perform error checking on header only,so packet can be forwarded as soon as header isrecei"ed & processed

    +elays reduced further with cut0through switching

  • 8/18/2019 Packet Networks

    25/75

    &essage vs. Packet &inim"m

    'elay

    !essage:L τ   + L T = L τ  + (L 3  T + T 

    *acket

    L τ  + L P + (k –  P = L τ  + (L –  P + T 

    $ut0)hrough *acket (1mmediate forwarding afterheader

    = L τ  + T 

     %bo"e neglect header processing delays

  • 8/18/2019 Packet Networks

    26/75

    Example+ 7%& Networks

     %ll information mapped into short fixed0lengthpackets called cells

    $onnections set up across network

    -irtual circuits established across networks )ables setup at %)! switches

    .e"eral types of network ser"ices offered

    $onstant bit rate connections -ariable bit rate connections

  • 8/18/2019 Packet Networks

    27/75

    Packet-SwitchingNetworks

    Routing in Packet Networks

  • 8/18/2019 Packet Networks

    28/75

    9

    8

    B

    @

    Node(switch or router

    #o"ting in Packet Networks

    )hree possible (loopfree routes from to @:

    080@, 00B0@, 090B0@/hich is FbestG !in delay !in hop !ax bandwidth !in cost

    !ax reliability

  • 8/18/2019 Packet Networks

    29/75

    Creating the #o"ting %a*les

    Need information on state of links Link up6downH congestedH delay or other metrics

    Need to distribute link state information using a

    routing protocol /hat information is exchanged

  • 8/18/2019 Packet Networks

    30/75

    #o"ting 7lgorithm #e8"irements

    Responsi"eness to changes )opology or bandwidth changes, congestion

    Rapid con"ergence of routers to consistent set of routes Ireedom from persistent loops

    2ptimality Resource utiliEation, path length

    Robustness $ontinues working under high load, congestion, faults, equipment failures, incorrect implementations

    .implicity fficient software implementation, reasonable processing load

  • 8/18/2019 Packet Networks

    31/75

    9

    8

    B

    @ %

    #

    $

    +

    B

    9

    8

    D

    C

    B

    9

    8

    @

    B

    9

    .witch or router 

  • 8/18/2019 Packet Networks

    32/75

    1ncoming 2utgoingNode -$1 Node -$1  % 8 9  % B 8 8  8 9 %

      8 8 % B

    1ncoming 2utgoingNode -$1 Node -$1  9 @ D  8   9 @   @ D 9  @ 9  8

    1ncoming 2utgoingNode -$1 Node -$1  8 D # C  8 # B  # B 8   # C 8 D

    1ncoming 2utgoingNode -$1 Node -$1

      $ @ 8  8 $ @

    1ncoming 2utgoingNode -$1 Node -$1  9 8 8 9  8 B B  8 9 9 8

      B B 8

    1ncoming 2utgoingNode -$1 Node -$1  B + 9  + 9 B

    Node

    Node 9

    Node 8

    Node

    Node @

    Node B

    #o"ting %a*les in C Packet

    Networks

    xample: -$1 from % to + Irom % & -$1 B J 8 & -$1 8 J & -$1

    J B & -$1 B J + & -$1 9

  • 8/18/2019 Packet Networks

    33/75

      9 9

      8 8

     

      B 9

      @ 8

    Node

    Node 9

    Node 8

    Node

    Node @

    Node B

     

      9

     

      B @

      @ @

      8

      9 B

      8 8

      8  B B

    +estination Next node

        8

     

      B B

      @ B

        9 9

      8

     

      @ @

     

      9 9

      8 8

      B B

      @ 8

    +estination Next node

    +estination Next node

    +estination Next node

    +estination Next node

    +estination Next node

    #o"ting %a*les in 'atagram

    Packet Networks

  • 8/18/2019 Packet Networks

    34/75

    ''''''''

    ''''''''

    '''''''

    ''''''''

    R

    9 B

    8

    '''' ' '' / /

    ''' ''' ' / /

    R9

    Non-)ierarchical 7ddresses and

    #o"ting

    No relationship between addresses & routingproximity

    Routing tables require @ entries each

  • 8/18/2019 Packet Networks

    35/75

    ''''

    ''''''''

    '''

    '''''

    '''

    '

    '''''

    '''

    R R9

    9 B

    8

    ''

    ' 8' 9 8

    '' 8

    ' ' 8 B

    )ierarchical 7ddresses and

    #o"ting

    *refix indicates network where host isattached

    Routing tables require entries each

  • 8/18/2019 Packet Networks

    36/75

    Speciali9ed #o"ting

    Ilooding 7seful in starting up network

    7seful in propagating information to all nodes

    +eflection Routing Iixed, preset routing procedure

    No route synthesis

  • 8/18/2019 Packet Networks

    37/75

    !looding

    .end a packet to all nodes in a networkNo routing tables a"ailable

    Need to broadcast packet to all nodes (eAgA to

    propagate link state information

     %pproach

    .end packet on all ports except one where it arri"ed

    xponential growth in packet transmissions

  • 8/18/2019 Packet Networks

    38/75

    0

    9

    8

    B

    @

    Ilooding is initiated from Node :

  • 8/18/2019 Packet Networks

    39/75

    4

    8

    B

    @

    Ilooding is initiated from Node :

  • 8/18/2019 Packet Networks

    40/75

    9

    (

    B

    @

    Ilooding is initiated from Node :

  • 8/18/2019 Packet Networks

    41/75

    Limited !looding

    )ime0to0Li"e field in each packet limitsnumber of hops to certain diameter 

    ach switch adds its 1+ before floodingH

    discards repeats.ource puts sequence number in each

    packetH switches records source address and

    sequence number and discards repeats

  • 8/18/2019 Packet Networks

    42/75

    'eflection #o"ting

    Network nodes forward packets to preferred port 1f preferred port busy, deflect packet to another port /orks well with regular topologies !anhattan street network

    Rectangular array of nodes Nodes designated (i,K Rows alternate as one0way streets $olumns alternate as one0way a"enues

    #ufferless operation is possible *roposed for optical packet networks  %ll0optical buffering currently not "iable

  • 8/18/2019 Packet Networks

    43/75

    ',' ', ',9 ',8

    ,' , ,9 ,8

    9,' 9, 9,9 9,8

    8,' 8, 8,9 8,8

    )unnel fromlast column tofirst column or

    "ice "ersa

  • 8/18/2019 Packet Networks

    44/75

    ',' ', ',9 ',8

    ,' , ,9 ,8

    9,' 9, 9,9 9,8

    8,' 8, 8,9 8,8

    busy

    Example+ Node :;:0

  • 8/18/2019 Packet Networks

    45/75

    Packet-SwitchingNetworks

    Shortest Path Routing 

  • 8/18/2019 Packet Networks

    46/75

    Shortest Paths $ #o"ting

    !any possible paths connect any gi"ensource and to any gi"en destination

    Routing in"ol"es the selection of the path to

    be used to accomplish a gi"en transfer  )ypically it is possible to attach a cost or

    distance to a link connecting two nodes

    Routing can then be posed as a shortest pathproblem

  • 8/18/2019 Packet Networks

    47/75

    #o"ting &etrics

    !eans for measuring desirability of a path *ath Length = sum of costs or distances

    *ossible metrics

  • 8/18/2019 Packet Networks

    48/75

    Shortest Path 7pproaches

    'istance ector Protocols

    Neighbors exchange list of distances to destinations

    #est next0hop determined for each destination

    Iord0Iulkerson (distributed shortest path algorithmLink State Protocols

    Link state information flooded to all routers

    Routers ha"e complete topology information

    .hortest path (& hence next hop calculated

    +iKkstra (centraliEed shortest path algorithm

    'istance ector

  • 8/18/2019 Packet Networks

    49/75

    .an Mose 89

    .an Mose B@

    .  a n  M  o s e   9  N  :  

    .   a  n   M    o  s  e   9   B   '   

    'istance ector 

    Do you know the way to San Jose? 

  • 8/18/2019 Packet Networks

    50/75

    'istance ector 

    Local Signpost  +irection

    +istance

    Routing Table

    Ior each destination list:

    Next Node

    +istance

    Table Synthesis Neighbors exchange

    table entries

    +etermine current bestnext hop

    1nform neighbors *eriodically

     %fter changesdest next dist

  • 8/18/2019 Packet Networks

    51/75

    Shortest Path to S?

     j 

    Sa

    n

     Jose ij 

    ! j 

    !i  1f !i  is the shortest distance to .M from i 

    and if j is a neighbor on the shortest path,then !

     =  ij 

     + ! j 

    Iocus on how nodes find their shortestpath to a gi"en destination node, iAeA .M

    @"t we donAt know the shortest

  • 8/18/2019 Packet Networks

    52/75

    i only has local infofrom neighbors

    ! j" 

     ij# 

    Sa

    n

     Jose

     K ij ! j 

    !i   j" 

     ij$ 

     KO

    ! j$ 

    *ick currentshortest path

    @"t we donAt know the shortest

    paths

  • 8/18/2019 Packet Networks

    53/75

    Bhy 'istance ector Borks

    Sa

    n

     Jose

  • 8/18/2019 Packet Networks

    54/75

    @ellman-!ord 7lgorithm

    onsi%er co&putations 'or one %estination %  nitialiation

    ach node table has row for destination %  +istance of node %  to itself is Eero: !% =*  +istance of other node j  to %  is infinite: ! j =∝  for j ≠  %  Next hop node n j  = 0 to indicate not yet defined for j ≠  % 

    Sen% Step .end new distance "ector to immediate neighbors across local link

    Recei,e Step

     %t node j , find the next hop that gi"es the minimum distance to % ,in j  .  ij  + ! j  / Replace old (n j  ! j (%)) by new (n j 0 ! j 0(%)) if new next node or distance

    Po to send step

  • 8/18/2019 Packet Networks

    55/75

    @ellman-!ord 7lgorithm

    1ow consi%er parallel co&putations 'or all %estinations %  nitialiation

    ach node has row for each destination %  +istance of node %  to itself is Eero: !% (%)=*  +istance of other node j  to %  is infinite: ! j (%)= ∝   for j ≠  % 

    Next node n j  = 0 since not yet defined Sen% Step

    .end new distance "ector to immediate neighbors across local link Recei,e Step

    Ior each destination % , find the next hop that gi"es the minimum

    distance to % , in j  .  ij + ! j (%) / Replace old (n j  !i (%)) by new (n j 0 ! j 0(%)) if new next node or distance

    found Po to send step

  • 8/18/2019 Packet Networks

    56/75

    ,teration Node 0 Node 4 Node ( Node 5 Node 1

    1nitial (0, ∞ (0, ∞ (0, ∞ (0, ∞ (0, ∞

    9

    8

    8

    B

    @

    9

    9

    8

    9

    9

    8

    BSan

     Jose

    )able entry

    Q node

    for dest .M

    )able entry

    Q node 8

    for dest .M

  • 8/18/2019 Packet Networks

    57/75

    ,teration Node 0 Node 4 Node ( Node 5 Node 1

    1nitial (0, ∞ (0, ∞ (0, ∞ (0, ∞ (0, ∞

    (0, ∞ (0, ∞ (@, (0, ∞ (@,9

    9

    8

    San

     Jose

    +@='

    !2=!3 +4

    n2=3 

    8

    B

    @

    9

    9

    8

    9

    9

    8

    B

    +@='!5 =!3 +6 

    n5 =3 

    ;

    4

    0

  • 8/18/2019 Packet Networks

    58/75

    ,teration Node 0 Node 4 Node ( Node 5 Node 1

    1nitial (0, ∞ (0, ∞ (0, ∞ (0, ∞ (0, ∞

    (0, ∞ (0, ∞ (@, (0, ∞ (@,9

    9 (8,8 (B,@ (@, (8,8 (@,9

    8

    San

     Jose

    8

    B

    @

    9

    9

    8

    9

    9

    8

    B;

    0

    4

    (

    (

    6

  • 8/18/2019 Packet Networks

    59/75

    ,teration Node 0 Node 4 Node ( Node 5 Node 1

    1nitial (0, ∞ (0, ∞ (0, ∞ (0, ∞ (0, ∞

    (0, ∞ (0, ∞ (@, (0, ∞ (@,9

    9 (8,8 (B,@ (@, (8,8 (@,9

    8 (8,8 (, (@, (8,8 (@,9

    San

     Jose

    8

    B

    @

    9

    9

    8

    9

    9

    8

    B;

    0

    46

    (

    (

    5

  • 8/18/2019 Packet Networks

    60/75

    ,teration Node 0 Node 4 Node ( Node 5 Node 1

    1nitial (8,8 (, (@, (8,8 (@,9

    (8,8 (, (, B (8,8 (@,9

    9

    8

    San

     Jose

    8

    B

    @

    9

    9

    8

    9

    9

    8

    B;

    0

    4

    (

    (

    5

    1etwork %isconnecte%7 Loop create% between no%es 2 an% 8

    1

  • 8/18/2019 Packet Networks

    61/75

    ,teration Node 0 Node 4 Node ( Node 5 Node 1

    1nitial (8,8 (, (@, (8,8 (@,9

    (8,8 (, (, B (8,8 (@,9

    9 (8,D (, (, B (B,B (@,9

    8

    San

     Jose

    8

    B

    @

    9

    9

    8

    9

    9

    8

    B;

    4

    1

    (

    (

    5

    3

    1

    Node could ha"e chosen 9 as next node because of tie

    , i N d 0 N d 4 N d ( N d 5 N d

  • 8/18/2019 Packet Networks

    62/75

    ,teration Node 0 Node 4 Node ( Node 5 Node 1

    1nitial (8,8 (, (@, (8,8 (@,9

    (8,8 (, (, B (8,8 (@,9

    9 (8,D (, (, B (B,B (@,9

    8 (8,D (,@ (, D (B,B (@,9

    San

     Jose

    8

    B

    @

    9

    9

    8

    9

    9

    8

    B ;

    4

    1

    13

    5

    3

    6

    Node 9 could ha"e chosen B as next node because of tie

  • 8/18/2019 Packet Networks

    63/75

    8

    B

    @

    9

    9

    8

    9

    9

    8

    B

    ,teration Node 0 Node 4 Node ( Node 5 Node 1

    (8,8 (, (, B (8,8 (@,9

    9 (8,D (, (, B (9,B (@,9

    8 (8,D (,@ (, D (B,B (@,9

    (9, (,@ (, D (B,B (@,9

    San

     Jose

    ;

    33

    1

    6

    4

    Node could ha"e chose 8 as next node because of tie

  • 8/18/2019 Packet Networks

    64/75

    8 9

    8 9

    (a

    (b

    Dpdate Node 0 Node 4 Node (

    #efore break (9,8 (8,9 (,

     %fter break (9,8 (8,9 (9,8

    (9,8 (8, (9,8

    9 (9,B (8, (9,B

    8 (9,B (8,@ (9,B

    (9,D (8,@ (9,D

    B (9,D (8,C (9,D

    / / / /

    Co"nting to ,nfinity Pro*lem

    Nodes belie"e bestpath is through eachother 

    (+estination is node

    P *l @ d N % l

  • 8/18/2019 Packet Networks

    65/75

    Pro*lem+ @ad News %ravels

    Slowly

    Remedies .plit

  • 8/18/2019 Packet Networks

    66/75

    8 9

    8 9

    (a

    (b

    Split )ori9on with Poison #everse

    Nodes belie"e bestpath is througheach other 

    Dpdate Node 0 Node 4 Node (

    #efore break (9, 8 (8, 9 (,

     %fter break (9, 8 (8, 9 (0, ∞ Node 9 ad"ertiEes its route to tonode 8 as ha"ing distance infinityHnode 8 finds there is no route to

    (9, 8 (0, ∞ (0, ∞ Node ad"ertiEes its route to tonode 9 as ha"ing distance infinityHnode 9 finds there is no route to

    9 (0, ∞ (0, ∞ (0, ∞ Node finds there is no route to

  • 8/18/2019 Packet Networks

    67/75

    Link-State 7lgorithm

    #asic idea: two step procedure ach source node gets a map of all nodes and link metrics (link

    state of the entire network

    Iind the shortest path on the map from the source node to alldestination nodes

    #roadcast of link0state information "ery node i  in the network broadcasts to e"ery other node in the

    network:

    1+Ss of its neighbors: Ni=set of neighbors of

    i+istances to its neighbors: T ij  U j ∈1 i V

    Ilooding is a popular method of broadcasting packets

    'ikstra 7lgorithm+ !inding

  • 8/18/2019 Packet Networks

    68/75

    'ikstra 7lgorithm+ !inding

    shortest paths in order 

    s

    w

    w

    "

    w'

    $losest node to s is hop away

    w

    "

     x 

     x'

    9nd closest node to s is hopaway from s or w”

     x 

     z

     z'

    8rd closest node to s is hop

    away from s, w”, or  xw'

    Iind shortest paths fromsource s to all otherdestinations

  • 8/18/2019 Packet Networks

    69/75

    'ikstraAs algorithm

    1 : set of nodes for which shortest path already found

    1nitialiEation: (.tart with source no%e s) 1 = .s/ !s = ', Fs is distance Eero from itselfG

    ! j = sj  for all j ≠  s distances of directly0connected neighbors

    .tep %: (9in% ne:t closest no%e i  Iind i ∉ 1  such that

    !i  = min !j   for  j ∉ 1  

     %dd i  to 1 

    1f 1  contains all the nodes, stop

    .tep #: (up%ate &ini&u& costs) Ior each node j ∉ 1 

    ! j  = min (! j  !i + ij 

    Po to .tep %ini&u& %istance 'ro& s to

     j through no%e i  in 1 

  • 8/18/2019 Packet Networks

    70/75

    Exec"tion of 'ikstraAs algorithm

    1teration N +9 +8 + +B +@

    1nitial TV 8 9 B   ∝ ∝

    T,8V 8 4   ∝ 8

    9 T,9,8V ( 4 D 8

    8 T,9,8,@V ( 4 B (

    T,9,8,,@V ( 4 5 B (

    B T,9,8,,B,@V ( 4 5 1 (

    1

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    3 1

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    331

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    3   1

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    331

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    33   1

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    331

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    33

    Shortest Paths in 'ikstraAs

  • 8/18/2019 Packet Networks

    71/75

    Shortest Paths in 'ikstra s

    7lgorithm1

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    3   31

    2

    4

    5

    6

    1

    1

    2

    3  2

    35

    2

    4

    3

    1

    2

    4

    5

    6

    1

    1

    2

    3  2

    3

    5

    2

    4

    33  1

    2

    4

    5

    6

    1

    1

    2

    3  2

    3

    5

    2

    4

    33

    1

    2

    4

    5

    6

    1

    1

    2

    3  2

    3

    5

    2

    4

    33   1

    2

    4

    5

    6

    1

    1

    2

    3  2

    3

    5

    2

    4

    33

  • 8/18/2019 Packet Networks

    72/75

    #eaction to !ail"re

    1f a link fails, Router sets link distance to infinity & floods the

    network with an update packet  %ll routers immediately update their link database &

    recalculate their shortest paths Reco"ery "ery quick

    #ut watch out for old update messages  %dd time stamp or sequence > to each update

    message $heck whether each recei"ed update message is new 1f new, add it to database and broadcast 1f older, send update message on arri"ing link

  • 8/18/2019 Packet Networks

    73/75

    Bhy is Link State @etter

    Iast, loopless con"ergence.upport for precise metrics, and multiple

    metrics if necessary (throughput, delay, cost,

    reliability.upport for multiple paths to a destination

    algorithm can be modified to find best two paths

  • 8/18/2019 Packet Networks

    74/75

    So"rce #o"ting

    .ource host selects path that is to be followed by apacket .trict: sequence of nodes in path inserted into header  Loose: subsequence of nodes in path specified

    1ntermediate switches read next0hop address andremo"e address

    .ource host needs link state information or accessto a route ser"er 

    .ource routing allows the host to control the paths

    that its information tra"erses in the network *otentially the means for customers to select what

    ser"ice pro"iders they use

  • 8/18/2019 Packet Networks

    75/75

    9

    8

    B

    @

     %

    #

    .ource host

    +estination host

    ,8,@,#

    8,@,# @,#

    #

    Example