分层的意义
当遇到一个复杂问题的时候,可以使用分层的思想把问题简单化。
- 每层相对独立,只需解决自己的问题
- 每层无须考虑上层的交付,仅需把自己的结果交给下层即可
- 每层有多种方案可供选择,选择不同的方案不会对上下层造成影响
- 每一层会在上一层的基础上增加一些额外信息
五层网络模型
数据的封装和解封装
四层、五层、七层
面试题
说说网络的五层模型
从上到下分别为:应用层、传输层、网络层、数据链路层、物理层。在发送消息时,消息从上到下进行打包,每一层会在上一层基础上加包,而接受消息时,从下到上进行解包,最终得到原始信息。
其中:
- 应用层主要面向互联网中的应用场景,比如网页、邮件、文件中心等等,它的代表协议有 HTTP、SMTP、POP3、FTP、DNS 等等
- 传输层主要面向传输过程,比如 TCP 协议是为了保证可靠的传输;而 UDP 协议则是一种无连接的广播,它们提供了不同的传输方式
- 网络层主要解决如何定位目标以及如何寻找最优路径的问题,比如 IP 等
- 数据链路层的作用是将数据在一个子网(广播域)内有效传输,MAC 地址、交换机都是属于该层的
- 物理层是要解决二进制数据到信号之间的互转问题,集线器、双绞线、同轴电缆等都是属于该层的设备