Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ tcp(5P) — A/UX 0.7

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(5N)

inet(5F)



     tcp(5P)                                                   tcp(5P)



     NAME
          tcp - Internet Transmission Control Protocol

     SYNOPSIS
          #include <sys/socket.h>
          #include <netinet/in.h>

          s = socket(AFINET, SOCKSTREAM, 0);

     DESCRIPTION
          The TCP protocol provides reliable, flow-controlled, two-way
          transmission of data.  It is a byte-stream protocol used to
          support the SOCKSTREAM abstraction.  TCP uses the standard
          Internet address format and, in addition, provides a per-
          host collection of ``port addresses''.  Thus, each address
          is composed of an Internet address specifying the host and
          network, with a specific TCP port on the host identifying
          the peer entity.

          Sockets utilizing the tcp protocol are either ``active'' or
          ``passive''.  Active sockets initiate connections to passive
          sockets.  By default TCP sockets are created active; to
          create a passive socket the listen(2N) system call must be
          used after binding the socket with the bind(2N) system call.
          Only passive sockets may use the accept(2N) call to accept
          incoming connections.  Only active sockets may use the
          connect(2N) call to initiate connections.

          Passive sockets may ``underspecify'' their location to match
          incoming connection requests from multiple networks.  This
          technique, termed ``wildcard addressing,'' allows a single
          server to provide service to clients on multiple networks.
          To create a socket which listens on all networks, the
          Internet address INADDRANY must be bound.  The TCP port may
          still be specified at this time; if the port is not
          specified the system will assign one.  Once a connection has
          been established the socket's address is fixed by the peer
          entity's location.   The address assigned the socket is the
          address associated with the network interface through which
          packets are being transmitted and received.  Normally this
          address corresponds to the peer entity's network.

     DIAGNOSTICS
          A socket operation may fail with one of the following errors
          returned:

          [EISCONN]           when trying to establish a connection on
                              a socket which already has one;

          [ENOBUFS]           when the system runs out of memory for
                              an internal data structure;




     Page 1                                        (last mod. 1/14/87)





     tcp(5P)                                                   tcp(5P)



          [ETIMEDOUT]         when a connection was dropped due to
                              excessive retransmissions;

          [ECONNRESET]        when the remote peer forces the
                              connection to be closed;

          [ECONNREFUSED]      when the remote peer actively refuses
                              connection establishment (usually
                              because no process is listening to the
                              port);

          [EADDRINUSE]        when an attempt is made to create a
                              socket with a port which has already
                              been allocated;

          [EADDRNOTAVAIL]     when an attempt is made to create a
                              socket with a network address for which
                              no network interface exists.

     SEE ALSO
          intro(5N), inet(5F).

     BUGS
          It should be possible to send and receive TCP options.  The
          system always tries to negotiates the maximum TCP segment
          size to be 1024 bytes.  This can result in poor performance
          if an intervening network performs excessive fragmentation.




























     Page 2                                        (last mod. 1/14/87)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026