5

我想知道 OSI 模型的传输层在计算机系统中运行的位置。它是操作系统的一部分吗?它是否在自己的进程或线程中运行?它如何将信息向上传递到其他应用程序或向下传递到其他层?

4

3 回答 3

12

我想知道 OSI 模型的传输层在计算机系统中运行的位置。

它不是。OSI 模型适用于 OSI 协议套件,该协议套件已失效,并且不在 AFAICS 的任何地方运行。然而 TCP/IP 有它自己的模型,它也包括一个传输层。我会假设这就是你以后的意思。

它是操作系统的一部分吗?

是的。

它是否在自己的进程或线程中运行?

不,它作为操作系统的一部分运行。

它如何将信息传递给其他应用程序

通过系统调用,例如 Berkeley Sockets API、WinSock 等。

还是下到其他层?

通过内部内核 API。

于 2012-04-06T06:41:16.600 回答
0

OSI 模型所称的传输层与 TCP/IP 中的 TCP 层相当接近。也就是说,它提供了有保证的交付/错误恢复,以及主机之间的透明传输——您不需要关注数据是如何从一台主机路由到另一台主机的——您只需指定一个目的地,网络就会计算出来如何到达那里。

至于实现的地方:嗯,主要是在 TCP/IP 堆栈中,它通常是操作系统的一部分。但是,现代硬件至少可以在硬件中实现一些位和部分(例如,TCP 校验和和流控制)。网络堆栈将通过设备驱动程序将 TCP 操作的这些部分卸载到硬件。

于 2012-04-06T05:50:02.707 回答
0

传输层作为库提供,通常随操作系统一起提供。

逻辑部分在库中实现。与传输介质的交互是通过驱动程序进行的。

于 2012-04-06T05:51:10.513 回答