CN112203328A - 一种基于dccp的拥塞控制方法、装置及电子设备 - Google Patents

一种基于dccp的拥塞控制方法、装置及电子设备 Download PDF

Info

Publication number
CN112203328A
CN112203328A CN202011058262.5A CN202011058262A CN112203328A CN 112203328 A CN112203328 A CN 112203328A CN 202011058262 A CN202011058262 A CN 202011058262A CN 112203328 A CN112203328 A CN 112203328A
Authority
CN
China
Prior art keywords
trip delay
data packet
round
sending
congestion
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011058262.5A
Other languages
English (en)
Other versions
CN112203328B (zh
Inventor
刘拥民
王靖枫
罗皓懿
刘一鸣
杨钰津
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Central South University of Forestry and Technology
Original Assignee
Central South University of Forestry and Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Central South University of Forestry and Technology filed Critical Central South University of Forestry and Technology
Priority to CN202011058262.5A priority Critical patent/CN112203328B/zh
Publication of CN112203328A publication Critical patent/CN112203328A/zh
Application granted granted Critical
Publication of CN112203328B publication Critical patent/CN112203328B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • H04W28/14Flow control between communication endpoints using intermediate storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本说明书一个或多个实施例提供一种基于DCCP的拥塞控制方法、系统及电子设备,能够保证无线传感网络中数据流量传输的高效性与公平性。所述方法包括:接收端缓存接收数据包;在接收到所述数据包时向发送端返回接收确认信息;在接收到所述数据包后,对所述数据包进行检测查重;所述发送端针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制。所述系统包括发送模块与接收模块。所述电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的实现所述拥塞控制方法的计算机程序。

Description

一种基于DCCP的拥塞控制方法、装置及电子设备
技术领域
本说明书一个或多个实施例涉及技术网络数据传输领域,尤其涉及一种基于DCCP的拥塞控制方法、装置及电子设备。
背景技术
传输控制协议(Transmission Control Protocol,TCP)是一种面向连接的、可靠的数据传输协议,内置拥塞控制机制,经过多年来不断的性能改进,现已具有较强的高效性与鲁棒性。TCP协议也被广泛应用与无线传感网络中,但TCP协议的拥塞控制算法在无线传感网络中的应用性能却很差,不同流量间存在严重的不公平性。
发明内容
有鉴于此,本说明书一个或多个实施例的目的在于提出一种基于DCCP的拥塞控制方法、装置及电子设备,能够保证无线传感网络中数据流量传输的高效性与公平性。
基于上述目的,本说明书一个或多个实施例提供了一种基于DCCP的拥塞控制方法,包括:
接收端缓存接收数据包;
在接收到所述数据包时向发送端返回接收确认信息;
在接收到所述数据包后,对所述数据包进行检测查重;
所述发送端针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制。
可选的,所述发送端针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制,包括:
对于无线传感网络中非传感器节点,所述发送端根据所述接收确认信息确定基础往返时延与加权平均往返时延,并根据所述基础往返时延与所述加权平均往返时延确定不同运行状态下的所述发送速率;
对于无线传感网络中传感器节点,所述发送端根据所述接收确认信息确定加权平均往返时延,并根据所述加权平均往返时延对拥塞窗口大小进行控制。
可选的,所述发送端根据所述基础往返时延与所述加权平均往返时延确定不同运行状态下的所述发送速率,包括:
正常状态下,根据所述基础往返时延与所述加权平均往返时延的比值调整所述发送速率;
拥塞状态下,若所述接收确认信息中显式拥塞通告未丢包,则所述发送速率调整与正常状态下相同;
若所述显式拥塞通告丢包,则控制所述发送速率减半;
故障状态下,发送探测数据包,调整所述探测数据包的发送速率为每经过一段重传超时时间发送一次;
错误状态下,根据错误率设定调整参数,根据所述调整参数调整所述发送速率。
可选的,所述基础往返时延为网络往返时延的最小值;
当所述发送端进入故障状态,根据所述探测数据包的往返时间及相应的确认信息对所述基础往返时间进行重置;
故障状态排除后,所述发送速率根据重置后的基础往返时延与原基往返时延之比确定。
可选的,所述发送端根据所述加权平均往返时延对拥塞窗口大小进行控制,包括:
正常状态下,根据所述加权平均往返时延调整每个网络往返时延时间内所述拥塞窗口大小;
拥塞状态下,在重传超时时间内探测带包头的数据包,直到探测到所述接收确认信息,成功接收所述接收确认信息后,对拥塞窗口大小进行重置,转为正常状态。
可选的,所述发送端根据所述接收确认信息确定加权平均往返时延,包括:
根据所述接收确认信息中的时间戳确定所述加权平均往返时延:
Figure BDA0002711484240000021
其中,averageRTT表示所述加权平均往返时延,RTT表示网络往返时延,currentRTT表示当前网络往返时间。可选的,所述根据所述加权平均往返时延调整每个网络往返时延时间内所述拥塞窗口大小,包括:
根据所述加权平均往返时延控制下一次数据传输的拥塞窗口大小为:
cwnd′=cwnd+[1+Int(1-cwnd×(averageRTT-baseRTT)/RTT)]
其中,cwnd表示最近一次所述拥塞窗口大小,baseRTT表示基础往返时延。可选的,所述对拥塞窗口大小进行重置,包括:
所述发送端重置网络往返延时与基础往返延时,所述基础往返延时为所述网络往返延时的最小值;
根据原基础往返延时与重置后基础往返延时之比对所述拥塞窗口大小进行调整。
基于上述目的,本说明书一个或多个实施例提供了一种基于DCCP的拥塞控制系统,包括接收模块与发送模块;
所述接收模块,被配置为缓存接收数据包,在接收到所述数据包时向所述发送模块返回接收确认信息,在接收到所述数据包后,对所述数据包进行检测查重;
所述发送模块,被配置为针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制。
基于上述目的,本说明书的一个或多个实施例提供了一种基于DCCP的拥塞控制电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述基于DCCP的拥塞控制方法。
从上面所述可以看出,本说明书一个或多个实施例提供的一种基于DCCP的拥塞控制方法、系统及电子设备,应用于无线传感网络,以传统的数据报拥塞控制协议(DategramCongestion Control Protocol,DCCP)通信架构为基础,添加基于接受确认信息的可靠性层,保证了在无线传感网络中数据流量的可靠高效传输;通过对DCCP协议中拥塞控制标识符(CCID)的改动,实现基于上述CCID的拥塞控制机制的改进,无线传感网络中的数据发送端可以根据改进后的拥塞控制机制对数据发送速率进行调控,能够保证数据流量传输的公平性。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为无线传感网络的网络结构示意图;
图2为本说明书一个或多个实施例提供的一种基于DCCP的拥塞控制方法示意图;
图3为本说明书一个或多个实施例提供的一种基于DCCP的拥塞控制方法中发送端对数据包发送速率进行控制的方法示意图;
图4为本说明书一个或多个实施例提供的一种基于DCCP的拥塞控制系统结构示意图;
图5为本说明书一个或多个实施例提供的一种基于DCCP的拥塞控制电子设备结构示意图;
图6为本说明书一个或多个实施例提供的一种基于DCCP的拥塞控制方法的仿真网络场景示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
传输控制协议(Transmission Control Protocol,TCP)是一种面向连接的、可靠的数据传输协议,内置拥塞控制机制,经过多年来不断的性能改进,现已具有较强的高效性与鲁棒性。目前,互联网上包括无线传感网络在内的绝大多数的流量都依赖于TCP提供的拥塞控制机制。
TCP协议也被广泛应用与无线传感网络中,但TCP协议的拥塞控制算法在无线传感网络中的应用性能却很差。TCP将数据包错误作为网络拥塞的标志,在无线传感网络传输中,由于无线信道的衰落和干扰,误码率(BER)较高,每个错误都表示网络拥塞触发拥塞控制机制,会影响吞吐量和链路利用率。此外,当节点没有电力供应时,现有的链路可能会中断,两个节点之间的路由过载时,路由协议必须选择新的路由。如果建立新路由的时间长于RTO(恢复时间目标),TCP发送方将调用拥塞控制并重新进入慢启动阶段。能量耗尽还可能导致网络重新分区,如果TCP发送方和接收方位于两个不同的分区中,TCP发送方会调用拥塞控制并以指数方式减少重传。如果分区持续的时间超过几个RTO,则可能导致网络卡顿;即使路由已经重建,发送方仍旧需要等待,直到RTO计时器过期。
TCP协议应用到无线传感网络中不同流量间存在严重的不公平性。参考图1所示,无线传感网络与无线网络不同,由有线连接部分和无线连接部分组成。无线传感网络通常由大量密集部署的小型无线传感节点(通常称为节点或微粒)组成。节点测量其周围环境的一些环境条件。然后,这些测量数据被转换成信号,信号经过处理后便可以反映相关现象的一些特征。收集的数据被传输到一个被称为汇聚节点的特殊节点,该节点通常以多跳为基础。然后,接收器节点向用户发送数据。根据用户与网络之间的距离,可能需要一个网关通过互联网或者卫星二者连接。在无线传感网络中,TCP流(从有线部分到无线部分)与共存的TCP流(从无线部分到有线部分)获得更多的带宽。当混合流由于暴露和隐藏的节点效应存在时,IN流可以获得更高的带宽份额。TCP自身的超时和回退机制进一步加剧了不公平性。
针对上述问题,本发明实施例提供了一种基于DCCP的拥塞控制方法、系统及装置,提供一种新的DCCP协议,在传统的DCCP协议基础上添加ACK层实现可靠性传输,并对其中拥塞控制标识符CCID进行改进,实现发送方对数据包发送速率的控制,从而保证数据传输的公平性。
在一方面,本说明书的一个或多个实施例提供了一种基于DCCP的拥塞控制方法。
如图2所示,本说明书的一个或多个实施例提供了一种基于DCCP的拥塞控制方法,包括:
S1:接收端缓存接收数据包;在接收到所述数据包时向发送端返回接收确认信息;
S2:在接收到所述数据包后,对所述数据包进行检测查重;
S3:所述发送端针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制。
所述基于DCCP的拥塞控制方法中,接收端接收到数据包之后即返回接收确认信息ACK,在现有DCCP协议基础上添加基于ACK的可靠性层,根据ACK信息,所述发送端就能够确实数据包是否发送成功,对于传送过程中丢失或数据内容损坏的数据包进行重传,对于成功接收到的数据包进行检测查重,删除重复数据包并将所述数据包按顺序发送至应用程序,保证了数据传输的高效性。
所述基于DCCP的拥塞控制方法,采用基于速率的拥塞控制机制,避免TCP拥塞控制机制中频繁的慢启动。在数据传送过程中,针对不同的网络运行状态,发送端根据所述ACK信息对数据包的发送速率进行控制。公平性是指在每个链路上,任何经过流都有权享有相等的链路容量,所述基于DCCP的拥塞控制方法中通过对发送速率的控制,保证数据流传输的公平性。
如图3所示,在本说明书的一个或多个实施例所提供的一种基于DCCP的拥塞控制方法中,所述发送端针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制S3,包括:
S31:对于无线传感网络中非传感器节点,所述发送端根据所述接收确认信息确定基础往返时延与加权平均往返时延,并根据所述基础往返时延与所述加权平均往返时延确定不同运行状态下的所述发送速率;
S32:对于无线传感网络中传感器节点,所述发送端根据所述接收确认信息确定加权平均往返时延,并根据所述加权平均往返时延对拥塞窗口大小进行控制。
所述基于DCCP的拥塞控制方法中,所述接收确认信息ACK包括DCCP协议规范中所指定的ACK向量选项,所述ACK向量选项包含有接收信息,对于无线传感网络而言,其中的无线连接部分,所述ACK向量选项还支持显式拥塞通告ECN。所述发送端接收到所述接收确认信息ACK,能够确定网络往返时延RTT,以及基础往返时延baseRTT、加权加权平均往返时延averageRTT,并据此针对所述无线传感网络中的有线连接部分(即非传感器节点)和无线连接部分(即传感器节点)的不同工作状态对数据包的发送速率进行调节。网络往返时延RTT(Round Trip Time)表示从发送端发送数据开始,到发送端收到来自接收端的接收确认信息ACK(接收端收到数据后便立即发送确认,不包含数据传输时间)总共经历的时间。
所述基于DCCP的拥塞控制方法,针对无线传感网络中TCP协议存在不公平性的问题所在,将无线传感网络的有线连接部分和无线连接部分区分开,有针对性的采取不同的速率控制策略,能够保证在整个无线传感网络中数据传输的公平性。
在本说明书的一个或多个实施例所提供的一种基于DCCP的拥塞控制方法中,所述发送端根据所述基础往返时延与所述加权平均往返时延确定不同运行状态下的所述发送速率S31,包括:
正常状态下,根据所述基础往返时延baseRTT与所述加权平均往返时延averageRTT的比值baseRTT/averageRTT调整所述发送速率;
拥塞状态下,若所述接收确认信息中显式拥塞通告ENC未丢包,则控制所述发送速率与正常状态下发送速率相同,同样的根据所述基础往返时延baseRTT与所述加权平均往返时延averageRTT的比值baseRTT/averageRTT调整所述发送速率;
在这种情况下,所述接收确认信息ACK中所述显式拥塞通知ENC未丢包,所述发送端依然可以根据所述显式拥塞通知ENC获取到上一数据包在传输过程中的拥塞情况,这种拥塞情况下比值baseRTT/averageRTT相较正常状态下出现较大变化,一般情况下体现为所述加权平均往返时延averageRTT变大,则所述比值baseRTT/averageRTT变小,相应的所述发送端根据所述比值baseRTT/averageRTT降低所述发送速率;
若所述显式拥塞通告ENC丢包,则控制所述发送速率减半;
在这种情况下,所述发送端已经无法获取到上一数据包在传输过程中拥塞的具体情况,拥塞程度较为严重,因此需要大幅度的降低所述发送速率,在一个或多个实施例中,控制所述发送速率减半;
在轻度拥塞情况下,数据包的丢包频率也较低,对于这种情况不采取大幅度降低发送速率的措施,也体现了数据传输的公平性。
故障状态下,发送探测数据包,调整所述探测数据包的发送速率为每经过一段重传超时时间RTO发送一次;
所述故障状态是指传输路由改变或链路故障,所述接收端无法接收到数据包,此时所述发送端会发送探测包来监视网络情况,发送所述探测包的频率即设置为每经过一段RTO时间重新发送一次;
错误状态下,根据错误率设定调整参数,根据所述调整参数调整所述发送速率。所述发送速率的控制方程设置为β*rate,其中,所述β表示错误率,所述rate表示之前的发送速率。
在本说明书的一个或多个实施例所提供的一种基于DCCP的拥塞控制方法中,所述基础往返时延为网络往返时延RTT的最小值;
当所述发送端进入故障状态,根据所述探测数据包的往返时间及相应的确认信息对所述基础往返时间进行重置;
故障状态排除后,所述发送速率根据重置后的基础往返时延baseRTT与原基础往返时延之比确定。
在所述基于DCCP的拥塞控制方法中,当无线传感网络中有线连接部分的运行状态为故障状态时,所述发送端发送探测包来监测网络情况,直到接收到与所述探测包相对应的探测返回信息,说明故障状态排除,此时故障状态之前的所述基础往返时延没有意义,需要对其进行重置,相应的发送速率也重置。
在本说明书的一个或多个实施例所提供的一种基于DCCP的拥塞控制方法中,所述发送端根据所述加权平均往返时延对拥塞窗口大小进行控制S32,包括:
正常状态下,根据所述加权平均往返时延调整每个网络往返时延RTT时间内所述拥塞窗口大小,控制所述拥塞窗口大小与快速传输控制协议算法(FAST TCP)所确定的拥塞窗口大小相同;
拥塞状态下,在重传超时时间内探测带包头的数据包,直到探测到所述接收确认信息,成功接收所述接收确认信息后,对拥塞窗口大小进行重置,转为正常状态。
对无线传感网络中的无线连接部分即传感器节点而言,其运行状态包括正常状态与拥塞状态,所述发送端通过调整拥塞窗口大小实现对数据发送速度的控制。
在本说明书的一个或多个实施例所提供的一种基于DCCP的拥塞控制方法中,所述发送端根据所述接收确认信息确定加权平均往返时延,包括:
根据所述接收确认信息中的时间戳确定所述加权平均往返时延:
Figure BDA0002711484240000091
其中,averageRTT表示所述加权平均往返时延,RTT表示网络往返时延,currentRTT表示当前网络往返时间。
在实现中,无论何时接收端收到包,都返回接收确认信息,所述接收确认信息中包含时间戳,所述发射端根据所述时间戳能够确定数据包的发送时间,再结合接收到所述接收确认信息的时间能够确定数据传输过程中的往返时间,在正常状态下所述发射端根据每次发送数据接收数据的往返时间能够确定所述网络往返时延RTT,而所述当前往返时间currentRTT指的是发射端当前传输一组数据所经历的RTT。即所述发射端在正常状态下,每次接收到所述接收确认信息时,都有一个新的所述当前往返时间currentRTT,相应的都重新计算新的所述加权平均往返时间averageRTT,并根据新的averageRTT对拥塞窗口大小进行调整。在所述基于DCCP的拥塞控制方法中,无线传感网络中传感器节点的发射端采用上述方式,能够做到对拥塞窗口大小的实时适应性调整,从而保证数据传输的高效性与鲁棒性。
在本说明书的一个或多个实施例所提供的一种基于DCCP的拥塞控制方法中,所述根据所述加权平均往返时延调整每个网络往返时延时间内所述拥塞窗口大小,包括:
根据所述加权平均往返时延控制下一次数据传输的拥塞窗口大小为:
cwnd′=cwnd+[1+Int(1-cwnd×(averageRTT-baseRTT)/RTT)]
其中,cwnd表示最近一次所述拥塞窗口大小,baseRTT表示基础往返时延,即不存在拥塞的情况下网络传输一组数据时的RTT,是所述网络往返延时的最小值。所述发射端在正常状态下,每次接收到所述接收确认信息时,都有一个新的所述当前往返时间currentRTT,相应的都重新计算新的所述加权平均往返时间averageRTT,并根据新的averageRTT对拥塞窗口大小进行调整。具体的,根据所述加权平均往返时间averageRTT与所述基础往返时延baseRTT二者差值进行调整,当cwnd为1时,上述控制下一次数据传输的拥塞窗口方式将使每个RTT的cwnd增加1个数据包大小;当所述加权平均往返时间averageRTT与所述基础往返时延baseRTT二者差值为0时,cwnd大于1,上述控制下一次数据传输的拥塞窗口方式使得每个RTT增加2个数据包大小。
在本说明书的一个或多个实施例所提供的一种基于DCCP的拥塞控制方法中,所述对拥塞窗口大小进行重置,包括:
所述发送端重置网络往返延时与基础往返延时,所述基础往返延时为所述网络往返延时的最小值;
根据原基础往返延时oldbaseRTT与重置后的所述基础往返延时baseRTT之比对所述拥塞窗口大小进行调整将其其设置为cwnd*oldbase RTT/baseRTT,cwnd表示原拥塞窗口大小。
在所述基于DCCP的拥塞控制方法中,当无线传感网络中无线连接部分的运行状态为拥塞状态时,所述发送端发送探测包来监测网络情况。拥塞状态解除后,同样对所述拥塞窗口大小进行重置。
在另一方面,本说明书的一个或多个实施例提供了一种基于DCCP的拥塞控制系统。
如图4所示,基于前面任意实施例所述的方法,本说明书的一个或多个实施例所提供的一种基于DCCP拥塞控制系统,包括接收模块1与发送模块2;
所述接收模块,被配置为缓存接收数据包,在接收到所述数据包时向所述发送模块返回接收确认信息,在接收到所述数据包后,对所述数据包进行检测查重;
所述发送模块,被配置为针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制。
在另一方面,本说明书的一个或多个实施例还提供了一种基于DCCP的拥塞控制电子设备。
基于前面任意实施例所述的方法,图5示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的基于DCCP的拥塞控制方法。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的基于DCCP的拥塞控制方法时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
需要说明的是,本说明书一个或多个实施例的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本说明书一个或多个实施例的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书一个或多个实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述实施例中相应的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
如图6所示,为本说明书的一个或多个实施例所提供的一种基于DCCP的拥塞控制方法的仿真场景示意图。
数据从有线节点发送到距离接入点2跳的无线节点(1和4);或者从这些无线节点通过接入点连接到有线节点,所有的无线节点在仿真中都是静止的。所有数据流都是10MB的FTP(文件传输协议)流。采用公平性指数fi来衡量多个会话间数据传输的公平性:
Figure BDA0002711484240000131
所述公平性指数fi定义为:网络中有N个并发练级额,且通过第i个练级获得的数据吞吐量为R(k)。假设吞吐量的需求是无限的。我们说最大限度的公平是在接近统一的时候实现的,所有会话的吞吐量都是相等的。公平性指数位于0和1之间,1是每个流获得相同吞吐量的最公平的情况。
首先,使用TCP Reno测试了两个遍历节点链(4跳)的流。DCCP和TCP都是端到端滑动窗口协议,数据包在两个方向上传输:数据包从发送方发送到接收端,确认信息从接收方发送到发送方,发送方被允许在收到确认信息之前发送一个数据包窗口。这个窗口有固定的大小,之后由协议中实现的拥塞控制算法控制。当确认的数据包的序列在当前窗口的范围内时,确认信息有效。
如下表1所示,为TCP、DCCP、和改进的DCCP的单个流量的吞吐量性能分析:
表格1
Figure BDA0002711484240000132
在第二个实验中,我们模拟了两个流,类似于图6中的场景。每个流都可能是流入流或流出流,同时我们也针对混合场景调整了RTT。为了评估各种替代方案,我们测量了每个流的吞吐量和总吞吐量。表2显示了TCP、DCCP和改进的DCCP作为传输协议在双流流量吞吐量下的各自结果。
如下表2所示,为TCP、DCCP、和改进的DCCP的2个流的吞吐量性能分析:
表格2
Figure BDA0002711484240000141
仿真结果表明,改进的DCCP流实现了上述三种方案的最佳吞吐量
每个流既可以是流入的流,也可以是流出的流,我们还针对混合流场景更改了RTT。为了评估各种替代方案,我们测量了每个流程的公平性。表3给出了TCP、DCCP和本说明书实施例提供的基于DCCP的拥塞控制方法*(ExtendedDCCP)作为传输协议在2个流量吞吐量下的公平性指标结果。
表格3
Figure BDA0002711484240000142
结果表明,改进的拥塞控制算法使DCCP流具有良好的流间公平性。与TCP的拥塞控制相比,扩展的拥塞控制算法对流入和流出的所有的组合都具有更好的流间公平性。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本说明书一个或多个实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本说明书一个或多个实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本说明书一个或多个实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本说明书一个或多个实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本说明书一个或多个实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本说明书一个或多个实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (10)

1.一种基于DCCP的拥塞控制方法,其特征在于,包括:
接收端缓存接收数据包;
在接收到所述数据包时向发送端返回接收确认信息;
在接收到所述数据包后,对所述数据包进行检测查重;
所述发送端针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制。
2.根据权利要求1所述的方法,其特征在于,所述发送端针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制,包括:
对于无线传感网络中非传感器节点,所述发送端根据所述接收确认信息确定基础往返时延与加权平均往返时延,并根据所述基础往返时延与所述加权平均往返时延确定不同运行状态下的所述发送速率;
对于无线传感网络中传感器节点,所述发送端根据所述接收确认信息确定加权平均往返时延,并根据所述加权平均往返时延对拥塞窗口大小进行控制。
3.根据权利要求2所述的方法,其特征在于,所述发送端根据所述基础往返时延与所述加权平均往返时延确定不同运行状态下的所述发送速率,包括:
正常状态下,根据所述基础往返时延与所述加权平均往返时延的比值调整所述发送速率;
拥塞状态下,若所述接收确认信息中显式拥塞通告未丢包,则所述发送速率调整与正常状态下相同;
若所述显式拥塞通告丢包,则控制所述发送速率减半;
故障状态下,发送探测数据包,调整所述探测数据包的发送速率为每经过一段重传超时时间发送一次;
错误状态下,根据错误率设定调整参数,根据所述调整参数调整所述发送速率。
4.根据权利要求3所述的方法,其特征在于,所述基础往返时延为网络往返时延的最小值;
当所述发送端进入故障状态,根据所述探测数据包的往返时间及相应的确认信息对所述基础往返时间进行重置;
故障状态排除后,所述发送速率根据重置后的基础往返时延与原基往返时延之比确定。
5.根据权利要求2所述的方法,其特征在于,所述发送端根据所述加权平均往返时延对拥塞窗口大小进行控制,包括:
正常状态下,根据所述加权平均往返时延调整每个网络往返时延时间内所述拥塞窗口大小;
拥塞状态下,在重传超时时间内探测带包头的数据包,直到探测到所述接收确认信息,成功接收所述接收确认信息后,对拥塞窗口大小进行重置,转为正常状态。
6.根据权利要求5所述的方法,其特征在于,所述发送端根据所述接收确认信息确定加权平均往返时延,包括:
根据所述接收确认信息中的时间戳确定所述加权平均往返时延:
Figure FDA0002711484230000021
其中,averageRTT表示所述加权平均往返时延,RTT表示网络往返时延,currentRTT表示当前网络往返时间。
7.根据权利要求6所述的方法,其特征在于,所述根据所述加权平均往返时延调整每个网络往返时延时间内所述拥塞窗口大小,包括:
根据所述加权平均往返时延控制下一次数据传输的拥塞窗口大小为:
cwnd′=cwnd+[1+Int(1-cwnd×(averageRTT-baseRTT)/RTT)]
其中,cwnd表示最近一次所述拥塞窗口大小,baseRTT表示基础往返时延。
8.根据权利要求5所述的方法,其特征在于,所述对拥塞窗口大小进行重置,包括:
所述发送端重置网络往返延时与基础往返延时,所述基础往返延时为所述网络往返延时的最小值;
根据原基础往返延时与重置后基础往返延时之比对所述拥塞窗口大小进行调整。
9.一种基于DCCP的拥塞控制系统,其特征在于,包括接收模块与发送模块;
所述接收模块,被配置为缓存接收数据包,在接收到所述数据包时向所述发送模块返回接收确认信息,在接收到所述数据包后,对所述数据包进行检测查重;
所述发送模块,被配置为针对不同网络运行状态,根据所述接收确认信息对数据包发送速率进行控制。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任意一项所述的方法。
CN202011058262.5A 2020-09-30 2020-09-30 一种基于dccp的拥塞控制方法、装置及电子设备 Active CN112203328B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011058262.5A CN112203328B (zh) 2020-09-30 2020-09-30 一种基于dccp的拥塞控制方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011058262.5A CN112203328B (zh) 2020-09-30 2020-09-30 一种基于dccp的拥塞控制方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN112203328A true CN112203328A (zh) 2021-01-08
CN112203328B CN112203328B (zh) 2022-07-12

Family

ID=74008102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011058262.5A Active CN112203328B (zh) 2020-09-30 2020-09-30 一种基于dccp的拥塞控制方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN112203328B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113300971A (zh) * 2021-02-05 2021-08-24 阿里巴巴集团控股有限公司 数据处理系统及方法
CN115022205A (zh) * 2022-05-31 2022-09-06 广东电网有限责任公司 一种应用于海量终端高并发场景的跨网数据传输方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101184052A (zh) * 2007-12-25 2008-05-21 北京广视通达网络技术有限公司 一种实现可靠udp传输的拥塞控制方法
JP2008193335A (ja) * 2007-02-02 2008-08-21 Nec Corp 通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラム
CN102006230A (zh) * 2010-11-26 2011-04-06 中南大学 一种有线/无线混合网络中融合三种信息的拥塞控制方法
CN102388584A (zh) * 2011-09-22 2012-03-21 华为技术有限公司 拥塞控制方法及设备
CN110572333A (zh) * 2019-10-25 2019-12-13 中南大学 一种带宽探测阶段的发送速率调整方法及拥塞控制算法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008193335A (ja) * 2007-02-02 2008-08-21 Nec Corp 通信端末、通信システム、輻輳制御方法、及び輻輳制御用プログラム
CN101184052A (zh) * 2007-12-25 2008-05-21 北京广视通达网络技术有限公司 一种实现可靠udp传输的拥塞控制方法
CN102006230A (zh) * 2010-11-26 2011-04-06 中南大学 一种有线/无线混合网络中融合三种信息的拥塞控制方法
CN102388584A (zh) * 2011-09-22 2012-03-21 华为技术有限公司 拥塞控制方法及设备
CN110572333A (zh) * 2019-10-25 2019-12-13 中南大学 一种带宽探测阶段的发送速率调整方法及拥塞控制算法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
何建新等: "基于带宽预测的VCP拥塞控制改进算法", 《计算机系统应用》 *
王倩等: "无线网络中基于自适应带宽估计的跨层拥塞控制算法", 《山东大学学报(理学版)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113300971A (zh) * 2021-02-05 2021-08-24 阿里巴巴集团控股有限公司 数据处理系统及方法
CN115022205A (zh) * 2022-05-31 2022-09-06 广东电网有限责任公司 一种应用于海量终端高并发场景的跨网数据传输方法

Also Published As

Publication number Publication date
CN112203328B (zh) 2022-07-12

Similar Documents

Publication Publication Date Title
KR102203509B1 (ko) 패킷 전송 방법, 단말, 네트워크 디바이스 및 통신 시스템
CA2973991C (en) Determining link conditions of a client lan/wan from measurement point to client devices and application servers of interest
US11611498B2 (en) Round-trip time evaluation system, method, and apparatus
EP3100420B1 (en) Buffer sizing for multi-hop networks
CN108696449B (zh) 一种数据调度方法及装置
US9276832B2 (en) Buffer sizing for multi-hop networks
US8638686B2 (en) Buffer sizing for multi-hop networks
CN112203328B (zh) 一种基于dccp的拥塞控制方法、装置及电子设备
CN110677221B (zh) 重传控制方法、通信接口和电子设备
US20180159778A1 (en) Method and apparatus for tcp-based transmission control in communication system
CN113726681B (zh) 一种网络拥塞控制方法及网络设备
JP6613742B2 (ja) 負荷変動およびパケット伝送損失があるlfn伝送路で高信頼通信を行うためのデータ通信制御方法
Alheid et al. An analysis of the impact of out-of-order recovery algorithms on MPTCP throughput
CN113438180B (zh) Udp数据包的传输控制方法、装置、设备及可读存储介质
JP5958355B2 (ja) 分析装置、分析方法及び分析プログラム
CN113950099B (zh) 一种网络拥塞控制方法及设备
US9882751B2 (en) Communication system, communication controller, communication control method, and medium
Reale et al. DTL: Dynamic transport library for peer-to-peer applications
KR20190048943A (ko) 네트워크 연결 제어 장치 및 그 방법
Schulte et al. I'll be a bit late—packet reordering in mobile networks
Ishani et al. Performance Comparison of different Congestion Control Protocols in Hybrid Network
Bagde et al. Survey of Performance based transmission control protocol in MANET
CN116471239A (zh) 一种面向长时延高误码通信环境的端到端传输方法、系统、设备及介质
Ibrahim et al. Enhancing DCCP-TCP-like mechanism for wireless sensor networks
El-Bazzal et al. Improving the performance of Transport Control Protocol over 802.11 wireless networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant