计算机网络参考模型
1.OSI 参考模型
- 由于各个计算机厂商都采用私有的网络模型,因此给通信带来了诸多麻烦,ISO 于1984年颁布了 OSI 参考模型。OSI 是一个开放式体系结构,它规定将网络分为七层,从下往上依次是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层
- 每一层的功能:
- 应用层:网络服务与最终用户的一个接口(将原始数据转换电脑能识别的二进制数)
- 表示层:数据的表示、安全、压缩
- 会话层:建立、管理、中止会话
- 传输层:定义传输数据的协议端口号,以及流控和差错校验
- 网络层:进行逻辑地址寻址,实现不同网络之间的路径选择
- 数据链路层:建立逻辑连接、进行硬件地址寻址、差错校验等功能
- 物理层:建立、维护、断开物理连接(将二进制数转换为传输的电信号或光信号)
2.TCP/IP 四层和五层参考模型
3.每层对应的协议
- 物理层和数据链路层:在物理层和数据链路层,TCP/IP 并没有定义任何特定的协议,它支持所有标准的,专用的协议,网络可以是局域网(如广泛使用的以太网)、城域网或广域网。所以,TCP/IP实际上只有三个层次。
- 网络层:在网络层,TCP/IP 定义了 IP(Internet Protocol 网际协议),而 IP 又由四个支撑协议组成:ARP(地址解析协议)、RARP(逆地址解析协议)、ICMP(网际控制报文协议)和 IGMP(网际组管理协议)。
- 传输层:传统上,TCP/IP 有两个传输层协议:TCP(传输控制协议)和 UDP(用户数据报协议)。TCP 协议传输更加稳定可靠,UDP协议传输效率更高。
- 应用层:在应用层,TCP/IP 定义了许多协议,如 HTTP(超文本传输协议)、FTP(文件传输协议)、SMTP(简单邮件传输协议)、DNS(域名系统)等。TELNET、SSH、HTTPS、TFTP、NTP、POP3、IMAP
4、网络传输过程中数据封装和解封装
-
在实际的网络环境中,最终的发送方和接收方往往相隔千山万水,中间会有很多的硬件设备起到中转作用。为了说明整个过程,我们假设了一种通信结构,在两台通信的计算机之间增加了两台交换机和路由器,发送主机所发送的数据只有经过这些 “ 中间设备” 才能到达接收主机,
如下图所示:
- 发送主机先进行数据封装
- 从发送主机物理网卡发送的电信号通过网线到达交换机,交换机将电信号转换成二进制数据送往交换机的数据链路层,因为交换机是数据链路层的设备,所以它将可以查看数据帧头部的内容,但不会进行封装和解封装过程,当交换机发现数据帧头部封装的 MAC 地址不属于自己的 MAC 地址时,它不会像终端设备那样将数据帧丢弃,而是根据该 MAC 地址将数据帧智能地转发到路由器设备,在转发前要重新将二进制数据转换成物理的电信号
- 当路由器收到数据后,会拆掉数据链路层的 MAC 头部信息,将数据送达网络层,这样 IP 头部信息就 “暴露” 在最外面了,路由器将检测数据包头部的目标 IP 地址信息,并根据该信息进行路由过程,智能地将数据报文转发到下一跳路由器上,在转发前要重新封装新的 MAC 头部信息,并将数据转换成二进制数。