다음을 통해 공유


MB 디바이스 준비 상태

이 항목에서는 MB 서비스가 데이터 연결 설정을 진행하기 전에 MB 디바이스에 액세스할 수 있고 네트워크 관련 활동에 사용할 준비가 되었는지 확인하는 절차를 설명합니다. 디바이스는 사용자 구독이 활성화되고 디바이스 또는 SIM 카드(구독자 ID 모듈)에 저장된 구독자 관련 정보를 사용할 준비가 되었습니다.

MB 서비스는 미니포트 드라이버가 시스템에서 로드한 후 서비스의 명령을 기다리지 않고 MB 디바이스의 하드웨어(라디오 스택, SIM 카드 또는 동등한 회로)를 자동으로 초기화한다고 가정합니다.

미니포트 드라이버는 MB 디바이스의 초기 준비 상태를 WwanReadyStateOff로 설정합니다. 초기화를 진행하면서 미니포트 드라이버는 MB 서비스에 디바이스의 준비 상태 변경 내용을 알리기 위해 이벤트 알림을 보내야 합니다.

미니포트 드라이버는 오류 조건이 발생하는 경우 초기화 프로세스를 중지해야 합니다. 오류 조건이 지워지면 미니포트 드라이버는 디바이스가 WwanReadyStateInitialized 준비 상태에 도달할 때까지 초기화 프로세스를 다시 시작할 수 있습니다.

다음은 몇 가지 오류 시나리오의 예입니다.

  • 디바이스에 SIM 카드 필요하고 미니포트 드라이버가 SIM 카드 없음을 감지하는 경우 미니포트 드라이버는 WwanReadyStateSimNotInserted 준비 상태 이벤트 알림을 보내야 하며 사용자가 SIM 카드 디바이스에 삽입할 때까지 미니포트 드라이버는 해당 상태로 유지되어야 합니다.

  • 디바이스에 SIM 카드 필요하고 미니포트 드라이버가 삽입된 SIM 카드 읽을 수 없거나(예: U-RIM이 GSM 기반 디바이스에 삽입되거나 USIM이 CDMA 기반 디바이스에 삽입됨) SIM 카드 디바이스와 호환되지 않는 경우(예: 3G USIM이 2G 디바이스에 삽입됨) USIM 형식을 해석할 수 없는) 미니포트 드라이버는 WwanReadyStateBadSim 준비 상태 이벤트 알림을 보내야 하며, 미니포트 드라이버는 사용자가 디바이스에 올바른 SIM 카드 삽입할 때까지 해당 상태로 유지되어야 합니다.

  • 디바이스가 PIN(SIM 카드를 사용하는 디바이스의 경우) 또는 추가 디바이스 초기화 진행을 방지하는 암호(SIM 카드를 사용하지 않는 디바이스의 경우)에 의해 잠긴 경우 미니포트 드라이버는 WwanReadyStateDeviceLocked 준비 상태 이벤트 알림을 보내야 하며, 미니포트 드라이버는 사용자가 올바른 PIN 또는 암호를 입력할 때까지 해당 상태로 유지되어야 합니다.

  • 미니포트 드라이버가 서비스 활성화를 진행하는 데 필요한 것으로 감지되면 미니포트 드라이버는 WwanReadyStateNotActivated 준비 상태 이벤트 알림을 보내야 하며 서비스가 활성화될 때까지 해당 상태로 유지되어야 합니다. 이는 북아메리카 CDMA 기반 디바이스에 대한 일반적인 동작입니다.

  • 미니포트 드라이버가 앞에서 언급한 것 이외의 오류가 발생하면 미니포트 드라이버는 WwanReadyStateFailure 준비 상태 이벤트 알림을 보내야 하며 문제가 식별되고 수정될 때까지 해당 상태로 유지되어야 합니다.

MB 서비스는 미니포트 드라이버가 이러한 모든 오류를 감지할 수 있다고 가정하지 않습니다. 또한 서비스는 미니포트 드라이버가 이러한 오류 조건을 감지하는 순서를 가정하지 않습니다. 그러나 이전에 나열된 순서대로 오류 시나리오를 구현하는 것이 가장 좋습니다.

미니포트 드라이버가 WwanReadyStateInitialized 준비 상태 이벤트 알림을 보낼 때까지 서비스는 문제가 식별되고 수정될 때까지 네트워크 관련 활동을 더 이상 진행하지 않습니다. 그러나 서비스는 여전히 미니포트 드라이버에 OID를 보낼 수 있습니다.

미니포트 드라이버는 WwanReadyStateInitialized 준비 상태를 보고하기 전에 SMS 하위 시스템이 준비될 때까지 기다릴 필요가 없습니다. 대신, 미니포트 드라이버는 SMS 하위 시스템이 SMS 메시지를 보내고 받을 준비가 되면 별도의 OID_WWAN_SMS_CONFIGURATION 알림을 보내야 합니다.

긴급 모드 지원

미니포트 드라이버가 OID_WWAN_READY_INFO 처리하는 동안 응급 호출 서비스를 지원함을 나타내는 경우 미니포트 드라이버는 WWAN_READY_INFO 구조의 EmergencyMode 멤버를 WwanEmergencyModeOn으로 설정해야 합니다. 이 경우 미니포트 드라이버는 MB 서비스에 등록 알림을 계속 보내야 하지만 서비스는 자동 구성 관련 기능을 호출하지 않습니다.

미니포트 드라이버는 SIM이 더 이상 유효하지 않음을 감지하는 시나리오에서도 긴급 통화 서비스를 지원하도록 지정할 수 있습니다. 구독이 미지급 상태이거나 디바이스가 도난당한 것으로 보고되어 서비스가 비활성화되었기 때문일 수 있습니다.

MB 미니포트 드라이버 초기화

다음 다이어그램은 인터페이스가 정규화된 MB 인터페이스인지 여부를 확인하고 디바이스 기능에 대한 정보를 수집하기 위해 수행되는 프로세스를 나타냅니다. 이러한 단계는 MB 서비스가 시작될 때 열거된 각 MB 인터페이스에 대해 수행되며 서비스가 실행되는 동안 새 인터페이스가 도착할 때마다 수행됩니다. 굵게 표시된 레이블은 OID 식별자 또는 트랜잭션 흐름 제어를 나타냅니다. 일반 텍스트의 레이블은 OID 구조 내의 중요한 플래그를 나타냅니다.

인터페이스가 정규화된 mb 인터페이스인지 확인하고 디바이스 기능에 대한 정보를 수집합니다.

MB 미니포트 드라이버를 초기화하려면 다음 절차를 사용합니다.

  1. MB 서비스는 동기(차단) OID_GEN_PHYSICAL_MEDIUM 쿼리 요청을 전송하여 MB 디바이스의 유형을 식별합니다. 미니포트 드라이버는 NdisPhysicalMediumWirelessWan 으로 응답하여 MB 디바이스가 WWAN 디바이스임을 나타냅니다.

  2. MB 서비스는 미니포트 드라이버에 동기(차단) OID_GEN_MEDIA_SUPPORTED 쿼리 요청을 전송하여 MB 디바이스에서 사용하는 매체의 종류를 식별합니다. 미니포트 드라이버는 NdisMedium802_3 응답하여 이더넷 에뮬레이션을 사용함을 나타냅니다.

  3. MB 서비스는 미니포트 드라이버에서 지원하는 드라이버 모델 버전을 식별하기 위해 동기(차단) OID_WWAN_DRIVER_CAPS 쿼리 요청을 미니포트 드라이버에 보냅니다. 미니포트 드라이버는 WWAN_VERSION 응답합니다.

  4. MB 서비스는 MB 디바이스의 기능을 식별하기 위해 미니포트 드라이버에 비동기(비차단) OID_WWAN_DEVICE_CAPS 쿼리 요청을 보냅니다. 미니포트 드라이버는 요청을 받았다는 임시 승인으로 응답하고 나중에 요청된 정보와 함께 알림을 보냅니다.

  5. 미니포트 드라이버는 미니포트 드라이버가 지원하는 MB 디바이스의 기능을 나타내는 NDIS_STATUS_WWAN_DEVICE_CAPS 알림을 MB 서비스에 보냅니다. 예를 들어 미니포트 드라이버가 GSM 기반 디바이스를 지원하는 경우 NDIS_WWAN_DEVICE_CAPS 구조체DeviceCaps.WwanCellularClass 멤버에서 WwanCellularClassGsm 값을 지정해야 합니다. 미니포트 드라이버가 CDMA 기반 디바이스를 지원하는 경우 WwanCellularClassCdma를 지정해야 합니다.

User-Defined 컨텍스트를 사용하여 SIM-Locked GPRS 디바이스 초기화

다음 다이어그램에서는 사용자가 SIM PIN을 입력하고 액세스 지점 이름 문자열을 수동으로 구성하는 시나리오를 보여 줍니다. 굵게 표시된 레이블은 OID 식별자 또는 트랜잭션 흐름 제어이며 일반 텍스트의 레이블은 OID 구조 내의 중요한 플래그입니다.

사용자가 sim 핀을 입력하고 액세스 지점 이름 문자열을 수동으로 구성하는 시나리오를 보여 주는 다이어그램.

PIN1이 잠긴 GSM 기반 디바이스를 초기화하려면 다음 단계를 구현합니다.

  1. MB 서비스는 디바이스의 준비 상태를 식별하기 위해 비동기(비차단) OID_WWAN_READY_INFO 쿼리 요청을 미니포트 드라이버에 보냅니다. 미니포트 드라이버는 요청을 받았으며 나중에 요청된 정보와 함께 알림을 보낼 것이라는 임시 승인(NDIS_STATUS_INDICATION_REQUIRED)으로 응답합니다.

  2. 미니포트 드라이버는 MB 서비스에 NDIS_STATUS_WWAN_FAILURE 알림을 전송하여 MB 서비스에 SIM(구독자 ID 모듈)이 잠겨 있음을 나타냅니다.

  3. MB 서비스는 비동기(비차단) OID_WWAN_PIN 쿼리 요청을 미니포트 드라이버에 보냅니다. 미니포트 드라이버는 요청을 받았으며 나중에 요청된 정보와 함께 알림을 보낼 것이라는 임시 승인(NDIS_STATUS_INDICATION_REQUIRED)으로 응답합니다.

  4. 미니포트 드라이버는 MB 서비스에 NDIS_STATUS_WWAN_SUCCESS 알림을 보냅니다.

  5. MB 서비스는 비동기(비차단) OID_WWAN_PIN 설정된 요청을 미니포트 드라이버에 보냅니다. 미니포트 드라이버는 요청을 받았으며 나중에 요청된 정보와 함께 알림을 보낼 것이라는 임시 승인(NDIS_STATUS_INDICATION_REQUIRED)으로 응답합니다.

  6. 미니포트 드라이버는 MB 서비스에 NDIS_STATUS_WWAN_SUCCESS 알림을 보냅니다.

  7. 미니포트 드라이버는 MB 서비스에 MB 디바이스의 상태가 WwanReadyStateInitialized임을 나타내는 NDIS_STATUS_WWAN_READY_INFO 알림을 MB 서비스에 보냅니다.

  8. MB 서비스는 비동기(비차단) OID_WWAN_REGISTER_STATE 쿼리 요청을 미니포트 드라이버에 보냅니다. 미니포트 드라이버는 요청을 받았다는 임시 승인(NDIS_STATUS_INDICATION_REQUIRED)으로 응답하고 나중에 요청된 정보와 함께 알림을 보냅니다.

  9. 미니포트 드라이버는 MB 서비스에 NDIS_STATUS_WWAN_SUCCESS 알림을 보냅니다.

  10. 미니포트 드라이버는 MB 서비스에 NDIS_STATUS_WWAN_REGISTER_STATE 알림을 보냅니다.

  11. MB 서비스는 비동기(비차단) OID_WWAN_HOME_PROVIDER 쿼리 요청을 미니포트 드라이버에 보냅니다. 미니포트 드라이버는 요청을 받았다는 임시 승인(NDIS_STATUS_INDICATION_REQUIRED)으로 응답하고 나중에 요청된 정보와 함께 알림을 보냅니다.

  12. 미니포트 드라이버는 MB 서비스에 NDIS_STATUS_WWAN_SUCCESS 알림을 보냅니다.

  13. 미니포트 드라이버는 MB 서비스에 NDIS_STATUS_WWAN_REGISTER_STATE 알림을 보냅니다.

  14. MB 서비스는 비동기(비차단) OID_WWAN_PACKET_SERVICE 요청을 미니포트 드라이버에 보냅니다. 미니포트 드라이버는 요청을 받았으며 나중에 요청된 정보와 함께 알림을 보낼 것이라는 임시 승인(NDIS_STATUS_INDICATION_REQUIRED)으로 응답합니다.

  15. 미니포트 드라이버는 MB 서비스에 NDIS_STATUS_WWAN_PACKET_SERVICE 알림을 보냅니다.

  16. MB 서비스는 비동기(비차단) OID_WWAN_PROVISIONED_CONTEXTS 쿼리 요청을 미니포트 드라이버에 보냅니다. 미니포트 드라이버는 요청을 받았다는 임시 승인(NDIS_STATUS_INDICATION_REQUIRED)으로 응답하고 나중에 요청된 정보와 함께 알림을 보냅니다.

  17. 미니포트 드라이버는 NDIS_STATUS_WWAN_PROVISIONED_CONTEXTS MB 서비스로 보냅니다.

  18. MB 서비스는 비동기(비차단) OID_WWAN_PROVISIONED_CONTEXTS 설정 요청을 MB 서비스에 보냅니다. 미니포트 드라이버는 요청을 받았다는 임시 승인(NDIS_STATUS_INDICATION_REQUIRED)으로 응답하고 나중에 요청된 정보와 함께 알림을 보냅니다.

  19. 미니포트 드라이버는 NDIS_STATUS_WWAN_SUCCESS MB 서비스로 보냅니다.

참고 항목

디바이스 준비에 대한 자세한 내용은 OID_WWAN_READY_INFO.

프로비전된 컨텍스트를 사용한 디바이스 초기화에 대한 자세한 내용은 MB 프로비전된 컨텍스트 작업을 참조하세요.