SSID,BSSID,ESSID 区别介绍

2 篇文章 1 订阅

微信扫码,给个关注吧
在这里插入图片描述

SSID、BSSID、BSS等区分

802.11基本元素综述

SSID (Service Set Identifier):服务集标识符

BSA (Basic Service Area):基本服务区域

BSS (Basic Service Set):基本服务集

ESS (Extended Service Set):扩展服务集

BSSID (Basic Service Set Identifier):基本服务集标识符

名词解释:

SSID:服务集标识符,SSID技术可以将一个无线局域网分为几个需要不同身份验证的子网络,每一个子网络都需要独立的身份验证,只有通过身份验证的用户才可以进入相应的子网络,防止未被授权的用户进入本网络

例如:我们在使用笔记本电脑搜索可接入网络时,显示出的网络名称就是SSID

BSA:基本服务区域,BSS的覆盖范围称为基本服务区。相当于一个无线单元。在该覆盖区域内的成员站点之间可以保持相互通信。由于周围环境经常发生变化,BSA的尺寸和形状并非总是固定不变的。

BSS:基本服务集。一个AP所覆盖的范围。在一个BSS的服务区域内,STA可以相互通信。
  
BSS可分为Independent BSS和Infrastructure BSS两种。

独立基本服务集 Independent BSS ,简称IBSS。在IBSS中,工作站相互之间可以直接通信,但两者间的距离必须在可以通信的范围内。

基础结构模式基本服务集 Infrastructure BSS 。判断是否为基础结构性网络所有的通信,包括统一服务区域中所有移动节点之间的通信
    
ESS

ESS:扩展服务集,由一个或多个BSS组成,借此扩展无线网络覆盖范围。最常见的ESS由多个接入点构成,接入点的覆盖小区之间部分重叠,以实现客户端的无缝漫游。

BSSID

BSSID实际上就是AP的地址,用来标识AP管理的BSS,在同一个AP内BSSID和SSID一一映射。在一个ESS内,SSID是相同的,但对于ESS内的每个AP与之对应的BSSID是不同的。如果一个AP可以同时支持多个SSID的话,则AP会分配不同的BSSID来对应这些SSID。

官方介绍:

SSID(Service Set Identifier)AP唯一的ID码,用来区分不同的网络,最多可以有32个字符,无线终端和AP的SSID必须相同方可通信。无线网卡设置了不同的SSID就可以进入不同网络,SSID通常由AP广播出来,通过XP自带的扫描功能可以相看当前区域内的SSID。出于安全考虑可以不广播SSID,此时用户就要手工设置SSID才能进入相应的网络。简单说,SSID就是一个局域网的名称,只有设置为名称相同SSID的值的电脑才能互相通信。

ESSID是infrastructure的应用,一个扩展的服务装置ESS (Extended service set)由二个或多个BSS组成,形成单一的子网。使用者可于ESS上roaming及存取BSSs中的任何资料,其中Access Points必须设定相同的ESSID及channel才能允许roaming。

BSS是一种特殊的Ad-hoc LAN的应用,一个无线网络至少由一个连接到有线网络的AP和若干无线工作站组成,这种配置称为一个基本服务装置BSS (Basic Service Set)。一群计算机设定相同的BSS名称,即可自成一个group,而此BSS名称,即所谓BSSID。

通俗解释:

手机WLAN中,bssid可以看作无线路由的MAC地址,SSID就是我们看到的WiFi名字

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
获取手机SSID和BSSID可以使用iOS的System Configuration框架中的Captive Network API,具体代码如下: ```swift import SystemConfiguration.CaptiveNetwork func getWifiInfo() -> (ssid: String?, bssid: String?) { var ssid: String? var bssid: String? if let interfaces = CNCopySupportedInterfaces() as NSArray? { for interface in interfaces { if let interfaceInfo = CNCopyCurrentNetworkInfo(interface as! CFString) as NSDictionary? { ssid = interfaceInfo[kCNNetworkInfoKeySSID as String] as? String bssid = interfaceInfo[kCNNetworkInfoKeyBSSID as String] as? String } } } return (ssid, bssid) } ``` 获取IP地址可以使用iOS的网络接口API,具体代码如下: ```swift import UIKit import SystemConfiguration func getIPAddress() -> String? { var address: String? var ifaddr: UnsafeMutablePointer<ifaddrs>? = nil if getifaddrs(&ifaddr) == 0 { var ptr = ifaddr while ptr != nil { let flags = Int32(ptr!.pointee.ifa_flags) var addr = ptr!.pointee.ifa_addr.pointee if ((flags & (IFF_UP|IFF_RUNNING)) == (IFF_UP|IFF_RUNNING)) && (addr.sa_family == UInt8(AF_INET) || addr.sa_family == UInt8(AF_INET6)) { var hostname = [CChar](repeating: 0, count: Int(NI_MAXHOST)) if (getnameinfo(&addr, socklen_t(addr.sa_len), &hostname, socklen_t(hostname.count), nil, socklen_t(0), NI_NUMERICHOST) == 0) { if let addressString = String(validatingUTF8:hostname) { if addr.sa_family == UInt8(AF_INET) { address = addressString } } } } ptr = ptr!.pointee.ifa_next } freeifaddrs(ifaddr) } return address } ``` 注意,获取IP地址需要在应用的Info.plist文件中添加`Privacy - Local Network Usage Description`键,并在值中添加描述,否则应用将被拒绝。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值