Winsock 内核套接字类别

Winsock 内核 (WSK) 网络编程接口 (NPI) 定义了五种不同的套接字类别:基本套接字、侦听套接字、数据报套接字、面向连接的套接字和套接字。 每个 WSK 套接字类别都有独特的功能,并支持一组不同的套接字函数。 每当 WSK 应用程序创建新套接字时,都必须指定要创建的 WSK 套接字类别。 每个 WSK 套接字类别的用途如下:

基本套接字
基本套接字仅用于获取和设置传输堆栈套接字选项或执行套接字 I/O 控制操作。 基本套接字不能绑定到本地传输地址,并且不支持发送或接收网络数据。

侦听套接字
侦听套接字用于侦听来自远程传输地址的传入连接。 侦听套接字的功能包括基本套接字的所有功能。

数据报套接字
数据报套接字用于发送和接收数据报。 数据报套接字的功能包括基本套接字的所有功能。

面向连接的套接字
面向连接的套接字用于通过已建立的连接发送和接收网络数据。 面向连接的套接字的功能包括基本套接字的所有功能。

流套接字
流套接字用于侦听来自远程传输地址的传入连接 (充当侦听套接字) ,或者通过已建立的连接发送和接收网络数据 (充当面向连接的套接字) 。 如果在创建套接字时不知道要侦听套接字还是面向连接的套接字,请使用流套接字。 流套接字的功能包括基本套接字的所有功能。