Protokol Berlapis dan Rantai Protokol
Windows Sockets 2 menggabungkan konsep protokol berlapis: yang hanya mengimplementasikan fungsi komunikasi tingkat yang lebih tinggi sambil mengandalkan tumpukan transportasi yang mendasar untuk pertukaran data aktual dengan titik akhir jarak jauh. Contoh jenis protokol berlapis ini adalah lapisan keamanan yang menambahkan protokol ke proses koneksi soket untuk melakukan autentikasi dan membuat skema enkripsi. Protokol keamanan seperti itu umumnya memerlukan layanan protokol transportasi yang mendasar dan andal seperti TCP atau SPX.
Istilah protokol dasar mengacu pada protokol, seperti TCP atau SPX, yang sepenuhnya mampu melakukan komunikasi data dengan titik akhir jarak jauh. Protokol berlapis adalah protokol yang tidak dapat berdiri sendiri, sementara rantai protokol adalah satu atau beberapa protokol berlapis yang digabungkan dan dilabuhkan oleh protokol dasar.
Anda dapat membuat rantai protokol jika Anda merancang protokol berlapis untuk mendukung Windows Sockets 2 SPI di tepi atas dan bawahnya. Struktur WSAPROTOCOL_INFO khusus mengacu pada rantai protokol secara keseluruhan dan menjelaskan urutan eksplisit di mana protokol berlapis bergabung. Ini diilustrasikan pada gambar di bawah ini. Karena hanya protokol dasar dan rantai protokol yang dapat langsung digunakan oleh aplikasi, mereka adalah satu-satunya yang tercantum ketika protokol yang diinstal dijumlahkan dengan fungsi WSAEnumProtocols .