Introduction to Winsock Kernel
Winsock Kernel (WSK) is a kernel-mode Network Programming Interface (NPI). With WSK, kernel-mode software modules can perform network I/O operations using the same socket programming concepts that are supported by user-mode Winsock2. The WSK NPI supports familiar socket operations such as socket creation, binding, connection establishment, and data transfers (send and receive). However, while WSK NPI supports most of the same socket programming concepts as user-mode Winsock2, WSK NPI is a completely new and different interface with unique characteristics such as asynchronous I/O that uses IRPs and event callbacks to enhance performance.
Kernel-mode network modules targeted for Windows Vista and later versions of Microsoft Windows should use WSK instead of TDI drivers because WSK provides improved performance and easier programming. Filter drivers should implement the Windows Filtering Platform on Windows Vista, and TDI clients should implement WSK.
Note
TDI isn't supported in Microsoft Windows versions after Windows Vista. Use Windows Filtering Platform or Winsock Kernel instead.