目录
1.OSI参考模型
1.1 OSI参考模型介绍
为了更好地促进互联网络的研究和发展,国际标准化组织ISO制定了网络互连的七层框架的一个参考模型,称为开放系统互连参考模型,简称OSI/RM(Open System Internetwork Reference Model)。
分层原因:
在早期的全球互联网中,由于硬件和软件都没有统一标准,使得计算机之间的通信十分的困难。所以就需要一个标准的参考模型。
分层的优点:
- 促进标准化工作,允许各供应商开发。
- 各层间相互独立,把网络操作分成低复杂性单元。
- 灵活性好,某一层变化不会影响到别层,设计者可以专心设计和开发模块功能。
- 各层间通过一个接口在相邻层上下通信。
1.2 七层模型
应用层:网络服务与最终用户的一个接口
表示层:数据的表示、安全、压缩,将接收到的数据翻译成二进制数据,并指定数据的存储格式、加密格式,解密等等工作
会话层:建立、管理、中止会话 是否 允许 建立会话连接,建立了不同操作系统的之间的会话,通过一些协议去判断 符合 确定你的两个软件之间是否可以进行通信(两个微信之间进行通信)
传输层: 定义传输数据的协议端口号,以及流控和差错校验 将上层数据分片并加上端口号封装成数据段,或通过对报文头中的端口识别,实现网络中不同主机上的用户进程之间的数据通信。
网络层:定义逻辑地址、实现不同网络之间的寻址,理论选择转发数据的最佳路径 将上层数据加上源和目的方的逻辑(IP)地址封装成数据包,实现数据从源端到目的端的传输
数据链路层:建立逻辑连接、进行硬件地址寻址、差错校验等功能(交换机 网卡) 将上层数据加上源和目的方的物理(MAC)地址封装成数据帧,MAC地址是用来标识网卡的物理地址,建立数据链路;当发现数据错误时,可以重传数据帧。
物理层:建立、维护、断开物理连接 报文头部和上层数据信息都是由二进制数组成的,物理层将这些二进制数字组成的比特流转换成电信号在网络中传输。
1.3 OSI参考模型总结
名称 | 作用 | PDU(最小传输单位) | 主要设备 |
应用层 | 网络服务与最终用户的一个接口 | 消息 | 主机 |
表示层 | 数据的表示、安全、压缩 | 消息 | 主机 |
会话层 | 建立、管理、中止会话 |
消息 | 主机 |
传输层 | 定义传输数据的协议端口号,以及流控和差错校验 | 数据段 | 防火墙 |
网络层 | 进行逻辑地址寻址,实现不同网络之间的路径选择 | 数据包 | 路由器 |
数据链路层 | 建立逻辑连接、进行硬件地址寻址、差错校验等功能 | 数据帧 | 交换机 |
物理层 | 建立、维护、断开物理连接 | 比特流 | 网卡 |
其中应用层、表示层、会话层为高层面向用户
网络层、数据链路层、物理层为低层面向硬件
2. TCP/IP参考模型
2.1 TCP/IP参考模型介绍
TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。
TCP/IP 4层模型(思科)
TCP/IP 5层模型(华为)
2.2 TCP/IP协议簇
TCP/IP协议簇是Internet的基础,也是当今最流行的组网形式。TCP/IP是一组协议的代名词,包括许多别的协议,组成了TCP/IP协议簇。其中比较重要的有SLIP协议、PPP协议、IP协议、ICMP协议、ARP协议、TCP协议、UDP协议、FTP协议、DNS协议、SMTP协议等。
物理层的主要协议有:
-
IEEE802.3有线局域网
-
IEEE802.11无线局域网标准
数据链路层的主要协议有:
-
点对点协议(Point-to-Point Protocol) PPP协议是目前广域网上应用最广泛的协议之一,它的优点在于简单、具备用户验证能力、可以解决IP分配等。
网络层的主要协议有:
IP协议:(Internet Protocol,网际协议),而 IP 又由四个支撑协议 组成:
-
ARP(地址解析协议): 是根据IP地址获取物理mac地址的协议
-
RARP(逆地址解析协议): 是根据物理mac地址获取IP地址的协议
-
ICMP(网际控制报文协议):ping 网络连通性检测
-
IGMP(网际组管理协议):一个组播协议,该协议运行在主机和组播路由器之间
传输层主要协议:
-
TCP :传输控制协议 可靠协议 (安全性高,速度慢)
-
UDP:用户数据报协议 不可靠协议(安全性不高,速度快)
应用层主要协议有:
-
HTTP(超文本传输协议):是一个简单的请求-响应协议,现在主要的场景是web服务,就是网页的传输,默认使用tcp的80端口
-
HTTPs:是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性,默认使用tcp的443端口
-
FTP文件传输协议:FTP(file File Transfer Protocol)提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限,默认使用tcp的20,21端口
-
TFTP简单文件传输协议:是一个小而易于实现的文件传送协议,TFTP只支持文件传输,不支持交互,没有庞大的命令集。也没有目录列表功能,以及不能对用户进行身份鉴别,默认使用udp的69端口
-
SNMP简单网络管理协议:是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,默认使用udp的161端口
-
SMTP简单邮件传输协议:一组用于从源地址到目的地址传送邮件的规则,并且控制信件的中转方式,用于邮件的发送,默认使用tcp的25端口
-
POP3邮局协议版本3:用于邮件的接收,默认使用tcp的110端口
-
telnet远程登陆协议:一种字符模式的终端服务,可以使用户通过网络进入远程主机或网络设备,然后对远程主机或设备进行操作,默认使用tcp的23端口
-
ssh安全的远程登陆协议,默认使用tcp的22端口ssh
-
DNS 域名解析系统:将域名和IP地址相互映射,默认使用tcp和udp的53端口
-
DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码,默认使用udp的67和68端口。
3.数据封装与解封装的过程
3.1 封装过程
应用层 首先将数据分片( 不可能将整个文件直接传输过去文件过大等因素)
传输层: 接收上一层的分片数据,加入tcp头部地址 变成数据段,(传输层功能)
网络层:接收数据段加入 ip头部 变成 数据包
数据链路层: 接收数据包 加入 MAC 头部 变成 数据帧
物理层:接收数据帧,变成bit流
3.2 解封装过程
解封装过程由自上而下变成由下而上。
物理层:将接收到的bit流,传输给数据链路层
数据链路层:去掉收到bit流的MAC头部,再传输给网络层
网络层:把接收的数据的IP头部去掉,在传输给传输层
传输层:传输层会把网络层传上来的数据的TCP头部去掉,再上传至应用层
应用层:最终将数据呈现给用户