Personal Engineering Workbench Since 2000

About NT KERNEL

Personal projects, low-level Windows networking research, and systems software development since 2000.

Vadim Smirnov Software Engineer

Hello, I’m Vadim Smirnov, a software engineer with over two decades of experience in Windows kernel-mode development, networking, and cybersecurity.

I started NT KERNEL in 2000 as a personal technical project to document and share my Windows systems programming work.

While much of the work here began as personal experimentation, it often led to practical solutions, reusable tools, and, in some cases, full-scale products. These range from small utilities to advanced drivers and networking tools, all with a common goal: solving problems in efficient and elegant ways.

I’m always open to exchanging ideas and collaborating on projects in areas I know well. Whether it’s improving an existing tool or building something new from scratch, feel free to reach out using the contact form below.

What is NT KERNEL?

Started in 2000 as a personal technical workbench to document and share Windows systems programming projects, NT KERNEL evolved into a collection of reusable drivers, networking tools, and developer libraries.

Kernel & Driver Architecture

Developing, maintaining, and preparing production Windows drivers spanning NDIS, WFP, and kernel-mode subsystems.

Network Packet Processing

Raw Ethernet frame inspection, real-time packet modification, traffic shaping, protocol emulation, and custom filtering.

Developer Tooling & SDKs

Ergonomic user-mode libraries in C++, C# (.NET), and Rust giving developers packet filtering capabilities without writing custom kernel drivers.

Evolution of Windows Network Driver Architectures

Over more than twenty years, low-level network filtering on Windows transitioned through four distinct operating system driver models. Each era used a fundamentally different architecture suited to that generation of Windows.

1998–2000

NDIS 3.1 Virtual Device Driver (VxD)

Windows 95 / 98 / ME • Historical

The earliest packet filtering implementation was written as a 32-bit VxD intercepting network packets at the monolithic driver boundary in Windows 9x.

2000–2003

NDIS 4 Hooking Filter Driver

Windows NT 4.0 / 2000 • Historical

Ported to the Windows NT kernel architecture, hooking into the NDIS export table between transport protocols and network interface drivers to intercept raw frames.

2003–2010

NDIS 5.1 Intermediate (IM) Filter Driver

Windows XP / Server 2003 • Historical

Re-engineered around Microsoft's NDIS Intermediate Miniport (IM) driver model, creating virtual adapter bindings for transparent packet filtering across 32-bit and early 64-bit Windows systems.

2011–Present

NDIS 6.x Lightweight Filter (LWF)

Windows 11 / 10 / ARM64 • Active Production

Introduced in WinpkFilter 3.0.8 (February 2011) to replace the legacy IM architecture, and evolving into today's active production driver (WinpkFilter 3.6.x) delivering high-performance packet processing via shared-memory Fast I/O with native x64 and ARM64 support.

Projects & Tools

For more than two decades, Windows Packet Filter has been used as a building block in commercial Windows networking and security software. The primary active projects include:

Core Framework

Windows Packet Filter

The core high-performance packet filtering framework for Windows. Intercept, inspect, modify, and inject raw Layer 2 Ethernet frames from user mode without writing custom kernel drivers.

VPN & Security

WireSock Secure Connect

A specialized high-performance WireGuard client for Windows featuring advanced split tunneling, per-process application routing, and transparent SOCKS5 integration.

Transparent Proxy

ProxiFyre SOCKS5

Transparent system-wide and per-application SOCKS5 proxy client for Windows, built on WinpkFilter's low-level packet redirection capabilities.

Get in Touch

If you have a question about something I’ve built, want to discuss an idea, or just feel like saying hello, you’re welcome to drop me a message through the contact form below. I can’t promise instant replies, but I do read everything and try to respond when I can.

Send a Message