我一直在寻找有关 OSI 层模型的深入知识。我想知道 Application、Presentation 和 session 层标头包含哪些信息。此外,这些层存在于哪里?在顶层工作的协议存在于操作系统内部,或者它们只是内置在用户正在使用的特定应用程序中。
OSI 层模型
此外,这些层存在于哪里?
无处。当前没有与 OSI 模型兼容的操作系统。所有现有的计算机和启用网络的设备都使用 TCP/IP 模型。
尽管在文献中(包括本网站),我们使用了两种模型的混合,保留了 OSI 模型的第 1/2/3 层,以及 TCP/IP 模型的第 4/5 层。为了真正保持一致,我们应该将 IPv4 或 IPv6 称为第 2 层协议,将 TCP、UDP 等称为第 3 层,但是这确实是老习惯,不会改变。
所以答案是:
我想知道 Application、Presentation 和 session 层标头包含哪些信息
是:没有,因为它们实际上并不存在。
即使使用 TCP/IP 模型,请记住它只是一个模型,即关于如何构建网络堆栈的指南,实际实现有时必须对模型做出妥协。
真正使用的是 :
- RFC像RFC791 - Internet 协议
- IEEE 标准,例如以太网的802.3a 或 WiFi 的 802.11
物理层 (L1) 和数据链路层 (L2) 通常在硬件中实现:交换机、WAP、NIC。L1 是唯一实际移动数据的层,L2 控制其在本地网络内的流动。
IEEE 明确声明他们的 802 系列协议使用从 OSI 模型派生的分层模型,强调较低的两层(参见IEEE 802:概述和架构)。
网络层 (L3) 和传输层 (L4) 通常在操作系统的“网络堆栈”中实现 - 最突出的是 IPv4、IPv6 和 TCP、UDP。L3 负责全局路由,L4 为应用程序的实际数据提供传输。
应用层 (L7) 位于应用程序内部。电子邮件客户端使用 SMTP 和 IMAP,浏览器使用 HTTP/S。各种基本协议(如 DNS)通常由操作系统实现,但各不相同。
会话层 (L5) 和表示层 (L6) 通常不会单独实现,但 - 如果完全实现的话 - 也位于应用程序内部。
每一层中的大多数协议都使用前置标头来组织它们的工作,但这些标头可能会有很大差异,因此没有通用格式。
每一层都有一个特定的任务,它们一起形成了一个模块化的“堆栈”,具有极其广泛的功能和适应性。毕竟,这种模块化使 TCP/IP 成为地球上最流行和最强大的协议集。