文档介绍:Page 1
第3章传输层协议
传输层概述
用户数据报协议(UDP)
传输控制协议(TCP)
Page 2
传输层概述
引入传输层的必要性
传输层在应用层和IP层之间起着承上启下的作用,它应该满足以下三个要求:
。
。
。
Page 3
传输层提供的服务
传输层在两个应用实体之间实现可靠的、透明的、有效的数据传输,其主要功能是:
3. 状态报告
Page 4
传输层寻址与端口
(1)传输层寻址
根据OSI的观点,传输层应提供用户之间可靠和有效的端到端传输服务。
在一个主机中可能存在多个应用进程同时分别和另一个主机中的多个应用进程通信。因此,传输层必须具有将一个主机中某一个用户进程和其他用户进程相互区分的能力。
传输层通过传输地址来实现该功能,这里的传输地址是指传输层服务访问点TSAP(称为端口),它是传输层与应用层之间交换信息的抽象接口。
Page 5
传输层与应用层、网络层的关系
Page 6
传输层寻址与端口
(2)端口
端口就是传输层服务访问点TSAP。
应用层不同进程的报文通过不同的端口向下递交到传输层,由传输层复用并传递给网络层。
当这些报文到达目的主机后,目的主机传输层使用分离功能,通过不同的端口把这些报文分别递交给相应的应用进程。
因此,端口是用来标识不同应用层进程的。
Page 7
(3)TCP/IP的端口
描述一个应用进程的标识如下:
源IP地址,源端口号,协议,目的IP地址,目的端口号
其中:
源IP地址和目的IP地址用于区分不同主机
源端口号和目的端口号用于区分不同主机中的不同进程
协议用于区分基于UDP协议或TCP协议
Page 8
(4)IANA规定的三类端口
在TCP和UDP协议中的端口域为16位,可以使用的端口号为0~65535。 IANA(互联网编号分配机构)规定,端口号分为以下三类:
(1)熟知端口号:或称公认端口号,由IANA统一分配和定义其含义,一般在服务器端使用,其范围是0~1023。
(2)注册端口号:用户根据需要在IANA注册,以避免重复,其范围是1024~49151。
(3)临时端口号:客户端程序自己定义和使用的端口号,可随机分配,其范围是49152~65535。
Page 9
无连接服务与面向连接服务
无连接的传输服务比较简单,发送数据之前不需要事先建立连接。
面向连接的传输服务要求两个用户(或进程)相互通信之前,必须先建立连接。
一次完整的数据传输包括建立连接、传输数据、释放连接三个阶段。
Page 10
TCP/IP协议族提供的两个传输层协议:传输控制协议TCP和用户数据报协议UDP
(1)TCP协议
TCP提供面向连接的可靠的传输服务,因此不可避免地增加了许多开销,如确认、流量控制、计时器以及连接管理等。
TCP不提供广播或组播服务。