Lines Matching refs:socket

15     | KCM socket |   | KCM socket |   | KCM socket |   | KCM socket |
46 written on a KCM socket are sent atomically on an appropriate TCP socket.
47 Similarly, in the receive path, messages are constructed on each TCP socket
48 (Psock) and complete messages are steered to a KCM socket.
54 for each bound TCP socket, this structure holds the state for constructing
63 can be used to send and receive messages from the KCM socket.
68 KCM supports SOCK_DGRAM and SOCK_SEQPACKET socket types.
79 Filter (BPF) is used for this. When attaching a TCP socket to a multiplexor a
84 to a KCM socket.
86 TCP socket management
89 When a TCP socket is attached to a KCM multiplexor data ready (POLLIN) and
91 is a state change (disconnection) or other error on a TCP socket, an error is
92 posted on the TCP socket so that a POLLERR event happens and KCM discontinues
93 using the socket. When the application gets the error notification for a
94 TCP socket, it should unattach the socket from KCM and then handle the error
95 condition (the typical response is to close the socket and create a new
99 socket buffer on the attached TCP socket (the socket buffer size can be set by
102 socket. The BPF program may also enforce a maximum messages size and report an
105 A timeout may be set for assembling messages on a receive socket. The timeout
106 value is taken from the receive timeout of the attached TCP socket (this is set
108 (ETIMEDOUT) is posted on the socket.
116 A new multiplexor and initial KCM socket is created by a socket call::
118 socket(AF_KCM, type, protocol)
126 After the first KCM socket is created using the socket call as described
128 a KCM socket. This is accomplished by an ioctl on a KCM socket::
148 ioctl on a KCM socket for the multiplexor. e.g.::
167 - fd: file descriptor for TCP socket being attached
173 Unattaching a transport socket from a multiplexor is straightforward. An
189 Disabling receive on KCM socket
192 A setsockopt is used to disable or enable receiving on a KCM socket.
193 When receive is disabled, any pending messages in the socket's
235 In an Nx1 configuration, KCM logically provides multiple socket handles
237 operations on the TCP socket (for instance copyin and copyout of data is
238 parallelized). In an application, a KCM socket can be opened for each
250 each received message to a different KCM socket or steering each sent
251 message to a different TCP socket, can negatively impact performance
256 messages on a KCM socket.
265 same KCM socket during each TCP ready callback. The targeted KCM socket
266 changes at each receive ready callback on the KCM socket. The application
274 TCP socket attached to a KCM multiplexor in epoll set for POLLERR
275 event. If an error occurs on an attached TCP socket, KCM sets an EPIPE
276 on the socket thus waking up the application thread. When the application
278 socket from KCM and then close it. It is assumed that once an error is
279 posted on the TCP socket the data stream is unrecoverable (i.e. an error
285 In KCM there is no means to correlate a message to the TCP socket that
287 only one attached TCP socket). However, the application does retain
288 an open file descriptor to the socket so it will be able to get statistics
289 from the socket which can be used in detecting issues (such as high
290 retransmissions on the socket).