Skip to content

WinTun: ring buffer transport #116

Description

@benaadams

Problem

Replace the FileStream-based implementation with the native ring buffer API for true zero-copy I/O.

Sub-tasks

  • WinTunNativeTransport implementing IPacketTransmitter and IPacketReceiver
  • Receive loop: WintunReceivePacket -> process -> WintunReleaseReceivePacket
  • Send path: WintunAllocateSendPacket -> write into buffer -> WintunSendPacket (true zero-copy)
  • Adapter lifecycle: create on init, destroy on dispose
  • Thread safety: document single-producer/single-consumer constraints from WinTun API
  • Keep old TAP implementation available behind a flag or as a separate class (don't delete yet)

Dependencies

Depends on: #115
Unlocks: #117 (update sample + benchmark), #118 (WinTun tests), #132 (Kestrel Windows backend), #137 (API docs)

Phase

Phase 2 (Platform Backends & Samples)

Metadata

Metadata

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions