CN113419810A - 数据交互方法、装置、电子设备及计算机存储介质 - Google Patents
数据交互方法、装置、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN113419810A CN113419810A CN202010733815.6A CN202010733815A CN113419810A CN 113419810 A CN113419810 A CN 113419810A CN 202010733815 A CN202010733815 A CN 202010733815A CN 113419810 A CN113419810 A CN 113419810A
- Authority
- CN
- China
- Prior art keywords
- network card
- virtual
- physical
- virtual network
- address
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种数据交互方法、装置、电子设备及计算机存储介质,其中,数据交互方法包括:基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接,其中,所述第一虚拟网卡与第一物理网卡绑定,所述第二虚拟网卡与第二物理网卡绑定;通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址;根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信。通过本发明实施例,即使物理网卡或服务发生了某些变动,也可对前端设备屏蔽物理网卡和/或服务的变动。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种数据交互方法、装置、电子设备及计算机存储介质。
背景技术
RDMA(Remote Direct Memory Access,远程直接内存访问)技术是一种可解决网络传输中客户端与服务端数据处理延迟的技术。它将数据直接从一台设备的内存传输到另一台设备,而无需双方操作系统的介入,尤其适合在大规模并行计算机集群中使用。通过RDMA,实现了不同设备间的高性能数据通信。
与此同时,可对计算机资源进行优化使用的虚拟化技术也越来越被广泛使用,虚拟化容器如Docker便是其中重要的一种。虚拟化容器是一种应用层抽象,其可以将代码和依赖资源打包在一起,共享操作系统内核。在Linux系统中,Docker是Linux容器的一种封装,其通过简单易用的容器使用接口,为用户提供虚拟化容器服务。随着高性能网络越来越普及,虚拟化容器内的应用使用RDMA进行通信的需求越来越强烈。为此提供的一种解决方案是,将上述基于RDMA的设备间通信方式应用于虚拟化容器,通过把虚拟化容器所在的物理机网络共享给虚拟化容器内的应用,实现虚拟化容器间的RDMA通信。
但是,在实际使用中,因各种应用的需求、环境的变更、硬件故障等原因,经常需要进行物理机的动态扩容、缩容和一些服务的迁移。而目前的基于RDMA的设备间通信方式中,一方面,需要根据这些变动而进行网络环境的适应性变动,操作繁琐;另一方面,如果未及时根据这些变动更新相应的网络环境的信息,则有可能导致应用需求侧的应用需求无法实现或者出现异常。而基于该通信方案的虚拟化容器间的RDMA通信方案也存在同样的问题。
发明内容
有鉴于此,本发明实施例提供一种数据交互方案,以至少部分解决上述问题。
根据本发明实施例的第一方面,提供了一种数据交互方法,包括:基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接,其中,所述第一虚拟网卡与第一物理网卡绑定,所述第二虚拟网卡与第二物理网卡绑定;通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址;根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信。
根据本发明实施例的第二方面,提供了一种数据交互装置,包括:第一通信模块,用于基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接,其中,所述第一虚拟网卡与第一物理网卡绑定,所述第二虚拟网卡与第二物理网卡绑定;获取模块,用于通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址;第二通信模块,用于根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信。
根据本发明实施例的第三方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面所述的数据交互方法对应的操作。
根据本发明实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的数据交互方法。
根据本发明实施例提供的数据交互方案,设备的物理网卡绑定有相应的虚拟网卡,且虚拟网卡对应有相应的虚拟地址。在两台设备之间需要通过网卡进行数据通信时,第一物理网卡所在设备方会首先通过两台设备各自的物理网卡所绑定的虚拟网卡,基于两个虚拟网卡对应的虚拟地址,即第一虚拟地址和第二虚拟地址建立通信连接;进而,第一物理网卡所在设备方会获取第二虚拟网卡所绑定的第二物理网卡的物理地址;然后,再基于两个物理网卡的物理地址进行数据通信。由此,即使物理网卡发生了某些变动,如物理网卡所在设备进行了服务迁移,或者,更换了物理网卡,或者物理网卡出现了异常,都不影响前端设备与虚拟网卡之间的交互,也即,可对前端设备屏蔽物理网卡和/或服务的变动。
而若将该方案应用于虚拟化容器,则这些变动不会影响虚拟化容器所在的网络环境,无需对网络环境进行适应性调整;并且,也不会影响对虚拟化容器中的应用的使用和访问。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1A为根据本发明实施例一的一种数据交互方法的步骤流程图;
图1B为图1A所示实施例中的一种场景示例的示意图;
图2A为根据本发明实施例二的一种数据交互方法的步骤流程图;
图2B为一种虚拟化容器的示意图;
图2C为一种基于RDMA协议的虚拟化容器间的数据交互的示意图;
图2D为图2A所示实施例中的一种基于RDMA协议的虚拟化容器间的数据交互的示意图;
图3为根据本发明实施例三的一种数据交互装置的结构框图;
图4为根据本发明实施例四的一种电子设备的结构示意图。
具体实施方式
为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
下面结合本发明实施例附图进一步说明本发明实施例具体实现。
实施例一
参照图1A,示出了根据本发明实施例一的一种数据交互方法的步骤流程图。
本实施例的数据交互方法包括以下步骤:
步骤S102:基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立第一虚拟网卡和第二虚拟网卡之间的通信连接。
其中,第一虚拟网卡与第一物理网卡绑定,第二虚拟网卡与第二物理网卡绑定。
在很多数据交互场景中,会通过物理网卡进行通信连接以进行数据传输和交互。在这些数据交互场景中,基于RDMA协议的数据交互是其中重要一种应用场景,但本发明实施例的方案并不限于该基于RDMA协议的应用场景,其可广泛应用于多种基于物理网卡进行数据交互的场景。一般情况下,不同的物理网卡会对应有不同的物理地址如IP地址等,一旦物理网卡发生变更,如因网卡硬件异常、或服务迁移、或进行了设备扩容或缩容等,则相应的网络信息尤其是涉及物理网卡的物理地址的信息均需要进行更新,否则将导致服务异常或无法使用相应的服务。
为解决上述问题,本发明实施例中,针对每一个物理网卡创建一个虚拟网卡,并将两者绑定,成对使用。并且,虚拟网卡还对应有虚拟地址。由此,对于前端设备如客户端来说,其可以直接基于虚拟地址与虚拟网卡进行数据交互,而不必关心物理网卡或服务的变化。例如,图1B中,第一设备具有第一物理网卡和第一虚拟网卡,第一物理网卡对应有第一物理地址,第一虚拟网卡对应有第一虚拟地址;第二设备具有第二物理网卡和第二虚拟网卡,第二物理网卡对应有第二物理地址,第二虚拟网卡对应有第二虚拟地址。
基于此,本发明实施例中,以两个设备即第一设备和第二设备间的交互为例,对本发明实施例提供的数据交互方案进行说明。在实际应用中,任意进行交互的两个设备均可成为第一设备和第二设备。此外,若无特殊说明,本发明实施例中的“第一”、“第二”等仅用于区分不同的对象,并不表示时序或大小关系等。
具体地,第一设备中设置有第一物理网卡,并且,为该第一物理网卡创建了第一虚拟网卡,配置了对应的第一虚拟地址。类似地,第二设备中设置有第二物理网卡,并且,为该第二物理网卡创建了第二虚拟网卡,配置了对应的第二虚拟地址。本实施例中,以第一设备为执行端进行示例性说明。
其中,基于第一虚拟地址和第二虚拟地址,在第一虚拟网卡和第二虚拟网卡间建立通信连接的具体实现,可由本领域技术人员根据实际情况采用任意适当方式实现,本发明实施例对此不作限制。例如,图1B中,第一设备基于第一虚拟地址向第二设备的第二虚拟地址发送连接请求,以请求建立第一虚拟地址对应的第一虚拟网卡和第二虚拟地址对应的第二虚拟网卡之间的通信连接;第二设备回应该连接请求,成功建立第一设备和第二设备之间的通信连接。
此外,本领域技术人员应当明了的是,第一虚拟地址不同于第二虚拟地址,且第一虚拟地址也不同于第一物理网卡的第一物理地址,第二虚拟地址也不同于第二物理网卡的第二物理地址。
步骤S104:通过所述通信连接,从第二虚拟网卡获取第二物理网卡的第二物理地址。
虽然可以通过虚拟地址,向前端设备屏蔽物理设备的变动及物理设备的具体信息,但在需要进行数据交互时,仍需通过实际的物理网卡进行。因此,本步骤中,在第一虚拟网卡和第二虚拟网卡建立了基于虚拟地址的通信连接后,还需获取实际的物理网卡的物理地址,以实现数据的传输和交互。
又因,创建的虚拟网卡与物理网卡绑定,虚拟网卡可获知物理网卡的具体信息,因此,可以通过虚拟网卡获取物理网卡的实际物理地址,以为后续数据传输和交互作准备。
例如,如图1B中所示,可以通过建立的所述通信连接,向第二虚拟网卡发送相应的物理地址获取请求,以请求与第二虚拟网卡绑定的第二物理网卡的第二物理地址。
步骤S106:根据第一物理网卡的第一物理地址与第二物理网卡的第二物理地址,进行第一物理网卡与第二物理网卡之间的数据通信。
因第一虚拟网卡是可获知第一物理网卡的第一物理地址的,因此,在获取了第二物理网卡的第二物理地址后,即可基于这两个物理地址,建立两个物理网卡之间的数据通信,无需再依赖于虚拟地址,以实现数据的快速传输和交互等。
其中,第一物理网卡与第二物理网卡之间的数据通信可以任意适当的通信,包括但不限于数据传输、数据访问等等,本发明实施例对此不作限制。
例如,如图1B所示。第一物理网卡直接与第二物理网卡通信,实现数据从第一设备到第二设备的传输。
通过本实施例,设备的物理网卡绑定有相应的虚拟网卡,且虚拟网卡对应有相应的虚拟地址。在两台设备之间需要通过网卡进行数据通信时,第一物理网卡所在设备方会首先通过两台设备各自的物理网卡所绑定的虚拟网卡,基于两个虚拟网卡对应的虚拟地址,即第一虚拟地址和第二虚拟地址建立通信连接;进而,第一物理网卡所在设备方会获取第二虚拟网卡所绑定的第二物理网卡的物理地址;然后,再基于两个物理网卡的物理地址进行数据通信。由此,即使物理网卡发生了某些变动,如物理网卡所在设备进行了服务迁移,或者,更换了物理网卡,或者物理网卡出现了异常,都不影响前端设备与虚拟网卡之间的交互,也即,可对前端设备屏蔽物理网卡和/或服务的变动。而若将该方案应用于虚拟化容器,则这些变动不会影响虚拟化容器所在的网络环境,无需对网络环境进行适应性调整;并且,也不会影响对虚拟化容器中的应用的使用和访问。
实施例二
本实施例以基于RDMA协议的虚拟化容器间的数据交互为例,对本发明实施例的数据交互方法进行说明。
首先,以Docker为示例,对虚拟化容器进行示意性说明。Docker容器让开发者可以打包相应的应用(如图2B中的应用A、B、C)以及依赖包(如图2B中的二进制文件/库)到一个可移植的容器中,然后发布到任何安装了Docker引擎的服务器上。Docker基于LXC(LinuXContainer,Linux容器,一种轻量级的虚拟化手段)来实现类似VM(虚拟机)的功能,可以在更有限的硬件资源上提供给用户更多的计算资源。
如图2B所示,Docker内的应用A、B、C直接运行于宿主机的内核(宿主机操作系统),Docker没有自己的内核,与VM不同,Docker也没有进行硬件虚拟,其使用沙箱机制完全虚拟出一个完整的操作。每个Docker会有自己的权限管理,独立的网络与存储栈,及自己的资源管理能力,使同一台宿主机上可以友好的共存多个Docker。
随着高性能网络的发展和无延迟或短延迟的数据交互需求,虚拟化容器内的应用使用RDMA进行通信也正成为一种趋势。如图2C所示,一台设备中可以设置一个或多个(两个及两个以上)虚拟化容器如Docker(图中示意为两个,即第一设备的DockerA和DockerB,第二设备的DockerC和DockerD),该一个或多个Docker共享宿主机的物理网络。如图2C中所示,第一设备中的DockerA和DockerB均使用第一设备的物理网卡,图中示意为RDMA1(物理网卡);第二设备中的DockerC和DockerD均使用第二设备的物理网卡,图中示意为RDMA2(物理网卡)。不同宿主机的Docker之间的数据交互,可以基于RDMA协议,通过各自宿主机的物理网卡进行设备间的互连,实现RDMA高性能数据通路。但如前所述,如果物理网卡发生了变动或者Docker中的服务进行了迁移,则需要进行相应信息的更新,否则将无法满足实际需求。
为此,本实施例提供了一种数据交互的具体实现方案,如图2A所示。
参照图2A,示出了根据本发明实施例二的一种数据交互方法的步骤流程图。
本实施例从第一虚拟网卡所在的第一设备侧,对本发明实施例的数据交互方法进行说明。本实施例的数据交互方法包括以下步骤:
步骤S202:在第一设备中创建虚拟化容器及第一虚拟网卡。
包括:根据用于指示创建虚拟化容器的创建指令,在第一设备中创建虚拟化容器;确定创建的虚拟化容器使用的第一物理网卡;为第一物理网卡创建第一虚拟网卡,并为第一虚拟网卡配置对应的第一虚拟地址;以及,将第一虚拟网卡与第一物理网卡绑定。
虚拟化容器使用灵活,可根据用户需求创建或者销毁,本步骤中的虚拟化容器仍以Docker为例,其可通过Docker镜像(Docker Image)来创建。具体创建方式可参照相关技术实现,在此不再赘述。
如前所述,虚拟化容器共享宿主机的物理网络,通过宿主机的物理网卡与其它设备交互。本实施例中,在第一设备中创建虚拟化容器后,其使用第一设备的物理网卡资源,即第一设备中的第一物理网卡。同正常使用虚拟化容器服务一样,在一台物理机上可以创建任意数量的虚拟化容器。如图2D所示,第一设备中创建了两个虚拟化容器,即DockerA和DockerB,两个虚拟化容器共享第一设备的第一物理网卡。因图2D所示的示例中,DockerA和DockerB基于RDMA协议与第二设备的虚拟化容器之间进行数据交互,因此,也将DockerA和DockerB使用的物理网卡称为RDMA1物理网卡。
在使用的第一物理网卡确定后,可为其创建第一虚拟网卡,其中,创建第一虚拟网卡的具体手段可由本领域技术人员根据实际情况选用任意适当的方式创建,本发明实施例对此不作限制。创建的第一虚拟网卡与第一物理网卡绑定,成对使用,并且配置有第一虚拟地址,该第一虚拟地址不同于第一物理网卡的物理地址。在配置了第一虚拟地址后,虚拟化容器对外使用该第一虚拟地址与其它设备通信。
由此,虚拟化容器对外使用的是和硬件环境无关的虚拟地址,一方面,因不绑定硬件环境,可以使得硬件的变动对外透明,并且,可以使得虚拟化容器中的服务或应用可随意迁移,大大提高了虚拟化容器的可用性。另一方面,这种设置对宿主机的硬件环境也没有修改,不需要宿主机所在网络环境中相应的中间网络设备做任何调整,提升了网络全链路的可靠性。
此外,在一种可行方式中,在创建虚拟化容器时,可以根据用于指示创建虚拟化容器的创建指令,使用HOST模式在第一设备中创建虚拟化容器。
以Docker为例,Docker有五种网络模型,其中,HOST模式可以在创建时,通过-net=host指定。此种模式下,Docker继承了宿主机的IP地址,也即物理网卡对应的IP地址,因此两者具有相同的IP地址。HOST模式因为没有路由开销,数据交互速度更快。
但与传统HOST模式不同的是,本发明实施例在使用HOST模式创建虚拟化容器时,除了前述传统的HOST模式创建的HOST网络外,还为该虚拟化容器动态创建了一个虚拟网卡(即第一虚拟网卡),并配置了虚拟化地址(即第一虚拟化地址)。如图2D中所示,第一设备中的DockerA除具有RDMA1物理网卡外,还具有dummy0虚拟网卡;DockerB除具有RDMA1物理网卡外,还具有dummy1虚拟网卡。物理网卡与其对应的虚拟网卡成对使用,作为通过虚拟化网卡实现RDMA数据交互的硬件支撑。
在具体为第一虚拟网卡配置第一虚拟地址时,一种可行方案中,创建指令中携带有待配置的虚拟地址的信息;则可以将第一虚拟网卡对应的第一虚拟地址配置为待配置的虚拟地址的信息指示的虚拟地址。此种方式中,可以根据用户需求进行虚拟地址的配置,则用户侧设备可直接基于该虚拟地址与第一设备通信,无需进行复杂的设置,既可满足用户需求,又简化了虚拟地址的配置。
步骤S204:对第一设备进行网络环境初始化。
一方面,跨机的虚拟地址之间需要互通,例如,可以通过VXLAN方式实现跨机虚拟地址之间的互通等。
另一方面,第一设备在第一物理网卡和第一虚拟网卡上同时进行端口监听,其中,第一虚拟网卡监听来自用户侧设备的数据;第一物理网卡作为第一虚拟网卡的影子网卡,由第一虚拟网卡进行管理。
例如,在图2D所示的第一设备中,第一设备在RDMA1网卡和dummy0或dummy1网卡上同时开端口监听,dummy0或dummy1网卡监听端口由前端设备传入的数据,RDMA1网卡监听端口随意,作为dummy0或dummy1网卡的shadow网卡,由dummy0或dummy1网卡管理。
步骤S206:基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立第一虚拟网卡和第二虚拟网卡之间的通信连接。
本实施例中,第二设备为已进行过虚拟化容器创建和相应的网卡配置的设备,其具体创建和配置手段可参照前述描述实现,在此不再赘述。
经此配置后,第一物理网卡和第一虚拟网卡均为与第一设备的第一虚拟化容器对应的网卡,且第一虚拟网卡与第一物理网卡绑定;第二物理网卡和第二虚拟网卡均为与第二设备的第二虚拟化容器对应的网卡,且第二虚拟网卡与第二物理网卡绑定。由此,构建了基于虚拟化容器的数据交互环境。进一步地,若虚拟化容器间的交互采用RDMA协议,则可构建出基于虚拟化容器的RDMA网络虚拟化环境。如图2D中,第一设备的DockerA中,dummy0与RDMA1绑定,DockerB中的dummy1与RDMA1绑定,其中,RDMA1为物理网卡,dummy0和dummy1为虚拟网卡;第二设备的DockerC中,dummy0与RDMA2绑定,DockerD中的dummy1与RDMA2绑定,其中,RDMA2为物理网卡,dummy0和dummy1为虚拟网卡。
因大部分时间,基于虚拟地址的通信连接采用的协议与基于物理地址的通信连接采用的协议不同,例如,基于不同物理网卡的物理地址可采用RDMA协议进行数据交互,而在基于虚拟地址的情况下,一种可行方式中,可采用非RDMA协议来实现基于虚拟地址的通信连接,包括但不限于TCP协议、UDP协议等。
以采用TCP协议为例,可以基于第一虚拟地址和第二虚拟地址建立TCP连接,而该连接所使用的端口则可由前端设备根据需求设定,根据该需求确定第一虚拟地址的第一端口,和第二虚拟地址的第二端口。基于此,通过确定的虚拟地址和端口,实现第一虚拟网卡和第二虚拟网卡间的连接。也即,前端设备可以向第一虚拟网卡所在设备发送数据访问请求,该数据访问请求中携带有针对第一虚拟地址的第一数据访问端口的信息,和,针对第二虚拟地址的第二数据访问端口的信息;第一虚拟网卡所在设备接收到该数据访问请求后,从中获取第一数据访问端口的信息,和,第二数据访问端口的信息;基于第一虚拟网卡对应的第一虚拟地址和第一数据访问端口,和第二虚拟网卡对应的第二虚拟地址和第二数据访问端口,建立第一虚拟网卡和第二虚拟网卡之间的通信连接。
例如,在图2D中,第一设备的第一物理地址为192.168.1.2,DockerA的dummy0对应的虚拟地址为1.1.1.1,DockerB的dummy1对应的虚拟地址为1.1.1.2;第二设备的第二物理地址为192.168.1.3,DockerC的dummy0对应的虚拟地址为1.1.1.3,DockerD的dummy1对应的虚拟地址为1.1.1.4。假设需要进行DockerA和DockerC的数据交互,则本步骤中,可以在1.1.1.1和1.1.1.3之间建立TCP连接,端口按前端设备指定的端口连接。
步骤S208:通过所述通信连接,从第二虚拟网卡获取第二物理网卡的第二物理地址。
在一种可行方案中,可以通过所述通信连接,向第二虚拟网卡发送握手报文;接收第二虚拟网卡针对所述握手报文的反馈报文,其中,所述反馈报文中携带有第二物理网卡的第二物理地址。通过握手报文的方式,既可确定通信连接正常,又可获取第二物理地址,实现了一个报文可实现两种功能的效果,并且,提高了获取第二物理地址的效率。
如前所述,物理网卡间交互可采用RDMA协议,而虚拟网卡间可采用非RDMA协议,基于此,可以通过所述通信连接,向第二虚拟网卡发送遵循非RDMA协议的握手报文,并接收第二虚拟网卡针对所述握手报文返回的、遵循所述非RDMA协议的反馈报文。由此,使得虚拟网卡间的交互可以具备较强的协议兼容性。
例如,在图2D中,在1.1.1.1和1.1.1.3之间的TCP连接成功后,1.1.1.1向1.1.1.3发送handshake报文,进行dummy间的网络握手,并查询DockerC的RDMA2物理网卡的物理地址。1.1.1.3在接收到handshake报文后,返回DockerC的RDMA2物理网卡的物理地址及其使用的端口。
步骤S210:根据第一物理网卡的第一物理地址与第二物理网卡的第二物理地址,进行第一物理网卡与第二物理网卡之间的数据通信。
在采用RDMA协议的情况下,可以根据第一物理网卡的第一物理地址与第二物理网卡的第二物理地址,在第一物理网卡与第二物理网卡之间,进行遵循RDMA协议的数据通信。
例如,在图2D中,在1.1.1.3返回DockerC的RDMA2物理网卡的物理地址及其使用的端口后,若1.1.1.1收到用于指示进行数据交互的任意适当请求后,会基于其RDMA1物理网卡的物理地址和端口,以及1.1.1.3的RDMA2物理网卡地址和端口,连接1.1.1.1的RDMA1物理网卡和1.1.1.3的RDMA2物理网卡,建立RDMA物理网卡间的高性能数据通路,开始正常RDMA通信,进行数据交互。
由上可见,前端设备及其应用只需要使用虚拟地址与服务端如第一设备进行交互,物理网卡的变动和/或服务迁移等对前端设备均是无感知的。如果发生物理网卡的变动和/或服务迁移等情况,虚拟地址可以迁移到其他设备,网络初始化时创建新的dummy虚拟网卡和RDMA物理网卡绑定,前端设备重新建立与虚拟地址的连接即可。并且,只需在首次建立连接阶段dummy网卡参与数据传输,正常IO路径全程RDMA方式使用网络,对数据交互性能没有影响。
基于此,针对前端设备向第一设备发送的访问请求,可选地,可以接收向第一虚拟地址发送的访问请求,其中,所述访问请求用于请求对第一虚拟化容器中的应用进行数据访问;通过第一虚拟地址对应的第一虚拟网卡,并经与第一虚拟网卡绑定的第一物理网卡,将所述访问请求发送给第一虚拟化容器中的应用,并获取所述应用根据所述访问请求返回的数据;通过第一物理网卡和第一虚拟网卡,基于第一虚拟地址向所述访问请求的发送方返回所述数据;和/或,根据所述访问请求,通过第一物理网卡将所述返回的数据发送至第二物理网卡。由此,不管是前端设备对第一设备的数据访问,还是指示第一设备与第二设备之间的数据传输,都可在对前端设备无感知的情况下顺利地完成。
通过本实施例,设备的物理网卡绑定有相应的虚拟网卡,且虚拟网卡对应有相应的虚拟地址。在两台设备之间需要通过网卡进行数据通信时,第一物理网卡所在设备方会首先通过两台设备各自的物理网卡所绑定的虚拟网卡,基于两个虚拟网卡对应的虚拟地址,即第一虚拟地址和第二虚拟地址建立通信连接;进而,第一物理网卡所在设备方会获取第二虚拟网卡所绑定的第二物理网卡的物理地址;然后,再基于两个物理网卡的物理地址进行数据通信。由此,即使物理网卡发生了某些变动,如物理网卡所在设备进行了服务迁移,或者,更换了物理网卡,或者物理网卡出现了异常,都不影响前端设备与虚拟网卡之间的交互,也即,可对前端设备屏蔽物理网卡和/或服务的变动。
而若将该方案应用于虚拟化容器,则这些变动不会影响虚拟化容器所在的网络环境,无需对网络环境进行适应性调整;并且,也不会影响对虚拟化容器中的应用的使用和访问。
实施例三
参照图3,示出了根据本发明实施例三的一种数据交互装置的结构框图。
本实施例的数据交互装置包括:第一通信模块302,用于基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接,其中,所述第一虚拟网卡与第一物理网卡绑定,所述第二虚拟网卡与第二物理网卡绑定;获取模块304,用于通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址;第二通信模块306,用于根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信。
可选地,所述第一物理网卡和所述第一虚拟网卡均为与第一设备的第一虚拟化容器对应的网卡;所述第二物理网卡和所述第二虚拟网卡均为与第二设备的第二虚拟化容器对应的网卡。
可选地,本实施例的数据交互装置还包括:创建模块308,用于在所述第一通信模块302基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接之前,根据用于指示创建虚拟化容器的创建指令,在所述第一设备中创建虚拟化容器;确定创建的所述虚拟化容器使用的第一物理网卡;为所述第一物理网卡创建第一虚拟网卡,并为所述第一虚拟网卡配置对应的第一虚拟地址;以及,将所述第一虚拟网卡与所述第一物理网卡绑定。
可选地,创建模块308在根据用于指示创建虚拟化容器的创建指令,在所述第一设备中创建虚拟化容器时,根据用于指示创建虚拟化容器的创建指令,使用HOST模式在所述第一设备中创建虚拟化容器。
可选地,所述创建指令中携带有待配置的虚拟地址的信息;创建模块308在为所述第一虚拟网卡配置对应的第一虚拟地址时,将所述第一虚拟网卡对应的第一虚拟地址配置为所述待配置的虚拟地址的信息指示的虚拟地址。
可选地,获取模块304,用于通过所述通信连接,向所述第二虚拟网卡发送握手报文;接收所述第二虚拟网卡针对所述握手报文的反馈报文,其中,所述反馈报文中携带有所述第二物理网卡的第二物理地址。
可选地,获取模块304,用于通过所述通信连接,向所述第二虚拟网卡发送遵循非RDMA协议的握手报文,并接收所述第二虚拟网卡针对所述握手报文返回的、遵循所述非RDMA协议的反馈报文;第二通信模块306,用于根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,在所述第一物理网卡与所述第二物理网卡之间,进行遵循RDMA协议的数据通信。
可选地,本实施例的数据交互装置还包括:请求处理模块310,用于接收向所述第一虚拟地址发送的访问请求,其中,所述访问请求用于请求对所述第一虚拟化容器中的应用进行数据访问;通过所述第一虚拟地址对应的第一虚拟网卡,并经与所述第一虚拟网卡绑定的第一物理网卡,将所述访问请求发送给所述第一虚拟化容器中的应用,并获取所述应用根据所述访问请求返回的数据;通过所述第一物理网卡和所述第一虚拟网卡,基于所述第一虚拟地址向所述访问请求的发送方返回所述数据;和/或,根据所述访问请求,通过所述第一物理网卡将所述返回的数据发送至所述第二物理网卡。
本实施例的数据交互装置用于实现前述多个方法实施例中相应的数据交互方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本实施例的数据交互装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。
实施例四
参照图4,示出了根据本发明实施例四的一种电子设备的结构示意图,本发明具体实施例并不对电子设备的具体实现做限定。
如图4所示,该电子设备可以包括:处理器(processor)402、通信接口(Communications Interface)404、存储器(memory)406、以及通信总线408。
其中:
处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。
通信接口404,用于与其它电子设备或服务器进行通信。
处理器402,用于执行程序410,具体可以执行上述数据交互方法实施例中的相关步骤。
具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
处理器402可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。智能设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器406,用于存放程序410。存储器406可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序410具体可以用于使得处理器402执行以下操作:基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接,其中,所述第一虚拟网卡与第一物理网卡绑定,所述第二虚拟网卡与第二物理网卡绑定;通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址;根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信。
在一种可选的实施方式中,所述第一物理网卡和所述第一虚拟网卡均为与第一设备的第一虚拟化容器对应的网卡;所述第二物理网卡和所述第二虚拟网卡均为与第二设备的第二虚拟化容器对应的网卡。
在一种可选的实施方式中,程序410还用于使得处理器402在基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接之前,根据用于指示创建虚拟化容器的创建指令,在所述第一设备中创建虚拟化容器;确定创建的所述虚拟化容器使用的第一物理网卡;为所述第一物理网卡创建第一虚拟网卡,并为所述第一虚拟网卡配置对应的第一虚拟地址;以及,将所述第一虚拟网卡与所述第一物理网卡绑定。
在一种可选的实施方式中,程序410还用于使得处理器402在根据用于指示创建虚拟化容器的创建指令,在所述第一设备中创建虚拟化容器时:根据用于指示创建虚拟化容器的创建指令,使用HOST模式在所述第一设备中创建虚拟化容器。
在一种可选的实施方式中,创建指令中携带有待配置的虚拟地址的信息;程序410还用于使得处理器402在为所述第一虚拟网卡配置对应的第一虚拟地址时:将所述第一虚拟网卡对应的第一虚拟地址配置为所述待配置的虚拟地址的信息指示的虚拟地址。
在一种可选的实施方式中,程序410还用于使得处理器402在述通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址时:通过所述通信连接,向所述第二虚拟网卡发送握手报文;接收所述第二虚拟网卡针对所述握手报文的反馈报文,其中,所述反馈报文中携带有所述第二物理网卡的第二物理地址。
在一种可选的实施方式中,程序410还用于使得处理器402在通过所述通信连接,向所述第二虚拟网卡发送握手报文;接收所述第二虚拟网卡针对所述握手报文的反馈报文时:通过所述通信连接,向所述第二虚拟网卡发送遵循非RDMA协议的握手报文,并接收所述第二虚拟网卡针对所述握手报文返回的、遵循所述非RDMA协议的反馈报文;程序410还用于使得处理器402在根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信时:根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,在所述第一物理网卡与所述第二物理网卡之间,进行遵循RDMA协议的数据通信。
在一种可选的实施方式中,程序410还用于使得处理器402接收向所述第一虚拟地址发送的访问请求,其中,所述访问请求用于请求对所述第一虚拟化容器中的应用进行数据访问;通过所述第一虚拟地址对应的第一虚拟网卡,并经与所述第一虚拟网卡绑定的第一物理网卡,将所述访问请求发送给所述第一虚拟化容器中的应用,并获取所述应用根据所述访问请求返回的数据;通过所述第一物理网卡和所述第一虚拟网卡,基于所述第一虚拟地址向所述访问请求的发送方返回所述数据;和/或,根据所述访问请求,通过所述第一物理网卡将所述返回的数据发送至所述第二物理网卡。
程序410中各步骤的具体实现可以参见上述数据交互方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
通过本实施例的电子设备,设备的物理网卡绑定有相应的虚拟网卡,且虚拟网卡对应有相应的虚拟地址。在两台设备之间需要通过网卡进行数据通信时,第一物理网卡所在设备方会首先通过两台设备各自的物理网卡所绑定的虚拟网卡,基于两个虚拟网卡对应的虚拟地址,即第一虚拟地址和第二虚拟地址建立通信连接;进而,第一物理网卡所在设备方会获取第二虚拟网卡所绑定的第二物理网卡的物理地址;然后,再基于两个物理网卡的物理地址进行数据通信。由此,即使物理网卡发生了某些变动,如物理网卡所在设备进行了服务迁移,或者,更换了物理网卡,或者物理网卡出现了异常,都不影响前端设备与虚拟网卡之间的交互,也即,可对前端设备屏蔽物理网卡和/或服务的变动。
而若将该方案应用于虚拟化容器,则这些变动不会影响虚拟化容器所在的网络环境,无需对网络环境进行适应性调整;并且,也不会影响对虚拟化容器中的应用的使用和访问。
需要指出,根据实施的需要,可将本发明实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。
上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的数据交互方法。此外,当通用计算机访问用于实现在此示出的数据交互方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的数据交互方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
以上实施方式仅用于说明本发明实施例,而并非对本发明实施例的限制,有关技术领域的普通技术人员,在不脱离本发明实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明实施例的范畴,本发明实施例的专利保护范围应由权利要求限定。
Claims (12)
1.一种数据交互方法,包括:
基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接,其中,所述第一虚拟网卡与第一物理网卡绑定,所述第二虚拟网卡与第二物理网卡绑定;
通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址;
根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信。
2.根据权利要求1所述的方法,其中,
所述第一物理网卡和所述第一虚拟网卡均为与第一设备的第一虚拟化容器对应的网卡;
所述第二物理网卡和所述第二虚拟网卡均为与第二设备的第二虚拟化容器对应的网卡。
3.根据权利要求2所述的方法,其中,在所述基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接之前,所述方法还包括:
根据用于指示创建虚拟化容器的创建指令,在所述第一设备中创建虚拟化容器;
确定创建的所述虚拟化容器使用的第一物理网卡;
为所述第一物理网卡创建第一虚拟网卡,并为所述第一虚拟网卡配置对应的第一虚拟地址;以及,将所述第一虚拟网卡与所述第一物理网卡绑定。
4.根据权利要求3所述的方法,其中,所述根据用于指示创建虚拟化容器的创建指令,在所述第一设备中创建虚拟化容器,包括:
根据用于指示创建虚拟化容器的创建指令,使用HOST模式在所述第一设备中创建虚拟化容器。
5.根据权利要求3所述的方法,其中,所述创建指令中携带有待配置的虚拟地址的信息;
所述为所述第一虚拟网卡配置对应的第一虚拟地址,包括:
将所述第一虚拟网卡对应的第一虚拟地址配置为所述待配置的虚拟地址的信息指示的虚拟地址。
6.根据权利要求1-5任一项所述的方法,其中,所述通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址,包括:
通过所述通信连接,向所述第二虚拟网卡发送握手报文;
接收所述第二虚拟网卡针对所述握手报文的反馈报文,其中,所述反馈报文中携带有所述第二物理网卡的第二物理地址。
7.根据权利要求6所述的方法,其中,
所述通过所述通信连接,向所述第二虚拟网卡发送握手报文;接收所述第二虚拟网卡针对所述握手报文的反馈报文,包括:通过所述通信连接,向所述第二虚拟网卡发送遵循非RDMA协议的握手报文,并接收所述第二虚拟网卡针对所述握手报文返回的、遵循所述非RDMA协议的反馈报文;
所述根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信,包括:根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,在所述第一物理网卡与所述第二物理网卡之间,进行遵循RDMA协议的数据通信。
8.根据权利要求2-5任一项所述的方法,其中,所述方法还包括:
接收向所述第一虚拟地址发送的访问请求,其中,所述访问请求用于请求对所述第一虚拟化容器中的应用进行数据访问;
通过所述第一虚拟地址对应的第一虚拟网卡,并经与所述第一虚拟网卡绑定的第一物理网卡,将所述访问请求发送给所述第一虚拟化容器中的应用,并获取所述应用根据所述访问请求返回的数据;
通过所述第一物理网卡和所述第一虚拟网卡,基于所述第一虚拟地址向所述访问请求的发送方返回所述数据;和/或,根据所述访问请求,通过所述第一物理网卡将所述返回的数据发送至所述第二物理网卡。
9.根据权利要求1-5任一项所述的方法,其中,所述基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接,包括:
接收数据访问请求,其中,所述数据访问请求中携带有针对第一虚拟地址的第一数据访问端口的信息,和,针对第二虚拟地址的第二数据访问端口的信息;
从所述数据访问请求中获取所述第一数据访问端口的信息,和,所述第二数据访问端口的信息;
基于第一虚拟网卡对应的第一虚拟地址和第一数据访问端口,和第二虚拟网卡对应的第二虚拟地址和第二数据访问端口,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接。
10.一种数据交互装置,包括:
第一通信模块,用于基于第一虚拟网卡对应的第一虚拟地址,和第二虚拟网卡对应的第二虚拟地址,建立所述第一虚拟网卡和所述第二虚拟网卡之间的通信连接,其中,所述第一虚拟网卡与第一物理网卡绑定,所述第二虚拟网卡与第二物理网卡绑定;
获取模块,用于通过所述通信连接,从所述第二虚拟网卡获取所述第二物理网卡的第二物理地址;
第二通信模块,用于根据所述第一物理网卡的第一物理地址与所述第二物理网卡的第二物理地址,进行所述第一物理网卡与所述第二物理网卡之间的数据通信。
11.一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-9中任一项所述的数据交互方法对应的操作。
12.一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-9中任一所述的数据交互方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010733815.6A CN113419810A (zh) | 2020-07-27 | 2020-07-27 | 数据交互方法、装置、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010733815.6A CN113419810A (zh) | 2020-07-27 | 2020-07-27 | 数据交互方法、装置、电子设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113419810A true CN113419810A (zh) | 2021-09-21 |
Family
ID=77711541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010733815.6A Pending CN113419810A (zh) | 2020-07-27 | 2020-07-27 | 数据交互方法、装置、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113419810A (zh) |
-
2020
- 2020-07-27 CN CN202010733815.6A patent/CN113419810A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11934341B2 (en) | Virtual RDMA switching for containerized | |
CN108449282B (zh) | 一种负载均衡方法及其装置 | |
US10698717B2 (en) | Accelerator virtualization method and apparatus, and centralized resource manager | |
CN109561171B (zh) | 虚拟私有云服务的配置方法和装置 | |
US11960430B2 (en) | Remote mapping method, apparatus and device for computing resources, and storage medium | |
US8830870B2 (en) | Network adapter hardware state migration discovery in a stateful environment | |
WO2023005773A1 (zh) | 基于远程直接数据存储的报文转发方法、装置、网卡及设备 | |
EP3022888B1 (en) | Network element and method of running applications in a cloud computing system | |
CN101924693A (zh) | 用于在虚拟机间迁移进程的方法和系统 | |
CN112769794B (zh) | 一种数据转换方法及装置 | |
CN113301004B (zh) | 数据处理方法、装置、通信方法和单网卡虚拟机 | |
Mishra et al. | REoN: A protocol for reliable software-defined FPGA partial reconfiguration over network | |
US11218559B2 (en) | Asymmetric networking proxy | |
US11561916B2 (en) | Processing task deployment in adapter devices and accelerators | |
CN117135189A (zh) | 服务器的访问方法及装置、存储介质、电子设备 | |
CN113419810A (zh) | 数据交互方法、装置、电子设备及计算机存储介质 | |
US8499023B1 (en) | Servlet-based grid computing environment using grid engines and switches to manage resources | |
CN115225693A (zh) | 一种容器间的通信方法及相关产品 | |
US10824476B1 (en) | Multi-homed computing instance processes | |
CN111416852A (zh) | 在多个负载均衡器之间进行会话同步的方法和负载均衡器 | |
KR101577034B1 (ko) | 소프트웨어적인 네트워크 부가기능 추가가 용이한 멀티코어 기반의 toe 시스템 및 그 제어 방법 | |
KR20200081799A (ko) | 가상 라우터를 이용한 다중 가상 네트워크 통신 시스템 및 방법 | |
Teivo | Evaluation of low latency communication methods in a Kubernetes cluster | |
CN118445030B (zh) | OpenCL计算卸载方法、装置及存储介质 | |
CN111107663B (zh) | 数据的传输方法及装置、存储介质、电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40058757 Country of ref document: HK |