> For the complete documentation index, see [llms.txt](https://jen-hsuan-hsieh.gitbook.io/protocol/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://jen-hsuan-hsieh.gitbook.io/protocol/chapter5-wireless-network/52mbim-for-windows.md).

# 5.2.MBIM for Windows

## The following items will be introduced in the following section:

* 1.About MBIM
* 2.Windows MBIM

## 1.About MBIM

* MBIM的標準制定
  * 1.由USB Implement ForumF 於 2011年制定, 成員包括 Microsoft, Intel, Quacomm等大廠
  * 2.標準化:
    * 統一 Programming interface
    * 以單一USB interface統一關於傳輸上的deandIP frames using single, logical USB interface
    * 統一行動寬頻(mobile broadband)設備和PC的介面標準
* 2.MBIM的簡介 (根據Revision 1.0 )
  * 1.MBIM是一個讓USB hosts跟MB devices可以交換command及data frame的protocol
    * USB host:
  * 2.Mobile Broadband Interface Model (MBIM)是基於 Network Control

    Model (NCM 1.0)的Subclass.

    * NCM 1.0:
    * MBIM 1.0的SPEC所定義的USB device會具有傳輸IP封包的能力 (defined by 3GPP/ 3GPP2)
    * MBIM 1.0的SPEC將定義NCM的IP packet aggregations的單一USB傳輸中的control command, raw IP usage 及 Communications Device Class subclass specification
* 3.MBIM與NCM 1.0的相容性
  * MBIM與NCM 1.0最大的差異在於MBIM使用raw IP frames, 有別於以往的802.3 headers

![](/files/-M4M0IRFhiYJEFppXhaC)

* 4.MBIM的功能特性
  * 1.MBIM的功能由2個logical channel所組成:

    * 1.為了傳輸payload所提供的data channel: 唯一與USBNCM10不同之處是以Raw IPS及DSS取代Ethernet frames.
    * 2.為了control plane所提供的channel: 例如transporting MBIM control messages

    ![](/files/-M4M0IRH3Vi9ABBIqLbB)
  * 2.通訊管道(COMMUNICATION PIPES)
    * 1.DEFAULT PIPE
      * 常被用於**控制USB device**, 內容包括standard

        requests (例如GET\_DESCRIPTOR及SET\_CONFIGURATION), Command所回覆的訊息會再藉由Default-pipe傳送給host

        ![](https://github.com/jenhsuan/protocol/tree/28394555d84eb32727f540b6048a19a671155aa3/assets/mbim4.jpg)
    * 2.INTERRUPT PIPE
      * 常被用於提醒host非同步的event,&#x20;

```
Interrupt pipe messages are used to alert the host of an asynchronous event from the device. The event
```

could either be an unsolicited event (see section 9.4.4), or a response to a previously issued class specific control messages (see section 9.4.3)

* 3.BULK-IN AND BULK-OUT PIPES
* 5.MBIM的資料傳輸

  * 1.USBNCM10定義在host與device中傳輸IEEE 802.3 frames的方法
  * 2.MBIM使用了與USBNCM10相同的方法, 但在NDP (NCM Datagram Pointers)中的payload不同 , IEEE 802.3 frames將不被支援, 取而代之的是使用raw IP (IPv4及IPv6都有)及Device Service Streams來作為host及device間的傳輸.
  * 3.MBIM在NDP引入了multiple data streams的概念, 以支援IPS及DSS

  ![](/files/-M4M0IRLRuDNt2xlJTkp)

## 2.Windows MBIM

* MB Scope in Windows 7/8/10
