首先重温下计算机网络中OSI经典的七层模型:
应用层:文件传输,电子邮件,文件服务,虚拟终端
表示层:数据格式化,代码转换,数据加密
会话层:接触或建立与其他节点的联系
传输层:提供端对端的接口
网络层:为数据包选择路由
数据链路层:传输有地址的帧,错误检测功能
物理层:以二进制在物理媒体上传输数据
怎么才能把它刻在脑海,而不是去死记硬背呢?笔者建议这样去记忆:
首先:网络的发明就是为了应用,那么应用层在顶端就无可厚非了;
其次:数据有了相对应的表示(数据格式化、代码转换、加密)才可以(应)用,要不然就乱了套了,也就没法服务于应用层了,那么也就有了表示层;
再次:表示层定义了数据的格式,它必定会有相应的会话支持,否则发送方和接收方不能一一对应了,随即会话层应运而生;
第四:会话是建立在发送端和接受端,那么发送端和接受端传输数据也就必不可少了,传输层也就随之诞生;
第五:传输层的建立,不可能一次性找到接受端(局域网的存在),而是通过路由才能到达接收端,这样网络层就发挥了作用
第六:网络层必然有很多子网组成,那么可以理解为通过数据链路层将很多的子网链接起来,形成数据链路层,
最后:物理层最好理解,数据的发送接受需要一个载体:即光纤,线缆等
作为扩展,下图对OSI模型和TCP/IP模型进行了对比以及处于各层相对应的协议组成:
OSI模型和TCP/IP模型对比
各层相对应的协议组成