分享
利用网络缓存队列长度预测UDP拥塞程度研究_赵昶宇.pdf
下载文档

ID:2574529

大小:1.57MB

页数:3页

格式:PDF

时间:2023-07-24

收藏 分享赚钱
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
利用 网络 缓存 队列 长度 预测 UDP 拥塞 程度 研究 赵昶宇
科技与创新Science and Technology&Innovation302023 年 第 13 期文章编号:2095-6835(2023)13-0030-03利用网络缓存队列长度预测 UDP 拥塞程度研究赵昶宇1,胡 平2(1.天津津航计算技术研究所,天津 300308;2.海军工程大学舰船与海洋学院,湖北 武汉 430033)摘要:由于缺乏拥塞控制机制,利用 UDP 协议传输流媒体业务时会带来网络拥塞问题,导致流媒体在播放时出现不连续、卡顿甚至凝固的现象。阐述了 UDP 协议的传输特性,深入分析了网络报文拥塞控制机制和拥塞控制算法,并提出了一种预测 UDP 拥塞程度的方法。该方法首先建立流媒体数据包发送缓存队列,发送端将要发送的报文存入缓存队列;然后根据当前流媒体数据包发送缓存队列的长度与缓存队列的最佳长度的偏差程度定义拥塞级别;最后,根据拥塞级别和拥塞判断方法,采用和式增加和和式减少的速率控制算法对流媒体进行拥塞控制。关键词:网络缓存队列;UDP 协议;拥塞控制;流媒体中图分类号:TP393文献标志码:ADOI:10.15913/ki.kjycx.2023.13.008随着远程教育、视频会议、视频点播等流媒体的日益兴起和发展,这些流媒体业务的强时基特性对网络时延和播放流畅性提出了越来越高的要求。当互联网上访问的用户和应用的数量迅速增长时,如果不能及时采用某种机制调度网络资源,则将会导致网络出现拥塞现象。当出现网络拥塞时,TCP 拥塞控制机制会以极快的速度降低网络数据传输速率,破坏了流媒体数据流的平滑性。同时,TCP 拥塞控制机制还具有网络报文数据超时重传特点,从而更是增加了拥塞时的传输数据量,不能保证流媒体的时延要求。因此,流媒体业务中不适合采用 TCP 协议进行传输。UDP 是一种无连接的网络传输协议,由于它不采用报文接收确认和超时重传机制,使其在传输流媒体时比 TCP 协议更具优势。但是 UDP 协议在传输流媒体时也有不足,它本身不提供拥塞和流量控制机制。当网络拥塞时,会出现系统吞吐率下降,丢包率增大,甚至导致整个网络系统瘫痪。本文针对流媒体的传输特点,深入研究目前网络报文拥塞控制机制,设计了一种预测 UDP 拥塞程度的方法,能够在初期检测到网络拥塞并对传输速率进行有效的控制,以提高网络资源的利用率,降低数据包的丢包率。1UDP 协议传输特性UDP 协议是一种不可靠传输协议,它无法确保分组传输数据的可靠性。一旦分组数据在通信传输过程中出现丢包,UDP 协议无法对此做出检测和重传操作。UDP协议的分组封装如图 1 所示,分组头格式如图 2 所示。图 2 中,源端口号:网络数据发送端为应用程序分配的端口号。目的端口号:网络数据接收端为应用程序分配的端口号。长度:包括 8 个字节的 UDP 分组头长度和 UDP 数据长度。校验和:对图 1 中的 IP 分组头、UDP 分组头以及 UDP 数据进行两次取反后得到校验和值。图 1UDP 协议的分组封装图图 2UDP 分组头格式由于 UDP 协议是无连接的协议,因此在数据的发送端和接收端之间既不需要建立连接,也无需维护建立连接所必需的变量和相关信息。基于 UDP 协议发送数据时,数据发送端仅需获悉发送报文的目的地址,便能实现数据的发送工作。一旦数据发送完毕,既不会对数据报文进行错误和超时检测,也不会统计是否有数据丢包产生。当UDP数据报文抵达数据接收端时,将数据报文存放在消息队列中,等待应用程序读取。TCP 协议是面向连接的协议,它是当前互联网上使用最广泛的网络传输协议。TCP 协议是严格按照报文发送顺序来进行数据接收,而 UDP 协议在网络拥塞时可能会出现乱序接收。与 TCP 协议相比,UDP 协议在传输流媒体业务时具有以下优点1。第一,在网络开始通信前,双方无需建立连接。在需要进行数据传输时,只需将需要发送的数据发送XScience and Technology&Innovation科技与创新2023 年 第 13 期31到报文目的地址中即可。在 UDP 协议下,网络数据的通信传输速率只与数据收发端生成数据的速度、计算机处理器性能以及网络带宽有关,不会导致流媒体在传输中出现音频的不连续或者视频的凝固等现象。第二,UDP 协议在通信过程中无需维护建立连接所必需的变量和相关信息,极大地减少了系统开销,降低了流媒体的误码率和丢包率,并保证了流媒体播放的平滑性。第三,由于 TCP 协议的报文头有 20 个字节,而UDP 协议的报文头只有 8 个字节。相比 TCP 协议,UDP 协议的非数据区的系统开销较小。第四,TCP 协议当检测到有报文数据丢失时,它的拥塞控制机制会减少其拥塞窗口,严重影响流媒体传输的吞吐量。而 UDP 协议中没有 TCP 协议那样复杂的速率调整算法,UDP 传输吞吐量也仅与数据收发端生成数据的速度、计算机处理器性能以及网络带宽有关,使得UDP协议在流媒体传输速率上有较大优势,并节省了软硬件资源。2拥塞控制机制当流媒体网络在某时刻存在大量的通信报文,导致流媒体网络的整体传输性能下降时,就出现了网络拥塞的现象。这种拥塞现象产生的根本原因是网络用户的需求量远远大于网络自身能够提供的资源总和,即出现了“需求”远大于“供给”的现象。在流媒体网络中大量的用户共享使用有限的流媒体资源,一方面,若不采用合理的“接纳控制”算法,无法做到依据流媒体资源的总量去控制用户的数量;另一方面,若不采取相应的“中央控制”算法,流媒体网络也无法限制用户使用资源的数量。随着互联网上用户数量和网络应用数量的飞速增长,若不采取合理的控制机制协调网络资源的使用,整个网络系统必将导致拥塞甚至崩溃状态。传统的通过增加网络缓存、增大网络带宽容量或是提高网络节点处理能力的方法不仅不能有效避免网络拥塞的产生,反而可能会加重网络的拥塞程度。因此,基于 UDP 协议研究流媒体网络的拥塞控制机制,对当前流媒体网络具有十分重要的实际意义2。所谓的拥塞控制机制,通常包含 2 个方面的含义。一方面是“防患于未然”,采用某些措施来避免网络拥塞现象的发生;另一方面,当网络出现拥塞现象时,采用合理的控制方法对当前的拥塞作出相应的反应。拥塞控制不同于流控制,流控制通常重点关注接收方,流控制是为了使发送方的发送速率不大于接收方的接收能力;而拥塞控制通常重点关注网络节点的环境,使得网络负载不大于网络本身的传送能力。因此,产生了 2 种拥塞控制算法,即拥塞避免算法和拥塞恢复算法。拥塞避免算法的目的是使得流媒体网络运行在高吞吐量和低延迟的状态下,拥塞恢复算法的目的是把流媒体网络从当期的拥塞状态中恢复出来。根据网络拥塞控制的流量特征,通常将拥塞控制算法分为开环控制和闭环控制两大类。若能准确获悉流量特征或网络性能要求时,适用于应用开环控制;若不能准确描述流量特征或是当前系统未提供系统资源预留时,适用于应用闭环控制。很显然,开环控制是一种理想状态下的控制算法。由于实际的流媒体网络是一个不断变化的复杂系统,很难在设计之初就能获知流量的实际特征。因此,在互联网中最常使用的是闭环控制算法。闭环控制分为 3 个阶段,分别为拥塞检测、反馈拥塞信息给拥塞控制点和根据拥塞信息调整拥塞控制点并消除拥塞。虽然闭环控制算法能够根据网络的状态进行动态调整和适应,但它的算法性能经常受到拥塞反馈延迟的影响。一旦拥塞发生点和拥塞控制点之间的反馈延迟值变大时,该算法的性能会急剧下降。从拥塞控制算法的实施地点来讲,可将拥塞控制算法分为基于端到端的拥塞控制和基于路由器的拥塞控制。前者应用于网络中的各个端系统中,根据路由器或者接收端的反馈信息调整发送速率;后者应用于路由器中,在网络拥塞发生时向端系统发送拥塞信号。从控制类型而言,可将拥塞控制分为窗口控制和速率控制。窗口控制基于流量控制的控制策略,它根据当前丢包率或确认包的反馈情况来调节拥塞窗口的大小。速率控制是根据当前拥塞情况对网络报文的发送速率进行调节的控制策略。3利用网络缓存队列预测 UDP 拥塞程度3.1计算缓存队列的最佳长度在基于 UDP 协议进行网络传输时,发送端首先建立一个发送缓存队列,在发送之前将要发送的每一包报文存入所述发送缓存队列中,修改所述发送缓存队列的长度3。在发送完报文后,在发送端收到接收端反馈的确认报文时,则发送端将该报文移出所述发送缓存队列,并修改所述发送缓存队列的长度。若每次发送时,所述发送缓存队列的长度越来越长,表明网络出现拥塞现象;反之,表明网络处于空闲状态。在网络处于既不空闲也不拥塞状态下缓存队列的最佳长度 L0为:|+=ln/ln2120cccL科技与创新Science and Technology&Innovation322023 年 第 13 期式中:c1(0c11)和 c2(0c21)为权值,且 c1+c2=1。=/式中:为以太网在单位时间内传输数据帧的平均个数的数值;为单位时间内进入缓存队列的平均数据帧个数的数值;为以太网在单位时间内传输数据帧的平均个数的数值。3.2定义 UDP 拥塞级别令 L 为当前流媒体数据包发送缓存队列的长度,根据当前流媒体数据包发送缓存队列的长度与缓存队列的最佳长度 L0的偏差程度定义 UDP 拥塞级别。预测 UDP 拥塞级别的流程图如图 3 所示。图 3预测 UDP 拥塞级别的流程图将拥塞级别划分为 2 个等级,具体如表 1 所示。表 1拥塞级别表项目12网络状态空闲拥塞L的范围0LL0L0L3.3根据拥塞级别和拥塞判断方法调整发送速率本文采用速率控制的方法对流媒体网络的数据包进行发送速率调整。发送完报文后,在发送端收到接收端反馈的确认报文时,判断流媒体网络的拥塞级别,根据当前网络的拥塞级别调整数据包发送速率。本文采用自适应参数设置的和式增加和和式减少的速率控制方法,充分满足了流媒体数据包在传输过程中对负载平滑性的要求。假设流媒体数据包的传输速度范围为Rmin,Rmax。其中,Rmin表示流媒体数据包可接受的最小传输速率,Rmax表示流媒体数据包的目标速率。令 Rnow为流媒体数据包的即时发送速率。当网络处于空闲状态时,即 0LL0,流媒体数据包的即时发送速率 Rnow为:Rnow=minRnow+,Rmax(1)此时网络处于欠载状态,为了能快速充分地利用网络资源,的取值由下式决定:%101max00|+-=RLLL(2)即的取值范围为Rmax10%,Rmax20%。当网络处于拥塞状态时,即 L0L,流媒体数据包的即时发送速率 Rnow为:Rnow=maxRnow,Rmin(3)此时网络处于拥塞状态,为了实现网络负载平滑,的取值由下式决定:%100)(minmax00-|-=RRLLL(4)式(1)(4)中,为和式加因子的数值,为和式减因子的数值。和的值根据当前流媒体数据包发送缓存队列的长度 L 的值动态确定。4结束语流媒体业务在基于 UDP 协议传输的过程中,由于网络拥塞可能会导致出现误码率和丢包率增多、网络时延增大等,从而带来画面播放不流畅的问题。为避免上述问题产生,本文提出了一种预测 UDP 拥塞程度的方法。采用了自适应参数设置的和式增加和和式减少的速率控制方法,既能在流媒体网络发生严重拥塞前降低数据包发送速率,又能在流媒体网络恢复空闲时提高数据包发送速率。该方法计算简单,通过动态调整数据包发送速率,充分提高了流媒体网络的吞吐量,并大大降低了网络通信的延迟率和丢包率。参考文献:1叶成荫,曹宇,刘琳琳.TCP 网络自适应有限时间拥塞控制J.电机与控制学报,2018,22(12):107-1132万玉铸,徐志江,卢为党,等.具有高吞吐量的可靠 UDP协议J 计算机工程与设计,2017,38(12):3202-3206,32123姜彬彬,王玥 一种用于拥塞网络节点缓存队列长度控制方法J.计算机仿真,2016,33(8):280-283作者简介:赵昶宇(1982),男,陕西汉中人,工学硕士,高级工程师,研究方向为嵌入式系统软件测试。胡平(1981),男,湖南衡阳人,博士,副教授,研究方向为武器系统与运用工程。(编辑:张超)LL 不大于缓冲

此文档下载收益归作者所有

下载文档
你可能关注的文档
收起
展开