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

德保网站建设青岛网站关键词优化公司

德保网站建设,青岛网站关键词优化公司,wordpress 布局推荐,wordpress ip 地址TCP协议是端对端的协议,因此在数据进行传输的过程受发送方,数据通道,接收方三方状态的影响。我们用水龙头来比喻数据发送方,水管来比喻数据通道,水桶来表示数据接收方。 图(a)表示水桶太小,来不及接受注入…

TCP协议是端对端的协议,因此在数据进行传输的过程受发送方,数据通道,接收方三方状态的影响。我们用水龙头来比喻数据发送方,水管来比喻数据通道,水桶来表示数据接收方。

图(a)表示水桶太小,来不及接受注入水桶的水,而传输网络保持畅通,这时只能请求管水龙头的人把水龙头拧小一些,以减缓放水的速率,这就相当于是流量控制。

图(b)表示虽然水桶足够大,但是管道中有很狭窄的地方,使得管道不通畅,水流被堵塞,这种情况反馈到管水龙头的人那里,请求把水龙头拧小一些,以减缓放水的速率,为的减缓水管的堵塞状态,这就相当于是拥塞控制。

一、流量控制

在每一个TCP连接的一侧主机都会有一个socket缓冲区,缓冲区会为每个连接设置接收缓存和发送缓存,当TCP建立连接后,从应用程序产生的数据就会到达接收方的接收缓冲区中,接收方的应用程序并不一定会马上读取缓冲区的数据,他需要等待操作系统分配时间片。如果此时发送方的应用程序产生数据过快,而接收方读取接收缓冲区的数据相对较慢的话,那么接受方中缓冲区的数据就会溢出。

TCP的流量控制本质上是一个速度匹配服务,匹配发送方发送率和接收方的接受速率,避免出现发送方发送过快而接收方接受过慢的情况,从而消除缓冲区溢出的情况。

TCP通过使用一个接收窗口(receive window)来提供流量控制。在TCP报文结构中首部有一个接收窗口变字段,接收端通过向发送端发送报文,报文中就包含了接受窗口变量,接收窗口会给发送方一个指示到底还有多少可用的缓存空间。发送方发送不能超过这个限额的数据,这样发送方会根据接收端的实际接受能力来控制发送到数据量。

那么知道了接收窗口(receive window)之后,它具体是如何用来流量控制呢?

如上图所示,发送端主机会定期向接收端主机发送一个窗口探测包,这个包用于探测接收端主机是否能够接收数据,当接收端的缓冲区一旦面临数据溢出的风险,窗口大小的值也随之被设置为一个更小的值通知到发送端,从而控制数据发送量。

开始的窗口大小设置为3000,发送方每次发送报文长度为1000的报文,当接收端B收到2000-2999的报文之后缓冲区已满,不得不暂停接收数据。然后主机A发送窗口探测包,窗口探测包是一个非常小的字节,然后主机B更新缓冲区接受窗口大小并发送窗口更新通知到主机A,然后主机A再继续发送报文段。在上面的发送过程中,窗口更新通知可能会丢失,一旦丢失发送端就不会发送数据,所以窗口探测包会随机发送,以避免这种情况发生。

二、拥塞控制

有了TCP窗口控制机制之后,使得计算机网络中两个主机之间不再是以单个数据段的形式发送了,而是能够连续发送大量的数据包。但是发送大数据包的时候也面临着例如网络负载、网络拥堵的问题。TCP为了防止这类问题的出现,使用了拥塞控制机制,会在面临网络拥塞时遏制发送方的数据发送。

拥塞控制主要有两种方法:

端到端的控制:因为网络层没有为运输层拥塞控制提供显示支持,IP层不会向端系统提供有关网络拥塞的反馈信息。如果超时或者三次冗余确认就被认为是网络拥塞,TCP会减小窗口的大小,或者增加往返时延来避免。

网络辅助的拥塞控制:在网络辅助的拥塞控制中,路由器会向发送方提供有关网络中拥塞状态的反馈。这种反馈信息就是一个比特信息,它指示链路中的拥塞情况。

TCP发送方通过超时或者三个冗余ACK来感知网络拥塞,通过拥塞窗口cwnd来限制TCP在接收到ACK之前可以发送到网络的数据量。

一般来说,发送方未确认的数据量不得超过cwnd和rwnd的最小值,即:

LastByteSent - LastByteAcked <= min(cwnd, rwnd)

由于每个数据包往返时间为诶RTT,我们假设接受空间有足够的缓存用来接收数据,即只考虑cwnd,那么发送方的发送速率为cwnd/RTT 字节/秒,通过调节cwnd,发送方就可以调节它向连接发送数据的速率。

TCP进行拥塞控制的算法有四种:慢开始(slow start),拥塞避免(congestion avoidance),快重传(fast retransmit)和快恢复(fast recovery)

(1)慢开始

当一条TCP开始建立连接时,cwnd的值会初始化一个MSS的较小值。在慢启动的方式中,cwnd的值会初始化为一个MSS,并且每次传输报文确认后会增加一个MSS,cwnd的值会变成2个MSS,这两个报文段都传输成功后每个报文段加一,会变成4个MSS,以此类推,每成功一次cwnd的值会翻倍。

(2)拥塞避免

为了防止cwnd增长过大引起网络拥塞,还需要设置一个慢开始门限ssthresh状态变量。当cwnd > ssthresh时停用慢开始算法而改用拥塞避免算法,具体表现为加法线性规律缓慢增大。

(3)快重传和快恢复

有时候个别报文段就会在网络中意外丢失,但是实际上网络并未发生拥塞。如果发送方迟迟收不到确认,就会产生超时,并误认为网络发生了拥塞。这就导致发送方错误地开启慢启动模式,又将拥塞窗口设置为1,不必要的降低了传输效率。

快重传算法规定发送方只要一连收到3个重复确认,就可以知道现在并未出现网络拥塞,而只是接收方少收到一个报文段,并对此报文段进行重传。

在3-ACK点处发送方知道现在只是丢失了个别的报文段,于是不启动慢开始,而是执行快恢复算法。这时发送方第二次调整门限值,使ssthresh = cwnd / 2,开始执行拥塞避免算法。

 

三、流量控制和拥塞控制的区别

四、例题

 超时之后ssthresh = cwnd / 2 = 16 / 2 =8,之后执行慢开始,第一个RTT是2,第二次RTT是4,第三个RTT是8,此时cwnd = ssthresh = 8,执行拥塞避免算法,每次增长1,第四个RTT是9

 

 

 

http://www.mmbaike.com/news/100176.html

相关文章:

  • 专业网站制作哪家强代发推广百度首页包收录
  • 我们的爱情网站制作百度站内搜索提升关键词排名
  • 个人简历word文档模板seo研究中心学员案例
  • 有哪些网站做自建房设计nba篮网最新消息
  • 电脑本地网站建设网络营销可以做什么工作
  • python 做下载网站公司网页怎么做
  • 如何做网站拉动条seo在中国
  • 城乡厅建设部网站首页企业seo关键词优化
  • wordpress修改字体加载百度seo可能消失
  • html5做旅游网站网络推广策划方案模板
  • 网站建设及优化 赣icp独立站seo
  • 深圳中心网站建设指数分布的分布函数
  • 有哪些可以在线做app的网站有哪些google play官网
  • 网站建设找哪家好全网营销外包
  • 网站导航栏一般有什么内容chrome官网下载
  • 网站关于我们模板seo实战培训学校
  • wordpress 搭建多站点最近一周新闻热点回顾
  • nas可以做网站下载服务器吗百度地图优化
  • 企业外部网站建设广州网站优化方式
  • 公司网站内容如何做网络营销的八种方式
  • fomo3d 网站怎么做关键词优化快速
  • 沈阳模板建站公司推荐衡水网站seo
  • 做问卷赚钱最好似网站天津seo优化
  • 广州网站建设优化网站主题
  • 一份完整的活动策划网站优化有哪些类型
  • 新疆克拉玛依区建设局网站seo排名是什么
  • 公司网站代码模板下载服务器ip域名解析
  • 济南环保局官方网站浙江网站建设制作
  • 制作网站专业网络营销策略包括哪四种
  • 网站设计有哪几种设计方法网络推广整合平台