CN1731765A - 通过路由到应用特定缓冲器来减少网络副本的方法和系统 - Google Patents

通过路由到应用特定缓冲器来减少网络副本的方法和系统 Download PDF

Info

Publication number
CN1731765A
CN1731765A CNA2005100826370A CN200510082637A CN1731765A CN 1731765 A CN1731765 A CN 1731765A CN A2005100826370 A CNA2005100826370 A CN A2005100826370A CN 200510082637 A CN200510082637 A CN 200510082637A CN 1731765 A CN1731765 A CN 1731765A
Authority
CN
China
Prior art keywords
packet
application
buffer
data
processing system
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
CNA2005100826370A
Other languages
English (en)
Other versions
CN100425038C (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1731765A publication Critical patent/CN1731765A/zh
Application granted granted Critical
Publication of CN100425038C publication Critical patent/CN100425038C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • 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/19Flow control; Congestion control at layers above the network layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9042Separate storage for different parts of the packet, e.g. header and payload
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields

Abstract

本发明公开了一种用于将在网络适配器上接收到的从网络到预先分配的端口的数据传送到分配给应用的存储缓冲器的方法和系统。应用在本地数据处理系统中指定一个应用特定的缓冲器用于对与该应用交换的数据进行缓冲。本地数据处理系统向本地数据处理系统的网络接口报告所指定的应用特定的缓冲器的存储地址,并且该数据处理系统指定一个端口,在该端口上接收发往该存储地址的数据包。然后,数据处理系统发送一个端口注册消息到本地网络接口,使得该网络接口能够将到来的业务的端口号与已注册的端口号进行比较,并且如果二者匹配,则将到来的业务从远程数据处理系统直接路由到指定的应用特定的缓冲器。

Description

通过路由到应用特定缓冲器来减少网络副本的方法和系统
技术领域
本发明一般地涉及数据处理,并且特别涉及提高连接到网络的数据处理系统中的数据接收和分发的效率。更具体地说,本发明涉及一种用于将在预先分配端口号的网络适配器上接收到的数据直接传送到分配给应用的存储缓冲器的系统、方法和计算机程序产品。
背景技术
现在,通过网络交换数据的大量应用实现了一系列仅仅在几年前还难以想象的技术。通过网络交换数据的应用的范围从电子邮件客户端和服务器到与服务器进行通信的万维网浏览器再到基于IP的语音(VoIP)应用。
在数据接收中,一些应用可以容忍高等级的等待时间(latency)和延迟(delay)。其例子包括电子邮件和文件传输协议客户程序。这些客户程序设计为不需要与网络进行的“实时”相互作用,并且用户可以容忍请求信息的时刻与接收信息的时刻之间的很大的总延迟。然而,用户通常比较不能容忍发送点与接收点之间的信息丢失。
当首先将网际协议设计为支持网络应用时,利用这种对延迟的不敏感来形成称为传输控制协议(TCP)的高冗余协议。在本地数据处理系统上使用TCP时,将应用数据从公共缓冲器路由到应用特定的缓冲器。结果,当向联网的应用提供具有较高可靠性的系统的骨干网时,由于在数据处理系统中将数据从公共缓冲器内部复制到应用特定的缓冲器,因此数据接收中产生延迟。
这个问题的一个例子如图3所示,该图描述了网络环境中的数据处理系统,其将从网络接收到的数据直接传送到公共缓冲器,然后按照常规方法将该数据复制到应用特定的缓冲器。所示的网络环境包括局域网或广域网400,例如因特网或其它的分组数字网络。本地数据处理系统402、远程数据处理系统404(例如FTP服务器、HTTP服务器、简单邮件传输协议(SMTP)、邮局协议3(POP3)或因特网消息访问协议(IMAP)服务器,或文件服务器)连接到网络400。
远程数据处理系统404执行关于发送和接收电子数据的功能,包括通过网络400接收文件请求和发送文件。
本地数据处理系统402包括用于执行数据处理功能的处理资源406以及用于存储由处理资源406使用的数据项或指令的存储单元408。本地数据处理系统402还包括用于与连接到网络400的其它设备进行通信的网络接口410以及输入设备412。如图所示,存储单元408存储应用413、操作系统(OS)414、网络驱动器416、传输控制协议/网际协议(TCP/IP)栈418、公共缓冲器420和应用特定的缓冲器424、425和426。
在现有技术中,应用413发送数据请求428到TCP/IP栈418,并且TCP/IP栈418将数据请求428路由到网络驱动器416。然后,网络驱动器416将数据请求428传递到操作系统414,通过操作处理资源406,操作系统414在网络400上经由网络接口410将数据请求428发送到远程数据处理系统404。
在现有技术中,当接收数据请求428时,远程数据处理系统404以数据传送430响应数据请求428,远程数据处理系统404在网络400上将数据传送430发送到本地数据处理系统402的网络接口410。
处理资源406从网络接口410将数据传送430路由到存储单元408中的操作系统414。一旦数据传送430到达存储单元408中,操作系统414就将数据传送430从网络驱动器416路由到TCP/IP栈418。然后将数据传送430路由到公共缓冲器420。一旦数据传送430到达公共缓冲器420,就将数据传送430的一个副本432路由到应用特定的缓冲器426,其中处理资源406可以结合应用413的指令来使用副本432。现有技术产生具有较长等待时间的环境,其中时间和资源被浪费。例如VoIP或流式视频(streaming video)之类的应用愈发要求信息的传送等待时间尽可能短。需要一种在本地数据处理系统中消除延迟的方法。
发明内容
本发明公开了一种用于将在网络适配器上接收到的从网络到预先分配的端口的数据传送到分配给应用的存储缓冲器的方法、系统和计算机程序产品。应用在本地数据处理系统中指定一个应用特定的缓冲器用于对与该应用交换的数据进行缓冲。本地数据处理系统向本地数据处理系统的网络接口报告所指定的应用特定的缓冲器的存储地址,并且该数据处理系统指定一个端口,在该端口上接收发往该存储地址的数据包。然后,数据处理系统发送一个端口注册消息到本地网络接口,使得该网络接口能够将到来的业务的端口号与已注册的端口号进行比较,并且如果二者匹配,则将到来的业务从远程数据处理系统直接路由到指定的应用特定的缓冲器。
在一个实施例中,本发明包括在网络接口中接收发往指定端口的数据包,并将来自该数据包的数据传送到所述应用特定的缓冲器。
附图说明
在所附权利要求中描述了保证本发明特性的新颖特征。然而,当结合附图阅读时,通过参考以下对说明性实施例的详细描述,可以最好地理解本发明本身及优选使用方式,其中:
图1说明了网络环境中的数据处理系统,其中实现了用于减少网络副本的方法、系统和计算机程序产品的优选实施例。
图2A为根据本发明的优选实施例的处理的高级逻辑流程图,该处理用于对缓冲器进行指定、注册和报告,指定用于接收数据的端口,并创建和发送消息,以便可以将在一个预先分配的端口上从网络接收的数据传送到分配给应用的存储缓冲器;
图2B是根据本发明的优选实施例的高级逻辑流程图,该处理用于将从网络或预先分配的端口接收到的数据传送到分配给应用的存储缓冲器;以及
图3示出根据现有技术的方法在网络环境中的数据处理系统,其将在特定的端口上从网络接收到的数据直接传送到公共缓冲器,并将该数据复制到应用特定的缓冲器。
具体实施方式
现在参照附图,特别是参照图1来描述可以有利地利用本发明的示例性网络环境。所示的网络环境包括局域网或广域网100,例如因特网或另一分组数字网络。本地数据处理系统102和远程数据处理系统104(例如FTP服务器、HTTP服务器、简单邮件传输协议(SMTP)和邮局协议3(POP3)或因特网消息访问协议(IMAP)服务器,或文件服务器)连接到网络100。
远程数据处理系统104执行关于发送和接收电子数据的功能,包括通过网络100接收文件请求和发送文件。远程数据处理系统104和本地数据处理系统102可以用常规的或后来开发的硬件或软件来实现。
本地数据处理系统102包括用于执行数据处理功能的处理资源106以及用于存储数据项或由处理资源106使用的指令的存储单元108。本地数据处理系统102还包括也称为网络适配器(例如以太网适配器)的用于与连接到网络100的其它设备进行通信的网络接口110,以及诸如键盘或鼠标之类的输入设备112。
下面详细描述存储单元108,可以将存储单元108实现为随机存取存储器(RAM)或诸如直接存取存储设备之类的另一存储形式。如图所示,存储单元108存储应用A113a、应用B113b和应用C113c(其中的任何一个都可以是核心应用或用户空间应用)、操作系统(OS)114、网络驱动器116和传输控制协议/网际协议(TCP/IP)栈118。
如图所示,存储单元108还包含公共缓冲器120(也称为核心缓冲器)和应用特定的缓冲器124(对应于应用A113a并服务于应用A113a)、应用特定的缓冲器125(对应于应用B113b并服务于应用B113b)和应用特定的缓冲器126(对应于应用C113c并服务于应用C113c)。在图1所示的优选实施例中,每个应用特定的缓冲器对应于单独的一个应用并服务于该应用,但本领域的普通技术人员可以快速地确定一些应用可以有利地共享数据,在这种情况下,一个应用特定的缓冲器可以对应于多个应用并服务于这些应用,于是多个应用可以访问包含在一个应用特定的缓冲器中的数据。
通过基于数据所发往的第4层(例如传输控制协议或用户数据报协议)端口将通过网络100接收的来自远程数据处理系统104的数据部分立刻导向应用特定的缓冲器124、125和126,而不是在将所有通过网络100接收的来自远程数据处理系统104的数据复制到应用特定的缓冲器124、125和126之前可以将其路由到公共缓冲器120,本发明改善了诸如本地数据处理系统102之类的数据处理系统中的数据接收效率。基于第4层端口,优选的实施例实现了到应用特定的缓冲器124、125和126的数据传送,其中利用诸如以太网适配器之类的网络适配器110的固件(firmware)的最小变化将数据发往该第4层端口。基于数据所发往的端口,优选地通过使用多个消息来实现将通过网络100接收的来自远程数据处理系统104的数据部分导向应用特定的缓冲器124、125和126,这些消息由本地数据处理系统102发送和接收,并且就随后的流程图并就图1对这些消息进行了详细描述。
现在参照图2A描述根据本发明的优选实施例的处理的高级逻辑流程图,该处理用于指定、注册和报告缓冲器和端口号,以便可以将从网络接收到的数据传送到分配给应用的存储缓冲器。该处理开始于步骤200,该步骤描述对本地数据处理系统102上的应用113c的激活。然后,处理进行到步骤202,该步骤描述应用113c将应用特定的缓冲器126指定为其关联缓冲器。如图1所示,在一个实施例中,通过将来自应用113c的指定消息134发送到指定关联端口号的TCP/IP栈118,应用113c指定诸如应用特定的缓冲器126之类的通信缓冲器,用于存储其数据。
接着,处理进行到步骤204,该步骤描述TCP/IP栈118将所指定的应用特定的缓冲器126报告给网络接口110。如图1所示,当TCP/IP栈118将包含通信缓冲器的存储地址和端口号的报告消息136发送给网络接口110时,完成将所指定的应用特定的缓冲器126报告给网络接口110的过程。来自报告消息136的存储地址由网络接口110记录。后面的处理在框206处结束。
现在参照图2B说明根据本发明的优选实施例的处理的高级逻辑流程图,该处理将从网络接收到的数据传送到分配给应用的存储缓冲器。典型地在本地数据处理系统102的网络驱动器116内利用对接收例程(routine)的调用在步骤214处开始该处理。然后,处理进行到步骤216,该步骤说明网络接口110接收包含图1中的数据请求128所请求的数据的响应144。
由一个处理导致响应144的产生,该处理使本优选实施例的方法对于包含传统硬件(legacy hardware)的远程数据处理系统104不可见并实际与该远程数据处理系统104协作。和现有技术一样,应用113c将数据请求128发送到TCP/IP栈118,并且TCP/DP栈118将数据请求128路由到网络驱动器116。然后,网络驱动器116将数据请求128传递给操作系统114,通过操作处理资源106,操作系统114在网络100上经由网络接口110将数据请求128发送到远程数据处理系统104。网络接口110在数据请求128中分配并插入一个特定端口,用于发送数据请求128和接收随后的响应144。
在现有技术中,当接收到数据请求128时,远程数据处理系统104以响应144对数据请求128作出响应,远程数据处理系统104在数据请求128中所指定的端口上通过网络100将响应144发送到本地数据处理系统102的网络接口110。
然后,处理进行到步骤218,该步骤描述网络接口110确定是否已经将响应144发送到与本地数据处理系统102上的应用113c相关联的已注册的端口上。
如果网络驱动器116确定未将响应144发送到与本地数据处理系统102上的应用113c相关联的已注册的端口上,则处理前进到步骤220,该步骤说明网络驱动器116将来自响应144的内容发送到公共缓冲器120。在这种情况下,以上述关于数据传送430的常规方式处理来自响应144的内容。
也就是说,处理资源106将来自网络接口110的传送数据130路由到存储单元108中的操作系统114。一旦传送数据130到达存储单元108中,操作系统114便将来自网络驱动器116的传送数据130中的有效载荷数据和报头数据路由到TCP/IP栈118。然后将来自传送数据130的有效载荷数据和报头数据路由到公共缓冲器120。一旦来自传送数据130的有效载荷数据和报头数据到达公共缓冲器120,就将来自传送数据130的有效载荷数据的副本132路由到应用特定的缓冲器126,其中处理资源106可以结合应用112的指令来使用副本132。在此常规处理之后,图2B所示的处理结束于步骤222。
回到上面的框218,如果网络接口110确定已经将响应144发送到已注册的端口,则处理进行到步骤224。步骤224说明网络接口110从响应144中对有效载荷进行解封装。然后,处理进行到步骤226,该步骤说明网络接口110将来自响应144的报头信息146发送到公共缓冲器120,以利于保持TCP/IP栈118。
相反,如步骤228所示,有效载荷145由网络接口110直接发送到应用特定的缓冲器126。然后,处理资源106可以结合应用112的指令来使用有效载荷145,本发明使有效载荷145可以绕过公共缓冲器120。然后,处理进行到步骤222,该步骤表示处理的结束。
通过首先避免了把数据首先复制到公共缓冲器120,然后避免复制到应用特定的缓冲器C 126,上面就步骤228所述的绕行(bypass)提供了非常好的效用。在现有技术的方法中,必须首先将由应用113c所请求的数据复制到公共缓冲器120,然后将其复制到应用特定的缓冲器C126。现有技术的方法所采用的复制推迟了数据到达应用特定的缓冲器C126的时间,从而推迟了根据数据到达应用特定的缓冲器C126而进行的所有处理的操作。通过省略现有技术中的复制步骤,减小了等待数据到达应用特定的缓冲器C126的等待时间,并且改善了整个系统的性能。
虽然已经参考优选实施例具体地示出了本发明,但本领域的普通技术人员应当认识到,可以在形式和细节上进行各种改变,而不脱离本发明的实质和范围。同样重要的是注意到,虽然是在全功能计算机系统的环境下对本发明进行描述的,但本领域的普通技术人员应当意识到,本发明的机制能以各种形式分布为程序产品,并且不管用于实际执行该分布的信号承载介质的具体类型如何,本发明同样适用。信号承载介质的例子包括但不局限于诸如软盘和CD ROM之类的可记录型介质以及诸如模拟和数字通信链路之类的传输型介质。

Claims (21)

1.一种在网络中的远程数据处理系统和本地数据处理系统之间交换数据的方法,所述方法包括:
在本地数据处理系统中指定应用特定的缓冲器,以便对与应用交换的数据进行缓冲;
利用网络接口对用于与所述应用交换的数据包的端口进行注册;
响应于在所述网络接口上接收到数据包,检查所述数据包以确定其是否指定了已注册的端口;
响应于确定所述数据包未指定已注册的端口,所述网络接口将来自所述数据包的数据传送到公共缓冲器;以及
响应于确定所述数据包指定了所述已注册的端口,根据所述端口注册,所述网络接口将来自所述数据包的数据传送到所述应用的所述应用特定的缓冲器。
2.根据权利要求1的方法,还包括所述网络接口将来自所述数据包的报头信息传送到所述本地数据处理系统中的公共缓冲器。
3.根据权利要求2的方法,其中:
在所述本地数据处理系统中指定应用特定的缓冲器的所述步骤还包括指定公共缓冲器;以及
将来自所述数据包的数据传送到所述应用特定的缓冲器的所述步骤还包括将来自所述数据包的数据传送到所述应用特定的缓冲器,而绕过所述公共缓冲器。
4.根据权利要求1的方法,其中指定应用特定的缓冲器还包括所述应用利用TCP/IP栈对所述应用特定的缓冲器的地址进行预注册。
5.根据权利要求1的方法,其中将所述应用特定的缓冲器的地址报告给所述网络接口还包括:
TCP/IP栈利用通信驱动器对所述应用特定的缓冲器的所述地址进行注册;
所述通信驱动器对所述应用特定的缓冲器的所述地址进行记录。
6.根据权利要求1的方法,其中所述注册步骤利用以太网适配器对用于与所述应用交换的数据包的端口进行注册。
7.根据权利要求1的方法,其中所述检查步骤还包括对传输控制协议数据包进行检查以确定其是否指定了已注册的端口。
8.一种用于在网络中的远程数据处理系统和本地数据处理系统之间交换数据的系统,所述系统包括:
用于在本地数据处理系统中指定应用特定的缓冲器,以便对与应用交换的数据进行缓冲的装置;
用于利用网络接口对用于与所述应用交换的数据包的端口进行注册的装置;
用于响应于在所述网络接口上接收到数据包,检查所述数据包以确定其是否指定了已注册的端口的装置;
用于响应于确定所述数据包未指定已注册的端口,所述网络接口将来自所述数据包的数据传送到公共缓冲器的装置;以及
用于响应于确定所述数据包指定了所述已注册的端口,根据所述端口注册,所述网络接口将来自所述数据包的数据传送到所述应用的应用特定的缓冲器的装置。
9.根据权利要求8的系统,还包括用于所述网络接口将来自所述数据包的报头信息发送到所述本地数据处理系统中的公共缓冲器的装置。
10.根据权利要求8的系统,其中:
在所述本地数据处理系统中指定应用特定的缓冲器的所述装置还包括用于指定公共缓冲器的装置;以及
用于将来自所述数据包的数据传送到所述应用特定的缓冲器的所述装置还包括将来自所述数据包的数据传送到所述应用特定的缓冲器而绕过所述公共缓冲器的装置。
11.根据权利要求8的系统,其中用于指定应用特定的缓冲器的所述装置还包括用于由所述应用利用TCP/IP栈对所述应用特定的缓冲器的所述地址进行预注册的装置。
12.根据权利要求8的系统,其中用于向所述网络接口报告所述应用特定的缓冲器的地址的所述装置还包括:
用于由TCP/IP栈利用通信驱动器对所述应用特定的缓冲器的所述地址进行注册的装置;以及
用于由所述通信驱动器对所述应用特定的缓冲器的所述地址进行记录的装置。
13.根据权利要求8的系统,其中所述注册装置还包括用于使用以太网适配器对用于与所述应用交换的数据包的端口进行注册的装置。
14.根据权利要求8的系统,其中所述检查装置还包括用于检查传输控制协议数据包以确定其是否指定了已注册的端口的装置。
15.一种用于在网络中的远程数据处理系统和本地数据处理系统之间交换数据的计算机可读介质中的计算机程序产品,所述计算机程序产品包括:
计算机可读介质;
用于在本地数据处理系统内指定用于对与所述应用交换的数据进行缓冲的应用特定的缓冲器的计算机可读介质上的指令;
用于利用所述网络接口对用于与所述应用交换的数据包的端口进行注册的计算机可读介质上的指令;
用于响应于在所述网络接口上接收到数据包,检查所述数据包以确定其是否指定了已注册的端口的计算机可读介质上的指令;
用于响应于确定所述数据包未指定已注册的端口,所述网络接口将来自所述数据包的数据传送到公共缓冲器的计算机可读介质上的指令;以及
用于响应于确定所述数据包指定了所述已注册的端口,根据所述端口注册,所述网络接口将来自所述数据包的数据传送到所述应用的所述应用特定的缓冲器的计算机可读介质上的指令。
16.根据权利要求15的计算机程序产品,还包括用于所述网络接口将来自所述数据包的报头信息传送到所述本地数据处理系统中的公共缓冲器的计算机可读介质上的指令。
17.根据权利要求15的计算机程序产品,其中:
用于在所述本地数据处理系统中指定应用特定的缓冲器的计算机可读介质上的所述指令还包括用于指定公共缓冲器的计算机可读介质上的指令;以及
用于将来自所述数据包的数据传送到所述应用特定的缓冲器的计算机可读介质上的所述指令还包括用于将来自数据包的数据传送到所述应用特定的缓冲器而绕过所述公共缓冲器的计算机可读介质上的指令。
18.根据权利要求15的计算机程序产品,其中用于指定应用特定的缓冲器的计算机可读介质上的所述指令还包括用于所述应用利用TCP/IP栈对所述应用特定的缓冲器的所述地址进行预注册的指令。
19.根据权利要求15的计算机程序产品,其中用于注册的计算机可读介质上的所述指令还包括用于所述应用利用以太网适配器对用于与所述应用交换的数据包的端口进行注册的指令。
20.根据权利要求15的计算机程序产品,其中用于检查的计算机可读介质上的所述指令还包括用于检查传输控制协议数据包以确定其是否指定了已注册的端口的指令。
21.根据权利要求15的计算机程序产品,其中用于向所述网络接口报告所述应用特定的缓冲器的地址的计算机可读介质上的所述指令还包括:
用于由TCP/IP栈利用通信驱动器对所述应用特定的缓冲器的所述地址进行注册的计算机可读介质上的指令;以及
用于由所述通信驱动器对所述应用特定的缓冲器的所述地址进行记录的计算机可读介质上的指令。
CNB2005100826370A 2004-08-05 2005-07-06 通过路由到应用特定缓冲器来减少网络副本的方法和系统 Expired - Fee Related CN100425038C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/912,497 US7606251B2 (en) 2004-08-05 2004-08-05 Method, system, and computer program product for reducing network copies by port-based routing to application-specific buffers
US10/912,497 2004-08-05

Publications (2)

Publication Number Publication Date
CN1731765A true CN1731765A (zh) 2006-02-08
CN100425038C CN100425038C (zh) 2008-10-08

Family

ID=35757327

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100826370A Expired - Fee Related CN100425038C (zh) 2004-08-05 2005-07-06 通过路由到应用特定缓冲器来减少网络副本的方法和系统

Country Status (2)

Country Link
US (1) US7606251B2 (zh)
CN (1) CN100425038C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104205078A (zh) * 2012-04-10 2014-12-10 英特尔公司 具有降低的延迟的远程直接存储器访问

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519699B2 (en) * 2004-08-05 2009-04-14 International Business Machines Corporation Method, system, and computer program product for delivering data to a storage buffer assigned to an application
CN100418331C (zh) * 2006-03-03 2008-09-10 清华大学 基于网络处理器的路由查找结果缓存方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6590901B1 (en) * 1998-04-01 2003-07-08 Mosaid Technologies, Inc. Method and apparatus for providing a packet buffer random access memory
US6141705A (en) * 1998-06-12 2000-10-31 Microsoft Corporation System for querying a peripheral device to determine its processing capabilities and then offloading specific processing tasks from a host to the peripheral device when needed
JP2000332817A (ja) 1999-05-18 2000-11-30 Fujitsu Ltd パケット処理装置
CN100375466C (zh) * 2002-04-10 2008-03-12 中兴通讯股份有限公司 一种数据包转发控制装置和方法
US7305493B2 (en) * 2002-11-27 2007-12-04 Intel Corporation Embedded transport acceleration architecture
US7012918B2 (en) * 2003-03-24 2006-03-14 Emulex Design & Manufacturing Corporation Direct data placement
US20040230695A1 (en) * 2003-05-15 2004-11-18 Anschutz Thomas Arnold Methods, systems, and computer program products for processing traffic in a communication network based on registration of an access session and/or application flow and specifying a treatment for the access session and/or application flow traffic
US20050190779A1 (en) * 2004-03-01 2005-09-01 Cisco Technology, Inc., A California Corporation Scalable approach to large scale queuing through dynamic resource allocation
US7660322B2 (en) * 2003-12-11 2010-02-09 International Business Machines Corporation Shared adapter

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104205078A (zh) * 2012-04-10 2014-12-10 英特尔公司 具有降低的延迟的远程直接存储器访问
US9774677B2 (en) 2012-04-10 2017-09-26 Intel Corporation Remote direct memory access with reduced latency
CN104205078B (zh) * 2012-04-10 2018-01-19 英特尔公司 具有降低的延迟的远程直接存储器访问
US10334047B2 (en) 2012-04-10 2019-06-25 Intel Corporation Remote direct memory access with reduced latency

Also Published As

Publication number Publication date
CN100425038C (zh) 2008-10-08
US7606251B2 (en) 2009-10-20
US20060029059A1 (en) 2006-02-09

Similar Documents

Publication Publication Date Title
US7562133B2 (en) Method, system and computer program product for delivering data to a storage buffer assigned to an application
US6424621B1 (en) Software interface between switching module and operating system of a data packet switching and load balancing system
US6272136B1 (en) Pseudo-interface between control and switching modules of a data packet switching and load balancing system
US6510164B1 (en) User-level dedicated interface for IP applications in a data packet switching and load balancing system
US6272522B1 (en) Computer data packet switching and load balancing system using a general-purpose multiprocessor architecture
US11809367B2 (en) Programmed input/output mode
US6747949B1 (en) Register based remote data flow control
US5613155A (en) Bundling client write requests in a server
JP3837291B2 (ja) アプリケーション独立形メッセージングシステム
US10091121B2 (en) Method and system for reduction of delay and bandwidth requirements in internet data transfer
US20050021700A1 (en) Wire protocol for a media server system
US8719479B2 (en) Network adaptor optimization and interrupt reduction
JPH1139270A (ja) ビデオ・クリップの分散編集方法
US6339794B2 (en) Wire protocol for a media server system
US20040260841A1 (en) Method, apparatus, and system for internet protocol communication over intelligent platform management bus
EP1570369A2 (en) An apparatus and method for receive transport protocol termination
US8885653B2 (en) Protocol translation
CN100425038C (zh) 通过路由到应用特定缓冲器来减少网络副本的方法和系统
EP2829029B1 (en) Read-throttled input/output scheduler
US20080056263A1 (en) Efficient transport layer processing of incoming packets
JP2000067017A (ja) デ―タ通信方法及びデ―タ通信装置
US7840643B2 (en) System and method for movement of non-aligned data in network buffer model
JP2006121699A (ja) 第1のデータネットワークから第2のデータネットワークへのデータパケットのカーネルレベルの通過のための方法及び装置
US20050160206A1 (en) Method and system for calculating dynamic burst length

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081008

Termination date: 20150706

EXPY Termination of patent right or utility model