TCP:传输控制协议

TCP:传输控制协议

       1,Tcp提供一种面向列检的,可靠的字节流服务

      

       2,面向连接意味着两个使用tcp的应用在彼此交换数据之前需要建立一个TCP连接,这跟打电话类似,需要先拨号振铃,接通后才能说话.

Tcp通过下列方式来提高可靠性

1,应用数据被tcp分割成tcp认为最适合发送的数据块.这和UDP不同,应用程序产生的的数据报长度将保持不变.由tcp传递给IP的信息单位称为报文段或段.

 

2,当tcp发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段,如果不能及时收到一个确认,将重发这个报文段.

 

3,当tcp收到发自tcp连接另一端的数据,他将发送一个确认,这个确认不是立即发送,通常推迟几分之一秒..

 

4,tcp将保持它首部和数据的检验和.这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化.如果收到段的检验和有差错,tcp将丢弃这个报文段和不确认收到这个报文段.

 

5,既然tcp报文作为ip数据报来传输,而ip数据报的到达可能会失序.如果有必要,tcp将对收到的数据以正确的顺序交给应用层.

 

6,既然ip数据报会发生重复,tcp的接收端必须丢弃重复的数据.

 

7,tcp还能提供流量控制.tcp连接的每一方都有固定大小的缓冲空间.tcp的接受端只允许另一端发送接收端缓冲区所能接纳的数据.这将防止较快主机致使较慢主机的缓冲区溢出.

Tcp的首部

       1,tcp数据被封装在IP数据报中,tcp首部通常为20个字节.

      

     Tcp首部数据格式

      

              1,端口号标识了接收与发送进程

             2,序号用来标识从tcp发送端向tcp接收端发送的数据字节流,他表示在这个报文段中的第一个数据字节.

      3,确认序号包含发送确认的一端所期望收到的下一个序号.

          4,首部长度表示首部中32bit的数目

你可能感兴趣的:(TCP/IP详解)