文档介绍:第五章 传输层协议
本讲稿第一页,共五十二页
重点
端口
TCP连接的建立和拆除的握手机制
计时器
流量控制
拥塞控制
本讲稿第二页,共五十二页
. 传输层概述
一、传输层的作用
弥补网络表示本方可以接收的数据量,以八位字长为计量单位。TCP使用可变大小的滑动窗口来进行流量控制。
校验和:用于对数据段头和数据进行校验,以判断接收的数据是否有错。
紧急指针:给出从当前段序号到紧急数据位置的偏移量。
本讲稿第二十二页,共五十二页
任选项:提供一种增加额外设置的方法, 如最大TCP 分段的大小的约定。
填充:当任选项字段长度不足32 位字长时,需要加以填充。
数据:来自高层即应用层的协议数据。
本讲稿第二十三页,共五十二页
TCP实现的是面向连接的数据传输服务,即是一种虚电路的数据交换方式,在数据传输以前需要在源主机和目标主机之间创建相应的虚电路连接。
本讲稿第二十四页,共五十二页
一、连接的建立
TCP 使用三次握手协议来建立连接。
本讲稿第二十五页,共五十二页
主机1 首先发起TCP 连接请求,并在所发送的数据段中将控制字段中的SYN置为“1”、ACK置为“0”。
本讲稿第二十六页,共五十二页
主机2 收到该分段,若同意建立连接,则发送一个连接接受的应答数据段,其中控制字段的SYN 和ACK均被置“1”,指示对第一个SYN 报文段的确认,以继续握手操作;否则,主机2 要发送一个将RST置为“1”的应答数据段,表示拒绝建立连接。
本讲稿第二十七页,共五十二页
主机1 收到主机2 发来的同意建立连接数据段后,还有再次进行选择的机会,若其确认要建立这个连接,则向主机2 发送确认数据段,用来通知主机2 双方已完成建立连接;
本讲稿第二十八页,共五十二页
若其已不想建立这个连接,则可以发送一个将RST置为“1”的应答数据段来告之主机2 拒绝建立连接。
本讲稿第二十九页,共五十二页
二、连接的拆除
TCP连接的关闭过程是一个四次握手的过程。
图5-9 四次握手拆除TCP 连接
本讲稿第三十页,共五十二页
当主机1 的数据已发送完毕时,其在等待确认的同时可发送一个将控制字段FIN 置“1”的数据段给主机2,表示请求中断主机1到主机2的连接。
图5-9 四次握手拆除TCP 连接
本讲稿第三十一页,共五十二页
若主机2 已正确接收主机1 的所有分段,则会发送一个数据段正确接收的确认段,同时通知本地相应的应用程序,对方要求关闭连接,接着再发送一个对主机1 所发送的FIN段进行确认的应答段。由此便拆除了一个方向的TCP连接。
图5-9 四次握手拆除TCP 连接
本讲稿第三十二页,共五十二页
但是,此时在相反方向上,主机2 仍然可以向主机1 发送数据,直到主机2 数据发送完毕并要求关闭连接。这个方向上连接的拆除同样要经过(1)、(2)两步,由主机2发起FIN段,主机1应答确认ACK,拆除另一方向的TCP连接。
图5-9 四次握手拆除TCP 连接
本讲稿第三十三页,共五十二页
本讲稿第三十四页,共五十二页
TCP设置多个定时器帮助其完成所承担的服务。
本讲稿第三十五页,共五十二页
一、重传定时器(Connection Establishment Timer)
重发定时器是TCP发送数据时设置的,如果在定时器超时前该数据段被确认,就关闭该定时器,否则,一旦超时则重发该数据段。
本讲稿第三十六页,共五十二页
二、连接建立定时器(Connection Establishment Timer)
当请求建立连接的SYN数据段发出时,连接建立定时器就开始计时,如果在75秒内未收到响应,则连接建立失败。
本讲稿第三十七页,共五十二页
三、ACK延时定时器(Delayed ACK Timer)
当TCP实体收到数据时它必须返回确认,但并不需要立即回复,它可以在200亳秒内发送ACK报文,如果在这段时间内它恰好有数据要发送,它就可以在数据内包含确认信息,因此需要ACK延时定时器。
本讲稿第三十八页,共五十二页
四、持续定时器(Persistence Timer)
防止死锁事情发生,发送方在收到接收方发来一个窗口为0的数据时,就启动持续定时器,等到该定时器超时还没有收到对方修改窗口大小的数据段时,发送方就发一个探测数据,对接收方对该探测数据的响应应包含了窗口大小,若仍为0,则定时器清0,重复以上步骤,否则则可以发送数据。
本讲稿第三十九页