CN109417507A - 部分延迟的报文访问 - Google Patents

部分延迟的报文访问 Download PDF

Info

Publication number
CN109417507A
CN109417507A CN201780040946.2A CN201780040946A CN109417507A CN 109417507 A CN109417507 A CN 109417507A CN 201780040946 A CN201780040946 A CN 201780040946A CN 109417507 A CN109417507 A CN 109417507A
Authority
CN
China
Prior art keywords
message
forwarding decision
heading
memory access
direct memory
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
CN201780040946.2A
Other languages
English (en)
Other versions
CN109417507B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN109417507A publication Critical patent/CN109417507A/zh
Application granted granted Critical
Publication of CN109417507B publication Critical patent/CN109417507B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer Security & Cryptography (AREA)

Abstract

一种方法包括:互连执行报文的部分直接内存访问以获得报文头的报文头数据,使用所述报文头数据来生成标识报文目的地址的报文转发决策,以及向所述报文目的地址发起报文有效载荷的直接内存访问。

Description

部分延迟的报文访问
交叉申请
本申请要求于2016年6月30日提交的、申请序列号为15/199,373、申请名称为“部分延迟的报文访问(Partially Deferred Packet Access)”的美国非临时专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本公开涉及直接内存访问,尤其涉及部分延迟的报文访问。
背景技术
软件交换机可以在诸如服务器之类的主机上实现,并且可以用于将数据从一个连接的设备转发到另一个连接的设备,非常类似于硬件路由器。执行报文的直接内存访问(direct memory access,DMA)可将数据传送到软件交换机,确定数据的目的地,然后向目的地发起数据的进一步传送。操作软件交换机的主机可能需要相当大的缓冲器空间,以便接收数据并确定目的地。
在实现软件交换机的一些服务器中,可以使用网络加速器来加速网络功能,包括例如虚拟交换。在网络加速器上,将数据作为报文接收,并且基于由主机上的***软件提供的元数据和所解析的报文头做出报文交换决策。该报文通常是来自主机***的访问的直接内存(direct memory accessed,DMA'ed),例如通过快捷***部件互连标准(peripheralcomponent interconnect express,PCI-E)总线。
网络加速器能够将整个报文DMA到加速器,然后解析该报文并做出转发决策。当报文的目的地是虚拟端口/接口时,可以发起第二DMA。这使得加速器具有大到足以缓冲报文的存储器,每个报文大小可以为64B-64K。第二DMA还增加了报文处理的等待时间。
发明内容
一种方法包括:互连执行报文的部分直接内存访问以获得报文头的报文头数据,所述互连使用所述报文头数据来生成报文转发决策,所述报文转发决策用于标识一个报文目的地址,并且所述互连向所述报文目的地址发起报文有效载荷的直接内存访问。
非暂时性计算机可读存储设备上存储有用于由主机执行以执行操作的指令。所述操作包括:执行报文的部分直接内存访问以获得报文头的报文头数据;使用所述报文头数据来生成标识报文目的地址的报文转发决策;以及向所述报文目的地址发起报文有效载荷的直接内存访问。
一种***包括处理电路和具有耦合到所述处理电路的报文缓冲器的存储设备。所述处理电路用于执行以下操作,包括:执行报文的部分直接内存访问以获得报文头的报文头数据;使用所述报文头数据来生成标识报文目的地址的报文转发决策;以及向所述报文目的地址发起报文有效载荷的直接内存访问。
附图说明
图1是示例实施例提供的用于通过在主机上执行的虚拟交换操作来执行高效数据传输的***的框图;
图2是示例实施例提供的待传送的报文的框图;
图3是示例实施例提供的图1所述***的操作流程框图;
图4是示例实施例提供的包括耦合到多个虚拟机的交换机的***的框图,其中该多个虚拟机包括用于提供联网通信服务的虚拟网络功能(virtual network function,VNF);
图5是示例实施例提供的报文转发方法的流程图;且
图6是示例实施例提供的用于实现算法和执行方法的电路的框图。
具体实施方式
以下结合附图进行详细描述,所述附图是描述的一部分,并通过图解说明的方式示出可以实施本发明的具体实施例。足够详细地描述这些实施例以使所属领域的技术人员能够实践本发明,并且应理解可利用其它实施例,并且可在不脱离本发明的范围的情况下作出结构、逻辑和电性变化。因此,以下描述的示例性实施例并不当作限定,本发明的范围由所附权利要求书界定。
在一个实施例中,本文所述的功能或算法可在软件中实施。软件可由存储在本地或联网的计算机可读介质或计算机可读存储设备,如一种或多种基于非瞬时性存储器或其它类型的硬件的存储设备,上的计算机可执行指令组成。另外,此类功能对应于模块,该模块可以是软件、硬件、固件或其任何组合。可视需要在一个或多个模块中执行多个功能,且描述的实施例仅仅是示例。软件可在数字信号处理器、ASIC、微处理器或运行于计算机***(如个人计算机、服务器或其它计算机***)的其它类型的处理器上执行,将此类计算机***转变成经过专门编程的机器。
在主机上操作的软件交换机用于以有效的方式在多个不同设备之间传输数据。为了加速数据传输,该互连接收待传输的报文,并发起报文的报文头的部分DMA。使用部分DMA以便获得足够的报文头来做出转发决策。部分DMA可以获得一部分或全部的报文头。使用所获得的报文头部分,执行部分DMA以识别报文的目的地。然后发起有效载荷的DMA(即,报文头的剩余部分,可能包括报文头的最后部分),以便将报文转发到目的地。在一些示例中,转发包括整个报文,既有报文头又有有效载荷。
与为了传送数据而执行两个完整的DMA的现有方法相比,使用根据本文任一实施例的部分DMA节约了时间。在此根据本文中任一实施例的部分DMA的使用比传统DMA操作使用更少的存储器。在此根据本文中任一实施例的部分DMA的使用比传统DMA操作使用更少的***资源来传送数据,且允许推迟DMA,该DMA至少包括报文的有效载荷的剩余部分,直到通过使用部分DMA来识别目的地为止。
图1是示例实施例提供的用于执行有效数据传输的***100的框图。诸如机器1110到机器N 115之类的多个设备可以通过诸如有线或无线网络之类的通信链路120或诸如外设元件互连(peripheral component interconnect,PCI)标准总线之类的内部总线来耦合。在一些实施例中,设备可以在单独的***上,并且还可以包括通过内部总线耦合的单个***中的设备。在另外的实施例中,设备可以是虚拟机或容器。可以认为容器是轻量级形式的虚拟机,其位于诸如Linux之类的操作***之上,并且共享操作***内核功能。
互连(interconnect)125可以通过通信链路120耦合。该互连125通过通信链路120在组件或***之间传送报文。在一些示例中,互连125包括或类似于网桥、虚拟交换机、路由器、网关或其它类似设备。这些示例仅仅是示例,而不是穷尽性或限制性示例。互连125可以包括交换机和操作交换机并提供路由功能的处理***。在一些示例中,交换机包括以软件实现的虚拟交换机。在一些实施例中,互连125执行报文处理功能,该报文处理功能包括部分DMA和延迟DMA数据传送,例如在设备/***之间传送报文。在一些示例中,互连125执行数据传送,包括路由正在传送的报文。在一些示例中,互连125可用于配置硬件以执行数据传送。在另外的实施例中,在互连125中可以包括硬件加速器以加速数据传送操作。
图2是示例实施例提供的待传送的报文200的框图。报文200包括报文头210和有效载荷220。在各种实施例中,有效载荷220通常显著大于报文头210。报文头210包括诸如目的地标识符225之类的信息,互连130可以使用该信息来将报文200传送到一个或多个目的地设备。在一个实施例中,目的地标识符225可以位于报文头的不同位置。所示的位置位于或靠近报文头的末端,但是在另外的实施例中或在不同***的实施方式中也可以靠近报文头的中间或开始。在一个实施例中,报文头的从开始到包括目的地标识符225的部分称为必要的报文头长度。在一些实施例中,必要的报文头长度可以包括整个报文头,或者可以刚好足够长以确保目的地标识符225包括在将报文头传送到互连130的传送中。
图3是图1***的操作流程框图300。在310处,将源机器示为应用程序/VM/容器。应用程序/VM/容器310具有以图2所示的一个或多个报文200的形式传送的数据。在315处,执行(必要报文头长度的)部分DMA以向互连325传送部分报文头数据。互连325解析报文头210以获得目的地标识符225(见图2)并确定将分组200路由到何处。在330处,用描述有效载荷的直接内存访问路径的路由信息扩充的报文头可传送到335处的目的地应用程序/VM/容器,以发起有效载荷220的DMA。传送到335处的目的地应用程序/VM/容器的传送也可以是DMA类型的传送。应用程序/VM/容器335使用从报文头DMA获得的报文头来通过进一步的DMA操作直接从应用程序/VM/容器310中获得有效载荷220。由于报文头210通常比有效载荷220短得多,因此主机和机器之间的报文头的初始部分DMA比多次DMA整个报文的现有方法使用更少的计算资源。
图4是包括耦合到多个应用程序/VM/容器415、420的虚拟交换机410的***400的框图。***400包括虚拟网络功能(virtual network function,VNF),以允许通过网络或虚拟网络传送数据。在一个实施例中,应用程序/VM/容器包括用于在虚拟机上运行隔离操作***或容器的Linux容器(container)。
应用程序/VM/容器415和420可以包括在425、430处指示的虚拟网络接口卡(virtual network interface card,VNIC),以耦合到虚拟交换机410的端口,其中将端口指示为小矩形432。在一个实施例中,网络加速器435可以耦合到虚拟交换机410以提供快速数据路径。该加速器435还可以耦合到交换机440,交换机440又可以耦合到物理网络450,例如数据中心或因特网。虚拟交换机410可以在也称为主机的服务器上操作,该服务器还可以包括加速器435和交换机440。在一个实施例中,虚拟交换机410可以是在主机上执行的基于软件的交换机。主机可以直接在服务器上运行,或者可以是由运行在服务器上的管理程序管理的虚拟主机。
在一个实施例中,虚拟交换机410可以接收将报文从一个应用程序/VM/容器415转发到另一个应用程序/VM/容器420的请求,或者在一些实施例中,转发到通过物理网络450耦合的另一个设备。该请求可以包括虚拟机415中的报文的地址,或者指定当交换机准备好开始转发报文的过程时可以在何处找到该地址。
在一个实施例中,虚拟交换机或主机软件将知道用于报文解析和转发的协议。这样的知识允许在元数据中配置报文转发决策长度,也称为“必要报文头长度”(necessaryheader length,NHL),其可以与加速器435交换。加速器435读取NHL并且仅通过部分直接内存访问455或复制功能获得目标报文的指定长度,以从应用程序/VM/容器415的存储器获得NHL。部分直接内存访问可以获得填充到报文的字对齐长度中的报文头的一部分。使用与报文头的该部分相对应的报文的所检索的部分,虚拟交换机410在460处解析所检索的部分,并在465处将其提供给目的地应用程序/VM/容器420。随后,执行第二有效载荷DMA/复制470以将有效载荷直接DMA到目的地址(或仅丢弃报文)。
部分延迟报文访问可以大大降低总线的利用率,例如快捷***部件互连标准(peripheral component interconnect express,PCI-E)总线。与整个分组的完整的DMA相比,部分DMA报文的通信负载显著降低。此外,可以避免等待DMA整个报文的等待时间。
第二DMA470可在解析460的转发决策之后完成,因此DMA可将有效载荷直接移动到由报文头的第一部分DMA确定的目的地址。目的地址可以是另一个***存储器。可以极大地节约加速器435上的缓冲资源,并且可以提高性能。
可以在虚拟交换机410和虚拟NIC425或430之间使用相同的方法,其中可以遵循相同的机制来部分延迟从前端DMA/复制数据。
图5是报文转发方法500的流程图。在一个实施例中,在步骤510,通过互连执行报文的部分直接内存访问,以获得报文头的报文头数据。部分直接内存访问获得报文头的至少一部分,包括标识报文的目的地的目的地标识符。在步骤520,报文头数据用于生成标识报文目的地址的报文转发决策。该互连使用所获得的报文头数据的部分来生成报文转发决策。在步骤530,由互连向报文目的地址发起报文有效载荷的直接内存访问。在一些示例中,互连既发起有效载荷DMA操作,又随后执行有效载荷DMA操作。或者,互连发起有效载荷DMA操作,且另一设备、组件或应用程序执行有效载荷DMA操作。
在一个实施例中,报文转发决策长度确定在部分直接内存访问操作中要获得的报文头的量。获得报文转发决策长度,并将其用于确定通过部分直接内存访问获得的数据量。报文转发决策长度可以作为元数据获得,例如从主机或类似设备或***获得。可以将报文的部分直接内存访问填充到报文的字对齐长度中。在一些实施例中,互连可以是报文交换机。在一些实施例中,互连可以是报文交换机硬件加速器。
在一个实施例中,报文交换机包括虚拟交换机和虚拟网络接口卡。在另一个实施例中,部分直接内存访问包括在报文交换机处接收用于转发报文的请求。可以基于使交换机能够发起部分直接内存访问的请求来获得报文的地址。
图6是示例实施例提供的用于实现算法并执行包括虚拟交换在内的操作的客户端、服务器、主机或云资源的电路的框图。在各种实施例中不需要使用所有组件。
呈计算机600形式的一个示例计算设备可包括处理单元602、存储器603、可移动存储器610和不可移动存储器612。在一些实施例中,存储器603可用于提供报文缓冲器,该报文缓冲器可用于接收部分和/或全部DMA的。虽然将示例计算设备图示并描述为计算机600,但该计算设备在不同实施例中可呈不同形式。例如,计算设备或者也可以为智能电话、平板电脑、智能手表或能够执行软件交换机并且包括与图6示出和描述相同或相似部件的其它计算设备。诸如智能电话、图形输入板和智能手表之类的设备通常统称为移动设备或用户设备。此外,虽然将各种数据存储部件示为计算机600的一部分,但是存储器还可以或可替换地包括可通过网络访问的基于云的存储器,诸如基于因特网或服务器的存储器。
存储器603可以包括易失性存储器614和/或非易失性存储器608。计算机600可包括或能够接入包括多种计算机可读介质的计算环境,该计算机可读介质例如易失性存储器614和非易失性存储器608、可移动存储器610和不可移动存储器612。计算机存储器包括随机存取存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read-only memory,EPROM)和电可擦除可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、快闪存储器或其它存储器技术、压缩光盘只读存储器(compact disc read-only memory,CDROM)、数字通用光盘(digital versatile disks,DVD)或其它光盘存储器、磁带盒、磁带、磁盘存储器或其它磁性存储设备,或能够存储计算机可读指令的任何其它介质。
计算机600可包括或能够接入包括输入606、输出604和通信连接616的计算环境。输出604可包括也可用作输入设备的显示设备,例如触摸屏。输入606可包括触摸屏、触摸板、鼠标、键盘、相机、一个或多个设备专用按钮、集成在计算机600内或通过有线或无线数据连接耦合到计算机600的一个或多个传感器和其它输入设备中的一个或多个。计算机可使用通信连接连接到一或多个远程计算机(例如数据库服务器)来在联网环境中操作。远程计算机可包括个人计算机(personal computer,PC)、服务器、路由器、网络PC、对等装置或其它共同网络节点,等等。通信连接可包括局域网(local area network,LAN)、广域网(wide area network,WAN)、蜂窝网、WiFi、蓝牙或其它网络。
存储在计算机可读介质(即,程序618)上的计算机可读指令可由计算机600的处理单元602执行,以在不同实施例中的这些DMA中涉及的各种组件中执行上述部分和全部的DMA。术语“计算机可读介质和存储设备”不包括载波,在某种程度上,人们认为载波过于短暂。存储器还可以包括诸如在620处指示的存储区域网络(storage area network,SAN)之类的联网存储器。
示例:
1.在示例1中,一种方法包括互连,该互连执行报文的部分直接内存访问以获得报文头的报文头数据,该互连使用该报文头数据来生成标识报文目的地址的报文转发决策,并且该互连向该报文目的地址发起报文有效载荷的直接内存访问。
2.根据示例1的方法,该方法还包括预备操作:获得与报文头的量相对应的报文转发决策长度,以在部分直接内存访问中获得。
3.根据示例2的方法,报文转发决策长度是从元数据推导的。
4.根据示例2的方法,将报文的部分直接内存访问填充到报文的字对齐长度中。
5.根据示例1-4中任一项的方法,转发决策是通过包括报文交换机硬件加速器的报文交换机生成的。
6.根据示例1-5中任一项的方法,转发决策是通过包括虚拟交换机和虚拟网络接口卡的报文交换机生成的。
7.根据示例1-6中任一项的方法,该方法还包括接收用于转发该报文的请求。
8.根据示例7的方法,该方法还包括基于该请求获得该报文的目的地址。
9.在示例9中,一种非暂时性计算机可读存储设备上存储有用于由主机执行以执行以下操作的指令。该操作包括:向互连执行报文的部分直接内存访问,以获得报文头的报文头数据;使用该报文头数据生成标识报文目的地址的报文转发决策;以及向报文目的地址发起报文有效载荷的直接内存访问。
10.示例9的计算机可读存储设备还包括:获得与该报文头的量相对应的报文转发决策长度,以在该部分直接内存访问中获得。
11.根据示例10的计算机可读存储设备,其中报文转发决策长度是作为元数据获得的。
12.根据示例10的计算机可读存储设备,其中将该报文的部分直接内存访问填充到该报文的字对齐长度中。
13.根据示例9-12中任一项的计算机可读存储设备,其中生成标识报文目的地址的报文转发决策是由报文交换机硬件加速器执行的。
14.根据示例9-13中任一项的计算机可读存储设备,其中该互连包括虚拟交换机和虚拟网络接口卡。
15.在示例15中,一种***包括处理电路和具有耦合到该处理电路的报文缓冲器的存储设备。在一些实施例中,存储设备可以包括报文缓冲器。该处理电路用于执行以下操作,包括:执行报文的部分直接内存访问以获得报文头的报文头数据;使用该报文头数据来生成标识报文目的地址的报文转发决策;以及向该报文目的地址发起报文有效载荷的直接内存访问。
16.根据示例15的***,该操作还包括获得与报文头的量相对应的报文转发决策长度,以在该部分直接内存访问中获得。其中,将该报文转发决策长度作为元数据获得,并且其中,将该报文的部分直接内存访问填充到该报文的字对齐长度中。
17.根据示例15-16中任一项的***,该***还包括执行该报文转发决策操作的报文交换机加速器。
18.根据示例15-17中任一项的***,其中与存储在存储设备上的代码组合的处理电路包括虚拟交换机和虚拟网络接口卡。
19.根据示例15-18中任一项的***,其中该操作还包括在报文交换机处接收用于转发报文的请求。
20.根据示例19的***,其中该操作还包括基于请求获得报文的地址。
尽管上文已详细描述若干实施例,但是其它修改也是可能的。例如,图式中所描述的逻辑流程不需要按所示出的特定次序或先后次序来达到所需结果。可以提供其它步骤,或可以从所描述的流程中除去步骤,并且可以向所描述的***添加其它组件或从该***去除其它组件。其它实施例可在所附权利要求书的范围内。

Claims (20)

1.一种方法,其特征在于,包括:
一互连执行对一个报文的部分直接内存访问,以获得一报文头的报文头数据;
所述互连使用所述报文头数据来生成报文转发决策,所述报文转发决策用于标识一个报文目的地址;以及
所述互连对所述报文目的地址发起一报文有效载荷的直接内存访问。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括预备操作:获得报文转发决策长度,所述报文转发决策长度与将在所述部分直接内存访问中获得的所述报文头的量相对应。获得报文转发决策长度,所述报文转发决策长度与将在所述部分直接内存访问中获得的所述报文头的量相对应。
3.根据权利要求2所述的方法,其特征在于,所述报文转发决策长度是从元数据推导的。
4.根据权利要求2所述的方法,其特征在于,所述报文的部分直接内存访问被填充在所述报文的字对齐长度中。
5.根据权利要求1所述的方法,其特征在于,所述报文转发决策是通过报文交换机生成的,所述报文交换机中包括报文交换机硬件加速器。
6.根据权利要求1所述的方法,其特征在于,所述报文转发决策是通过报文交换机生成的,所述报文交换机包括虚拟交换机和虚拟网络接口卡。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括接收用于转发所述报文的请求。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括基于所述请求获得所述报文的所述目的地址。
9.一种非暂时性计算机可读存储设备,其特征在于,所述非暂时性计算机可读存储设备上存储有用于由主机执行以执行以下操作的指令,所述操作包括:
向一互连执行对一个报文的部分直接内存访问,以获得报文头的报文头数据;
使用所述报文头数据生成报文转发决策,所述报文转发决策用于标识报文目的地址;以及
向所述报文目的地址发起报文有效载荷的直接内存访问。
10.根据权利要求9所述的计算机可读存储设备,其特征在于,所述计算机可读存储设备还包括:获得报文转发决策长度,所述报文转发决策长度与将在所述部分直接内存访问中获得的所述报文头的量相对应。
11.根据权利要求10所述的计算机可读存储设备,其特征在于,所述报文转发决策长度是作为元数据获得的。
12.根据权利要求10所述的计算机可读存储设备,其特征在于,所述报文的部分直接内存访问被填充在所述报文的字对齐长度中。
13.根据权利要求9任一所述的计算机可读存储设备,其特征在于,生成用于标识报文目的地址的报文转发决策是由报文交换机硬件加速器执行的。
14.根据权利要求9任一所述的计算机可读存储设备,其特征在于,所述互连包括虚拟交换机和虚拟网络接口卡。
15.一种***,其特征在于,包括:
处理电路;和
存储设备,所述存储设备具有耦合到所述处理电路的报文缓冲器,所述处理电路用于执行以下操作:
执行一报文的部分直接内存访问以获得报文头的报文头数据;
使用所述报文头数据来生成标识报文目的地址的报文转发决策;以及
向所述报文目的地址发起报文有效载荷的直接内存访问。
16.根据权利要求15所述的***,其特征在于,所述操作还包括获得报文转发决策长度,所述报文转发决策长度与将在所述部分直接内存访问中获得的所述报文头的量相对应。其中所述报文转发决策长度是作为元数据获得的,并且其中,所述报文的所述部分直接内存访问被填充在所述报文的字对齐长度中。
17.根据权利要求15所述的***,其特征在于,所述***还包括执行所述报文转发决策操作的报文交换机加速器。
18.根据权利要求15所述的***,其特征在于,与存储在所述存储设备上的代码组合的所述处理电路包括虚拟交换机和虚拟网络接口卡。
19.根据权利要求15所述的***,其特征在于,所述操作还包括在所述报文交换机处接收用于转发所述报文的请求。
20.根据权利要求19所述的***,其特征在于,所述操作还包括基于所述请求获得所述报文的地址。
CN201780040946.2A 2016-06-30 2017-06-27 一种通过部分直接内存访问dma访问内存的方法和*** Active CN109417507B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/199,373 2016-06-30
US15/199,373 US10554548B2 (en) 2016-06-30 2016-06-30 Partially deferred packet access
PCT/CN2017/090293 WO2018001239A1 (en) 2016-06-30 2017-06-27 Partially deferred packet access

Publications (2)

Publication Number Publication Date
CN109417507A true CN109417507A (zh) 2019-03-01
CN109417507B CN109417507B (zh) 2021-06-15

Family

ID=60785945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780040946.2A Active CN109417507B (zh) 2016-06-30 2017-06-27 一种通过部分直接内存访问dma访问内存的方法和***

Country Status (3)

Country Link
US (1) US10554548B2 (zh)
CN (1) CN109417507B (zh)
WO (1) WO2018001239A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113285877A (zh) * 2020-02-20 2021-08-20 华为技术有限公司 一种报文转发的控制方法及相关装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107615244B (zh) * 2015-06-26 2021-07-13 英特尔公司 在虚拟机上运行一个或多个容器的技术
US10554548B2 (en) 2016-06-30 2020-02-04 Futurewei Technologies, Inc. Partially deferred packet access

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615282B1 (en) * 1999-05-21 2003-09-02 Intel Corporation Adaptive messaging
US20060221953A1 (en) * 2005-04-01 2006-10-05 Claude Basso Method and apparatus for blind checksum and correction for network transmissions
US20080240103A1 (en) * 2007-03-30 2008-10-02 Andreas Schmidt Three-port ethernet switch with external buffer
US7764676B1 (en) * 2006-07-31 2010-07-27 Qlogic, Corporation Method and system for processing network information
US20110153875A1 (en) * 2009-12-18 2011-06-23 Plx Technology, Inc. Opportunistic dma header insertion
CN103595694A (zh) * 2012-08-14 2014-02-19 腾讯科技(深圳)有限公司 流媒体播放方法和***、内存服务器
CN103914424A (zh) * 2014-04-14 2014-07-09 中国人民解放军国防科学技术大学 基于gpio接口的lpc外设扩展方法及装置
CN104050143A (zh) * 2013-03-14 2014-09-17 阿尔特拉公司 向混合可编程多核器件映射网络应用
CN104394099A (zh) * 2014-12-08 2015-03-04 福建星网锐捷网络有限公司 一种报文传输方法及装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060022195A1 (en) * 2004-08-01 2006-02-02 Kun-Chih Wang Scribe line structure
US10291647B2 (en) * 2015-04-27 2019-05-14 The Johns Hopkins University Apparatus and method for enabling safe handling of malware
US10554548B2 (en) 2016-06-30 2020-02-04 Futurewei Technologies, Inc. Partially deferred packet access

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615282B1 (en) * 1999-05-21 2003-09-02 Intel Corporation Adaptive messaging
US20060221953A1 (en) * 2005-04-01 2006-10-05 Claude Basso Method and apparatus for blind checksum and correction for network transmissions
US7764676B1 (en) * 2006-07-31 2010-07-27 Qlogic, Corporation Method and system for processing network information
US20080240103A1 (en) * 2007-03-30 2008-10-02 Andreas Schmidt Three-port ethernet switch with external buffer
US20110153875A1 (en) * 2009-12-18 2011-06-23 Plx Technology, Inc. Opportunistic dma header insertion
CN103595694A (zh) * 2012-08-14 2014-02-19 腾讯科技(深圳)有限公司 流媒体播放方法和***、内存服务器
CN104050143A (zh) * 2013-03-14 2014-09-17 阿尔特拉公司 向混合可编程多核器件映射网络应用
CN103914424A (zh) * 2014-04-14 2014-07-09 中国人民解放军国防科学技术大学 基于gpio接口的lpc外设扩展方法及装置
CN104394099A (zh) * 2014-12-08 2015-03-04 福建星网锐捷网络有限公司 一种报文传输方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113285877A (zh) * 2020-02-20 2021-08-20 华为技术有限公司 一种报文转发的控制方法及相关装置

Also Published As

Publication number Publication date
CN109417507B (zh) 2021-06-15
WO2018001239A1 (en) 2018-01-04
US20180006936A1 (en) 2018-01-04
US10554548B2 (en) 2020-02-04

Similar Documents

Publication Publication Date Title
US10587544B2 (en) Message processing method, processing server, terminal, and storage medium
CN113326228B (zh) 基于远程直接数据存储的报文转发方法、装置及设备
CN111224839B (zh) 一种带内网络遥测功能的验证方法、装置、存储介质及电子设备
US8571848B2 (en) System and method of network emlation for test of on-line server processing heavy traffic
WO2016101288A1 (zh) 一种远程直接数据存取方法、设备和***
US11095716B2 (en) Data replication for a virtual networking system
WO2015069550A2 (en) Method for increasing layer-3 longest prefix match scale
CN106020926B (zh) 一种用于虚拟交换机技术中数据传输的方法及装置
CN110661725A (zh) 用于对出口上的网络分组进行重排序的技术
US11064021B2 (en) Method, device and computer program product for managing network system
CN105389120B (zh) 支持通过活动消息的rma api
KR20130111531A (ko) 운송수단과 원격 애플리케이션 서버 간의 통신을 위한 방법 및 시스템
CN108650295A (zh) 协议报文跨层通信方法装置及电子设备
CN110389711B (zh) 帮助端点设备实现sr-iov功能的方法、设备和非瞬态计算机可读介质
WO2021063160A1 (zh) 访问固态硬盘的方法及存储设备
CN106603409B (zh) 一种数据处理***、方法及设备
CN105141603A (zh) 通信数据传输方法及***
CN111026324B (zh) 转发表项的更新方法及装置
CN109417507A (zh) 部分延迟的报文访问
WO2019033891A1 (zh) 一种基于rdma的网络流量确定方法及装置
CN108460044B (zh) 数据的处理方法和装置
CN105472054B (zh) 一种报文发送方法及接入设备
CN110958216B (zh) 安全的在线网络分组传输
CN104917800A (zh) 建立用于虚拟机的冗余连接的方法及装置
CN108353017A (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