内容正文:
计算机网络技术基础
LOREM IPSUM DOLOR
TCP/IP协议簇
第四章
章节导读
不同的厂家生产的计算机运行的操作系统可能完全不同,却因为有了TCP/IP协议簇而能够进行相互通信。TCP/IP协议簇包含很多协议,其中最核心的3个协议是网际协议(internet protocol,IP)、传输控制协议(transmission control protocol,TCP)和用户数据报协议(user datagram protocol,UDP)。
本章就来介绍这3个较核心的协议,以及地址解析协议(address resolution protocol,ARP)和网际控制报文协议(internet control message protocol,ICMP)。
3
学
习
目
标
掌握IP数据报的格式。
掌握IPv4地址的结构和分类。
掌握TCP传输连接的建立和释放过程。
理解子网掩码的概念,掌握子网划分的方法。
理解地址解析协议ARP和网际控制报文协议ICMP的工作原理和应用。
了解IPv6地址的结构和特点。
掌握UDP的概念、特点、端口号分配和数据报格式。
掌握TCP的概念、特点、端口号分配和数据报格式。
掌握TCP传输连接的建立和释放过程。
4
4.2 用户数据报协议UDP
在TCP/IP协议簇中,有两个传输层协议:传输控制协议(Transmission Control Protocol,TCP)和用户数据报协议(User Datagram Protocol,UDP)。其中,TCP是面向连接的、提供可靠服务的协议;UDP则是无连接的,它提供高效但低可靠性的服务。
UDP是一个简单的面向数据报的传输层协议:发送端的UDP对应用程序传下来的报文,只在其首部仅仅加入了复用和数据校验字段后就交付IP层。也就是说,应用层交给UDP多长的报文,UDP就一次照样发送一个报文,如图4-1所示。在接收端的UDP收到IP层交付的数据报后,去掉首部后原封不动地交付给上层的应用程序。
图4-18 发送端的UDP传输过程
4.2.1 UDP的主要特点
UDP的主要特点包括:
4.2 用户数据报协议UDP
(1)无连接的服务,即在传输数据之前不需事先建立连接。UDP无连接的特点使得数据传输时延比较小。
(2)不可靠性。UDP把应用层传给IP层的数据发送出去,使用尽最大努力交付,但是并不保证它们能够可靠交付。由于缺乏可靠性,UDP应用一般必须允许一定量的丢包、出错和复制。绝大多数UDP应用都不需要可靠机制,甚至可能因为引入可靠机制而降低性能。绝大多数UDP应用都不需要可靠机制,如流媒体、实时多媒体游戏和VoIP(voice over IP),甚至可能因为引入可靠机制而降低性能。
4.2 用户数据报协议UDP
(3)缺乏拥塞避免和控制机制,使用UDP时,网络出现的拥塞不会使源主机的发送速率变低,因此需要基于网络的拥塞控制机制来减小因失控和高速UDP流量负荷而导致的拥塞崩溃效应。
使用包队列和丢弃技术的路由器等网络设备往往就成为降低UDP过大通信量的有效工具。此外,数据报拥塞控制协议(datagram congestion control protocol,DCCP)可以通过在诸如流媒体类型的高速率UDP流中增加主机拥塞控制来解决拥塞问题。
(4)支持多种交互通信。UDP支持一对一、一对多、多对一和多对多的交互通信。
4.2.2 UDP端口号分配
网络中的通信实际上是进程间的通信,大多数操作系统都支持多进程并发功能,即允许多个应用程序同时运行。因此,通信双方进行通信时,不仅要知道目的主机的地址,还应该确定数据交付的具体进程。为了解决这个问题,传输层协议引入了不同的协议端口(简称端口)来表示不同的应用程序。
与远程应用程序通信时,发送端不仅要知道接收端的地址,每个数据报还必须带有接收端的协议端口号。同样,为使接收端知道把回应数据发送给谁,发送端在数据报中还必须带有自身的协议端口号。
4.2 用户数据报协议UDP
TCP/IP参考模型的传输层用一个16位的端口号来标志一个端口,因此允许有65 535个不同的端口号,这对于一个计算机来讲是足够用的。TCP/IP协议约定:0~1023为保留端口号,为标准应用服务使用;1024以上是自由端口号(也称动态端口号),为用户应用服务使用。
4.2 用户数据报协议UDP
表4-10列出了常见的UDP服务端口号。
表4-10 常见UDP服务及端口号
UDP端口号 协议名称 说 明
53 DOMAIN 域名服务(DNS)
69 TFTP 简单文件传输协议
161 SNMP 简单网络管理协议
520 RIP 路由信息协议
4.2 用户数据报协议UDP
提