USB设备类型汇总
USB設備類型匯總
Mr_Michael
0.1792020.07.29 16:44:47字數 1,859閱讀 7,494
參考:usb wiki、USB
一、USB概述
1.USB 版本
2.USB 接口
[站外圖片上傳中...(image-2f523-1596012258374)]
3.USB Class Codes
? USB定義了設備類的類別碼信息,它的功能包括:可以用來識別設備并且加載設備驅動。這種代碼信息有包含Base Class([基類])、SubClass([子類])、Protocol([協議])一共占有3個字節。
Base Class、SubClass與Protocol詳細關系列表
4.USB封包格式
二、常見usb設備類型
參考ACM&ECM&NCM&EEM&RNDIS&RmNet介紹
1.USB CDC設備
通用串行總線(USB)通信設備(Communication devices)的定義由三個類組成:
- 通信設備類(Communication Device Class, CDC):設備級定義,被主機用于識別(確定)含有幾種不同類型接口的通信設備;
- 通信接口類(Communication Interface Class):定義了一種通用機制,該機制可被用來使能處于USB總線上的所有類型的通信服務,即USB通信設備的控制功能;
- 數據接口類(Data Interface Class):定義了一種通用機制,當一種數據不符合任何類的要求時,該機制使這種數據傳輸能通過USB塊傳輸或同步傳輸類型在USB總線上進行,即通過USB塊傳輸或同步傳輸類型去實現任何類型的數據傳輸的機制。
1)USB CDC ACM(虛擬串口)
- CDC-ACM (Abstract Control Model 抽象控制模型)允許任何通信設備提供串行通信接口(例如發送和接收AT命令的調制解調器設備)。該設備類型是在PSTN(Public Switched Telephone Network)中定義的。
- CDC-ACM驅動程序將USB設備作為虛擬調制解調器或虛擬COM端口暴露給操作系統。驅動程序可以通過ACM(通過不同通道分離數據和AT命令)或通過串行仿真(按原樣傳遞AT命令和作為數據流的一部分)發送數據和AT命令。
2)USB CDC ECM
CDC-ECM(Ethernet Networking Control Model 以太網網絡控制模型)用于在設備和主機之間交換以太網幀數據。CDC-ECM設備的一般用例是LAN/WLAN的點對點以太網適配器。(獲取的是局域網IP)
3)USB CDC NCM
CDC-NCM(Network Control Model 網絡控制模型)協議用于在設備和主機之間交換高速以太網幀數據。這些以太網幀可以傳送通過通信網絡傳輸的IPv4或IPv6數據報。NCM設備的一般用例是支持3.5G/4G網絡的無線網絡適配器,例如:HSPA +和LTE。NCM是建立在ECM的基礎上,進行改進以支持更高的數據速率,主要表現在:
- 多個以太網幀可以聚合為單個USB傳輸;
- 為了最大限度地減少在USB設備中處理以太網幀時的開銷,CDC-NCM可以按照最好的方式將以太網幀放到USB傳輸中。
- CDC-ECM專為USB full-speed設備而設計,尤其適用于支持DOCSIS 1.0電纜調制解調器。雖然ECM在功能上是完整的,但它在吞吐量或效率方面不能很好地擴展到更高的USB速度和更高的網絡速度。NCM利用從ECM實施中獲得的經驗,并調整數據傳輸協議,使其更加高效。
4)USB CDC EEM
CDC-EEM(Ethernet Emulation Model 以太網仿真模型)是一種通過USB總線以低成本和高效率傳輸以太網幀的規范。與CDC ECM不同,EEM不會擴展USB總線上的接口,而是將USB總線視為移動以太網數據包的工具。EEM是較新的標準,比ECM稍微簡單一些,可以獲得更多的硬件支持。兩者之間的差別是:
- ECM將網絡接口擴展到目標(例如USB電纜調制解調器);
- EEM用于移動設備通過USB使用以太網與主機通信。
但是,對于Linux gadget,與主機的接口是相同的(usbX設備),因此差異很小。
5)USB CDC OBEX
USB CDC-OBEX(Object Exchange 對象交換)符合WMC(Wireless Mobile Communication 無線移動通信)OBEX功能模型,支持USB上的OBEX應用程序。
6)USB WMC
USB WMC(Wireless Mobile Communication 無線移動通信),可以理解為USB上網卡(連接移動通信網絡),該模型包括以下內容:
image
2.RNDIS設備
-
RNDIS(Remote Network Driver Interface Specification 遠程網絡驅動接口協議)是Microsoft專有協議,主要用于USB之上,在支持Microsoft RNDIS協議的Windows PC上提供類似CDC的通信功能。它提供了大多數Windows,Linux和FreeBSD操作系統版本的虛擬以太網鏈接。
-
NDIS和RNDIS區別:NDIS是一種規范,定義了網絡驅動接口的api。RNDIS是一種技術,是將TCP/IP封裝在USB報文里,實現網絡通信。
-
NDIS和PPP區別:ppp通過pppd進行撥號,NDIS通過gobinet進行撥號。
-
RNDIS的框架如下:
image
3.RmNet設備
RmNet是高通公司為其手機平臺開發的專有USB虛擬以太網框架。 RmNet通過薄層協議(TLP)提供更高的吞吐量,并允許服務質量流量控制。
- RmNet和CDC-ECM區別:更像是兩種撥號方式的區別,RmNet獲取公網IP,CCD-ECM獲取局域網IP。
- 在高通平臺上,rmnet 也是屬于CDC-ECM,他們具體的區別在于對于USB命令的封裝以及使用的USB接口,端點定義方式不同。
- 如果是使用RmNet,那么發起data call是通過QMI工具發的QMI命令,QMI工具為QMICM,QMICM集成了QMI命令。
- 而通過標準的CDC-ECM發起data call,則是發送標準的ECM命令。
- 如果是QMICM建立的data call,不走router的,所以它的IP地址獲得的是公網IP。
- 而通過標準的CDC-ECM建立的data call,是走router的,獲得的IP地址是私有的IP如192.168開頭。
4.HID設備
Human Interface Device的縮寫,由其名稱可以了解HID設備是直接與人交互的設備,例如鍵盤、鼠標與游戲桿等。不過HID設備并不一定要有人機接口,只要符合HID類別規范的設備都是HID設備。
5.Mass Storage設備
USB大容量存儲設備是一個協議,允許一個USB接口的設備與主計算設備相連接,以便在兩者之間傳輸文件。對于主計算設備來說,USB設備看起來就像一個移動硬盤,允許拖放型文件傳送。它實際上是由USB實施者論壇所通過許多通訊協議的匯總,這一標準提供了許多設備的界面。包括移動硬盤、閃存盤、移動光學驅動器、讀卡器、數碼相機、數碼音樂播放器、PDA以及手機等等。
總結
- 上一篇: portal无线认证服务器,无线AC配置
- 下一篇: 程序员什么专业毕业算是科班出身?这个回答