多个ip分组不按顺序到达目的主机,它是怎样被有序组合起来的??

TCP或者udp的报文被分成了多个ip分组后(假设有10个ip分组,编号是1-10),书上说,这10个分组不是按照顺序到达目的主机的,那么目的主机的哪个协议负责重新组织这10个分组呢?假设6号分组先于2号分组到达目的主机了,目的主机是丢弃6号分组还是接受它??请详细说说。

另外,在一个网段内,如果一个大的ip分组被分割成了10个数据帧,这10个数据帧从源主机向本网段内的目的主机发送数据帧的时候,是不是也存在“数据帧不一定按顺序到达的问题”?如果是这样,那么目的主机的哪个协议负责重新组织这10个数据帧呢?假设6号数据帧先于2号数据帧到达目的主机了,目的主机是丢弃6号数据帧还是接受它??请详细说说。
不要复制的文字

第一个问题,由TCP报头头中的一个字段 序列号 来解决 这个字段包含了 TCP数据流 总共分了多少份(用多少个IP数据包传)和每份的标识 这样接收方在收到IP包(TCP数据包在IP包里面)后便可以确定源数据的顺序和完整性,不完整,反馈重传丢失的数据。UDP不验证数据的顺序,丢包也不会重传。

第二个问题,由IP报头中的 标识 标志 分段偏移 三个字段来解决。

标识(Identifier)(16比特)
原是数据的主机为数据报分配一个唯一的数据报标识符。在数据报传向目的地址时,如果路由器将数据报分为报片,那么每个报片都有相同的数据标识符。
标志(Flags)(3比特)
标志字段中有2为与报片有关。
位0:未用。
位1:不是报片。如果这位是1,则路由器就不会把数据报分片。路由器会尽可能把数据报传给可一次接收整个数据报的网络;否则,路由器会放弃数据报,并返回差错报文,表示目的地址不可达。IP标准要求主机可以接收576字节以内的数据报,因此,如果想把数据报传给未知的主机,并想确认数据报没有因为大小的原因而被放弃,那么就使用少于或等于576字节的数据。
位2:更多的报片。如果该位为1,则数据报是一个报片,但不是该分片数据报的最后一个报片;如果该位为0,则数据报没有分片,或者是最后一个报片。
分段偏移(Fragment Offset)(13比特)
该字段标识报片在分片数据报中的位置。其值以8字节为单位,最大为8191字节,对应65528字节的偏移。就是MTU——最大传输单元,根据你链路的状况,链路状况越好值越大。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-08-02
具体协议早忘了,现在不学这个了,不过可以给点参考,
这个不按顺序很常见啊,在每个MAC帧中有特定信息标注的数据的位置,
就是说发送的不仅仅是你要发送的DATA,还包括很多控制信息,
目的主机收到后肯定是接受,但如果等不到其他的数据,应该有一个timeout机制,要不然就成类似SYN洪水的效果了,你觉得呢?
第2个回答  2009-08-02
当通过internet发送数据时。数据都会先分解为一些小的部分,称为、“数据报”。接下来会为这些数据报编号并进行寻址,然后在将其发送到目标位置。这样才能通过传输媒介轻松地发送它们。其实,为这些数据报编号是为了能够在另一端正确的组合到一起,而不考虑它们的先后顺序。如果数据在途中损伤,这种编号和寻址也会有帮助。在任何方式的传输中都可能发生数据损坏,因此有计时器TCP4中计时器
1.重传计时器 2坚持计时器 3 保活计时器 4 时间等待计时器

第二个问题是补充一下:你的意思是在局域网中通信吧!
二层通信是靠MAC地址来通信的,首先看以太网帧中的数据包的原MAC和目的MAC
,通过查找来匹配目的MAC,如果有进行单播,没有除源端口外广播,通过帧校验序列号(FSC).FSC是从目的开始到数据域结束这部分的校验和。