다음을 통해 공유


Wi-Fi 직접 인쇄 구현

이 항목에서는 Wi-Fi 직접 인쇄 구현에 대한 디바이스 요구 사항에 대한 정보를 제공합니다.

디바이스 요구 사항

WFD-WSD 디바이스가 Wi-Fi Direct 인쇄 개요에 설명된 대로 원활한 연결 환경을 얻으려면 디바이스가 다음 요구 사항을 준수해야 합니다.

WFD 컨테이너 ID는 프린터의 UUID와 일치하므로 디바이스 메타데이터에는 PnP-X 컨테이너 ID가 필요하지 않습니다. 그러나 디바이스 메타데이터에서 PnP-X 메타데이터를 지원하고 디바이스 메타데이터의 PnP-X 메타데이터의 일부로 PnP-X 컨테이너 ID를 보급하는 것이 좋습니다. 이 컨테이너 ID는 WFD 컨테이너 ID와 일치해야 합니다.

WSD 계층뿐만 아니라 WFD 계층에도 동일한 컨테이너 ID가 있으면 다음이 보장됩니다.

  • 디바이스 추가 마법사와 같은 페어링 UI는 여러 논리 디바이스가 단일 물리적 디바이스에 공존한다는 것을 이해하고 사용자에게 보다 논리적인 방식으로 페어링을 처리할 수 있습니다. (예: 사용자는 WFD를 페어링하고 별도의 작업에서 디바이스를 수동으로 인쇄할 필요가 없습니다.)

  • 디바이스 & 프린터는 시스템에 두 개의 devnode 세트가 설치되어 있더라도 디바이스에 대한 단일 디바이스 아이콘을 표시할 수 있습니다(한 세트의 WFD devnodes 및 하나의 WSD devnodes 집합).

  • Windows 하드웨어 인증 키트 테스트가 올바르게 실행되려면 적절한 컨테이너 ID 구현이 필요합니다. 잘못된 구현으로 인해 테스트가 각 논리 디바이스를 별도의 물리적 디바이스로 인식하게 됩니다.

WFD-WSD 디바이스가 위의 요구 사항을 준수하지 않는 경우 이 구현에 설명된 연결 환경은 해당 디바이스에 적용되지 않습니다.

디바이스는 Wi-Fi Alliance - Wi-Fi Direct Industry 백서에 지정된 대로 영구 그룹 및 동시 Connection-Multiple 그룹을 구현해야 합니다.

프린터용 Wi-Fi Direct를 통해 컨테이너 UUID를 게시하는 방법

Windows는 Wi-Fi Alliance "Wi-Fi P2P(피어 투 피어) 사양 v1.1" 섹션 3.1.2.1.2(스캔 단계)에 따라 프로브 요청/응답을 사용하여 Wi-Fi Direct를 통해 프린터를 검색합니다. 이 경우 장치, 프린터는 적절한 프로브 요청/응답 프레임을 사용하여 PC에 회신합니다.

프로브 요청 & 프로브 응답 프레임은 모두 사용자 지정 ES를 사용하여 확장할 수 있습니다. Microsoft는 다양한 확장을 사용하도록 설정하는 여러 특성으로 사용자 지정 IE를 정의했습니다.

컨테이너 UUID용 Microsoft 802.11 사용자 지정 IE를 생성하는 방법

사용자 지정 IE는 다음 WFD 공급업체 확장 그림과 같이 공급업체 ID & 공급업체 데이터로 구성됩니다.

wfd 공급업체 확장.

Microsoft는 공급업체 ID 0x137 사용하여 Microsoft가 소유한 IDE를 나타냅니다. 각 공급업체의 공급업체 확장에 있는 공급업체 데이터 블록에는 공급업체가 정의하는 임의 데이터 블록이 포함되어 있습니다. Microsoft 공급업체 확장의 공급업체 데이터 블록은 하나 이상의 TLV(Type-Length-Value) 구조로 구성됩니다. TLV 구조의 organization 다음 WFD 공급업체 데이터 그림에 나와 있습니다.

wfd 공급업체 데이터.

컨테이너 UUID에 대한 TLV 정의

포함된 ID와 관련된 두 개의 TLL이 있습니다. Windows가 디바이스에 보내는 "특성 요청"이 & 디바이스가 응답하는 "컨테이너 UUID" TLV가 있습니다.

정의:

이름/설명 형식(2바이트) 길이(2바이트) 값(길이로 정의됨)
Microsoft 특성 요청(검색 중에 PC에서 프로브 요청으로 전송됨) 0x1005 0x0002 0x0001 = Microsoft가 포함된 UUID를 요청합니다.
컨테이너 UUID(검색 중에 프로브 응답의 프린터에서 전송됨) 0x1006 0x0010 프린터에서 정의하려면

세로 페어링 데이터 Blob 구현

세로 페어링 데이터 Blob을 사용하면 PC에서 프린터에 연결하기 전에 WSD 인쇄 서비스를 이해할 수 있습니다. 이 메커니즘은 Wi-Fi Direct에 대한 서비스 검색 사양이 작성되기 전에 구현되었으므로 서비스 검색을 간단히 대체합니다.

컨테이너 UUID와 마찬가지로 세로 페어링 데이터 Blob도 Microsoft IE의 특성입니다. 컨테이너 ID 특성과 달리 해당 역할에 따라 디바이스에서 M7/M8 WPS 메시지(Wi-Fi 직접 페어링 중)에 게시해야 합니다.

수직 페어링을 위해 Microsoft 802.11 사용자 지정 IE를 생성하는 방법

사용자 지정 IE는 다음 WFD 공급업체 확장 그림과 같이 공급업체 ID & 공급업체 데이터로 구성됩니다.

wfd 공급업체 확장.

Microsoft는 공급업체 ID 0x137 사용하여 Microsoft가 소유한 IDE를 나타냅니다. 각 공급업체의 공급업체 확장에 있는 공급업체 데이터 블록에는 공급업체가 정의하는 임의 데이터 블록이 포함되어 있습니다. Microsoft 공급업체 확장의 공급업체 데이터 블록은 하나 이상의 TLV(Type-Length-Value) 구조로 구성됩니다. TLV 구조의 organization 다음 WFD 공급업체 데이터 그림에 나와 있습니다.

wfd 공급업체 데이터.

세로 페어링 Blob에 대한 TLV 정의

랠리 세로 페어링에 대해 두 가지 특정 TLV 형식이 정의됩니다. 이러한 TLV 형식은 다음 표에 나와 있습니다.

이름/설명 형식(2바이트) 길이(2바이트) 값(길이로 정의됨)
세로 페어링 식별자(디바이스의 내부 토폴로지 통신) 0x1001 0x0002 아래의 "세로 페어링 식별자 TLV"를 참조하세요.
전송 UUID(디바이스의 전송 UUID 값) 0x1002 0x0010 위의 "컨테이너 UUID에 대한 TLV 정의"를 참조하세요.

세로 페어링 식별자 TLV

VPI(수직 페어링 식별자) TLV는 Windows가 디바이스의 서비스와 통신하는 방법을 지정하는 디바이스의 내부 토폴로지를 전달합니다. 디바이스에서 수직 페어링이 구현되지 않은 경우에도 Rally Vertical Pairing 확장을 지원하려면 하나 이상의 VPI가 필요합니다. 이 경우 VPI는 전송이 사용되지 않음을 지정합니다. VPI TLV는 WPS M1 메시지에서 Microsoft 공급업체 확장의 일부로 전송되어야 합니다.

VPI TLV에 포함된 데이터는 2바이트 길이이며, VPI TLV에 포함된 WFD 데이터의 다음 그림과 같이 전송 필드와 프로필 요청 필드의 두 가지 필드로 구성됩니다(각 필드는 1바이트 길이).

vpi tlv에 포함된 wfd 데이터입니다.

VPI 전송 필드

전송 필드는 Windows가 디바이스와 통신하는 데 사용할 수 있는 전송을 지정합니다. VPI당 하나의 전송만 지정할 수 있습니다. 디바이스가 여러 PnP-X 전송을 지원하는 경우 Microsoft 공급업체 확장에 여러 VPI TLL(각 전송에 대해 하나씩)을 포함하여 이를 통신할 수 있습니다. VPI 전송 필드에 대한 유효한 값은 다음 표에 나와 있습니다.

전송
0x00 없음
0x01 Dpws
0x02 UPnP
0x03 보안 DPWS
0x04-0xFF 예약됨

참고

Windows 7은 DPWS(0x01) 또는 보안 DPWS(0x03)를 지원하지만 둘 다 지원하지는 않습니다.

디바이스가 Rally Vertical Pairing을 구현하지 않는 경우 전송 값이 0x00(없음)인 VPI를 하나만 지정해야 합니다. 이 경우 디바이스는 전송 UUID TLV를 지정해서는 안 됩니다. 이렇게 하면 디바이스와 페어링되지 않을 것임을 Windows에 알 수 있습니다. 따라서 Windows는 디바이스의 Wi-Fi 설정을 구성하는 동안 디바이스와 사전 페어링을 시도하지 않습니다.

VPI 프로필 요청 필드

VPI를 사용하면 디바이스가 WPS 프로토콜을 사용하여 디바이스의 서비스를 프로비전할 수 있습니다. 이 경우 디바이스 서비스는 Windows에 서비스 구성을 위한 정보를 보내도록 요청할 수 있습니다. 이 정보를 프로필이라고 합니다. VPI의 두 번째 필드는 디바이스가 Windows에 프로필을 보내도록 요청하는지 여부를 지정합니다. VPI 프로필 요청 필드에 대한 유효한 값은 다음 표에 나와 있습니다.

설명
0x01 Wi-Fi 프로필이 요청되었습니다. 현재 Windows 7에서 지원되는 유일한 값입니다.
0x00, 0x02–0xFF 예약됨

0x00 VPI 프로필 요청 필드 값은 현재 Windows 7에서 지원되지 않으므로 예약된 것으로 간주됩니다. VPI 프로필 요청 필드는 전송에 대해 0x00(없음) 값이 지정된 경우에도 0x01(Wi-Fi 프로필 요청) 값으로만 설정해야 합니다.

전송 UUID TLV

전송 UUID TLV는 특정 전송(DPWS 또는 UPnP)에 WPS UUID와 다른 기본 UUID 값이 있음을 지정합니다. 전송 UUID TLV는 선택 사항입니다. 전송 UUID TLV가 포함되지 않은 경우 WPS UUID는 지정된 전송에 대한 ID를 형성하는 데 사용됩니다.

전송 UUID TLV가 포함된 경우 전송을 식별하는 VPI TLV를 즉시 따라야 합니다. 둘 이상의 VPI TLV가 포함된 경우 각 VPI TLV 다음에 전송 UUID TLV를 포함할 수 있습니다.

전송 UUID TLV 데이터 값은 네트워크 바이트 순서여야 합니다.

디바이스가 0x00(없음)의 VPI 전송 값을 지정하는 경우 전송 UUID TLV를 포함하지 마세요.

WPS 예제

이 예제에서는 프린터 디바이스가 DPWS를 사용하고 WS 인쇄 인터페이스를 구현한다고 가정합니다. 디바이스는 다음 표의 UUID 값을 사용합니다.

서비스 ID
WPS ec742c0d-5915-4bcb-b969-008132afec5e
DPWS 인쇄 urn:uuid:00010203-0405-0607-0809-0a0b0c0e0e0f

WPS 예제 서비스 UUID 값

UUID 값은 모두 소문자로 지정되며 DPWS ID 문자열은 urn:uuid:uuid_value 형식을 사용합니다.

참고

이 예제의 UUID 값은 가상이며 실제 디바이스에서 사용하면 안 됩니다.

디바이스가 WPS M7/M8 메시지를 보낼 때 다음 WFD 공급업체 확장 세부 정보 예제에 표시된 Microsoft 공급업체 확장이 포함됩니다.

예제 wfd 공급업체 확장 세부 정보입니다.

이 예제에서 공급업체 확장에는 microsoft 공급업체 확장으로 식별되는 0x137 공급업체 ID 값이 포함되어 있습니다. 공급업체 확장의 공급업체 데이터 필드에는 두 개의 TLV 구조가 있습니다.

첫 번째 TLV에는 TLV를 VPI로 식별하는 0x1001 형식 값이 있습니다. 첫 번째 TLV의 데이터 길이는 0x0101 값을 포함하는 2바이트입니다. 디바이스가 DPWS 전송(0x01)을 지원하고 프로필(0x01)을 요청한다는 것을 지정합니다.

두 번째 TLV에는 TLV를 전송 UUID로 식별하는 0x1002 형식 값이 있습니다. 두 번째 TLV의 데이터 길이는 16바이트이며 UUID 값 00010203-0405-0607-0809-0a0b0c0e0e0f의 이진 버전을 포함합니다.

고객이 프린터를 세로로 페어링하면 Windows는 먼저 적절한 설정으로 디바이스의 Wi-Fi 라디오를 구성합니다. 그런 다음 지정된 전송 UUID 값을 사용하여 디바이스의 DPWS 디바이스를 페어링합니다.

디바이스가 Wi-Fi 네트워크에 연결하고 DPWS 서비스를 알리면 Windows는 적절한 PnP 디바이스 노드를 만들고 적절한 드라이버를 설치하고 로드합니다.