1. 3次握手/4次挥手过程,以及状态变化;
2. RTT,TTL,TOS(8位服务类型,最小延时、最大吞吐、最高可用、最小费用)。
3. TimeWait(2msl)状态,防止最后一个ack丢失
4. 半开连接,以及保活定时器(keepalive)
5. 堵塞崩溃(congestion collapse),某个网段带宽小,路由过渡繁忙会丢弃一些包。tcp片段丢包会重发,导致更多包进入,恶性循环。
6. Nagle算法,最多只有一个未被确认的包,会增加延时,可以选择关闭。
7. ARP地址解析协议和RARP逆地址解析协议。
8. IP选路和动态选路协议。
9. TCP滑动窗口(接收方的流量控制)。
10. 拥堵窗口和慢启动(发送方的流量控制),初始大小为1,接收一个ack就增加1。
10. SYN同步标志,FIN终止标志,PUSH标志(通知接收方把接收到的全部数据提交给接收进程)。
11. capacity(bit) = bandwidth(b/s) x round_trip_time(s)
12. 超时与重传,MSL时间测量,快速重传和快速恢复算法
TCP的几大模块:分段与流,滑窗,连接,流量控制,重新发送,堵塞控制。
http://www.cnblogs.com/vamei/archive/2012/12/05/2802811.html
原文:http://www.cnblogs.com/bighead2016/p/5236570.html