OSI 模型不要忘了他的全称是:Open Systems Interconnection Reference Model ,开放系统相互关联参考模型。我们往往思考问题时总是会忽略 参考 二字,实际上还有其他网络参考模型。比如TCP/IP网络参考模型,实际现实世界中也是遵循TCP/IP模型构建的,对于我们来说只是不得不学OSI模型而已,会背又怎样,还是记不住。
我们很混乱的知识体系中,比如我问TCP/IP模型是几层,4层,网络接口层、网际层IP、传输层、应用层。但是我问ssl属于哪一层的协议,我们又会说这是传输层的协议。还有二层交换机这个二层指的又是数据链路层。你不是说事实标准是TCP/IP模型吗,为什么会这样?
这种混乱本质是理论理想化与工程实用性的妥协。TCP/IP协议栈早于OSI模型出现,但OSI的七层划分更细致,再加上网络设备行业习惯(厂商起名字的习惯)沿用OSI分层,使用者又基于TCP/IP开发。总之我们衍生合并了新的非标准TCP/IP模型,5层,物理层、数据链路层、网络层、传输层、应用层。实际上只是将原TCP/IP模型的网络接口层拆开,本身TCP/IP模型就是将物理层和数据链路层合并成网络接口层了。