USB-NCM数据传输模型
2025-07-07
0
0
1. 规范适用范围
- 设备类型:
支持 USB连接的外部网络适配器,需模拟 IEEE 802家族的第2层(数据链路层)网络功能(如以太网帧传输)。 - 合规性要求:设备必须符合以下标准之一:
注:NCM设备可以是 复合设备(Composite Device,例如同时集成网络和存储功能的USB设备),需遵循 [USBWMC11] 的定义。
2. NCM的核心优势
- 高效数据传输:
- 批量封装:在单个USB批量传输(Bulk Transfer)中封装多个数据报(datagrams),减少中断开销(interrupt overhead)。
- 接收端优化:发送方可灵活排列数据报,接收端无需大量数据拷贝即可直接处理,提升吞吐量。
3. 数据封装格式
NCM定义了两种封装方式,适配不同USB速率:
封装类型 | 最大容量 | 适用场景 | 兼容性 |
---|---|---|---|
64KiB封装 | 40个标准以太网帧(1514字节/帧) | USB 2.0 High Speed(480 Mbps) | 传统设备兼容性 |
4GiB封装 | 超大块数据传输 | USB 3.0 SuperSpeed(5 Gbps) | 支持高速率需求 |
4. NCM的功能接口
NCM设备需实现两个逻辑接口:
接口类型 | 功能 | 端点配置 |
---|---|---|
NCM通信接口(Communications Interface) | 配置和管理网络(如连接状态、QoS参数) | 控制端点(Control Endpoint) |
NCM数据接口(Data Interface) | 传输实际数据(如以太网帧) | Bulk-In/Out端点(批量传输) |
关键点:
- 主机通常通过 单一驱动程序 统一管理这两个接口。
- 控制与数据流的逻辑关系见文档中的 图2-1(逻辑连接)和 图2-2(控制与数据连接示意图)。
5. 典型应用场景
- USB以太网适配器:将USB接口转换为有线网络(IEEE 802.3)。
- 蜂窝调制解调器:通过NCM传输4G/5G数据。
- 嵌入式设备联网:在资源受限的设备中高效实现USB网络功能。
NCM通过 批量传输优化 和 灵活封装机制,在兼容USB 2.0/3.0的同时,显著提升了数据传输效率(减少中断和拷贝开销)。
开发此类设备时,需严格遵循接口、端点及数据格式的定义,并参考引用的底层规范(如[USBCDC12])。