摘要:
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.
摘要:
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.
摘要:
The illustrative embodiments provide a computer implemented method, a data processing system, and a computer program product for managing a plurality of interfaces. An application selects a subset of the plurality of interfaces. In response to the selection, the application is bound to the subset of interfaces, wherein the application listens to the subset of interfaces.
摘要:
A method, system, and program for efficient packet desegmentation on a network adapter are provided. Multiple data packet segments received at a network adapter from a single connection are buffered at the network adapter. The single connection is identified by addresses and ports extracted from the header of each data packet segment. Responsive to detecting a buffering release condition, the data packet segments are released from the network adapter as a desegmented group to a network stack, such that the data packets segments received for the single connection are efficiently passed to the network stack together. In particular, the single connection is a TCP connection identified by a four-tuple of source and destination addresses and ports extracted from each TCP header of each of said plurality of data packet segments.
摘要:
A method, system, and program for monitoring thread usage to dynamically control a thread pool are provided. An application running on the server system invokes a listener thread on a listener socket for receiving client requests at the server system and passing the client requests to one of multiple threads waiting in a thread pool. Additionally, the application sends an ioctl call in blocking mode on the listener thread. A TCP layer within the server system detects the listener thread in blocking mode and monitors a thread count of at least one of a number of incoming requests waiting to be processed and a number of said plurality of threads remaining idle in the thread pool over a sample period. Once the TCP layer detects a thread usage event, the ioctl call is returned indicating the thread usage event with the thread count, such that a number of threads in the thread pool may be dynamically adjusted to handle the thread count.
摘要:
A receiving host in a TCP/IP network sends an acknowledgment indicating a received data packet is corrupt. The sending host will begin transmitting with a new field set in the IP header called a check-TCP-checksum bit, thereby requesting that all routers in the TCP/IP network perform a checksum on the entire received packet. Routers in the TCP/IP network will perform a complete checksum on an entire packet with the check-TCP-checksum bit set, and not just on the IP header. The routers continuously monitor the ratio of corrupt packets received on a particular port that fail the entire packet checksum to the total number of packets received on that port. If the ratio of corrupt-to-received packets exceeds a corruption threshold, the router assumes that the associated link is causing data corruption and issues a routing update indicating that the link is bad and should be avoided. Once the retransmission rate between the sender and receiver drops below a threshold level, the bad link has been detected and avoided within the TCP/IP network and the check-TCP-checksum option in the IP header is no longer set in data packets transmitted to the receiver host.
摘要:
A computer implemented method, data processing system, and computer program product for efficiently using disk space when unarchiving files in the same file system. An archive file is read to identify a total number of data files in the archive file. The number of headers in the archive file is determined based on the total number of data files. A location in a first disk space of a largest data file in the archive file is determined from an offset in a header corresponding to the largest data file. The largest data file is then copied from the first disk space to a second disk space. The first disk space occupied by the largest data file is then released by truncating the archive file. The obtaining, copying, and releasing steps are repeated for each data file in the archive file until all of the data files are unarchived.
摘要:
A computer implemented method, data processing system, and computer program product for efficiently using disk space when unarchiving files in the same file system. An archive file is read to identify a total number of data files in the archive file. The number of headers in the archive file is determined based on the total number of data files. A location in a first disk space of a largest data file in the archive file is determined from an offset in a header corresponding to the largest data file. The largest data file is then copied from the first disk space to a second disk space. The first disk space occupied by the largest data file is then released by truncating the archive file. The obtaining, copying, and releasing steps are repeated for each data file in the archive file until all of the data files are unarchived.
摘要:
A method, system, and computer program product for optimizing a message size for communication in a communication network are disclosed. The method comprises identifying a connection to a target, sending to a path maximum transmission unit value server (which is not the target) a request for a path maximum transmission unit value for the connection to the target, and, in response to receiving the path maximum transmission unit value for the connection to the target from the server, optimizing a communication by sending to the target a packet having a size in accordance with the value.
摘要:
Data communications through a split connection proxy in a data communications protocol, including receiving in a proxy from a client, asynchronously with respect to any other messages between the client and the proxy, one or more client messages including client message data items including a connection request for a connection between the client and the proxy, destination connection data identifying a destination server, and a message from the client to the destination server; and sending from the proxy to the server, asynchronously with respect to any messages between the client and the proxy and asynchronously with respect to any other messages between the proxy and the server, one or more proxy messages including proxy message data items including a connection request for a connection between the proxy and the destination server and the message from the client to the destination server.