一种软件定义网络虚拟映射方法及装置制造方法及图纸

技术编号:15128007 阅读:64 留言:0更新日期:2017-04-10 07:00
本发明专利技术公开了一种软件定义网络虚拟映射方法及装置,应用于控制层设备,所述控制层设备接收虚拟网络请求,将虚拟网络请求中一个连接度最大的虚拟节点确定为虚拟核心节点;获得底层网络核心节点;将所述虚拟核心节点映射至所述底层网络核心节点;从与虚拟核心节点相连的第一跳节点开始,根据虚拟网络请求中记录的要求量,对应从与底层网络核心节点相连的第一跳底层网络节点开始,在底层网络中逐一获取满足虚拟节点的资源要求量和虚拟链路的资源要求量的底层网络节点和链路进行映射,直至虚拟网络请求中所有的虚拟节点和虚拟链路映射完成。本发明专利技术实施例能够使底层网络节点被均衡映射。

【技术实现步骤摘要】

本专利技术涉及软件定义网络领域,特别涉及一种软件定义网络虚拟映射方法及装置
技术介绍
软件定义网络(SDN)是解决网络僵化问题的非常有发展前景的方法。SDN中分离数据层和控制层,并简化网络管理。控制层运行自主映射算法,根据网络虚拟请求,向底层共享网络发送相应的映射方案。虚拟网络映射问题主要涉及如何合理与高效地映射虚拟网络请求到一个共享的底层网络中。现有技术在将网络虚拟请求中的虚拟节点映射到底层网络的底层网络节点时,并没有考虑底层网络节点的所承受负载的情况,即只要判断某一底层网络节点剩余的资源量满足相应虚拟节点资源量要求,就能够将该底层网络节点与对应虚拟节点进行映射,而不考虑在底层网络中是否存在其它未被使用或未被充分使用的底层网络节点,进而造成底层网络底层网络节点未被均衡映射。
技术实现思路
本专利技术实施例公开了一种软件定义网络虚拟映射方法及装置,使底层网络节点能够被均衡映射。为达到上述目的,本专利技术实施例公开了一种软件定义网络虚拟映射方法,应用于控制层设备,所述方法包括步骤:A、接收虚拟网络请求,所述虚拟网络请求为一个加权无向图,其中包括:每个虚拟节点的资源要求量、每个虚拟节点之间的连接关系和具有连接关系的虚拟节点间虚拟链路的资源要求量;B、按照第一预设规则,将虚拟网络请求中一个连接度最大的虚拟节点确定为虚拟核心节点;C、按照第二预设规则,基于底层网络加权无向图,获得底层网络核心节点;D、将所述虚拟核心节点映射至所述底层网络核心节点;E、从与虚拟核心节点相连的第一跳节点开始,根据虚拟网络请求中每个虚拟节点的资源要求量、每个虚拟节点之间的连接关系和具有连接关系的虚拟节点间虚拟链路的资源要求量,对应从与底层网络核心节点相连的第一跳底层网络节点开始,在底层网络中逐一获取满足虚拟节点的资源要求量和虚拟链路的资源要求量的底层网络节点和链路进行映射,直至虚拟网络请求中所有的虚拟节点和虚拟链路映射完成。较佳的,所述按照第一预设规则,将虚拟网络请求中一个连接度最大的虚拟节点确定为虚拟核心节点,包括:对连接度最大的虚拟节点中的每一个虚拟节点进行AR评估,确定AR评估值最大的一个虚拟节点为虚拟核心节点。较佳的,所述按照第二预设规则,基于底层网络加权无向图,获得底层网络核心节点,包括:根据预设资源库中保存的底层网络加权无向图中每个底层网络节点的未使用资源量和已使用资源量的信息,确定剩余资源量占比最大的底层网络节点为底层网络核心节点;所述预设资源库中保存有底层网络中每个底层网络节点的未使用资源量和已使用资源量的信息,和每个底层网络节点之间的连接关系,以及具有连接关系的节点间底层网络节点链路的可用带宽资源量。较佳的,所述步骤E,包括:E1、将所述虚拟核心节点作为当前父虚拟节点,将所述底层网络核心节点作为当前真父底层网络节点;E2、确定与当前父虚拟节点经过一跳连接的所有未映射虚拟节点为子虚拟节点;确定与当前真父底层网络节点经过一跳连接的所有未映射底层网络节点为子底层网络节点;E3、取出每个子虚拟节点,执行步骤E31、E32和E33;E31、确定待选底层网络节点,以使所述待选底层网络节点与当前父底层网络节点间底层网络链路可用资源量满足该子虚拟节点与对应的父虚拟节点间链路资源要求量;将所有待选底层网络节点与当前父底层网络节点间底层网络链路确定为可用链路;E32、判断待选底层网络节点中,是否至少有一个待选底层网络节点的未使用资源量不小于该子虚拟节点的资源要求量,若是,则按照预设的规则,选择其中一个待选底层网络节点与该子虚拟节点建立映射关系,并将该建立映射关系的子底层网络节点标识为已映射底层网络节点,将该子虚拟节点标识为已映射虚拟节点,并确定已映射路径;所述已映射路径由连通该已映射底层网络节点与当前真父底层网络节点的可用链路构成,所述已映射路径与已映射虚拟节点到当前父虚拟节点间的虚拟链路具有映射关系,直到取尽了所有子虚拟节点,之后执行E33;若否,则将所有当前待选底层网络节点确定为伪父底层网络节点,执行E321、E322和E323;E321、确定与所述伪父底层网络节点经过一跳连接的所有未映射底层网络节点为新子底层网络节点;E322、确定新的待选底层网络节点,以使所述新的待选底层网络节点与对应的伪父底层网络节点间底层网络链路可用资源量满足该子虚拟节点与对应的父虚拟节点间链路资源要求量,并将该底层网络链路标识为可用链路;E323、在E322确定出的待选底层网络节点中,执行E32;E33、判断是否完成所有虚拟节点的映射,若是则执行E4,若否,则将每个子虚拟节点确定为新的当前父虚拟节点,将与每个子虚拟节点建立映射关系的已映射底层网络节点确定为新的当前真父底层网络节点,执行E2、E3;E4、根据虚拟节点之间的连接关系,确定未映射的虚拟链路;E5、针对每条未映射的虚拟链路,确定其所对应的两个已映射底层网络节点,在所述两个已映射底层网络节点间确定一条满足该未映射的虚拟链路资源量要求的连通路径,与该未映射的虚拟链路建立映射关系。较佳的,所述在所述两个已映射底层网络节点间确定一条满足该未映射的虚拟链路资源量要求的连通路径,与该未映射的虚拟链路建立映射关系,包括:采用k-最短路径法,在所述两个已映射底层网络节点间确定一条满足该未映射的虚拟链路资源量要求的连通路径,与该未映射的虚拟链路建立映射关系。本专利技术实施例还公开了一种软件定义网络虚拟映射装置,应用于控制层设备,所述装置包括:接收模块,用于接收虚拟网络请求,所述虚拟网络请求为一个加权无向图,其中包括:每个虚拟节点的资源要求量、每个虚拟节点之间的连接关系和具有连接关系的虚拟节点间虚拟链路的资源要求量;虚拟核心节点模块,用于按照第一预设规则,将虚拟网络请求中一个连接度最大的虚拟节点确定为虚拟核心节点;底层网络核心节点模块,用于按照第二预设规则,基于底层网络加权无向图,获得底层网络核心节点;核心节点映射模块,用于将所述虚拟核心节点映射至所述底层网络核心节点;映射模块,用于从与虚拟核心节点相连的第一跳节点开始,根据虚拟网络请求中每个虚拟节点的资源要求量、每个虚拟节点之间的连接关系和具有连接关系的虚拟节点间虚拟链路的资源要求量,对应从与底层网络核心节点相连的第一跳底层网络节点开始,在底层网络中逐一获取满足虚拟节点的资源要求量和虚拟链路的资源要求量的本文档来自技高网...

【技术保护点】
一种软件定义网络虚拟映射方法,其特征在于,应用于控制层设备,所述方法包括步骤:A、接收虚拟网络请求,所述虚拟网络请求为一个加权无向图,其中包括:每个虚拟节点的资源要求量、每个虚拟节点之间的连接关系和具有连接关系的虚拟节点间虚拟链路的资源要求量;B、按照第一预设规则,将虚拟网络请求中一个连接度最大的虚拟节点确定为虚拟核心节点;C、按照第二预设规则,基于底层网络加权无向图,获得底层网络核心节点;D、将所述虚拟核心节点映射至所述底层网络核心节点;E、从与虚拟核心节点相连的第一跳节点开始,根据虚拟网络请求中每个虚拟节点的资源要求量、每个虚拟节点之间的连接关系和具有连接关系的虚拟节点间虚拟链路的资源要求量,对应从与底层网络核心节点相连的第一跳底层网络节点开始,在底层网络中逐一获取满足虚拟节点的资源要求量和虚拟链路的资源要求量的底层网络节点和链路进行映射,直至虚拟网络请求中所有的虚拟节点和虚拟链路映射完成。

【技术特征摘要】
1.一种软件定义网络虚拟映射方法,其特征在于,应用于控制层设备,
所述方法包括步骤:
A、接收虚拟网络请求,所述虚拟网络请求为一个加权无向图,其中包括:
每个虚拟节点的资源要求量、每个虚拟节点之间的连接关系和具有连接关系的
虚拟节点间虚拟链路的资源要求量;
B、按照第一预设规则,将虚拟网络请求中一个连接度最大的虚拟节点确定
为虚拟核心节点;
C、按照第二预设规则,基于底层网络加权无向图,获得底层网络核心节点;
D、将所述虚拟核心节点映射至所述底层网络核心节点;
E、从与虚拟核心节点相连的第一跳节点开始,根据虚拟网络请求中每个虚
拟节点的资源要求量、每个虚拟节点之间的连接关系和具有连接关系的虚拟节
点间虚拟链路的资源要求量,对应从与底层网络核心节点相连的第一跳底层网
络节点开始,在底层网络中逐一获取满足虚拟节点的资源要求量和虚拟链路的
资源要求量的底层网络节点和链路进行映射,直至虚拟网络请求中所有的虚拟
节点和虚拟链路映射完成。
2.根据权利要求1所述的方法,其特征在于,所述按照第一预设规则,将
虚拟网络请求中一个连接度最大的虚拟节点确定为虚拟核心节点,包括:
对连接度最大的虚拟节点中的每一个虚拟节点进行AR评估,确定AR评估
值最大的一个虚拟节点为虚拟核心节点。
3.根据权利要求1所述的方法,其特征在于,所述按照第二预设规则,基
于底层网络加权无向图,获得底层网络核心节点,包括:
根据预设资源库中保存的底层网络加权无向图中每个底层网络节点的未使
用资源量和已使用资源量的信息,确定剩余资源量占比最大的底层网络节点为
底层网络核心节点;所述预设资源库中保存有底层网络中每个底层网络节点的
未使用资源量和已使用资源量的信息,和每个底层网络节点之间的连接关系,
以及具有连接关系的节点间底层网络节点链路的可用带宽资源量。
4.根据权利要求1所述的方法,其特征在于,所述步骤E,包括:
E1、将所述虚拟核心节点作为当前父虚拟节点,将所述底层网络核心节点
作为当前真父底层网络节点;
E2、确定与当前父虚拟节点经过一跳连接的所有未映射虚拟节点为子虚拟
节点;确定与当前真父底层网络节点经过一跳连接的所有未映射底层网络节点
为子底层网络节点;
E3、取出每个子虚拟节点,执行步骤E31、E32和E33;
E31、确定待选底层网络节点,以使所述待选底层网络节点与当前父底层网
络节点间底层网络链路可用资源量满足该子虚拟节点与对应的父虚拟节点间链
路资源要求量;将所有待选底层网络节点与当前父底层网络节点间底层网络链
路确定为可用链路;
E32、判断待选底层网络节点中,是否至少有一个待选底层网络节点的未使
用资源量不小于该子虚拟节点的资源要求量,若是,则按照预设的规则,选择
其中一个待选底层网络节点与该子虚拟节点建立映射关系,并将该建立映射关
系的子底层网络节点标识为已映射底层网络节点,将该子虚拟节点标识为已映
射虚拟节点,并确定已映射路径;所述已映射路径由连通该已映射底层网络节
点与当前真父底层网络节点的可用链路构成,所述已映射路径与已映射虚拟节
点到当前父虚拟节点间的虚拟链路具有映射关系,直到取尽了所有子虚拟节点,
之后执行E33;若否,则将所有当前待选底层网络节点确定为伪父底层网络节点,
执行E321、E322和E323;
E321、确定与所述伪父底层网络节点经过一跳连接的所有未映射底层网络
节点为新子底层网络节点;
E322、确定新的待选底层网络节点,以使所述新的待选底层网络节点与对
应的伪父底层网络节点间底层网络链路可用资源量满足该子虚拟节点与对应的
父虚拟节点间链路资源要求量,并将该底层网络链路标识为可用链路;
E323、在E322确定出的待选底层网络节点中,执行E32;
E33、判断是否完成所有虚拟节点的映射,若是则执行E4,若否,则将每
个子虚拟节点确定为新的当前父虚拟节点,将与每个子虚拟节点建立映射关系

\t的已映射底层网络节点确定为新的当前真父底层网络节点,执行E2、E3;
E4、根据虚拟节点之间的连接关系,确定未映射的虚拟链路;
E5、针对每条未映射的虚拟链路,确定其所对应的两个已映射底层网络节
点,在所述两个已映射底层网络节点间确定一条满足该未映射的虚拟链路资源
量要求的连通路径,与该未映射的虚拟链路建立映射关系。
5.根据权利要求4所述的方法,其特征在于,所述在所述两个已映射底层
网络节点间确定一条满足该未映射的虚拟链路资源量要求的连通路径,与该未
映射的虚拟链路建立映射关系,包括:
采用k-最短路径法,在所述两个已映射底层网络节点间确定一条满足该未
映射的虚拟链路资源量要求的连通路径,与该未映射的虚拟链路建立映射关系。
6.一种软件定义网络虚拟映射装置,其特征在于,应用于控制层设备,
所述装置包括:
接收模块,用于接收虚拟网络请求,所述虚...

【专利技术属性】
技术研发人员:陈墨龚向阳王小娟陈世芳李慕轩马跃刘祥如
申请(专利权)人:北京邮电大学
类型:发明
国别省市:北京;11

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

1