Epoll optimisations
    1.
    发明授权
    Epoll optimisations 有权
    Epoll优化

    公开(公告)号:US09384071B2

    公开(公告)日:2016-07-05

    申请号:US13158176

    申请日:2011-06-10

    IPC分类号: G06F3/00 G06F9/54

    CPC分类号: G06F9/545 G06F9/48

    摘要: A method for managing I/O event notifications in a data processing system, the data processing system comprising a plurality of applications and an operating system having a kernel and an I/O event notification mechanism operable to maintain a plurality of I/O event notification objects each handling a set of file descriptors associated with one or more I/O resources, the method comprising: for each of a plurality of application-level configuration calls: intercepting at a user-level interface a configuration call from an application to the I/O event notification mechanism for configuring an I/O event notification object; and storing a set of parameters of the configuration call at a data structure, each set of parameters representing an operation on the set of file descriptors handled by the I/O event notification object; and subsequently, on a predetermined criterion being met: the user-level interface causing the plurality of configuration calls to be effected by means of a first system call to the kernel.

    摘要翻译: 一种用于在数据处理系统中管理I / O事件通知的方法,所述数据处理系统包括多个应用程序,以及具有内核和I / O事件通知机制的操作系统,所述操作系统可操作以维持多个I / O事件通知 每个处理与一个或多个I / O资源相关联的一组文件描述符的对象,所述方法包括:对于多个应用级配置调用中的每一个:在用户级接口处截取从应用到I的配置调用 / O事件通知机制,用于配置I / O事件通知对象; 以及在数据结构中存储配置调用的一组参数,每组参数表示由I / O事件通知对象处理的文件描述符集合上的操作; 并且随后,在满足预定标准的情况下:通过对内核的第一系统调用来实现导致多个配置调用的用户级接口。

    Reducing network latency
    2.
    发明授权

    公开(公告)号:US09258390B2

    公开(公告)日:2016-02-09

    申请号:US13283420

    申请日:2011-10-27

    IPC分类号: G06F15/16 H04L29/06

    摘要: A method of transmitting data for use at a data processing system and network interface device, the data processing system being coupled to a network by the network interface device, the method comprising: forming a message template in accordance with a predetermined set of network protocols, the message template including at least in part one or more protocol headers; forming an application layer message in one or more parts; updating the message template with the parts of the application layer message; processing the message template in accordance with the predetermined set of network protocols so as to complete the protocol headers; and causing the network interface device to transmit the completed message over the network.

    Data transmission with constant data rate
    3.
    发明授权
    Data transmission with constant data rate 有权
    数据传输速率恒定

    公开(公告)号:US08930557B2

    公开(公告)日:2015-01-06

    申请号:US10548121

    申请日:2004-03-03

    IPC分类号: G06F15/16 H04L12/801

    CPC分类号: H04L47/10

    摘要: A method for forming data received from a data source into frames for transmission over a data link according to a protocol in which data is carried as data frames and in which once transmission of the data frame begun the entirety of the data frame must be transmitted at no less than a pre-set data rate, the method comprising: including in a frame traffic data formed from data received for transmission from the data source, and if insufficient data received for transmission from the data source is available to transmit the frame at the pre-set data rate, including in the frame padding data, the padding data being of a predetermined format distinguishable from the traffic data.

    摘要翻译: 一种用于形成从数据源接收的数据到根据数据作为数据帧传送数据的协议的数据链路传输的数据帧的方法,并且其中数据帧的一次发送开始整个数据帧必须在 不少于预设的数据速率,该方法包括:在帧中包括由从数据源接收的数据形成的业务数据,以及如果从数据源发送的数据不足可用于在 包括在帧填充数据中的预设数据速率,填充数据是与业务数据区分开的预定格式。

    Onload network protocol stacks
    4.
    发明授权
    Onload network protocol stacks 有权
    负载网络协议栈

    公开(公告)号:US08489761B2

    公开(公告)日:2013-07-16

    申请号:US12373173

    申请日:2007-07-09

    IPC分类号: G06F15/16

    摘要: A method for transmitting data by means of a data processing system, the system supporting an operating system and at least one application and having access to a memory and a network interface device capable of supporting a communication link over a network with another network interface device, the method comprising the steps of: forming by means of the application data to be transmitted; requesting by means of the application a user-mode operating system functionality of the data processing system to direct the data to be transmitted, the request including an indication of a protocol by which the data is to be transmitted; responsive to that request, the user-mode operating system functionality selecting a protocol processing entity in accordance with the indication of a protocol by which the data is to be transmitted; forming within the context of the application by means of the protocol processing entity the data into packets for transmission in accordance with the protocol by which the data is to be transmitted and writing by means of the protocol processing entity the packets to be transmitted to an area of the memory; initiating by means of communication between the protocol processing entity and the network interface device a transmission operation of at least some of the packets over the network.

    摘要翻译: 一种用于通过数据处理系统发送数据的方法,支持操作系统的系统和至少一个应用并具有访问存储器的系统和能够通过网络与另一网络接口设备支持通信链路的网络接口设备, 所述方法包括以下步骤:通过要发送的应用数据形成; 通过应用程序请求数据处理系统的用户模式操作系统功能来引导要发送的数据,该请求包括要发送数据的协议的指示; 响应于该请求,用户模式操作系统功能根据要发送数据的协议的指示来选择协议处理实体; 在应用的上下文中通过协议处理实体将数据形成为根据要发送数据的协议进行传输的分组,并且通过协议处理实体将要发送的分组写入区域 的记忆; 通过协议处理实体和网络接口设备之间的通信来启动通过网络的至少一些分组的传输操作。

    CHIMNEY ONLOAD IMPLEMENTATION OF NETWORK PROTOCOL STACK
    5.
    发明申请
    CHIMNEY ONLOAD IMPLEMENTATION OF NETWORK PROTOCOL STACK 有权
    网络协议堆栈的CHIMNEY上载实现

    公开(公告)号:US20130111059A1

    公开(公告)日:2013-05-02

    申请号:US13720770

    申请日:2012-12-19

    IPC分类号: H04L29/06

    CPC分类号: H04L29/06 H04L69/161

    摘要: A software networking arrangement for operation in a data processing system comprising an OS being operable in: a first mode in which it performs protocol processing of a flow of traffic data and then passes the protocol processed data to a NIC for transmission; and a second mode in which it does not perform protocol processing, the OS being arranged to, on entering the second mode, transmit a message to the NIC indicating that the NIC is to perform protocol processing of the flow of traffic data; the software networking arrangement comprising: a protocol processing entity; and a driver for a NIC configured to receive said message from the OS and in response thereto, configure the protocol processing entity to perform transport-level protocol processing of the flow of traffic data received from an application within the context of that application and then pass the protocol processed data to the NIC.

    摘要翻译: 一种用于在数据处理系统中操作的软件网络布置,包括OS,其操作方式为:第一模式,其中执行业务数据流的协议处理,然后将所述协议处理的数据传递到NIC进行传输; 以及其不进行协议处理的第二模式,所述OS被配置为在进入所述第二模式时向NIC发送指示NIC要执行业务数据流的协议处理的消息; 所述软件网络布置包括:协议处理实体; 以及用于NIC的驱动器,被配置为从OS接收所述消息,并且响应于此,配置协议处理实体以在该应用的上下文内从应用接收的业务数据流执行传输级协议处理,然后传递 协议处理的数据到NIC。

    ONLOAD NETWORK PROTOCOL STACKS
    6.
    发明申请
    ONLOAD NETWORK PROTOCOL STACKS 有权
    上载网络协议栈

    公开(公告)号:US20100057932A1

    公开(公告)日:2010-03-04

    申请号:US12373173

    申请日:2007-07-09

    摘要: A method for transmitting data by means of a data processing system, the system supporting an operating system and at least one application and having access to a memory and a network interface device capable of supporting a communication link over a network with another network interface device, the method comprising the steps of: forming by means of the application data to be transmitted; requesting by means of the application a user-mode operating system functionality of the data processing system to direct the data to be transmitted, the request including an indication of a protocol by which the data is to be transmitted; responsive to that request, the user-mode operating system functionality selecting a protocol processing entity in accordance with the indication of a protocol by which the data is to be transmitted; forming within the context of the application by means of the protocol processing entity the data into packets for transmission in accordance with the protocol by which the data is to be transmitted and writing by means of the protocol processing entity the packets to be transmitted to an area of the memory; initiating by means of communication between the protocol processing entity and the network interface device a transmission operation of at least some of the packets over the network.

    摘要翻译: 一种通过数据处理系统发送数据的方法,支持操作系统的系统和至少一个应用程序并具有访问存储器的系统和能够通过网络与另一网络接口设备支持通信链路的网络接口设备, 所述方法包括以下步骤:通过要发送的应用数据形成; 通过应用程序请求数据处理系统的用户模式操作系统功能来引导要发送的数据,该请求包括要发送数据的协议的指示; 响应于该请求,用户模式操作系统功能根据要发送数据的协议的指示来选择协议处理实体; 在应用的上下文中通过协议处理实体将数据形成为根据要发送数据的协议进行传输的分组,并且通过协议处理实体将要发送的分组写入区域 的记忆; 通过协议处理实体和网络接口设备之间的通信来启动通过网络的至少一些分组的传输操作。

    INTERRUPT MANAGEMENT
    7.
    发明申请
    INTERRUPT MANAGEMENT 有权
    中断管理

    公开(公告)号:US20140012980A1

    公开(公告)日:2014-01-09

    申请号:US13722841

    申请日:2012-12-20

    IPC分类号: H04L12/26

    CPC分类号: H04L43/0876 H04L41/0622

    摘要: A method for use in a data processing system connected to a network in accordance with a data transfer protocol, the data processing system having one or more event queues for holding network events, and being capable of responding to interrupts issued in response to the presence of a network event in the data processing system by invoking a stack to cause processing in accordance with the data transfer protocol of network events on the event queues; the method comprising: deciding whether to permit the interrupts to be enabled, in dependence on the result of a determination as to the presence of current indications that the stack will be invoked by an entity in the data processing system to cause processing in accordance with the data transfer protocol of network events on the event queues.

    摘要翻译: 一种在根据数据传输协议连接到网络的数据处理系统中使用的方法,所述数据处理系统具有用于保存网络事件的一个或多个事件队列,并且能够响应于响应于存在 数据处理系统中的网络事件,通过调用堆栈来根据事件队列上的网络事件的数据传输协议进行处理; 所述方法包括:根据对所述数据处理系统中的实体将调用所述堆栈的当前指示的确定的结果,决定是否允许中断允许,以使得根据 事件队列上网络事件的数据传输协议。

    Hashing algorithm for network receive filtering
    8.
    发明授权
    Hashing algorithm for network receive filtering 有权
    用于网络接收过滤的哈希算法

    公开(公告)号:US07984180B2

    公开(公告)日:2011-07-19

    申请号:US11255124

    申请日:2005-10-20

    IPC分类号: H04L12/56

    摘要: Roughly described, a network interface device is assigned a maximum extent-of-search. A hash function is applied to the header information of each incoming packet, to generate a hash code for the packet. The hash code designates a particular subset of the table within which the particular header information should be found, and an iterative search is made within that subset. If the search locates a matching entry before the search limit is exceeded, then the incoming data packet is delivered to the receive queue identified in the matching entry. But if the search reaches the search limit before a matching entry is located, then device delivers the packet to a default queue, such as a kernel queue, in the host computer system. The kernel is then responsible for delivering the packet to the correct endpoint.

    摘要翻译: 大致描述了网络接口设备被分配最大的搜索范围。 散列函数被应用于每个输入分组的报头信息,以产生分组的哈希码。 哈希代码指定在其中应当找到特定头部信息的表的特定子集,并且在该子集内进行迭代搜索。 如果搜索在超出搜索限制之前找到匹配的条目,则传入数据包将被传递到匹配条目中标识的接收队列。 但是,如果在找到匹配的条目之前搜索达到搜索限制,则设备会将数据包传递到主机系统中的默认队列(如内核队列)。 然后,内核负责将数据包传递到正确的端点。

    Modifying application behaviour
    9.
    发明授权
    Modifying application behaviour 有权
    修改应用程序行为

    公开(公告)号:US08763018B2

    公开(公告)日:2014-06-24

    申请号:US13283423

    申请日:2011-10-27

    IPC分类号: G06F13/00 G06F9/46 G06F9/45

    摘要: A data processing system comprising: an operating system providing an application programming interface; an application supported by the operating system and operable to make calls to the application programming interface; an intercept library configured to intercept calls of a predetermined set of call types made by the application to the application programming interface; and a configuration data structure defining at least one action to be performed for each of a plurality of sequences of one or more calls having predefined characteristics, the one or more calls being of the predetermined set of call types; wherein the intercept library is configured to, on intercepting a sequence of one or more calls defined in the configuration data structure, perform the corresponding action(s) defined by the configuration data structure.

    摘要翻译: 一种数据处理系统,包括:提供应用编程接口的操作系统; 由操作系统支持并且可操作以对应用程序编程接口进行调用的应用程序; 拦截库被配置为将应用程序所形成的预定呼叫类型的呼叫截取到应用编程接口; 以及配置数据结构,其定义要对具有预定特性的一个或多个呼叫的多个序列中的每个序列执行的至少一个动作,所述一个或多个呼叫是所述预定呼叫类型集合; 其中所述截取库被配置为在截取在所述配置数据结构中定义的一个或多个调用的序列时,执行由所述配置数据结构定义的相应动作。

    User-level stack
    10.
    发明授权
    User-level stack 有权
    用户级堆栈

    公开(公告)号:US08612536B2

    公开(公告)日:2013-12-17

    申请号:US13173349

    申请日:2011-06-30

    IPC分类号: G06F15/167

    CPC分类号: G06F13/10

    摘要: A method for transmitting data by means of a data processing system, the system being capable of supporting an operating system and at least one application and having access to a memory and a network interface device capable of supporting a communication link over a network with another network interface device, the method comprising the steps of: forming by means of the application data to be transmitted; requesting by means of the application a non-operating-system functionality of the data processing system to send the data to be transmitted; responsive to that request: writing the data to be transmitted to an area of the memory; and initiating by means of direct communication between the non-operating-system functionality and the network interface device a transmission operation of at least some of the data over the network; and subsequently accessing the memory by means of the operating system and performing at least part of a transmission operation of at least some of the data over the network by means of the network interface device.

    摘要翻译: 一种用于通过数据处理系统发送数据的方法,该系统能够支持操作系统和至少一个应用并具有访问存储器和能够通过网络与另一网络支持通信链路的网络接口设备 接口装置,所述方法包括以下步骤:通过要发送的应用数据形成; 通过应用程序请求数据处理系统的非操作系统功能来发送要发送的数据; 响应于该请求:将要发送的数据写入存储器的区域; 以及通过所述非操作系统功能和所述网络接口设备之间的直接通信来启动所述网络中的至少一些所述数据的传输操作; 随后通过操作系统访问存储器,并通过网络接口设备通过网络执行至少一些数据的传输操作的至少一部分。