System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及虚拟化网络,具体涉及一种数据转发方法、静态路由流表项生成方法、装置、计算机设备及存储介质。
技术介绍
1、在中小型虚拟化网络环境中,路由器扮演着至关重要的角色,它不仅连接多个网络,还充当网络间的网关,负责读取数据包中的地址信息,并决定数据的传输路径,例如:它能识别并处理多种网络协议,例如局域网常用的以太网协议和因特网上广泛使用的tcp/ip(transmission control protocol/internet protocol,传输控制协议/网际协议)协议。通过这种方式,路由器可以解析来自不同网络类型的数据包,进行地址转换(如将非tcp/ip地址转换为tcp/ip地址,或相反),并根据选择的路由算法将数据沿最佳路径发送至目的地。
2、虚拟化的分布式路由器作为一种软件定义的路由设备,在转发效能上相较于传统的物理路由器存在不足,当前,多数利用软件定义的分布式路由器采用动态路由方式实现数据转发,这要求分布式路由器之间频繁交换路由流表项,产生更新流量,占用额外的网络带宽,影响数据转发效率,且对cpu(central processing unit,中央处理器)的负载也会相应提高。
3、因此,相关技术存在转发数据时,需要频繁交换路由流表项,产生更新流量,占用额外的网络带宽,影响数据转发效率的问题。
技术实现思路
1、有鉴于此,本专利技术提供了一种数据转发方法、静态路由流表项生成方法、装置、计算机设备及存储介质,以解决转发数据时,需要频繁交换路由流
2、第一方面,本专利技术提供了一种数据转发方法,该方法应用于分布式路由器,包括:
3、在接收到第一主机发送的数据帧时,获取数据帧的第一目标地址;
4、将第一目标地址与第一静态路由流表项进行匹配,确定匹配成功的目标静态路由流表项,并解析数据帧得到数据包;
5、从数据包中获取第二目标地址,从目标静态路由流表项中获取目标网段地址,并将第二目标地址与目标网段地址进行对比;
6、如果对比成功,根据目标静态路由流表项,得到第三目标地址,根据第一目标地址和第三目标地址更新数据包,并重新封装更新后的数据包,得到待转发数据帧;
7、根据第三目标地址,将待转发数据帧发送至目标设备,由目标设备将数据包发送至第二主机,其中,第二主机是根据数据包中的第二目标地址确定的。
8、本实施例提供的数据转发方法,分布式路由器根据第一静态路由流表项实现数据转发,无需频繁交换路由流表项,有效减轻了网络控制器对主机cpu及内存的负担,降低了网络在虚拟化环境中的资源占用率。显著提高了虚拟化网络环境中分布式路由器的易用性和转发性能。解决了转发数据时,需要频繁交换路由流表项,产生更新流量,占用额外的网络带宽,影响数据转发效率的问题。
9、在一些可选的实施方式中,根据目标静态路由流表项,得到第三目标地址,包括:
10、在第一主机首次向第二主机发送数据的情况下,从目标静态路由流表项中获取下一跳地址;
11、根据下一跳地址发出地址解析协议广播,得到第三目标地址;
12、在第一主机非首次向第二主机发送数据的情况下,从目标静态路由流表项中获取下一跳地址;
13、根据下一跳地址在地址解析协议表中查询得到第三目标地址。
14、在本实施方式中,根据第一主机是否首次向第二主机发送数据,采用不同的方式获取第三目标地址,使得得到的第三目标地址准确,确保数据能被转发到正确地址。
15、在一些可选的实施方式中,方法还包括:
16、获取已连接网段地址;
17、判断已连接网段地址是否在预设网段地址范围内;
18、在已连接网段地址不在预设网段地址范围内的情况下,获取编号为预设编号的第二静态路由流表项,并确定是否连接分布式网络地址转换网关;
19、如果未连接分布式网络地址转换网关,则将已连接网段地址与第二静态路由流表项中的目标网段地址进行匹配;
20、如果匹配成功,将第二静态路由流表项作为已连接网段地址对应的目标静态路由流表项;
21、如果已连接分布式网络地址转换网关,则将预设网段地址作为已连接网段地址对应的目标网段地址,将分布式网络地址转换网关的网关地址作为已连接网段地址对应的下一跳地址。
22、第二方面,本专利技术提供了一种静态路由流表项生成方法,该方法应用于网络控制器,包括:
23、获取目标网段地址、下一跳地址以及源媒体存取控制位址;
24、根据目标网段地址和下一跳地址,确定对应的分布式路由器;
25、根据目标网段地址、下一跳地址以及源媒体存取控制位址,生成分布式路由器中的第一静态路由流表项,其中,分布式路由器用于执行上述第一方面或其对应的任一实施方式的数据转发方法。
26、本实施例提供的静态路由流表项生成方法,通过为分布式路由器配置静态路由流表项,赋予虚拟化网络中的分布式路由器通过静态路由流表项转发数据包的能力。有效减轻了虚拟化网络控制器对主机cpu及内存的负担,降低了网络在虚拟化环境中的资源占用率。解决了转发数据时,需要频繁交换路由流表项,产生更新流量,占用额外的网络带宽,影响数据转发效率的问题。
27、在一些可选的实施方式中,方法还包括:
28、判断分布式路由器是否配置了分布式网络地址转换网关;
29、如果配置了分布式网络地址转换网关,获取分布式网络地址转换网关的网关地址和源网络地址转换网关的媒体存取控制位址;
30、将网关地址记录在分布式路由器的第一寄存器中,将媒体存取控制位址保存在分布式路由器的第二寄存器中;
31、根据预设编号、预设优先级、预设网段地址、网关地址以及媒体存取控制位址,在分布式路由器中生成第三静态路由流表项,并将第三静态路由流表项对应的流量出口端信息指向分布式网络地址转换网关的网络逻辑端口。
32、在一些可选的实施方式中,在生成分布式路由器中的第一静态路由流表项之后,方法还包括:
33、将第一静态路由流表项和第三静态路由流表项录入网络控制器的数据库;
34、根据数据库中,分布式路由器对应的第一静态路由流表项、第三静态路由流表项以及关联信息,为分布式路由器创建静态路由表。
35、在本实施方式中,为分布式路由器创建静态路由表,实现分布式路由器与网络控制器之间,数据库的实时同步,确保各分布式路由器更新流表信息的一致性。这保证了即使在虚拟化环境中添加新节点时,也不会出现新增主机节点的分布式路由器与其他路由器的流表不同步问题。
36、在一些可选的实施方式中,在判断分布式路由器是否配置了分布式网络地址转换网关之后,方法还包括:
37、在确定配置了分布式网络地址转换网关的情况下,创建用于禁止创建第一静态路由流表项的判断条件本文档来自技高网...
【技术保护点】
1.一种数据转发方法,其特征在于,所述方法应用于分布式路由器,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标静态路由流表项,得到第三目标地址,包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.一种静态路由流表项生成方法,其特征在于,所述方法应用于网络控制器,所述方法包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,在所述生成所述分布式路由器中的第一静态路由流表项之后,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,在所述判断所述分布式路由器是否配置了分布式网络地址转换网关之后,所述方法还包括:
8.一种数据转发装置,其特征在于,所述装置部署在分布式路由器,所述装置包括:
9.一种静态路由流表项生成装置,其特征在于,所述装置部署在网络控制器,所述装置包括:
10.一种计算机设备,其特征在于,包括:
11.一种计算机可读存储介质,其特征在于,所述
...【技术特征摘要】
1.一种数据转发方法,其特征在于,所述方法应用于分布式路由器,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标静态路由流表项,得到第三目标地址,包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.一种静态路由流表项生成方法,其特征在于,所述方法应用于网络控制器,所述方法包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,在所述生成所述分布式路由器中的第一静态路由流表项之后,所述方法还包括:
7.根据权利要...
【专利技术属性】
技术研发人员:杨晋博,杨欣雨,
申请(专利权)人:济南浪潮数据技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。