# ``twisted`.`internet`.`interfaces`.`ITCPTransport``

interface documentation

`class ITCPTransport(ITransport): (source)`

Known subclasses: `twisted.internet.interfaces.ISSLTransport`, `twisted.internet.interfaces.ITLSTransport`

Known implementations: `twisted.internet.iocpreactor.tcp.Connection`, `twisted.internet.tcp.Connection`

View In Hierarchy

A TCP based transport.

Method | `abortConnection` | Close the connection abruptly.
Method | `getHost` | Returns `IPv4Address` or `IPv6Address`.
Method | `getPeer` | Returns `IPv4Address` or `IPv6Address`.
Method | `getTcpKeepAlive` | Return if `SO_KEEPALIVE` is enabled.
Method | `getTcpNoDelay` | Return if `TCP_NODELAY` is enabled.
Method | `loseWriteConnection` | Half-close the write side of a TCP connection.
Method | `setTcpKeepAlive` | Enable/disable `SO_KEEPALIVE`.
Method | `setTcpNoDelay` | Enable/disable `TCP_NODELAY`.

Inherited from `ITransport`:

Method | `loseConnection` | Close my connection, after writing all pending data.
Method | `write` | Write some data to the physical connection, in sequence, in a non-blocking fashion.
Method | `writeSequence` | Write an iterable of byte strings to the physical connection.

def abortConnection(): (source)

Close the connection abruptly.

Discards any buffered data, stops any registered producer, and, if possible, notifies the other end of the unclean closure.

Present Since
11.1

def getHost(): (source)
overrides `twisted.internet.interfaces.ITransport.getHost`
Returns `IPv4Address` or `IPv6Address`.

Returns
`Union[IPv4Address, IPv6Address]` | Undocumented

def getPeer(): (source)
overrides `twisted.internet.interfaces.ITransport.getPeer`
Returns `IPv4Address` or `IPv6Address`.

Returns
`Union[IPv4Address, IPv6Address]` | Undocumented

def getTcpKeepAlive(): (source)
Return if `SO_KEEPALIVE` is enabled.

Returns
`bool` | Undocumented

def getTcpNoDelay(): (source)
Return if `TCP_NODELAY` is enabled.

Returns
`bool` | Undocumented

def loseWriteConnection(): (source)

Half-close the write side of a TCP connection.

If the protocol instance this is attached to provides IHalfCloseableProtocol, it will get notified when the operation is done. When closing write connection, as with loseConnection this will only happen when buffer has emptied and there is no registered producer.

def setTcpKeepAlive(enabled): (source)

Enable/disable `SO_KEEPALIVE`.

Enabling `SO_KEEPALIVE` sends packets periodically when the connection is otherwise idle, usually once every two hours. They are intended to allow detection of lost peers in a non-infinite amount of time.

Parameters
enabled:`bool` | Undocumented

def setTcpNoDelay(enabled): (source)

Enable/disable `TCP_NODELAY`.

Enabling `TCP_NODELAY` turns off Nagle's algorithm. Small packets are sent sooner, possibly at the expense of overall throughput.

Parameters
enabled:`bool` | Undocumented