CN105704055A - 一种基于自然启发的网络拥塞预防方法 - Google Patents
一种基于自然启发的网络拥塞预防方法 Download PDFInfo
- Publication number
- CN105704055A CN105704055A CN201610030240.5A CN201610030240A CN105704055A CN 105704055 A CN105704055 A CN 105704055A CN 201610030240 A CN201610030240 A CN 201610030240A CN 105704055 A CN105704055 A CN 105704055A
- Authority
- CN
- China
- Prior art keywords
- network
- tcp
- congestion
- relation
- model
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种基于自然启发的网络拥塞预防方法,使用自然启发算法构造新的数学模型(网络捕食模型),并通过捕食模型对TCP流的参数进行初始化,使得TCP流在异构网络中能以一个良好的初值状态来运行,使复杂的异构网络系统运行状态转变为可控,易操作,鲁棒性良好的系统运行状态,以预防拥塞及丢包的发生。
Description
技术领域
本发明涉及到互联网TCP传输领域,具体的说是一种基于自然启发的网络拥塞预防方法—IPPM(InternetPrey-predatorModel)算法。
背景技术
众所周知,TCP在有线网中具有良好的传输性能,但在异构网络中,由于存在信号衰减,目标移动,信道容量小等特点,使得异构网络系统呈现非线性,不可预测性,因此TCP协议在异构网络中的传输性能大大减弱,传统有线网中的分析方法在异构网络中的准确性也随之降低。而传统TCP在结构复杂的异构网络中适应性不强的原因主要分为以下两点:第一点是TCP使用了大量的固有初始值,比如丢包后cwnd的调控策略,一般发生丢包后发送端将其拥塞窗口减半或者直接减少为1,都是固定的值,并没有良好的灵活性;又比如ssthresh的固定值设置(传统TCP的阈值设置为65535个字节),而ssthresh的值规定着TCP数据流的慢启动与拥塞避免阶段的临界值,在不同环境中,合适的慢启动阶段的持续时间则直接影响网络后来的性能表现,所以固定ssthresh值并不能适应复杂多变的异构网络。第二点就是在异构网络下发生丢包后,传统TCP并不能区分出丢包的具体原因。传统TCP在丢包后都认定其原因是由于当期网络中出现了拥塞丢包,这样TCP源端就会大幅度的降低其发送速率。但如果是由于无线误码丢包,此时网络中的带宽利用率或者瓶颈链路中队列数据包排队长度并不大,盲目的降低发送速率只会降低其对网络的资源利用率。针对这两个问题,本发明受了自然启发算法的启发,在传统拥塞控制的基础上,提出了一种基于自然启发算法中的网络捕食模型(IPPM)来对TCP流参数进行初始化,预防拥塞发生,并能在丢包之后进行丢包区分的TCP拥塞控制改进架构,增强TCP的自适应及鲁棒性,以达到改善传统TCP在异构网络中的性能的目的。
当前网络中拥塞控制算法主要由源端的TCP拥塞控制算法与中间节点的队列管理算法组成。网络拥塞控制追求高的网络利用率,小的排队时延,以及良好的公平性。当前网络拥塞控制存在以下问题:当前拥塞控制都是基于丢包的,这点在无线环境中缺陷也表现的越来越明显;在提供服务质量上尤为困难(时延,资源分配);另外越来越多的证据表明AIMD(additive-increasemultiplicative-decrease)拥塞控制方法在异构网络中具有局限性,其主要原因是传统TCP协议没有良好的适应性,比如它的一些参数的固有初值设置,其初值大小都为一些固定值,并不能很好的适应多变的异构网络。例如TCP协议中的参数ssthresh,众所周知ssthresh(可理解为cwnd的阈值)对TCP流的起始阶段至关重要,其控制着慢启动与拥塞避免阶段的分界线,前者以指数形式增长cwnd值,后者以线性形式增长cwnd值。假如当前网络状况较好,但是ssthresh的值较小,TCP流就会提前进入拥塞避免阶段,这样其发送窗口大小就会以线性增长,速度较慢,对网络带宽利用率也会随之降低;但是如果网络状况较差,ssthresh的值此时又比较大,就很容易出现网络拥塞,发生丢包,降低网络性能。虽然后来的许多TCP改进,比如TCP-Newreno,TCP-VEGAS等对TCP进行了修改,但是这种局限性依然存在。
考虑到异构网络的复杂性,传统的线性的控制方法很难取得很明显的效果改进。而自然启发算法在处理复杂系统方面有着很大的优势,它们具有的某些特性正是复杂性日益增长的网络以及下一代网络所急需的。自然启发算法模仿自然界的一些生物现象,通常具有自适应、自组织和自学习能力的优点,能够处理传统线性计算方法难于解决的复杂问题。自然启发算法的应用领域涵盖优化问题求解、智能控制、模式识别、网络安全、硬件设计、社会经济、普适计算、传感器网络以及生态环境等方面的应用。自然启发算法的内容主要包括:人工神经网络,遗传算法,免疫算法,人工内分沁系统,蚁群算法,粒子群算法以及膜计算等等。鉴于传统TCP拥塞控制适应性差的缺陷以及自然启发算法在解决复杂系统问题表现出来的优点如:自适应、自组织和自学习能力,能够处理传统线性计算方法难于解决的复杂问题,本发明拟使用自然启发算法构造新的数学模型来解决TCP在异构网络中性能下降的问题。
发明内容
为解决传统TCP协议在拥塞控制过程中动态适应性差、带宽利用率低、公平性差等技术问题,本发明提供一种基于自然启发的网络拥塞预防方法,称为IPPM(InternetPrey-predatorModel)网络捕食模型,使用自然启发算法构造新的数学模型,并通过捕食模型对TCP流进行初始化,使得TCP流在异构网络中能以一个良好的初值状态来运行,使复杂的异构网络系统运行状态转变为可控,易操作,鲁棒性良好的系统运行状态,以预防拥塞及丢包的发生。
为实现上述技术目的,所采用的技术方案是:一种基于自然启发的网络拥塞预防方法,其特征在于,根据自然启发算法构造TCP拥塞控制数学模型,构建网络模型如下:
步骤一、网络模型是从有线LAN经过AP连接到一个无线网络WLAN构成的异构网络,此网络由k个源端节点以及k个目的端节点组成,源端节点与目的端节点为一对一的关系,用集S={S1,S2……Sk}代表源端节点,用集D={D1,D2……Dk}代表目的端节点,设源端节点和目的端节点具有相同的回路响应时间RTT;
步骤二、利用生物捕食关系对异构网络TCP拥塞控制中各个参数的关系进行建模分析,建立异构网络捕食算法,整个网络中都使用基于窗口的TCP拥塞控制算法,算法步骤描述如下:
(1)构建网络生态模型:异构网络可以看做是一个小型生态系统,该网络生态系统由路由器,主机以及网络链路等诸多个栖息地组成;这些栖息地中生存着物种如:“拥塞窗口W”,“队列长度Q”,“丢包P”,以及“可用带宽C”等,将各个参数的大小比作生态系统中物种的数量,各物种之间相互影响、制约,网络生态模型利用物种数量控制问题来映射网络中拥塞控制问题,将物种间的捕食关系转化为网络参数间的制约关系;
(2)建立参数制约关系:TCP队列管理中“拥塞窗口”与“队列长度”之间以及“可用带宽”与“拥塞窗口”间的关系与捕食模型的逻辑关系十分相似,因此,受自然捕食关系启发,本发明构建三层网络捕食关系,即:可用带宽C---拥塞窗口W---队列长度Q,在这个“网络生态系统”中,拥塞窗口W约束着可用带宽C的数量,而队列长度Q约束着拥塞窗口W的数量,他们之间的相互捕食关系可以用如下公式表示为网络拥塞模型IPPM:
(4)
(5)
(6)
其中α表示C的出生率,β表示一个C遇到W的死亡率,Wi为数据流i的拥塞窗口大小,χi表示Wi的出生率,δ表示W捕食C的转化效率,ε表示每一个W遇到Q的死亡率,表示每一个被捕食的Wi转化为Q的效率,而γ代表Q的自然死亡率,其中σ是平滑因子,表示流量动态变化对C和Q的影响程度。在这个模型中,CC和CW是可用带宽C和拥塞窗口W的上界,因此将其设置为瓶颈链路的带宽大小BB。链队列与时延,瓶颈链路带宽等参数有如下关系:
(7)
(3)建立网络拥塞控制架构:将TCP网络拥塞控制按照丢包事件来进行区分,分为丢包前与丢包后两个阶段,分别建立不同的控制算法。将IPPM嵌入拥塞控制架构丢包前的控制算法中,TCP流发送端提取相应参数信息,通过IPPM算法计算出适应于当前网络状态并达到稳态时的发送窗口大小,并将其设置为ssthresh的初始值,进而启动TCP流数据包传送过程,最终达到链路带宽利用率稳态最大化以及数据流之间带宽资源公平分配的目标。
本发明有益效果是:本发明与现有源端拥塞控制技术相比,具有以下优点:
首先,传统的TCP拥塞控制算法中网络参数的初始值设置都为定值,无法根据当前网络状态实时调节,网络适应性很差。而采用网络捕食算法后,通过采集网络实时参数信息并构造捕食关系,通过IPPM模型来实时的对TCP流进行初始化。使得TCP流能以一个适合当前网络状态的初始状态运行,增强TCP的自适应性。
其次,传统的TCP传输过程中数据流之间的公平性较差,公平性指数大部分情况下都远大于1。本发明使用IPPM模型来对TCP流的参数初值进行设定。这样可以使得各个流的发送窗口快速的经历慢启动达到最适合当前网络状态的稳态值,相互之间良性共享网络带宽资源。进入拥塞避免阶段之后各个流试探性的增加其窗口大小来适应网络,不会造成强TCP流和弱TCP流之分。提高了其稳态的收敛范围,加快收敛速度,大量减少丢包,预防了拥塞发生,并有高的带宽资源利用率与公平性。
附图说明
图1为网络模型图;
图2为网络生态拓扑图;
图3为W1的拥塞窗口变化图;
图4为W2的拥塞窗口变化图;
图5为W3的拥塞窗口变化图;
图6为W4的拥塞窗口变化图;
图7为瓶颈链路队列长度变化图;
图8为瓶颈链路可用带宽变化图;
图9为拥塞控制架构图;
图10为模糊综合评判过程图;
图11为异构网络实验拓扑图;
图12为捕食模型中参数关系图;
图13为原始两条TCP的Cwnd变化图;
图14为数据跟踪图;
图15为改进后的两条数据流Cwnd变化图。
具体实施方式
从传统TCP拥塞控制的缺点以及自然启发算法在解决复杂系统问题表现出来的优点出发,本发明提出了使用自然启发算法构造新的数学模型(网络捕食模型),并通过捕食模型对TCP流进行初始化,使得TCP流在异构网络中能以一个良好的初值状态来运行,使复杂的异构网络系统运行状态转变为可控,易操作,鲁棒性良好的系统运行状态,以预防拥塞及丢包的发生。网络模型如下:
假设某个网络由k个源端节点以及k个目的端节点组成,并且源端与目的端是一对一的关系。用集S={S1,S2……Sk}代表发送端节点,用集D={D1,D2……Dk}代表目的端节点,并假设其具有相同的回路响应时间RTT。网络模型是从有线LAN进过AP连接到了一个无线网络WLAN,如图1所示。
整个网络中都使用基于窗口的TCP拥塞控制算法。拥塞窗口cwnd在通常情况下规定了发送端在接收到新数据包确认信息之前一次最多可以传输到网络中数据包的数量。这里假定所有连接都是长期稳定存在的。算法步骤描述如下:
(1)构建网络生态捕食模型:
异构网络可以看做是一个小型生态系统,该网络生态系统由路由器,主机以及网络链路等诸多栖息地组成。我们从拥塞控制这个角度看待这个网络生态系统,假定这些栖息地中生存着物种“拥塞窗口W”,“队列长度Q”,“丢包P”,以及“链路空载大小C”等,并将各个参数的大小比作生态系统中物种的数量。这些物种相互联系、影响、制约。图2显示了从生态系统的角度看到的拥塞控制。
假定源端Si中Wi为数据流i的拥塞窗口大小。很明显当这个物种数量增大时,每次能传输到网络中的数据包也会随之增加。因此为了控制网络中拥塞问题,物种W的数量必须被控制。这也就是说自然界中物种数量控制问题可以映射到网络中拥塞控制的问题上。自然界使用捕食,竞争,寄生,共生等诸多策略来控制物种数量,稳定者生态系统的平衡,因此我们也可以借鉴这些策略来进行拥塞控制。
(2)建立参数制约关系:
捕食-被捕食关系指的是捕食者捕杀猎物并吃掉猎物,数学表示为其物种数量上的变化,其逻辑关系如下:
1)捕食者数量减少的情况下,被捕食者的数量会呈现指数增长;
2)捕食关系约束着被捕食者的增长率;
3)被捕食者数量缺失情况下,捕食者的数量也会指数减少;
4)被捕食者对捕食者的增长率与二者数量的比率有关;
5)被捕食者的承载能力导致被捕食者的数量有一个上界。
假设a代表自然界中的草,b代表兔子,c代表狐狸。若用N(a),N(b),N(c)分别表示a,b,c的数量,则其模型如公式(1)~(3):
(1)
(2)
(3)
而在网络中TCP队列管理中“拥塞窗口”与“队列长度”之间的关系可以大致描述如下:
1)队列中排队的包数量减小的情况下,拥塞窗口增大;
2)当队列中排队包积压较多时,拥塞窗口减小;
3)数据发送速率对队列长度的影响与当前队列长度本身有关;
4)当发送速率减小,即小的拥塞窗口,队列长度也会减少;
5)瓶颈链路的带宽限制着发包速率。
由上述制约关系可看出拥塞窗口与队列长度间的关系与捕食模型的逻辑关系十分相似,下面我们分析可用带宽与拥塞窗口的关系:
1)发送速率小的情况下(即小的拥塞窗口),链路中的可用带宽将会增大;
2)当发送速率增大(大的拥塞窗口),链路中可用带宽将会减小;
3)发送速率与可用带宽之间的关系与二者的数量比率有关;
4)链路中可用带宽减少,拥塞窗口减小;
5)瓶颈链路的带宽限制了可用带宽上界。
从这个角度可以看到拥塞窗口与可用带宽也符合捕食的逻辑。综上所述,本发明构建三层网络捕食关系,即:可用带宽C---拥塞窗口W---队列长度Q。在这个“网络生态系统”中,W约束着C的数量,而Q约束着W的数量,他们之间的相互捕食关系可以用如下公式表示:
(4)
(5)
(6)
其中α表示C的出生率,β表示一个C遇到W的死亡率,χi表示Wi的出生率,δ表示W捕食C的转化效率,ε表示每一个W遇到Q的死亡率,φi表示每一个被捕食的W转化为Q的效率,而γ代表Q的自然死亡率,其中σ是平滑因子,表示流量动态变化对C和Q的影响程度。在这个模型中,CC和CW是可用带宽C和拥塞窗口W的上界,因此将其设置为瓶颈链路的带宽大小。链队列与时延,带宽等参数有如下关系:
(7)
本发明所提网络生态捕食模型适用于异构网络中多种参数配置环境,这里选取其中一种参数环境为例。设置发送端和接收端个数k为4,Router与AP之间的瓶颈链路带宽BB=20Mbps,时延DL=30ms,α=Cc=Cw=BB,β=1,ε=δ=σ=0.1,χi=0.5,φi=1,包大小Pacetsize=1040B。假设每条数据流都是长期运行的,Wi表示i条流的拥塞窗口大小,四条数据流拥塞窗口初值设置如下:W1=1,W2=6,W3=8,W4=13。将相关参数代入公式(4)~(6)中,可以得到如下公式:
(8)
(9)
(10)
(11)
(12)
(13)
通过MATLAB仿真该算法得到如下图所示。
我们从图中可以分析到以下几点性质:
公平性:图3~6显示了在捕食模型下拥塞窗口的变化情况,可以看到四条数据流虽然开始阶段被赋予了不同的初始值,但是系统运行一段时间以后,四条数据流都能汇聚到一个平衡状态,并且在平衡状态时,各个流的发送速率基本一致,公平的分享瓶颈链路带宽资源,而这个特点对于具有固有RTT不公平性缺陷,容易产生死锁现象的传统TCP来说是其所急需的。
队列大小演变情况:图7看到,当系统运行到稳态之后,队列长度大小基本维持在0值附近。整个过程中,队列长度最大值在8附近,并没有出现大的排队时延与抖动。同时也可以说明在此时的环境下,假如设置瓶颈链路队列大小大于8,就不会发生丢包事件。
资源利用率:图8显示了捕食模型在瓶颈链路剩余带宽与链路排队包数量的演变情况。可以看到,在系统运行初期,可用剩余带宽基本等于链路带宽,运行一段时间后,瓶颈链路带宽剩余带宽在稳定后慢慢趋于0,也就意味着此时达到了将近百分之百的带宽利用率。
同时,综合上面的仿真数据图,可以看到系统具有良好的稳定性与收敛速度。当系统达到稳定状态后,瓶颈链路的资源利用率,队列大小以及瓶颈链路上的总负荷并没有发生大的震荡,并且其运行轨迹相对稳定。在运行到平衡稳定状态后,其轨迹相对平稳,没有抖动。在多组场景、多组初值情形下反复实验,都可得到较好的公平性,高利用率,小抖动等优点。这里就不在一一列出实验数据。
由于网络捕食模型与生态捕食模型的逻辑基本一样,并且该模型达到稳态后具有良好的性能表现,因此本发明主要借鉴捕食模型算法,通过提取网络中参与拥塞控制的相关参数,根据其逻辑关系,对符合捕食关系的参数构造捕食模型,我们称它为IPPM(InternetPrey-predatorModel)。在该模型中,通过捕食的相互关系,来制约某个参数的数值,使其适应当前网络状态,并且使得整个系统的利用率提高,公平性良好,并且能稳定的长期运行,同时又能计算出给定条件系统下演变到稳态的一些信息,有利于我们控制系统运行状况。
(3)建立网络拥塞控制架构,并将IPPM嵌入拥塞控制架构。将TCP网络拥塞阶段按照丢包事件来进行区分,分为丢包前与丢包后两个阶段。网络拥塞控制架构如图9所示。
丢包前主要的任务是预防拥塞的产生,尽可能的降低丢包的出现。方法如下:
在发送端加入通信字段,请求最后一跳瓶颈链路返回状态信息。在AP端通过对链路信息的采集工作,将可用带宽,丢包数,经过该节点的流数量等参数进行封包。在接收端收到连接建立请求包后,提取出AP对包封装的信息,并将信息封装到相应的ACK包中返回给发送方。TCP流发送端收到ACK后提取相应信息,通过IPPM算法计算出稳态时的发送窗口大小,并将其设置为ssthresh的初值,进而启动TCP流数据包传送过程,达到减少丢包、预防拥塞的功能。
发生丢包后,根据网络状况反馈信息,利用模糊综合评判区分出丢包的具体原因,区分出拥塞丢包和误码丢包,如图10所示。图中的因素指的是RTT,丢包率等参数。
利用式(14)来进行模糊评判,其中是归一化后的MDP相对权重,是误码率的相对权重,表示MDP对拥塞的隶属度,表示MDP对误码丢包的隶属度,表示误码率对拥塞的隶属度,而代表误码率对误码丢包的隶属度。最后计算出对拥塞丢包概率与误码丢包概率,通过最大隶属度原则来确定具体的丢包原因。在式(15)中是参数RTT的短期均值,是其短期的标准差。是调节因子,控制RTT抖动因素的贡献比例。
(14)
(15)
对不同的丢包原因采取相对应的调控手段,假如是误码丢包,源端并不会对其发送速率做大的变动,使得TCP仍能高效的利用网络资源。假如是拥塞丢包,TCP源端会根据相关的反馈信息,对其发送速率以及一些参数的设定采取不同程度的调控,使得TCP流能很快的适应变动后的网络,快速回到丢包前网络资源利用率较好的阶段。
综上所述:该算法通过采集网络中当前参数,使用可用带宽,发送窗口,队列长度三个参数构造捕食模型。使用该模型下计算出来的发送窗口最大值来设置ssthresh的初值。这样做的好处是通过捕食关系来对当前网络状况进行约束,得到系统达到稳态时的cwnd发送窗口大小,并且将其设置为ssthresh的值。发送窗口在小于ssthresh的值时,能够快速的呈指数收敛到ssthresh,发送窗口大于ssthresh时,处于拥塞避免阶段,发送端仍可以继续试探性的增长自己的cwnd,使其更好地适应当前网络状态。
仿真结果及数据分析
设置网络拓扑如图11,其中S(1),S(2)……S(k)为发送节点,D(1),D(2)……D(k)为与相应的接受节点,Router为一路由器,AP为无线接入点。其中发送端S(1),S(2)……S(k)到Router与Router到AP之间的链路为有线链路。数据接受节点D(1),D(2)……D(k)通过AP,以802.11接入网络,其间链路为无线链路。
使用捕食模型来计算相关实验的ssthresh值。
表1为捕食算法计算出的ssthresh值
表1中显示了瓶颈链路带宽分别是10Mbps与20Mbps,时延为10,20,30ms,流数为2,4和8,总共18种组合条件下,通过捕食模型算法计算出来的相关组合的ssthresh值,便于随后仿真中使用。
图12显示了数据流为2的情况下,捕食模型中各个参数之间的数量的变化关系。可以看到四个变量在捕食关系的约束下逐渐往稳态收敛,图中W1与W2的变化线基本重合,这也能从侧面反映其公平性比较良好,并没有出现“强弱TCP”之分。
1)首先验证该算法在有线网中性能表现。
拓扑使用图11所示拓扑,但是修改AP与接收端D(1),D(2),……D(k)之间的链路为有线链路,其他部分保持原有拓扑不变。
表2为2条数据流吞吐量对比
表3为4条数据流吞吐量对比
表4为8条数据流吞吐量对比
仿真实验中瓶颈链路分别取10Mbps与20Mbps。瓶颈链路时延分别取10ms,20ms和30ms。TCP数据流数分别选取2,4和8,仿真过程中TCP数据流上搭载FTP服务。仿真时间为50s。
表2显示了数据流为2的时候的改进TCP与原有TCP的数据对比。可以看到改进都的TCP比原有TCP的吞吐量至少要高出1M。而且随着带宽时延积的增大,提升效果要明显加强。当带宽为20Mbps,时延达到20,30ms时,改进后的TCP比原有的TCP要高出5M左右。表3中是TCP数据流为4的时候TCP修改前后的吞吐量对比。可以看到其趋势与表5-2中的基本一致。但是随着流数的增大,TCP修改前后对信道的利用率都有所增加。
可以看到,在各种情况下,改进后的TCP都比原始TCP有不同程度的性能提升。特别是在大带宽时延积下,其性能提升效果更为明显。当前网络中,具有大带宽时延积特性的网络越来越多,改进后的TCP协议也是符合了当前网络的发展趋势,进而加强了TCP的适应性。
2)本小节验证改进后的TCP在异构网络下的性能表现。
拓扑仍使用图11的拓扑结构。仿真实验采取与上述有线网络中的相同的实验设置,唯一不同的就是AP与接收端D(1),D(2),……D(k)之间的链路为无线链路,各接收端以WLAN802.11接入网络。
表5为2条数据流吞吐量对比
表6为4条数据流吞吐量对比
表7为8条数据流吞吐量对比
表5、6和7分别列出了在异构网络下的TCP数据流分别为2,4和8下的修改前后TCP吞吐量变化图。可以看到,在数据流数量为2和4的情况下,由于当前网络负载比较低,其表现出的性质与其在有线网下面表现出的性质基本一致,修改后的TCP都比原始TCP协议的吞吐量要高出至少1M左右。随着带宽时延积的增大,其性能表现的提升也是越来越明显。但是当TCP数据流的增到8的时候,随着时延的增大,其性能与原有的TCP相比,稍微略有下降。另外还可以看到在异构网络下当TCP流量增大8时,与流量数为4的时候相比,其整体的带宽利用率也随之降低,当然这点是改进后的TCP与原有TCP的一个共性。分析其原因,因为数据流增到8时,网络的负载已经比较高,对于瓶颈链路网关AP来说容易发生丢包。由于修改后的TCP具有较好的带宽利用率,也就是说整体的发送速率较大,整体的发送速率超过了AP的处理速率,就容易产生丢包现象。另外在异构网络中,无线误码丢包也是一个比较重要的丢包因素,这样频繁的丢包状态下导致了其吞吐量略有减小。由于频繁的发生丢包,因此也导致了整体带宽利用率的减少。对于异构网络丢包问题,当前比较流行的研究方向是丢包区分算法。丢包区分算法是快速重传阶段的一个延伸,由于异构网络中存在比较高的无线误码丢包,因此该算法旨在通过对当前网络的的一些参数分析,来对当前丢包原因作出判断,区分出丢包原因,是拥塞丢包还是无线误码丢包。在此基础之上,来对丢包后的拥塞手段进行调控。由于概算法不在该文的研究范围,这里不做具体详述。
3)改进后的TCP在大带宽时延网络中性能分析
前面小节中得到了结论用IPPM模型来对TCP初始化在大带宽时延积网络中的效果比较明显。为了验证IPPM对ssthresh初始化在大带宽时延积网络中的性能表现,这里仍使用如图11的拓扑结构,唯一不同的是修改无线部分为有线部分,使之不限制瓶颈链路带宽,排除无线部分对仿真实验的影响。构造出一个简单的大带宽长时延的网络拓扑。
仿真实验首先选取两条TCP数据流,将瓶颈链路带宽设置为100M,其回路相应时间设置为100ms,两条数据流运行100s。得到仿真结果原始TCP的总吞吐量为2582.36M,而改进后的TCP在100s内的总吞吐量能达到19156.68M。其对比表8如下所示。
表8为两条数据流对比
总吞吐量/Mb | Flow1的吞吐量/Mb | Flow2的吞吐量/Mb | |
改进后的TCP | 19156.68 | 9578.35 | 9578.33 |
原始TCP | 2582.36 | 999.90 | 1582.46 |
可以看到改进后的TCP比原来TCP在吞吐量上提高了近6倍,其传输性能得到了极大的提升。在公平性方面,下面首先引入一个公平性公式。
(16)
其中n代表参与计算公平性的用户数量,表示第i个用户所占资源的数量信息。表示这n个用户的公平性指数,其范围在(0,1)之间。如果n个用户的公平性指数越接近于1,那么说明其公平性越好,反之亦然[45]。
使用公式(16)的公平性公式来计算上述2条数据流的公平性,可以得到原始TCP计算出来的公平性指数为0.836。而对于改进后的TCP,2条数据流的吞吐量公平性指数基本为1,在公平性方面也大幅度的提高。
分析其原因,由于原始TCP其ssthresh的值为一定值,并不能体现当前网络状态。从图13可以看到,原始TCP中的一条流在较短的时间内,大约在0~3s左右,其cwnd的值迅速以慢启动状态增加,即cwnd增长方式以指数速度增大,增大到一定程度后,由于速率过大,大约在3.2s左右网络产生了丢包,然后其值直接降低为1,而另外一条流,更是由于两条流速率过大,在2.8s左右就出现了丢包。在之后的运行过程中,一直到仿真时间结束,两者的cwnd增长缓慢,一直处于拥塞避免阶段来增长其拥塞窗口,所以其发送窗口一直保持在较低的水平。较改进后的TCP而言,去发送速率大部分处于较低水平,因此吞吐量水平也很低。
上图14中,是实验结果瓶颈链路trace文件中截取的一部分。其第一列的总共有四个标示符号,其中“+”代表数据包进入队列,“-”表示数据包出队列,“r”表示当前数据包被接收,而“d”则表示瓶颈链路丢弃了该数据包。可以看到,大约在2.489s时,出现了第一次丢包时间,由于此时两条数据流的发送速率都很大,这也就意味着在一个RTT周期内,将会有大量的数据包涌入网络。因此,第一个包丢弃后,此时网络中链路上传输的数据包数目很大,其传输速率远远小于路由器的处理速度,当大量的处于第一个丢失数据包后面的数据包涌入已满的队列时,也将会被路由器丢弃,上图中第一列以“d”开头的都表示网络丢弃的数据包。据统计,在100s的仿真运行时间内,总共发生了4835个丢包事件。其性能只是在前期突发式的增长,看似良好,其实对后来的性能产生了巨大的不好的影响。
而修改后的两条TCP,其cwnd变化如下图15所示。可以看到,图中两条线变化趋势一样,基本重合。由于在TCP流建立阶段,根据当前网络状态使用捕食模型对TCP的ssthresh值做了初始化工作,该两条流大约在4s左右完成了其慢启动增长阶段,此刻两条数据流的cwnd值保持在1000附近,即其ssthresh的初始化值。而后两条数据流进入拥塞避免阶段,以线性的增长方式一直持续到仿真时间结束,期间并没有发生丢包事件,两条数据流的cwnd变化轨迹基本相同,其发送窗口大小从始至终处于较高的水平,这也是改进后两条数据流吞吐量公平性很好的主要原因。
继而将流数从2增大到4和8条数据流,验证改进算法随着负载增大的变化情况,其吞吐量如下表9所示。
表9为4,8条数据流吞吐量对比
可以看到,改进后的吞吐量较原始TCP都有很大的不同程度的提高。但是从公平性方面,随着流数的增大,在4条流的情况下,改进后的公平性指数达到了0.93,而原始TCP的公平性指数为0.99,虽然相比之下略有降低,不过其都保持在0.9以上,差距几乎可以忽略不计。从吞吐量角度俩看,改进后的4条TCP流中最大吞吐量为2724.14Mb,最小吞吐量为1212.36Mb,原始4条TCP数据流中最大吞吐量为914.05Mb,最小吞吐量为875.76Mb。二者相比较,改进后的最小吞吐量比为改进最大的吞吐量高出百分之四十左右。其效果还是有了很大的提升的。
表10为4,8条数据流丢包次数对比
从系统丢包的角度来看,表10中显示原始TCP在流数为4的情况下,其丢包次数为3104次,而当数据流增加到8时,丢包次数增大到了4786次,在短短100s内的仿真时间中,如此大量的丢包是导致其吞吐量处于较低水平的主要原因。丢包发生后,TCP源端检测到丢包事件,将其自身的发送速率大幅度降低,特别是当拥塞严重时,TCP源端更是直接将发送速率降为1。该实验中,当未修改的TCP发生第一次丢包事件时,由于此时其发送速率很大,随后的数据包就会出现大范围的连续丢包,其结果就是导致发送端连续的降低拥塞窗口大小,源端始终以较低的发送速率发送数据。而相比之下修改后的TCP,在流数为4的情况下,没有发生丢包现象,而在流数为8的情况下,总共才发生了8次丢包,较修改之前,性能得到了大幅度提升。
Claims (1)
1.一种基于自然启发的网络拥塞预防方法,其特征在于,根据自然启发算法构造TCP拥塞控制数学模型,构建网络模型如下:
步骤一、网络模型是从有线LAN经过AP连接到一个无线网络WLAN构成的异构网络,此网络由k个源端节点以及k个目的端节点组成,源端节点与目的端节点为一对一的关系,用集S={S1,S2……Sk}代表源端节点,用集D={D1,D2……Dk}代表目的端节点,设源端节点和目的端节点具有相同的回路响应时间RTT;
步骤二、利用生物捕食关系对异构网络TCP拥塞控制中各个参数的关系进行建模分析,建立异构网络捕食算法,整个网络中都使用基于窗口的TCP拥塞控制算法,算法步骤描述如下:
(1)构建网络生态模型:异构网络可以看做是一个小型生态系统,该网络生态系统由路由器,主机以及网络链路等诸多个栖息地组成;这些栖息地中生存着物种如:“拥塞窗口W”,“队列长度Q”,“丢包P”,以及“可用带宽C”等,将各个参数的大小比作生态系统中物种的数量,各物种之间相互影响、制约,网络生态模型利用物种数量控制问题来映射网络中拥塞控制问题,将物种间的捕食关系转化为网络参数间的制约关系;
(2)建立参数制约关系:TCP队列管理中“拥塞窗口”与“队列长度”之间以及“可用带宽”与“拥塞窗口”间的关系与捕食模型的逻辑关系十分相似,因此,受自然捕食关系启发,本发明构建三层网络捕食关系,即:可用带宽C---拥塞窗口W---队列长度Q,在这个“网络生态系统”中,拥塞窗口W约束着可用带宽C的数量,而队列长度Q约束着拥塞窗口W的数量,他们之间的相互捕食关系可以用如下公式表示为网络拥塞模型IPPM:
(4)
(5)
(6)
其中α表示C的出生率,β表示一个C遇到W的死亡率,Wi为数据流i的拥塞窗口大小,χi表示Wi的出生率,δ表示W捕食C的转化效率,ε表示每一个W遇到Q的死亡率,表示每一个被捕食的Wi转化为Q的效率,而γ代表Q的自然死亡率,其中σ是平滑因子,表示流量动态变化对C和Q的影响程度,在这个模型中,CC和CW是可用带宽C和拥塞窗口W的上界,因此将其设置为瓶颈链路的带宽大小BB,链队列与时延,瓶颈链路带宽等参数有如下关系:
(7)
(3)建立网络拥塞控制架构:将TCP网络拥塞控制按照丢包事件来进行区分,分为丢包前与丢包后两个阶段,分别建立不同的控制算法,将IPPM嵌入拥塞控制架构丢包前的控制算法中,TCP流发送端提取相应参数信息,通过IPPM算法计算出适应于当前网络状态并达到稳态时的发送窗口大小,并将其设置为ssthresh的初始值,进而启动TCP流数据包传送过程,最终达到链路带宽利用率稳态最大化以及数据流之间带宽资源公平分配的目标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610030240.5A CN105704055B (zh) | 2016-01-18 | 2016-01-18 | 一种基于自然启发的网络拥塞预防方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610030240.5A CN105704055B (zh) | 2016-01-18 | 2016-01-18 | 一种基于自然启发的网络拥塞预防方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105704055A true CN105704055A (zh) | 2016-06-22 |
CN105704055B CN105704055B (zh) | 2018-10-30 |
Family
ID=56226442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610030240.5A Expired - Fee Related CN105704055B (zh) | 2016-01-18 | 2016-01-18 | 一种基于自然启发的网络拥塞预防方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105704055B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107800638A (zh) * | 2016-09-05 | 2018-03-13 | 北京金山云网络技术有限公司 | 一种拥塞控制方法及装置 |
CN108881045A (zh) * | 2018-06-04 | 2018-11-23 | 河南科技大学 | 一种异构网络中基于QoS保障的拥塞控制方法 |
CN109639340A (zh) * | 2018-12-11 | 2019-04-16 | 成都天奥信息科技有限公司 | 一种适用于卫星链路的tcp加速方法 |
CN110290030A (zh) * | 2019-08-12 | 2019-09-27 | 北京字节跳动网络技术有限公司 | 网络状态检测方法、装置、电子设备及计算机可读介质 |
CN111200563A (zh) * | 2018-11-20 | 2020-05-26 | 蔚山科学技术院 | 一种拥塞控制方法及装置 |
CN111818570A (zh) * | 2020-07-25 | 2020-10-23 | 清华大学 | 一种面向真实网络环境的智能拥塞控制方法及系统 |
CN112911530A (zh) * | 2020-12-09 | 2021-06-04 | 广西电网有限责任公司电力科学研究院 | 一种小微智能传感器网络拥塞辨识模型的建立方法 |
CN118101526A (zh) * | 2024-04-24 | 2024-05-28 | 沈阳蓝巨人网络科技有限公司 | 基于信息通信技术的安全监测方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1886949A (zh) * | 2003-12-04 | 2006-12-27 | 英特尔公司 | 针对应用支持的预防性拥塞控制 |
CN103391253A (zh) * | 2013-08-05 | 2013-11-13 | 四川启程科技发展有限公司 | 网络拥塞的控制方法、装置及系统 |
-
2016
- 2016-01-18 CN CN201610030240.5A patent/CN105704055B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1886949A (zh) * | 2003-12-04 | 2006-12-27 | 英特尔公司 | 针对应用支持的预防性拥塞控制 |
CN103391253A (zh) * | 2013-08-05 | 2013-11-13 | 四川启程科技发展有限公司 | 网络拥塞的控制方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
张莎莎: "《基于主动网络的拥塞控制策略研究》", 《中国优秀硕士论文》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107800638A (zh) * | 2016-09-05 | 2018-03-13 | 北京金山云网络技术有限公司 | 一种拥塞控制方法及装置 |
CN108881045A (zh) * | 2018-06-04 | 2018-11-23 | 河南科技大学 | 一种异构网络中基于QoS保障的拥塞控制方法 |
CN108881045B (zh) * | 2018-06-04 | 2022-03-01 | 河南科技大学 | 一种异构网络中基于QoS保障的拥塞控制方法 |
CN111200563A (zh) * | 2018-11-20 | 2020-05-26 | 蔚山科学技术院 | 一种拥塞控制方法及装置 |
CN111200563B (zh) * | 2018-11-20 | 2023-07-07 | 蔚山科学技术院 | 一种拥塞控制方法及装置 |
CN109639340A (zh) * | 2018-12-11 | 2019-04-16 | 成都天奥信息科技有限公司 | 一种适用于卫星链路的tcp加速方法 |
CN109639340B (zh) * | 2018-12-11 | 2021-05-28 | 成都天奥信息科技有限公司 | 一种适用于卫星链路的tcp加速方法 |
CN110290030A (zh) * | 2019-08-12 | 2019-09-27 | 北京字节跳动网络技术有限公司 | 网络状态检测方法、装置、电子设备及计算机可读介质 |
CN111818570A (zh) * | 2020-07-25 | 2020-10-23 | 清华大学 | 一种面向真实网络环境的智能拥塞控制方法及系统 |
CN112911530A (zh) * | 2020-12-09 | 2021-06-04 | 广西电网有限责任公司电力科学研究院 | 一种小微智能传感器网络拥塞辨识模型的建立方法 |
CN112911530B (zh) * | 2020-12-09 | 2022-09-16 | 广西电网有限责任公司电力科学研究院 | 一种小微智能传感器网络拥塞辨识模型的建立方法 |
CN118101526A (zh) * | 2024-04-24 | 2024-05-28 | 沈阳蓝巨人网络科技有限公司 | 基于信息通信技术的安全监测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105704055B (zh) | 2018-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105704055B (zh) | 一种基于自然启发的网络拥塞预防方法 | |
CN106160953B (zh) | 一种基于学习型能效模型的传输方法 | |
CN101056260B (zh) | 混合网络中基于ecn机制的拥塞控制方法 | |
CN106059951B (zh) | 一种用于dcn中基于多级拥塞反馈的传输控制方法 | |
CN101860488B (zh) | 一种网络拥塞控制方法 | |
CN107070802B (zh) | 基于pid控制器的无线传感器网络拥塞控制方法 | |
CN113595923A (zh) | 一种网络拥塞控制方法及装置 | |
Su et al. | QRED: A Q-learning-based active queue management scheme | |
CN103269458B (zh) | 一种针对窄带网络情况下视频传输的调节控制方法 | |
CN113114581A (zh) | 基于多智能体深度强化学习的tcp拥塞控制方法及装置 | |
CN116455522B (zh) | 对灯光互动控制信息传输方法及系统 | |
Kaur et al. | A green hybrid congestion management scheme for IoT-enabled WSNs | |
Li et al. | Tcp-neuroc: Neural adaptive tcp congestion control with online changepoint detection | |
CN109698925A (zh) | 基于数据驱动的实时视频拥塞控制方法及装置 | |
Xia et al. | A multi-objective reinforcement learning perspective on internet congestion control | |
Zhang et al. | Novel Privacy Awareness Task Offloading Approach Based On Privacy Entropy | |
Hasegawa et al. | TCP symbiosis: congestion control mechanisms of TCP based on Lotka-Volterra competition model | |
Ali et al. | Efficient congestion control in communications using novel weighted ensemble deep reinforcement learning | |
Liao et al. | Towards fair and efficient learning-based congestion control | |
CN114915600B (zh) | 一种深度缓冲区下BBRv2拥塞控制方法 | |
Xia et al. | RLCC: practical learning-based congestion control for the internet | |
Chait et al. | Dynamic analysis of congested TCP networks | |
Li et al. | TCP-PPCC: Online-learning proximal policy for congestion control | |
CN116760777B (zh) | 一种基于abea3c的多路径拥塞控制方法 | |
Seo et al. | Inter-Protocol Fairness Evaluation of DQN-based Congestion Control Algorithms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200106 Address after: No. a419, 4th floor, saiyibo Digital Plaza, Luoyang, Henan 471000 Patentee after: Henan Chengxuan Information Technology Co., Ltd Address before: 471000 Xiyuan Road, Jianxi District, Henan, No. 48, No. Patentee before: Henan University of Science and Technology |
|
TR01 | Transfer of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181030 Termination date: 20210118 |
|
CF01 | Termination of patent right due to non-payment of annual fee |