End-to-End Delay in Ethernet and TCP/IP Networks

ethernetipswitchswitchingtcp

I’m working through questions from computer networking top down approach and was hoping to get some clarity on the end-to-end delay calculation. At this stage we are not considering processing, transmission or propagation delay.

N = link
L = packet length 
R = transmission rate

The end-to-end Delay is N*L/R (N links in series, using store-and-forward between the links).

The author asks to generalize the above formula for sending P packets over N links.

The solution I derived is (N*L/R)*P.

Is this a reasonable solution?


PS. This is not home working.

Best Answer

So, this assumes that all packets are the same length and all links are the same bandwidth.

I think a mistake you are making is that your formula looks at the end-to-end delay for a single packet, then multiplies it by the number of packets. In this case, the first packet would be sent end-to-end, then the second packet would be send end-to-end etc.

In reality, many packets can be in transit within the network at any one time. If the only delays we are considering are serialisation, then the following would happen:

  • The first packet is serialised onto the first link
  • As soon as the first packet has been serialised onto the first link, as we are only considering serialisation delay, it can begin serialising on the second link
    • At this same time, the second packet can begin serialising on the first link, it can't begin any sooner as the first link was clocking the first packet up until this time.
  • In this simple model, the first and second packets finish serialising on second and first links (respectively) at the same time
    • The first packet can now begin serialising on the third link
    • The second packet can now begin serialising on the second link
    • The third packet can now begin serialising on the first link
  • And it goes on until the last packet is serialised onto the first link
  • Each packet must then serialise on each remaining link until it reaches the last link.

So really, you need to look at the time taken to send all packets across the first link, one-by-one, then look at the time taken for the last packet to traverse the remaining links.

  • So if you consider (L/R) as the time taken to transport one packet across one link.

  • Then consider there are P of these delays to transport all packets over the first link, one-by-one

  • And there are (N-1) of these delays to transport the last packet over the remaining links

Then the formula for this would be:

(P + (N-1)) * (L/R)

Note: this formula is very simplistic and assumes there are no propagation delays, node processing delays or queuing delays etc.

Related Topic