11. A station running TCP/IP needs to transfer a file to a host. The file contains 1024 bytes. How many bytes, including all of the TCP/IP overhead, would be sent, assuming a payload size of 128 bytes and that both systems are running IPv4? (Also assume that the three-way handshake and window size negotiation have been completed and that no errors occur during transmission.)
a) What is the protocol overhead (stated as a percentage)?
b) Perform the same calculation, this time assuming both clients are using IPv6.
a)
Assuming both systems are running IPv4, the calculation for the TCP/IP overhead can be done as follows:
Each TCP segment has a 20-byte TCP header and a 20-byte IPv4 header.
Determine the number of segments needed to transmit the file: Number of segments = File size / Payload size Number of segments = 1024 bytes / 128 bytes = 8 segments
Calculate the total overhead: TCP overhead = TCP header size * Number of segments = 20 bytes * 8 segments = 160 bytes IPv4 overhead = IPv4 header size * Number of segments = 20 bytes * 8 segments = 160 bytes
Total overhead = TCP overhead + IPv4 overhead = 160 bytes + 160 bytes = 320 bytes
Calculate the total number of bytes sent: Total bytes sent = File size + Total overhead = 1024 bytes + 320 bytes = 1344 bytes
To determine the protocol overhead as a percentage, we can use the following formula: Protocol overhead = (Total overhead / Total bytes sent) * 100
Protocol overhead = (320 bytes / 1344 bytes) * 100 ≈ 23.81%
Hence, the protocol overhead, including all of the TCP/IP overhead, is approximately 23.81%.
b)
Assuming both clients are using IPv6, the calculation for the TCP/IP overhead is slightly different:
In IPv6, the TCP header size remains the same (20 bytes), but the IPv6 header size increases to 40 bytes.
Determine the number of segments needed to transmit the file (same as before): Number of segments = File size / Payload size = 1024 bytes / 128 bytes = 8 segments
Calculate the total overhead: TCP overhead = TCP header size * Number of segments = 20 bytes * 8 segments = 160 bytes IPv6 overhead = IPv6 header size * Number of segments = 40 bytes * 8 segments = 320 bytes
Total overhead = TCP overhead + IPv6 overhead = 160 bytes + 320 bytes = 480 bytes
Calculate the total number of bytes sent (same as before): Total bytes sent = File size + Total overhead = 1024 bytes + 480 bytes = 1504 bytes
To determine the protocol overhead as a percentage: Protocol overhead = (Total overhead / Total bytes sent) * 100
Protocol overhead = (480 bytes / 1504 bytes) * 100 ≈ 31.91%
Hence, when assuming both clients are using IPv6, the protocol overhead, including all of the TCP/IP overhead, is approximately 31.91%.