网络分层和数据封装与解封简括
1、网络分层思想
网络分层的思想:将复杂的流程分解为几个功能相对单一的过程
- 整个流程更加清晰,复杂问题简单化
- 更容易发现问题并针对性的解决问题
2、关于OSI分层
- OSI分层模型:
国际标准化组织(ISO)1984年颁布开放系统互连(OSI)参考模型,模型里将网络传输分为7层。
- 每层的含义
- 应用层:应用层是网络服务与最终用户的一个接口。人机交互窗,把人的语言输入计算机当中。
- 表示层:数据的表示、安全和压缩。将接受到的数据翻译成二进制计算机语言,并对数据进行压缩和解压、数据加密和解密等工作。
- 会话层:建立、管理、中止会话。管理是否允许不同机器上的用户建立会话之间的连接关系。
- 传输层:定义传输数据的协议端口号,以及流控和差错校验。将上层数据分片并加上端口号封装成数据段。(承上启下)
- 网络层:进行逻辑地址寻找,实现不同网络之间的路径选择。将上层数据加上源和目的放的逻辑地址封装成数据包,实现数据从源端到目的端的传输。
- 数据链路层:建立逻辑连接、进行硬件地址寻址、差错效验等功能。将上层数据加上源和目的方的mac地址并封装成数据帧。
- 物理层:建立、维护、断开物理连接。物理层将这些二进制组成的比特流进行传输。
3、关于TCP/IP模型
- TCP/IP模型:
TCP/IP模型和OSI模型的区别就是TCP/IP模型将应用层、表示层和会话层合并在一起了
- TCP/IP协议族的组成:
- 应用层:HTTP、FTP、TFTP、SMTP、SNMP、DNS
- 传输层:TCP、UDP
- 网络层:ICMP、IGMP、TP、ARP、RARP
- 数据链路层及物理层:由底层网络定义的协议
4、数据的封装与解封装
- 数据的封装:
- 应用层数据到达传输层,传输层会将数据进行分片和封装,封装成数据段(TCP:源端口和目的端口)
- 传输层将数据段传到网络层,网络层会在数据段原有的基础上再去封装一个IP头部(源地址和目的地址)变成数据包
- 网络层将数据包传到数据链路层,数据链路层会将数据包再进行封装,加上mac头部(源mac和目的mac)这个时候数据包变成数据帧
- 数据帧到达物理层变成比特流,比特流通过网线到达对方主机,对方网卡将进行解封
- 数据的解封:
- 数据从物理层到达数据链路层,数据链路层会识别mac地址是不是正确地址并接受,此时mac头部分离。
- 数据从数据链路层到达网络层,网络层将IP头部分离并识别地址是否正确并接受。
- 数据从网络层到达传输层,传输层将TCP头部分离并识别端口地址是否正确并接受。
- 数据到达应用层并接受。
|