CN102439983A - 一种数据快速分发方法和装置 - Google Patents
一种数据快速分发方法和装置 Download PDFInfo
- Publication number
- CN102439983A CN102439983A CN2011800021939A CN201180002193A CN102439983A CN 102439983 A CN102439983 A CN 102439983A CN 2011800021939 A CN2011800021939 A CN 2011800021939A CN 201180002193 A CN201180002193 A CN 201180002193A CN 102439983 A CN102439983 A CN 102439983A
- Authority
- CN
- China
- Prior art keywords
- data
- user
- request
- network interface
- interface controller
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000012856 packing Methods 0.000 claims description 82
- 238000012545 processing Methods 0.000 claims description 75
- 230000005540 biological transmission Effects 0.000 claims description 29
- 238000013500 data storage Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 7
- 238000000151 deposition Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 3
- 230000009365 direct transmission Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0209—Architectural arrangements, e.g. perimeter networks or demilitarized zones
- H04L63/0218—Distributed architectures, e.g. distributed firewalls
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3808—Network interface controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供一种数据快速分发方法和装置,以减少中央处理器和内存的参与,提高系统性能。所述方法包括:中央处理器将数据描述信息发送至快速转发模块,所述数据描述信息包括用户请求的数据的存储地址和长度信息;所述快速转发模块根据所述数据描述信息读取所述用户请求的数据后转发至所述网络接口控制器;所述网络接口控制器向用户发送所述用户请求的数据。与现有技术相比,本发明实施例提供的方法在业务增加后(例如,需要扩大现有的网卡带宽和存储容量),只需要增加网络接口控制器和存储设备的设备,而不需要增加内存和中央处理器的成本,一来可以减少对内存和中央处理器的使用,提高整个系统的性能,二来也减少了内存墙的问题。
Description
技术领域
本发明涉及通信领域,尤其涉及一种数据快速分发方法和装置。
背景技术
互联网应用现在已经进入Web2.0时代,用户的实际感受已经是用户选择业务的第一选择。为了解决时延导致用户感受的问题,提供大量的快速访问设计,满足用户良好的感受体验,几乎所有的互联网公司都在实施加速设计,其中,内容分发网络(Content Delivery Network,CDN)中的高速缓冲(Cache)设计尤其突出。在CDN中,每一个Cache都是一个中间设备,提供高速缓冲功能。
以CDN产品业务中的视频点播业务为例,现有技术提供的视频点播业务加速解决方案如附图1(带箭头的线条表示信息或数据流动的方向,线条旁的序号表示顺序关系)所示:用户的请求从网口,即网络接口控制器(NetworkInterface Controller,NIC)进入,中央处理单元(Central Processing Unit,CPU)收到请求后,读取存储设备(Storage)的数据到内存(Memory),并发送给NIC,通过NIC发送至客户端(Client)。在这种方案中,设备提供快速的闪存(Flash)和网络,针对热点的数据,提供高速缓冲(Cache)。如果存储设备中暂时没有用户请求的视频数据,则会通过NIC发送给其它可以提供用户请求的视频数据的设备,通过NIC将用户请求的视频数据取回,再发送给客户端(Client);为了便于下次满足用户的请求,在将从其他设备取回的视频数据发送给客户端的同时或之后,将该视频数据存储到本地存储设备(Storage)。
上述现有技术的缺陷在于:所有的视频数据都必须过一次内存和CPU,CPU的工作就是搬移数据,进行分发,无法做到数据面和控制面的分离;对于CDN流,在高并发情况下,CPU使用率非常高,会带来明显的性能瓶颈。
发明内容
本发明实施例提供一种数据快速分发方法和装置,以减少中央处理器和内存的参与,提高系统性能。
本发明实施例提供一种数据快速分发方法包括:
中央处理器将数据描述信息发送至快速转发模块,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
所述快速转发模块根据所述数据描述信息读取所述用户请求的数据后转发至所述网络接口控制器;
所述网络接口控制器向用户发送所述用户请求的数据。
本发明另一实施例提供一种数据快速分发方法包括:
接收中央处理器发送的数据描述信息,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至网络接口控制器,由所述网络接口控制器向用户发送所述用户所请求的数据。
本发明实施例提供一种数据快速分发系统,所述系统包括中央处理器、网络接口控制器和快速转发模块;
所述中央处理器,用于将数据描述信息发送至快速转发模块,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
所述快速转发模块,用于根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器;
所述网络接口控制器,用于向用户发送所述用户请求的数据。
本发明实施例提供一种数据快速分发装置,所述装置包括接收模块和数据读取模块;
所述接收模块,用于接收中央处理器发送的数据描述信息,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
所述数据读取模块,用于根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至网络接口控制器,以由所述网络接口控制器向用户发送所述用户所请求的数据。
从上述本发明实施例可知,由于网络接口控制器是将存储地址和长度信息发送给快速转发模块,快速转发模块在读取所述用户请求的数据后转发至所述网络接口控制器,由所述网络接口控制器发送所述用户请求的数据,整个数据的传输过程通过网络接口控制器和存储设备之间的独立、直接通道完成,没有经过中央处理器和内存,只需要中央处理器配置传输描述符,不需要中央处理器去拷贝数据。因此,与现有技术相比,本发明实施例提供的方法在业务增加后(例如,需要扩大现有的网卡带宽和存储容量),只需要增加网络接口控制器和存储设备的设备,而不需要增加内存和中央处理器的成本,一来可以减少对内存和中央处理器的使用,提高整个系统的性能,二来也减少了内存墙的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对现有技术或实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,还可以如这些附图获得其他的附图。
图1是现有技术提供的视频点播业务加速解决方案示意图;
图2是本发明实施例提供的数据快速分发方法流程示意图;
图3是本发明实施例提供的传输描述符结构示意图;
图4是本发明实施例提供的数据快速分发系统结构示意图;
图5是本发明另一实施例提供的数据快速分发系统结构示意图;
图6是本发明另一实施例提供的数据快速分发系统结构示意图;
图7是本发明另一实施例提供的数据快速分发系统结构示意图;
图8是本发明另一实施例提供的数据快速分发系统结构示意图;
图9是本发明另一实施例提供的数据快速分发系统结构示意图;
图10是本发明实施例提供的数据快速分发装置结构示意图;
图11是本发明另一实施例提供的数据快速分发装置结构示意图;
图12是本发明另一实施例提供的数据快速分发装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员所获得的所有其他实施例,都属于本发明保护的范围。
请参阅附图2,是本发明实施例提供的数据快速分发方法流程示意图,主要包括步骤:
S201,中央处理器将数据描述信息发送至快速转发模块,所述数据描述信息包括用户请求的数据的存储地址和长度信息。
在本发明提供的实施例中,快速转发模块是嵌入到PCI-Switch或者嵌入到网络接口控制器NIC中的一个功能模块,提供直接发送和接收功能。该功能模块通过CPU配置后,可以去读取存储设备或内存中的数据,发送到网络接口控制器NIC上,完成直接内存访问(Direct Memory Access,DMA)发送,即,快速转发模块是以DMA方式读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
一般情况下,网络接口控制器NIC在内存中有一块对应的数据描述信息。中央处理器如果需要发送数据的时候,会通过配置数据描述信息,例如,传输描述符(Transmit Desriptor)。此时网络接口控制器NIC获取到需要发送数据,则通知内部的DMA模块,根据传输描述符(Transmit Desriptor)中的缓存地址(Buffer Address)字段和长度(Length)字段,去相应的地址取数据,进行发送。每一个发送的数据都需要配置传输描述符(Transmit Desriptor),配置一个发一个。
如果发送的数据是一块连续的数据或者是中央处理器可预知的数据这种固定的流,中央处理器通过配置快速转发模块,网络接口控制器NIC直接把数据发送到存储设备(Storage)进行存储;也可以直接从存储设备(Storage)把数据直接发到网络接口控制器NIC出去,完成网络接口控制器NIC到存储设备(Storage)和存储设备(Storage)到网络接口控制器NIC的DMA操作,并且不占用PCI-Switch和中央处理器之间的带宽。
因此,在本发明实施例中,数据的传输不需要中央处理器去干预,只需要中央处理器配置数据描述信息;也不需要中央处理器去拷贝数据和因为拷贝数据导致对内存资源的消耗。
一个用户链接建立时就被分配了一个打包模式标识(Package ID)给该用户,并根据用户的回应的报文格式将打包模式标识下发至快速转发模块。在本发明实施例中,Package ID与打包模式对应,位于快速转发模块的打包列表(packagelist)中,这个表项目主要是一个报文格式定义,即IP头格式的内容。当后续从存储设备取到数据时,按照报文格式定义的格式将数据填充进去就可以直接发送使用。
当用户请求数据时,中央处理器通过网络接口控制器NIC收到用户发送的请求,这些请求中携带了用户请求的数据的存储地址和长度等信息。中央处理器将用户请求的数据的存储地址和长度等信息发送至网络接口控制器NIC,以便触发网络接口控制器NIC的DMA模块取用户请求的数据。
作为本发明一个实施例,中央处理器可以配置数据描述信息,例如,传输描述符(Transmit Desriptor),将所述用户请求的数据的存储地址和长度信息携带在所述数据描述信息中;除此之外,中央处理器在配置数据描述信息时,还可以将打包模式标识和打包选择标识携带在所述数据描述信息中,所述打包模式标识与所述请求数据的用户对应,所述打包选择标识用于标识是否需要对所述用户请求的数据进行打包。中央处理器将所述数据描述信息发送至网络接口控制器,由所述网络接口控制器将所述数据描述信息转发至所述快速转发模块。
本发明实施例提供的传输描述符(Transmit Desriptor)的格式如附图3所示,其中:
内存选择(Memory Select)标识字段表示是从内存(Memory)还是存储设备(Storage)读取存放的数据,可用1位(bit)二进制表示,例如,该字段是“1”表示是从内存(Memory)读取存放的数据,该字段是“0”表示是从存储设备(Storage)读取存放的数据,或者反之,该字段是“0”表示是从内存(Memory)读取存放的数据,该字段是“1”表示是从是从存储设备(Storage)读取存放的数据;
打包选择标识(Package Select)字段表示是否需要快速转发模块对读取到的数据进行打包或封装;
打包模式标识(Package ID)字段表示使用何种打包或封装模式,该字段也与请求数据的用户对应;
缓存地址(Buffer Address)字段表示用户请求的数据的存储地址,用户请求的数据的存储地址由用户请求数据时发送的请求提供;
长度(Length)字段表示用户请求的数据的长度;
传输描述符(Transmit Desriptor)还包括其他控制字段,不做赘述。
S202,快速转发模块根据数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
快速转发模块根据网络接口控制器的DMA模块传送过来的用户请求的数据的缓存地址、长度信息、打包选择标识和内存选择标识等数据描述信息(例如,传输描述符)读取所述用户请求的数据
具体地,快速转发模块可以根据所述数据描述信息包含的信息,例如,缓存地址、长度信息等,读取所述用户请求的数据后,进一步通过传输描述符(Transmit Desriptor)中的打包选择标识(Package Select)字段判断是否需要对所述用户请求的数据进行打包,若需要对所述用户请求的数据进行打包,则对所述用户请求的数据进行打包后转发至所述网络接口控制器。例如,快速转发模块可以根据传输描述符(Transmit Desriptor)中的打包模式标识对应的打包模式,对所述用户请求的数据进行打包后转发至所述网络接口控制器。
再如,快速转发模块也可以通过所述内存选择标识判断是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;若判断是从存储设备读取所述用户请求的数据,则从所述存储设备读取所述用户请求的数据后转发至所述网络接口控制器,否则,从所述内存读取所述用户请求的数据后转发至所述网络接口控制器。
S203,所述网络接口控制器向用户发送所述用户请求的数据。
从上述本发明实施例可知,由于中央处理器是将存储地址和长度信息发送给快速转发模块,快速转发模块在读取所述用户请求的数据后转发至所述网络接口控制器,由所述网络接口控制器发送所述用户请求的数据,整个数据的传输过程通过网络接口控制器和存储设备之间的独立、直接通道完成,没有经过中央处理器和内存,只需要中央处理器配置数据描述信息,不需要中央处理器去拷贝数据。因此,与现有技术相比,本发明实施例提供的方法在业务增加后(例如,需要扩大现有的网卡带宽和存储容量),只需要增加网络接口控制器和存储设备的设备,而不需要增加内存和中央处理器的成本,一来可以减少对内存和中央处理器的使用,提高整个系统的性能,二来也减少了内存墙的问题。
请参阅附图4,是本发明实施例提供的数据快速分发方法流程示意图,本实施例的执行主体可以是附图2示例的数据快速分发方法中快速转发模块,附图4示例主要包括步骤:
S401,接收中央处理器发送的数据描述信息,所述数据描述信息包括用户请求的数据的存储地址和长度信息。
当用户请求数据时,中央处理器通过网络接口控制器NIC收到用户发送的请求,这些请求中携带了用户请求的数据的存储地址和长度等信息。中央处理器将用户请求的数据的存储地址和长度等信息发送至网络接口控制器NIC,以便触发网络接口控制器NIC的DMA模块取用户请求的数据。
作为本发明一个实施例,中央处理器可以配置数据描述信息,例如,传输描述符(Transmit Desriptor),将所述用户请求的数据的存储地址和长度信息携带在所述数据描述信息中;除此之外,中央处理器在配置数据描述信息时,还可以将打包模式标识和打包选择标识携带在所述数据描述信息中,所述打包模式标识与所述请求数据的用户对应,所述打包选择标识用于标识是否需要对所述用户请求的数据进行打包。传输描述符的具体格式如附图3所示,具体含义可参阅前述实施例的相关文字说明。
中央处理器将数据描述信息发送至网络接口控制器,快速转发模块接收由所述网络接口控制器转发的所述数据描述信息。
S402,根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至网络接口控制器,以便由所述网络接口控制器向用户发送所述用户所请求的数据。
快速转发模块根据网络接口控制器的DMA模块传送过来的用户请求的数据的缓存地址、长度信息、打包选择标识和内存选择标识等数据描述信息(例如,传输描述符)读取所述用户请求的数据
具体地,快速转发模块可以根据所述数据描述信息,例如,缓存地址、长度信息,读取所述用户请求的数据后,进一步通过传输描述符(TransmitDesriptor)中的打包选择标识(Package Select)字段判断是否需要对所述用户请求的数据进行打包,若需要对所述用户请求的数据进行打包,则对所述用户请求的数据进行打包后转发至所述网络接口控制器。例如,快速转发模块可以根据传输描述符(Transmit Desriptor)中的打包模式标识对应的打包模式,对所述用户请求的数据进行打包后转发至所述网络接口控制器。
再如,快速转发模块也可以通过所述内存选择标识判断是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;若判断是从存储设备读取所述用户请求的数据,则从所述存储设备读取所述用户请求的数据后转发至所述网络接口控制器,否则,从所述内存读取所述用户请求的数据后转发至所述网络接口控制器。
需要说明的是,本实施例的快速转发模块是嵌入到PCI-Switch或者嵌入到网络接口控制器NIC中的一个功能模块,提供直接发送和接收功能。该功能模块通过中央处理器配置后,可以去读取存储设备(Storage)或内存中的数据,发送到网络接口控制器NIC上,完成直接内存访问(Direct Memory Access,DMA)发送,即,快速转发模块是以DMA方式读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
请参阅附图5,本发明实施例提供的数据快速分发系统结构示意图。为了便于说明,仅仅示出了与本发明实施例相关的部分,其中包含的功能模块/单元可以是软件模块/单元、硬件模块/单元或软硬件相结合模块/单元(本说明书提供的各个实施例都可应用这一描述原则)。图5示例的数据快速分发系统包括中央处理器501、快速转发模块502和网络接口控制器503,其中:
中央处理器501,用于将数据描述信息发送至快速转发模块502,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
快速转发模块502,用于根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器503;
网络接口控制器503,用于向用户发送所述用户请求的数据。一个用户链接建立时就被分配了一个打包模式标识(Package ID)给该用户,并根据用户的回应的报文格式将打包模式标识下发至快速转发模块。在本发明实施例中,Package ID与打包模式对应,位于快速转发模块的打包列表(packagelist)中,这个表项目主要是一个报文格式定义,即IP头格式的内容。当后续从存储设备取到数据时,按照报文格式定义的格式将数据填充进去就可以直接发送使用。
当用户请求数据时,中央处理器501通过网络接口控制器503收到用户发送的请求,这些请求中携带了用户请求的数据的存储地址和长度等信息。中央处理器501将用户请求的数据的存储地址和长度等信息发送至网络接口控制器503,以便触发网络接口控制器503的DMA模块取用户请求的数据。
如附图6所示本发明另一实施例提供的数据快速分发系统,中央处理器501可以包括配置单元601和发送单元602,其中:
配置单元601用于配置数据描述信息,例如,传输描述符(TransmitDesriptor),如附图3所示,将所述用户请求的数据的存储地址和长度信息携带在所述数据描述信息中;除此之外,配置单元601在配置数据描述信息时,还可以将打包模式标识、打包选择标识和内存选择标识携带在所述数据描述信息中,所述打包模式标识与所述请求数据的用户对应,所述打包选择标识用于标识是否需要对所述用户请求的数据进行打包,所述内存选择标识用于标识是从内存(Memory)还是存储设备(Storage)读取存放的数据。
发送单元602用于将所述数据描述信息发送至网络接口控制器503,由所述网络接口控制器503将所述数据描述信息转发至所述快速转发模块502。
在本发明提供的实施例中,快速转发模块502是嵌入到PCI-Switch或者嵌入到网络接口控制器503中的一个功能模块,提供直接发送和接收功能。该功能模块通过中央处理器501配置后,可以去读取存储设备或内存中的数据,发送到网络接口控制器NIC上,完成DMA发送,即,快速转发模块502是以DMA方式读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
一般情况下,网络接口控制器503在内存中有一块对应的传输描述符(Transmit Desriptor)链表。中央处理器501如果需要发送数据的时候,会通过配置传输描述符(Transmit Desriptor)。此时网络接口控制器503获取到需要发送数据,则通知内部的DMA模块,根据传输描述符(Transmit Desriptor)中的缓存地址(Buffer Address)字段和长度(Length)字段,去相应的地址取数据,进行发送。每一个发送的数据都需要配置传输描述符(Transmit Desriptor),配置一个发一个。
如果发送的数据是一块连续的数据或者是中央处理器501可预知的数据这种固定的流,中央处理器501通过配置快速转发模块,网络接口控制器503NIC直接将数据发送到存储设备(Storage)进行存储;也可以直接从存储设备(Storage)将数据直接发到网络接口控制器503出去,完成网络接口控制器503到存储设备(Storage)和存储设备(Storage)到网络接口控制器503的DMA操作,并且不占用PCI-Switch和中央处理器之间的带宽。
因此,在本发明实施例中,数据的传输不需要中央处理器去干预,只需要中央处理器配置数据描述信息;也不需要中央处理器去拷贝数据和因为拷贝数据导致对内存资源的消耗。
如附图7所示本发明另一实施例提供的数据快速分发系统,快速转发模块502可以包括第一判断单元701和打包单元702,其中:
第一判断单元701,用于根据所述数据描述信息读取所述用户请求的数据后,通过所述打包选择标识判断是否需要对所述用户请求的数据进行打包;
打包单元702,用于若所述第一判断单元701判断的结果为需要对所述用户请求的数据进行打包,则对所述用户请求的数据进行打包后转发至所述网络接口控制器503。
如附图8所示本发明另一实施例提供的数据快速分发系统,快速转发模块502可以包括第二判断单元801和转发单元802,其中:
第二判断单元801,用于通过内存选择标识判断是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;
转发单元802,用于若所述第二判断单元801判断的结果为是从存储设备读取所述用户请求的数据,则从所述存储设备读取所述用户请求的数据后转发至所述网络接口控制器503,否则,从所述内存读取所述用户请求的数据后转发至所述网络接口控制器503。
附图5至附图8任一示例的中央处理器501还包括下发模块901,如附图9所示。下发模块901用于将打包模式标识下发至所述快速转发模块502,所述打包模式标识与打包模式对应。
请参阅附图10,本发明实施例提供的数据快速分发装置结构示意图。为了便于说明,仅仅示出了与本发明实施例相关的部分,其中包含的功能模块/单元可以是软件模块/单元、硬件模块/单元或软硬件相结合模块/单元(本说明书提供的各个实施例都可应用这一描述原则)。图5示例的数据快速分发装置可以是附图5至附图9任一示例的快速转发模块502,其包括接收模块1001和数据读取模块1002,其中:
接收模块1001,用于接收中央处理器发送的数据描述信息,所述数据描述信息可以是如附图3示例的输描述符(Transmit Desriptor),包括用户请求的数据的存储地址和长度信息;
数据读取模块1002,用于根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至网络接口控制器,以由所述网络接口控制器向用户发送所述用户所请求的数据。具体地,数据读取模块1002用于根据所述数据描述信息,以直接内存访问方式读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
因此,在本实施例中,数据的传输不需要中央处理器去干预,只需要中央处理器配置数据描述信息,也不需要中央处理器去拷贝数据和因为拷贝数据导致对内存资源的消耗。
需要说明的是,以上数据快速分发装置的实施方式中,各功能模块的划分仅是举例说明,实际应用中可以根据需要,例如相应硬件的配置要求或者软件的实现的便利考虑,而将上述功能分配由不同的功能模块完成,即将所述数据快速分发装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。而且,实际应用中,本实施例中的相应的功能模块可以是由相应的硬件实现,也可以由相应的硬件执行相应的软件完成,例如,前述的接收模块,可以是具有执行前述接收中央处理器发送的数据描述信息的硬件,例如接收器,也可以是能够执行相应计算机程序从而完成前述功能的一般处理器或者其他硬件设备(本说明书提供的各个实施例都可应用上述描述原则)。
进一步地,所述数据描述信息还可以包括打包模式标识和打包选择标识,所述打包模式标识与所述请求数据的用户对应,所述打包选择标识用于标识是否需要对所述用户请求的数据进行打包,附图10示例的数据读取模块1002可以包括第一判断单元1101和打包单元1102,如附图11所示本发明另一实施例提供的数据快速分发装置,其中:
第一判断单元1101,用于根据所述数据描述信息读取所述用户请求的数据后,通过所述打包选择标识判断是否需要对所述用户请求的数据进行打包;
打包单元1102,用于若第一判断单元1101判断的结果为需要对所述用户请求的数据进行打包,则对所述用户请求的数据进行打包后转发至所述网络接口控制器。
进一步地,所述数据描述信息还可以包括内存选择标识,所述内存选择标识用于标识是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据,附图10示例的数据读取模块1002可以包括第二判断单元1201和转发单元1202,如附图12所示本发明另一实施例提供的数据快速分发装置,其中:
第二判断单元1201,用于通过所述内存选择标识判断是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;
转发单元1202,用于若第二判断单元1201判断的结果为是从存储设备读取所述用户请求的数据,则从所述存储设备读取所述用户请求的数据后转发至所述网络接口控制器,否则,从所述内存读取所述用户请求的数据后转发至所述网络接口控制器。
需要说明的是,上述装置各模块/单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,比如以下各种方法的一种或多种或全部:
方法一:
中央处理器将数据描述信息发送至快速转发模块,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
快速转发模块根据所述数据描述信息读取所述用户请求的数据后转发至所述网络接口控制器;
所述网络接口控制器向用户发送所述用户请求的数据。
方法二:
接收中央处理器发送的数据描述信息,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至网络接口控制器,以由所述网络接口控制器向用户发送所述用户所请求的数据。
该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random AccessMemory)、磁盘或光盘等。
以上对本发明实施例提供的数据快速分发方法、装置和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (21)
1.一种数据快速分发方法,其特征在于,所述方法包括:
中央处理器将数据描述信息发送至快速转发模块,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
所述快速转发模块根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器;
所述网络接口控制器向用户发送所述用户请求的数据。
2.如权利要求1所述的方法,其特征在于,所述中央处理器将数据描述信息发送至快速转发模块包括:
所述中央处理器配置所述数据描述信息,将所述用户请求的数据的存储地址和长度信息携带在所述数据描述信息;
所述中央处理器将所述数据描述信息发送至网络接口控制器,由所述网络接口控制器将所述数据描述信息转发至所述快速转发模块。
3.如权利要求2所述的方法,其特征在于,所述中央处理器配置数据描述信息还包括:所述中央处理器将打包模式标识和打包选择标识携带在所述传输描述符,所述打包模式标识与所述请求数据的用户对应,所述打包选择标识用于标识是否需要对所述用户请求的数据进行打包;
所述快速转发模块根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器包括:
所述快速转发模块根据所述数据描述信息读取所述用户请求的数据后,通过所述打包选择标识判断是否需要对所述用户请求的数据进行打包;若需要对所述用户请求的数据进行打包,则对所述用户请求的数据进行打包后转发至所述网络接口控制器。
4.如权利要求3所述的方法,其特征在于,所述对所述用户请求的数据进行打包后转发至所述网络接口控制器包括:
所述快速转发模块根据所述打包模式标识对应的打包模式,对所述用户请求的数据进行打包后转发至所述网络接口控制器。
5.如权利要求2所述的方法,其特征在于,所述中央处理器配置数据描述信息还包括:所述中央处理器将内存选择标识携带在所述数据描述信息,所述内存选择标识用于标识是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;
所述快速转发模块根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器包括:所述快速转发模块通过所述内存选择标识判断是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;若判断是从存储设备读取所述用户请求的数据,则从所述存储设备读取所述用户请求的数据后转发至所述网络接口控制器,否则,从所述内存读取所述用户请求的数据后转发至所述网络接口控制器。
6.如权利要求1所述的方法,其特征在于,所述快速转发模块根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器包括:所述快速转发模块根据所述数据描述信息,以直接内存访问方式读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
7.如权利要求2至5任意一项所述的方法,其特征在于,所述中央处理器将用户请求的数据的存储地址和长度信息发送至网络接口控制器之前还包括:
所述中央处理器将打包模式标识下发至所述快速转发模块,所述打包模式标识与打包模式对应。
8.一种数据快速分发方法,其特征在于,所述方法包括:
接收中央处理器发送的数据描述信息,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至网络接口控制器,以由所述网络接口控制器向用户发送所述用户所请求的数据。
9.如权利要求8所述的方法,其特征在于,所述数据描述信息还包括打包模式标识和打包选择标识,所述打包模式标识与所述请求数据的用户对应,所述打包选择标识用于标识是否需要对所述用户请求的数据进行打包;
所述根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器包括:根据所述数据描述信息读取所述用户请求的数据后,通过所述打包选择标识判断是否需要对所述用户请求的数据进行打包;若需要对所述用户请求的数据进行打包,则对所述用户请求的数据进行打包后转发至所述网络接口控制器。
10.如权利要求9所述的方法,其特征在于,所述对所述用户请求的数据进行打包后转发至所述网络接口控制器包括:
根据所述打包模式标识对应的打包模式,对所述用户请求的数据进行打包后转发至所述网络接口控制器。
11.如权利要求8所述的方法,其特征在于,所述数据描述信息还包括内存选择标识,所述内存选择标识用于标识是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;
所述根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器包括:通过所述内存选择标识判断是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;若判断是从存储设备读取所述用户请求的数据,则从所述存储设备读取所述用户请求的数据后转发至所述网络接口控制器,否则,从所述内存读取所述用户请求的数据后转发至所述网络接口控制器。
12.如权利要求8所述的方法,其特征在于,所述根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器包括:根据所述数据描述信息,以直接内存访问方式读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
13.一种数据快速分发系统,其特征在于,所述系统包括中央处理器、网络接口控制器和快速转发模块;
所述中央处理器,用于将数据描述信息发送至快速转发模块,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
所述快速转发模块,用于根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器;
所述网络接口控制器,用于向用户发送所述用户请求的数据。
14.如权利要求13所述的系统,其特征在于,所述中央处理器包括:
配置单元,用于配置所述数据描述信息,将所述用户请求的数据的存储地址和长度信息携带在所述数据描述信息;
发送单元,用于将所述数据描述信息发送至网络接口控制器,由所述网络接口控制器将所述数据描述信息转发至所述快速转发模块。
15.如权利要求14所述的系统,其特征在于,所述配置单元还用于将打包模式标识和打包选择标识携带在所述数据描述信息,所述打包模式标识与所述请求数据的用户对应,所述打包选择标识用于标识是否需要对所述用户请求的数据进行打包;
所述快速转发模块包括第一判断单元和打包单元;
所述第一判断单元,用于根据所述数据描述信息读取所述用户请求的数据后,通过所述打包选择标识判断是否需要对所述用户请求的数据进行打包;
所述打包单元,用于若所述第一判断单元判断的结果为需要对所述用户请求的数据进行打包,则对所述用户请求的数据进行打包后转发至所述网络接口控制器。
16.如权利要求14所述的系统,其特征在于,所述配置单元还用于将内存选择标识携带在所述数据描述信息,所述所述内存选择标识用于标识是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;
所述快速转发模块包括第二判断单元和转发单元;
所述第二判断单元,用于通过所述内存选择标识判断是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;
所述转发单元,用于若所述第二判断单元判断的结果为是从存储设备读取所述用户请求的数据,则从所述存储设备读取所述用户请求的数据后转发至所述网络接口控制器,否则,从所述内存读取所述用户请求的数据后转发至所述网络接口控制器。
17.如权利要求14所述的系统,其特征在于,所述快速转发模块根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器具体为:所述快速转发模块根据所述数据描述信息,以直接内存访问方式读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
18.如权利要求15所述的系统,其特征在于,所述中央处理器还包括:
下发模块,用于将打包模式标识下发至所述快速转发模块,所述打包模式标识与打包模式对应。
19.一种数据快速分发装置,其特征在于,所述装置包括:
接收模块,用于接收中央处理器发送的数据描述信息,所述数据描述信息包括用户请求的数据的存储地址和长度信息;
数据读取模块,用于根据所述数据描述信息读取所述用户请求的数据并将所述用户请求的数据转发至网络接口控制器,以由所述网络接口控制器向用户发送所述用户所请求的数据。
19、如权利要求18所述的装置,其特征在于,所述数据描述信息还包括打包模式标识和打包选择标识,所述打包模式标识与所述请求数据的用户对应,所述打包选择标识用于标识是否需要对所述用户请求的数据进行打包;
所述数据读取模块包括第一判断单元和打包单元;
所述第一判断单元,用于根据所述数据描述信息读取所述用户请求的数据后,通过所述打包选择标识判断是否需要对所述用户请求的数据进行打包;
所述打包单元,用于若所述第一判断单元判断的结果为需要对所述用户请求的数据进行打包,则对所述用户请求的数据进行打包后转发至所述网络接口控制器。
20.如权利要求18所述的装置,其特征在于,所述数据描述信息还包括内存选择标识,所述内存选择标识用于标识是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;
所述数据读取模块包括第二判断单元和转发单元;
所述第二判断单元,用于通过所述内存选择标识判断是从内存读取所述用户请求的数据还是从存储设备读取所述用户请求的数据;
所述转发单元,用于若所述第二判断单元判断的结果为是从存储设备读取所述用户请求的数据,则从所述存储设备读取所述用户请求的数据后转发至所述网络接口控制器,否则,从所述内存读取所述用户请求的数据后转发至所述网络接口控制器。
21.如权利要求19所述的装置,其特征在于,所述数据读取模块具体用于根据所述数据描述信息,以直接内存访问方式读取所述用户请求的数据并将所述用户请求的数据转发至所述网络接口控制器。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2011/081366 WO2012167531A1 (zh) | 2011-10-27 | 2011-10-27 | 一种数据快速分发方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102439983A true CN102439983A (zh) | 2012-05-02 |
CN102439983B CN102439983B (zh) | 2014-04-16 |
Family
ID=45986284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180002193.9A Active CN102439983B (zh) | 2011-10-27 | 2011-10-27 | 一种数据快速分发方法和装置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US9774651B2 (zh) |
EP (1) | EP2755363B1 (zh) |
JP (1) | JP5966229B2 (zh) |
KR (1) | KR20140065009A (zh) |
CN (1) | CN102439983B (zh) |
AU (1) | AU2011370439B2 (zh) |
RU (1) | RU2589398C2 (zh) |
WO (1) | WO2012167531A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103946828A (zh) * | 2013-10-29 | 2014-07-23 | 华为技术有限公司 | 数据处理系统和数据处理的方法 |
CN105808345A (zh) * | 2014-12-31 | 2016-07-27 | 华为技术有限公司 | 数据处理方法、加速引擎、控制板和系统 |
CN111400214A (zh) * | 2020-02-27 | 2020-07-10 | 深圳震有科技股份有限公司 | 一种双核共用网口的实现方法、智能终端及存储介质 |
CN113190476A (zh) * | 2021-04-14 | 2021-07-30 | 摩尔线程智能科技(北京)有限责任公司 | 数据传输方法和装置 |
CN116886719A (zh) * | 2023-09-05 | 2023-10-13 | 苏州浪潮智能科技有限公司 | 存储系统的数据处理方法、装置、存储系统、设备及介质 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105337923B (zh) * | 2014-05-26 | 2019-07-12 | 腾讯科技(北京)有限公司 | 数据分发方法和系统及数据发送装置和数据接收装置 |
JP6493426B2 (ja) * | 2017-02-02 | 2019-04-03 | 日本電気株式会社 | 通信システム、通信制御方法および通信プログラム |
CN107743101B (zh) * | 2017-09-26 | 2020-10-09 | 杭州迪普科技股份有限公司 | 一种数据的转发方法及装置 |
CN110008156B (zh) | 2019-03-27 | 2020-12-15 | 无锡海斯凯尔医学技术有限公司 | 数据传输的装置、方法及可读存储介质 |
CN111782565B (zh) * | 2020-06-30 | 2021-09-14 | 北京百度网讯科技有限公司 | Gpu服务器和数据传输方法 |
CN112383801B (zh) * | 2020-11-10 | 2023-04-07 | 重庆紫光华山智安科技有限公司 | 媒体流分发方法、装置、分发服务器及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101115054A (zh) * | 2006-07-26 | 2008-01-30 | 惠普开发有限公司 | 用于网络接口控制器的存储器映射的缓冲器 |
US20080043750A1 (en) * | 2006-01-19 | 2008-02-21 | Neteffect, Inc. | Apparatus and method for in-line insertion and removal of markers |
JP2009118106A (ja) * | 2007-11-06 | 2009-05-28 | Mitsubishi Electric Corp | ネットワーク装置 |
CN102171665A (zh) * | 2008-09-30 | 2011-08-31 | 苹果公司 | 使用中央dma机制进行数据过滤 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5442797A (en) * | 1991-12-04 | 1995-08-15 | Casavant; Thomas L. | Latency tolerant risc-based multiple processor with event driven locality managers resulting from variable tagging |
EP0700229B1 (en) * | 1994-08-22 | 2006-06-28 | Fujitsu Limited | Connectionless communications system, test method, and intra-station control system |
US5633870A (en) | 1995-07-07 | 1997-05-27 | Sun Microsystems, Inc. | Method and apparatus for controlling data flow through an ATM interface |
US5924094A (en) * | 1996-11-01 | 1999-07-13 | Current Network Technologies Corporation | Independent distributed database system |
US7133940B2 (en) | 1997-10-14 | 2006-11-07 | Alacritech, Inc. | Network interface device employing a DMA command queue |
US6970451B1 (en) * | 1999-10-12 | 2005-11-29 | At&T Corp. | Smart routers-simple optics: network architecture for IP over WDM |
EP1830552A1 (en) * | 1999-12-28 | 2007-09-05 | Sony Corporation | Image commercial transactions system and method |
US7093026B2 (en) * | 2000-02-14 | 2006-08-15 | Matsushita Electric Industrial, Co. Ltd | Data transmission system |
US7009968B2 (en) * | 2000-06-09 | 2006-03-07 | Broadcom Corporation | Gigabit switch supporting improved layer 3 switching |
EP1394999A1 (en) * | 2002-08-07 | 2004-03-03 | Infineon Technologies AG | Method for routing of data packets and routing apparatus |
US8176428B2 (en) | 2002-12-03 | 2012-05-08 | Datawind Net Access Corporation | Portable internet access device back page cache |
US7565454B2 (en) | 2003-07-18 | 2009-07-21 | Microsoft Corporation | State migration in multiple NIC RDMA enabled devices |
CN1330139C (zh) * | 2003-07-31 | 2007-08-01 | 华为技术有限公司 | 多协议标签交换(mpls)支持多端口虚拟局域网(vlan)的方法 |
EP1690185A4 (en) | 2003-10-20 | 2007-04-04 | Rhode Island Education | UPPER MEMORY MEMORY STRUCTURE FOR STORAGE SERVERS |
US7698361B2 (en) * | 2003-12-31 | 2010-04-13 | Microsoft Corporation | Lightweight input/output protocol |
JP2006293799A (ja) | 2005-04-13 | 2006-10-26 | Sony Corp | 情報処理装置、および情報処理方法 |
JP2006338353A (ja) | 2005-06-02 | 2006-12-14 | Sony Corp | 情報処理装置および情報処理方法、並びにプログラム |
CN100499674C (zh) * | 2006-01-06 | 2009-06-10 | 华为技术有限公司 | 一种路由器下终端设备ip地址的分配方法 |
JP2008172515A (ja) * | 2007-01-11 | 2008-07-24 | Sony Corp | 送信装置および方法、通信装置、並びにプログラム |
JP2009048298A (ja) * | 2007-08-15 | 2009-03-05 | Sony Corp | 情報処理装置、情報処理方法、当該情報処理方法を実行するためのプログラム及び当該プログラムを記録した媒体、並びにdmaコントローラ、dma転送方法、当該dma転送方法を実行するためのプログラム及び当該プログラムを記録した媒体 |
US9215217B2 (en) * | 2008-12-05 | 2015-12-15 | Suhayya Abu-Hakima and Kenneth E. Grigg | Auto-discovery of diverse communications devices for alert broadcasting |
US8452803B2 (en) * | 2008-04-29 | 2013-05-28 | Samir Ghosh | Method and system for distributed data management of personal data in a social networking context |
US9178839B2 (en) | 2008-07-24 | 2015-11-03 | International Business Machines Corporation | Sharing buffer space in link aggregation configurations |
JP2010049502A (ja) | 2008-08-21 | 2010-03-04 | Hitachi Ltd | ストレージサブシステム、及びこれを有するストレージシステム |
JP2010211322A (ja) | 2009-03-06 | 2010-09-24 | Renesas Electronics Corp | ネットワークプロセッサ、受信コントローラ、及びデータ受信処理方法 |
DE102009001821A1 (de) * | 2009-03-24 | 2010-10-07 | Ihp Gmbh - Innovations For High Performance Microelectronics / Leibniz-Institut Für Innovative Mikroelektronik | Protokollbeschleunigungsmodul mit Paketweiterleitungsfunktion und Betriebsverfahren für einen Senderempfänger zur schnellen Weiterleitung von Datenpaketen |
US9015268B2 (en) * | 2010-04-02 | 2015-04-21 | Intel Corporation | Remote direct storage access |
US8804490B2 (en) * | 2011-07-29 | 2014-08-12 | Telefonaktiebolaget L M Ericsson (Publ) | Controller placement for fast failover in the split architecture |
-
2011
- 2011-10-27 KR KR1020147011061A patent/KR20140065009A/ko active Search and Examination
- 2011-10-27 JP JP2014537442A patent/JP5966229B2/ja active Active
- 2011-10-27 RU RU2014121210/08A patent/RU2589398C2/ru active
- 2011-10-27 CN CN201180002193.9A patent/CN102439983B/zh active Active
- 2011-10-27 AU AU2011370439A patent/AU2011370439B2/en active Active
- 2011-10-27 EP EP11867401.9A patent/EP2755363B1/en active Active
- 2011-10-27 WO PCT/CN2011/081366 patent/WO2012167531A1/zh active Application Filing
-
2014
- 2014-04-14 US US14/251,712 patent/US9774651B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080043750A1 (en) * | 2006-01-19 | 2008-02-21 | Neteffect, Inc. | Apparatus and method for in-line insertion and removal of markers |
CN101115054A (zh) * | 2006-07-26 | 2008-01-30 | 惠普开发有限公司 | 用于网络接口控制器的存储器映射的缓冲器 |
JP2009118106A (ja) * | 2007-11-06 | 2009-05-28 | Mitsubishi Electric Corp | ネットワーク装置 |
CN102171665A (zh) * | 2008-09-30 | 2011-08-31 | 苹果公司 | 使用中央dma机制进行数据过滤 |
Non-Patent Citations (1)
Title |
---|
陈则盛等: "ATM网络适配器接口技术研究与实现", 《通信技术》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106933775B (zh) * | 2013-10-29 | 2021-08-20 | 华为技术有限公司 | 数据处理系统和数据处理的方法 |
WO2015061971A1 (zh) * | 2013-10-29 | 2015-05-07 | 华为技术有限公司 | 数据处理系统和数据处理的方法 |
US9329783B2 (en) | 2013-10-29 | 2016-05-03 | Huawei Technologies Co., Ltd. | Data processing system and data processing method |
CN103946828A (zh) * | 2013-10-29 | 2014-07-23 | 华为技术有限公司 | 数据处理系统和数据处理的方法 |
US9459798B2 (en) | 2013-10-29 | 2016-10-04 | Huawei Technologies Co., Ltd. | Data processing system and data processing method |
US9678918B2 (en) | 2013-10-29 | 2017-06-13 | Huawei Technologies Co., Ltd. | Data processing system and data processing method |
CN106933775A (zh) * | 2013-10-29 | 2017-07-07 | 华为技术有限公司 | 数据处理系统和数据处理的方法 |
CN105808345A (zh) * | 2014-12-31 | 2016-07-27 | 华为技术有限公司 | 数据处理方法、加速引擎、控制板和系统 |
CN105808345B (zh) * | 2014-12-31 | 2019-03-08 | 华为技术有限公司 | 数据处理方法、加速引擎、控制板和系统 |
CN111400214A (zh) * | 2020-02-27 | 2020-07-10 | 深圳震有科技股份有限公司 | 一种双核共用网口的实现方法、智能终端及存储介质 |
CN113190476A (zh) * | 2021-04-14 | 2021-07-30 | 摩尔线程智能科技(北京)有限责任公司 | 数据传输方法和装置 |
CN116886719A (zh) * | 2023-09-05 | 2023-10-13 | 苏州浪潮智能科技有限公司 | 存储系统的数据处理方法、装置、存储系统、设备及介质 |
CN116886719B (zh) * | 2023-09-05 | 2024-01-23 | 苏州浪潮智能科技有限公司 | 存储系统的数据处理方法、装置、存储系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
EP2755363A4 (en) | 2014-12-31 |
CN102439983B (zh) | 2014-04-16 |
US9774651B2 (en) | 2017-09-26 |
EP2755363A1 (en) | 2014-07-16 |
AU2011370439B2 (en) | 2015-12-03 |
EP2755363B1 (en) | 2016-06-08 |
KR20140065009A (ko) | 2014-05-28 |
US20140222960A1 (en) | 2014-08-07 |
JP2015502590A (ja) | 2015-01-22 |
RU2589398C2 (ru) | 2016-07-10 |
AU2011370439A1 (en) | 2014-05-29 |
RU2014121210A (ru) | 2015-12-10 |
JP5966229B2 (ja) | 2016-08-10 |
WO2012167531A1 (zh) | 2012-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102439983A (zh) | 一种数据快速分发方法和装置 | |
EP2312807B1 (en) | Method and system for enabling zero-copy transmission of streaming media data | |
CN102882939B (zh) | 负载均衡方法、设备及泛域名加速访问系统 | |
EP1883240B1 (en) | Distributed multi-media server system, multi-media information distribution method, program thereof, and recording medium | |
CN101447925A (zh) | 一种发送多路数据包的方法及系统 | |
CN108270524A (zh) | 多播广播多媒体服务辅助内容分发 | |
CN102656862A (zh) | 在应用层绑定/聚合多个接口 | |
CN103200072B (zh) | 一种基于网络的数据传输方法、装置及系统 | |
CN105487881A (zh) | 一种软件安装包打包方法、装置及系统 | |
CN102195874A (zh) | 数据分组的预提取 | |
CN102932472A (zh) | 一种数据处理方法以及通信系统 | |
CN102457442A (zh) | 一种消息发送和读取方法、装置及中间件系统 | |
CN103826139A (zh) | Cdn系统、观看服务器以及流媒体数据传输方法 | |
CN113891396A (zh) | 数据包的处理方法、装置、计算机设备和存储介质 | |
CN104717189A (zh) | 网络数据包的发送方法及装置 | |
CN104202399A (zh) | 一种基于请求缓冲池的数据服务调度方法 | |
CN102291412A (zh) | 一种基于http的多媒体业务实现方法、系统及装置 | |
Morgenroth et al. | Live-streaming in delay tolerant networks | |
CN104702646A (zh) | 数据传输方法及相关装置和通信系统 | |
CN109582242B (zh) | 级联存储阵列系统的地址确定方法、装置、电子设备 | |
CN102646058A (zh) | 多节点计算系统下选择共享内存所在节点的方法和装置 | |
CN103634323A (zh) | 基于长连接的数据处理实现方法、系统及装置 | |
CN101212452B (zh) | 一种基于实时传输协议的多媒体数据传输控制方法 | |
CN102077184A (zh) | 执行直接存储器访问的方法和装置 | |
CN104936006A (zh) | 一种节目信息表的发送方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |