SSID、BSSID、ESSID区别?

https://www.zhihu.com/question/24362037

知乎上没能找到BSSID!

关于这三者的区别,我找到了一个英文网站,介绍的挺详细,但英语水平有限,没能读懂!请大神,最好有相关背景,帮我解释一下!
http://www.juniper.net/techpubs/en_US/junos-space-apps12.3/network-director/topics/concept/wireless-ssid-bssid-essid.html

SSID容易理解!
BSSID中,每个WLAN有多个访问点是啥意思? there has to be a way to identify those access points and their associated clients. 又是何意?
我这么理解对不对?
一片区域内有几个SSID都为 MyWifi 的无线网,我在这些无线网的交叉区域内去连某个MyWifi,那如何知道我要连哪个呢?因此我需要BSSID去识别到底连的是哪个SSID。

还有,BSSID与MAC有啥区别?两者都是48b。

ESS由网络中的BSS组成,那他干啥的?

看着晕晕的,请赐教!


徐方鑫​澳门科技大学 资讯科技学院博士在读

谢邀。关于SSID比较好理解,故我们只关心下BSSID和ESSID的问题。
从简单意义上而言,BSSID是等价于MAC地址的。不过从细节上而言,这里还有一些内容需要讨论。前面表述不准确,这里**修改下:如果在一个基础架构网络中,该BSSID的默认是对应的网卡的MAC地址,如果增加出来的虚拟BSSID就是在其对应MAC地址上进行增加。如果在一个IBSS网络(也就是Ad-hoc)模式,BSSID是一个随机值,与本地MAC地址无关。**

  • 首先我们先返过来看MAC地址,在MAC地址构成上,前24位厂家号(IEEE分配),后24位有厂家定义的具体序号(厂家分配)。不过在具体的交换机中,我们需要知道,交换机有一个基准的MAC地址,然后每一个接口还有其对应的MAC地址。如果对STP协议比较熟悉的话,知道STP协议中计算根交换机过程中所用的BID中是包含MAC地址的,该MAC地址对应的就是基准MAC地址,而不是接口MAC地址。按照目前所知道的应该是,交换机有一个基准的MAC地址(可以在外壳上看到,或者采用show version查看),然后每一个接口上的MAC地址是通过这个基准MAC地址计算出来的(类似采用+1之类的方法,具体还有些不清楚)。

  • 然后我们需要反过来看AP上的地址。我们首先需要知道,如果是瘦AP的话,需要用有线连接到AC,同时用无线连接到客户端上的。那么这里就有有线和无线两个环节。有线中一定会有一个MAC地址,而无线中没有MAC地址的概念,取而代之的就是BSSID。故这里存在一个疑问,该MAC地址和BSSID是不是一样的。目前这点还没有确定答案,不过这点就是一些讨论BSSID和MAC是不是一个东西的原因,换言之对应前面所述基准MAC地址的情况,该基准的BSSID是由基准的MAC地址生成的,还是根据硬件出厂设置的?

  • 如果忽略以上这点疑问,反过来在纯粹的无线环境中考虑BSSID。我们就可以认为这个是二层的一个唯一地址。在无线网络中,一个802.11帧中有4个地址,如下是一个基本的帧结构

[Frame control] [Duration/ID] [Address 1] [Address 2] [Address 3] [Sequence Control] [Address 4] [Frame Body] [FCS]
在该结构中,我们可以看到address 1~address 4,其中address 4一般在中继情况下才会出现,所以通常使用3个地址。那么一般是BSSID,source和destination。如下图是两种常见的情况

BSSID和目的地址是相同的。

BSSID和源地址是相同的。(这里发送方向是不是无线过来的也可以通过TO DS和FROM DS位进行判断)
故在二层的情况下,BSSID应该可以认为是无线情况下的唯一标识。
其实还有一点可以补充的是,我们知道二层MAC广播地址是FF:FF:FF:FF:FF:FF,到无线里面,还是这个地址,同时对应的BSSID也是这个地址,如下

  • 接下来我们需要讨论的一个路由存在多个BSSID的情况,即虚拟无线接口。如下图是一个DD-WRT中显示的情况,

图中1为默认,也就是基准的BSSID地址,而2是虚拟的BSSID地址。同时SSID和这两个是分别关联的。如果两个接口同时设置相同的SSID(基于不同的BSSID),根据协议,其会选择信号好的那个进行接入(这点在单AP的情况下意义不大,在多SSID漫游的情况下好像有点意义)。从上图中,我们可以看到虚拟无线接口的BSSID和基准的BSSID是很接近的,换言之,是通过一种计算方式计算出来新的BSSID的。这里就和我们前面所述交换机中的MAC地址思路是一样的,有一个基准的MAC,然后每一个接口是根据基准的进行计算出来的。而这里也是一个基准的BSSID,所有扩展的无线网络(或者认为是无线接口),就是通过基准BSSID进行计算的。
PS:也在看这个问题的同时,发现了一个扩展的问题,即5G和2.4G的接口的BSSID是相同的,链接:为什么5G和2.4G默认的BSSID是相同的? - 通信,如果有知道的还请指点一下。

  • 最后ESSID是在漫游的时候才会出现。在无线基本架构中,存在单cell的情况,即IBSS情况,只有一个AP,并且在这个AP身上只有一个SSID。也存在扩展BSS的情况,应该就是EBSS,扩展服务集的模式。那么就有多个AP,并且这些AP身上都布置了相同的SSID,故由于每一个设备不同,这里BSSID就会不同,但是由于SSID相同,那么其还是可以进行漫游的。

分界线,今天正好在一本书中也看到这样的定义,顺便贴下(这里BSSID的区别就是与基础架构模式和IBSS模式有关),参考《深入理解android wifi nfc gps卷》

编辑于 2016-02-19


莫非May the spirit of our king protect us!

SSID = Service Set IDentifier BSSID = Basic Service Set IDentifier ESSID = Extended Service Set IDentifier

举个例子,一家公司面积比较大,安装了若干台无线接入点(AP或者无线路由器),公司员工只需要知道一个SSID就可以在公司范围内任意地方接入无线网络。BSSID其实就是每个无线接入点的MAC地址。当员工在公司内部移动的时候,SSID是不变的。但BSSID随着你切换到不同的无线接入点,是在不停变化的。

ESS包括了网络中所有的BSS。一般ESSID就是SSID。

编辑于 2017-05-18


好奇的唯宸用知乎think,用豆瓣read,用即刻get,用Anki remember,用omnifocus push……

先说结论再举例子。

BSSID就是无线路由器的MAC地址(本质是一个MAC地址
SSID就是手机上搜索到的wifi名字(本质是一串字符
ESSID是一个比较抽象的概念,它实际上就和ssid相同(本质也是一串字符),只是能如果有好几个无线路由器都叫这个名字,那么我们就相当于把这个ssid扩大了,所以这几个无线路由器共同的这个名字就叫ESSID。(也就是如果在一台路由器上释放的wifi信号叫某个名字如“China_CMCC”,这个名字“China_CMCC”就称为SSID;如果在好几个路由器上都释放了这个wifi信号,那么大家都叫“China_CMCC”,这个时候大家都遵循的这个名字就是ESSID

先打个比方:

如果用essid表示连锁店的牌子(比如 阿迪达斯),ssid就是每个连锁店的门口招牌上写的字(阿迪达斯),essid就是连锁店的牌子(阿迪达斯),bssid就是每个连锁店的地址(比如万达广场店,春熙路店)。

这里连锁店的牌子 实际上 写到招牌上就相当于ESSID和SSID。

======下面的回答如果非专业的wifi领域工作人员可以不看======

在具体的ap上的配置某个无线服务集(也就是一个wifi信号)的名字就叫ssid(也就是我们手机上打开wifi看到的各种各样的wifi名字),比如,如果还在ac上的配置就叫essid(因为会应用到多个AP上)。所以从地域角度,这个ap的mac就是bssid。

用戏称来说,bssid就是具体的某个连锁店编号(001)或地址,ssid就是连锁店的名字或者照片,essid就是连锁店的总公司或者招牌or品牌。一般ssid和essid都是相同的。

所以bssid、ssid和essid的区别就在于

一个是mac、一个是名字、另一个是一种抽象的名字(大家都叫essid)

编辑于 2017-07-21


victor choyhaha

看了前面的回答,写的啰里巴索,看完还是稀里糊涂。懂的懂了,不懂的还是不懂。真到看了华为的这篇文章,来龙去脉,清清楚楚。我就不转文了。直接上地址了,包你看明白。

【WLAN从入门到精通-基础篇】第6期—WLAN常用概念-无线局域网-华为企业互动社区

发布于 2018-07-25