CN105530202B - 一种带宽分配方法及服务器 - Google Patents
一种带宽分配方法及服务器 Download PDFInfo
- Publication number
- CN105530202B CN105530202B CN201511031606.2A CN201511031606A CN105530202B CN 105530202 B CN105530202 B CN 105530202B CN 201511031606 A CN201511031606 A CN 201511031606A CN 105530202 B CN105530202 B CN 105530202B
- Authority
- CN
- China
- Prior art keywords
- bandwidth
- user
- current
- primary
- users
- 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.)
- Active
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/70—Admission control; Resource allocation
- H04L47/76—Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种带宽分配方法及服务器,涉及通信领域,能够灵活分配带宽资源,充分利用带宽资源,提高用户体验。包括:服务器接收第一用户发送的请求分配带宽的资源请求信息;判断预设的运行带宽与当前占用总带宽的差值是否大于或等于所述第一用户对应的最大带宽;若差值大于或等于第一用户对应的最大带宽,则为第一用户分配最大带宽;若所述差值小于所述第一用户对应的最大带宽,则判断第一用户的基本带宽加上当前基本总带宽的和是否小于或等于运行带宽;若第一用户的基本带宽加上当前基本总带宽的和小于或等于运行带宽,则将N个用户的带宽资源重新分配为对应的基本带宽,并为第一用户分配基本带宽。
Description
技术领域
本发明涉及通信领域,尤其涉及一种带宽分配方法及服务器。
背景技术
NAT(Network Address Translate,网络地址转换)服务器主要用于私网地址和公网地址间的动态转换,通常会将多个内网地址转换为一个或几个公网地址,实现大量内网用户对公网地址的资源共享。因此,还需要对各个内网用户访问外网所占的带宽进行分配管理,以防止某一用户独占资源,保证内网用户有良好的用户体验。
现有的NAT服务器通过以下两种技术进行内网用户进行带宽管理:1)NAT服务器通过设置端口的连接数来限制通过该端口的外网访问量,即使存在空闲带宽也不能为某个端口分配更多的带宽资源;2)为每个用户提供一个连接数限值和单独的带宽限值,一经设定每个用户被分配到的带宽就不会改变,用户数据量较大时,也无法为用户分配更多带宽。
可见,目前的带宽分配管理方案灵活性较差,不能充分利用带宽资源,导致用户体验较差。
发明内容
本发明提供一种带宽分配方法及服务器,能够灵活分配带宽资源,充分利用带宽资源,提高用户体验。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,公开了一种带宽分配方法,包括:
服务器接收第一用户发送的请求分配带宽的资源请求信息;
所述服务器判断预设的运行带宽与当前占用总带宽的差值是否大于或等于所述第一用户对应的最大带宽;所述当前占用总带宽是已分配运行带宽资源的当前所有用户占用带宽资源的总和;
若所述差值大于或等于所述第一用户对应的最大带宽,则为所述第一用户分配对应的最大带宽;
若所述差值小于所述第一用户对应的最大带宽,则判断所述第一用户的基本带宽加上当前基本总带宽的和是否小于或等于所述运行带宽;所述当前基本总带宽是已分配运行带宽资源的当前所有用户的基本带宽的总和;
若所述第一用户的基本带宽加上当前基本总带宽的和小于或等于所述运行带宽,则将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽。
结合第一方面,在第一方面的第一种可能的实现方式中,所述服务器接收第一用户发送的请求分配带宽的资源请求信息之前,所述方法还包括:
所述服务器为每一个用户配置基本带宽和最大带宽,并记录所述每一个用户对应的基本带宽和最大带宽;所述预设内网网段为所述服务器对应的内网网段。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽之后,所述方法还包括:
若所述当前基本总带宽加上所述第一用户的基本带宽的和小于所述运行带宽,则将剩余带宽平均分配给所述当前所有用户与所述第一用户,或者将剩余带宽依次分配给所述当前所有用户与所述第一用户中优先级高的用户使其达到最大带宽。
结合第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述方法还包括:
若所述第一用户的基本带宽加上当前基本总带宽的和大于所述运行带宽,则判断保活带宽是否被占满;所述保活带宽与所述运行带宽的和为预设的所有用户能够占用的最大带宽;
若所述保活带宽未被占满,则为所述第一用户分配等待保活带宽,指示所述第一用户等待被分配运行带宽。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述为所述第一用户分配等待保活带宽之后,所述方法还包括:
将所述第一用户记录在等待保活用户表中。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述方法还包括:
若有第二用户释放带宽资源,所述服务器则更新所述当前占用总带宽为减去所述第二用户释放的带宽后的剩余带宽;
若所述运行带宽与更新后的当前占用总带宽的差值带宽大于或等于所述等待保活用户表中的第三用户的基本带宽,则为所述第三用户分配对应的基本带宽;
若所述差值带宽小于所述等待保活用户表中的所有用户的基本带宽,则将所述差值带宽分配给当前所有用户中的至少一个用户;所述当前所有用户为所述N个用户中除所述第二用户外的任一个用户。
第二方面,公开了一种服务器,包括:
接收单元,用于接收第一用户发送的请求分配带宽的资源请求信息;
判断单元,用于判断预设的运行带宽与当前占用总带宽的差值是否大于或等于所述第一用户对应的最大带宽;所述当前占用总带宽是已分配运行带宽资源的当前所有用户占用带宽资源的总和;
分配单元,用于若所述判断单元判断所述差值大于或等于所述第一用户对应的最大带宽,则为所述第一用户分配对应的最大带宽;
所述判断单元还用于,若所述差值小于所述第一用户对应的最大带宽,则判断所述第一用户的基本带宽加上当前基本总带宽的和是否小于或等于所述运行带宽;所述当前基本总带宽是已分配运行带宽资源的当前所有用户的基本带宽的总和;
所述分配单元还用于,若所述判断单元判断所述第一用户的基本带宽加上当前基本总带宽的和小于或等于所述运行带宽,则将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽。
结合第二方面,在第二方面的第一种可能的实现方式中,还包括配置单元、记录单元,
所述配置单元用于,为每一个用户配置基本带宽和最大带宽;所述预设内网网段为所述服务器对应的内网网段或是对应的内网网段的子网段(此处可以为不同子网段分配不同的基本带宽和最大带宽);
所述记录单元用于,记录所述每一个用户对应的基本带宽和最大带宽。
结合第二方面或第二方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述分配单元还用于,在将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽之后,若所述判断单元判断所述当前基本总带宽加上所述第一用户的基本带宽的和小于所述运行带宽,则将平均分配给所述当前所有用户与所述第一用户,或者将剩余带宽依次分配给所述当前所有用户与所述第一用户中优先级高的用户使其达到最大带宽。
结合第二方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述判断单元还用于,若所述第一用户的基本带宽加上当前基本总带宽的和大于所述运行带宽,则判断保活带宽是否被占满;所述保活带宽与所述运行带宽的和为预设的所有用户能够占用的最大带宽;
所述分配单元还用于,若所述判断单元判断所述保活带宽未被占满,则为所述第一用户分配等待保活带宽,指示所述第一用户等待被分配运行带宽。
结合第二方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述记录单元还用于,在所述分配单元为所述第一用户分配等待保活带宽之后,将所述第一用户记录在等待保活用户表中。
结合第二方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,还包括更新单元,
所述更新单元用于,若有第二用户释放带宽资源,则更新所述当前占用总带宽为减去所述第二用户释放的带宽后的剩余带宽;
所述分配单元用于,若所述判断单元判断所述运行带宽与更新后的当前占用总带宽的差值带宽大于或等于所述等待保活用户表中的第三用户的基本带宽,则为所述第三用户分配对应的基本带宽;
所述分配单元还用于,若所述判断单元判断所述差值带宽小于所述等待保活用户表中的所有用户的基本带宽,则将所述差值带宽分配给当前所有用户中的至少一个用户;所述当前所有用户为所述N个用户中除所述第二用户外的任一个用户。
本发明提供的带宽分配方法及服务器,接收第一用户发送的请求分配带宽的资源请求信息;若运行带宽与当前占用总带宽的差值大于或等于第一用户对应的最大带宽,则为第一用户分配其最大带宽。若所述差值小于第一用户对应的最大带宽,则判断第一用户的基本带宽加上当前基本总带宽的和是否小于或等于运行带宽。若第一用户的基本带宽加上当前基本总带宽的和小于或等于运行带宽,则将N个用户(当前已分配资源的用户)的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽。现有技术中,为端口或用户分配的带宽一经分配就不会改变,灵活性较差,不能充分利用带宽资源,导致用户体验较差。本发明提供的方法及服务器,能够灵活分配带宽资源,充分利用带宽资源,提高用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例1提供的带宽分配方法的流程示意图;
图2为本发明实施例1提供的带宽分配方法的另一流程示意图;
图3为本发明实施例1提供的带宽分配方法的另一流程示意图;
图4为本发明实施例2提供的服务器的结构框图;
图5本发明实施例2提供的服务器的另一结构框图;
图6为本发明实施例2提供的服务器的另一结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
NAT主要用于私网地址和公网地址见的动态转换,通常会将多个内网地址转换为一个或几个公网地址,实现大量内网用户对公网地址的资源共享。由于公网接口必然存在一个带宽资源限制,NAT服务器在进行公私网络地址转换时,必须要对内网用户进行带宽管理,防止某一用户独占资源或对服务器进行流量攻击,同时还能保证内网用户有良好的用户体验。
现有技术通过对端口或用户设置带宽限值来达到对内网用户带宽分配管理的目的。但是,均不能动态调整内网用户的带宽限值,不够灵活。且不能有效利用带宽资源,导致用户体验较差。
对内外用户而言,在访问公网时,通常需要一个基本带宽以满足自己的最基本性能需求,同时需要在网络资源充足时能不局限于基本需求,但又不能因此过多的占用带宽。对NAT服务器而言,在进行内网资源控制时,往往还需要对NAT用户数量进行管理,在带宽资源耗尽后,能够为后续进行资源请求但又暂时无法为其分配资源的用户提供一个访问优先机制或排队功能。
基于此,本发明的原理在于:为内网用户设置基本带宽以及最大带宽,在用户请求带宽资源时,判断当前剩余的带宽能否满足用户对应的最大带宽,若满足则为该用户分配最大带宽,若不满足,则调整已分配带宽的用户的占用带宽为基本带宽,再根据这些用户释放的带宽为上述请求带宽资源的用户分配带宽。
实施例1:
本发明实施例提供一种带宽分配方法,如图1所示,所述方法包括以下步骤:
101、服务器接收第一用户发送的请求分配带宽的资源请求信息。
通常,内网用户请求访问外网时,会向NAT服务器发送TTTP请求,指示NAT服务器该内网用户需要访问外网资源。该请求携带了内网用户的内网IP地址。若NAT服务器允许其访问外网,则会为该内网用户分配一个外网IP地址,以便其访问外网资源。
需要说明的是,所述资源请求信息携带第一用户的内网IP地址,用于指示所述服务器为所述第一用户分配带宽资源。所述第一用户为所述服务器接入的内网用户中的任一个。所述服务器可以是NAT服务器,本发明实施例中以IP地址区分用户,若第一用户为IP地址1,也就是说所述资源请求信息来自于IP地址1。
服务器可以为每一个用户配置基本带宽和最大带宽,并记录所述每一个用户对应的基本带宽和最大带宽。其中,所述预设内网网段为所述服务器对应的内网网段。所述内网网段是网络层中由网关或路由器等设备隔开的不同部分。例如IP地址为
假定服务器对应的内网为192.168.0.0,位于掩码255.255.0.0中,IP地址为192.168.0.1~192.168.0.254的设备就位于掩码255.255.255.0的同一子网中,也就是处于同一网段,192.168.1.1~192.168.1.254的设备就位于掩码255.255.255.0的另一子网中,也处于同一网段。在发明及实施例中,用户即一个IP地址。
具体实现中,可以通过创建如表1所示的链表数据结构记录预设内网网段内的每个子网段的每一个用户对应的基本带宽和最大带宽。
表1
服务器可以在表1中获取到为第一用户的设置的最大带宽以及基本带宽。
另外,还可以为请求带宽资源的用户(如:第一用户)设置限制条件,如:当用户预设时长内请求次数超过预设门限值时,则直接拒绝用户的请求。
102、所述服务器判断预设的运行带宽与当前占用总带宽的差值是否大于或等于所述第一用户对应的最大带宽。
其中,所述当前占用总带宽是已分配运行带宽资源的当前所有用户占用带宽资源的总和。预设的运行带宽是所述服务器对应网段下的所有用户的允许带宽的一部分,或等于所述服务器对应网段下的所有用户的允许带宽。运行带宽是NAT管理员根据经验以及内网用户的需求、数目等预先设置的用于维持内网用户的外网访问需求的带宽。
示例的,所述服务器对应网段下的所有用户允许带宽为A,则运行带宽小于或等于A。另外,运行带宽与当前占用总带宽的差值,即所述服务器对应网段的所有用户的允许带宽中当前剩余的带宽。
具体实现中,服务器创建如表2所示的链表数据结构记录为用户分配的当前带宽,以及已分配带宽资源的用户当前占用总带宽。另外,还可以记录已分配带宽资源的用户对应的基本带宽与最大带宽,进而可以确定出已分配带宽资源的用户的基本总带宽。
表2
需要说明的是,每个用户的当前带宽总是大于等于其对应的基本带宽,且小于等于其对应的最大带宽。示例的,参考表2,H大于等于X,且小于等于Z。
示例的,若服务器已为192.168.0.1、192.168.1.254两个用户分配带宽资源,所述服务器对应网段下的所有用户允许带宽为A,则所述运行带宽与当前占用总带宽的差值为A-H-E。
103、若所述差值大于或等于所述第一用户对应的最大带宽,则为所述第一用户分配对应的最大带宽。
通常,NAT负责为某个网段的用户分配外网IP地址及带宽资,并且预先配置了NAT服务器对应网段内的所有用户的允许带宽W(即能够供NAT服务器对应网段内的所有用户使用的带宽总共为
W)。也就是说,所述服务器对应网段的所有用户的允许带宽中当前剩余的带宽,足以满足第一用户对应的最大带宽需求,则为第一用户分配最大带宽。
104、若所述差值小于所述第一用户对应的最大带宽,则判断所述第一用户的基本带宽加上当前基本总带宽的和是否小于或等于所述运行带宽;所述当前基本总带宽是已分配运行带宽资源的当前所有用户的基本带宽的总和。
当服务器对应网段的所有用户的允许带宽中当前剩余的带宽,不足以满足第一用户的最大带宽需求,则需要判断在每个接入用户均分配基本带宽的前提下,是否满足第一用户的基本带宽需求。
需要说明的是,所述当前基本总带宽是已分配带宽资源的用户(即已接入外网的用户)的基本带宽之和。示例的,参考表2,若服务器已为192.168.0.1、192.168.1.254这两个用户分配带宽资源,则当前基本总带宽为X+Y。
105、若所述第一用户的基本带宽加上当前基本总带宽的和小于或等于所述运行带宽,则将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽。
也就是说,若所述第一用户的基本带宽加上当前基本总带宽的和小于或等于所述运行带宽,则表示运行带宽满足当前所有用户以及第一用户的基本带宽需求,这样,服务器,则减少当前所有用户的带宽为各自的基本带宽,并为第一用户分配基本带宽。示例的,参考表2,将为用户192.168.0.1的分配的带宽调整至基本带宽X,将为用户192.168.1.254分配的带宽调整为基本带宽Y。
进一步地,在本发明的优选实施中,所述将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽之后,所述方法还包括:
若所述当前基本总带宽加上所述第一用户的基本带宽的和小于所述运行带宽,则将剩余带宽平均分配给所述当前所有用户与所述第一用户,或者将剩余带宽依次分配给所述当前所有用户与所述第一用户中优先级高的用户使其达到最大带宽。。
也就是说,将所述剩余带宽进行分配,当前所有用户与所述第一用户被分配到基本带宽后,还有可能分配到带宽。但是并不一定是每个用户都会被再次分配到带宽资源。示例的,若第一用户请求分配带宽前,以为N个用户分配带宽资源,即本发明所述的当前所有用户即这N个用户。进而,可以将所述剩余带宽平均分配给N+1个用户(即所述N个用户与所述第一用户),也可以按照用户的优先级顺序,将剩余带宽分配给这N+1个用户中优先级较高的若干个用户,具体分配时,可以给优先级较高的用户分配较大比例的带宽。如:将剩余带宽的40%分配给这N+1个用户中优先级最高的用户,将剩余带宽的30%分配给这N+1个用户中优先级第二的用户,将剩余带宽的20%分配给这N+1个用户中优先级第三的用户,将剩余带宽的10%分配给这N+1个用户中优先级第四的用户。
如图2所示,本发明提供的带宽分配方法还可以包括以下步骤:
106、若所述第一用户的基本带宽加上当前基本总带宽的和大于所述运行带宽,则判断保活带宽是否被占满。
其中,所述保活带宽与所述运行带宽的和为预设的所有用户能够占用的最大带宽,示例的,可以是预设网段的所有用户能够占用的最大带宽。所述保活带宽可以被用作等待保活,指示用户等待保活,即等候服务器为其分配带宽资源。
107、若所述保活带宽未被占满,则为所述第一用户分配等待保活带宽,指示所述第一用户等待被分配运行带宽。
所述为所述第一用户分配等待保活带宽之后,还可以将所述第一用户记录在等待保活用户表中。服务器还可以创建如表3(即等待保活用户表)所示的链表数据结构记录等待保活的用户,以及等待保活用户各自对应的基本带宽。服务器为第一用户分配等待保活带宽后,一旦有用户释放带宽资源,则有可能为所述第一用户分配资源。
表3
等待保活用户 | 基本带宽 |
IP1 | *** |
IP2 | *** |
…… | …… |
这里需要说明的是,当有用户释放带宽资源后,所述第一用户并不一定就会被分配资源,这是由于服务器会根据预设规则在等待保活用户表中确定一个用户,为其分配基本带宽。这里的预设规则,可以是按照用户记录在等待保活表中的先后顺序选取最先被记录的,也可以是按照用户的优先级由高到低的顺序选取。
108、若所述保活带宽被占满,则为拒绝所述第一用户的请求。
也就是说,不允许第一用户访问外网。
进一步地,若是服务器对应网段所有用户的允许带宽中预留了所述保活带宽,即运行带宽小于服务器对应网段所有用户的允许带宽,那么就可能会为请求资源但暂时未分配到带宽资源的用户提供等待保活机制。当然,也可以不设置保活带宽,不提供等待保活的排队机制。具体实现中,有用户释放带宽资源后,可以根据图3所示的方法分配带宽。
参考图3,具体包括以下步骤:
201、若有第二用户释放带宽资源,所述服务器则更新所述当前占用总带宽为减去所述第二用户释放的带宽后的剩余带宽。
其中,更新后的当前占用总带宽即所述当前占用总带宽与所述第二用户释放的带宽之差,所述第二用户是所述当前所有用户中的任一个。
另外,在表2所示的带宽记录表中删除关于第二用户的记录,或者将第二用户当前带宽更新为0。
202、确定所述运行带宽与更新后的当前占用总带宽的差值带宽。
203、查找等待保活用户表,判断是否有等待保活的用户的基本带宽小于等于所述差值带宽。
204、若差值带宽大于或等于所述等待保活用户表中的第三用户的基本带宽,则为所述第三用户分配对应的基本带宽。
需要说明的是,这里的第三用户不一定是所述第一用户,也就是说,当有用户释放带宽资源后,会依照预设规则在等待保活表中选取一个用户为其分配基本带宽。
示例的,服务器根据请求的先后顺序将等待保活的用户记录在等待保活用户表中。参考表3,若用户IP1在用户IP2之前请求资源,被服务器记录在表3中,则首先根据所述差值带宽为IP1分配基本带宽。
当然,这里的预设规则不仅仅局限于请求资源的先后顺序,也可以是用户的优先级,首先根据所述差值带宽为所述等待保活用户表中优先级较高的用户分配带宽。
当然,还需要将第三用户的当前带宽与基本带宽记录在表2所示的带宽记录表中。
205、若所述差值带宽小于所述等待保活用户表中的所有用户的基本带宽,则将所述差值带宽分配给当前所有用户中的至少一个用户。
其中,这里的当前所有用户即当前已分配资源接入外网的用户。当然,第二用户已释放带宽资源,这里的当前所有用户并不包括所述第二用户。也就是说,用户释放带宽资源后的空闲带宽(即所述差值带宽)不满足任何一个等待保活用户的基本带宽需求,那么就可以将差值带宽分配给当前所有用户。
当然,不一定每一个当前所有用户都可以被分配到带宽资源,具体分配规则在此不作限定,可以是按照用户优先级顺序进行分配,也可以是平均分配。
另外,还需要释放第三用户的等待保活带宽。
基于本发明提供的方法,服务器管理员可以通过调节带宽分配规则表(即上述表1)中的运行带宽及IP地址(即用户)的基本带宽,来实现对用户数的控制。具体地,最大用户数=运行带宽/基本带宽平均值。其中,基本带宽平均值即各个用户基本带宽的均值。
本发明提供的带宽分配方法,接收第一用户发送的请求分配带宽的资源请求信息;若运行带宽与当前占用总带宽的差值大于或等于第一用户对应的最大带宽,则为第一用户分配其最大带宽。若所述差值小于第一用户对应的最大带宽,则判断第一用户的基本带宽加上当前基本总带宽的和是否小于或等于运行带宽。若第一用户的基本带宽加上当前基本总带宽的和小于或等于运行带宽,则将N个用户(当前已分配资源的用户)的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽。现有技术中,为端口或用户分配的带宽一经分配就不会改变,灵活性较差,不能充分利用带宽资源,导致用户体验较差。本发明提供的方法及服务器,能够灵活分配带宽资源,充分利用带宽资源,提高用户体验。
实施例2:
本发明实施例提供一种服务器,如图4所示,所述服务器包括:接收单元301、判断单元302以及分配单元303。
接收单元301,用于接收第一用户发送的请求分配带宽的资源请求信息,所述第一用户为所述服务器接入的内网用户中的任一个。
判断单元302,用于判断预设的运行带宽与当前占用总带宽的差值是否大于或等于所述第一用户对应的最大带宽;所述当前占用总带宽是已分配运行带宽资源的当前所有用户占用带宽资源的总和。
分配单元303,用于若所述判断单元判断所述差值大于或等于所述第一用户对应的最大带宽,则为所述第一用户分配对应的最大带宽。
所述判断单元302还用于,若所述差值小于所述第一用户对应的最大带宽,则判断所述第一用户的基本带宽加上当前基本总带宽的和是否小于或等于所述运行带宽;所述当前基本总带宽是已分配运行带宽资源的当前所有用户的基本带宽的总和。
所述分配单元303还用于,若所述判断单元判断所述第一用户的基本带宽加上当前基本总带宽的和小于或等于所述运行带宽,则将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽。
如图5所示,所述服务器还包括配置单元304、记录单元305。
所述配置单元304用于,为每一个用户配置基本带宽和最大带宽。
所述记录单元305用于,记录所述每一个用户对应的基本带宽和最大带宽。
所述分配单元303还用于,在将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所述第一用户的基本带宽之后,若所述判断单元判断所述当前基本总带宽加上所述第一用户的基本带宽的和小于所述运行带宽,则将剩余带宽平均分配给所述当前所有用户与所述第一用户,或者将剩余带宽依次分配给所述当前所有用户与所述第一用户中优先级高的用户使其达到最大带宽。
所述判断单元302还用于,若所述第一用户的基本带宽加上当前基本总带宽的和大于所述运行带宽,则判断保活带宽是否被占满;所述保活带宽与所述运行带宽的和为预设的所有用户能够占用的最大带宽。
所述分配单元303还用于,若所述判断单元判断所述保活带宽未被占满,则为所述第一用户分配等待保活带宽,指示所述第一用户等待被分配运行带宽。
所述记录单元305还用于,在所述分配单元为所述第一用户分配等待保活带宽之后,将所述第一用户记录在等待保活用户表中。
如图6所示,所述服务器还包括更新单元306。
所述更新单元306用于,若有第二用户释放带宽资源,则更新所述当前占用总带宽为减去所述第二用户释放的带宽后的剩余带宽。
所述分配单元303用于,若所述判断单元判断所述运行带宽与更新后的当前占用总带宽的差值带宽大于或等于所述等待保活用户表中的第三用户的基本带宽,则为所述第三用户分配对应的基本带宽。
所述分配单元303还用于,若所述判断单元判断所述差值带宽小于所述等待保活用户表中的所有用户的基本带宽,则将所述差值带宽分配给当前所有用户中的至少一个用户;所述当前所有用户为所述N个用户中除所述第二用户外的任一个用户。
需要说明的是,接收单元301可以是服务器的接收器,或者与发射器集成在一起为收发器。判断单元302以及分配单元303、配置单元304、记录单元305、更新单元306可以集成在服务器的一个处理器中实现,此外,也可以以程序代码的形式存储于服务器的存储器中,由服务器的处理器调用服务器的存储器中存储的代码,执行以上判断单元302以及分配单元303、配置单元304、记录单元305、更新单元306的功能。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (12)
1.一种带宽分配方法,其特征在于,包括:
服务器接收第一用户发送的请求分配带宽的资源请求信息;
所述服务器判断预设的运行带宽与当前占用总带宽的差值是否大于或等于所述第一用户对应的最大带宽;所述当前占用总带宽是已分配运行带宽资源的当前所有用户占用带宽资源的总和;
若所述差值大于或等于所述第一用户对应的最大带宽,则为所述第一用户分配对应的最大带宽;
若所述差值小于所述第一用户对应的最大带宽,则判断所述第一用户的基本带宽加上当前基本总带宽的和是否小于或等于所述运行带宽;所述当前基本总带宽是已分配运行带宽资源的当前所有用户的基本带宽的总和;
若所述第一用户的基本带宽加上当前基本总带宽的和小于或等于所述运行带宽,则将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配对应的基本带宽。
2.根据权利要求1所述的方法,其特征在于,所述服务器接收第一用户发送的请求分配带宽的资源请求信息之前,所述方法还包括:
所述服务器为每一个用户配置基本带宽和最大带宽,并记录所述每一个用户对应的基本带宽和最大带宽。
3.根据权利要求1或2所述的方法,其特征在于,所述将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配对应的基本带宽之后,所述方法还包括;
若所述当前基本总带宽加上所述第一用户的基本带宽的和小于所述运行带宽,则将剩余带宽平均分配给所述当前所有用户与所述第一用户,或者将剩余带宽依次分配给所述当前所有用户与所述第一用户中优先级高的用户使其达到最大带宽。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述第一用户的基本带宽加上所述当前基本总带宽的和大于所述运行带宽,则判断保活带宽是否被占满;所述保活带宽与所述运行带宽的和为预设的所有用户能够占用的最大带宽;
若所述保活带宽未被占满,则为所述第一用户分配等待保活带宽,指示所述第一用户等待被分配运行带宽。
5.根据权利要求4所述的方法,其特征在于,所述为所述第一用户分配等待保活带宽之后,所述方法还包括:
将所述第一用户记录在等待保活用户表中。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
若有第二用户释放带宽资源,所述服务器则更新所述当前占用总带宽为减去所述第二用户释放的带宽后的剩余带宽;
若所述运行带宽与更新后的当前占用总带宽的差值带宽大于或等于所述等待保活用户表中的第三用户的基本带宽,则为所述第三用户分配对应的基本带宽;
若所述差值带宽小于所述等待保活用户表中的所有用户的基本带宽,则将所述差值带宽分配给当前所有用户中的至少一个用户。
7.一种服务器,其特征在于,包括:
接收单元,用于接收第一用户发送的请求分配带宽的资源请求信息;
判断单元,用于判断预设的运行带宽与当前占用总带宽的差值是否大于或等于所述第一用户对应的最大带宽;所述当前占用总带宽是已分配运行带宽资源的所有用户当前占用带宽资源的总和;
分配单元,用于若所述判断单元判断所述差值大于或等于所述第一用户对应的最大带宽,则为所述第一用户分配对应的最大带宽;
所述判断单元还用于,若所述差值小于所述第一用户对应的最大带宽,则判断所述第一用户的基本带宽加上当前基本总带宽的和是否小于或等于所述运行带宽;所述当前基本总带宽是已分配运行带宽资源的当前所有用户的基本带宽的总和;
所述分配单元还用于,若所述判断单元判断所述第一用户的基本带宽加上所述当前基本总带宽的和小于或等于所述运行带宽,则将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配所对应的基本带宽。
8.根据权利要求7所述的服务器,其特征在于,还包括配置单元、记录单元,
所述配置单元用于,为每一个用户配置基本带宽和最大带宽;
所述记录单元用于,记录所述每一个用户对应的基本带宽和最大带宽。
9.根据权利要求7或8所述的服务器,其特征在于,所述分配单元还用于,在将所述当前所有用户的带宽资源重新分配为对应的基本带宽,并为所述第一用户分配对应的基本带宽之后,若所述判断单元判断所述当前基本总带宽加上所述第一用户的基本带宽的和小于所述运行带宽,则将剩余带宽平均分配给所述当前所有用户与所述第一用户;或者将剩余带宽依次分配给所述当前所有用户与所述第一用户中优先级高的用户使其达到最大带宽。
10.根据权利要求8所述的服务器,其特征在于,
所述判断单元还用于,若所述第一用户的基本带宽加上所述当前基本总带宽的和大于所述运行带宽,则判断保活带宽是否被占满;所述保活带宽加上所述运行带宽的和为所述预设的所有用户能够占用的最大带宽;
所述分配单元还用于,若所述判断单元判断所述保活带宽未被占满,则为所述第一用户分配等待保活带宽,指示所述第一用户等待被分配运行带宽。
11.根据权利要求10所述的服务器,其特征在于,所述记录单元还用于,在所述分配单元为所述第一用户分配等待保活带宽之后,将所述第一用户记录在等待保活用户表中。
12.根据权利要求11所述的服务器,其特征在于,还包括更新单元,
所述更新单元用于,若有第二用户释放带宽资源,则更新所述当前占用总带宽为减去所述第二用户释放带宽后的剩余带宽;
所述分配单元用于,若所述判断单元判断所述运行带宽与更新后的当前占用总带宽的差值带宽大于或等于所述等待保活用户表中的第三用户的基本带宽,则为所述第三用户分配对应的基本带宽;
所述分配单元还用于,若所述判断单元判断所述差值带宽小于所述等待保活用户表中的所有用户的基本带宽,则将所述差值带宽分配给当前所有用户中的至少一个用户。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511031606.2A CN105530202B (zh) | 2015-12-31 | 2015-12-31 | 一种带宽分配方法及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511031606.2A CN105530202B (zh) | 2015-12-31 | 2015-12-31 | 一种带宽分配方法及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105530202A CN105530202A (zh) | 2016-04-27 |
CN105530202B true CN105530202B (zh) | 2019-04-02 |
Family
ID=55772192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511031606.2A Active CN105530202B (zh) | 2015-12-31 | 2015-12-31 | 一种带宽分配方法及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105530202B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106357560A (zh) * | 2016-09-26 | 2017-01-25 | 航天恒星科技有限公司 | 信道统计复用方法及装置 |
CN108173785A (zh) * | 2016-12-07 | 2018-06-15 | ***通信集团公司 | 一种带宽分配方法及终端 |
CN108199961B (zh) * | 2018-01-17 | 2021-09-21 | 新华三技术有限公司 | 一种流量转发控制方法及装置 |
CN110519183B (zh) | 2019-09-29 | 2022-12-02 | 北京金山云网络技术有限公司 | 一种节点限速的方法、装置、电子设备及存储介质 |
CN112566187B (zh) * | 2020-12-08 | 2023-08-22 | 京信网络***股份有限公司 | 带宽分配方法、装置、计算机设备和计算机可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159699A (zh) * | 2007-11-27 | 2008-04-09 | 杭州华三通信技术有限公司 | 分布式设备交换网带宽动态分配方法及装置 |
CN101883145A (zh) * | 2009-05-04 | 2010-11-10 | 阿瓦雅公司 | 有效且经济的分布式呼叫准入控制 |
CN101969674A (zh) * | 2009-07-27 | 2011-02-09 | 中兴通讯股份有限公司 | 一种Wimax***中实现用户级带宽限制的方法和装置 |
CN103701722A (zh) * | 2014-01-02 | 2014-04-02 | 网神信息技术(北京)股份有限公司 | 网络带宽分配方法、装置及*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7327679B2 (en) * | 2001-08-21 | 2008-02-05 | Broad-Light, Ltd. | Method of providing QoS and bandwidth allocation in a point to multi-point network |
-
2015
- 2015-12-31 CN CN201511031606.2A patent/CN105530202B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159699A (zh) * | 2007-11-27 | 2008-04-09 | 杭州华三通信技术有限公司 | 分布式设备交换网带宽动态分配方法及装置 |
CN101883145A (zh) * | 2009-05-04 | 2010-11-10 | 阿瓦雅公司 | 有效且经济的分布式呼叫准入控制 |
CN101969674A (zh) * | 2009-07-27 | 2011-02-09 | 中兴通讯股份有限公司 | 一种Wimax***中实现用户级带宽限制的方法和装置 |
CN103701722A (zh) * | 2014-01-02 | 2014-04-02 | 网神信息技术(北京)股份有限公司 | 网络带宽分配方法、装置及*** |
Also Published As
Publication number | Publication date |
---|---|
CN105530202A (zh) | 2016-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105530202B (zh) | 一种带宽分配方法及服务器 | |
US10733029B2 (en) | Movement of services across clusters | |
US10652202B2 (en) | Network address translating router for mobile networking | |
EP3334123B1 (en) | Content distribution method and system | |
EP1770952B1 (en) | Method and server for allocating resources in a distributed environment based on network assessment | |
JP2019532412A5 (zh) | ||
CN108924268B (zh) | 一种容器云服务***及pod创建方法、装置 | |
US7711900B2 (en) | Method, system and program product for equitable sharing of a CAM table in a network switch in an on-demand environment | |
EP2649759B1 (en) | Technique for managing traffic at a router | |
CN104954182B (zh) | 一种用于配置虚拟服务器集群的方法和装置 | |
US20070104099A1 (en) | Data Processing System and Method | |
CN105068755B (zh) | 一种面向云计算内容分发网络的数据副本存储方法 | |
CN110417676A (zh) | 一种调度方法、装置和调度网络 | |
US8559310B2 (en) | System and method for bandwidth control | |
CN106572181A (zh) | 基于集群文件***的对象存储接口负载均衡方法和*** | |
Tran et al. | Optimal mapping of virtual networks considering reactive reconfiguration | |
US20180041406A1 (en) | Physical resource life-cycle in a template based orchestration of end-to-end service provisioning | |
Tran et al. | Reconfiguration of virtual network mapping considering service disruption | |
CN107770296B (zh) | 分配地址的方法及装置 | |
CN108228348A (zh) | 虚拟机资源分配调度方法、装置、存储介质及设备 | |
CN107295117A (zh) | 一种地址池的分配方法及装置 | |
CN103140833A (zh) | 用于多媒体多方对等操作(m2p2)的***和方法 | |
CN108390913B (zh) | 一种控制用户使用资源的方法及装置 | |
CN107408058A (zh) | 一种虚拟资源的部署方法、装置及*** | |
CN105939404A (zh) | Nat资源的获取方法及装置 |
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 |