一种弹性的网络带宽控制方法及其系统技术方案

技术编号:9740109 阅读:156 留言:0更新日期:2014-03-06 23:33
本发明专利技术公开了一种弹性的网络带宽控制方法及其系统,涉及通信网络技术领域。弹性的网络带宽控制方法包括:初始化各网络接口;接收数据包,将数据包送至识别模块确认数据包应用类型和IP地址;根据该数据包应用类型,查看是否存在该应用类型的缓存队列,如果不存在,则创建应用类型优先级队列和主机缓存队列,执行下一步;否则,直接执行下一步;按照应用类型优先级从高到低以及主机控制参数进行数据包发送;判定是否发送完所有数据包,如果是,程序停止,否则,仍然按照应用类型优先级从高到低以及主机控制参数进行数据包发送。本发明专利技术可广泛应用于有线或无线路由器、交换机等网络设备,能够对网络带宽进行实施调整与控制,保证带宽得到充分、合理的利用。

【技术实现步骤摘要】
一种弹性的网络带宽控制方法及其系统
本专利技术涉及网络通信领域,具体地说,是涉及一种弹性的网络带宽控制方法及其系统。
技术介绍
现有的网络带宽控制方案仅限于单一的应用类型或者主机类型控制,存在不能灵活、有效地利用带宽资源的缺陷。而且,当网络流量较大时,流量突变无法对带宽进行有效控制,很容易造成网络的总流量受到影响;而另一方面,当有数据包需要发送却取包不成功时,现有的控制无法进行带宽再分配,无法发送数据包,必然造成带宽资源浪费。
技术实现思路
本专利技术的目的在于提供一种弹性的网络带宽控制方法,以实现在不增加路由器或交换机等设备硬件成本的基础上提高带宽利用率,该方法包括以下步骤:一种弹性的网络带宽控制方法,包括以下步骤:(1)初始化各网络接口,设置数据传输速率、应用类型单位时间片、主机单位时间片、应用类型控制参数和主机控制参数,计算单位时间片内可发送最大字节数与主机单位时间片内不同方式下可发送最大字节数;(2)接收数据包,并识别其应用类型和IP地址;(3)根据该数据包的应用类型,查看是否存在该应用类型的缓存队列,如果不存在,则创建该应用类型优先级队列和主机缓存队列,并执行下一步;否则,直接执行下一步;(4)按照应用类型优先级从高到低以及主机控制参数进行数据包发送;(5)判断是否发送完所有的数据包,如果是,则程序停止,否则,返回执行步骤(4)。其中,所述步骤(1)中应用类型控制参数为应用类型优先级值;而主机控制参数则包括主机IP地址、带宽使用模式、保证方式属性值和限制方式属性值、突发属性值和再分配使能属性值;所述带宽使用模式包括共享模式和限制模式,相应地,所述主机单位时间片内不同方式包括:主机单位时间片内保证且独占方式、主机单位时间片内保证且共享方式、主机单位时间片内限制且独占方式和主机单位时间片内限制且共享方式。而所述步骤(1)中单位时间片内可发送最大字节数与主机单位时间片内不同方式下可发送最大字节数,分别如下式:单位时间片内可发送最大字节数=数据传输速率*应用类型单位时间片*1024*1000/8(1-1)主机单位时间片内保证且独占方式下可发送最大字节数=保证方式下数据传输速率*主机单位时间片*1024/8(1-2)主机单位时间片内保证且共享方式下可发送最大字节数=保证方式下数据传输速率*主机单位时间片*1024/8/共享主机台数(1-3)主机单位时间片内限制且独占方式下可发送最大字节数=限制方式下数据传输速率*主机单位时间片*1024/8(1-4)主机单位时间片内限制且共享方式下可发送最大字节数=限制方式下数据传输速率*主机单位时间片*1024/8/共享主机台数(1-5)。进一步地,所述步骤(3)中创建应用类型优先级队列的方法如下:(3.1)查看数据包的协议类型与端口号,根据设置的优先级值计算优先级分类值;(3.2)根据预设的优先级分类值范围,创建高应用类型优先级队列、中应用类型优先级队列和低应用类型优先级队列。优选地,所述步骤(3)中创建主机缓存队列的原则为:根据主机IP地址分别建立主机缓存队列。而且,每个主机缓存队列均设置保证方式下数据传输速率和限制方式下数据传输速率,其中,限制方式下数据传输速率小于或等于网络最大数据传输速率,而保证方式下数据传输速率则小于限制方式下数据传输速率。所述步骤(4)中按应用类型优先级进行数据包发送的方法如下:(4.1)计算应用类型时间片数目;(4.2)判断应用类型时间片数目是否大于零,如果是,则当前时间片内剩余可发送总字节数叠加,应用类型记录时间为当前时刻,否则,执行下一步;(4.3)根据高应用类型优先级队列、中应用类型优先级队列和低应用类型优先级队列是否有数据包来计算应用类型优先级队列相关参数;(4.4)判断优先级比例和是否为零,如果是,则表明无数据包,程序立即结束;否则,则表明有数据包等待发送,数据包记录标志设为1;(4.5)判断当前应用类型优先级标志与上一轮时间片内该应用类型优先级标志是否相同,若相同,则按照上一轮各应用类型优先级队列带宽分配比例执行,否则,替换应用类型优先级标志,重新计算各应用类型优先级队列带宽分配比例和当前单位时间片内各应用类型优先级剩余可发送总字节数;(4.6)查看高应用类型优先级队列是否有数据包,如果无,则执行步骤(4.9),否则,执行下一步;(4.7)判断是否满足复合条件1:第一次从该应用类型优先级队列中取包,且单位时间片内高应用类型优先级队列剩余可发送总字节数小于等于零,且单位时间片内中应用类型优先级队列剩余可发送总字节数大于零,或单位时间片内低应用类型优先级队列剩余可发送总字节数大于零;如果是,则高应用类型优先级状态标志设为1,并执行步骤(4.9),否则,从高应用类型优先级队列取包,并执行下一步;(4.8)判断取包是否成功,如果是,则发送数据包,并更新主机单位时间片内不同方式下剩余可发送总字节数与单位时间片内高应用类型优先级队列剩余可发送总字节数,否则,执行下一步;(4.9)查看中应用类型优先级队列是否有数据包,如果无,则执行步骤(4.12),否则,执行下一步;(4.10)判断是否满足复合条件2:第一次从该应用类型优先级队列中取包,且单位时间片内中应用类型优先级队列剩余可发送总字节数小于等于零,且单位时间片内低应用类型优先级队列剩余可发送总字节数大于零;如果是,则中应用类型优先级标志设为1,并执行步骤(4.12),否则,从中应用类型优先级队列取包,并执行下一步;(4.11)判断取包是否成功,如果是,则发送数据包,并更新主机单位时间片内不同方式下剩余可发送总字节数与单位时间片内中应用类型优先级队列剩余可发送总字节数,否则,执行下一步;(4.12)查看低应用类型优先级队列是否有数据包,如果无,则执行步骤(4.15),否则,执行下一步;(4.13)判断是否满足复合条件3:第一次从该应用类型优先级队列中取包,且单位时间片内低应用类型优先级队列剩余可发送总字节数小于等于零;如果是,则低应用类型优先级标志设为1,并执行步骤(4.15),否则,从低应用类型优先级队列取包,执行下一步;(4.14)判断取包是否成功,如果是,则发送数据包,能够更新主机单位时间片内不同方式下剩余可发送总字节数与单位时间片内低应用类型优先级队列剩余可发送总字节数,否则,执行下一步,准备第二次查看相应的应用类型优先级队列;(4.15)查看数据包记录标志与应用类型优先级标志,判定复合条件4:数据包记录标志为零,且高应用类型优先级标志、中应用类型优先级标志和低应用类型优先级标志至少有一个不为0;如果是,则执行下一步,否则,返回步骤(4.1);(4.16)判断高应用类型优先级标志是否为1,如果是,则设置数据包记录标志为1,将高应用类型优先级标志、中应用类型优先级标志和低应用类型优先级标志全部重置为零,并从高应用类型优先级队列中再次取包,执行步骤(4.6);否则,执行下一步;(4.17)判断中应用类型优先级标志是否为1,如果是,则设置数据包记录标志为1,将高应用类型优先级标志、中应用类型优先级标志和低应用类型优先级标志全部重置为零,从中应用类型优先级队列中再次取包,执行步骤(4.9);否则,执行下一步;(4.18)判断低应用类型优先级标志是否为1,如果是,则设置数据包记录标志为本文档来自技高网...
一种弹性的网络带宽控制方法及其系统

【技术保护点】
一种弹性的网络带宽控制方法,其特征在于,包括以下步骤:?(1)初始化各网络接口,设置数据传输速率、应用类型单位时间片、主机单位时间片、应用类型控制参数和主机控制参数,计算单位时间片内可发送最大字节数与主机单位时间片内不同方式下可发送最大字节数;?(2)接收数据包,并识别其应用类型和IP地址;?(3)根据该数据包的应用类型,查看是否存在该应用类型的缓存队列,如果不存在,则创建该应用类型优先级队列和主机缓存队列,并执行下一步;否则,直接执行下一步;?(4)按照应用类型优先级从高到低以及主机控制参数进行数据包发送;?(5)判断是否发送完所有的数据包,如果是,则程序停止,否则,返回执行步骤(4)。

【技术特征摘要】
1.一种弹性的网络带宽控制方法,其特征在于,包括以下步骤:(1)初始化各网络接口,设置数据传输速率、应用类型单位时间片、主机单位时间片、应用类型控制参数和主机控制参数,计算单位时间片内可发送最大字节数与主机单位时间片内不同方式下可发送最大字节数;其中,所述主机控制参数则包括主机IP地址、带宽使用模式、保证方式属性值和限制方式属性值、突发属性值和再分配使能属性值;(2)接收数据包,并识别其应用类型和IP地址;(3)根据该数据包的应用类型,查看是否存在该应用类型的缓存队列,如果不存在,则创建该应用类型优先级队列和主机缓存队列,并执行下一步;否则,直接执行下一步;(4)按照应用类型优先级从高到低以及主机控制参数进行数据包发送;(5)判断是否发送完所有的数据包,如果是,则程序停止,否则,返回执行步骤(4);其中,所述步骤(3)中创建主机缓存队列的原则为:根据主机IP地址分别建立主机缓存队列,且每个主机缓存队列均设置保证方式下数据传输速率和限制方式下数据传输速率。2.根据权利要求1所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(1)中应用类型控制参数为应用类型优先级值;所述带宽使用模式包括共享模式和限制模式,相应地,所述主机单位时间片内不同方式包括:主机单位时间片内保证且独占方式、主机单位时间片内保证且共享方式、主机单位时间片内限制且独占方式和主机单位时间片内限制且共享方式。3.根据权利要求1所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(1)中单位时间片内可发送最大字节数与主机单位时间片内不同方式下可发送最大字节数,分别如下式:单位时间片内可发送最大字节数=数据传输速率*应用类型单位时间片*1024*1000/8(1-1)主机单位时间片内保证且独占方式下可发送最大字节数=保证方式下数据传输速率*主机单位时间片*1024/8(1-2)主机单位时间片内保证且共享方式下可发送最大字节数=保证方式下数据传输速率*主机单位时间片*1024/8/共享主机台数(1-3)主机单位时间片内限制且独占方式下可发送最大字节数=限制方式下数据传输速率*主机单位时间片*1024/8(1-4)主机单位时间片内限制且共享方式下可发送最大字节数=限制方式下数据传输速率*主机单位时间片*1024/8/共享主机台数(1-5)。4.根据权利要求1所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(3)中创建应用类型优先级队列的方法如下:(3.1)查看数据包的协议类型与端口号,根据设置的优先级值计算优先级分类值;(3.2)根据预设的优先级分类值范围,创建高应用类型优先级队列、中应用类型优先级队列和低应用类型优先级队列。5.根据权利要求1所述的一种弹性的网络带宽控制方法,其特征在于,所述限制方式下数据传输速率小于或等于网络最大数据传输速率,而保证方式下数据传输速率则小于限制方式下数据传输速率。6.根据权利要求1所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(4)中按应用类型优先级进行数据包发送的方法如下:(4.1)计算应用类型时间片数目;(4.2)判断应用类型时间片数目是否大于零,如果是,则当前时间片内剩余可发送总字节数叠加,应用类型记录时间为当前时刻,否则,执行下一步;(4.3)根据高应用类型优先级队列、中应用类型优先级队列和低应用类型优先级队列是否有数据包来计算应用类型优先级队列相关参数;(4.4)判断优先级比例和是否为零,如果是,则表明无数据包,程序立即结束;否则,则表明有数据包等待发送,数据包记录标志设为1;(4.5)判断当前应用类型优先级标志与上一轮时间片内该应用类型优先级标志是否相同,若相同,则按照上一轮各应用类型优先级队列带宽分配比例执行,否则,替换应用类型优先级标志,重新计算各应用类型优先级队列带宽分配比例和当前单位时间片内各应用类型优先级剩余可发送总字节数;(4.6)查看高应用类型优先级队列是否有数据包,如果无,则执行步骤(4.9),否则,执行下一步;(4.7)判断是否满足复合条件1:第一次从该应用类型优先级队列中取包,且单位时间片内高应用类型优先级队列剩余可发送总字节数小于等于零,且单位时间片内中应用类型优先级队列剩余可发送总字节数大于零,或单位时间片内低应用类型优先级队列剩余可发送总字节数大于零;如果是,则高应用类型优先级状态标志设为1,并执行步骤(4.9),否则,从高应用类型优先级队列取包,并执行下一步;(4.8)判断取包是否成功,如果是,则发送数据包,并更新主机单位时间片内不同方式下剩余可发送总字节数与单位时间片内高应用类型优先级队列剩余可发送总字节数,否则,执行下一步;(4.9)查看中应用类型优先级队列是否有数据包,如果无,则执行步骤(4.12),否则,执行下一步;(4.10)判断是否满足复合条件2:第一次从该应用类型优先级队列中取包,且单位时间片内中应用类型优先级队列剩余可发送总字节数小于等于零,且单位时间片内低应用类型优先级队列剩余可发送总字节数大于零;如果是,则中应用类型优先级标志设为1,并执行步骤(4.12),否则,从中应用类型优先级队列取包,并执行下一步;(4.11)判断取包是否成功,如果是,则发送数据包,并更新主机单位时间片内不同方式下剩余可发送总字节数与单位时间片内中应用类型优先级队列剩余可发送总字节数,否则,执行下一步;(4.12)查看低应用类型优先级队列是否有数据包,如果无,则执行步骤(4.15),否则,执行下一步;(4.13)判断是否满足复合条件3:第一次从该应用类型优先级队列中取包,且单位时间片内低应用类型优先级队列剩余可发送总字节数小于等于零;如果是,则低应用类型优先级标志设为1,并执行步骤(4.15),否则,从低应用类型优先级队列取包,执行下一步;(4.14)判断取包是否成功,如果是,则发送数据包,能够更新主机单位时间片内不同方式下剩余可发送总字节数与单位时间片内低应用类型优先级队列剩余可发送总字节数,否则,执行下一步,准备第二次查看相应的应用类型优先级队列;(4.15)查看数据包记录标志与应用类型优先级标志,判定复合条件4:数据包记录标志为零,且高应用类型优先级标志、中应用类型优先级标志和低应用类型优先级标志至少有一个不为0;如果是,则执行下一步,否则,返回步骤(4.1);(4.16)判断高应用类型优先级标志是否为1,如果是,则设置数据包记录标志为1,将高应用类型优先级标志、中应用类型优先级标志和低应用类型优先级标志全部重置为零,并从高应用类型优先级队列中再次取包,执行步骤(4.6);否则,执行下一步;(4.17)判断中应用类型优先级标志是否为1,如果是,则设置数据包记录标志为1,将高应用类型优先级标志、中应用类型优先级标志和低应用类型优先级标志全部重置为零,从中应用类型优先级队列中再次取包,执行步骤(4.9);否则,执行下一步;(4.18)判断低应用类型优先级标志是否为1,如果是,则设置数据包记录标志为1,将高应用类型优先级标志、中应用类型优先级标志和低应用类型优先级标志全部重置为零,从低应用类型优先级队列中再次取包,执行步骤(4.12);否则,返回步骤(4.1)。7.根据权利要求6所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(4.1)中计算应用类型时间片数目的方法如下式:应用类型时间片数目=(当前时刻-应用类型记录时刻)/应用类型单位时间片(2-1)8.根据权利要求6所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(4.2)中当前时间片内剩余可发送总字节数叠加的具体方法如下:当前时间片内剩余可发送总字节数=单位时间片内可发送最大字节数*时间片数+上一个时间片内剩余可发送总字节数(3-1)如果式(3-1)的结果大于每秒钟可发送的最大字节数,则有当前时间片内剩余可发送总字节数=每秒钟可发送的最大字节数(3-2)。9.根据权利要求6所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(4.3)中应用类型优先级队列相关参数包括:各优先级标志、各优先级比例值、优先级比例和,以及各优先级队列带宽分配比例,计算方法如下:高应用类型优先级队列有数据,该高应用类型优先级标志置1,否则置0;中应用类型优先级队列有数据,该中应用类型优先级标志置1,否则置0;低应用类型优先级队列有数据,该低应用类型优先级标志置1,否则置0;高应用类型优先级标志为1时,高应用类型优先级比例值为5,否则为0;中应用类型优先级标志为1时,中应用类型优先级比例值为4,否则为0;低应用类型优先级标志为1时,低应用类型优先级比例值为1,否则为0;优先级比例和=高应用类型优先级比例值+中应用类型优先级比例值+低应用类型优先级比例值(4-1)高优先级队列带宽分配比例=高应用类型优先级比例值/优先级比例和(4-2)中优先级队列带宽分配比例=中应用类型优先级比例值/优先级比例和(4-3)低优先级队列带宽分配比例=低应用类型优先级比例值/优先级比例和(4-4)。10.根据权利要求6所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(4.5)中重新计算当前单位时间片内各优先级剩余可发送总字节数的方法如下:当前单位时间片内高应用类型优先级队列剩余可发送总字节数=单位时间片内可发送最大字节数*高优先级队列带宽分配比例(5-1)当前单位时间片内中应用类型优先级队列剩余可发送总字节数=单位时间片内可发送最大字节数*中优先级队列带宽分配比例(5-2)当前单位时间片内低应用类型优先级队列剩余可发送总字节数=单位时间片内可发送最大字节数*低优先级队列带宽分配比例(5-3)。11.根据权利要求6所述的一种弹性的网络带宽控制方法,其特征在于,所述步骤(4.8)中更新单位时间片内高应用类型优先级队列剩余可发送总字节数的方法如下:单位时间片内高应用类型优先级队列剩余可发送总字节数=当前时刻高应用类型优先级队列剩余可发送总字节数-所取包的包长字节数(6-1)所述步骤(4.11)中更新单位时间片内中应用类型优先级队列剩余可发送总字节数的方法如下:单位时间片内中应用类型优先级队列剩余可发送总字节数=当前时刻中应用类型优先级队列剩余可发送总字节数-所取包的包长字节数(6-2)所述步骤(4.14)中更新单位时间片内低应用类型优先级队列剩余可发送总字节数的方法如下:单位时间片内低应用类型优先级队列剩余可发送总字节数=当前时刻低应用类型优先级队列剩余可发送最大字节数-所取包的包长字节数(6-3)所述步骤(4.8)、(4.11)、(4.14)中更新主机单位时间片内各种方式下可发送最大字节数的方法如下:主机单位时间片内保证且共享方式下剩余可发送最大字节数=主机当前时刻保证且共享方式下剩余可发送总字节数-所取包的包长字节数(6-4)主机单位时间片内保证且独占方式下...

【专利技术属性】
技术研发人员:胡强
申请(专利权)人:深圳市磊科实业有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1