Method and apparatus for an improved bulk read socket call
    1.
    发明授权
    Method and apparatus for an improved bulk read socket call 失效
    用于改进大容量读取套接字呼叫的方法和装置

    公开(公告)号:US07065581B2

    公开(公告)日:2006-06-20

    申请号:US09892968

    申请日:2001-06-27

    IPC分类号: G06F15/16 G06F3/06

    CPC分类号: H04L49/90

    摘要: An apparatus and method for an improved bulk read socket call are provided. With the apparatus and method, a new field, so_rcvlen, is added to the socket structure that identifies the bulk read size requested by the user. The kernel of the prior art recv( ) function is also modified so that it sets the so_rcvlen to the size requested by the user prior to the recv( ) function going to sleep and waiting for the full data size requested by the user. A new flag, SP_MSGWAITALL, is also provided in the socket structure. In the TCP input processing, when data is received for a particular socket, the current setting of the SP_MSGWAITALL is checked. If the SP_MSGWAITALL flag is set, it is determined whether the amount of data stored in the socket receive buffer is less than the value of so_rcvlen. If not, the TCP input processing does not wake up the recv( ) thread. However, for every alternate segment, the TCP input processing sends back an acknowledgment (ACK). In the TCP output processing, when the SP_MSGWAITALL flag is set and the amount of data in the socket receive buffer is less than so_rcvlen, the full window is advertised. Once the TCP input processing determines that there is at least an amount of data in the socket receive buffer equal to the value of so_rcvlen, the TCP input processing will wake up the recv( ) thread and the SP_MSGWAITALL flag is reset.

    摘要翻译: 提供了一种改进的大容量读取插座呼叫的装置和方法。 使用设备和方法,将新字段so_rcvlen添加到标识用户请求的批量读取大小的套接字结构中。 现有技术recv()函数的内核也被修改,以便在recv()函数进入休眠状态并等待用户请求的完整数据大小之前,将so_rcvlen设置为用户请求的大小。 插座结构中还提供了一个新标志SP_MSGWAITALL。 在TCP输入处理中,当为特定套接字收到数据时,将检查SP_MSGWAITALL的当前设置。 如果设置了SP_MSGWAITALL标志,则确定存储在套接字接收缓冲区中的数据量是否小于so_rcvlen的值。 如果没有,TCP输入处理不会唤醒recv()线程。 然而,对于每个备用段,TCP输入处理发回确认(ACK)。 在TCP输出处理中,当设置了SP_MSGWAITALL标志并且套接字接收缓冲区中的数据量小于so_rcvlen时,将通告完整窗口。 一旦TCP输入处理确定套接字接收缓冲区中至少有一定数量的数据等于so_rcvlen的值,则TCP输入处理会唤醒recv()线程,并重置SP_MSGWAITALL标志。

    Method and apparatus for an improved bulk read socket call
    2.
    发明授权
    Method and apparatus for an improved bulk read socket call 失效
    用于改进大容量读取套接字呼叫的方法和装置

    公开(公告)号:US07970925B2

    公开(公告)日:2011-06-28

    申请号:US12274031

    申请日:2008-11-19

    CPC分类号: H04L49/90

    摘要: An apparatus and method for an improved bulk read socket call are provided. With the apparatus and method, a new field, so_rcvlen, is added to the socket structure that identifies the bulk read size requested by the user. The kernel of the prior art recv( ) function is also modified so that it sets the so_rcvlen to the size requested by the user prior to the recv( ) function going to sleep and waiting for the full data size requested by the user. A new flag, SP_MSGWAITALL, is also provided in the socket structure. In the TCP input processing, when data is received for a particular socket, the current setting of the SP_MSGWAITALL is checked. If the SP_MSGWAITALL flag is set, it is determined whether the amount of data stored in the socket receive buffer is less than the value of so_rcvlen. If not, the TCP input processing does not wake up the recv( ) thread. However, for every alternate segment, the TCP input processing sends back an acknowledgment (ACK). In the TCP output processing, when the SP_MSGWAITALL flag is set and the amount of data in the socket receive buffer is less than so_rcvlen, the full window is advertised. Once the TCP input processing determines that there is at least an amount of data in the socket receive buffer equal to the value of so_rcvlen, the TCP input processing will wake up the recv( ) thread and the SP_MSGWAITALL flag is reset.

    摘要翻译: 提供了一种改进的大容量读取插座呼叫的装置和方法。 使用设备和方法,将新字段so_rcvlen添加到标识用户请求的批量读取大小的套接字结构中。 现有技术recv()函数的内核也被修改,以便在recv()函数进入休眠状态并等待用户请求的完整数据大小之前,将so_rcvlen设置为用户请求的大小。 插座结构中还提供了一个新标志SP_MSGWAITALL。 在TCP输入处理中,当为特定套接字收到数据时,将检查SP_MSGWAITALL的当前设置。 如果设置了SP_MSGWAITALL标志,则确定存储在套接字接收缓冲区中的数据量是否小于so_rcvlen的值。 如果没有,TCP输入处理不会唤醒recv()线程。 然而,对于每个备用段,TCP输入处理发回确认(ACK)。 在TCP输出处理中,当设置了SP_MSGWAITALL标志并且套接字接收缓冲区中的数据量小于so_rcvlen时,将通告完整窗口。 一旦TCP输入处理确定套接字接收缓冲区中至少有一定数量的数据等于so_rcvlen的值,则TCP输入处理将唤醒recv()线程,并重置SP_MSGWAITALL标志。

    Method and Apparatus for an Improved Bulk Read Socket Call
    3.
    发明申请
    Method and Apparatus for an Improved Bulk Read Socket Call 失效
    改进的批量读取套接字呼叫的方法和装置

    公开(公告)号:US20090070481A1

    公开(公告)日:2009-03-12

    申请号:US12274031

    申请日:2008-11-19

    IPC分类号: G06F15/16

    CPC分类号: H04L49/90

    摘要: An apparatus and method for an improved bulk read socket call are provided. With the apparatus and method, a new field, so_rcvlen, is added to the socket structure that identifies the bulk read size requested by the user. The kernel of the prior art recv( ) function is also modified so that it sets the so_rcvlen to the size requested by the user prior to the recv( ) function going to sleep and waiting for the full data size requested by the user. A new flag, SP_MSGWAITALL, is also provided in the socket structure. In the TCP input processing, when data is received for a particular socket, the current setting of the SP_MSGWAITALL is checked. If the SP_MSGWAITALL flag is set, it is determined whether the amount of data stored in the socket receive buffer is less than the value of so_rcvlen. If not, the TCP input processing does not wake up the recv( ) thread. However, for every alternate segment, the TCP input processing sends back an acknowledgment (ACK). In the TCP output processing, when the SP_MSGWAITALL flag is set and the amount of data in the socket receive buffer is less than so_rcvlen, the full window is advertised. Once the TCP input processing determines that there is at least an amount of data in the socket receive buffer equal to the value of so_rcvlen, the TCP input processing will wake up the recv( ) thread and the SP_MSGWAITALL flag is reset.

    摘要翻译: 提供了一种改进的大容量读取插座呼叫的装置和方法。 使用设备和方法,将新字段so_rcvlen添加到标识用户请求的批量读取大小的套接字结构中。 现有技术recv()函数的内核也被修改,以便在recv()函数进入休眠状态并等待用户请求的完整数据大小之前,将so_rcvlen设置为用户请求的大小。 插座结构中还提供了一个新标志SP_MSGWAITALL。 在TCP输入处理中,当为特定套接字收到数据时,将检查SP_MSGWAITALL的当前设置。 如果设置了SP_MSGWAITALL标志,则确定存储在套接字接收缓冲区中的数据量是否小于so_rcvlen的值。 如果没有,TCP输入处理不会唤醒recv()线程。 然而,对于每个备用段,TCP输入处理发回确认(ACK)。 在TCP输出处理中,当设置了SP_MSGWAITALL标志并且套接字接收缓冲区中的数据量小于so_rcvlen时,将通告完整窗口。 一旦TCP输入处理确定套接字接收缓冲区中至少有一定数量的数据等于so_rcvlen的值,则TCP输入处理将唤醒recv()线程,并重置SP_MSGWAITALL标志。

    Method and apparatus for an improved bulk read socket call
    4.
    发明授权
    Method and apparatus for an improved bulk read socket call 失效
    用于改进大容量读取套接字呼叫的方法和装置

    公开(公告)号:US07469296B2

    公开(公告)日:2008-12-23

    申请号:US11375785

    申请日:2006-03-15

    CPC分类号: H04L49/90

    摘要: An apparatus and method for an improved bulk read socket call are provided. With the apparatus and method, a new field, so_rcvlen, is added to the socket structure that identifies the bulk read size requested by the user. The kernel of the prior art recv( ) function is also modified so that it sets the so_rcvlen to the size requested by the user prior to the recv( ) function going to sleep and waiting for the full data size requested by the user. A new flag, SP_MSGWAITALL, is also provided in the socket structure. In the TCP input processing, when data is received for a particular socket, the current setting of the SP_MSGWAITALL is checked. If the SP_MSGWAITALL flag is set, it is determined whether the amount of data stored in the socket receive buffer is less than the value of so_rcvlen. If not, the TCP input processing does not wake up the recv( ) thread. However, for every alternate segment, the TCP input processing sends back an acknowledgment (ACK). In the TCP output processing, when the SP_MSGWAITALL flag is set and the amount of data in the socket receive buffer is less than so_rcvlen, the full window is advertised. Once the TCP input processing determines that there is at least an amount of data in the socket receive buffer equal to the value of so_rcvlen, the TCP input processing will wake up the recv( ) thread and the SP_MSGWAITALL flag is reset.

    摘要翻译: 提供了一种改进的大容量读取插座呼叫的装置和方法。 使用设备和方法,将新字段so_rcvlen添加到标识用户请求的批量读取大小的套接字结构中。 现有技术recv()函数的内核也被修改,以便在recv()函数进入休眠状态并等待用户请求的完整数据大小之前,将so_rcvlen设置为用户请求的大小。 插座结构中还提供了一个新标志SP_MSGWAITALL。 在TCP输入处理中,当为特定套接字收到数据时,将检查SP_MSGWAITALL的当前设置。 如果设置了SP_MSGWAITALL标志,则确定存储在套接字接收缓冲区中的数据量是否小于so_rcvlen的值。 如果没有,TCP输入处理不会唤醒recv()线程。 然而,对于每个备用段,TCP输入处理发回确认(ACK)。 在TCP输出处理中,当设置了SP_MSGWAITALL标志并且套接字接收缓冲区中的数据量小于so_rcvlen时,将通告完整窗口。 一旦TCP输入处理确定套接字接收缓冲区中至少有一定数量的数据等于so_rcvlen的值,则TCP输入处理将唤醒recv()线程,并重置SP_MSGWAITALL标志。

    SYSTEM AND METHOD FOR MINIMIZING RETRY DELAYS IN HIGH TRAFFIC COMPUTER NETWORKS
    5.
    发明申请
    SYSTEM AND METHOD FOR MINIMIZING RETRY DELAYS IN HIGH TRAFFIC COMPUTER NETWORKS 失效
    用于在高交通计算机网络中最小化重试延迟的系统和方法

    公开(公告)号:US20090049178A1

    公开(公告)日:2009-02-19

    申请号:US11839955

    申请日:2007-08-16

    IPC分类号: G06F15/16

    CPC分类号: H04L41/5019

    摘要: A system, method, and program product is provided that requests, by a first computer system, a new network session with a second computer system. The new network session request occurs after a previous network session between the two systems and the new network session request includes a new sequence number that is different from a previous sequence number that was used during the previous network session. The first computer system receives an acknowledgement from the second computer system that references the previous sequence number instead of the new sequence number. In response to receiving the acknowledgement at the first computer system that references the previous sequence number, the first computer system modifies the new sequence number by setting it to a value that is higher than the previous sequence number, and the first computer system re-requests the new network session using the modified new sequence number.

    摘要翻译: 提供了一种系统,方法和程序产品,其由第一计算机系统请求与第二计算机系统的新网络会话。 新的网络会话请求发生在两个系统之前的网络会话之后,并且新的网络会话请求包括与先前网络会话期间使用的先前序列号不同的新的序列号。 第一计算机系统从第二计算机系统接收到引用先前序列号而不是新序列号的确认。 响应于在第一计算机系统处接收到引用先前序列号的确认,第一计算机系统通过将其设置为高于先前序列号的值来修改新序列号,并且第一计算机系统重新请求 新网络会话使用修改的新序列号。

    System and method for minimizing retry delays in high traffic computer networks
    6.
    发明授权
    System and method for minimizing retry delays in high traffic computer networks 失效
    用于最小化高流量计算机网络中的重试延迟的系统和方法

    公开(公告)号:US07818433B2

    公开(公告)日:2010-10-19

    申请号:US11839955

    申请日:2007-08-16

    IPC分类号: G06F15/16 H04L1/00 H01H67/00

    CPC分类号: H04L41/5019

    摘要: A system, method, and program product is provided that requests, by a first computer system, a new network session with a second computer system. The new network session request occurs after a previous network session between the two systems and the new network session request includes a new sequence number that is different from a previous sequence number that was used during the previous network session. The first computer system receives an acknowledgement from the second computer system that references the previous sequence number instead of the new sequence number. In response to receiving the acknowledgement at the first computer system that references the previous sequence number, the first computer system modifies the new sequence number by setting it to a value that is higher than the previous sequence number, and the first computer system re-requests the new network session using the modified new sequence number.

    摘要翻译: 提供了一种系统,方法和程序产品,其由第一计算机系统请求与第二计算机系统的新网络会话。 新的网络会话请求发生在两个系统之前的网络会话之后,并且新的网络会话请求包括与先前网络会话期间使用的先前序列号不同的新的序列号。 第一计算机系统从第二计算机系统接收到引用先前序列号而不是新序列号的确认。 响应于在第一计算机系统处接收到引用先前序列号的确认,第一计算机系统通过将其设置为高于先前序列号的值来修改新序列号,并且第一计算机系统重新请求 新网络会话使用修改的新序列号。

    Method and apparatus for preventing network outages
    7.
    发明授权
    Method and apparatus for preventing network outages 失效
    防止网络中断的方法和装置

    公开(公告)号:US07526706B2

    公开(公告)日:2009-04-28

    申请号:US11334677

    申请日:2006-01-18

    IPC分类号: H04L1/18 G01R31/08

    摘要: A computer implemented method, apparatus, and computer usable program code to determine whether an acknowledgment packet from an end point acknowledges receipt of unsent data in response to receiving the acknowledgement packet over a connection with the end point. A determination is made as to whether acknowledgement packets for unsent data have been received sequentially a selected number of times over the connection in response to the acknowledgement packet being for unsent data. The acknowledgment packet is dropped if acknowledgement packets have been received sequentially the selected number of times over the connection.

    摘要翻译: 计算机实现的方法,装置和计算机可用程序代码,用于确定来自端点的确认分组是否响应于通过与终点的连接接收到确认分组来确认未发送数据的接收。 确定响应于对于未发送数据的确认分组,是否已经通过连接顺序地接收到选定次数的未发送数据的确认分组。 如果在连接上已经顺序地接收到选定次数的确认分组,则确认分组被丢弃。

    Method, system and article for improved TCP performance during packet reordering
    8.
    发明授权
    Method, system and article for improved TCP performance during packet reordering 失效
    方法,系统和文章,用于在数据包重排序期间改进TCP性能

    公开(公告)号:US07742419B2

    公开(公告)日:2010-06-22

    申请号:US12101765

    申请日:2008-04-11

    IPC分类号: H04L1/00

    摘要: TCP congestion avoidance is implemented upon retransmission of a packet and is reverted back to the original congestion state upon receipt of an early acknowledgement (ACK), indicating reordering of packets, thereby eliminating a needless restriction on TCP bandwidth. Upon receiving an ACK to a retransmitted packet, it is determined if the ACK resulted from receipt of the original reordered packet or the retransmitted packet, based on the arrival time of the ACK at the sender. If the round-trip-time (RTT) for the retransmitted packet is much lower than the average or current calculated RTT for the network link between sender and receiver, then the retransmission occurred as a result of a reordering event, and the congestion window is restored back to its value prior to the retransmission, thereby permitting the network link to continue operating at its original increased throughput.

    摘要翻译: TCP拥塞避免在分组重传时实现,并且在接收到指示重新排序分组的早期确认(ACK)时被恢复到原始拥塞状态,从而消除对TCP带宽的不必要的限制。 在向重传的分组接收到ACK时,基于ACK在发送方的到达时间确定ACK是否从接收到原始重新排序的分组或重传分组而产生。 如果重发分组的往返时间(RTT)远低于发送方和接收方之间的网络链路的平均或当前计算的RTT,则重新发送作为重排序事件的结果,拥塞窗口为 在重传之前恢复其值,从而允许网络链路以其原始增加的吞吐量继续运行。

    Efficient send socket call handling by a transport layer
    9.
    发明授权
    Efficient send socket call handling by a transport layer 失效
    传输层有效发送socket呼叫处理

    公开(公告)号:US07571247B2

    公开(公告)日:2009-08-04

    申请号:US11301106

    申请日:2005-12-12

    IPC分类号: G06F15/16

    摘要: A method, system, and program provide for efficient send socket call handling by a transport layer. A transport layer of a network protocol stack receives a send socket call for data of a specified length from an application layer. Responsive to detecting that there is insufficient memory for a single memory allocation to a buffer in the transport layer for at least the specified length, the transport layer blocks the send socket call. The transport layer only wakes the send socket call upon detection of sufficient memory for the single memory allocation within the buffer of the transport layer for at least the specified length, wherein waking the send socket call triggers a kernel to perform the single memory allocation in the buffer and to write the data to the single memory allocation in a single pass.

    摘要翻译: 方法,系统和程序提供传输层有效的发送套接字呼叫处理。 网络协议栈的传输层从应用层接收指定长度的数据的发送套接字调用。 响应于检测到对于至少指定长度的传输层中的缓冲器的单个存储器分配没有足够的存储器,传输层阻止发送套接字调用。 检测到传输层缓冲区内单个内存分配的足够内存至少达到指定长度时,传输层只会唤醒发送套接字调用,其中唤醒发送套接字调用会触发内核执行单个内存分配 缓冲区,并将数据写入单次存储器分配。

    Method, system, and computer program product for delivering data to a storage buffer assigned to an application
    10.
    发明授权
    Method, system, and computer program product for delivering data to a storage buffer assigned to an application 失效
    用于将数据传送到分配给应用程序的存储缓冲区的方法,系统和计算机程序产品

    公开(公告)号:US07519699B2

    公开(公告)日:2009-04-14

    申请号:US10912498

    申请日:2004-08-05

    IPC分类号: G06F15/173

    摘要: A method, system, and computer program product in a computer-readable medium for delivering data, received from a network, to a storage buffer assigned to an application is proposed. An application designates a communication buffer within a local data processing system for buffering data communicated with an application. The local data processing system reports to a network interface of the local data processing system a memory address of the designated communication buffer, and the data processing system creates a cookie containing the memory address. The data processing system then sends the cookie form the local data processing system to a remote data processing system, such that the remote data processing system may address data directly to the designated communication buffer.

    摘要翻译: 提出了一种用于将从网络接收的数据传送到分配给应用的存储缓冲器的计算机可读介质中的方法,系统和计算机程序产品。 应用程序指定本地数据处理系统内的通信缓冲器,用于缓冲与应用程序通信的数据。 本地数据处理系统向本地数据处理系统的网络接口报告指定通信缓冲器的存储器地址,并且数据处理系统创建包含存储器地址的cookie。 然后,数据处理系统将本地数据处理系统的cookie发送到远程数据处理系统,使得远程数据处理系统可以直接将数据寻址到指定的通信缓冲器。