-
Notifications
You must be signed in to change notification settings - Fork 722
Merge IC zero copy socket send in to stream-nb-24-3 #25878
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge IC zero copy socket send in to stream-nb-24-3 #25878
Conversation
XDC allows to send huge events without splitting into small IC chunks.
Co-authored-by: Vlad Kuznetsov <[email protected]> Support for MSG_ZEROCOPY feature for XDC stream. Linux has features which allows to perform send in to socket without copy during send call. MSG_ZEROCOPY is a one of possibility to achieve it. To use it we must configure net.core.optmem_max kernel option, default values usually not enought. Also process should have capability to lock memory, so consider settings ulimit -l or IPC_LOCK capability. Note0: MSG_ZEROCOPY causes hiden copy inside kernel when traffic goes between process on the same host. The implementation handle it and disable using MSG_ZEROCOPY for such sessions. Note1: Some processes using PACKET sockets breaks MSG_ZEROCOPY and also causes hidden copy inside kernel. So consider output `ss -0` in case of non succcess. Note2: Hardware must support scatter-gather ydb-platform#17181 (comment)
…tform#17826) TGuardActor should be launched only in case of uncompleted ZC transfers. ydb-platform#17820
Missed #ifdef has been added. MSG_ZEROCOPY related code works only on linux.
…form#18698) The issue was missed checks for enabled encryption during zero copy routine. It causes attempt to send data unencrypted via XDC socket. ydb-platform#18546
⚪
🟡
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
⚪
🟡
*please be aware that the difference is based on comparing your commit and the last completed build from the post-commit, check comparation |
34aa955
into
ydb-platform:stream-nb-24-3
No description provided.