互联网由一系列的网络协议组成 , 这些协议的集合叫做OSI协议
按照功能可以划分为七层: 应用层,表示层,会话层,传输层,网络层,数据链路层,物理层,也就是我们常说的OSI七层模型,每一层使用下层提供的服务,并向上层提供服务
OSI七层模型只是一个理想的模型,很少有系统能够具有所有的七层,由此衍生出TCP/IP五层协议: 物理层,数据链路层,网络层,传输层,应用层
物理层
物理层利用传输介质为数据链路层提供物理链接,比如电脑是传输介质,网线是物理链接,电脑之间通过电信号进行数据传输,也就是0101这种二进制位
数据链路层
负责局域网内物理设备之间的数据传输
数据链路层对这些电信号进行分组 , 常见的分组标准是以太网协议 Ethernet
Ethernet规定一组电信号称之为一个数据包,每个数据包分成报头head和数据data两部分
head 保存数据的源地址,目标地址,以及数据类型
data 保存数据包的具体内容
上面提到的源地址和目标地址指的是mac地址
Ethernet规定接入互联网的设备必须具备网卡,每块网卡在出厂时都被烧录上一个唯一的mac地址
电信号分组完成后,数据链路层需要将这些数据包广播出去,但这个广播有一定的局限性 , 互联网由一个个小的局域网组成,数据链路层的广播只能作用于局域网内 , 局域网外的数据从传输需要借助网络层
网络层
负责跨域数据传输
网络层有一个IP协议,对每个局域网指定一个网关,网关可以实现局域网与局域网之间的数据传输
但网络层的通信只能落实到具体的主机,主机上有一系列的应用程序,每个程序对应一个唯一的端口 , 端口与端口之前的通信,需要借助传输层
传输层
负责端口间的数据传输
常见的传输协议有 TCP协议和UDP协议
TCP协议需要通过三次握手和四次挥手建立链接,安全性较高,但效率较低
UDP协议不需要建立链接,安全性较低,但效率较高
应用层
应用层对应OSI七层模型的会话层,表示层和应用层,负责规范数据传输的规则,是应用程序和网络之间的接口,直接向用户提供服务
常见的协议有HTTP协议,FTP协议,DNS协议等