当前课程知识点:网络技术与应用 > 第7讲 传输层 > 7.4 传输控制协议TCP > 建立和释放连接过程
TCP协议提供的是面向连接的服务
在数据传输之前 要建立连接
数据传输以后 要释放连接
下面就来详细地学习TCP协议建立连接的过程
和释放连接的过程
最后 了解两个非常重要的参数
发送窗口和接收窗口
TCP协议采用的是客户/服务器方式
主动发起建立连接的应用进程称为客户
被动等待连接建立的应用进程叫服务器
假定 有这样一个客户和服务器要建立连接
建立连接的过程应该是这样
首先由客户端发送一个连接请求
在连接请求当中
报文的首部中 把SYN置成1
ACK置成0
然后和接收端协商发送数据字节流的起始序号
比如置为x
接收端服务器端接收到这样一个报文以后
如果它响应这个连接请求
那么给客户端发送一个响应报文
在报文当中 把SYN置为1
ACK这位置为1
然后以确认序号的方式同意发送端把字节流从x+1编号
然后把序号位置成y
y是什么呢
就是服务器端要和客户端发送数据的起始序号
然后在服务器这端开辟一个缓存
以窗口的形式告诉发送端
服务器端开辟缓存的大小
假设窗口大小为WS
客户端只有接收到服务器端发送的连接建立响应以后
它才能够确认服务器端同意建立连接
客户端再次发送一个响应报文
这个响应报文当中把SYN置成0
ACK这位置成1
那么确认序号是服务器端发送的y+1
同意服务器端在发送数据的字节流序号从y+1开始编号
同时在客户端也开辟一个缓存
以窗口的形式告诉客户的服务器端
这个缓存的大小是WC
这是连接建立的过程
当数据发送完了以后 要释放连接
释放连接的过程应该是这样子
当客户端完成数据发送以后
就向服务器端发送一个连接释放请求的报文
在这个报文当中的首部 FIN置为1
ACK置成1 序号等于u
u是什么意思呢
u是发送端已经发送完成的数据的最后一个字节的序号加1
当服务器端接收到连接释请求之后
就用确认序号为u+1作为连接释放请求的确认应答
同时释放为接收数据而分配的相应资源
在确认报文当中 把FIN位置成0
这个时候 服务器端如果是给客户端发送数据的话
这个时候服务器端可以继续向客户端发送数据
当服务器端完成数据发送以后
也向客户端发送一个连接释放请求
在释放请求里面 把FIN位置为1
序号置成v
这个序号是发送完所有数据的最后一个数据的序号加1
同时 确认序号还是u+1
ACK位置成1
客户端接收到这个释放请求以后
向服务器端发出一个确认应答
这个确认应答里面 以v+1作为它的确认序号
ACK这位置成1
同时释放为接收服务器端数据而分配的资源
关闭整个连接
这个时候报文里面FIN位置成0
在服务器端接收到客户端的确认应答以后
释放和该TCP连接相关的所有资源
从而关闭整个连接
这是释放连接的过程
下面看一下连接的建立和释放过程当中
用到了包括数据传输过程用到的两个重要参数
一个是发送窗口和接收窗口
因为发送端和接收端发送数据是双向的
所以 对于发送端和接收端来说
都存在发送窗口和接收窗口
下面以客户端的发送窗口和服务器端的接收窗口为例
说明发送窗口和接收窗口的含义
首先来看一下客户端的发送窗口
发送窗口是发送端允许发送的序号范围
序号的范围是要根据确认序号和接收端的窗口大小不断调整
假定窗口的大小是WS
发送端和接收端商定的初始序号是x+1
因此初始的时候 发送窗口是x+1到x+1+WS
当发送端接收到接收端发送的确认序号为a1的报文后
它的发送窗口就做相应的调整
它的发送窗口的范围就变成了a1到a1+WS
在这里 要特别说明一下的是
窗口WS在接收端是会发生变化的
这里假设WS不变
就是一直是WS
如果发送端再次接收到接收端发送的确认序号a2的报文后
它的发送窗口就变成了a2一直到a2+WS
这是发送窗口
下面来看一下服务器端的接收窗口
假设服务器端为传输数据开辟的缓存区的长度为L
可用窗口大小用W表示
在初始的时候 可用窗口的范围从x+1到x+1+L
这个时候可用窗口的大小和缓冲区的大小是相同的
即W=L
如果接收端接收到了发送端发送的一些数据
是正确的数据 但是没有提交给应用进程
在缓存区里有这样一部分数据
比如a到b之间的数据正确地接收了
放在缓存里面
但是还没有向应用进程提交
比如下一个要提交的是序号为a的字节
这个时候 它的可用窗口也就是服务器的接收窗口就发生了变化
服务器向客户端发送的确认序号是b
而确认应答当中的窗口字段值W=L-(b-a)
这样一个值
这是服务器端的接收窗口
总的来说
连接的建立过程也是确定参数的过程
这个参数主要包括初始序号 初始窗口值等
释放连接的过程也是释放接收端资源的过程
包括缓存区以及要删除TCP连接表中相关信息等
-课程先导语
--先导语
-1.1 网络内涵
--网络内涵
-1.2 互联网发展过程
--互联网发展过程
-1.2 互联网发展过程--作业
-1.3 交换方式
--电路交换
-- 虚电路交换
--数据报交换
--三种交换方式比较
--html
-1.3 交换方式--作业
-1.4 计算机网络体系结构和协议
--分层结构
--OSI体系结构
-1.4 计算机网络体系结构和协议--作业
-第一讲内容的启示
--html
-例题分析
--例题分析
-测验--作业
-本讲内容简介
-2.1 数据传输系统
-2.1 数据传输系统--作业
-2.2 信号
--2.2 信号
-2.2 信号--作业
-2.3 编码和调制
--2.3-1 编码
--2.3-2 调制
-2.3 编码和调制--作业
-2.4 差错控制
-2.4 差错控制--作业
-2.5 传输媒体
--2.5 传输媒体
-2.5 传输媒体--作业
-2.6 Packet Tracer6.2使用说明
-第二讲内容的启示
--html
-例题分析
--例题分析
-测验--作业
-以太网发展过程与内容简介
-以太网发展过程与内容简介--作业
-3.1 总线形以太网
-3.1 总线形以太网--作业
-3.2 网桥与冲突域分割
-3.2 网桥与冲突域分割--作业
-3.3 交换式以太网与VLAN
-3.3 交换式以太网与VLAN--作业
-3.4 以太网标准
-3.4 以太网标准--作业
-第三讲内容的启示
--html
-例题分析
--例题分析
-案例设计
--案例设计
-测验--作业
-本讲内容简介
--无线局域网
-4.1 无线局域网概述
-4.1 无线局域网概述--作业
-4.2 无线局域网应用方式
-4.2 无线局域网应用方式--作业
-4.3 无线局域网MAC层
-4.3 无线局域网MAC层--作业
-4.4 终端接入无线局域网过程
-4.4 终端接入无线局域网过程--作业
-4.5 无线局域网设计和分析
-第四讲内容的启示
--html
-例题分析
--例题分析
-测验--作业
-本讲内容简介
-- IP与网络互连
-5.1 网络互连机制
-5.1 网络互连机制--作业
-5.2 网际协议
-5.2 网际协议--作业
-5.3 IP分组传输过程
-5.3 IP分组传输过程--作业
-5.4 路由表建立过程
-5.4 路由表建立过程--作业
-5.5 IP over以太网
-5.5 IP over以太网--作业
-5.6 三层交换机与VLAN间通信过程
-5.7 Internet控制报文协议
-5.7 Internet控制报文协议--作业
-第五讲内容启示
--html
-案例设计
--案例设计
-例题分析
-测验--作业
-本讲内容简介
--本讲内容简介
-6.1 Internet接入控制机制
-6.1 Internet接入控制机制--作业
-6.2 以太网和ADSL接入技术
-6.2 以太网和ADSL接入技术--作业
-6.3 家庭局域网接入方式与无线路由器
-6.3 家庭局域网接入方式与无线路由器--作业
-6.4 接入综合演示实验
-6.4 接入综合演示实验--作业
-第六讲内容的启示
--html
-例题分析
--第六讲 例题分析
-测验--作业
-本讲内容简介
--传输层
-7.1 传输层服务特性
--传输层服务特性
-7.1 传输层服务特性--作业
-7.2 端口号
--端口号
-7.3 用户数据报协议UDP
-7.3 用户数据报协议UDP--作业
-7.4 传输控制协议TCP
--TCP特点和格式
-- TCP的几点说明
-7.4 传输控制协议TCP--作业
-第七讲内容启示
--html
-例题分析
--例题分析
-测验--作业
-本讲内容简介
-- 应用层
-8.1 应用结构
--应用结构
-8.1 应用结构--作业
-8.2 域名解析
-8.2 域名解析--作业
-8.3 动态主机配置协议
-8.3 动态主机配置协议--作业
-8.4 万维网
-- 万维网
-8.4 万维网--作业
-8.5 电子邮件
--html
-8.6 文件传输协议
--html
-例题分析
--例题分析
-案例设计
--CH8 案例设计
-应用层启示
--html
-测验--作业
-本讲内容简介
-9.1 网络安全概述
-9.1 网络安全概述--作业
-9.2 网络安全基础
-9.2 网络安全基础--作业
-9.3 病毒检测与防御技术
-9.3 病毒检测与防御技术--作业
-9.4 以太网安全技术
-9.4 以太网安全技术--作业
-9.5 无线局域网安全技术
-9.5 无线局域网安全技术--作业
-9.6 防火墙
-9.6 防火墙--作业
-9.7 安全协议
--9.7 安全协议
-9.7 安全协议--作业
-例题分析
--例题分析
-防火墙演示实验
-- 防火墙演示实验
-案例设计
--案例设计
-网络安全的启示
--html
-测验--作业
-附录1:综合应用分析
--综合应用分析
-附录2:Cisco实际设备网络构建与配置
-期末考试--考试试题