一分钟读懂低功耗蓝牙(BLE)MTU交换数据包

1.概述

  * MTU: 最大传输单元(MAXIMUM TRANSMISSION UNIT) , 指在一个PDU (Protocol Data Unit: 协议数据单元,在一个传输单元中的有效传输数

据)能够传输的最大数据量(多少字节可以一次性传输到对方)。

  * MTU 交换是为了在主从双方设置一个PDU中最大能够交换的数据量,通过MTU的交换和双方确认(注意这个MTU是不可以协商的,只是通知对方,双方在知道对方的极限后会选择一个较小的值作为以后的MTU,比如说,主设备发出一个150个字节的MTU请求,但是从设备回应MTU是23字节,那么今后双方要以较小的值23字节作为以后的MTU),主从双方约定每次在做数据传输时不超过这个最大数据单元

    MTU交换通常发生在主从双方建立连接关系后(参见“一分钟读懂低功耗蓝牙连接数据包“”)

    做个对比就可以知道BLE MTU 比较小(不过新的BLE 标准MTU 已经大幅提升,详见即将发表在VIEWTOOL BBS上的后续文章)。

  ****************************************************************“*************************      

   以太网:1500

  IEEE 802.3/802.2: 1492

  X.25: 576

  BLE: 23   => 这就是为什么WIFI 可以用于传输视频,传统蓝牙(BT)可以传输音频,而低功耗蓝牙(BTLE 或者BLE)只能够传输控制数据的原因了。

  ******************************************************************************************

  * MTU 交换命令:属于ATT 命令

  * MTU 交换过程:如下图


  * MTU 两个命令(“MTU 请求”及“MTU 响应”)详解如下(见“4”)

2.关键字:Hollong BLE 侦听仪,低功耗蓝牙嗅探器, BLE 分析仪,BLE 数据抓取

  Keyword: Hollong BLE Sniffer, BLE Data Analyzer,BLE Capture

3.抓取数据包的准备工作

  * 硬件:一个BLE设备(从设备)及对应的主设备(如智能手机里面的相关应用程序,或者通用BLE 工具软件);

           一台HOLLONG BLE SNIFFER (Hollong BLE 侦听仪)

  * 软件:Hollong 蓝牙4.0/4.1 BLE协议监控分析仪 软件, 使用本软件可以打开本文中的数据包附件,进而可以更加方便及更加全面地了解更多细节(包括最全面的数据及数据解析)

        下载链接:

 http://www.viewtool.com/index.ph ... hollong-4-0-4-1-ble

4. MTU 请求(REQEUST)

   完整数据(以下关注蓝色标注部分)


    1)  存取地址

    Access Address: 0xaf9a8c69

    固定为4个字节,其值由连接请求数据包指定(详见“一分钟读懂低功耗蓝牙连接数据包”)


   2) 头信息

 Data Header: 0x0706    000. .... = RFU: 0

    ...0 .... = More Data: False

    .... 0... = Sequence Number: 0

    .... .1.. = Next Expected Sequence Number: 1

    .... ..10 = LLID: Start of an L2CAP message or a complete L2CAP message with no fragmentation (0x2)

    000. .... = RFU: 0

    ...0 0111 = Length: 7


 3) L2CAP 长度

    在BLE中,GAP,GATT,SMP 都使用L2CAP 通道将命令及数据打包送到链路层(LINK LAYER),L2CAP 打包过程中需要指定L2CAP的长度及通道号。

    Length: 3


   4) L2CAP 通道号(CID):channel ID

   CID: Attribute Protocol (0x0004)


    5) ATT 命令

     标准发下:


     实际数据包:

    Opcode: Exchange MTU Request (0x02)

    0... .... = Authentication Signature: False

    .0.. .... = Command: False

    ..00 0010 = Method: Exchange MTU Request (0x02)


   6) MTU 值 (请求的值)

    Client Rx MTU: 185



7) CRC 


4. MTU 响应(RESPONSE)

    完整数据包:


    1) 存取地址

    Access Address: 0xaf9a8c69

    固定为4个字节,其值由连接请求数据包指定(详见“一分钟读懂低功耗蓝牙连接数据包”)


    2. 头信息

    Data Header: 0x0712    000. .... = RFU: 0

    ...1 .... = More Data: True

    .... 0... = Sequence Number: 0

    .... .0.. = Next Expected Sequence Number: 0

    .... ..10 = LLID: Start of an L2CAP message or a complete L2CAP message with no fragmentation (0x2)

    000. .... = RFU: 0

    ...0 0111 = Length: 7


    3. L2CAP 长度

        解释同(请求包)。

        Length: 3


    4. L2CAP 通道号

        解释同(请求包)。

       CID: Attribute Protocol (0x0004)


    5. ATT 命令

       标准:


       实例:

       Opcode: Exchange MTU Response (0x03)    0... .... = Authentication Signature: False

    .0.. .... = Command: False

    ..00 0011 = Method: Exchange MTU Response (0x03)


     6) MTU 值

      Server Rx MTU: 23


      7)CRC

       CRC: 0xf4767e

    [Expert Info (Note/Checksum): CRC unchecked, not all data available]


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,185评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,652评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,524评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,339评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,387评论 6 391
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,287评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,130评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,985评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,420评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,617评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,779评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,477评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,088评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,716评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,857评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,876评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,700评论 2 354

推荐阅读更多精彩内容

  • 1.概述 BLE 连接过程中有三个重要的数据包:SCAN_REQ, SCAN_RSP 和 CONNECT_REQ...
    VT纬图物联阅读 2,060评论 0 2
  • 我是一本书,是一本不能用封面吸引人的书,也许只有我自己知道书的内容有多么精彩,但人们只看了我平淡无奇的封面却望而却...
    从容相伴阅读 310评论 2 6
  • 「四」不是穿了西装就能变成绅士,不是生了孩子就会做父母。 面对一个未成年人,成年人最大的文明所在,就是站在他的角度...
    林小舟阅读 120评论 0 1