概念:
(1)TCP 是面向连接的协议。
(2)运输连接有三个阶段:
a.连接建立
b.数据传送
c.连接释放
(3)运输连接的管理就是使运输连接的建立和释放都能正常地进行。
TCP 连接建立过程中要解决的三个问题:
(1) 要使每一方能够确知对方的存在。
(2) 要允许双方协商一些参数(如最大窗口值、是否使用窗口扩大选项和时间戳选项以及服务质量等)。
(3) 能够对运输实体资源(如缓存大小、连接表中的项目等)进行分配。
客户–服务器方式
(1)TCP连接的建立采用客户服务器方式。
(2)主动发起连接建立的应用进程叫做客户(client),
(3)被动等待连接建立的应用进程叫做服务器(server)。
重点:
1.TCP 的连接建立:
(1)TCP 建立连接的过程叫做握手。
(2)握手需要在客户和服务器之间交换三个 TCP 报文段。称之为三报文握手。
(3)采用三报文握手主要是为了防止已失效的连接请求报文段突然又传送到了,因而产生错误。
假定主机A运行的是TCP客户程序,而B运行TCP服务器程序。最初两端的TCP都处于CLOSED(关闭)状态。图中在主机下面的方框分别是TCP进程所处的状态。注意:本例中,A主动打开连接,而B被动打开连接。
一开始,B的TCP服务器进程先创建传输控制块TCB(存储了每一个连接中的一些重要信息,如:TCP连接表,指向发送和接收缓存的指针,指向重传队列的指针,当前的发送和接收序号,等等),准备接受客户进程的连接请求。然后服务器进程就处于LISTEN(收听)状态,等待客户的连接请求。如有,即