Add grpc keep alive for management service#771
Conversation
|
Is there an ETA when this feature will be ready? I am thinking to disable my rproxy for netbird until this feature is done. I see this issue is occuring more often since latest release. |
208c6e1 to
70076b9
Compare
d19dd3a to
649dbf2
Compare
|
@ykorzikowski could you send me the version information of your proxy? |
|
This development is not actual any more. The modern versions of the proxy servers can support well the grpc. |
|
@pappz I use Cloudflare proxy my netbird management and signal service, But netbird client got disconnect and reconnect every 100 second. this caused by cloudflare 524 timeoout: https://developers.cloudflare.com/support/troubleshooting/cloudflare-errors/troubleshooting-cloudflare-5xx-errors/#error-524-a-timeout-occurred.
Can you continue add grpc keep alive for management and signal service ? Thanks! |
|
Same here, my connections are dropped every 75s because of the lack of this, please reconsider. |
|
This feature seems to be a good idea. |
|
I apologize for the year-later reply, but I'd love to see an implementation of keep-alive in gRPC. I'm running it behind Cloudflare and it can be a bit annoying having it fill up my logs. |
Describe your changes
Application level keep alive PoC for gRPC.
The concept is that mgmt server send the keep alive messages
periodically.
Because the current setup does not support the both way communication
the server inject keep alive (empty) messages in the Sync stream. So
the keep alive procedure will start after the Sync call happens.
The application level keep alive will be applied only on that case when the
server is behind reveres proxy. The server check it with the proper
HTTP headers to ensure to necessary this feature or not.
Because in the client has a bug what can cause exception I involved
the version information into the gRPC function calls and the server
send keep alive messages only if it is supported by the client.
Example nginx config:
Issue ticket number and link
Checklist