Hi Gert,

Thanks, I had just one other question on the DCO and what functionality it 
covers, I tried to look at the source code some time back but I am unable to 
read kernel level C properly compared to app level C, it hurts my eyes. For 
example, let's say there are these basic components to a VPN:

- read from interface
- encrypted buffer data
- send to socket
- recv from socket
- decrypt buffer data
- write to interface

When I was looking at the OVPN source code some time back, I saw that the read 
from tun and write to tun was at the app level and then it handed it off to the 
DCO module? Does the DCO module primarily cover the encrypt and socket 
operations and functionality alone?

Thanks again,
Jon C (root)



On Fri, Sep 4, 2026, at 2:16 AM, Gert Doering wrote:
> Hi,
>
> On Thu, Sep 03, 2026 at 05:37:54PM -0400, Jon Chiappetta via 
> Openvpn-devel wrote:
>> I don't know the full history here yet and am still learning but
>> was this option ever considered to be implemented for OpenVPN?
>
> The canoncial answer for "make things complicated but fast" on Linux is
> DCO - there is nothing you can do to in userland process to get the speeds
> you can get with DCO (except go full DPDK), so the focus for userland is
> more on "avoid platform-specific complications" nowadays.
>
> gert
>
> -- 
> "If was one thing all people took for granted, was conviction that if you 
>  feed honest figures into a computer, honest figures come out. Never doubted 
>  it myself till I met a computer with a sense of humor."
>                              Robert A. Heinlein, The Moon is a Harsh Mistress
>
> Gert Doering - Munich, Germany                             [email protected]
>
> Attachments:
> * signature.asc


_______________________________________________
Openvpn-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to