一、TCP连接管理
在TCP连接建立的过程中,要解决以下三个问题:
- 要使每一方都能够确知对方的存在。
- 要允许双方协商一些参数(如最大窗口值、是否使用窗口扩大选项、时间戳选项及服务质量等)。
- 能够对运输实体资源(如缓存大小、连接表中的项目等)进行分配。
TCP把连接作为最基本的抽象,每条TCP连接有两个端点,TCP连接的端点不是主机,不是主机的IP地址,不是应用进程,也不是传输层的协议端口。TCP连接的端口称为套接字( socket)。每条TCP连接唯一地被通信两端的两个端点(即两个套接字)确定。
二、建立TCP连接(三次握手)
第一步:
客户机的TCP首先向服务器的TCP发送一个连接请求报文段。这个特殊的报文段中不含应用层数据,其首部中的SYN标志位被置为1。另外,客户机会随机选择一个起始序号seq=x(连接请求报文不携带数据,但要消耗一个序号)。
第二步:(分配服务器资源)