TCP

封装情况和包结构:

 

 

 

三次握手连接:

四次挥手断开连接:

 

 TCP半关闭:TCP提供了连接的一端在结束他的发送后还能接收来自另一端数据的能力。

一个经典的例子:

 

 

滑动窗口协议:该协议允许发送方在停止并等待确认前可以连续发送多个分组。

 

超时重传:超时重传是TCP协议保证数据可靠性的另一个重要机制,其原理是在发送某一个数据以后就开启一个计时器,在一定时间内如果没有得到发送的数据报的ACK报文,那么就重新发送数据,直到发送成功为止。

 

慢启动:慢启动为发送方的TCP增加了另一个窗口:拥塞窗口,记为cwnd,当与另一个网络主机建立TCP连接时,拥塞窗口被初始化为1个报文段(即另一端通告的报文段大小)。没收到一个ACK,拥塞窗口就增加一个报文段(cwnd以字节为单位,但是慢启动以报文段为单位进行增加)。

发送端取拥塞窗口与通告窗口中的最小值作为发送上限。

拥塞窗口是    发送方     使用的流量控制,而 通告窗口 则是         接收方使用的流量控制。

发送方开始时发送一个报文段,然后等待ACK。当收到该ACK时,拥塞窗口从1增加为2,就可以发送2个报文段了。当收到这2个报文段的ACK,拥塞窗口就增加2个报文段,即拥塞窗口变为4个报文段了,这是一种指数增长的关系。

 

拥塞避免算法:慢启动算法是在一个连接上发起数据流的方法,但有时候会达到中间路由器的极限,此时会出现分组丢失,拥塞避免算法是一种处理丢失分组的方法。

拥塞发生了,就把窗口降一半然后再一个一个加上去。

 

快速重传:如果一连串收到3个或3个以上的重复ACK,无需等待超时定时器溢出,直接重传丢失的数据报文段。

 

 

TCP的状态变迁图:

 

posted @ 2017-03-11 00:13  chhshichenhaha  阅读(145)  评论(0编辑  收藏  举报