TCP's window

最近,正在做C++和Java的TCP通讯。发现我们这个C++ Framework的发送和接受的效率很高。可以说,发送MPEG流都可以。因为Java的接受和处理的速度很慢。所以,出现了不协调的情况。Java 最后总是发送TCP window equal to 0的 package 给C++,所以启发我往下钻研一下。看了《TCP/IP Illustrated》Volume 1: The Protocols.

1. TCP  
URG 紧急指针
ACK 确认序号有效
PSH 接收方应该尽快将这个报文段交给应用层
RST 重建连接
SYN 同步序号用来发起一个连接
FIN 发送端完成发送任务

2. TCP连接的建立与终止

  • 三次握手和四次断开
  • TCP的状态变迁图
  • 异常终止一个连接
  • 半打开连接--突然掉电,服务器不知道客户已经断开。
  • 同时打开,同时关闭

3. TCP的交互数据流
Nagle算法,一个TCP连接上最多只有一个未被确认的未完成的小分组、在该分组的确认到达之前不能发送其他的小分组。减少网路上的小分组。

4. TCP的成块数据流

快的发送方和慢的接收方,通过TCP window 来控制。

滑动窗口
窗口更新ACK---当窗口改变到一定程度时,会发窗口更新的命令。

慢启动
拥塞窗口(congestion window)

5.TCP的超时与重传

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值