首页 理论教育 传输层协议:了解计算机网络

传输层协议:了解计算机网络

时间:2023-11-09 理论教育 版权反馈
【摘要】:在描述网络协议最权威的RFC文档中,也的确是将TCP的PDU称为报文段,但却将UDP的PDU称为数据报。究竟使用哪种传输层协议,UDP还是TCP,这是应用协议和应用程序设计者可以根据自身实际情况灵活选择的。表5-1列出了一些常见的应用层协议对传输层协议的选择情况。表5-1应用层协议采用的传输层协议续表

传输层协议:了解计算机网络

前面介绍过,互联网安排了两种不同的传输层协议:其中一种是UDP(用户数据报),这个协议为调用它的应用程序提供了一种不可靠、无连接的服务;另外一种是TCP,它为调用它的应用程序提供了一种可靠的、有连接的服务。设计网络应用程序的开发者可根据自己的实际情况和需要选择两种应用层协议中的一种。

在讨论网络问题的术语中,大家一般会将第四层的协议数据单元(PDU)称为报文段(Segment)。在描述网络协议最权威的RFC文档中,也的确是将TCP的PDU称为报文段,但却将UDP的PDU称为数据报。这样的叫法从一个侧面体现了UDP的特点:在IP的基础上只做了很少的工作,除了提供了区分不同的进程之外,只对整个数据单元而不仅是头部进行校验。这种只做最基本、最必要工作的特点,让它的协议数据单元看起来和IP数据报差别不算大,让行业内的专家用上了“数据报”这样的称呼。

TCP除了提供传输层最基本的服务之外,还为应用层的程序提供了多项其他服务。

首先,它会提供可靠传输服务和流量控制。其通过为传输的数据编制序号,让接收端可以纠正不可靠传输造成的乱序到达。接收端则需要通过对接收到的信息进行确认,让发送端可以察觉到,哪些信息丢失或者发生错误,从而进行重新传输。协议还提供协调机制,让通信双方能彼此协调传输的速度,让发送的数据量不会超过对方的接收能力。通过这样一些机制,TCP保证了正确有序且有效率地将数据从发送端交付给接收端。这样TCP就将两个端系统之间不可靠的IP通信服务,转换成了一种可靠的、进程间直接通信的传输层服务。

此外,TCP还提供了拥塞控制。可以先将其理解为通信双方在使用公共通信网络时,采取一种自我克制的态度。TCP的拥塞控制防止了所有的通信参与者们因为发送了过多的数据流量而让公共通信资源不堪重负的现象,避免过多的流量导致网络效率低下甚至无法传输的事件发生。TCP让有的通信参与者都保持恰当的自我克制和彼此谦让,这对于公共通信系统充分发挥其应有的能力,更有效地为更多人提供服务是有好处的。从一定角度来说,这也可以看作TCP提供给整个互联网的一种服务,而UDP是不具备这种调节能力的。

TCP通过设置TCP连接来对这种有着多种品质保障机制的端到端通信进行管理。任何采用TCP的通信都要首先建立TCP连接,任何的TCP报文段都要属于某一个有效的TCP连接。(www.xing528.com)

由于采用了有连接的方式,并且提供了这样一些额外的保障通信品质的服务,相比于UDP,TCP本身也复杂得多,运行起来的速度也会更慢。究竟使用哪种传输层协议,UDP还是TCP,这是应用协议和应用程序设计者可以根据自身实际情况灵活选择的。表5-1列出了一些常见的应用层协议对传输层协议的选择情况。

表5-1 应用层协议采用的传输层协议

续表

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈