thinkphp6 接收不到数据_网络协议|OSI模型第二层数据链路层

本文介绍了OSI模型第二层数据链路层的作用,包括MAC地址的概念、以太网协议的帧格式、交换机的工作原理以及VLAN虚拟局域网。同时探讨了交换机环路问题,帮助理解网络通信的基础知识。
摘要由CSDN通过智能技术生成

d770c482190b0ba8f285b390420b22e6.png

MAC 地址

OSI第二层的作用,使局域网中的机器能互相连接并建立通信,还能够侦测传输错误。要向局域网中的其他机器发送信息,就需要借助 MAC 地址,来指定发送信息的目的地。

MAC 地址其实就是网卡的地址,一台电脑有一个或多个网卡,但是每个网卡都只一个独一无二的 MAC 地址。

MAC地址用16进制表示,由6个字节编码组成,每个字节用冒号隔开,如 00:0c:29:10:5a:55

一个字节(byte)是8个比特位(bit),一个比特位就是一个二进制的位,一个二进制的位只能取值0或1,因此一个比特位可以取 2^1=2 个值,8个比特位可以取 2^8=256 个值,那么一个字节可以取256个值,从 0 ~ 255 的整数。

MAC 地址是由 6 个字节编码组成,因此可以取 2^48 个值,这是一个很大的数,肯定能保证每个 MAC 地址都是唯一的,网卡制造商会购买 MAC 地址区块,因此不会有重复的 MAC 地址。

其中有一个特殊地址,每一个二进制位都是1,二进制的11111111转换为十六进制是 ff,因此这个地址是 ff:ff:ff:ff:ff:ff

这个地址被称为广播地址,广播地址可以代替任意一个网卡,因此发送到广播地址的信息就会发送到所在网络的所有网卡上。

以太网协议

为了使连接到网络上的机器能够相互交流,需要定义一种语言,也称之为协议,第二层使用的就是以太网协议,协议定义了信息的传输格式,术语称为帧或者数据帧。

一个以太网帧的格式如下

bf06e8ae6b9b2e8d112f19d711aaa19c.png

DST 是 destination 的缩写,表示接收方。

SRC 是 source 的缩写,表示发送方。

应用在发送信息的时候,osi从上到下穿越,第三层会告诉第二层第三层应用了什么协议,并封装在以太网帧中,在接收信息的时候,osi从下到上穿越,接收方在接收数据校验 MAC 目标地址后,如果是自己的地址,就可以将信息发送到第三层对应的协议。

CRC 是一个用于校验错误的数值,发送方和接收方都会使用某个公式计算被传输信息的一个 CRC 值,如果两个CRC一致,则说明发送帧和接收帧是一样的,验证发送过程中没有出错。如果不一致,则说明发送帧和接收帧不一样,说明发送过程中有出错,接收方可要求发送方重新发送。

交换机

交换机是外观上拥有多个RJ45接口的盒子,是一个能够互联多个机器的设备。

类似于第一层中的集线器,但是比集线器强大很多,因为交换机可以隔离对话,它的内存中有一个 CAM 表。这个表将交换机中的每一个 RJ45 接口与一个 MAC 地址相关联,交换机就是依据这个表里的对应关系和帧里面包含的目标地址,将数据帧发送到正确的机器上。

CAM 表是以动态方式构建的,当交换机读取一个流经的帧的时候,都会去扩充 CAM 表里的内容或更新已有内容。

当 CAM 表在刚开始构建的时候,交换机如果找不到此帧中的目标 MAC 地址,那么它就会把这个帧发送给除了帧来源以外的所有机器,这样目标机器收到这个帧的时候,看到 MAC 地址是自己的就会接收这个帧,同时向发送帧的机器回复一个信息,这样 CAM 表就会被更新。

交换机带来的变革

之前总线拓扑上需要用到 CSMA/CD 协议去解决冲突,在交换机上这种冲突就不会存在了,交换机使用双绞线链接设备,双绞线中使用不同的线进行接收信息和发送信息,因此不会产生这种冲突。(集线器也能使用双绞线,但集线器是以半双工的模式工作)

如果有多台机器向同一台机器发送信息,则多条信息都会到达这台机器的接收线上,因为交换机拥有内存,当它接收到多个帧时,可以将其储存在内存中,当目标机器连接的双绞线传输对空闲的时候再转发该帧。

因此,在没有交换机之前,机器发送信息必须监听,确定网络是空闲的时候才能发送帧,而交换机出现后,可以确保不发生冲突,机器想发送帧的时候就能发送。

三种通信方式

在交换机上,网卡是以全双工的方式运作。在集线器上使用 CSMA/CD 协议通信,网卡是以半双工方式运作,还有一种方式叫单工。

单工:数据传输是单向的,一方固定为发送端,一方固定为接收端,帧只能沿一个方向传输,类似于汽车单行道。

半双工:数据传输是双向的,但是不能同时进行,无线对讲机就是一种半双工设备。

全双工:数据传输是双向的并且能够同时进行,类似于汽车双向车道。

总的来说,集线器无法配置,总是以总线拓扑半双工的方式运作,需要配合 CSMA/CD 协议才能很好的工作,如果把集线器与交换机相连,那么交换机连接集线器所在的端口将以半双工的方式来运作,其他端口则维持全双工。

VLAN虚拟局域网

交换机可以将端口分割到不同的网络中,就好像有多个交换机一样,属于同一网络中的机器通信不受影响,但这些被分割开的端口就不能再相互通信了。

这种技术可以方便管理有多种人群的网络,同时也不用购买多个交换机

交换机环路

如果在一个网络中将帧发送到目标机器有两种路径,那么这就会形成一个交换机环路。这会使得帧被发送到目标机器两次,在发送广播帧的情况下会更加严重,广播帧在两个路径上发送再沿着两个路径返回,这会导致交换机很快就饱和导致网络崩溃,这种现象也被称为广播现象。

上一篇:OSI模型第一层物理层

下一篇:OSI模型第三层网络层中的IP地址和子网掩码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值