网络传输可靠性技术 (2)

网络传输可靠性技术

 

图3-32浏览器访问实例

 

 

网络传输可靠性技术

图3-33 传输层复用通信实例

 

二、UDP数据报服务

UDP是一种无连接的数据报协议,它提供“尽最大努力交付”的数据报传输服务。

当客户寄送邮件时,邮政系统并不能保证邮件顺利到达,若丢失,则发信方也不会从收信方得到任何反馈信息,也不会得到任何赔偿。UDP协议同样不关注数据报在传输过程中能否到达接收端,若上层的应用程序采用UDP协议,但又需要其可靠传输,则应用程序本身应该设置相应的机制来保证数据传输的可靠性。在应用对可靠性要求较低,实时性却要求较高时,适合采用UDP协议,如视频和音频传输等。

UDP协议是一种面向报文的协议。

UDP用户数据报可分为两部分:首部和数据部分。

UDP用户数据报首部可分为以下4个字段:

如图3-34所示,对应用层向下移交的数据,UDP协议不进行合并或拆分操作,仅在添加UDP首部后交给网际层进行处理。在IP数据报首部中,当协议字段为17时,代表数据部分为UDP用户数据报。

如图3-34所示,首部长度为8个字节,数据部分的长度则由应用层根据需要确定。

1.源端口字段,记录分配给数据报发送端用户程序的端口号,用于接收端返回应答信息。

2.目的端口字段,记录数据报的目的端口号,运行在接收端主机上的UDP协议根据这一端口号将数据报交付给用户进程。

3.长度字段,记录UDP用户数据报的长度,单位为字节,最小值为8。此时,数据报的数据部分为空。

4.校验和字段,用于检测UDP用户数据报在传输过程中是否发生差错。

 

网络传输可靠性技术

 

图3-34 UDP数据报

三、TCP可靠传输服务

传输控制协议TCP是一种面向连接的,具有流量控制和可靠传输等功能的传输层协议。TCP协议规定,用户进程在数据开始传输前,必须通过“三次握手”建立TCP连接,并在数据传输结束后释放TCP连接。TCP通过使用自动重传请求的滑动窗口机制,提供流量控制和可靠传输功能。

TCP协议也是一种面向字节流的传输层协议,它不同于UDP协议,TCP对应用层向下移交的数据进行合并或拆分,以适应网络的传输要求。通过TCP协议传输的数据,在字节流层面保持不变,但数据分组可能会发生变化。合并或拆分后的数据在被添加到TCP首部后,交付给网际层进行处理。

TCP报文:

如图3-35所示,TCP首部包含20个字节的固定参数和长度不定的可选参数,可选参数部分的长度总是4个字节的整数倍。固定首部可分为以下字段:

1.源端口字段,记录分配给数据报发送端用户程序的端口号,用于接收端返回应答信息。

2.目的端口字段,记录数据报的目的端口号,运行在接收端主机上的TCP协议根据这一端口号将数据报交付给用户进程。

3.序号字段,记录数据部分在用户进程提交的字符流中的起始位置。

4.确认号字段,用于接收端给出期望接收的下一个分组的序号。

5.数据偏移字段,用于给出分组中TCP首部的长度。

6.保留字段,尚未定义功能。

7.URG-FIN字段,用于传输控制。

8.窗口字段,用于表示接收端接收窗口的大小。

9.校验和字段,用于检测UDP用户数据报在传输过程中是否发生了差错。

10.紧急指针字段,用于指出数据部分中紧急数据所占的字节数。

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsppfd.html