当前位置: 首页 > news >正文

360网站空间广州建设信息网官方网站

360网站空间,广州建设信息网官方网站,深圳网站建设公司官网,网页制作与网站建设实战大全 pdf下载文章目录 流量控制拥塞控制拥塞窗口 延迟应答捎带应答面向字节流粘包问题TCP的异常 流量控制 由于接收端处理数据的速度是有限的#xff0c;如果发送端发的太快#xff0c;那么接收端的缓冲区就可能会满。此时如果发送端还发数据#xff0c;就会出现丢包现象#xff0c;并… 文章目录 流量控制拥塞控制拥塞窗口 延迟应答捎带应答面向字节流粘包问题TCP的异常 流量控制 由于接收端处理数据的速度是有限的如果发送端发的太快那么接收端的缓冲区就可能会满。此时如果发送端还发数据就会出现丢包现象并且可能出现一系列连锁反应。 所以TCP支持根据接收端的处理能力去决定发送端的发送速度这种机制就叫做流量控制 接收端会将自己的缓冲区大小也就是报头中的窗口大小告知给发送端发送端根据情况改变发送速度窗口大小越大说明网络的吞吐量就越高 拥塞控制 虽然TCP有滑动窗口这个机制可以高效可靠的发送大量数据但是如果在刚开始的时候就发送了大量的数据就仍然可能出现问题 因此TCP在防止出现拥塞问题上加入了慢启动机制 顾名思义就是先发送少量的数据区探探路摸清当前的网络拥堵情况再决定应该按照多快的速度去传输数据 少量的丢包, TCP仅仅是触发超时重传; 大量的丢包, TCP就认为网络拥塞。 TCP通信开始后, 网络吞吐量会逐渐上升; 随着网络发生拥堵, 吞吐量会立刻下降. 所以拥塞控制, 归根结底是TCP协议想尽可能快的把数据传输给对方, 但是又要避免给网络造成太大压力的折中方案 拥塞窗口 此处就又引入一个概念—拥塞窗口 在通信开始前拥塞窗口设为1每收到一个ACK应答时拥塞窗口加1每次发送数据包时都将拥塞窗口和报头中的窗口大小做比较之后取较小的值作为实际发送的窗口大小 这样做就可以很符合慢启动机制一开始的窗口大小就会呈指数型的增长到后面就会慢下来呈线性增长这种就相当于给了一个阈值没超过这个值时就可以增长的快一点一旦超过就慢下来 因此可以将这个阈值一开始启动时候就设为窗口大小的最大值每次超过这个值那么TCP就会触发重发机制这时候每一次触发重发都将这个阈值减少一半同时拥塞窗口置为1 这样就可以很好的控制住拥塞 延迟应答 如果接收数据的主机立刻返回ACK应答这时候返回的窗口可能比较小。因为可能会出现应答一发出就有数据被读取了那缓冲区就又大一点了但是应答没有能够及时知道 又因为窗口越大网络吞吐量就越大传输效率就越高。最终的目标是在保证网络不拥塞的情况下尽量提高传输效率。因此就可以引入延迟应答的机制。 另外还有利用到TCP的应答机制原理只要将该序号的数据应答回去那么就说明该序号前的所有数据都已经收到了。所以延迟的时间就可以取在超时重发的时间前。 捎带应答 在很多情况下两端主机都是一发一收的模式在通信也就是说客户端给服务端发送数据服务端也会回一个数据给客户端。那这个时候搭配着延迟应答服务端可以在这段时间内将之前处理完的数据。等到服务端发送应答了一并这数据带走发送这样就可以省下一步这就是捎带应答 面向字节流 TCP是以字节流的方式去读写的。 在创建TCP的套接字时操作系统内核会同时创建一个发送缓冲区和一个接收缓冲区 调用write时, 数据会先写入发送缓冲区中;如果发送的字节数太长, 会被拆分成多个TCP的数据包发出;如果发送的字节数太短, 就会先在缓冲区里等待, 等到缓冲区长度差不多了, 或者其他合适的时机发送出去;接收数据的时候, 数据也是从网卡驱动程序到达内核的接收缓冲区;然后应用程序可以调用read从接收缓冲区拿数据; 另外TCP的一个连接, 既有发送缓冲区, 也有接收缓冲区, 那么对于这一个连接, 既可以读数据, 也可以写数据. 这个概念叫做 全双工 由于缓冲区的存在TCP的读和写就不需要一一匹配了只需要读写到指定的字节数就可以 粘包问题 因为字节流的原因就可能会出现读取一个数据没读完或者读多了读了别的数据 因此为了解决这种粘包问题可以采用几种方案 定长读写指定字节数利用分隔符分隔数据约定报头的位置在报头里加上有效载荷的字节数 TCP的异常 进程终止进程终止会释放文件描述符仍然可以发送FIN和正常关闭没有什么区别。机器重启和进程终止的情况相同。机器掉电/网线断开接收端认为连接还在一旦接收端有写入操作接收端发现连接已经不在了就会进行reset重置连接。即使没有写入操作TCP自己也内置了一个保活定时器会定期询问对方是否还在如果对方不在也会把连接释放
http://www.w-s-a.com/news/702500/

相关文章:

  • 毕业设计医院网站设计怎么做郑州铭功路网站建设
  • 网站根域名是什么php做商城网站步骤
  • 建设网站的那个公司好网站建设万首先金手指12
  • 广东民航机场建设有限公司网站网站开发后端用什么
  • 做风帆网站需要多少钱越野车网站模板
  • 如何做网站平台销售用狗做头像的网站
  • 宝安电子厂做网站美食网页设计的制作过程
  • 网站logo提交学网站开发技术
  • 跨境电商平台网站建设广州西安官网seo推广
  • 我和你99谁做的网站小程序制作第三方平台
  • 建设银行网站用户名鹤岗网站seo
  • 做一元夺宝网站需要什么条件西安市做网站的公司
  • 零基础建设网站教程郑州做网站推广价格
  • 平面设计免费素材网站新开三端互通传奇网站
  • ppt模板免费下载 素材医疗seo网站优化推广怎么样
  • 课程网站怎么做wordpress文章改背景色
  • 网络营销从网站建设开始卖汽车配件怎么做网站
  • 手机商城网站制作公司济南想建设网站
  • .net 建网站网站网站做员工犯法吗
  • 电子商务网站建设说课稿棕色网站设计
  • 怎么做律所的官方网站红塔网站制作
  • 装一网装修平台官网惠州seo按天付费
  • 湖南建设监理报名网站东莞模块网站建设方案
  • 网站建设小组个人主页html源码
  • 响应式网站检测工具营销公司业务范围
  • 网站源码如何安装做游戏课程网站
  • 选服务好的网站建设亚洲砖码砖专区2022
  • 网站快速查找wordpress 悬停 图片 文字
  • 网站续费 多久想自己做网站该学些什么
  • 可以自己做网站wordpress英文写作插件