RIP协议为什么可以用UDP传输?

蛋蛋蛋疼青年


这与协议本身的特点有关。

UDP协议简单,无连接,并非可靠传输,效率较高。

TCP协议复杂,面向连接,提供可靠传输,效率就没那么高了。

我们可以对比下OSPF、RIP和BGP三种路由协议更容易说明问题:

OSPF本身提供主从协商机制,可以保证可靠的传输,另外全网路由器保持着同样的一个LSDB(链路状态数据库),当拓扑发生变化时,需要携带的变更信息较少,通过IP协议即可完成

RIP协议采用UDP是因为RIP每周期需全网组播路由信息,路由信息数目较大,故使用UDP协议可以提高效率

BGP为边界网关协议,因携带的路由信息较多,且可能跨不同网络传送路由信息,为保证可靠性,需使用TCP协议,可兼顾容量和可靠性




通信人的自我修养


rip只是在更新路由表时候使用多播协议,用udp节省带宽

UDP(User Datagram Protocol)不提供复杂的控制机制,利用IP提供面向无连接的通信服务。并且它是将应用程序发来的数据在收到的那一刻,立刻按照原样发送到网络上的一种机制。

即使是出现网络拥堵的情况下,UDP也无法进行流量控制等避免网络拥塞的行为。

此外,传输途中如果出现了丢包,UDO也不负责重发,甚至当出现包的到达顺序乱掉时也没有纠正的功能。

如果需要这些细节控制,那么不得不交给由采用UDO的应用程序去处理。

换句话说,UDP将部分控制转移到应用程序去处理,自己却只提供作为传输层协议的最基本功能。

UDP有点类似于用户说什么听什么的机制,但是需要用户充分考虑好上层协议类型并制作相应的应用程序。


分享到:


相關文章: