WS-Discovery 사양 준수

WS-Discovery 는 다음 작업을 수행하는 방법을 설명합니다.

  • 로컬 서브넷에서 서비스의 가용성 발표
  • 서브넷에서 서비스 검색
  • 이전에 참조된 서비스 찾기

이를 위해 WS-Discovery 두 개의 단방향 메시지인 HelloBye와 두 개의 양방향 검색 메시지인 프로브 및 해결을 정의 합니다.

WS-Discovery IPv4 및 IPv6 링크 로컬 검색을 위한 주소 및 예약된 포트도 제공합니다. 또한 이 사양을 사용하면 DPWS( 디바이스 프로필 for Web Services )에 정의된 HTTP 바인딩을 통한 프로브와 같은 대체 바인딩을 다른 곳에서 정의할 수 있습니다.

WS-Discovery 사양은 지정된 구현 권장 사항 또는 제한에서 MAY 또는 SHOULD라는 용어를 사용하여 선택적 기능을 설명합니다. 생략된 기능은 WSDAPI에서 구현되지 않은 WS-Discovery 사양에서 REQUIRED로 설명된 기능이거나 WSDAPI가 WS-Discovery 사양에 지정된 다른 메서드에서 구현한 기능일 수 있습니다.

이 항목에서는 WSDAPI 구현에서 WS-Discovery 제한 사항, 요구 사항 및 선택 기능을 처리하는 방법을 설명합니다. 이 항목은 WS-Discovery 사양과 함께 가장 잘 읽습니다.

WS-Discovery 및 SOAP over-UDP 지원

SOAP over-UDP에서 섹션 3.2는 UDP 메시지가 64K 데이터그램에 맞도록 지정합니다. WSDAPI는 64K UDP 메시지를 수락하지만 MAX_ENVELOPE_SIZE(32K)의 DPWS 제약 조건은 메시지 크기를 제한합니다. WS-Discovery에서 요구하는 대로 WSDAPI는 섹션 4에 설명된 메시지 패턴을 지원합니다.

WSDAPI는 섹션 7 및 8에서 보안 모델을 지원하도록 구성할 수 있습니다. 이렇게 구성되면 WSDAPI는 아웃바운드 WS-Discovery 메시지에 로그온하고 인바운드 메시지에서 서명의 유효성을 검사합니다.

WSDAPI는 DPWS 부록 I에서 수정한 대로 부록 I에 정의된 재전송 알고리즘을 구현합니다.

WS-Discovery에서 WSDAPI는 섹션 2.4에 지정된 주소를 사용합니다. WSDAPI는 섹션 2.4에서 APP_MAX_DELAY 확장하지만 DPWS 부록 I에 정의된 범위까지는 확장되지 않습니다. APP_MAX_DELAY 대한 자세한 내용은 추가 WS-Discovery 기능을 참조하세요.

WS-Discovery 섹션 2.6의 uuid: URI 형식 권장 사항을 설명하지만 WSDAPI는 이 권장 사항을 재정의합니다. 대신 WSDAPI는 urn:uuid: DPWS에 설명된 URI 형식을 사용합니다.

WS-Discovery 섹션 3에서는 클라이언트가 검색 프록시와 상호 작용하는 방법을 설명합니다. WSDAPI는 이 상호 작용을 인식하지 못하며 검색 프록시의 공지 사항을 무시합니다. Windows 7에서 WSDAPI는 원격 확장을 WS-Discovery WS-Discovery 프로토콜에 대한 프라이빗 확장을 구현하여 검색 클라이언트가 중앙 프록시에 요청을 전송하여 다양한 네트워크에 분산된 서비스를 검색할 수 있도록 합니다. 자세한 내용은 추가 WS-Discovery 기능을 참조하세요.

섹션 4.1, WS-Discovery 단락 3에서는 Hello 메시지를 보내기 전에 타이머가 경과해야 합니다. 호스팅 API는 Hello 메시지를 보내기 전에 기다리지 않습니다. Hello 메시지를 보내기 전에 시나리오에 지연이 필요한 경우 애플리케이션 개발자는 대기를 구현해야 합니다.

WSDAPI는 WS-Discovery 섹션 4, 5 및 6에 설명된 모든 메시지를 구현합니다. WSDAPI는 또한 DPWS 부록 I. WSDAPI에서 수정한 섹션 7에 설명된 MATCH_TIMEOUT 적용합니다. WSDAPI는 섹션 9의 보안 고려 사항으로부터 "재생"으로부터만 보호합니다.

WSDAPI는 WS-Discovery 부록 I에 설명된 대로 애플리케이션 시퀀싱을 구현합니다.