mgravell / Pipelines.Sockets.Unofficial

.NET managed sockets wrapper using the new "Pipelines" API
Other
417 stars 54 forks source link

Loopback fast path is deprected on Windows and can cause high cpu on Win Server 2019 #58

Open maksimkim opened 4 years ago

maksimkim commented 4 years ago

See deprecation statement: https://docs.microsoft.com/en-us/windows-hardware/drivers/network/sio-loopback-fast-path After upgrade from Server 2016 to Server 2019 we noticed issue with high cpu usage by system.exe process. Windows Server support engineers claim that it could be caused by some bug in loopback fast path implementation in tcp.sys. Given the feature is deprecated does it make sense to remove it from the source code?

https://github.com/mgravell/Pipelines.Sockets.Unofficial/blob/master/src/Pipelines.Sockets.Unofficial/SocketConnection.Connect.cs#L67

mgravell commented 4 years ago

Yes, with that document: I'm happy to remove that. It was actually added by Microsoft, but: agree it should go now.

On Fri, 6 Nov 2020, 19:19 maksimkim, notifications@github.com wrote:

See deprecation statement: https://docs.microsoft.com/en-us/windows-hardware/drivers/network/sio-loopback-fast-path After upgrade from Server 2016 to Server 2019 we noticed issue with high cpu usage by system.exe process. Windows Server support engineers claim that could be caused by some bug in loopback fast path implementation in tcp.sys. Given the feature is deprecated does it make sense to remove it from the source code?

https://github.com/mgravell/Pipelines.Sockets.Unofficial/blob/master/src/Pipelines.Sockets.Unofficial/SocketConnection.Connect.cs#L67

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/mgravell/Pipelines.Sockets.Unofficial/issues/58, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAEHMAFROWWPRMXCRMZ2ILSORD37ANCNFSM4TNBRZTA .

mgravell commented 4 years ago

planning to deploy this today - just fixing .NET 5 build here: https://github.com/mgravell/Pipelines.Sockets.Unofficial/pull/60