This is an old revision of the document!
3G/LTE 모뎀은 대부분 USB를 통해 통신하고 있어 3G/LTE과 통신할 수 있는 방법인 USB 네트워크 프로토콜에 대해 알아보고자 한다.
3G/LTE USB 모뎀, USB 디바이스 드라이버와 커넥티비티 소프트웨어가 필요하다.
USB 디바이스 드라이버는 USB모뎀을 OS에서 사용이 가능한 모뎀 및 네트워크 장치로 인식시키고 디바이스와 통신할 수 있는 버스 인터페이스를 제공한다.
커넥티비티 소프트웨어는 USB 디바이스를 통해 USB 모뎀의 상태를 체크하거나 네트워크 접속/해재 등의 기능을 제공한다.
USB 네트워크 디바이스 드라이버는 USB-IF나 통신 모듈 제조사, OS개발 사에서 제공하는 다양한 프로토콜에 따라 나누어 볼 수 있다.
초기 USB 모뎀은 PPP방식으로 인터넷에 접속하기 위해 시리얼 통신을 가상화 시킨 CDC ACM (Abstract Control Model) 을 지원했다. USB 모뎀을 PC에 연결하면 OS에서 모뎀 장치를 인식하고 인식된 모뎀장치로 AT 커맨드 명령어를 보내어 장치 상태를 체크하거나 네트워크에 접속 하였다. USB-IF의 표준인 CDC ACM을 따르는 대부분의 OS에서는 CDC ACM 지원 드라이버를 포함하고 있어 USB 모뎀 제조사에서 별도 USB 디바이스 드라이버 개발이 필요 없었다. 현재도 호환성을 위해 일부 3G모뎀의 경우 CDC ACM을 지원하고 있다.
하지만 2G에서 3G/LTE로 네트워크 속도가 발전하면서 IP 기반 네트워크 통신의 체계의 요구가 증가하게 되었고 이에 따른 USB 네트워크 장치들을 위한 통신 규약인 새로우 프로토콜들이 만들어졌다.
USB-IF 는 네트워크 장치를 가상화 시킨 CDC ECM (Ethernet Devices), CDC EEM (Ethernet Emulation Devices) 부터 대용량 데이터 처리를 할 수 있도록 패킷 처리 방식을 개선한 CDC NCM (Network Control Model)까지 기능 별 사양을 정의하고 있다.
마이크로소프트는 USB기반의 네트워크 장치 지원을 목적으로 윈도우XP부터 CDC ECM과 유사한 RNDIS( Remote NDIS )를 만들어 디바이스 드라이버를 OS에 포함시켜 제공하였다. 또한 패킷 처리 방식을 개선하고 커넥티비티 기능을 포함하는 CDC MBIM을 USB-IF 표준으로 등록하여 윈도우8 부터 해당 기능을 포함하고 있다. 퀄컴의 경우 자사 통신칩의 통신과 제어를 위한 QMI/RmNet 을 만들어 사용하고 있다.
LG나 GCT에서 제조한 LTE통신 칩셋도 칩셋 제조사 별 프로토콜을 개발하여 운영하고 있다.
*libqmi* is a glib-based library for talking to WWAN modems and devices which speak the Qualcomm MSM Interface (QMI) protocol.
https://www.freedesktop.org/wiki/Software/libqmi/