tcp_socket_data Struct Reference
[Transmission Control Protocol (TCP) Service]

TCP socket specific data. More...

#include <tcp.h>


Data Fields

uint32_t acknowledged
 Last acknowledged byte.
sockaddraddr
 Remote host address.
socklen_t addrlen
 Remote host address length.
int backlog
 Listening backlog.
size_t data_fragment_size
 Data fragment size.
uint16_t dest_port
 Remote host port.
device_id_t device_id
 Device identifier.
uint32_t expected
 Expected sequence number by the remote host.
int expected_count
 Expected sequence number counter.
uint32_t fin_incoming
 Incoming FIN.
uint32_t fin_outgoing
 Outgoing FIN.
size_t headerlen
 IP pseudo header length.
packet_tincoming
 Incoming packet queue.
uint32_t last_outgoing
 Last outgoing sequence number.
int listening_socket_id
 Parent listening socket identifier.
fibril_rwlock_tlocal_lock
 Local sockets safety lock.
socket_cores_t * local_sockets
 Parent local sockets.
uint32_t next_incoming
 Next incoming sequence number.
uint32_t next_outgoing
 Next outgoing sequence number.
tcp_operation_t operation
 Pending operation data.
packet_toutgoing
 Outgoing packet queue.
void * pseudo_header
 IP pseudo header.
tcp_socket_state_t state
 TCP socket state.
suseconds_t timeout
 Acknowledgement timeout.
int timeout_count
 Timeouts in a row counter.
size_t treshold
 Treshold size in bytes.
size_t window
 Window size in bytes.


Detailed Description

TCP socket specific data.

Definition at line 173 of file tcp.h.


Field Documentation

int backlog

Listening backlog.

The maximal number of connected but not yet accepted sockets.

Definition at line 190 of file tcp.h.

size_t data_fragment_size

Data fragment size.

Sending optimalization.

Definition at line 181 of file tcp.h.

uint32_t expected

Expected sequence number by the remote host.

The sequence number the other host expects. The notification is sent only upon a packet reecival.

Definition at line 222 of file tcp.h.

int expected_count

Expected sequence number counter.

Counts the number of received notifications for the same sequence number.

Definition at line 229 of file tcp.h.

packet_t* incoming

Incoming packet queue.

Packets are buffered until received in the right order. The packets are excluded after successfully read. Packets are sorted by their starting byte. Packets metric is set as their data length.

Definition at line 238 of file tcp.h.

int listening_socket_id

Parent listening socket identifier.

Set if this socket is an accepted one.

Definition at line 196 of file tcp.h.

fibril_rwlock_t* local_lock

Local sockets safety lock.

May be locked for writing while holding the global lock for reading when changing the local sockets only. The global lock may be locked only before locking the local lock. The global lock may be locked more weakly than the local lock. The global lock may be released before releasing the local lock.

See also:
tcp_globals:lock

Definition at line 272 of file tcp.h.

packet_t* outgoing

Outgoing packet queue.

Packets are buffered until acknowledged by the remote host in the right order. The packets are excluded after acknowledged. Packets are sorted by their starting byte. Packets metric is set as their data length.

Definition at line 248 of file tcp.h.

int timeout_count

Timeouts in a row counter.

If TCP_MAX_TIMEOUTS is reached, the connection is lost.

Definition at line 281 of file tcp.h.


The documentation for this struct was generated from the following file:
Generated on Thu Jun 2 07:46:00 2011 for HelenOS/USB by  doxygen 1.4.7