问:

TCP 成功传输 5000 个字节的实际数据的开销是 36﹪,如果没有重传,开销是多少?

答:
TCP协议在成功传输数据的过程中,会产生一定的开销,主要包括:
1. 首部开销:TCP数据报文中包含TCP首部,用于记录与传输相关的元信息,如源端口、目的端口、序列号、确认号等,这个首部的大小是20字节。所以5000字节数据的TCP首部开销就是20/5000=0.4%,也就是20字节。
2. 尾部开销:TCP数据报文中还包含尾部信息,主要是为了检验数据的完整性,这个尾部大小是4字节,那么5000字节数据的TCP尾部开销是4/5000=0.08%,也就是4字节。
3. 确认开销:TCP是面向连接的协议,需要在传输过程中不断进行确认,每个确认的大小也是20字节(与首部一致)。假设5000字节数据需要100个确认,那么确认开销就是100*20/5000=4%。
4. 其他开销:还有其他几个开销包括窗口大小选项(3字节)、紧急指针(4字节)、时间戳(10字节)等,总开销约17字节,那么对5000字节数据的开销是17/5000=0.34%。
综上,没有重传的情况下,5000字节TCP数据的总开销大约为:
首部开销:0.4%
尾部开销:0.08%
确认开销:4% 
其他开销:0.34%
总开销:=0.4%+0.08%+4%+0.34%=4.82%
所以,如果没有重传,5000字节TCP数据的开销总共约为4.82%,也就是4.82%×5000=241字节的开销。
而题目中实际开销36%对应的是36%×5000=1800字节,说明有很大一部分是由于重传引起的。
希望这个解释能够帮助您理解TCP的开销计算!