Skip to main content

网络OSI模型

一、网络七层or四层协议

1. 为什么会有TCP/IP协议

计算机只是单兵作战并不会发挥太大的潜力,只有将他们连接起来,才能发挥最大的作用。于是人们想方设法用电线将计算机连接了起来。但是仅仅用电线连接起来是远远不够的,他们需要通信,正如两个不同方言的人需要交流一样。所以需要定义一些共通的东西来交流,TCP/IP就是这么诞生的。TCP/IP并不是一个协议,而是一个协议簇的统称,它包括:TCP协议,IP协议,IMAC协议,http协议,ftp协议,pop3协议等。电脑有了这些,就可以实现交流了。

2. TCP/IP协议分层

七层协议目前基本上只存在理论中,实际的网络协议是四层。

osi

osi7

  • 物理层:底层数据传输 即,电脑之间(准确来说网络设备之间)物理连接的介质,以及网络设备与网络终端之间数据传递的规则称之为物理层,其中的数据是以比特的形式传递的。单位:比特
  • 数据链路层:定义数据的基本格式,如何传输,如何标识 在链路层中,需要将比特流组合成字节的组合。这种把比特流组合成字节的组合我们称之为数据帧。对数据进行处理封装成数据帧并传递和错误检测的层就是数据链路层。 单位:帧
  • 网络层:定义IP编址,定义路由功能 网络层就是负责选择最佳路径,并保证数据始终沿着最佳路径传输。路由器的功能就是选合适的路径。 单位:数据包
  • 传输层:端到端传输数据的基本功能 传输层就是负责将数据进行可靠或者不可靠传递,负责终端之间的传送。如:TCP、UDP 单位:数据段
  • 会话层:控制应用程序之间会话能力 会话层用来区分不同的进程。如打开两个浏览器,输入两个地址,确认输入的地址和响应的内容在自己想要的浏览器上显示,
  • 表示层:数据格式标识,基本压缩加密功能 对传输数据进行解密压缩等,针对不同类型数据进行格式描述。如压缩加密图片后再传输,如微信界面发送信息再传输过程中加密再解密等。
  • 应用层:各种应用软件,包括 Web 应用 应用层有点复杂,但是是我们接触的最多的,简单的说,就是我们从屏幕上看到的信息,提供人和计算机交流的层

3. 交换机和路由器的区别

  1. 交换机工作在第二层,数据链路层;路由器工作在第三层,网络层。

  2. 在数据链路层只能识别物理地址,因此当交换机的某个端口收到一个数据帧时,交换机会读取数据帧中相应的目标地址的MAC地址,然后在自己的MAC地址表中查找是否有目标MAC地址的端口信息,如果有,则把数据帧转发到相应的端口;如果没有,则向除源端口外的所有端口进行转发。

  3. 当路由器的某个接口收到一个包时,路由器会读取包中相应目标的逻辑地址的网络部分,然后在路由表中进行查找。如果在路由表中找到了目标地址的路由条目,则把包转发到路由器的相应接口;如果在路由表中没有找到目标地址的路由条目,那么,如果路由器配置了默认路由,就根据默认路由的配置转发到路由器的相应接口;如果路由器中没有配置默认路由,则将该包丢弃,并返回不可达信息。

  4. 传统的交换机只能分割冲突域,不能分割广播域;而路由器可以分割广播域;

  5. 路由器提供了防火墙的服务:路由器仅仅转发特定地址的数据包,不传送不支持路由协议的数据包传送和未知目标网络数据包的传送,从而可以防止广播风暴。