The Transport Level Interface (TLI) is a UNIX programming interface for accessing transport-layer networking services through a transport provider. It is an API—not a network protocol—and its portability benefits apply only when the provider and platform conform to the interface.
What is the Transport Level Interface?
TLI sits between an application and a transport provider: a program requests transport services through TLI rather than relying directly on some provider-specific details. The UNIX System V Release 4 Migration Guide describes it as an interface between programs and protocols at the transport layer of the OSI Reference Model, and says a program can work with any transport provider that conforms to TLI. UNIX System V Release 4 Migration Guide (1990)
As an Amazon Associate I earn from qualifying purchases.
Some documentation expands the name as “Transport Layer Interface”; this article uses “Transport Level Interface,” as in the title. The distinction that matters is that TLI is the application-facing interface, while the provider supplies the actual transport service.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsWhere does TLI fit in networking?
TLI corresponds to layer four, the transport layer, in the OSI model. Oracle describes it as the standard UNIX user-level interface to OSI level-four data communications features, modeled on ISO 8072, the ISO Transport Service Definition. Oracle Sun Global Glossary
#1 Best Overall
TLI should not be confused with the transport provider or with STREAMS and its kernel-level Transport Provider Interface (TPI). TLI is the user-level API through which a program accesses a provider; TPI is a separate mechanism in the STREAMS architecture. Oracle Solaris TLI documentation
What service styles does TLI support?
The System V guide describes two service models. The provider and implementation determine which options are available; the interface does not make every provider behave identically.
Rank #2
Connection-oriented service
Communication takes place over an established connection. The System V guide characterizes this service as reliable and sequenced. Those properties describe the service model in that documentation, not a guarantee that every TLI provider offers identical behavior or performance.
Connectionless service
Data is sent in self-contained units, commonly described as datagrams, without requiring a logical relationship among successive units. Applications use this model when their transport service does not depend on setting up a persistent connection first.
How portable is TLI?
TLI was designed to reduce dependence on particular transport-provider details, but it is not a promise of universal portability across UNIX-like systems. The System V migration guide’s portability statement is conditional: the provider must conform to TLI. Operating-system support, available providers, and implementation-specific build details can differ.
For example, SCO/Xinuos documentation records tiuser.h as a TLI header and libnsl as the Network Services Library in the UnixWare context it documents. Those names are implementation-specific historical guidance, not instructions that can safely be assumed for another system. SCO/Xinuos: Transport interface (XTI and TLI)
Rank #4
TLI vs. XTI: what is the difference?
XTI is the X/Open-sponsored successor to TLI. In SCO/Xinuos UnixWare documentation, the APIs are described as nearly identical in syntax and semantics; TLI routines remain for backward compatibility, while XTI is preferred for new applications in that environment. This is a vendor- and platform-scoped description, not a universal recommendation for every current UNIX-like system. SCO/Xinuos: Transport interface (XTI and TLI)
| Aspect | TLI | XTI |
|---|---|---|
| Lineage | Earlier UNIX transport interface. | Described by SCO/Xinuos as the X/Open-sponsored successor. |
| Syntax and semantics | Nearly identical to XTI in the cited UnixWare documentation. | Nearly identical to TLI in the cited UnixWare documentation. |
| Role in the cited UnixWare environment | Retained for backward compatibility. | Preferred for new applications in that documentation. |
| Headers and libraries | Implementation-specific; UnixWare documentation names tiuser.h and libnsl. |
Implementation-specific; consult the target system’s documentation. |
When did TLI originate?
SCO/Xinuos dates TLI’s introduction to AT&T UNIX System V Release 3.0 in 1986 and says it was modeled on ISO 8072. Its successor relationship with XTI belongs to that historical UNIX and X/Open context; it does not establish which APIs are available or preferred on present-day systems. SCO/Xinuos: Transport interface (XTI and TLI)
For a deeper treatment of legacy System V network programming, Stephen A. Rago’s UNIX System V Network Programming includes Chapter 4, “The Transport Layer Interface.” The publisher catalog lists the book’s publication in March 1993. Addison-Wesley Professional / O’Reilly catalog
Quick Recap
Best Value
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




