一种IPv6地址的生成方法、生成装置及负载均衡器制造方法及图纸

技术编号:28128440 阅读:26 留言:0更新日期:2021-04-19 11:46
本申请公开了一种IPv6地址的生成方法、生成装置、负载均衡器及计算机可读存储介质。其中,该方法应用于高性能第4层负载均衡器DPVS,包括:向路由器发送路由器请求报文;接收所述路由器基于所述路由器请求报文而返回的路由器公告报文;根据所述路由器公告报文获得网络地址;根据所述DPVS的物理地址生成主机地址;基于所述网络地址及所述主机地址,生成所述DPVS的IPv6地址。通过本申请方案,可在DPVS初始化后实现IPv6地址的快速生成,提升对DPVS进行地址管理的效率,实现DPVS的快速部署。实现DPVS的快速部署。实现DPVS的快速部署。

【技术实现步骤摘要】
一种IPv6地址的生成方法、生成装置及负载均衡器


[0001]本申请属于通信
,尤其涉及一种IPv6地址的生成方法、生成装置、负载均衡器及计算机可读存储介质。

技术介绍

[0002]DPVS(Data Plane Development Kit

Linux Virtual Server)是基于数据平面开发套件(DPDK,Data Plane Development Kit)的高性能第4层负载均衡器,拥有较为强大的性能。但DPVS在初始化网络时,IPv6地址不能自动分配,需要对IPv6地址进行手动配置,后续才能和其它网络设备相互通信。由于IPv6地址空间长达128位,且地址格式相对IPv4更为复杂,因而,手动配置IPv6地址不易于地址管理和快速部署。

技术实现思路

[0003]本申请提供了一种IPv6地址的生成方法、IPv6地址的生成装置、负载均衡器及计算机可读存储介质,可提升对DPVS进行地址管理的效率,实现DPVS的快速部署。
[0004]第一方面,本申请提供了一种IPv6地址的生成方法,上述生成方法应用于高性能第4层负载均衡器DPVS,包括:
[0005]向路由器发送路由器请求报文;
[0006]接收上述路由器基于上述路由器请求报文而返回的路由器公告报文;
[0007]根据上述路由器公告报文获得网络地址;
[0008]根据上述DPVS的物理地址生成主机地址;
[0009]基于上述网络地址及上述主机地址,生成上述DPVS的IPv6地址。
[0010]第二方面,本申请提供了一种IPv6地址的生成装置,上述生成装置应用于高性能第4层负载均衡器DPVS,包括:
[0011]报文发送单元,用于向路由器发送路由器请求报文;
[0012]报文接收单元,用于接收上述路由器基于上述路由器请求报文而返回的路由器公告报文;
[0013]网络地址获取单元,用于根据上述路由器公告报文获得网络地址;
[0014]主机地址获取单元,用于根据上述DPVS的物理地址生成主机地址;
[0015]地址生成单元,用于基于上述网络地址及上述主机地址,生成上述DPVS的IPv6地址。
[0016]第三方面,本申请提供了一种负载均衡器,上述负载均衡器包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法的步骤。
[0017]第四方面,本申请提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。
[0018]第五方面,本申请提供了一种计算机程序产品,上述计算机程序产品包括计算机
程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。
[0019]本申请与现有技术相比存在的有益效果是:DPVS向路由器发送路由器请求报文,并接收上述路由器基于上述路由器请求报文而返回的路由器公告报文,之后即可根据上述路由器公告报文获得网络地址;与此同时,还可根据上述DPVS的物理地址生成主机地址,使得DPVS最后可基于上述网络地址及上述主机地址,生成上述DPVS的IPv6地址。上述过程省去了用户对DPVS的IPv6地址的人工配置,可提升对DPVS进行地址管理的效率,实现DPVS的快速部署。可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
[0020]为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1是本申请实施例提供的IPv6地址的生成方法的实现流程示意图;
[0022]图2是本申请实施例提供的IPv6地址的生成装置的结构框图;
[0023]图3是本申请实施例提供的负载均衡器的结构示意图。
具体实施方式
[0024]以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
[0025]为了说明本申请所提出的技术方案,下面通过具体实施例来进行说明。
[0026]下面对本申请实施例提供的一种IPv6地址的生成方法进行描述。该生成方法应用于DPVS。请参阅图1,该生成方法包括:
[0027]步骤101,向路由器发送路由器请求报文。
[0028]在本申请实施例中,DPVS在初始化过程中,可向路由器发起路由器请求(Router Solicitation,RS),也即向路由器发送RS报文。而在步骤101之前,DPVS需要先获得自身的本地链路地址,才可发起该RS请求;因而,DPVS可先生成本地链路地址,再基于该本地链路地址,发起该RS请求,也即向路由器发送RS报文。其中,本地链路地址是DPVS的网卡在DPDK所有逻辑核均完成初始化并绑定对应线程之后所产生的网卡硬件地址。
[0029]其中,DPVS是通过启动DPDK来实现其网络的初始化。在DPDK中,一个环境抽象层进程(Environment Abstraction Layer process,EAL process)中包含有若干个逻辑核(lcore);这其中,包括一个主逻辑核(master lcore)以及若干个从逻辑核(slave lcore)。EAL process中的线程与逻辑核一一绑定;也即,一个线程唯一的绑定到了一个逻辑核上,提高了中央处理器缓存(Central Processing Unit cache,CPU cache)的命中率,从而减少内存访问损耗,提高程序速度。具体地,DPDK的线程分为控制线程和数据线程,控制线程一般绑定到master lcore上;并且,每个lcore都有各自的单播地址列表ifa_list、多播地
址列表imc_list以及路由哈希表。
[0030]其中,DPVS的内核默认使用EUI

64(64

bit Extended Unique Identifier)模式来生成本地链路地址;也即,由DPVS的网口的物理(Media Access Control Address,MAC)地址生成IPv6本地链路地址。当然,上述EUI

64模式也可修改为其它模式,此处不作限定。
[0031]具体地,本地链路地址由master lcore生成,master lcore可注册多播回调函数,通过遍历所有的lcore将本地链路地址添加到每个sl本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种IPv6地址的生成方法,其特征在于,所述生成方法应用于高性能第4层负载均衡器DPVS,包括:向路由器发送路由器请求报文;接收所述路由器基于所述路由器请求报文而返回的路由器公告报文;根据所述路由器公告报文获得网络地址;根据所述DPVS的物理地址生成主机地址;基于所述网络地址及所述主机地址,生成所述DPVS的IPv6地址。2.如权利要求1所述的生成方法,其特征在于,在所述向路由器发送路由器请求报文之前,所述生成方法还包括:生成所述DPVS的本地链路地址;相应地,所述向路由器发送路由器请求报文,包括:基于所述本地链路地址,向所述路由器发送所述路由器请求报文。3.如权利要求2所述的生成方法,其特征在于,所述生成所述DPVS的本地链路地址,包括:根据所述DPVS的物理地址生成所述本地链路地址。4.如权利要求1所述的生成方法,其特征在于,所述根据所述路由器公告报文获得网络地址,包括:基于预设的结构体对所述路由器公告报文进行解析,获得所述路由器公告报文所携带的前缀信息;根据所述前缀信息确定所述网络地址。5.如权利要求1至4任一项所述的生成方法,其特征在于,在所述基于所述网络地址及所述主机地址,生成所述DPVS的IPv6地址之后,所述生成方法还包括:检测所述IPv6地址是否存在冲突;若所述IPv6地址存在冲突,则基于预设的更新规则更新所述IPv6地址,直至所述IPv6...

【专利技术属性】
技术研发人员:谢霞
申请(专利权)人:赛尔网络有限公司
类型:发明
国别省市:

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

1