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

千博医院网站模板seo优化代理

千博医院网站模板,seo优化代理,旅游网站的建设背景,查找5个搜索引擎作弊的网站5.6.1以字节为单位的滑动窗口 一、滑动窗口的核心设计目的 提升效率:解决停等协议(每次发报文必须等待 ACK)的低效问题,允许批量发送数据和批量确认流量控制:接收方通过窗口大小动态调整发送方的发送速率&#xff0c…

5.6.1以字节为单位的滑动窗口

一、滑动窗口的核心设计目的

  1. 提升效率:解决停等协议(每次发报文必须等待 ACK)的低效问题,允许批量发送数据和批量确认
  2. 流量控制:接收方通过窗口大小动态调整发送方的发送速率,防止接收方缓冲区溢出
  3. 按序到达:通过字节序号管理保证数据的顺序性

二、核心概念图解

发送方窗口接收方窗口的示意图:

在这里插入图片描述

在这里插入图片描述

三、窗口参数定义(字节级别)

1. 发送方核心参数

参数描述
SND.WND接收方通告的接收窗口大小(动态变化)
SND.UNA最早的未确认字节序号(窗口左边界)
SND.NXT下一个要发送的字节序号(窗口右边界)
可用窗口= SND.WND - (SND.NXT - SND.UNA)

2. 接收方核心参数

参数描述
RCV.WND当前接收窗口大小(影响通告值)
RCV.NXT期望接收的下一个字节序号

四、窗口运行动态流程

在这里插入图片描述

五、关键行为规则

  1. 发送窗口滑动条件

    • 收到新的 ACK 确认时,左边界 SND.UNA 向右移动
    • 示例:若收到 ACK=1500,窗口左边界从 1000 移动到 1500
  2. 接收窗口调整规则

    • 每次读取缓冲区数据后,右边界扩展(RCV.NXT 右移)
    • 通过 TCP 头部的 Window 字段向对端通告最新窗口大小
  3. 零窗口处理

    • 接收方窗口=0 时,发送方启动持续计时器(Persist Timer)
    • 定期发送 1 字节探测报文,检测窗口是否重新开放

六、典型问题场景

场景 1:发送窗口耗尽

在这里插入图片描述

场景 2:接收方处理变慢

在这里插入图片描述

七、与 RFC 定义的关联

  1. RFC 793(TCP 基础规范)定义滑动窗口基本机制
  2. RFC 1323(窗口扩展选项)支持超过 65KB 的窗口大小
  3. RFC 7323(TCP 扩展)优化窗口管理算法

5.6.2超时重传时间的选择

一、核心概念

  1. RTT(Round-Trip Time)

    • 数据包从发送到接收确认(ACK)的往返时间。
    • RTT是动态变化的,受网络延迟、拥塞等因素影响。
  2. RTO(Retransmission Timeout)

    • 超时重传时间,即发送方等待ACK的最大时间。若超时未收到ACK,触发重传。
    • 目标:略大于当前网络的RTT,避免过早重传或不必要等待。

二、RTO计算原理

1. 动态估算RTT

通过平滑RTT(SRTT)RTT偏差(DevRTT) 动态调整RTO,公式如下:

SRTT = (1 - α) * SRTT + α * SampleRTT
DevRTT = (1 - β) * DevRTT + β * |SampleRTT - SRTT|
RTO = SRTT + 4 * DevRTT
  • α、β:平滑因子(RFC 6289建议α=1/8,β=1/4)。
  • SampleRTT:最新测量的实际RTT值。

2. 初始RTO

  • 未采集到RTT样本时,默认初始RTO为1秒(Linux)。
  • 当首次获得SampleRTT后,SRTT=SampleRTT,DevRTT=SampleRTT/2。

3. 超时后的退避机制

  • 每次超时后,RTO按指数增长:新RTO = 旧RTO * 2
  • 避免拥塞加剧,逐步试探网络的恢复情况。

三、关键流程

流程示意图

在这里插入图片描述

流程解析

  1. 发送数据包:启动定时器,记录发送时间。
  2. 接收ACK
    • 计算SampleRTT(当前时间 - 包发送时间)。
    • 更新SRTT和DevRTT。
    • 重新计算RTO = SRTT + 4×DevRTT。
  3. 未收到ACK且超时
    • 触发重传,RTO翻倍。
    • 避免立即使用新RTT样本(Karn算法,排除重传干扰)。

四、举例说明

假设初始RTT样本为200ms,α=0.125,β=0.25:

步骤事件计算过程RTO结果
1首次SampleRTT=200msSRTT=200ms, DevRTT=100ms → RTO = 200+4×100=600ms600ms
2新SampleRTT=250msSRTT=(0.875×200)+(0.125×250)=206.25ms
DevRTT=(0.75×100)+0.25×|250 - 206.25|
250-206.25
3超时重传RTO翻倍(如原RTO 550ms → 新RTO 1100ms)1100ms

五、重要细节

  1. Karn算法

    • 重传时丢弃对应SampleRTT,避免因ACK对应原始包还是重传包而产生误差。
  2. Linux内核参数

    • tcp_retries2控制最大重传次数,默认15次。
    • 初始RTO为1秒,动态调整后上限通常为120秒。
  3. 三次握手阶段的RTO

    • SYN报文初始RTO为1秒,后续指数退避(1s, 3s, 7s…)。

六、总结

  • 核心逻辑:通过动态估算RTT均值(SRTT)和波动(DevRTT),确保RTO适应网络变化。
  • 设计目标:平衡及时重传与网络拥塞控制,保障传输效率和可靠性。

5.6.3选择确认SACK

一、为什么需要SACK?

在传统TCP协议的累积确认机制中,接收方只能通过ACK确认连续接收到的数据。例如:

  • 发送方发送序列号1-1000、1001-2000、2001-3000的数据;
  • 若中间段1001-2000丢失,接收方只能持续回复ACK=1001;
  • 发送方被迫重传1001-3000所有数据(即使2001-3000已到达)。

SACK(Selective Acknowledgment)允许接收方明确告知发送方哪些数据块已成功接收,发送方只需重传实际丢失的部分,提升效率。

二、SACK工作机制

1. 报文结构

SACK通过TCP头部选项字段实现,格式如下:

| Kind=5 | Length | Left Edge 1 | Right Edge 1 | ... | Left Edge N | Right Edge N |
  • Kind=5:标识该选项为SACK;
  • Length:选项总长度;
  • Left Edge/Right Edge:表示接收方已成功接收的数据块区间(左闭右开)。

2. 交互流程

SACK在数据丢失时的处理流程:
在这里插入图片描述

  1. 发送方发送连续的4个数据段;
  2. 第二个数据段丢失,后续第三个和第四个被接收方缓存;
  3. 接收方发送ACK=1001,并携带SACK块2001-4000(已接收的非连续数据区间);
  4. 发送方仅需重传丢失的1001-2000段;
  5. 接收方收到后发送累积确认ACK=4001。

3. 附加规则

  • SACK需与普通ACK配合使用,ACK仍指向连续数据的最高字节;
  • 最多可携带3个SACK块(受TCP选项字段长度限制);
  • 接受方需维护接收缓冲区列表以跟踪非连续数据块。

三、SACK对性能的影响

  • 减少冗余重传:仅重传缺失的块,避免带宽浪费;
  • 适应高丢包率场景:在无线网络或拥塞链路中表现更好;
  • 支持乱序接收:允许非连续数据块标记,提升吞吐量。

四、配置与实现

  • Linux启用SACK:默认开启,可通过net.ipv4.tcp_sack参数调整;
  • 发送方策略:需实现接收SACK块解析,并维护未确认数据的SACK映射。例如,联合使用快速重传和SACK来优化网络效率。

关键总结

通过SACK机制,TCP实现了对非连续数据块的精确确认,在高丢包或乱序场景下大幅提升传输效率。


文章转载自:

http://F0Zlimgj.hmwjk.cn
http://cZzIZ6pZ.hmwjk.cn
http://pLOOGVjv.hmwjk.cn
http://6kw83W3J.hmwjk.cn
http://vuwNUa9H.hmwjk.cn
http://z66R23PT.hmwjk.cn
http://cNfcGMQg.hmwjk.cn
http://xpeIqax2.hmwjk.cn
http://YBwy2tam.hmwjk.cn
http://7RTevhDC.hmwjk.cn
http://qiaj1S4E.hmwjk.cn
http://vRSEidy0.hmwjk.cn
http://O7hM9Iwo.hmwjk.cn
http://f319sGKN.hmwjk.cn
http://fwBxC5Em.hmwjk.cn
http://ciu26W7I.hmwjk.cn
http://5xZTveyj.hmwjk.cn
http://yZoV4bfI.hmwjk.cn
http://29Yaeca8.hmwjk.cn
http://VmmIAZxe.hmwjk.cn
http://KpMaaiVV.hmwjk.cn
http://JDW0C5yc.hmwjk.cn
http://D1hMqTfw.hmwjk.cn
http://9jsauPJO.hmwjk.cn
http://L7rgQDO0.hmwjk.cn
http://ymOXzD3x.hmwjk.cn
http://2sI0VjO5.hmwjk.cn
http://EFry2AlH.hmwjk.cn
http://Ob3EVyxP.hmwjk.cn
http://1929ShQ2.hmwjk.cn
http://www.dtcms.com/wzjs/704340.html

相关文章:

  • 电商网站设计平台电商网站在线支付怎么做
  • 移动端网站开发介绍成都网站建设 四川冠辰网站建设
  • 收录网站是什么意思网站背景自动变色
  • 网站的建设步骤有哪些网络舆情平台
  • 广东佛山建网站免费推广网站2023
  • 个人网站网页设计wordpress海报式分享
  • 漳州网站开发制作棋牌重庆旅游
  • 网站建设公司整站源码苏州有哪些网站制作公司
  • 京东网站建设erp系统界面
  • 做电商网站公司简介广州远洋建设实业公司网站
  • 郴州建站网上购物平台类型
  • 网站升级改版需要几天网站开发编码选择一般是
  • 旅游类网站建设方案沈阳网站优化 唐朝网络
  • 电子商务网站建设的核心是什么微信浏览为网站的缓存怎么清理
  • 网站建设哪家服务态度好哈尔滨网站建设有哪些
  • 北仑建设局质监站网站软件技术专升本难吗
  • 盐城企业做网站怎么制作视频模板
  • 国外网站做网站主播如何做网络营销宣传
  • 个人博客网站建设选题说明唯品会信息科技有限公司
  • 黄冈网站搭建推荐正规专业的网站建设公
  • 网址导航网站建站网站模板源码下载
  • 娱乐网站后缀是什么全球电子商务网站
  • 常州二建建设有限公司官方网站企业网站手机版模板
  • 怎样看网站建设wordpress插件查询
  • 钓鱼网站在线制作google adsense wordpress 插件
  • 个人微信小程序免费制作网络优化工程师
  • 网站备案变更单位名称网站基础建设和管理暂行办法
  • 营销型企业网站有哪些平台网站备案照
  • 做内衣模特接广告网站做网站有流量就有收入吗
  • 怎么建设网站首页wordpress建站用模板的弊端