一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据传输方法、装置、介质与流程

2022-03-02 01:42:50 来源:中国专利 TAG:


1.本技术涉及云计算技术领域,特别是涉及一种数据传输方法、装置、介质。


背景技术:

2.在云计算服务系统中,用户通常采用以太网虚拟专用网络(ethernet virtual private network,evpn)技术连接不同的网络设备,例如终端服务器或虚拟机。evpn通过交换机连接多个网络设备,并通过在设置虚拟隧道端点(virtual tunnel end point,vtep)以实现不同网络设备中的数据交换和业务互通。不同的vtep间采用vxlan(virtual extensible local area network,虚拟扩展局域网)隧道进行通信,以实现不同网络设备间的数据交换和业务互通。在vtep通信过程中,会根据记录着网络内各网络设备的媒体存取控制位址(media access control address,mac)和vtep与网络设备的对应关系的转发表,将数据自发送设备经vtep传输至指定的网络设备。
3.由于每个vtep与多个网络设备连接,而各vtep的转发表的容量有限,无法同时支持大量的网络设备进行数据交换,影响云计算服务系统的处理效率。
4.由此可见,如何提出一种新的数据传输方法以提高云计算服务系统的处理效率,是本领域技术人员亟需解决的问题。


技术实现要素:

5.本技术的目的是提供一种数据传输方法、装置、介质。
6.为解决上述技术问题,本技术提供了一种数据传输方法,包括:
7.与目标端点建立通信隧道并获取第一转发表,所述第一转发表包括设备侧转发表和隧道侧转发表;
8.获取待发送的数据包,所述数据包包括发送设备mac掩码和目标设备mac掩码;
9.根据第二转发表将所述数据包发送至与所述目标设备mac掩码匹配的目标设备,所述第二转发表包括设备侧转发表和将所述隧道侧转发表中满足第一预设条件的项合并得到的合并隧道侧转发表。
10.优选的,所述第一预设条件为:
11.所述隧道侧转发表项中所述发送设备mac值掩码的前第一阈值位相同且所述目标设备mac值掩码的前第二阈值位相同,所述转发表项为所述转发表中的项。
12.优选的,所述根据第二转发表将所述数据发送至目标设备包括:
13.当所述第二转发表中存在多个与所述数据包的所述发送设备mac掩码和所述目标设备mac掩码匹配的转发表项时,获取所述目标设备mac掩码长度最长的目标转发表项,将所述数据包发送至所述目标转发表项所对应的所述目标设备。
14.优选的,所述数据传输方还包括:当所述转发表项存在的时间大于阈值时间后,删除所述转发表项。
15.优选的,还包括:当满足第二预设条件时,将所述转发表项存在的时间置0。
16.优选的,所述第二预设条件包括:
17.存在根据所述转发表项发送至所述目标设备的数据包;
18.或当将所述隧道侧转发表中满足所述第一预设条件的项合并得到的新转发表项与所述转发表项相同。
19.优选的,所述获取第一转发表包括:
20.将获取到的与自身相连的所述设备的所述转发表项和获取到的其他所述端点的所述转发表项结合,生成所述第一转发表。
21.为解决上述技术问题,本技术还提供一种数据传输装置,包括:
22.第一获取模块,用于与目标端点建立通信隧道并获取第一转发表,所述第一转发表包括设备侧转发表和隧道侧转发表;
23.第二获取模块,用于获取待发送的数据包,所述数据包包括发送设备mac掩码和目标设备mac掩码;
24.发送模块,用于根据第二转发表将所述数据包发送至与所述目标设备mac掩码匹配的目标设备,所述第二转发表为将所述隧道侧转发表中满足第一预设条件的项合并得到。
25.为解决上述技术问题,本技术还提供一种数据传输装置,包括存储器,用于存储计算机程序;
26.处理器,用于执行所述计算机程序时实现所述的数据传输方法的步骤。
27.为解决上述技术问题,本技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的数据传输方法的步骤。
28.本技术所提供的数据传输方法包括:当前端点与目标端点建立通信隧道并获取记录着虚拟机间连接关系的第一转发表,第一转发表包括设备侧转发表和隧道侧转发表,以实现不同虚拟机间的数据交换。当前端点从与自身连接的设备和其他端点处获取待发送的数据包,数据包包括发送设备mac掩码和目标设备mac掩码,根据第二转发表将数据发送至与目标设备mac掩码匹配的目标设备,第二转发表为将第一转发表的隧道侧转发表中满足第一预设条件的项合并得到。通过将满足第一预设条件的项合并,减少第二转发表项的数量,从而增加第二转发表的容量,使系统能够同时支持更多的网络设备进行数据交换,提高云计算服务系统的工作效率。
29.除此以外,本技术还提供一种数据传输装置、介质,与上述方法对应,效果同上。
附图说明
30.为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
31.图1为本技术实施例提供的一种数据传输方法的流程图;
32.图2为本技术实施例提供的一种数据传输装置的结构图;
33.图3为本技术实施例提供的另一种数据传输装置的结构图。
具体实施方式
34.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本技术保护范围。
35.本技术的核心是提供一种数据传输方法、装置、介质。
36.为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。
37.在本技术所提供的数据传输方法的应用场景中,交换机与各数据中心连接,构成evpn网络。通过设置vtep以进行通信,vtep与多个网络设备连接,其中,vtep可以设置在虚拟机或虚拟服务器中,也可以设置在服务器中。在具体实施中,在evpn网络中包含多个vtep,每个vtep与多个网络设备连接,且vtep间通过通信隧道连接,从而实现数据的传输。其中,vtep通过记录着局域网主机端口mac地址与交换机端口对应的转发表将数据传输到指定的主机端口上,转发表包括记录vtep连接的设备的mac值的设备侧转发表和记录着与vtep间对应关系的隧道侧转发表。当vtep获取到数据时,对数据进行解析以获取其中包含的发送设备的mac地址和接收设备的mac地址。vtep根据转发表将数据发送至于接收设备的mac地址对应的设备中。当隧道侧转发表的项过多时,将其中满足第一预设条件的项合并,以使转发表能够存储更多的项,使系统能够同时支持更多的网络设备进行数据交换,提高云计算服务系统的工作效率。
38.图1为本技术实施例提供的一种数据传输方法的流程图,如图1所示,该方法包括:
39.s10:与目标端点建立通信隧道并获取第一转发表,第一转发表包括设备侧转发表和隧道侧转发表。
40.在具体实施中,不同vtep点之间建立vxlan隧道以实现通信。获取第一转发表为学习转发表项的过程包括:
41.第一虚拟机将一个包含发送设备网卡mac地址和目标设备网卡mac地址的数据包发送至与该虚拟机直接连接的第一vtep;
42.第一vtep获取数据包后,记录发送设备的mac地址,并检查转发表中是否存在目标设备的mac值,若不存在目标设备的mac值,则将数据包广播至与自身连接的其他设备和第二vtep等其他vtep中;
43.第二vtep获取数据包后,检查自身的转发表中是否存在目标设备mac地址,若存在目标设备的mac值,则将数据包发送至目标设备,若不存在目标设备的mac值,则将数据包广播至与自身连接的其他设备和其他vtep中;
44.当最终目标设备获取到数据包后,响应该数据包,并将一个包含自身mac地址的数据包发送至第一虚拟机,同时第一vtep等vtep均将发送设备和目标设备的mac值记录至转发表中,获取转发表项。
45.可以理解的是,转发表项包括:mac地址、主机侧端口和隧道侧端口信息、vxlan标识信息。为了便于vtep间的通信,第一转发表包括记录与自身连接的设备的转发表项的设备侧转发表和记录与其他vtep连接的设备的转发表项的隧道侧转发表。
46.需要注意的是,为了使不同vtep连接的设备间互相访问时不泛洪,减少获取转发
表所用的时间,可以使不同vtep互相同步转发表项。
47.s11:获取待发送的数据包,数据包包括发送设备mac掩码和目标设备mac掩码。
48.获取与自身连接的设备或其他vtep发送的数据包,并对数据包进行解析,以获取数据包中包括的发送设备mac掩码和目标设备mac掩码。
49.可以理解的是,若目标设备为与自身连接的设备,则通过交换机端口将数据包发送至目标设备,若目标设备为与其他vtep连接的设备,则通过vxlan隧道将数据包发送至目标vtep。其中,vxlan是建立在物理ip网络overlay上的虚拟以太网,使用用户数据报协议(user datagramprotocol,udp)在三层物理网络上建立二层逻辑网络,并利用ip多播封装广播和多播报文。相较于其他的局域网络,vxlan能够支持更多的设备通信,减少物理网络基础设施的限制。
50.s12:根据第二转发表将数据包发送至与目标设备mac掩码匹配的目标设备,第二转发表包括设备侧转发表和将隧道侧转发表中满足第一预设条件的项合并得到的合并隧道侧转发表。
51.在具体实施中,将隧道侧转发表中满足第一预设条件的转发表项合并,以减少转发表项的数量,从而达到节省转发表容量的目的。
52.在将多个转发表项合并为同一项后,还可以采用掩码提高mac地址的安全性,生成mac地址/掩码信息 隧道侧端口信息 vxlan标识信息形式的聚合转发表项,相应的,还需要在转发表中添加掩码匹配项,以使vtep能够根据合并后的第二转发表将数据包发送至目标设备。
53.可以理解的是,当将转发表项合并后,vtep无法直接确定获取到的数据包应发送至与自身连接的设备还是发送到其他vtep,但由于只对第二转发表中的隧道侧转发表进行了合并操作,因此隧道侧转发表项相较于设备侧转发表项短,当第二转发表中存在多个与数据包的发送设备mac掩码和目标设备mac掩码匹配的转发表项时,优先将数据发送至设备,即优先匹配长度最长的转发表项。
54.需要注意的是,由于转发表的容量有限,为了节省转发表容量,还需要将长期未使用的合并得到的第二转发表项删除,以节省转发表容量。
55.在本实施例中提供的数据传输方法包括:当前端点与目标端点建立通信隧道并获取记录着虚拟机间连接关系的第一转发表,第一转发表包括设备侧转发表和隧道侧转发表,以实现不同虚拟机间的数据交换。当前端点从与自身连接的设备和其他端点处获取待发送的数据包,数据包包括发送设备mac掩码和目标设备mac掩码,根据第二转发表将数据发送至与目标设备mac掩码匹配的目标设备,第二转发表为将第一转发表的隧道侧转发表中满足第一预设条件的项合并得到。通过将满足第一预设条件的项合并,减少第二转发表项的数量,从而增加第二转发表的容量,使系统能够同时支持更多的网络设备进行数据交换,提高云计算服务系统的工作效率。
56.在具体实施中,第一预设条件可以为判断转发表项中的目标设备所在的vtep,将匹配同一vtep或同一设备的转发表项合并;也可以检测转发表项的前n位是否相同,将相同的转发表项合并。后一种方案更加简单直观。
57.在上述实施例的基础上,第一预设条件为:
58.隧道侧转发表项中发送设备mac值掩码的前第一阈值位相同且目标设备mac值掩
码的前第二阈值位相同,转发表项为转发表中的项。
59.第一阈值和第二阈值可以由用户自行设定,可以理解的是,第一阈值和第二阈值的值越小,则被合并的转发表项越多,越能够节省转发表的容量;相应的,根据合并后的隧道侧转发表匹配转发表项的时间越长。
60.如原转发表项为aa:bb:cc:dd:ee:ff,聚合长度mask=24,在具体实施中,将具有相同特征aa:bb:cc前缀的转发表项,在隧道侧转发表口都聚合成aa:bb:cc:00:00:00/24 tunnel vxlan标志位形式的转发表项,该当数据包与该表项的前24位匹配时,即可按照此转发表项转发数据。
61.在本实施例中,通过检测转发表项的前n位是否相同,将相同的转发表项合并,采用更加简单直观的方式将转发表项合并,提高工作效率。
62.在具体实施,当将转发表项合并后,vtep无法直接确定获取到的数据包应发送至与自身连接的设备还是发送到其他vtep,会影响数据的正常发送。
63.在上述实施例的基础上,根据第二转发表将数据发送至目标设备包括:
64.当第二转发表中存在多个与数据包的发送设备mac掩码和目标设备mac掩码匹配的转发表项时,获取目标设备mac掩码长度最长的目标转发表项,将数据包发送至目标转发表项所对应的目标设备。
65.可以理解的是,不对设备侧的转发表项进行合并操作,因此,设备侧的转发表项掩码都为48位,均为aa:bb:cc:dd:ee:ff/48 port vxlan标识的格式。当vtep转发数据时,根据转发表项的掩码长度进行优先匹配,掩码长度越长越优先。
66.在具体实施中,当存在多个匹配的转发表项时,通过获取目标设备mac掩码长度最长的目标转发表项,将数据包发送至目标转发表项所对应的目标设备,使数据能够正常传输。
67.在具体实施中,由于转发表的容量有限,当转发表中的合并转发表项的数量过多时,会占用大量的转发表容量,影响系统的正常工作。
68.在上述实施例的基础上,还包括:当转发表项存在的时间大于阈值时间后,删除转发表项。
69.可以理解的是,转发表的存在时间可以由用户自行设置,例如:60s或80s,在此不做限定。需要注意的是,当转发表存在时间过短时,系统需要频繁的对隧道侧转发表进行合并操作,会造成计算资源的浪费。
70.在具体实施中,可以为合并后的转发表项,设置老化时间,当转发表项存在时间达到老化时间后,删除该转发表项。
71.在本实施例中,通过限定合并后转发表项的存在时间,将老化的转发表项删除,节省转发表的容量,提高工作效率。
72.在具体实施中,若删除合并转发表项的次数过多,需要频繁的对隧道侧转发表进行合并操作,造成计算资源的浪费。
73.在上述实施例的基础上,当存在根据转发表项发送至目标设备的数据包;
74.或当将隧道侧转发表中满足第一预设条件的项合并得到的新转发表项与转发表项相同时,刷新转发表项的老化时间,如:将转发表项存在的时间置0。
75.在本实施例中,通过刷新转发表项的老化时间,减少对隧道侧转发表进行合并操
作的次数,节约计算资源。
76.在上述实施例中,对于数据传输方法进行了详细描述,本技术还提供数据传输装置对应的实施例。需要说明的是,本技术从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
77.图2为本技术提供的一种数据传输装置的结构图,该装置包括:
78.第一获取模块10,用于与目标端点建立通信隧道并获取第一转发表,第一转发表包括设备侧转发表和隧道侧转发表。
79.第二获取模块11,用于获取待发送的数据包,数据包包括发送设备mac掩码和目标设备mac掩码。
80.发送模块12,用于根据第二转发表将数据包发送至与目标设备mac掩码匹配的目标设备,第二转发表为将隧道侧转发表中满足第一预设条件的项合并得到。
81.由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
82.本技术实施例提供了一种数据传输装置,包括:当前端点与目标端点建立通信隧道并获取记录着虚拟机间连接关系的第一转发表,第一转发表包括设备侧转发表和隧道侧转发表,以实现不同虚拟机间的数据交换。当前端点从与自身连接的设备和其他端点处获取待发送的数据包,数据包包括发送设备mac掩码和目标设备mac掩码,根据第二转发表将数据发送至与目标设备mac掩码匹配的目标设备,第二转发表为将第一转发表的隧道侧转发表中满足第一预设条件的项合并得到。通过将满足第一预设条件的项合并,减少第二转发表项的数量,从而增加第二转发表的容量,使系统能够同时支持更多的网络设备进行数据交换,提高云计算服务系统的工作效率。
83.图3为本技术另一实施例提供的数据传输装置的结构图,如图3所示,数据传输装置包括:存储器20,用于存储计算机程序;
84.处理器21,用于执行计算机程序时实现如上述实施例获取转发表方法的步骤。
85.本实施例提供的数据交换机可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
86.其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(central processing unit,cpu);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有图像处理器(graphics processing unit,gpu),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(artificial intelligence,ai)处理器,该ai处理器用于处理有关机器学习的计算操作。
87.存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,
其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的数据传输方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括windows、unix、linux等。数据203可以包括但不限于转发表项和网络设备发送至目标设备的数据包等。
88.在一些实施例中,数据传输装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
89.本领域技术人员可以理解,图3中示出的结构并不构成对数据传输装置的限定,可以包括比图示更多或更少的组件。
90.本技术实施例提供的数据传输装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:
91.与目标端点建立通信隧道并获取第一转发表,所述第一转发表包括设备侧转发表和隧道侧转发表;
92.获取待发送的数据包,所述数据包包括发送设备mac掩码和目标设备mac掩码;
93.根据第二转发表将所述数据包发送至与所述目标设备mac掩码匹配的目标设备,所述第二转发表包括设备侧转发表和将所述隧道侧转发表中满足第一预设条件的项合并得到的合并隧道侧转发表。
94.本技术实施例提供了一种数据传输装置,包括:当前端点与目标端点建立通信隧道并获取记录着虚拟机间连接关系的第一转发表,第一转发表包括设备侧转发表和隧道侧转发表,以实现不同虚拟机间的数据交换。当前端点从与自身连接的设备和其他端点处获取待发送的数据包,数据包包括发送设备mac掩码和目标设备mac掩码,根据第二转发表将数据发送至与目标设备mac掩码匹配的目标设备,第二转发表为将第一转发表的隧道侧转发表中满足第一预设条件的项合并得到。通过将满足第一预设条件的项合并,减少第二转发表项的数量,从而增加第二转发表的容量,使系统能够同时支持更多的网络设备进行数据交换,提高云计算服务系统的工作效率。
95.最后,本技术还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
96.可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(randomaccess memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
97.以上对本技术所提供的一种数据传输方法、装置、介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进
行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
98.还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献