CN111193653A - 数据传输方法、装置、设备及存储介质 - Google Patents

数据传输方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111193653A
CN111193653A CN201911409353.6A CN201911409353A CN111193653A CN 111193653 A CN111193653 A CN 111193653A CN 201911409353 A CN201911409353 A CN 201911409353A CN 111193653 A CN111193653 A CN 111193653A
Authority
CN
China
Prior art keywords
address
data packet
tunnel
network card
packet
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.)
Granted
Application number
CN201911409353.6A
Other languages
English (en)
Other versions
CN111193653B (zh
Inventor
吴皓睿
裴超
王亮
王健
冯瑞青
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201911409353.6A priority Critical patent/CN111193653B/zh
Publication of CN111193653A publication Critical patent/CN111193653A/zh
Priority to PCT/CN2020/119021 priority patent/WO2021135471A1/zh
Priority to EP20910111.2A priority patent/EP4009593A4/en
Application granted granted Critical
Publication of CN111193653B publication Critical patent/CN111193653B/zh
Priority to US17/521,770 priority patent/US20220070095A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • H04L47/115Identifying congestion using a dedicated packet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (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网卡的系统采用RDMA技术,即可将数据直接传入远程系统的存储区,而不对远程系统的操作系统造成任何影响,无需远程系统的中央处理器参与数据传输过程,减少了资源消耗,进而提升了操作系统的性能,具有高带宽、低时延及低处理器占用率的特点。
但是,在公有云的环境下,第三方服务商在公有网络中提供服务,多个租户即可访问该公有网络,享受第三方服务商提供的服务。但是由于公有网络是共享的,如果不能做到租户隔离,则租户的数据就会被其他租户嗅探到,无法保证数据安全。因此,亟需提供一种方法,能够在公有云中实现RDMA技术时,将公有云中每个租户的数据隔离出来,以保证数据安全。
发明内容
本申请实施例提供了一种数据传输方法、装置、设备及存储介质,可以解决相关技术在公有云中实现RDMA技术时多个租户无法隔离的问题。所述技术方案如下:
一方面,提供了一种数据传输方法,应用于发送方网卡,所述方法包括:
获取原始数据包、第一地址和租户标识,其中所述第一地址包括接收所述原始数据包的接收方网卡的地址,所述租户标识用于指示接收方服务器上对应的租户;
根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到隧道数据包;
将所述隧道数据包发送给所述第一地址对应的接收方网卡。
另一方面,提供了另一种数据传输方法,应用于发送方服务器,所述发送方服务器配置有如上述方法中的发送方网卡,所述方法包括:
通过发送方虚拟机获取原始数据包时,建立与接收方服务器之间的远程直接内存访问RDMA连接,所述发送方虚拟机运行在所述发送方服务器中;
在建立所述RDMA连接的过程中生成发送方流表,将所述发送方流表下发给所述发送方网卡,并将所述原始数据包下发给所述发送方网卡。
可选地,所述原始数据包包括第一差分服务代码点DSCP值或者第二DSCP值,所述第一DSCP值用于表示所述原始数据包为RDMA数据包,所述第二DSCP值用于表示所述原始数据包为传输控制协议/互联网协议TCP/IP数据包;
所述通过发送方虚拟机获取原始数据包时,建立与接收方服务器之间的远程直接内存访问RDMA连接,包括:
通过所述发送方虚拟机获取原始数据包,且所述原始数据包包括所述第一DSCP值时,建立与所述接收方服务器之间的RDMA连接。
另一方面,提供了另一种数据传输方法,应用于接收方网卡,所述方法包括:
接收发送方网卡发送的隧道数据包,所述隧道数据包由发送方网卡根据第一地址和租户标识对原始数据包进行隧道封装后得到,所述第一地址包括所述接收方网卡的地址,所述租户标识用于指示接收方服务器上对应的租户;
对所述隧道数据包进行解封装,得到所述原始数据包和所述租户标识;
将所述原始数据包和所述租户标识传输至所述接收方服务器。
另一方面,提供了另一种数据传输方法,应用于接收方服务器,所述接收方服务器配置有如上述方法中的接收方网卡,所述方法包括:
通过接收方虚拟机建立与发送方服务器的远程直接内存访问RDMA连接,所述接收方虚拟机运行在所述接收方服务器中;
在建立所述RDMA的过程中生成接收方流表,将所述接收方流表下发给所述接收方网卡。
可选地,所述方法还包括:
当获取到所述接收方网卡传输的原始数据包和租户标识时,将所述原始数据包分发给所述租户标识对应的租户。
另一方面,提供了一种数据传输装置,应用于发送方网卡,所述装置包括:
获取模块,用于获取原始数据包、第一地址和租户标识,其中所述第一地址包括接收所述原始数据包的接收方网卡的地址,所述租户标识用于指示所述接收方服务器上对应的租户;
封装模块,用于根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到隧道数据包;
发送模块,用于将所述隧道数据包发送给所述第一地址对应的接收方网卡。
可选地,所述原始数据包携带第二地址,所述第二地址包括所述接收方虚拟机的地址,所述接收方虚拟机的地址包括第二媒体访问控制MAC地址和第二网际协议IP地址,所述第一地址包括所述接收方网卡的第一MAC地址和第一IP地址,所述封装模块,包括:
删除单元,用于将所述原始数据包中的所述第二MAC地址删掉;
添加单元,用于添加所述第一MAC地址、所述第一IP地址和所述租户标识,得到所述隧道数据包。
可选地,所述原始数据包包括包头和包体,所述原始数据包的包头包括第二MAC地址字段和第二IP地址字段,所述第二MAC地址字段包括所述第二MAC地址,所述第二IP地址字段包括所述第二IP地址、显式拥塞通知ECN值和差分服务代码点DSCP值,所述原始数据包的包体包括传输数据;
所述隧道数据包包括包头和包体,所述隧道数据包的包头包括第一MAC地址字段、第一IP地址字段和隧道协议字段,所述第一MAC地址字段包括所述第一MAC地址,所述第一IP地址字段包括所述第一IP地址,所述隧道协议字段包括所述租户标识,所述隧道数据包的包体包括所述第二IP地址字段和所述传输数据;所述装置还包括:
写入模块,用于将所述第二IP数据字段中的ECN值和所述第二IP数据字段中的DSCP值写入所述第一IP地址字段中。
可选地,所述发送方网卡为支持远程直接内存访问协议RoCE的网卡,所述获取模块,包括:
流表获取单元,用于获取发送方服务器下发的发送方流表,所述发送方流表包括所述第一地址和所述租户标识;
所述发送方服务器用于接收到发送方虚拟机获取的原始数据包时,建立与所述接收方服务器之间的远程直接内存访问RDMA连接,在建立所述RDMA连接的过程中生成所述发送方流表,将所述发送方流表下发给所述发送方网卡,并将所述原始数据包下发给所述发送方网卡。
可选地,所述封装模块,包括:
封装单元,用于确定所述原始数据包与所述发送方流表匹配成功时,根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到所述隧道数据包。
可选地,所述发送方流表还包括匹配项,所述匹配项包括第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号,所述第三IP地址为发送方虚拟机的IP地址,所述第二IP地址为接收方虚拟机的IP地址,所述封装单元,还用于当所述原始数据包对应的第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号,与所述匹配项中的第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号相同时,确定所述原始数据包与所述发送方流表匹配成功。
另一方面,提供了另一种数据传输装置,应用于发送方服务器,所述发送方服务器配置有如上述方法中的发送方网卡,所述装置包括:
连接建立模块,用于通过发送方虚拟机获取原始数据包时,建立与接收方服务器之间的远程直接内存访问RDMA连接,所述发送方虚拟机运行在所述发送方服务器中;
流表下发模块,用于在建立所述RDMA连接的过程中生成发送方流表,将所述发送方流表下发给所述发送方网卡,并将所述原始数据包下发给所述发送方网卡。
可选地,所述原始数据包包括第一差分服务代码点DSCP值或者第二DSCP值,所述第一DSCP值用于表示所述原始数据包为RDMA数据包,所述第二DSCP值用于表示所述原始数据包为传输控制协议/互联网协议TCP/IP数据包;
所述连接建立模块,包括:
连接建立单元,用于通过所述发送方虚拟机获取原始数据包,且所述原始数据包包括所述第一DSCP值时,建立与所述接收方服务器之间的RDMA连接。
另一方面,提供了另一种数据传输装置,应用于接收方网卡,所述装置包括:
接收模块,用于接收发送方网卡发送的隧道数据包,所述隧道数据包由发送方网卡根据第一地址和租户标识对原始数据包进行隧道封装后得到,所述第一地址包括接收所述原始数据包的接收方网卡的地址,所述租户标识用于指示所述接收方服务器上对应的租户;
解封装模块,用于对所述隧道数据包进行解封装,得到所述原始数据包和所述租户标识;
传输模块,用于将所述原始数据包和所述租户标识传输至所述接收方服务器。
可选地,所述隧道数据包包括所述第一地址和所述租户标识,所述接收方网卡的地址包括第一媒体访问控制MAC地址和第一网际协议IP地址,所述解封装模块,包括:
标识获取单元,用于获取所述隧道数据包中的租户标识;
删除单元,用于将所述隧道数据包中的第一MAC地址和第一IP地址删掉,得到所述原始数据包。
可选地,所述隧道数据包包括包头和包体,所述隧道数据包的包头包括第一MAC地址字段、第一IP地址字段和隧道协议字段,所述第一MAC地址字段包括所述第一MAC地址,所述第一IP地址字段包括所述第一IP地址、显式拥塞通知ECN值和差分服务代码点DSCP值,所述隧道协议字段包括所述租户标识,所述隧道数据包的包体包括第二IP地址字段和传输数据,所述第二IP地址字段包括第二IP地址,所述第二IP地址为接收方虚拟机的IP地址;
所述原始数据包包括包头和包体,所述原始数据包的包头包括所述第二IP地址字段,所述原始数据包的包体包括所述传输数据;所述装置还包括:
写入模块,用于将所述第一IP地址字段中的ECN值和所述第一IP地址字段中的DSCP值写入所述第二IP地址字段中;
添加模块,用于在所述原始数据包的包头中添加第二MAC地址字段,所述第二MAC地址字段包括第二MAC地址,所述第二MAC地址为所述接收方虚拟机的MAC地址。
可选地,所述接收方网卡为支持远程直接内存访问协议RoCE的网卡,所述解封装模块,包括:
流表获取单元,用于获取所述接收方服务器下发的接收方流表,所述接收方服务器用于建立与发送方服务器之间的远程直接内存访问RDMA连接,在建立所述RDMA连接的过程中生成所述接收方流表,将所述接收方流表下发给所述接收方网卡;
解封装单元,用于确定所述隧道数据包与所述接收方流表匹配成功时,对所述原始数据包进行解封装,得到所述原始数据包和所述租户标识。
可选地,所述接收方流表包括匹配项,所述匹配项包括第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,所述第四IP地址为发送方网卡的IP地址,所述第一IP地址为接收方网卡的IP地址,所述隧道数据包中包括第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,所述解封装单元,还用于当所述隧道数据包中的第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,与所述匹配项中的第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号相同时,确定所述隧道数据包与所述接收方流表匹配成功。
另一方面,提供了另一种数据传输装置,应用于接收方服务器,所述接收方服务器配置有如上述方法中的接收方网卡,所述装置包括:
连接建立模块,用于通过接收方虚拟机建立与发送方服务器的远程直接内存访问RDMA连接,所述接收方虚拟机运行在所述接收方服务器中;
流表下发模块,用于在建立所述RDMA的过程中生成接收方流表,将所述接收方流表下发给所述接收方网卡。
可选地,所述装置还包括:
数据包分发模块,用于当获取到所述接收方网卡传输的原始数据包和租户标识时,将所述原始数据包分发给所述租户标识对应的租户。
另一方面,提供了一种网卡,所述网卡用于实现如所述数据传输方法中所执行的操作。
另一方面,提供了一种服务器,所述服务器包括处理器、存储器和网卡,所述存储器中存储有至少一条程序代码,所述至少一条程序代码由所述处理器加载并执行,以实现如所述数据传输方法中所执行的操作。
再一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如所述数据传输方法中所执行的操作。
本申请实施例提供的方法、装置、设备及存储介质,获取原始数据包、第一地址和租户标识,根据第一地址和租户标识,对原始数据包进行隧道封装,得到隧道数据包,将隧道数据包发送给第一地址对应的接收方网卡;接收方网卡接收到隧道数据包时,对隧道数据包进行解封装,得到原始数据包和租户标识;将原始数据包和租户标识传输至接收方服务器;接收方服务器用于将原始数据包分发给租户标识对应的租户。因此,通过进行隧道封装,根据租户标识对租户进行区分,可以将公有云中每个租户的数据隔离出来,保证了数据的安全。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图。
图2是本申请实施例提供的一种数据传输方法的流程图。
图3是本申请实施例提供的一种流表的结构示意图。
图4是本申请实施例提供的一种数据包的结构示意图。
图5是本申请实施例提供的一种流表匹配的示意图。
图6是本申请实施例提供的一种数据传输方法的系统结构图。
图7是本申请实施例提供的一种流表查询的示意图。
图8是本申请实施例提供的另一种数据包的结构示意图。
图9是本申请实施例提供的另一种数据包的结构示意图。
图10是相关技术提供的一种配置双网卡的结构示意图。
图11是本申请实施例提供的一种数据传输装置的结构示意图。
图12是本申请实施例提供的另一种数据传输装置的结构示意图。
图13是本申请实施例提供的另一种数据传输装置的结构示意图。
图14是本申请实施例提供的另一种数据传输装置的结构示意图。
图15是本申请实施例提供的另一种数据传输装置的结构示意图。
图16是本申请实施例提供的另一种数据传输装置的结构示意图。
图17是本申请实施例提供的另一种数据传输装置的结构示意图。
图18是本申请实施例提供的另一种数据传输装置的结构示意图。
图19是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了便于理解本申请实施例的技术过程,下面对本申请实施例所涉及的一些名词进行解释:
VPC(Virtual Private Cloud,虚拟私有云)是公有云上的私有网络,是一个公共云计算资源的动态配置池,基于隧道协议来实现,如GRE(Generic RoutingEncapsulation,通用路由封装协议)或者VxLAN(Virtual Extensible Local AreaNetwork,虚拟扩展局域网)等实现多租户隔离的云网络,可以为云服务器构建隔离的、用户自主配置和管理的虚拟网络环境,提升用户云中资源的安全性,简化用户的网络部署。
RDMA(Remote Direct Memory Access,远程直接内存访问)是一种直接进行远程内存存取的技术。任一系统采用RDMA技术,即可将数据直接传入远程系统的存储区,而不对远程系统的操作系统造成任何影响,无需远程系统的中央处理器参与数据传输过程,减少了资源消耗,进而提升了操作系统的性能,具有高带宽、低时延及低处理器占用率的特点。
隧道协议:用于实现隧道技术,隧道技术的实质是利用一种网络层的协议来传输另一种网络层的协议,其基本功能是数据包封装与解封装。封装是构建隧道的基本手段,从隧道的两端来看,封装就是用来创建、维持和撤销一个隧道,来实现信息的隐蔽和抽象。
Overlay网络(覆盖网络)建立在Underlay网络(单层网络)之上,与Underlay网络是一对相对概念。比如二层网络是三层网络的Underlay网络,三层网络是二层网络的Overlay网络。在公有云网络中,Underlay网络主要是指GRE、VxLAN等隧道协议的外层网络,Overlay网络是指GRE、Vxlan等隧道协议的内层网络。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。举例来说,在不脱离本申请的范围的情况下,可以将第一地址称为第二地址,且类似地,可将第二地址称为第一地址。
图1是本申请实施例提供的一种实施环境的示意图,参见图1,该实施环境包括:发送方服务器101和接收方服务器102,发送方服务器101配置有发送方网卡103,接收方服务器102配置有接收方网卡104。发送方服务器101与接收方服务器102建立RDMA连接,并通过发送方网卡103和接收方网卡104进行数据传输。
发送方服务器101和接收方服务器102均接入公有云网络中,运行有与公有云网络连接的虚拟机。发送方设备通过发送方虚拟机获取原始数据包,将原始数据包下发给发送方网卡103,由发送方网卡103进行隧道封装。其中,封装所需的租户标识、IP地址等信息由网管系统下发到发送方网卡103。发送方网卡103通过RDMA连接,将该封装后的数据包发送给接收方网卡104,由接收方网卡104对该数据包进行解封装得到原始数据包和租户标识。接收方服务器102通过接收方网卡104获取到原始数据包和租户标识时,将原始数据包分发给该租户标识对应的租户。因此基于隧道协议实现了公有云上的多租户隔离,保证了数据包的安全性。
图2是本申请实施例提供的一种数据传输方法的流程图。本申请实施例的交互主体为发送方服务器、发送方网卡、接收方服务器和接收方网卡,参见图2,该方法包括:
201、发送方服务器通过发送方虚拟机获取原始数据包时,建立与接收方服务器之间的RDMA连接,在建立RDMA连接过程中生成发送方流表,将发送方流表下发给发送方网卡,并将该原始数据包下发给发送方网卡。
本申请实施例中,一种应用场景是,发送方服务器中运行一个或多个虚拟机,每个租户拥有至少一个虚拟机,接收方服务器中也运行多个虚拟机,每个租户拥有至少一个虚拟机,当租户拥有多个虚拟机时,该多个虚拟机之间需要构成一个虚拟网络。
其中,虚拟机中运行有RDMA应用,如社交应用、邮箱应用等。不同服务器的虚拟机上的RDMA应用之间需要进行数据交互,当发送方服务器的虚拟机上的RDMA应用,在运行过程中产生数据时,调用RDMA库,根据该数据生成原始数据包,该原始数据包为RDMA数据包,并由发送方服务器通过发送方网卡将该原始数据包发送给接收方服务器的虚拟机中的RDMA应用。
因此,当发送方服务器通过发送方虚拟机接收到RDMA应用的原始数据包后,确定要与接收方服务器进行数据传输。则发送方服务器与接收方服务器建立RDMA连接,在建立RDMA连接的过程中,获取源IP地址、目的IP地址、网卡物理端口号等交互参数,根据交互参数生成发送方流表,下发给发送方服务器的发送方网卡。
其中,流表是对数据包进行处理的一种规则,也称为转发规则,该规则可以为预先设定的规则。流表中包括至少一个流表项(Flow Entry),是流表的最小单位,每条流表项确定网络传输中的一条数据流。该流表项中至少包括:匹配项、优先级、计数器、操作项和超时时间。匹配项可用于与数据包进行匹配,可以包括源MAC地址、目的MAC地址、源IP地址、目的IP地址等;优先级可用于表示流表之间的优先级关系,按照优先级高低的顺序依次对流表进行匹配;计数器可用于统计数据包的个数;指令可用于按照匹配项与数据包的匹配的结果,对数据包进行转发或丢弃,超时时间可用于表示该流表的最长有效时间或最大空闲时间,根据超时时间对流表进行删除。
本申请实施例中,发送方流表用于指示发送方网卡对原始数据包进行处理。该发送方流表包括匹配项和操作项,匹配项用于确定数据包的类型,操作项用于确定对数据包所执行的操作。如图3所示,发送方流表31中可以包括匹配项311、优先级312、计数器313、操作项314和超时时间315等,该发送方流表的匹配项中可以包括第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号,其中第三IP地址为发送方虚拟机的IP地址,第二IP地址为接收方虚拟机的IP地址。该发送方流表的操作项中可以包括第一地址和租户标识,其中第一地址包括接收原始数据包的接收方网卡的地址,租户标识用于指示接收方服务器上对应的租户,其中,该租户标识为32位的数字。
其中,发送方服务器的发送方网卡与传统网卡不同,该发送方网卡为支持RoCE(RDMA over Converged Ethernet,远程直接内存访问协议)的网卡,可提供数据封装等功能。RoCE协议是一种允许通过以太网使用远程直接内存访问技术的网络协议,例如,该RoCE协议可以为RoCE v1协议或者RoCE v2协议等。
当发送方服务器通过发送方虚拟机获取原始数据包,且原始数据包中包括第一DSCP(Differentiated Services Code Point,差分服务代码点)值时,确定该原始数据包为RDMA数据包,因此建立RDMA连接来进行数据传输。其中,发送方服务器和接收方服务器建立RDMA连接,需要通过建立TCP/IP(Transmission Control Protocol/InternetProtocol,传输控制协议/互联网协议)连接,来获得交互信息。发送方服务器和接收方服务器获取建立TCP/IP连接过程中产生的TCP/IP数据包,根据TCP/IP数据包携带的交互信息,生成发送方流表和接收方流表。
其中,原始数据包包括第一DSCP(Differentiated Services Code Point,差分服务代码点)值或者第二DSCP值,第一DSCP值用于表示该原始数据包为RDMA数据包,第二DSCP值用于表示该原始数据包为TCP/IP数据包。因此,通过给原始数据包分配不同的DSCP值,可以区分该原始数据包是通过RDMA连接传输的RDMA数据包,还是传统的TCP/IP数据包,传输网络可以根据第一DSCP值和第二DSCP值区分不同的数据包,实现隔离与流控,解决了RDMA网络和传统TCP/IP网络的隔离问题。
202、接收方服务器建立与发送方服务器之间的RDMA连接,在建立RDMA连接过程中生成接收方流表,将接收方流表下发给接收方网卡。
其中,接收方流表用于指示接收方网卡对隧道数据包进行处理。该接收方流表与上述步骤201中的发送方流表类似,在此不再赘述。
需要说明的是,本申请实施例中仅以发送方设备向接收方设备主动发起RDMA连接请求为例进行说明,而在另一实施例中,还可以是接收方设备向发送方设备主动发起RDMA连接请求,由发送方设备接收接收方设备的RDMA连接请求。
并且,步骤201中的发送方服务器建立与接收方服务器之间的RDMA连接,步骤202中的接收方服务器建立与发送方服务器之间的RDMA连接,为同一过程。因此,在建立RDMA连接的过程中,可同时下发发送方流表和接收方流表。
203、发送方网卡接收发送方服务器下发的原始数据包和发送方流表,确定原始数据包与发送方流表匹配成功时,将原始数据包中的第二MAC地址删掉,添加第一MAC地址、第一IP地址和租户标识,得到隧道数据包。
原始数据包携带第二地址,第二地址包括接收方虚拟机的地址,可用于表示租户的虚拟机。接收方虚拟机的地址包括第二MAC(Media Access Control,媒体访问控制)地址和第二IP(Internet Protocol,网际协议)地址,第二MAC地址为接收方虚拟机的MAC地址,第二IP地址为包括接收方虚拟机的IP地址。虚拟机网络可以根据该第二地址将原始数据包发送给该第二地址对应的虚拟机。
发送方流表中包括第一地址和租户标识。第一地址包括接收方网卡的地址,第一地址包括第一MAC地址和第一IP地址,第一MAC地址可以包括接收方网卡的MAC地址和发送方网卡的MAC地址,第一IP地址可以包括接收方网卡的IP地址和发送方网卡的IP地址。当发送方服务器将原始数据包下发给发送方网卡,发送方网卡接收到该原始数据包时,进行流表查询,当确定该原始数据包与发送方流表匹配成功时,从发送方流表中获取第一MAC地址和第一IP地址,以及租户标识。
则发送方网卡将原始数据包进行隧道封装,得到隧道数据包,包括:发送方网卡将原始数据包中的第二MAC地址删掉,添加第一MAC地址、第一IP地址和租户标识,得到隧道数据包。
相关技术中,根据Per Flow(一对IP地址和一对端口号)来对流表进行分类,其中流表中的字段包括源IP地址、目的IP地址、目的端口号和源端口号。服务器按照Per Flow的方式生成流表,将流表下发到网卡,网卡根据Per Flow的方式,按照源IP地址和目的IP地址查询目的端口号和源端口号对应的流表。而本申请实施例中,根据Per Destination(一对IP地址和目的端口号)对流表进行分类,其中流表中的字段包括源IP地址、目的IP地址和目的端口号。服务器按照Per Destination的方式生成流表,将流表下发到网卡,网卡根据PerDestination的方式,按照源IP地址和目的IP地址查询目的端口号对应的流表。因此,通过本申请实施例提供的方法,仅根据目的端口号进行分类,不考虑源端口号,减少了分类的类别,对流表的查询速度更快,时延更低,节省发送方网卡和接收方网卡的资源。
原始数据包中还可以包括第三IP地址、第二IP地址、三层协议号和应用层端口号,其中第三IP地址为发送方虚拟机的IP地址,第二IP地址为接收方虚拟机的IP地址,发送方网卡接收到原始数据包时可获取该原始数据包对应的网卡物理端口号,则通过原始数据包对应的第三IP地址、第二IP地址、三层协议号、应用层端口号和网卡物理端口号即可确定该原始数据包的传输流向。发送方流表包括匹配项,匹配项中包括第三IP地址、第二IP地址、三层协议号、应用层端口号和网卡物理端口号,则通过发送方流表中的第三IP地址、第二IP地址、三层协议号、应用层端口号和网卡物理端口号即可确定该发送方流表对应的数据包的传输流向。因此,当原始数据包对应的参数与发送方流表中的参数相同时,确定原始数据包与发送方流表匹配成功。
发送方虚拟机的原始数据包通过发送方服务器到达发送方网卡,发送方网卡根据发送方流表进行隧道数据包的封装,包括:将原始数据包中的第二MAC地址,添加第一MAC地址、第一IP地址和租户标识,得到隧道数据包。
原始数据包包括包头和包体,原始数据包的包头包括第二MAC地址字段和第二IP地址字段,其中第二MAC地址字段包括第二MAC地址,第二IP地址字段包括第二IP地址、ECN(Explicit Congestion Notification,显式拥塞通知)值和DSCP值,原始数据包的包体包括传输数据。
隧道数据包包括包头和包体,隧道数据包的包头包括第一MAC地址字段、第一IP地址字段和隧道协议字段,第一MAC地址字段包括第一MAC地址,第一IP地址字段包括第一IP地址,隧道协议字段包括租户标识,隧道数据包的包体包括第二IP地址字段和传输数据。
该方法还包括:将原始数据包的第二IP数据字段中的ECN值和DSCP值,写入隧道数据包的第一IP地址字段中。
其中ECN值用于进行拥塞控制,也即是当网络中的设备检测到潜在拥塞时,将每个数据包写入带有拥塞标识的ECN值,或者随机选择的多个数据包写入带有拥塞标识的ECN值。因此,该原始数据包中可能包括带有拥塞标识的ECN值。其中DSCP值用于区分该原始数据包为RDMA数据包,还是传统的TCP/IP数据包。
如图4所示,原始数据包中包括包头的第二MAC地址字段411、第二IP地址字段412、TCP/UDP协议字段413,以及包体的传输数据字段414。其中,第二MAC地址字段411中包括第二MAC地址,第二IP地址字段412中包括第二IP地址、DSCP值、ECN值,TCP/UDP协议字段413中包括TCP/UDP协议,传输数据字段414中包括待传输的传输数据。将原始数据包的第二MAC地址字段411删掉,添加第一MAC地址字段、第一IP地址字段和GRE协议字段,并将第二IP地址字段412中的DSCP值、ECN值拷贝到第一IP地址字段,得到隧道数据包。如图4所示,隧道数据包中包括包头的第一MAC地址字段421、第一IP地址字段422、GRE协议字段423,以及包体的第二IP地址字段424、TCP/UDP协议字段425和传输数据字段426。其中,第一MAC地址字段421中包括第一MAC地址,第一IP地址字段422中包括第一IP地址、DSCP值、ECN值,GRE协议字段423中包括GRE协议,且GRE协议中携带租户标识。
通过执行步骤203,即可实现根据第一地址和租户标识,对原始数据包进行隧道封装,得到隧道数据包。其中,可以基于GRE、VxLAN等隧道协议进行隧道封装,还可以为其他隧道协议,仅需保证得到的隧道数据包可以携带租户标识即可。
图5为本申请实施例示出的一种流表匹配的示意图,参见图5,在RDMA数据的发送过程和接收过程均需与流表501进行匹配,流表501为发送方流表或者接收方流表。其中,在发送方向上命中流表501时,将该原始数据包的第二MAC地址删掉,添加第一MAC地址、第一IP地址和租户标识,得到隧道数据包;在接收方向上命中流表501时,将隧道数据包的第一MAC地址和第一IP地址删掉,添加第二MAC地址,得到原始数据包。
图6为本申请实施例示出的一种整体的系统结构图,参见图6,发送方虚拟机中运行的RDMA应用601通过RDMA分发流工具和库以及网卡驱动,为待传输的数据配置网络传输信息,如IP地址、MAC地址、网卡端口号、应用层端口号等,将待传输的数据映射到RoCE协议的净荷中,将网络传输信息填充到RoCE协议对应的包头中,形成封装RoCE协议的原始数据包。该原始数据包通过发送方服务器发送到发送方网卡,当与流表匹配成功时根据流表对原始数据包进行隧道封装,得到隧道数据包。由网卡与交换机保证数据在网络中的可靠传输。
相关技术中,发送方服务器通过学习将发送方流表下发到发送方网卡,学习是指发送方服务器对原始数据包进行解析,得到原始数据包中的IP地址、三层协议号和应用层端口号等传输信息,根据传输信息生成发送方流表。具体过程为:发送方服务器将原始数据包发往发送方网卡,发送方网卡先进行流表匹配。如果匹配成功,则将原始数据包进行隧道封装,将封装后的数据包发往网络;如果匹配失败,则发送方网卡将该原始数据包返回到发送方服务器进行处理。由发送方服务器对原始数据包进行解析,得到原始数据包的IP地址、三层协议号和应用层端口号等传输信息,根据传输信息生成发送方流表,将发送方流表下发到发送方网卡,后续发送方网卡接收到该原始数据包时即可匹配该发送方流表,根据发送方流表进行数据包转发。
而本申请实施例提供的方法,当接收到包括原始数据包的数据传输请求时,发送方服务器和接收方服务器建立RDMA连接,在RDMA连接的建立过程中生成发送方流表,将发送方流表下发给发送方网卡,因此将该原始数据包发送给发送方网卡,发送方网卡在首次接收到该数据包时即可与发送方流表匹配成功。
如图7所示,虚拟私有云上的快速通道通过流表接口为发送方网卡下发嵌入式流表701,后续将RDMA数据包进行流表查询。当查询结果为命中时,则发送方网卡即可根据流表执行操作;当查询结果为未命中时,则需要转发至慢速通道,通过流表接口为发送方网卡安装流表。
需要说明的是,原始数据包中的第二地址,是租户为虚拟机配置的地址,用于在虚拟网络中进行数据传输,其中该虚拟机中的虚拟网络,称为Overlay网络,是隧道协议的内层网络。隧道数据包中的第一地址,是物理主机上网卡的地址,用于在真实的物理网络中进行数据传输,称为Underlay网络,是隧道协议的外层网络。Overlay网络建立在Underlay网络之上,与Underlay网络是一对相对的概念。因此通过隧道协议,可以实现内层网络与外层网络的隔离。
204、发送方网卡将隧道数据包发送给第一地址对应的接收方网卡。
发送方网卡将原始数据包进行封装得到隧道数据包,该隧道数据包携带第一地址和租户标识,第一地址包括接收原始数据包的接收方网卡的地址,因此可以通过第一地址确定一个接收方网卡,租户标识用于指示接收方网卡对应的接收方服务器上的租户。
发送方网卡与接收方网卡建立通信网络连接,发送方网卡将该隧道数据包发送到通信网络中,通信网络根据第一地址,将该隧道数据包传输到接收方网卡中。后续接收方网卡接收到隧道数据包时,对隧道数据包进行解封装,得到原始数据包和租户标识,具体可参见下述步骤205。
205、接收方网卡接收发送方网卡发送的隧道数据包,确定该隧道数据包与接收方流表匹配成功时,接收方网卡对隧道数据包进行解封装,得到原始数据包和租户标识,将原始数据包和租户标识传输至接收方服务器。
当接收方网卡接收到隧道数据包时,进行流表查询,当确定该隧道数据包与接收方流表匹配成功时,根据该接收方流表,对该隧道数据包进行解封装。其中隧道数据包携带第一地址,第一地址包括接收方网卡的第一MAC地址和第一IP地址,对隧道数据包进行解封装,包括:获取隧道数据包中的租户标识,将隧道数据包中的第一MAC地址和第一IP地址删掉,得到原始数据包。接收方网卡得到原始数据包和租户标识,将原始数据包和租户标识传输至该接收方网卡对应的接收方服务器中。
隧道数据包包括包头和包体,包头包括第一MAC地址字段、第一IP地址字段和隧道协议字段,第一IP地址字段包括ECN值和DSCP值,隧道协议字段包括租户标识,包体包括第二IP地址字段和传输数据,第二IP地址字段包括第二IP地址。
则上述解封装过程包括:获取隧道协议字段中的租户标识,将隧道数据包的第一MAC地址字段、第一IP地址字段和隧道协议字段删掉,得到原始数据包,其中原始数据包包括包头和包体,原始数据包的包头包括第二IP地址字段,原始数据包的包体包括传输数据。在原始数据包的包头中添加第二MAC地址字段,第二MAC地址字段包括第二MAC地址,将ECN值和DSCP值写入第二IP地址字段。
其中,第二MAC地址由接收方网卡通过接收端服务系统软件进行查表得到。
其中,该隧道数据包中的ECN值和DSCP值与上述步骤203中的ECN值和DSCP值类似,在此不再赘述。
因此,步骤203中将原始数据包的包头中的ECN值和DSCP值,拷贝到隧道数据包的第一IP地址字段中,步骤206中将隧道数据包的包头中的ECN值和DSCP值拷贝回原始数据包的第二IP地址字段中,实现了RDMA网络的流控问题,解决了RDMA网络和传统TCP/IP网络的隔离问题。
该隧道数据包可以包括第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,其中第四IP地址为发送方网卡的IP地址,第一IP地址为接收方网卡的IP地址,隧道数据包中的第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号可确定该隧道数据包的传输流向。接收方流表包括匹配项,匹配项中可以包括第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,接收方流表中的第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号可确定该接收方流表对应的数据包的传输流向。因此,当隧道数据包的参数与接收方流表的参数相同时,确定隧道数据包与接收方流表匹配成功。
如图8所示,隧道数据包中包括包头的第一MAC地址字段811、第一IP地址字段812、GRE协议字段813,以及包体的第二IP地址字段814、TCP/UDP协议字段815和传输数据字段816。其中,第一MAC地址字段811中包括第一MAC地址,第一IP地址字段812中包括第一IP地址、DSCP值、ECN值,GRE协议字段813中包括GRE协议,且GRE协议中携带租户标识,第二IP地址字段814中包括第二IP地址,TCP/UDP协议字段815中包括TCP/UDP协议,传输数据字段816中包括待传输的传输数据。将隧道数据包的第一MAC地址字段811、第一IP地址字段812、GRE协议字段813删掉,添加第二MAC地址字段,并将第一MAC地址字段811中的DSCP值、ECN值拷贝到第二IP地址字段,得到原始数据包。如图8所示,原始数据包中包括包头的第二MAC地址字段821、第二IP地址字段822、TCP/UDP协议字段823,以及包体的传输数据字段824。其中,第二MAC地址字段821中包括第二MAC地址,第二IP地址字段822中包括第二IP地址、DSCP值、ECN值。
图9所示的为网络中的四种数据包的类型,参见图9,数据包901为RoCE流控数据包,数据包902为RoCE数据包,数据包903为带随道协议的TCP/IP包(非RoCE数据包),数据包904为不带随道协议的TCP/IP包(非RoCE数据包)。发送方服务器对不同类型的数据包打上不同的DSCP值,以标识不同类型的数据包,网络上的交换机通过DSCP值来区分数据包,实现流控。
206、接收方服务器获取到原始数据包和租户标识时,将该原始数据包分发给租户标识对应的租户。
接收方服务器中存在多个租户,当接收方服务器获取到原始数据包和租户标识时,将该原始数据包分发给该租户标识对应的租户。
该原始数据包中携带有第二地址,第二地址包括接收方虚拟机的第二MAC地址和第二IP地址。接收方服务器为该租户配置有一个或多个虚拟机,该多个虚拟机之间构成虚拟机网络,该第二地址用于指示多个虚拟机中的任一发送方虚拟机。当接收方服务器获取到原始数据包和租户标识时,确定该租户标识对应的租户,将该原始数据包发送至该租户的虚拟机网络中,由虚拟机网络将原始数据包方发送给第二地址对应的任一接收方虚拟机中,租户可基于该任一接收方虚拟机,接收该原始数据包。
如图10所示,相关技术中,为了同时实现RDMA技术和VPC技术,在一台主机1001上配置两个网卡,其中网卡1002用于实现RDMA网络,网卡1003用于实现VPC网络,双网卡服务器可以管理RDMA网络和VPC网络的数据,虽然可以从物理上隔离RDMA数据包与TCP/IP数据包,但是RDMA网络的多租户仍然未能隔离。而且,采用双网卡的方式,除网卡外,线材、交换机等都要双份,布线复杂,配置成本和运营成本高。
本申请实施例提供的方法,发送方网卡获取原始数据包、第一地址和租户标识,根据第一地址和租户标识,对原始数据包进行隧道封装,得到隧道数据包,将隧道数据包发送给第一地址对应的接收方网卡;接收方网卡接收到隧道数据包时,对隧道数据包进行解封装,得到原始数据包和租户标识,传输至接收方服务器;接收方服务器将原始数据包分发给租户标识对应的租户。由于VPC网络中包括多个租户,每个租户可以通过RDMA网络进行数据包的收发,在RDMA网络中,根据本申请实施例提供的方法,将VPC网络中一个或多个租户的数据包进行隧道封装,通过租户标识对租户进行区分,将VPC网络中各租户的数据隔离出来在RDMA网络中进行传输,则每个租户只能获取该租户自己的数据包,例如租户1可以获取租户1的数据包,但无法获取租户2的数据包,实现了每个租户的数据不会被其他租户获取到,保证了数据的安全。
并且,本申请实施例提供的方法,无需改变公有云网络的基础设施,无需增加硬件成本,即可实现在VPC网络上给租户呈现RDMA技术,将VPC网络与RDMA网络进行融合,解决了多租户隔离的问题。满足VPC租户部署机器学习、大数据、科学计算等应用的需求,具有低延时性。
并且,通过将ECN值与DSCP值在原始数据包和隧道数据包之间复制,解决RDMA网络的流控问题,而且通过DSCP值将数据包进行标记,可以将RDMA数据包和传统的TCP/IP数据包进行区分,解决了RDMA网络和传统TCP/IP网络的隔离问题。
并且,在建立RDMA连接的过程中将流表下发给网卡,可以保证建立RDMA连接时流表下载成功,有效避免了RDMA数据包状态出错、乱序等问题。
并且,相关技术中,根据Per Flow(一对IP地址和一对端口号)来对流表进行分类,其中流表中的字段包括源IP地址、目的IP地址、目的端口号和源端口号。服务器按照PerFlow的方式生成流表,将流表下发到网卡,网卡根据Per Flow的方式,按照源IP地址和目的IP地址查询目的端口号和源端口号对应的流表。而本申请实施例中,根据Per Destination(一对IP地址和目的端口号)对流表进行分类,其中流表中的字段包括源IP地址、目的IP地址和目的端口号。服务器按照Per Destination的方式生成流表,将流表下发到网卡,网卡根据Per Destination的方式,按照源IP地址和目的IP地址查询目的端口号对应的流表。因此,通过本申请实施例提供的方法,仅根据目的端口号进行分类,不考虑源端口号,减少了分类的类别,降低了流表规格,对流表的查询速度更快,时延更低。
图11是本申请实施例提供的一种数据传输装置的结构示意图,应用于发送方网卡,参见图11,该装置包括:
获取模块1101,用于获取原始数据包、第一地址和租户标识,其中第一地址包括接收原始数据包的接收方网卡的地址,租户标识用于指示接收方服务器上对应的租户;
封装模块1102,用于根据第一地址和租户标识,对原始数据包进行隧道封装,得到隧道数据包;
发送模块1103,用于将隧道数据包发送给第一地址对应的接收方网卡,接收方网卡用于接收到隧道数据包时,对隧道数据包进行解封装,得到原始数据包和租户标识,将原始数据包和租户标识传输至接收方服务器,接收方服务器用于将原始数据包分发给租户标识对应的租户。
本申请实施例提供的装置,获取原始数据包、第一地址和租户标识,根据第一地址和租户标识,对原始数据包进行隧道封装,得到隧道数据包,将隧道数据包发送给第一地址对应的接收方网卡;接收方网卡接收到隧道数据包时,对隧道数据包进行解封装,得到原始数据包和租户标识;将原始数据包和租户标识传输至接收方服务器;接收方服务器用于将原始数据包分发给租户标识对应的租户。因此,通过进行隧道封装,根据租户标识对租户进行区分,可以将公有云中每个租户的数据隔离出来,保证了数据的安全。
可选地,参见图12,原始数据包携带第二地址,第二地址包括接收方虚拟机的地址,接收方虚拟机的地址包括第二媒体访问控制MAC地址和第二网际协议IP地址,第一地址包括接收方网卡的第一MAC地址和第一IP地址,封装模块1102,包括:
删除单元1112,用于将原始数据包中的第二MAC地址删掉;
添加单元1122,用于添加第一MAC地址、第一IP地址和租户标识,得到隧道数据包。
可选地,原始数据包包括包头和包体,原始数据包的包头包括第二MAC地址字段和第二IP地址字段,第二MAC地址字段包括第二MAC地址,第二IP地址字段包括第二IP地址、显式拥塞通知ECN值和差分服务代码点DSCP值,原始数据包的包体包括传输数据;隧道数据包包括包头和包体,隧道数据包的包头包括第一MAC地址字段、第一IP地址字段和隧道协议字段,第一MAC地址字段包括第一MAC地址,第一IP地址字段包括第一IP地址,隧道协议字段包括租户标识,隧道数据包的包体包括第二IP地址字段和传输数据。该装置还包括:
写入模块1104,用于将第二IP数据字段中的ECN值和第二IP数据字段中的DSCP值写入第一IP地址字段中。
可选地,发送方网卡为支持RoCE的网卡,获取模块1101,包括:
流表获取单元1111,用于获取发送方服务器下发的发送方流表,发送方流表包括第一地址和租户标识;其中,发送方服务器用于接收到发送方虚拟机获取的原始数据包时,建立与接收方服务器之间的远程直接内存访问RDMA连接,在建立RDMA连接的过程中生成发送方流表,将发送方流表下发给发送方网卡,并将原始数据包下发给发送方网卡。
可选地,封装模块1102,包括:
封装单元1132,用于确定原始数据包与发送方流表匹配成功时,根据第一地址和租户标识,对原始数据包进行隧道封装,得到隧道数据包。
可选地,发送方流表还包括匹配项,匹配项包括第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号,第三IP地址为发送方虚拟机的IP地址,第二IP地址为接收方虚拟机的IP地址,封装单元1132,还用于当原始数据包对应的第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号,与匹配项中的第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号相同时,确定原始数据包与发送方流表匹配成功。
图13是本申请实施例提供的另一种数据传输装置的结构示意图,应用于发送方服务器,该发送方服务器配置有上述图11中的发送方网卡,参见图13,该装置包括:
连接建立模块1301,用于通过发送方虚拟机获取原始数据包时,建立与接收方服务器之间的远程直接内存访问RDMA连接,发送方虚拟机运行在发送方服务器中;
流表下发模块1302,用于在建立RDMA连接的过程中生成发送方流表,将发送方流表下发给发送方网卡,并将原始数据包下发给发送方网卡。
可选地,参见图14,原始数据包包括第一差分服务代码点DSCP值或者第二DSCP值,第一DSCP值用于表示原始数据包为RDMA数据包,第二DSCP值用于表示原始数据包为传输控制协议/互联网协议TCP/IP数据包;连接建立模块1301,包括:
连接建立单元1311,用于通过发送方虚拟机获取原始数据包,且原始数据包包括第一DSCP值时,建立与接收方服务器之间的RDMA连接。
图15是本申请实施例提供的另一种数据传输装置的结构示意图,应用于接收方网卡,参见图15,该装置包括:
接收模块1501,用于接收发送方网卡发送的隧道数据包,隧道数据包由发送方网卡根据第一地址和租户标识对原始数据包进行隧道封装后得到,第一地址包括接收原始数据包的接收方网卡的地址,租户标识用于指示接收方服务器上对应的租户;
解封装模块1502,用于对隧道数据包进行解封装,得到原始数据包和租户标识;
传输模块1503,用于将原始数据包和租户标识传输至接收方服务器。
可选地,参见图16,隧道数据包包括第一地址和租户标识,接收方网卡的地址包括第一媒体访问控制MAC地址和第一网际协议IP地址,解封装模块1502,包括:
标识获取单元1512,用于获取隧道数据包中的租户标识;
删除单元1522,用于将隧道数据包中的第一MAC地址和第一IP地址删掉,得到原始数据包。
可选地,隧道数据包包括包头和包体,隧道数据包的包头包括第一MAC地址字段、第一IP地址字段和隧道协议字段,第一MAC地址字段包括第一MAC地址,第一IP地址字段包括第一IP地址、显式拥塞通知ECN值和差分服务代码点DSCP值,隧道协议字段包括租户标识,隧道数据包的包体包括第二IP地址字段和传输数据,第二IP地址字段包括第二IP地址,第二IP地址为接收方虚拟机的IP地址;
原始数据包包括包头和包体,原始数据包的包头包括第二IP地址字段,原始数据包的包体包括传输数据。该装置还包括:
写入模块1504,用于将第一IP地址字段中的ECN值和第一IP地址字段中的DSCP值写入第二IP地址字段;
添加模块1505,用于在原始数据包的包头中添加第二MAC地址字段,第二MAC地址字段包括第二MAC地址,第二MAC地址为接收方虚拟机的MAC地址。
可选地,接收方网卡为支持RoCE的网卡,解封装模块1502,包括:
流表获取单元1532,用于获取接收方服务器下发的接收方流表,接收方服务器用于建立与发送方服务器之间的远程直接内存访问RDMA连接,在建立RDMA连接的过程中生成接收方流表,将接收方流表下发给接收方网卡;
解封装单元1542,用于确定隧道数据包与接收方流表匹配成功时,对原始数据包进行解封装,得到原始数据包和租户标识。
可选地,接收方流表包括匹配项,匹配项包括第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,第四IP地址为发送方网卡的IP地址,第一IP地址为接收方网卡的IP地址,隧道数据包中包括第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,解封装单元1542,还用于当隧道数据包中的第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,与匹配项中的第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号相同时,确定隧道数据包与接收方流表匹配成功。
图17是本申请实施例提供的另一种数据传输装置的结构示意图,应用于接收方服务器,该接收方服务器配置有上述图15中的发送方网卡,参见图17,该装置包括:
连接建立模块1701,用于通过接收方虚拟机建立与发送方服务器的远程直接内存访问RDMA连接,接收方虚拟机运行在接收方服务器中;
流表下发模块1702,用于在建立RDMA的过程中生成接收方流表,将接收方流表下发给接收方网卡。
可选地,参见图18,装置还包括:
数据包分发模块1703,用于当获取到接收方网卡传输的原始数据包和租户标识时,将原始数据包分发给租户标识对应的租户。
需要说明的是:上述实施例提供的数据传输装置在传输数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据传输装置与数据传输方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图19是本申请实施例提供的一种服务器的结构示意图,该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)1901和一个或一个以上的存储器1902,以及一个或一个以上的网卡1903。其中,所述存储器1902中存储有至少一条程序代码,所述至少一条程序代码由所述处理器1901加载并执行以实现上述各个方法实施例提供的服务器执行的方法,所述网卡1903用于实现上述各个方法实施例提供的网卡执行的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
本申请实施例还提供了一种用于传输数据的网卡,该网卡用于实现上述实施例的数据传输方法中所具有的操作。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的数据传输方法中所具有的操作。
本申请实施例还提供了一种计算机程序,该计算机程序包括至少一条程序代码,该至少一条程序代码由处理器加载并执行,以实现上述实施例的数据传输方法中所具有的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (15)

1.一种数据传输方法,其特征在于,应用于发送方网卡,所述方法包括:
获取原始数据包、第一地址和租户标识,其中所述第一地址包括接收所述原始数据包的接收方网卡的地址,所述租户标识用于指示接收方服务器上对应的租户;
根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到隧道数据包;
将所述隧道数据包发送给所述第一地址对应的接收方网卡。
2.根据权利要求1所述的方法,其特征在于,所述原始数据包携带第二地址,所述第二地址包括接收方虚拟机的地址,所述接收方虚拟机的地址包括第二媒体访问控制MAC地址和第二网际协议IP地址,所述第一地址包括所述接收方网卡的第一MAC地址和第一IP地址,所述根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到隧道数据包,包括:
将所述原始数据包的所述第二MAC地址删掉,添加所述第一MAC地址、所述第一IP地址和所述租户标识,得到所述隧道数据包。
3.根据权利要求2所述的方法,其特征在于,所述原始数据包包括包头和包体,所述原始数据包的包头包括第二MAC地址字段和第二IP地址字段,所述第二MAC地址字段包括所述第二MAC地址,所述第二IP地址字段包括所述第二IP地址、显式拥塞通知ECN值和差分服务代码点DSCP值,所述原始数据包的包体包括传输数据;
所述隧道数据包包括包头和包体,所述隧道数据包的包头包括第一MAC地址字段、第一IP地址字段和隧道协议字段,所述第一MAC地址字段包括所述第一MAC地址,所述第一IP地址字段包括所述第一IP地址,所述隧道协议字段包括所述租户标识,所述隧道数据包的包体包括所述第二IP地址字段和所述传输数据;所述根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到隧道数据包之后,所述方法还包括:
将所述第二IP数据字段中的ECN值和所述第二IP数据字段中的DSCP值写入所述第一IP地址字段中。
4.根据权利要求1所述的方法,其特征在于,所述发送方网卡为支持远程直接内存访问协议RoCE的网卡,所述获取原始数据包、第一地址和租户标识,包括:
获取发送方服务器下发的发送方流表,所述发送方流表包括所述第一地址和所述租户标识;
所述发送方服务器用于接收到发送方虚拟机获取的原始数据包时,建立与所述接收方服务器之间的远程直接内存访问RDMA连接,在建立所述RDMA连接的过程中生成所述发送方流表,将所述发送方流表下发给所述发送方网卡,并将所述原始数据包下发给所述发送方网卡。
5.根据权利要求4所述的方法,其特征在于,所述根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到隧道数据包,包括:
确定所述原始数据包与所述发送方流表匹配成功时,根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到所述隧道数据包。
6.根据权利要求5所述的方法,其特征在于,所述发送方流表还包括匹配项,所述匹配项包括第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号,所述第三IP地址为发送方虚拟机的IP地址,所述第二IP地址为接收方虚拟机的IP地址,所述确定所述原始数据包与所述发送方流表匹配成功时,根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到所述隧道数据包,包括:
当所述原始数据包对应的第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号,与所述匹配项中的第三IP地址、第二IP地址、网卡物理端口号、三层协议号和应用层端口号相同时,确定所述原始数据包与所述发送方流表匹配成功。
7.一种数据传输方法,其特征在于,应用于接收方网卡,所述方法包括:
接收发送方网卡发送的隧道数据包,所述隧道数据包由发送方网卡根据第一地址和租户标识对原始数据包进行隧道封装后得到,所述第一地址包括所述接收方网卡的地址,所述租户标识用于指示接收方服务器上对应的租户;
对所述隧道数据包进行解封装,得到所述原始数据包和所述租户标识;
将所述原始数据包和所述租户标识传输至所述接收方服务器。
8.根据权利要求7所述的方法,其特征在于,所述隧道数据包包括所述第一地址和所述租户标识,所述接收方网卡的地址包括第一媒体访问控制MAC地址和第一网际协议IP地址,所述对所述隧道数据包进行解封装,得到所述原始数据包和所述租户标识,包括:
获取所述隧道数据包中的租户标识;
将所述隧道数据包中的第一MAC地址和第一IP地址删掉,得到所述原始数据包。
9.根据权利要求8所述的方法,其特征在于,所述隧道数据包包括包头和包体,所述隧道数据包的包头包括第一MAC地址字段、第一IP地址字段和隧道协议字段,所述第一MAC地址字段包括所述第一MAC地址,所述第一IP地址字段包括所述第一IP地址、显式拥塞通知ECN值和差分服务代码点DSCP值,所述隧道协议字段包括所述租户标识,所述隧道数据包的包体包括第二IP地址字段和传输数据,所述第二IP地址字段包括第二IP地址,所述第二IP地址为接收方虚拟机的IP地址;
所述原始数据包包括包头和包体,所述原始数据包的包头包括所述第二IP地址字段,所述原始数据包的包体包括所述传输数据;所述对所述隧道数据包进行解封装,得到所述原始数据包和所述租户标识之后,所述方法还包括:
将所述第一IP地址字段中的ECN值和所述第一IP地址字段中的DSCP值写入所述第二IP地址字段中;
在所述原始数据包的包头中添加第二MAC地址字段,所述第二MAC地址字段包括第二MAC地址,所述第二MAC地址为所述接收方虚拟机的MAC地址。
10.根据权利要求7所述的方法,其特征在于,所述接收方网卡为支持远程直接内存访问协议RoCE的网卡,所述对所述隧道数据包进行解封装,得到所述原始数据包和所述租户标识,包括:
获取所述接收方服务器下发的接收方流表,所述接收方服务器用于建立与发送方服务器之间的远程直接内存访问RDMA连接,在建立所述RDMA连接的过程中生成所述接收方流表,将所述接收方流表下发给所述接收方网卡;
确定所述隧道数据包与所述接收方流表匹配成功时,对所述原始数据包进行解封装,得到所述原始数据包和所述租户标识。
11.根据权利要求10所述的方法,其特征在于,所述接收方流表包括匹配项,所述匹配项包括第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,所述第四IP地址为发送方网卡的IP地址,所述第一IP地址为接收方网卡的IP地址,所述隧道数据包中包括第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,所述确定所述隧道数据包与所述接收方流表匹配成功时,对所述原始数据包进行解封装,得到所述原始数据包和所述租户标识,包括:
当所述隧道数据包中的第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号,与所述匹配项中的第四IP地址、第一IP地址、租户标识、三层协议号和应用层端口号相同时,确定所述隧道数据包与所述接收方流表匹配成功。
12.一种数据传输装置,其特征在于,应用于发送方网卡,所述装置包括:
获取模块,用于获取原始数据包、第一地址和租户标识,其中所述第一地址包括接收所述原始数据包的接收方网卡的地址,所述租户标识用于指示所述接收方服务器上对应的租户;
封装模块,用于根据所述第一地址和所述租户标识,对所述原始数据包进行隧道封装,得到隧道数据包;
发送模块,用于将所述隧道数据包发送给所述第一地址对应的接收方网卡。
13.一种数据传输装置,其特征在于,应用于接收方网卡,所述装置包括:
接收模块,用于接收发送方网卡发送的隧道数据包,所述隧道数据包由发送方网卡根据第一地址和租户标识对原始数据包进行隧道封装后得到,所述第一地址包括接收所述原始数据包的接收方网卡的地址,所述租户标识用于指示所述接收方服务器上对应的租户;
解封装模块,用于对所述隧道数据包进行解封装,得到所述原始数据包和所述租户标识;
传输模块,用于将所述原始数据包和所述租户标识传输至所述接收方服务器。
14.一种网卡,其特征在于,所述网卡用于实现如权利要求1至6任一所述的数据传输方法,或者实现如权利要求7至11任一所述的数据传输方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条程序代码,所述至少一条程序代码由处理器加载并执行,以实现如权利要求1至6任一所述的数据传输方法,或者实现如权利要求7至11任一所述的数据传输方法。
CN201911409353.6A 2019-12-31 2019-12-31 数据传输方法、装置、设备及存储介质 Active CN111193653B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201911409353.6A CN111193653B (zh) 2019-12-31 2019-12-31 数据传输方法、装置、设备及存储介质
PCT/CN2020/119021 WO2021135471A1 (zh) 2019-12-31 2020-09-29 数据传输方法、装置、网卡及存储介质
EP20910111.2A EP4009593A4 (en) 2019-12-31 2020-09-29 DATA TRANSFER METHOD AND DEVICE, NETWORK CARD AND STORAGE MEDIA
US17/521,770 US20220070095A1 (en) 2019-12-31 2021-11-08 Data transmission method and apparatus, network adapter, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911409353.6A CN111193653B (zh) 2019-12-31 2019-12-31 数据传输方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111193653A true CN111193653A (zh) 2020-05-22
CN111193653B CN111193653B (zh) 2021-08-06

Family

ID=70709728

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911409353.6A Active CN111193653B (zh) 2019-12-31 2019-12-31 数据传输方法、装置、设备及存储介质

Country Status (4)

Country Link
US (1) US20220070095A1 (zh)
EP (1) EP4009593A4 (zh)
CN (1) CN111193653B (zh)
WO (1) WO2021135471A1 (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111817942A (zh) * 2020-07-13 2020-10-23 中国联合网络通信集团有限公司 QoS的实现方法、系统、设备及存储介质
CN112187584A (zh) * 2020-09-30 2021-01-05 腾讯科技(深圳)有限公司 路径故障探测方法、系统、服务器及存储介质
CN112583655A (zh) * 2020-11-02 2021-03-30 北京迈格威科技有限公司 数据传输方法、装置、电子设备及可读存储介质
WO2021135471A1 (zh) * 2019-12-31 2021-07-08 腾讯科技(深圳)有限公司 数据传输方法、装置、网卡及存储介质
CN114050998A (zh) * 2022-01-07 2022-02-15 阿里巴巴(中国)有限公司 实现远程直接内存访问的方法、装置、电子设备及介质
CN114285661A (zh) * 2021-12-28 2022-04-05 中国银联股份有限公司 一种私有网络接入方法、装置、设备及存储介质
CN114424599A (zh) * 2020-08-28 2022-04-29 柏思科技有限公司 用于传输基于会话的包的方法和系统
CN114615079A (zh) * 2022-03-31 2022-06-10 深信服科技股份有限公司 一种数据处理方法、装置、设备及可读存储介质
WO2022151820A1 (zh) * 2021-01-14 2022-07-21 华为技术有限公司 数据传输系统、数据传输方法以及网络设备
CN114826826A (zh) * 2022-04-28 2022-07-29 北京金山云网络技术有限公司 网络拥塞信息传输方法、装置、公有云网络和电子设备
WO2023134350A1 (zh) * 2022-01-17 2023-07-20 华为技术有限公司 一种报文发送方法、报文接收方法、信息发送方法及装置
CN117972730A (zh) * 2024-03-29 2024-05-03 成都工业学院 一种电子信息数据交互的低风险安全控制方法及系统

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114944952B (zh) * 2022-05-20 2023-11-07 深信服科技股份有限公司 一种数据处理方法、装置、系统、设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150052525A1 (en) * 2013-08-13 2015-02-19 Vmware, Inc. Virtual private networks distributed across multiple cloud-computing facilities
CN107357660A (zh) * 2017-07-06 2017-11-17 华为技术有限公司 一种虚拟资源的分配方法及装置
CN108494817A (zh) * 2018-02-08 2018-09-04 华为技术有限公司 数据传输方法、相关装置及系统
CN109617995A (zh) * 2018-12-29 2019-04-12 北京金山云网络技术有限公司 对租户集群vpc内部容器的管理系统、方法及电子设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2922251A4 (en) * 2012-12-09 2015-10-14 Huawei Tech Co Ltd PACKET DELIVERY METHOD, DEVICE AND DATA CENTER NETWORK
US9350657B2 (en) * 2013-07-08 2016-05-24 Nicira, Inc. Encapsulating data packets using an adaptive tunnelling protocol
US9509662B2 (en) * 2014-09-24 2016-11-29 Microsoft Technology Licensing, Llc Techniques for providing services to multiple tenants via a shared end-point
US9747249B2 (en) * 2014-12-29 2017-08-29 Nicira, Inc. Methods and systems to achieve multi-tenancy in RDMA over converged Ethernet
CN109076006B (zh) * 2016-04-13 2021-10-15 诺基亚技术有限公司 基于覆盖网络的多租户虚拟专用网络
CN106101023B (zh) * 2016-05-24 2019-06-28 华为技术有限公司 一种vpls报文处理方法及设备
CN110058987B (zh) * 2018-01-18 2023-06-27 伊姆西Ip控股有限责任公司 用于对计算系统进行追踪的方法、设备和计算机可读介质
CN110061923B (zh) * 2018-01-19 2022-10-04 北京金山云网络技术有限公司 流量控制方法、装置、交换机、发送端服务器及介质
CN112398817B (zh) * 2018-01-23 2022-02-25 华为技术有限公司 数据发送的方法及设备
CN111193653B (zh) * 2019-12-31 2021-08-06 腾讯科技(深圳)有限公司 数据传输方法、装置、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150052525A1 (en) * 2013-08-13 2015-02-19 Vmware, Inc. Virtual private networks distributed across multiple cloud-computing facilities
CN107357660A (zh) * 2017-07-06 2017-11-17 华为技术有限公司 一种虚拟资源的分配方法及装置
CN108494817A (zh) * 2018-02-08 2018-09-04 华为技术有限公司 数据传输方法、相关装置及系统
CN109617995A (zh) * 2018-12-29 2019-04-12 北京金山云网络技术有限公司 对租户集群vpc内部容器的管理系统、方法及电子设备

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021135471A1 (zh) * 2019-12-31 2021-07-08 腾讯科技(深圳)有限公司 数据传输方法、装置、网卡及存储介质
CN111817942A (zh) * 2020-07-13 2020-10-23 中国联合网络通信集团有限公司 QoS的实现方法、系统、设备及存储介质
CN114424599A (zh) * 2020-08-28 2022-04-29 柏思科技有限公司 用于传输基于会话的包的方法和系统
CN114424599B (zh) * 2020-08-28 2023-12-08 柏思科技有限公司 用于传输基于会话的包的方法和系统
CN112187584A (zh) * 2020-09-30 2021-01-05 腾讯科技(深圳)有限公司 路径故障探测方法、系统、服务器及存储介质
CN112187584B (zh) * 2020-09-30 2023-07-21 腾讯科技(深圳)有限公司 路径故障探测方法、系统、服务器及存储介质
CN112583655A (zh) * 2020-11-02 2021-03-30 北京迈格威科技有限公司 数据传输方法、装置、电子设备及可读存储介质
WO2022151820A1 (zh) * 2021-01-14 2022-07-21 华为技术有限公司 数据传输系统、数据传输方法以及网络设备
CN114285661A (zh) * 2021-12-28 2022-04-05 中国银联股份有限公司 一种私有网络接入方法、装置、设备及存储介质
CN114285661B (zh) * 2021-12-28 2023-06-30 中国银联股份有限公司 一种私有网络接入方法、装置、设备及存储介质
CN114050998A (zh) * 2022-01-07 2022-02-15 阿里巴巴(中国)有限公司 实现远程直接内存访问的方法、装置、电子设备及介质
WO2023134350A1 (zh) * 2022-01-17 2023-07-20 华为技术有限公司 一种报文发送方法、报文接收方法、信息发送方法及装置
CN114615079A (zh) * 2022-03-31 2022-06-10 深信服科技股份有限公司 一种数据处理方法、装置、设备及可读存储介质
CN114826826A (zh) * 2022-04-28 2022-07-29 北京金山云网络技术有限公司 网络拥塞信息传输方法、装置、公有云网络和电子设备
CN117972730A (zh) * 2024-03-29 2024-05-03 成都工业学院 一种电子信息数据交互的低风险安全控制方法及系统

Also Published As

Publication number Publication date
WO2021135471A1 (zh) 2021-07-08
CN111193653B (zh) 2021-08-06
EP4009593A4 (en) 2022-10-19
US20220070095A1 (en) 2022-03-03
EP4009593A1 (en) 2022-06-08

Similar Documents

Publication Publication Date Title
CN111193653B (zh) 数据传输方法、装置、设备及存储介质
US10541836B2 (en) Virtual gateways and implicit routing in distributed overlay virtual environments
US11876708B2 (en) Interface-based ACLs in a layer-2 network
CN111885075B (zh) 容器通信方法、装置、网络设备及存储介质
US6799220B1 (en) Tunneling management messages over a channel architecture network
CN105612719B (zh) 使用封装头部中的元数据的高级网络虚拟化
US11909636B2 (en) Layer-2 networking using access control lists in a virtualized cloud environment
WO2015113410A1 (zh) 数据包的处理方法与装置
CN107645433B (zh) 报文转发方法及装置
US11496599B1 (en) Efficient flow management utilizing control packets
US20220029917A1 (en) Executing workloads across multiple cloud service providers
US20240121186A1 (en) Layer-2 networking using access control lists in a virtualized cloud environment
WO2015165249A1 (zh) 一种建立业务路径的方法和设备
CN113709016B (zh) 通信系统以及通信方法、装置、设备和存储介质
CN112994928B (zh) 一种虚拟机的管理方法、装置及系统
CN117499318B (zh) 云计算虚拟网络系统、及其使用方法、装置、设备及介质
US20240223499A1 (en) Interface-based acls in a layer-2 network
CN116708578A (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
GR01 Patent grant
GR01 Patent grant