Key EX_4b

Embed Size (px)

Citation preview

  • 8/13/2019 Key EX_4b

    1/5

    Consider an IRMA multicast tree of 4 levels: the root router is at level 1 and

    the leaf routers are at level 4. Each of the root and intermediate routers has

    exactly three router children and each leaf router has exactly 10 host children.

    A single data packet was multicast and successfully acknowledged by all

    receivers. Assume p is the cost of transmitting the data packet on a

    downstream link and q is the cost of transmitting an ACK message on an

    upstream link.

    a) Compute the total cost for the reliable multicast of one single data packet

    within the multicast router-only tree (i.e., the cost of transmitting the packet

    on downstream links and transmitting the ACKs on upstream links, not

    including links to the host sender or host receivers).

    b) Compute the savings in cost of the above scheme compared to a simple

    scheme that delivers the packet to each receiver using a dedicated unicast

    TCP connection.

    Problem 1

  • 8/13/2019 Key EX_4b

    2/5

    # routers in 2nd level = 3

    # routers in 3rd level = 9

    # leaf routers in 4th level = 27

    # user hosts = 270 receivers

    # downstream links for a data packet =

    27 + 9 + 3 = 39

    # upstream links for aggregated ACKs = 39

    IRMA multicast cost = 39 p + 39 q

    Problem 1- a Solution

  • 8/13/2019 Key EX_4b

    3/5

    # user hosts = 270 receivers

    # unicast TCP connections = 270

    The are 3 downstream links for

    each unicast packet and 3 upstream links foreach ACK in the router-level tree.

    Cost of a one-packet TCP connection = 3p + 3q

    Unicast Cost = 270 (3p+3q) = 810p + 810qCost savings of IRMA multicast =

    810p + 810q 39p -39 q = 771p + 771 q

    Problem 1- b Solution

  • 8/13/2019 Key EX_4b

    4/5

    Consider a restricted version of IRMA that does

    not support caching, i.e., IRMA routers do not

    have code/variables to support caching. Thus

    recovery of lost packets is only done by the

    multicast sender. Write the pseudo code of the

    routine executed by an intermediate router when

    it receives a Leave request from a child router.

    Use the same data structures/notation used in theIRMA paper and clearly define any extra

    variables you may use.

    Problem 2

  • 8/13/2019 Key EX_4b

    5/5

    LEAVE (src, dest)

    // src is k and dest is ichild(i)= child(i) - {k} // remove child k

    if(child(i) = empty) // if no more children, prune router i

    {send LEAVE request to parent(i); exit()}

    // Update state of router i

    old_seqno = ackseq_no(i); old_dupno = dup_no(i); old_awnd = awnd(i);ackseq_no(i) = Min{ackseq_no(j) | j child (i) };

    awnd(i) = Min{ackseq_no(j)+awnd(j) | j child (i)} - ackseq_no(i);

    dup_no(i) = Max{dup_no(j)| ackseq_no(j) = ackseq_no(i) & j child (i) };

    if (old_seqno ackseq_no(i) OR old_dupno dup_no(i)

    OR old_awnd

    awnd(i) ){ send ACK(ackseq_no(i), dup_no(i), awnd(i)) to parent (i) }

    Problem 2 Solution