频道栏目
首页 > 网络 > 网络协议 > 正文

TCP细节探究:TCP数据交互

2013-03-11 13:34:37            作者:cuiweican
收藏   我要投稿

TCP细节探究:TCP数据交互

二:TCP数据交互

正如前面所说的TCP协议是一可靠协议,其原因就是发送方与接收方之间存在着数据到达确认机制,当发送方在一定时间内未收到确认或接收方收到乱序的报文时重复发送ACK都会触发发送方重发报文。
  www.2cto.com  

观察以上抓包,其中序号477651到477662为客户端与服务器之间的数据交互,在此交互过程中, 客户端连续向服务端发送10个1024长度的数据包,其C++代码如下所示

for ( i=0; i<10;i++)

{

  send(m_clientSocket, buf, 1024, 0);

}

以几个需要注意的是:

1:TCP会将上层提交的数据包整合成一个最大包发送,如上图477652,477654等,这些包的报文段长度正好是MSS长度。  www.2cto.com  

2:为防止网络阻塞,TCP一开始发送的数据包并不是以MSS长度发送,而是根据网络情况逐步增加发送的速度与长度,正如上图的477651,发送的报长度为1024,而非MSS

3:接收端并不会对每一个数据包进行确认,而是对在其定时器周期内到达的所有数据报进行统一确认,如若在确认时,服务器端刚好有一个包发送到客户端,ACK包会与该包一并发送到客户端。

 
相关TAG标签 细节 数据
上一篇:TCP细节探究:TCP连接建立
下一篇:TCP细节探究:TCP超时/丢失重传问题
相关文章
图文推荐
文章
推荐
热门新闻

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站