Sockets vs TLI - use a common transport-layer interface?

Sockets vs TLI - use a common transport-layer interface?

Post by Rui Antun » Wed, 29 Nov 2000 04:00:00

        I need to develop a kernel module that intercepts
networking-functions independently of the API used.
        I know that Linux has no TLI, just the socket API. However I still
want to built a module that is not dependent of the "user API" but
only of the "kernel API"...

        What is the common transport-layer interface? Both connect
(sockets) and t_connect (TLI) have to use some common kernel TCP
interface (something like tcp_connect). What are the include files
(and source code files) of that common transport-layer interface (to
TCP and UDP)? Where can I find some specific documentation about that

        What is most likely to be changed in future kernels - the socket
API or the transport-layer API? (for example, connec() or
tcp_connect() - which one has the higher probability of being changed
or removed or renamed?)

        Thanks in advance,
                                                Rui Antunes


1. Sockets vs. Transport Layer Interface

Okay, so I've been given this job to write something using sockets.  I start
into the documentation (Sun) and the first thing it says is (paraphrased):
"Don`t do that, you idiot -- use TLI".  Well, now I went back to my management
with the information that Sun says we shouldn't use Sockets.  The reply (a really
good one, I must admit): "Why?".

Well, I checked all the documentation I could round up and didn't find any
comparative info.  Why would one use Sockets (or TLI) versus the other?  Which
one provides more bandwidth?  Which is more reliable?  Which is easier to


Wade Guthrie

2. CNET PRO120 aka Macronix 98715/tulip

3. Transport Layer Interface (TLI)

4. Supported Modems

5. TLI (Transport Layer Interface) for Linux

6. Conner CTMS 3200 + Adaptec 1522A now working!

7. Transport Layer Interface (TLI) Library source

8. how to alias this?

9. Transport Layer Interface (TLI) programming in UNIX System V

10. TLI (Transport Layer Interface) for Linux

11. Transport Layer Interface (TLI)

12. Transport Layer Interface and Streams Interface

13. IP_REUSEADDR option of t_optmgmt() from TLI transport interface