一个3200位长的TCP报文传到IP层,加上160位的首部后成为数据报。下面的互联网由两个局域网通过路由器连接,但第二个互联网所能传送的最长数据帧中数据部分只有1200位,因此数据报在路由器中必须分片。试问第二个局域网向其上层要传送多少比特数据
时间: 2024-06-03 21:08:48 浏览: 185
假设第一个局域网的MTU为1500位,则TCP报文需要分成3个IP数据报进行传输。每个IP数据报的长度为1500位(MTU)- 160位(IP首部)= 1340位。因此,第一个IP数据报和第二个IP数据报都可以在第二个互联网中进行传输,但第三个IP数据报需要在路由器中进行分片。
第三个IP数据报中的数据部分长度为3200位 - 2 * 1340位 = 520位。由于第二个互联网最长数据帧中数据部分只有1200位,因此这个IP数据报需要分成两个片段进行传输。每个片段包含520位的数据和IP首部的一部分,加上分片首部的8位,共计528位。
因此,第二个局域网向其上层要传送的数据为:1340位 + 1340位 + 528位 + 528位 = 3736位。
相关问题
一个3200 bit长的TCP 报文传到IP 层,加上160 bit的首部后成为数据报。下面的互联网由两个局域网通过路由器连接起来。但第二个局域网所能传送的最长数据帧中的数据部分只有1200 bit。因此数据报在路由器必须进行分片。试问第二个局域网向其上层要传送多少比特的数据?
根据题意,原始的TCP报文长度为3200 bit,加上IP首部160 bit后,总长度为3360 bit。由于第二个局域网最长数据帧只有1200 bit,因此需要将3360 bit的数据报进行分片。
根据IP协议的规定,每个分片都要包含IP首部,因此每个分片的长度都应该小于等于第二个局域网最长数据帧的长度1200 bit。可以通过如下计算得出需要分成几个分片:
第一个分片:IP首部+1200-160=1140 bit 的数据
第二个分片:IP首部+1200-160=1140 bit 的数据
第三个分片:IP首部+880-160=720 bit 的数据
因此第二个局域网向其上层要传送的数据长度为1140+1140+720=3000 bit。
16.一个3800bit长的TCP报文传到IP层,加上160bit的首部后成为数据报。下面的互联网由两个局域网通过路由器连接起来。但第二个局域网所能传送的最长数据帧中的数据部分只有1000bit,因此数据报在路由器必须进行分片。试问第二个局域网向其上层(IP层)要传送多少比特的数据?(要求写出计算过程)
对于一个3800bit长的TCP报文传到IP层,加上160bit的首部后成为的数据报,其总长度为3960bit(即3800+160)。
由于第二个局域网所能传送的最长数据帧中的数据部分只有1000bit,因此数据报在路由器必须进行分片。根据IP层分片的规则,数据报会被分成多个片段,每个片段的长度不超过第二个局域网能够传输的最大数据帧长度,即1000bit。同时,每个片段的大小必须是8的倍数。
那么,可以先计算出每个片段的长度。根据IP层分片的规则,每个片段的长度为:
1000 bit - 160 bit = 840 bit
即每个片段的数据部分长度为840bit。而由于每个片段的大小必须是8的倍数,因此实际每个片段的长度应该是848bit(即840bit+8bit)。
接下来需要计算分片后的数据报的总长度。由于每个片段都需要增加IP层的首部,因此每个片段的总长度为1000bit(即数据部分长度840bit+IP层首部长度160bit)。而原始数据报的总长度为3960bit,因此需要分成多少个片段才能传输完整的数据呢?
假设需要分成n个片段,则总长度应为:
n * 1000 bit
根据题意,这个总长度应该大于等于原始数据报的总长度3960 bit。因此有:
n * 1000 bit >= 3960 bit
解得:
n >= 3.96
由于分片必须是整数个,因此最少需要分成4个片段。而最后一个片段的长度不超过1000bit,因此它的数据部分长度应该是:
3960 bit - 3 * 1000 bit = 960 bit
即最后一个片段的总长度为960bit+IP层首部长度160bit=1120bit。
因此,第二个局域网向其上层(IP层)要传送的数据长度为:
3 * 1000 bit + 1120 bit = 4120 bit
阅读全文