CN105743786B - 一种软件定义无线网络映射方法及装置 - Google Patents
一种软件定义无线网络映射方法及装置 Download PDFInfo
- Publication number
- CN105743786B CN105743786B CN201610125379.8A CN201610125379A CN105743786B CN 105743786 B CN105743786 B CN 105743786B CN 201610125379 A CN201610125379 A CN 201610125379A CN 105743786 B CN105743786 B CN 105743786B
- Authority
- CN
- China
- Prior art keywords
- mapping
- path
- amount
- node
- channel
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/124—Shortest path evaluation using a combination of metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/125—Shortest path evaluation based on throughput or bandwidth
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种软件定义无线网络映射方法,应用于数据处理设备,该设备接收映射请求,针对每个虚拟节点,确定该虚拟节点对应的已映射节点;将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径;针对每对已映射节点,在该对已映射节点间的待映射路径中选择一条路径,作为已映射路径;对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新。由于本发明实施例中通过保存的实际节点的可用资源量信息、位置信息和实际节点间的链路可用带宽量信息,使SDWN应用层发布的虚拟请求能够映射到基础设施层的实际节点和路径中。
Description
技术领域
本发明涉及通信领域,特别涉及一种软件定义无线网络映射方法及装置。
背景技术
软件定义网络(Software Defined Network,SDN)是一种新型的网络架构,它的设计理念是将网络的控制平面与数据转发平面进行分离,并实现可编程化控制。SDN的典型架构共分三层,最上层为应用层,包括各种不同的业务和应用;中间的控制层主要负责处理数据平面资源的编排,维护网络拓扑、状态信息等;最底层的基础设施层负责基于流表的数据处理、转发和状态收集。现在基于有线底层基础设施的有线SDN的研究较多,但对基于无线底层基础设施的软件定义无线网络(Software Defined Wireless Network,SDWN)的研究尚处于起步阶段,SDWN大致思想也是按照SDN的典型架构,分为应用层、控制层和基础设施层,但是当前SDWN还处于理论研究阶段,还没有具体的软件定义无线网络的映射方法提出。
发明内容
本发明实施例公开了一种软件定义无线网络映射方法及装置,能够使SDWN应用层发布的虚拟请求映射到基础设施层的实际节点和路径中。
为达到上述目的,本发明实施例公开了一种软件定义无线网络映射方法,应用于数据处理设备,所述方法包括:
接收映射请求,所述映射请求中包含映射无线网络所需的每个虚拟节点的CPU资源要求量,虚拟节点间的连接关系、虚拟节点间的虚拟链路的带宽要求量和每个虚拟节点的位置信息;
针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量;
针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同;
根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系;
将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径,所述连通路径为由一段或多段实际链路构成的连通实际节点的路径;
根据预设的规则,针对每对已映射节点,在在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径;
根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新;
根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新。
较佳的,所述针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,包括:
将该虚拟节点的所有待映射节点按其可用CPU资源量从大到小进行排序;
从排序第一的待映射节点开始,依次针对每个待映射节点,在其能够建立映射关系的虚拟节点中,判断所述虚拟节点是否为CPU资源要求量最大的虚拟节点,如果是,将所述待映射节点确定为所述虚拟节点对应的已映射节点。
较佳的,所述根据预设的规则,在所述待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径,包括:
针对每条待映射路径,根据预设资源库里保存的其路径上的所有实际节点的可用CPU资源量信息和所有实际链路的可用带宽量信息,计算所有可用CPU资源量与所有实际链路可用带宽量的总和值,其中实际节点的可用CPU资源量和实际链路的可用带宽量均为归一化后的无量纲数值;
选择总和值最小的待映射路径作为与对应虚拟链路建立映射关系的已映射路径。
较佳的,所述虚拟链路的带宽要求量预先被分为基础要求量和浮动要求量,其中基础要求量表示在该虚拟链路传输的基础流量所需要的带宽量,浮动要求量表示在该虚拟链路传输的浮动流量所需要的带宽量,在每条已映射路径中,针对每个映射请求,为其分配传输其基础流量的基础信道和传输其浮动流量的浮动信道,且浮动信道和映射请求之间的对应关系预先保存在了预设资源库中;其中基础信道和浮动信道均为已映射路径中的非空闲信道,对应的,每条已映射路径中还存在未传输任何映射请求流量的空闲信道;每条已映射路径与其它映射请求的映射关系预先保存在了预设资源库中,预设资源库中还保存有每条浮动信道中来自其它映射请求的对应该路径的浮动流量出现的概率,所述根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新,包括:
针对每条已映射路径,判断当前映射请求是否是第一个使用该路径的请求,若是,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
若不是,则根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道;
针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值;
若得到的所有冲突概率值中至少有一个小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次映射请求的基础要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
若得到的所有冲突概率值都不小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息。
较佳的,所述将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息之后,所述方法还包括:
针对每条已映射路径,选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量,选择该路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该已映射路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;
在所述针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值之后,所述方法还包括:
针对每个冲突概率值,若所述冲突概率值小于预设的阈值,则将对应该冲突概率值的备选共享信道确定为可共享信道,并选择一条信道宽度大于等于对应于该已映射路径的浮动流量大小的可共享信道来传输对应于该已映射路径的浮动流量;
若所述所有冲突概率值都不小于预设的阈值,则选择该已映射路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;
选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量。
较佳的,所述根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值,包括:
根据下式计算所述冲突概率值:
其中,Pcollision表示冲突概率值,P1、P2、...、Pn表示第k(k=1、2、...、n)次使用该备选共享信道的映射请求中对应于该备选共享信道所在的已映射路径的浮动流量出现的概率。
本发明实施例还公开了一种软件定义无线网络映射装置,应用于数据处理设备,所述装置包括:
请求接收模块,用于接收映射请求,所述映射请求中包含映射无线网络所需的每个虚拟节点的CPU资源要求量,虚拟节点间的连接关系、虚拟节点间的虚拟链路的带宽要求量和每个虚拟节点的位置信息;
待映射节点确定模块,用于针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量;
已映射节点确定模块,用于针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同;
连接关系确定模块,用于根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系;
待映射路径确定模块,用于将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径,所述连通路径为由一段或多段实际链路构成的连通实际节点的路径;
已映射路径确定模块,用于根据预设的规则,针对每对已映射节点,在在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径;
资源量更新模块,用于根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新;
带宽信息更新模块,用于根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新。
较佳的,所述已映射路径确定模块,包括:
总和值确定子模块,用于针对每条待映射路径,根据预设资源库里保存的其路径上的所有实际节点的可用CPU资源量信息和所有实际链路的可用带宽量信息,计算所有可用CPU资源量与所有实际链路可用带宽量的总和值,其中实际节点的可用CPU资源量和实际链路的可用带宽量均为归一化后的无量纲数值;
选择子模块,用于选择总和值最小的待映射路径作为与对应虚拟链路建立映射关系的已映射路径。
较佳的,所述虚拟链路的带宽要求量预先被分为基础要求量和浮动要求量,其中基础要求量表示在该虚拟链路传输的基础流量所需要的带宽量,浮动要求量表示在该虚拟链路传输的浮动流量所需要的带宽量,在每条已映射路径中,针对每个映射请求,为其分配传输其基础流量的基础信道和传输其浮动流量的浮动信道,且浮动信道和映射请求之间的对应关系预先保存在了预设资源库中;其中基础信道和浮动信道均为已映射路径中的非空闲信道,对应的,每条已映射路径中还存在未传输任何映射请求流量的空闲信道;每条已映射路径与其它映射请求的映射关系预先保存在了预设资源库中,预设资源库中还保存有每条浮动信道中来自其它映射请求的对应该路径的浮动流量出现的概率,所述带宽信息更新模块,包括:
第一带宽信息确定子模块,用于针对每条已映射路径,判断当前映射请求是否是第一个使用该路径的请求,若是,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
备选共享信道确定子模块,用于当所述第一带宽信息确定模块的判断结果为否时,则根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道;
冲突概率值计算子模块,用于针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值;
第二带宽信息确定子模块,用于根据所述冲突概率值计算模块的到的所有冲突概率值进行判断,若得到的所有冲突概率值中至少有一个小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次映射请求的基础要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
第三带宽信息确定子模块,用于根据所述冲突概率值计算模块的到的所有冲突概率值进行判断,若得到的所有冲突概率值都不小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽信息。
较佳的,所述装置还包括:
第一信道确定模块,用于针对每条已映射路径,选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量,选择该路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该已映射路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;
第二信道确定模块,用于针对每个冲突概率值,若所述冲突概率值小于预设的阈值,则将对应该冲突概率值的备选共享信道确定为可共享信道,并选择一条信道宽度大于等于对应于该已映射路径的浮动流量大小的可共享信道来传输对应于该已映射路径的浮动流量;若所述所有冲突概率值都不小于预设的阈值,则选择该已映射路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量。
由上述的技术方案可见,本发明实施例提供了一种软件定义无线网络映射方法,应用于数据处理设备,所述数据处理设备接收映射请求,所述映射请求中包含映射无线网络所需的每个虚拟节点的CPU资源要求量,虚拟节点间的连接关系、虚拟节点间的虚拟链路的带宽要求量和每个虚拟节点的位置信息;针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量;针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同;根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系;将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径,所述连通路径为由一段或多段实际链路构成的连通实际节点的路径;根据预设的规则,针对每对已映射节点,在在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径;根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新;根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新。由于本发明实施例中通过保存的实际节点的可用资源量信息、位置信息和实际节点间的链路可用带宽量信息,使SDWN应用层发布的虚拟请求能够映射到基础设施层的实际节点和路径中。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的一种软件定义无线网络映射方法的流程示意图;
图2为映射请求示意图;
图3为映射请求与实际节点映射关系示意图;
图4为实际节点间待映射路径示意图;
图5为已映射路径中具有的信道示意图;
图6为本发明实施例二提供的一种软件定义无线网络映射方法的流程示意图;
图7为本发明实施例三提供的一种软件定义无线网络映射方法的流程示意图;
图8为本发明实施例一提供的一种软件定义无线网络映射装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面通过具体实施例,对本发明进行详细说明。
图1为本发明实施例一提供的一种软件定义无线网络映射方法的流程示意图,所述方法应用于数据处理设备,该方法可以包括步骤:
S101:接收映射请求。
所述映射请求中包含映射无线网络所需的每个虚拟节点的CPU资源要求量,虚拟节点间的连接关系、虚拟节点间的虚拟链路的带宽要求量和每个虚拟节点的位置信息。如图2所示为一个具体的映射请求示意图,该映射请求中包含虚拟节点1、虚拟节点2和虚拟节点3,虚拟节点1的CPU资源要求量为5,虚拟节点2的CPU资源要求量为6,虚拟节点3的CPU资源要求量为7;虚拟节点1和虚拟节点2之间具有虚拟链路1,该虚拟链路的带宽要求量为10,虚拟节点2和虚拟节点3之间具有虚拟链路2,该虚拟链路的带宽要求量为15,虚拟节点1和虚拟节点3之间具有虚拟链路3,该虚拟链路的带宽要求量为20,其中虚拟节点的CPU资源要求量和虚拟链路的带宽要求量均用归一化后的无量纲数值表示。
S102:针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量。
所述实际节点为实际存在于底层的基础设施层中的无线通信节点,可以为基站等无线通信设备,其位置信息预先保存在了预设资源库中;每个虚拟节点预先具有一个位置信息,表明该虚拟节点要求映射在基础设施层中哪个位置的实际节点上,则在进行虚拟节点的映射时,需要先计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,再将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点。
S103:针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同;
对于步骤S102所确定的对应于该虚拟节点的所有待映射节点中,可以选择任意一个待映射节点作为与该虚拟节点建立映射关系的已映射节点。
进一步地,对于每个待映射节点来说,它可能同时也是其它虚拟节点的待映射节点,则较好的一种映射方式为,将可用CPU资源量最大的待映射节点与能够与它建立映射关系的虚拟节点中的CPU资源要求量最大的虚拟节点建立映射关系,即步骤S103可以包括下述步骤:
将该虚拟节点的所有待映射节点按其可用CPU资源量从大到小进行排序;
从排序第一的待映射节点开始,依次针对每个待映射节点,在其能够建立映射关系的虚拟节点中,判断所述虚拟节点是否为CPU资源要求量最大的虚拟节点,如果是,将所述待映射节点确定为所述虚拟节点对应的已映射节点。
S104:根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系。
在执行完S103之后,即已经完成了所有虚拟节点与实际节点间的一一映射关系,如图3所示,虚拟节点1映射到了实际节点1,虚拟节点2映射到了实际节点2,虚拟节点3映射到了实际节点3,则相应的,确定实际节点1和实际节点2之间应具有连接关系,实际节点2和实际节点3之间应具有连接关系,实际节点1和实际节点3之间应具有连接关系。
S105:将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径。
所述连通路径为由一段或多段实际链路构成的连通实际节点的路径。如图3中,实际节点1和实际节点2之间可以由实际链路1、实际链路2连通,则实际链路1和实际链路2构成了连通实际节点1和实际节点2的一条连通路径。
如图3中,因为实际节点1和实际节点2之间应具有连接关系,且实际节点1和实际节点2之间可能具有多条连通的路径,则根据预先保存的实际节点间的连接关系和实际节点间链路的可用带宽大小,在实际节点1和实际节点2中,确定出满足虚拟链路1带宽要求量的连通路径,作为待映射路径,即在该条连待映射路径上的每一条实际链路的可用带宽大小都不能小于虚拟链路1带宽要求量。
S106:根据预设的规则,针对每对已映射节点,在在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径。
如图4中,假设实际节点1和实际节点2之间有多条待映射路径,分别为待映射路径1、待映射路径2和待映射路径3,则可以从中任意选择一条待映射路径,作为与虚拟链路1建立映射关系的已映射路径。
在实际节点1和实际节点2之间的待映射路径中,有可能存在由较多数量个实际节点与实际链路构成的待映射路径3,也有可能存在由较少数量个实际节点与实际链路构成的待映射路径1,若将待映射路径3确定为已映射路径,则相应要占用基础设施层中较多的实际节点与实际链路,即建立路径映射的成本较高,所以较好的一种确定待映射路径的方法为:选择实际链路数量最少的待映射路径作为与对应虚拟链路建立映射关系的已映射路径。
S107:根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新。
如图3中,假设实际节点1在与虚拟节点1建立映射之前具有50的可用CPU资源量,则在与虚拟节点建立映射之后,将实际节点1的可用CPU资源量更新为50-5=45,作为下个映射请求对实际节点1进行映射判断时的实际节点1可用CPU资源量。
S108:根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新。
如图3中,如果虚拟链路1和连通路径2建立了映射关系,则对于连通路径2中的每个实际链路来说,将其在建立映射前具有的可用带宽量减去虚拟链路1的带宽要求量,作为该实际链路更新后的可用带宽量。
本发明实施例中,数据处理设备根据预设资源库中保存的实际节点的可用CPU资源量信息、位置信息和实际节点间的链路可用带宽量信息,使接收到的映射请求中的虚拟节点和虚拟链路能够一一映射到基础设施层中的实际节点和实际路径中。
已映射路径中包含多条信道,包括有流量传输的非空闲信道和没有流量传输的空闲信道。为了使已映射路径中剩余的可用带宽资源尽量多,可以将虚拟链路的带宽要求量预先分为基础要求量和浮动要求量,并考察在该已映射路径中来自不同映射请求的浮动流量能否共用一个信道,其中基础要求量表示在该虚拟链路传输的基础流量所需要的带宽量,浮动要求量表示在该虚拟链路传输的浮动流量所需要的带宽量。
在已映射路径中,针对每个映射请求,为其分配传输其基础流量的基础信道和传输其浮动流量的浮动信道,即将非空闲信道进一步分为了基础信道和浮动信道,且浮动信道和映射请求之间的对应关系预先保存在了预设资源库中,即根据预设资源库中保存的信息,可获知某一映射请求在每条已映射路径中的浮动信道是哪个信道;每条已映射路径与其它映射请求的映射关系预先保存在了预设资源库中,即根据预设资源库中保存的信息,可获知该条已映射路径同时还是哪些映射请求的已映射路径;预设资源库中还保存有每条浮动信道中来自其它映射请求的对应该路径的浮动流量出现的概率,即可以根据预设资源库中保存的信息,获知在每条浮动信道中传输的任意映射请求对应该路径的浮动流量出现的概率。如图5所示,对于一条已映射路径来说,其中包含对应不同映射请求的不同的基础信道、不同的浮动信道和不同带宽大小的空闲信道。图1所示方法中步骤S108可以包括:
针对每条已映射路径,判断当前映射请求是否是第一个使用该路径的请求,若是,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
若不是,则根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道;
针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值;
若得到的所有冲突概率值中至少有一个小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次映射请求的基础要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
若得到的所有冲突概率值都不小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息。
图6为本发明实施例二提供的一种软件定义无线网络映射方法的流程示意图,所述方法应用于数据处理设备,该方法可以包括步骤:
S601:接收映射请求。
S602:针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量。
S603:针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同。
S604:根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系。
S605:将已映射节点间实际链路的可用带宽不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径。
S606:根据预设的规则,针对每对已映射节点,在在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径。
S607:根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新。
S6081:针对每条已映射路径,判断当前映射请求是否是第一个使用该路径的请求,若是,则执行S6082,若否,执行S6083。
S6082:将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息。
执行到步骤S6082,即意味着在当前映射请求占用该路径的可用带宽资源之前,没有其它映射请求占用该条路径,则在当前映射请求占用该路径之后,该路径中更新后的实际链路的可用带宽量即为原实际链路可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值。
S6083:根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道,之后执行S6084和S6085。
执行到步骤S6083,即意味着在该已映射路径中至少存在一条浮动信道,即可根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道。
S6084:针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值。
具体的,可以由下式计算所述冲突概率值:
其中,Pcollision表示冲突概率值,P1、P2、...、Pn表示第k(k=1、2、...、n)次使用该备选共享信道的映射请求中对应于该备选共享信道所在的已映射路径的浮动流量出现的概率,其中Pn表示当前映射请求中对应该路径的浮动流量出现的概率,P1、P2、...、Pn-1表示该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率。
S6085:若得到的所有冲突概率值中至少有一个小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次映射请求的基础要求量的差值,确定为对应实际链路的更新后的可用带宽量信息,若得到的所有冲突概率值都不小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息。
得到的所有冲突概率值中至少有一个小于预设的阈值,即意味着当前映射请求对应于该已映射路径的浮动流量可以在小于预设的阈值的冲突概率值所对应的备选共享信道中传输,即该浮动流量不再占用新的空闲信道,相应的,该路径中的实际链路的更新后的可用带宽量为该实际链路的原可用带宽量与对应该路径的本次映射请求的基础要求量的差值;若得到的所有冲突概率值都不小于预设的阈值,即意味着当前映射请求对应于该已映射路径的浮动流量只能使用新的空闲信道进行传输,则该路径中的实际链路的更新后的可用带宽量为该实际链路的原可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值。
本发明实施例中,将虚拟链路的带宽要求量预先分为基础要求量和浮动要求量,并在已映射路径中为基础流量和浮动流量分别分配信道,判断当前映射请求对应于每条已映射路径的浮动流量是否能使用该条路径中已有的浮动信道进行传输,若能,则将该路径中的实际链路的更新后的可用带宽量为该实际链路的原可用带宽量与对应该路径的本次映射请求的基础要求量的差值。
对应于本发明实施例二中的已映射路径中的实际链路可用带宽资源的更新策略,在执行完步骤S6082之后,执行下述步骤:
针对每条已映射路径,选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量,选择该路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该已映射路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中。
在执行完步骤S6084之后,执行下述步骤:
针对每个冲突概率值,若所述冲突概率值小于预设的阈值,则将对应该冲突概率值的备选共享信道确定为可共享信道,并选择一条信道宽度大于等于对应于该已映射路径的浮动流量大小的可共享信道来传输对应于该已映射路径的浮动流量;
若所述所有冲突概率值都不小于预设的阈值,则选择该已映射路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;
选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量。
图7为本发明实施例三提供的一种软件定义无线网络映射方法的流程示意图,所述方法应用于数据处理设备,该方法可以包括步骤:
S701:接收映射请求。
S702:针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量。
S703:针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同。
S704:根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系。
S705:将已映射节点间实际链路的可用带宽不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径。
S706:根据预设的规则,针对每对已映射节点,在在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径。
S707:根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新。
S7081:针对每条已映射路径,判断当前映射请求是否是第一个使用该路径的请求,若是,则执行S7082和S70821,若否,执行S7083。
S7082:将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息。
S70821:针对每条已映射路径,选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量,选择该路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该已映射路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中。
进一步地,步骤S70821可以在步骤S7082之后的任意位置执行。
S7083:根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道,之后执行S7084、S70841、S70842和S7085。
S7084:针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值。
S70841:针对每个冲突概率值,若所述冲突概率值小于预设的阈值,则将对应该冲突概率值的备选共享信道确定为可共享信道,并选择一条信道宽度大于等于对应于该已映射路径的浮动流量大小的可共享信道来传输对应于该已映射路径的浮动流量;若所述所有冲突概率值都不小于预设的阈值,则选择该已映射路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中。
较好的一种可共享信道选择方式为,选择信道宽度最大的可共享信道来传输对应于该已映射路径的浮动流量。
S70842:选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量。
进一步地,步骤S70841~S70842可以在步骤S7084之后的任意位置执行。
S7085:若得到的所有冲突概率值中至少有一个小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次映射请求的基础要求量的差值,确定为对应实际链路的更新后的可用带宽量信息,若得到的所有冲突概率值都不小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息。
本发明实施例中,判断当前映射请求对应于每条已映射路径的浮动流量是否能使用该条路径中已有的浮动信道进行传输,若能,则选择一条信道宽度大于等于对应于该已映射路径的浮动流量大小的可共享信道来传输对应于该已映射路径的浮动流量,进而节省了该条已映射路径上的可用带宽资源。
图8为本发明实施例一提供的一种软件定义无线网络映射装置结构示意图,该装置应用于数据处理设备,所述装置可以包括:
请求接收模块801,用于接收映射请求,所述映射请求中包含映射无线网络所需的每个虚拟节点的CPU资源要求量,虚拟节点间的连接关系、虚拟节点间的虚拟链路的带宽要求量和每个虚拟节点的位置信息;
待映射节点确定模块802,用于针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量;
已映射节点确定模块803,用于针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同;
连接关系确定模块804,用于根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系;
待映射路径确定模块805,用于将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径,所述连通路径为由一段或多段实际链路构成的连通实际节点的路径;
已映射路径确定模块806,用于根据预设的规则,针对每对已映射节点,在在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径;
资源量更新模块807,用于根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新;
带宽信息更新模块808,用于根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新。
进一步地,所述已映射节点确定模块803,包括:
排序子模块(图中未示出),用于将该虚拟节点的所有待映射节点按其可用CPU资源量从大到小进行排序;
确定子模块(图中未示出),用于从排序第一的待映射节点开始,依次针对每个待映射节点,在其能够建立映射关系的虚拟节点中,判断所述虚拟节点是否为CPU资源要求量最大的虚拟节点,如果是,将所述待映射节点确定为所述虚拟节点对应的已映射节点。
进一步地,所述根据预设的规则,所述已映射路径确定模块806,包括:
总和值确定子模块(图中未示出),用于针对每条待映射路径,根据预设资源库里保存的其路径上的所有实际节点的可用CPU资源量信息和所有实际链路的可用带宽量信息,计算所有可用CPU资源量与所有实际链路可用带宽量的总和值,其中实际节点的可用CPU资源量和实际链路的可用带宽量均为归一化后的无量纲数值;
选择子模块(图中未示出),用于选择总和值最小的待映射路径作为与对应虚拟链路建立映射关系的已映射路径。
进一步地,所述虚拟链路的带宽要求量预先被分为基础要求量和浮动要求量,其中基础要求量表示在该虚拟链路传输的基础流量所需要的带宽量,浮动要求量表示在该虚拟链路传输的浮动流量所需要的带宽量,在每条已映射路径中,针对每个映射请求,为其分配传输其基础流量的基础信道和传输其浮动流量的浮动信道,且浮动信道和映射请求之间的对应关系预先保存在了预设资源库中;其中基础信道和浮动信道均为已映射路径中的非空闲信道,对应的,每条已映射路径中还存在未传输任何映射请求流量的空闲信道;每条已映射路径与其它映射请求的映射关系预先保存在了预设资源库中,预设资源库中还保存有每条浮动信道中来自其它映射请求的对应该路径的浮动流量出现的概率,所述带宽信息更新模块808,包括:
第一带宽信息确定子模块(图中未示出),用于针对每条已映射路径,判断当前映射请求是否是第一个使用该路径的请求,若是,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
备选共享信道确定子模块(图中未示出),用于当所述第一带宽信息确定模块的判断结果为否时,则根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道;
冲突概率值计算子模块(图中未示出),用于针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值;
第二带宽信息确定子模块(图中未示出),用于根据所述冲突概率值计算模块的到的所有冲突概率值进行判断,若得到的所有冲突概率值中至少有一个小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次映射请求的基础要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
第三带宽信息确定子模块(图中未示出),用于根据所述冲突概率值计算模块的到的所有冲突概率值进行判断,若得到的所有冲突概率值都不小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽信息。
进一步地,所述装置还包括:
第一信道确定模块(图中未示出),用于针对每条已映射路径,选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量,选择该路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该已映射路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;
第二信道确定模块(图中未示出),用于针对每个冲突概率值,若所述冲突概率值小于预设的阈值,则将对应该冲突概率值的备选共享信道确定为可共享信道,并选择一条信道宽度大于等于对应于该已映射路径的浮动流量大小的可共享信道来传输对应于该已映射路径的浮动流量;若所述所有冲突概率值都不小于预设的阈值,则选择该已映射路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量。
进一步地,所述冲突概率值计算子模块,具体用于:
根据下式计算所述冲突概率值:
其中,Pcollision表示冲突概率值,P1、P2、...、Pn表示第k(k=1、2、...、n)次使用该备选共享信道的映射请求中对应于该备选共享信道所在的已映射路径的浮动流量出现的概率。
本发明实施例提供了一种软件定义无线网络映射方法及装置,应用于数据处理设备,所述数据处理设备接收映射请求,所述映射请求中包含映射无线网络所需的每个虚拟节点的CPU资源要求量,虚拟节点间的连接关系、虚拟节点间的虚拟链路的带宽要求量和每个虚拟节点的位置信息;针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量;针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同;根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系;将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径,所述连通路径为由一段或多段实际链路构成的连通实际节点的路径;根据预设的规则,针对每对已映射节点,在在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径;根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新;根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新。由于本发明实施例中通过保存的实际节点的可用资源量信息、位置信息和实际节点间的链路可用带宽量信息,使SDWN应用层发布的虚拟请求能够映射到基础设施层的实际节点和路径中。
对于系统/装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (7)
1.一种软件定义无线网络映射方法,其特征在于,应用于数据处理设备,所述方法包括:
接收映射请求,所述映射请求中包含映射无线网络所需的每个虚拟节点的CPU资源要求量,虚拟节点间的连接关系、虚拟节点间的虚拟链路的带宽要求量和每个虚拟节点的位置信息;
针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量;
针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同;
根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系;
将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径,所述连通路径为由一段或多段实际链路构成的连通实际节点的路径;
根据预设的规则,针对每对已映射节点,在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径;
根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新;
根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新;所述虚拟链路的带宽要求量预先被分为基础要求量和浮动要求量,其中基础要求量表示在该虚拟链路传输的基础流量所需要的带宽量,浮动要求量表示在该虚拟链路传输的浮动流量所需要的带宽量,在每条已映射路径中,针对每个映射请求,为其分配传输其基础流量的基础信道和传输其浮动流量的浮动信道,且浮动信道和映射请求之间的对应关系预先保存在了预设资源库中;其中基础信道和浮动信道均为已映射路径中的非空闲信道,对应的,每条已映射路径中还存在未传输任何映射请求流量的空闲信道;每条已映射路径与其它映射请求的映射关系预先保存在了预设资源库中,预设资源库中还保存有每条浮动信道中来自其它映射请求的对应该路径的浮动流量出现的概率,所述根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新,包括:
针对每条已映射路径,判断当前映射请求是否是第一个使用该路径的请求,若是,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
若不是,则根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道;
针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值;
若得到的所有冲突概率值中至少有一个小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次映射请求的基础要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
若得到的所有冲突概率值都不小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
所述根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值,包括:
根据下式计算所述冲突概率值:
其中,Pcollision表示冲突概率值,P1、P2、...、Pn表示第k(k=1、2、...、n)次使用该备选共享信道的映射请求中对应于该备选共享信道所在的已映射路径的浮动流量出现的概率。
2.根据权利要求1所述的方法,其特征在于,所述针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,包括:
将该虚拟节点的所有待映射节点按其可用CPU资源量从大到小进行排序;
从排序第一的待映射节点开始,依次针对每个待映射节点,在其能够建立映射关系的虚拟节点中,判断所述虚拟节点是否为CPU资源要求量最大的虚拟节点,如果是,将所述待映射节点确定为所述虚拟节点对应的已映射节点。
3.根据权利要求1所述的方法,其特征在于,所述根据预设的规则,在所述待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径,包括:
针对每条待映射路径,根据预设资源库里保存的其路径上的所有实际节点的可用CPU资源量信息和所有实际链路的可用带宽量信息,计算所有可用CPU资源量与所有实际链路可用带宽量的总和值,其中实际节点的可用CPU资源量和实际链路的可用带宽量均为归一化后的无量纲数值;
选择总和值最小的待映射路径作为与对应虚拟链路建立映射关系的已映射路径。
4.根据权利要求1所述的方法,其特征在于,所述将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息之后,所述方法还包括:
针对每条已映射路径,选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量,选择该路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该已映射路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;
在所述针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值之后,所述方法还包括:
针对每个冲突概率值,若所述冲突概率值小于预设的阈值,则将对应该冲突概率值的备选共享信道确定为可共享信道,并选择一条信道宽度大于等于对应于该已映射路径的浮动流量大小的可共享信道来传输对应于该已映射路径的浮动流量;
若所述所有冲突概率值都不小于预设的阈值,则选择该已映射路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;
选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量。
5.一种软件定义无线网络映射装置,其特征在于,应用于数据处理设备,所述装置包括:
请求接收模块,用于接收映射请求,所述映射请求中包含映射无线网络所需的每个虚拟节点的CPU资源要求量,虚拟节点间的连接关系、虚拟节点间的虚拟链路的带宽要求量和每个虚拟节点的位置信息;
待映射节点确定模块,用于针对每个虚拟节点,根据预设资源库中保存的每个实际节点的位置信息及该虚拟节点的位置信息,计算每个实际节点与该虚拟节点的距离,在与所述虚拟节点之间的距离不大于预设阈值的实际节点中,将符合该虚拟节点CPU资源要求量的实际节点确定为对应于该虚拟节点的待映射节点,所述预设资源库中还保存有每个实际节点的可用CPU资源量;
已映射节点确定模块,用于针对每个虚拟节点,在对应于该虚拟节点的待映射节点中,确定所述虚拟节点对应的已映射节点,其中每个虚拟节点对应的已映射节点不同;
连接关系确定模块,用于根据所述虚拟节点间的连接关系,确定已映射节点间的连接关系;
待映射路径确定模块,用于将已映射节点间实际链路的可用带宽量不小于对应虚拟链路的带宽要求量的连通路径作为待映射路径,所述连通路径为由一段或多段实际链路构成的连通实际节点的路径;
已映射路径确定模块,用于根据预设的规则,针对每对已映射节点,在该对已映射节点间的待映射路径中选择一条路径,作为与对应虚拟链路建立映射关系的已映射路径;
资源量更新模块,用于根据映射请求中包含的每个虚拟节点的CPU资源要求量,在所述预设资源库中,对本次映射请求确定的已映射节点的可用CPU资源量信息进行更新;
带宽信息更新模块,用于根据虚拟节点间的虚拟链路的带宽要求量,在预设资源库中,对本次映射请求确定的已映射路径中的实际链路可用带宽量信息进行更新;
所述虚拟链路的带宽要求量预先被分为基础要求量和浮动要求量,其中基础要求量表示在该虚拟链路传输的基础流量所需要的带宽量,浮动要求量表示在该虚拟链路传输的浮动流量所需要的带宽量,在每条已映射路径中,针对每个映射请求,为其分配传输其基础流量的基础信道和传输其浮动流量的浮动信道,且浮动信道和映射请求之间的对应关系预先保存在了预设资源库中;其中基础信道和浮动信道均为已映射路径中的非空闲信道,对应的,每条已映射路径中还存在未传输任何映射请求流量的空闲信道;每条已映射路径与其它映射请求的映射关系预先保存在了预设资源库中,预设资源库中还保存有每条浮动信道中来自其它映射请求的对应该路径的浮动流量出现的概率,所述带宽信息更新模块,包括:
第一带宽信息确定子模块,用于针对每条已映射路径,判断当前映射请求是否是第一个使用该路径的请求,若是,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
备选共享信道确定子模块,用于当所述第一带宽信息确定模块的判断结果为否时,则根据预设资源库中保存的浮动信道和映射请求之间的对应关系,将该路径中的带宽不小于当前映射请求中对应该路径的浮动流量大小的浮动信道确定为备选共享信道;
冲突概率值计算子模块,用于针对每条备选共享信道,根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值;
第二带宽信息确定子模块,用于根据所述冲突概率值计算模块的到的所有冲突概率值进行判断,若得到的所有冲突概率值中至少有一个小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次映射请求的基础要求量的差值,确定为对应实际链路的更新后的可用带宽量信息;
第三带宽信息确定子模块,用于根据所述冲突概率值计算模块的到的所有冲突概率值进行判断,若得到的所有冲突概率值都不小于预设的阈值,则将该路径中的实际链路的可用带宽量与对应该路径的本次虚拟链路的带宽要求量的差值,确定为对应实际链路的更新后的可用带宽信息;
所述根据预存在预设资源库中的该备选共享信道中来自其它映射请求的对应该路径的浮动流量出现的概率,和当前映射请求中对应该路径的浮动流量出现的概率,计算当前映射请求中对应该路径的浮动流量与该备选共享信道中其它映射请求的对应该路径的浮动流量之间的冲突概率值,包括:
根据下式计算所述冲突概率值:
其中,Pcollision表示冲突概率值,P1、P2、...、Pn表示第k(k=1、2、...、n)次使用该备选共享信道的映射请求中对应于该备选共享信道所在的已映射路径的浮动流量出现的概率。
6.根据权利要求5所述的装置,其特征在于,所述已映射路径确定模块,包括:
总和值确定子模块,用于针对每条待映射路径,根据预设资源库里保存的其路径上的所有实际节点的可用CPU资源量信息和所有实际链路的可用带宽量信息,计算所有可用CPU资源量与所有实际链路可用带宽量的总和值,其中实际节点的可用CPU资源量和实际链路的可用带宽量均为归一化后的无量纲数值;
选择子模块,用于选择总和值最小的待映射路径作为与对应虚拟链路建立映射关系的已映射路径。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第一信道确定模块,用于针对每条已映射路径,选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量,选择该路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该已映射路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;
第二信道确定模块,用于针对每个冲突概率值,若所述冲突概率值小于预设的阈值,则将对应该冲突概率值的备选共享信道确定为可共享信道,并选择一条信道宽度大于等于对应于该已映射路径的浮动流量大小的可共享信道来传输对应于该已映射路径的浮动流量;若所述所有冲突概率值都不小于预设的阈值,则选择该已映射路径中的一条信道宽度大于等于对应于该已映射路径的浮动流量大小的空闲信道传输对应于该路径的浮动流量,并将该信道标识为浮动信道,并将该浮动信道与当前映射请求的对应关系保存在预设的资源库中;选择该路径中的一条信道宽度大于等于对应于该已映射路径的基础流量大小的空闲信道传输对应于该已映射路径的基础流量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610125379.8A CN105743786B (zh) | 2016-03-04 | 2016-03-04 | 一种软件定义无线网络映射方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610125379.8A CN105743786B (zh) | 2016-03-04 | 2016-03-04 | 一种软件定义无线网络映射方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105743786A CN105743786A (zh) | 2016-07-06 |
CN105743786B true CN105743786B (zh) | 2019-03-22 |
Family
ID=56249983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610125379.8A Active CN105743786B (zh) | 2016-03-04 | 2016-03-04 | 一种软件定义无线网络映射方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105743786B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106131891B (zh) * | 2016-08-30 | 2019-06-04 | 重庆邮电大学 | 一种基于sdwn的资源映射装置和方法 |
CN107086948B (zh) * | 2017-04-14 | 2019-11-12 | 重庆邮电大学 | 一种在sdwn下提升虚拟化网络性能的数据处理方法 |
CN109617810B (zh) * | 2018-11-30 | 2021-04-16 | 中国联合网络通信集团有限公司 | 数据传输方法及装置 |
CN112087397B (zh) * | 2020-10-10 | 2022-03-25 | 烽火通信科技股份有限公司 | 一种基于多通道协议的负载均衡方法与装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104320324A (zh) * | 2014-11-18 | 2015-01-28 | 中国科学技术大学 | 一种基于链路干扰的虚拟网络映射方法 |
CN104901861A (zh) * | 2015-06-04 | 2015-09-09 | 浙江工商大学 | 基于网络拓扑预优化和提高可用性的虚拟网络映射方法 |
CN105337834A (zh) * | 2015-12-04 | 2016-02-17 | 重庆邮电大学 | 一种无线网络虚拟化环境下的映射算法 |
-
2016
- 2016-03-04 CN CN201610125379.8A patent/CN105743786B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104320324A (zh) * | 2014-11-18 | 2015-01-28 | 中国科学技术大学 | 一种基于链路干扰的虚拟网络映射方法 |
CN104901861A (zh) * | 2015-06-04 | 2015-09-09 | 浙江工商大学 | 基于网络拓扑预优化和提高可用性的虚拟网络映射方法 |
CN105337834A (zh) * | 2015-12-04 | 2016-02-17 | 重庆邮电大学 | 一种无线网络虚拟化环境下的映射算法 |
Non-Patent Citations (1)
Title |
---|
Algorithms for Assigning Substrate Network Resources to Virtual Network Components;Yong Zhu and Mostafa Ammar;《IEEE》;20070410;全文 |
Also Published As
Publication number | Publication date |
---|---|
CN105743786A (zh) | 2016-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106792888B (zh) | 一种基于信息感知的无线通信组网方法及装置 | |
CN105743786B (zh) | 一种软件定义无线网络映射方法及装置 | |
Kulkarni et al. | A deterministic approach to throughput scaling in wireless networks | |
CN105917698B (zh) | 用于在无线网络之间协调资源调度的方法和装置 | |
CN107026793A (zh) | 路由方法、装置及系统 | |
CN105282038B (zh) | 用于移动卫星网络中基于稳定性分析的分布式星群组网优化方法 | |
CN105376748A (zh) | 虚拟小区的构建、协作节点的选择方法及装置 | |
CN1984020A (zh) | 一种传输数据的方法及装置 | |
CN104022951B (zh) | 一种网络服务路径的建立方法及系统 | |
CN101854697A (zh) | 一种无线网状网络中多约束服务质量控制路由方法和系统 | |
CN105451255A (zh) | 小区干扰管理策略的处理方法及装置 | |
CN107889141A (zh) | 测量和上报方法、终端及基站 | |
CN107182129B (zh) | 多小区场景下融合社交信息的d2d链路选择方法 | |
CN103929782A (zh) | 一种适用于工业无线传感器网络的资源均衡多径路由方法 | |
CN106130925A (zh) | 一种sdn网络的链路调度方法、设备及系统 | |
CN115632939A (zh) | 一种实现算力网络多目标达成的自动选网选路的方法 | |
CN101483935B (zh) | 无线自组织网络的拓扑绘制算法 | |
CN108259074A (zh) | 确定预编码的方法及装置 | |
CN105453489A (zh) | 一种改进型环状拓扑结构及其应用方法 | |
CN108712334A (zh) | 一种路由自组织方法及其系统 | |
CN107548101A (zh) | 报文处理方法和装置、ap以及计算机存储介质 | |
CN102379136A (zh) | 用于随机接入网络的可行速率区的在线计算的方法和设备 | |
CN104917677A (zh) | 数据流转发的控制方法及系统 | |
CN110072213A (zh) | 一种高性能服务器应用于车载自组织网络中的方法 | |
CN110417572A (zh) | 一种基于目标节点相遇概率预测消息传递节点的方法 |
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 |