本文目录:
一:TCP基本概念
三:TCP连接
一:TCP基本概念:
从计算机网络体系结构(五层协议如下)上讲,运输层向他上面的应用层提供通信服务,即进程间的逻辑通信。
传输控制协议TCP是位于传输层的三种协议之一,其他两种UDP和流控制传输协议SCTP和UDP,TCP是可靠的,面向连接的协议--->可靠的信道,(UDP不可靠,无连接)。SCTP具有其它两者共同优点
下图为TCP/IP体系中的运输层协议
二:TCP特点:
1)面向连接:即应用程序使用TCP协议前必须建立TCP连接。数据传送完后必须释放建立的连接。
2)连接只有两个端点,每条连接只能是点对点一对一的。
3)可靠交付:无差错,不丢失,不重复且按序到达。确认,重传,检错,序号四种机制实现可靠通信。
4)全双工通信:连接双方均有发送和接收缓存,任何时候都可发送。
5)面向字节流:
三:TCP连接:
前面讲过TCP连接两个端点,连接的既不是主机,不是主机IP地址,不是应用程序,也不是运输层协议端口,而是socket或插口,RFC793定义:端口号连接到IP地址即构成套接字。
TCP传输连接分三个阶段:建立连接,数据传送和释放连接。
1)建立连接:采用C/S方式,主动发起连接的进程叫客户,被动等待连接的叫服务器。
建立过程如下,即我们熟知的三次握手:
2)数据传送:TCP传送单元为报文段。报文分首部,数据两部分,收到后去掉首部。
若确认号为N,表明到虚耗N-1为止到所有数据都已正确收到。
3)释放连接,即四次握手,此处不做多余解释。
注意很多时候我们在说的socket,也许有多种意思,比如: