这篇博客是继上一篇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的连接过程就完成了。

接下来,主要介绍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). 所有支持的加密算法/功能都应该有硬件来完成。

最后,介绍一下在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协议中的定义。

CarPlay无线连接方案详解(WIFI部分)相关推荐

  1. CarPlay无线连接方案详解(蓝牙部分)

    苹果公司除了推出基于wired(USB)的CarPlay连接方案(详细请查看上一篇),苹果公司还推出了基于wireless(蓝牙+WiFi)的CarPlay连接方案. 基于wireless的CarPl ...

  2. CarPlay 无线连接(蓝牙+WIFI)

    一.引言 1.1 目的 此文档记录CarPlay 开发中无线连接开发部分,详细介绍CarPlay无线连接的流程. 1.2 简介 Carplay的无线连接,需要用户手动先连蓝牙,蓝牙连接上后,系统会自动 ...

  3. Kali linux无线网络渗透详解笔记

    Kali linux无线网络渗透详解笔记 第一章:搭建渗透环境测试环境 第二章:WiFi网络的构成 第三章:监听WiFi网络 第四章:捕获数据包 第五章: 分析数据包 第六章:获取信息 第七章:WPS ...

  4. 工程之星android版使用,安卓版工程之星软件网络1+1模式及网络cors连接操作详解...

    原标题:安卓版工程之星软件网络1+1模式及网络cors连接操作详解 现在,越来越多用户开始使用安卓版工程之星进行作业,科力达技术工程师总结了安卓版工程之星网络1+1模式及网络CORS连接方式操作步骤, ...

  5. 技术分享——机房搬迁工作步骤及方案详解

    技术分享--机房搬迁工作步骤及方案详解 随着企业.单位的不断深入发展,现有的涉及办公.生产场所已经不能满足,新的厂房及办公大楼逐渐筹建,那么机房搬迁或机房改建服务应运而生,而机房搬迁作为一项非常重要的 ...

  6. 数字孪生城市概念分析及建设方案详解

    数字孪生城市概念分析及建设方案详解 一.数字孪生城市的内涵 (一)数字孪生 据美国航空航天局(NASA)权威性定义,数字孪生就是指充分运用物理模型.传感器.运作历史等数据,集成多学科.多物理量.多尺度 ...

  7. mysql千万级数据怎么删除,MySQL 快速删除大量数据(千万级别)的几种实践方案详解...

    这篇文章主要介绍了MySQL 快速删除大量数据(千万级别)的几种实践方案详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 笔者 ...

  8. P2P 中的 NAT 穿越(打洞)方案详解

    P2P 中的 NAT 穿越(打洞)方案详解 转载自 : P2P 中的 NAT 穿越(打洞)方案详解 内容概述 P2P 即点对点通信,或称为对等联网,与传统的服务器客户端模式(如下图"P2P ...

  9. 美团多渠道打包方案详解,速度快到白驹过隙

    美团多渠道打包方案详解,速度快到白驹过隙 Andorid渠道市场有多分散呢?分散到比Android碎片化还严重,你还在为多渠道打包而头疼吗?美团提供了速度快到白驹过隙的多渠道打包方案.说的有点夸张,对 ...

最新文章

  1. 谷歌最新黑科技:裸眼3D视频通话,宛如真人面对面!Jeff Dean:魔镜啊魔镜
  2. TPAMI 2020 | 无监督多类域适应:理论,算法与实践
  3. 创建二级索引_技术分享 | InnoDB 排序索引的构建
  4. github和pypi_如何将GitHub用作PyPi服务器
  5. ajax将响应结果显示到iframe,JavaScript:iframe / Ajax / JSON
  6. php中$stu_by,PHP基础案例二:计算学生年龄
  7. xml 纯内容标签_Python小课堂XML 解析
  8. php模拟post方法
  9. CKEditor和CKFinder配置(asp.net)
  10. [翻译]WPF控件库 MaterialDesignInXamlToolkit (2) Brush Names
  11. 【回归预测】基于matlab Tent混沌映射改进的麻雀搜索算法SSA优化BP神经网络回归预测【含Matlab源码 1707期】
  12. linux从服务器获取共享列表失败,linux – 如何获取连接到本地网络中NFS服务器的客户端列表?...
  13. FusionCharts 3.2.1 flash 图表展示、数据钻取
  14. Android开发地图应用--坐标转换
  15. ISA——防火墙策略的执行过程
  16. 笔记本w ndows未能启动,Windows未能启动原因可能是最近更改了硬件或软件解决方法...
  17. 荣耀V40用机技巧有哪些
  18. Java开发 - Redis初体验
  19. 数据基础---《利用Python进行数据分析·第2版》第7章 数据清洗和准备
  20. ‘\t‘和“\t“的区别及作用

热门文章

  1. 最新版Microsoft Edge——Chromium内核
  2. auto.js使用vscode连接手机教程
  3. Windows系统安装rust以及crates换源方式
  4. 阿里云服务器的领取及静态页面的上传
  5. 如何用开源组件“攒”出一个大数据建模平台?
  6. CAD有生僻字如何打出来、如何提交软件相关问题或建议?
  7. 软件测试 质量监控计划书,软件测试的计划书(案例).doc
  8. 阅读(英文)大部头教材遇到了困难...
  9. 让你的部属“跑起来”的十大方法
  10. Excel 表 使用VBA 隐藏不需要的列