Switch Network interfaces while stream is running

47 views
Skip to first unread message

tob...@googlemail.com

unread,
Jun 14, 2019, 3:15:29 AM6/14/19
to grpc.io
Hi group,

are there any experiences here how GRPC handles a switch of the network interface while a bi-di stream is running?
E.g. I start a connection on a laptop that is using LAN and WLAN.Due to the interface metric I would expect that the channel would prefer the LAN connection.

But what happens to the stream if I pull the network cable?

Now a WLAN only scenario - e.g. I walk with the laptop through a large building with many access points.
What happens to the stream if the WLAN switches to a different accesspoint (still connected to the same network)?

Are there any differences between IPv4 and IPv6?

I would appreciate any thoughts or input on this matter.

Thanks
Tobias

Carl Mastrangelo

unread,
Jun 14, 2019, 4:54:04 PM6/14/19
to grpc.io
Replies inline:



On Friday, June 14, 2019 at 12:15:29 AM UTC-7, tob...@googlemail.com wrote:
Hi group,

are there any experiences here how GRPC handles a switch of the network interface while a bi-di stream is running?

Sorry, this is not supported currently.   It is theoretically solvable if using QUIC, which has a separate connection identifier in each packet, but  I don't think gRPC supports it yet.   File an issue on the GitHub tracker if you are interested in it. 
 
E.g. I start a connection on a laptop that is using LAN and WLAN.Due to the interface metric I would expect that the channel would prefer the LAN connection.

But what happens to the stream if I pull the network cable?

It will take a while to realize the packets are not being responded to.  You can set a keep alive timer on the channel to make sure you noticed within some time frame.
 

Now a WLAN only scenario - e.g. I walk with the laptop through a large building with many access points.
What happens to the stream if the WLAN switches to a different accesspoint (still connected to the same network)?

Are there any differences between IPv4 and IPv6?

Not really, at least in the scope of this question.

Eric Anderson

unread,
Jun 17, 2019, 3:01:32 PM6/17/19
to tob...@googlemail.com, grpc.io
Streams are bound to the underlying TCP connection they were "placed on." So the questions are answered by "what happens with TCP in that scenario."

--
You received this message because you are subscribed to the Google Groups "grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/42b92c73-39f5-4b7d-b12d-35385e4a9923%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages