20 世纪 80 年代初,国际标准化组织 (ISO) 制定了开放式系统互联 (OSI) 参考模型,用于标准化网络中设备的通信方式。此模型是确保网络设备之间交互操作的重大举措。

OSI 模型将网络通信划分为七个不同的层。尽管还存在其它模型,但当今大多数网络厂商都使用此框架来构建自己的产品。

协议栈是指一个实现协议行为的系统,由一系列这样的层组成。协议栈可通过硬件或软件实现,也可二者结合。通常只有下层通过硬件实现,上层则通过软件实现。每一层负责对数据进行部分准备处理以便通过网络传输。图表所示为 OSI 模型每一层的工作内容。

在 OSI 模型中传输数据时,可以比喻成数据沿着发送计算机的 OSI 模型协议层向下传输,再沿着接收计算机的 OSI 模型协议层向上传输。

当用户发送数据(例如电子邮件)时,封装过程将从应用层开始。应用层提供对应用程序的网络访问。信息依次流经上面三层,在向下到达传输层时被视为数据。

在传输层,数据被拆分为更易于管理的数据段,称为协议数据单元 (PDU),以便通过网络按顺序传输。PDU 用于描述在 OSI 模型不同协议层之间移动时的数据。传输层 PDU 还包含一些信息用于进行可靠的数据传输,例如端口号、序列号和确认号。

在网络层,来自传输层的每个数据段变成一个数据包。数据包中包含逻辑编址和其它第 3 层控制信息。

在数据链路层,来自网络层的每个数据包变成一个帧。帧包含物理地址和错误纠正信息。

在物理层,帧变成比特。这些比特通过网络介质传输,一次一个比特。

在接收计算机上,解封过程逆向执行封装过程。比特到达接收计算机的 OSI 模型物理层。然后沿着接收计算机的 OSI 模型向上传输,将数据带到应用层,电子邮件程序便在此显示该电子邮件。

注意:助记方法可以帮助记住 OSI 的七个协议层。例如,All People Seem To Need Data Processing 和 Please Do Not Throw Sausage Pizza Away。