以太网是一种计算机局域网技术,由IEEE 802.3制定了以太网的技术标准。
它是一种有线系统,现在一般使用双绞线或者光纤进行数据传输。
IEEE 802.3将以太网的数据链路层分为两层:逻辑链路控制(LLC)和介质访问控制(MAC)
本篇重点介绍以太网的MAC层。
目录
每台电脑都有一个网卡,一个网卡就配有一个MAC地址
MAC地址用来确定网络设备位置的地址
每个网卡的MAC地址都是唯一的,有且仅有一个,如果你电脑有无线网卡,你电脑就有两个MAC地址
交换机和路由器会有更多的网络接口,也就有更多的MAC地址
利用 ipconfig /all 就能看到自己主机的IP地址
IEEE 802.3规定MAC地址为48位(6字节)的地址。
前三位由IEEE统一分配,后三位厂家自行决定
第一个字节的第一个比特位就表示它是单播地址还是多播地址(一般奇数就是多播)
比如 07-E0-12-F6-2A-D8 ,看这里的7,是一个奇数,所以是多播
单播就是A一对一发给B
多播就是A发给B,也发给C,或者更多
还有一个传输类型是广播,广播就是发一个数据,局域网上的所有主机都会收到
这里模拟一个场景:比如很多主机连接到一个信道上
要实现两个主机的通信,比如A发送给B
A将数据传出,整个信道上的主机都能接受到数据
每台主机会根据自己的MAC地址与帧上的MAC地址匹配,不符合就丢弃
这里就衍生出三种帧:
单播帧就是一对一,将目标MAC地址和自己的地址封装成帧,每个主机依次接受匹配
多播就是一对多,一般主机会有一个多播组列表
当接受到一个多播帧后,对照这个列表就知道这个是否匹配
广播就是所有人都要接受,目的地址会改为全F,当主机接受到全F,就知道是广播帧
早些年前,有一套系统可以通过MAC地址来跟踪人的行动
所以苹果率先采用了扫描网络时的随机MAC地址技术
目前大多数设备都已经支持此技术
以太网交换机是基于以太网传输数据的交换机,通常有多个接口,采用全双工方式
以太网交换机具有并行性,多对主机能同时通信
帧的转发方式也有两种:
上述过程有个问题:用于对应MAC地址和接口号的帧交换表是哪里来的呢?
其实以太网交换机的帧交换表一开始是空的,通过自学习算法逐渐建立了这样一个帧交换表
下面演示一遍自学习过程:
比如主机A要将数据发送给主机B
这就是一个完整过程。
注意:帧交换表上的数据会有有效时间,到期自动删除
这样的网络结构,如果断了一条,此局域网就不能通信了
所以采用冗余链路将他们连接在一起
但是这样就形成了网络环路,会引发广播风暴,即广播帧会在交换机之间反复转发
反复转发不仅消耗主机的资源,而且会使帧交换表混乱
所以这时就有了一个生成树协议STP,在保留冗余链路下,避免了环路的问题。
比如这样一个环路,主机A要将数据传给主机E
根据STP会指定一些链路阻塞,形成一个数据传输的通道:
这样就规划了一条最合适的道路来传输数据。
上面提到过,广播风暴就是因为交换机之间反复传输导致的
如果用交换机连接许多个广播域,形成了一个广域网后,如果一个广播域内部有了网络风暴或其他安全问题,就导致了这个问题顺着中间交换机来到其他广播域。
这样安全问题就严重了,所以需要分割广播域,有两种办法
首先就是不用中间交换机连接局域网,用路由器
路由器会自动隔离广播域,但是成本高。
我们还可以用虚拟局域网VLAN来划分,如下图:
一个VLAN内的主机不能与另一个VLAN内的主机通信。
谢谢你能看到这ヽ( ̄ω ̄( ̄ω ̄〃)ゝ