TLI 是在 1986 年随 AT&T System V Release 3 引入的。TLI 当时提供了一个传输层接口 API。ISO 传输服务定义提供了 TLI 所基于的模型。现在,TLI 提供了 OSI 传输层和会话层之间的 API。TLI 接口在 UNIX 的 AT&T System V Release 4 版本中得到了进一步发展,并在 SunOS 5.6 操作系统接口中也可用。
XTI 接口由 TLI 接口演变而来,代表该系列接口的未来方向。使用 XTI 接口与使用 TLI 接口的应用程序相兼容,因此无需立即将 TLI 应用程序移植到 XTI。新应用程序可以使用 XTI 接口,而且可以在必要时将较旧的应用程序移植到 XTI。
TLI 实现为应用程序链接到的库 (libnsl) 中的一组接口调用。XTI 应用程序是使用 c89 前端编译的,并且必须与 xnet 库 (libxnet) 链接。有关使用 XTI 进行编译的其他信息,请参见 standards(5) 手册页。
与第 4 章中介绍的某些其他接口和机制一起使用时,XTI/TLI 代码可以独立于当前的传输提供器。SunOS 5 产品将某些传输提供器(例如 TCP)作为基本操作系统的一部分。传输提供器执行服务,而传输用户请求服务。传输用户向传输提供器发出服务请求。例如,通过 TCP 和 UDP 连接传输数据的请求。
利用以下两个组件,XTI/TLI 还可以用于独立于传输的编程: