为什么UDP和IP这类协议要对报文长度进行限制?

不知道大家在学完UDP,TCP,IP协议后,有没有这样的问题:为什么UDP/IP的报头中专门有一部分对它的报文长度进行限制呢?这样不是费力不讨好吗?为什么不和TCP一样不对报文长度作出要求,想传多少就传多少不更好嘛

这个其实和可靠性稳定性是分不开的.

UDP无连接,不可靠的协议,它不提供可靠性和稳定性的保证,如果数据报过大,它可能会被分成多个数据报进行传输,这样会增大数据传输的延时和传输出错的风险.因此,UDP对数据报的长度进行限制可以减少数据分片的次数,提高网络传输的效率,同时传输过程中也不容易出错,某种程度上提高了数据包传输的可靠性稳定性

IP是internet协议,它负责将数据包源地址传输到目的地址,如果数据报过大,可能会被分成多个数据包进行传输,这样同样会增加数据包传输的延时和传输出错的风险.因此IP协议对数据报的长度进行限制可以减少数据分片的次数,提高数据包传输的可靠性和稳定性

TCP和UDP/IP不同,TCP是一种有连接可靠的协议,它提供了可靠性和稳定性的保证.因此TCP并不需要对数据报的长度进行限制.但事实上,TCP在通信过程中,数据报过大可能会导致网络拥塞传输延时,因此,通常会将数据分成适当大小的数据包进行传输,这也是TCP为什么会有流量控制,拥塞控制这些机制的原因

你可能感兴趣的:(tcp/ip,网络)