victor
发布于

CarPlay wireless(蓝牙+WiFi)连接方案(Wi-Fi部分)

本篇主要是针对 CarPlay over wireless 方案中的 Wi-Fi 部分做介绍。
在 Wi-Fi 方面,车载设备工作在 AP 模式下,Apple 设备作为 STA 连接到车载设备(AP)。首先,在蓝牙进行 Carplay 相关交互前,车载设备的 Wi-Fi 已经工作在 AP 模式下,车载设备的 Wi-Fi 证书(Wi-Fi credentials,即 Wi-Fi(AP)的 BSSID,SSID,Security,WPA2 PSK,工作信道(Operating Channel))通过 iAP2 over Bluetooth 与 Apple 设备交互成功后,接下来 Apple 设备作为 STAt 就开始与车载设备进行 Wi-Fi 连接了,该连接就是通常的基于 Wi-Fi 基础结构(Infrastructure)的 WiFi 连接,对于 Wi-Fi 及 802.11、WFA 协议部分,我将在我的另一个博客系列中做介绍,在这里就只针对 CarPlay 相关的 Wi-Fi 做介绍。当基于 Wi-Fi 的无线链路建立好后,接下来就是苹果的 Bonjour 服务来建立 CarPlay 会话。CarPlay 会话建立完成后,接下来就是 iAP2 profile 的断开和蓝牙的断开。整个 CarPlay over wireless 的连接过程就完成了, 下图是在 2.4GHz 下的 CarPlay over wireless 连接图:


接下来,主要介绍 CarPlay over wireless 方案中对 Wi-Fi 的要求:
1. 在硬件上要求支持 802.11n 2.4GHz HT20 或 802.11n 5GHz HT20 or HT40,建议支持 802.11ac VHT20,VHT40,VHT80。
2. 在频段上要求工作在 2.4GHz 或 5GHz,如果工作在 2.4GHz 频段,要求车载设备(AP)只能工作在信道 1(2.412 GHz)、6(2.437 GHz)或 11(2.462 GHz);如果工作在 5GHz 频段,要求车载设备(AP)工作在信道 36(5.180 GHz)、40(5.200 GHz)、44(5.220 GHz)、48(5.240 GHz)、149(5.745 GHz)、153(5.765 GHz)、157(5.785 GHz)或 161(5.805 GHz)。建议工作在 5GHz 频段,此外,需要限制信道切换(channel switch)功能在 CarPlay 中使用。
3. 基本的(Basic)Wi-Fi 要求:
1). 车载设备的 Wi-Fi 需要工作在 Software Access Point(SWAP)模式,也就是我们通常说的 AP 模式
2). 车载设备的 Wi-Fi 需要支持 DCF(Distributed Coordination Function)
3). 车载设备的 Wi-Fi 需要支持下面基本类型的帧:
Association Request and Response
Re-association Request and Response
Probe Request and Response
- Broadcast Probe Requests
- Directed Probe Requests
Beacons
Disassociation
De-authentication
RTS/CTS
ACK
Data Frames
Null Frames
Public Action Frames
Receive Defragmentation(mandatory)
Transmit Fragmentation (optional)
4). 车载设备的 Wi-Fi 需要支持电源管理和 IEEE802.11 定义的省电功能。
5). 车载设备的 Wi-Fi 可以支持 short guard interval(400 ns)。
6). 车载设备的 Wi-Fi 需要支持 OFDM 数据率:6,9,12,18,24,36,48 和 54Mbps。
4. 高级的(Advanced)Wi-Fi 要求:
1). 车载设备的 Wi-Fi 需要支持 WFA(Wi-Fi 联盟)的 WMM(WFA Wireless Multimedia)的 QoS(Quality of Service)机制。
2). CarPlay 协议要求用 AC_VO 类型的 QoS(WMM)Wi-Fi 数据包传输音频数据流和控制数据流,用 AC_VI 类型的 QoS(WMM)Wi-Fi 数据包传输屏幕/视频数据流。
3). 车载设备的 Wi-Fi 也可以支持 U-APSD(Universal Advanced Power Save Delivery)。
4). 当 Apple 设备要进入 802.11 省电模式时,它会发一个带有 PM bit 的 null data 包给车载设备(AP),车载设备必须 ACK 这个包并且必须 flush 其 Tx 硬件队列(hardware queue)里的所有还未发送出去的数据包,而还未进入硬件队列的包将不会再发送。
5. Wi-Fi 安全要求:
1). 需要支持并使用 WPA2 个人安全模式(WiFi Protected Access version 2 Personal) ,也就是我们通常说 WPA2-PSK 安全模式。
2). 所有支持的加密算法/功能都应该有硬件来完成。
6.性能要求:

最后,介绍一下在 CarPlay over wireless 中所用到的两个信息元素(information Element(IE)),同时分别附上我在自己的开发平台上添加这两个 IE 的截图供参考(用 Wireshark 抓的 beacon 包)。

  1. IEEE802.11 Interworking IE.
    该 IE 要求车载设备(AP)支持。该 IE 中的 Access NetWork Option 字段用来提供是否 CarPlay 的车载设备(AP)提供 Internet 共享服务;Venue info 字段用来告知该网络是由车载的设备提供,其 Group code 值为 10(车载的设备)。
  2. Apple Device IE.
    该 IE 是 Vendor IE,由 Vendor 自定义(ID:221(0xDD),Apple 的 OUI:0x00-0xA0-0x40,Sub_type:0x00),该 IE 需要添加在车载设备(AP)的 Beacon,Probe Response 和 Association Response 帧中。而该 IE 中最重要的就是其 payload 部分,由苹果公司自定义,有 Flags,Name,Manufacture,dWds,Bluetooth MAC,Device ID 等信息,细节可以查看 Apple 的 CarPlay 协议中的定义。

【备注】转载 https://blog.csdn.net/hjf161105/article/details/89307129

浏览 (1359) 点赞 收藏 分享
评论