Kepatuhan Spesifikasi WS-Discovery
WS-Discovery menjelaskan cara melakukan tugas berikut:
- Mengumumkan ketersediaan layanan pada subnet lokal
- Mencari layanan pada subnet
- Menemukan layanan yang dirujuk sebelumnya
Untuk mencapai hal ini, WS-Discovery mendefinisikan dua pesan satu arah, Hello dan Bye, dan dua pesan pencarian dua arah, Probe dan Resolve.
WS-Discovery juga menyediakan alamat dan port khusus untuk penemuan lokal tautan IPv4 dan IPv6. Spesifikasi ini juga memungkinkan pengikatan alternatif didefinisikan di tempat lain, seperti Probe melalui pengikatan HTTP yang ditentukan dalam Profil Perangkat untuk Layanan Web (DPWS).
Spesifikasi WS-Discovery menjelaskan fungsionalitas elektif dengan menggunakan istilah MAY atau SHOULD dalam rekomendasi atau pembatasan implementasi tertentu. Fungsionalitas yang dihilangkan dapat digambarkan sebagai DIPERLUKAN dalam spesifikasi WS-Discovery yang tidak diimplementasikan oleh WSDAPI, atau mungkin fungsionalitas yang diterapkan WSDAPI dalam metode lain dalam yang ditentukan dalam spesifikasi WS-Discovery.
Topik ini menjelaskan bagaimana pembatasan WS-Discovery, persyaratan, dan fungsionalitas pilihan ditangani oleh implementasi WSDAPI. Topik ini paling baik dibaca bersama dengan spesifikasi WS-Discovery.
Dukungan WS-Discovery dan SOAP-over-UDP
Dalam SOAP-over-UDP, Bagian 3.2 menentukan bahwa pesan UDP harus pas dalam datagram 64K. WSDAPI akan menerima pesan UDP 64K, tetapi batasan DPWS MAX_ENVELOPE_SIZE (32K) akan membatasi ukuran pesan. Seperti yang diperlukan oleh WS-Discovery, WSDAPI mendukung pola pesan yang dijelaskan dalam Bagian 4.
WSDAPI dapat dikonfigurasi untuk mendukung model keamanan di Bagian 7 dan 8. Ketika dikonfigurasi, WSDAPI akan menandatangani pesan WS-Discovery keluar dan akan memvalidasi tanda tangan pada pesan masuk.
WSDAPI mengimplementasikan algoritma transmisi ulang yang didefinisikan dalam Lampiran I sebagaimana diubah oleh Lampiran I DPWS.
Di WS-Discovery, WSDAPI menggunakan alamat yang ditentukan dalam bagian 2.4. WSDAPI memperluas APP_MAX_DELAY dari bagian 2.4, tetapi tidak sejauh yang didefinisikan dalam Lampiran I DPWS. Untuk informasi selengkapnya tentang APP_MAX_DELAY, lihat Fungsionalitas WS-Discovery Tambahan.
WS-Discovery menjelaskan uuid:
rekomendasi format URI di bagian 2.6, tetapi WSDAPI mengambil alih rekomendasi ini. Sebagai gantinya, WSDAPI menggunakan format URI yang urn:uuid:
dijelaskan dalam DPWS.
Bagian 3 dari WS-Discovery menjelaskan bagaimana klien berinteraksi dengan proksi penemuan. WSDAPI tidak mengenali interaksi ini dan mengabaikan pengumuman dari proksi penemuan. Di Windows 7, WSDAPI menerapkan ekstensi privat ke protokol WS-Discovery, WS-Discovery Ekstensi Jarak Jauh, untuk memungkinkan klien penemuan mencari layanan yang tersebar di banyak jaringan yang berbeda dengan mengirim permintaan ke proksi terpusat. Untuk informasi selengkapnya, lihat Fungsionalitas WS-Discovery Tambahan.
Bagian 4.1, paragraf 3 WS-Discovery mengharuskan timer harus berlalu sebelum pesan Halo dikirim. API hosting tidak menunggu sebelum mengirim pesan Halo. Jika skenario memerlukan penundaan sebelum pesan Halo dikirim, pengembang aplikasi harus menerapkan penantian.
WSDAPI mengimplementasikan semua pesan yang dijelaskan dalam WS-Discovery Bagian 4, 5, dan 6. WSDAPI juga memberlakukan MATCH_TIMEOUT yang dijelaskan dalam Bagian 7 sebagaimana diubah oleh Lampiran I DPWS. WSDAPI hanya melindungi dari "Pemutaran Ulang" dari pertimbangan aman di Bagian 9.
WSDAPI memang menerapkan pengurutan aplikasi seperti yang dijelaskan dalam lampiran I WS-Discovery.