TCP/IP协议学习记录之十六:TCP--传输控制协议

   TCP的服务

      TCP提供面向连接的,可靠的字节流服务(UDP提供无连接的,不可靠的数据报服务);

      面向连接意味着两个使用TCP的应用在彼此交换数据之前必须建立一个TCP连接,所以TCP不能使用广播;

    TCP通过下下列方式来提供可靠性:

  1)应用数据被分割成TCP认为最合适发送的数据报,由TCP传递给IP信息的单位称为报文段或者段(UDP产生的数据报长度将保持不变);

2)TCP的超时重传策略:当TCP发出一个段后,启动一个定时器,等待目的端确认收到这个报文段,如果不能及时收到一个确认,将重发这个报文段;

3)当TCP收到发自TCP连接另一端的数据,他将发送一个确认;

4)TCP将保持它首部和数据的检验和,是一个端到端的检验和,如果收端的检验和有差错,TCP将丢弃这个报文段和不确认收到此报文段;

5)如果必要,TCP将对接收到的sh乬进行重新排序,将收到的数据以正确的顺序交给应用层;

6)IP数据报可能会发生重复,TCP的接收端会丢弃重复的数据;

7)TCP还能提供流量控制,TCP连接的每一方都有固定大小的缓冲空间,TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据;

   TCP不对字节流的内容作出任何解释,不知道传输的数据字节流是二进制数据,还是ASCII字符或者其他类型的字符;

TCP的首部

 

    一个IP地址加上一个端口号称为一个插口(socket) ;

   TCP为应用层提供全双工服务,这意味数据能在两个方向上独立的进行传输,因此,连接的每一端必须保持每个方向上传输数据序号;

TCP首部中有个6个标志比特:

       TCP的流量控制由连接的每一端通过声明的窗口大小来提供。

       检验和覆盖了整个的TCP报文段,一定是由发端计算和存储,并由收端进行验证;

      URG是紧急方式的标记,TCP的紧急方式是发送端向另一端发送紧急数据的一种方式;

      最常见的可选字段是最长报文大小,称为MSS,指明本端所能接收的最大长度的报文段(和窗口不是重复了吗???);

     许多流行的应用如Telnet,Rlogin,FTP和SMTP都使用TCP;

猜你喜欢

转载自blog.csdn.net/cxy19931018/article/details/81358564