计算机网络-运输层(一、TCP和UDP的概述与特点)

UDP(用户数据报协议)

UDP在传送数据之前不需要先建立连接,远程主机的运输层在接收到UDP报文后也不需要给出任何的答复。

下面给出使用UDP协议的应用和应用层协议:

域名转换:DNS

路由选择协议:RIP

网络管理:SNMP

IP电话:专用协议

流媒体通信:专用协议

多播:IGMP

特点:

1)UDP是无连接的。在发送数据之前不需要建立连接,相应的发送数据结束时也没有连接可以释放。

2)UDP使用尽最大努力交付。不保证可靠的交付,因此主机不需要维持复杂的连接状态表。

3)UDP时面向报文的。且UDP一次只交付一个完整的报文,因此应用程序需选择合适大小的报文,若报文太长,UDP将报文交给IP层后,IP层在转达时可能要进行分片,从而降低了IP层的效率。反之,若报文太短,则IP数据报的首部相对长度较大,也降低了IP层的效率。

4)UDP没有拥塞控制。即使网络出现拥塞也不会使源主机的发送速率降低,这对例如IP电话、实时视频会议等实时应用是很重要的,这类的应用要求源主机以恒定的速率发送数据,并且允许在网络拥塞时丢失一些数据,但不允许数据有太大的时延。

5)UDP支持一对一、一对多、多对一和多对多的交互通信。

6)UDP首部开销较小。8个字节,TCP的首部有20个字节。

 

TCP(传输控制协议)

TCP提供面向连接的服务。在传送数据之前必须先建立连接,数据传输完毕之一需要释放连接。TCP不提供广播和多播服务。由于TCP需要提供可靠的、面向连接的运输服务,因此不可避免地要增加许多的开销,如确认、流量控制、计时器以及连接管理等。这不仅使协议数据单元的首部增大了很多,还要占用很多的处理机资源。

下面给出使用TCP协议的应用和应用层协议:

万维网:HTTP

电子邮件:SMTP

文件传送:FTP

特点:

1)TCP是面向连接的传输层协议。应用程序在使用TCP协议之前必须先建立TCP连接;传送数据完毕后,必须释放已经建立的TCP连接。

2)每一条TCP连接只能有两个端点。(端点为套接字Socket)

3)TCP提供可靠交付的服务。通过TCP连接传送的数据,无差错、不丢失、不重复、并且按序地到达。

4)TCP提供全双工通信。通信双方在任何时候都能发送数据,而且两端都设有发送缓存和接收缓存。

5)面向字节流。这里的流指的是流入到进程或从进程流出的字节序列。虽然程序和TCP交互是一次一个数据块,但TCP把应用程序交下来的数据看成是一连串无结构的字节流。(例如,发送方应用程序交给发送方TCP共10块数据,但接收方的TCP可能只用了4个数据块就把收到的字节流交付上层的应用程序)。

TCP连接:

每一条TCP连接有两个端点,端点为套接字(socket)

                                 套接字 socket = (IP地址:端口号)

每一条TCP连接唯一地被通信两端的端点所确定。

同一个IP地址可以有很多个不同的TCP连接,而同一个端口号也可以出现在多个不同的TCP连接中。

 

你可能感兴趣的:(计算机网络)