QUIC Connection Migration

627 views
Skip to first unread message

Sujith Rengan J

unread,
Sep 19, 2018, 8:09:03 AM9/19/18
to QUIC Prototype Protocol Discussion group
Hi,

I've been trying to test the connection migration aspect of QUIC. The RFC states that:
QUIC allows connections to survive changes to endpoint addresses (that is, IP address and/or port), such as those caused by a endpoint migrating to a new network. 

So I tested the above case with the Youtube app on Android. The device is connected to WIFI initially while streaming a video. After some time, WIFI is disconnected and network switches to LTE.
When checking the tcpdump logs, I find that the connection ID is different for WIFI and LTE. A completely new connection is established for LTE after WIFI is disconnected. According to my understanding, connection ID should be same for the given server on IP change. Why is a new connection established? Is Connection migration implemented in GQUIC or am I missing something?

Any clarification would be helpful. Thanks in advance.

Sujith

Ian Swett

unread,
Sep 19, 2018, 8:31:19 AM9/19/18
to proto...@chromium.org
It is under active development and experimentation, but not default enabled in apps such as YouTube.

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+...@chromium.org.
To post to this group, send email to proto...@chromium.org.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.

Madhan

unread,
Sep 19, 2018, 9:45:58 AM9/19/18
to proto...@chromium.org
Hi Ian,
Is it available in the chromium git ? 
Even I tried experimenting similar usecase with chromium ( forked from latest git). Facing issue on seamless handover experience. 

AFAIK, the QuicSessionKey uses the destination details and hence it must return the sessionid of the previous session. Correct me if I am wrong 


Regards,
Madhan



On Wednesday, September 19, 2018, 'Ian Swett' via QUIC Prototype Protocol Discussion group <proto...@chromium.org> wrote:
It is under active development and experimentation, but not default enabled in apps such as YouTube.

On Wed, Sep 19, 2018 at 8:09 AM Sujith Rengan <sujith...@gmail.com> wrote:
Hi,

I've been trying to test the connection migration aspect of QUIC. The RFC states that:
QUIC allows connections to survive changes to endpoint addresses (that is, IP address and/or port), such as those caused by a endpoint migrating to a new network. 

So I tested the above case with the Youtube app on Android. The device is connected to WIFI initially while streaming a video. After some time, WIFI is disconnected and network switches to LTE.
When checking the tcpdump logs, I find that the connection ID is different for WIFI and LTE. A completely new connection is established for LTE after WIFI is disconnected. According to my understanding, connection ID should be same for the given server on IP change. Why is a new connection established? Is Connection migration implemented in GQUIC or am I missing something?

Any clarification would be helpful. Thanks in advance.

Sujith

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+unsubscribe@chromium.org.

To post to this group, send email to proto...@chromium.org.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+unsubscribe@chromium.org.

To post to this group, send email to proto...@chromium.org.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.


--
Regards,
Madhan Raj K ,
Senior Lead Engineer - Advanced Protocol Solution - 5G,
Samsung R&D Institute India - Bangalore .

Ryan Hamilton

unread,
Sep 19, 2018, 11:20:32 AM9/19/18
to QUIC Prototype Protocol Discussion group
Yes, the chromium repository includes support for connection migration, but as Ian says it is not enabled by default. At the moment it is only supported on Android which Chrome has support for fine-grained network status notifications.

The QuicSessionKey simply stores the hostname and port to which the connection is connected. It does not need to change when the client migrates to a new network because the hostname of the server does not change.

Rýán Túçk

unread,
Sep 20, 2018, 11:49:58 AM9/20/18
to proto...@chromium.org
So in order to "enable under" a YouTube application, the source code for some version of a YouTube app would have to be located and modified? I thought that the YouTube app for Android is closed source, thus requiring a major feat of reverse engineering and de/recompiling to augment any functionality! Even updates to apps for beta testers aren't listed without obfuscation in the Play Store.
In a separate matter, much of the grammar used in posts to this group are so badly worded that reading its answer becomes a personal requirement for contextual comprehension: ie. "on Android which Chrome has support for fine-grained network status notifications."
is ambiguous and incomprehensible to me, despite claiming itself to be a restatement, clarification or reiteration of an answer to a specific original question. From much gleaning and personal experience I can only suppose that the phrase is some third-person, demultiplexed reference to all, multiple, or certain versions of (Chrome) CANARY. Such disembodied allegory wouldn't be included on an ordinary multiply-threaded newsgroup, which this is not. Please don't try to shoot down a an entire murder of crows with a single slug. On that note, if there are multiple threads and I myself have ranted in the wrong place, please instruct me; this is my first post.
-Rýán

Madhan

unread,
Sep 21, 2018, 12:03:17 AM9/21/18
to proto...@chromium.org
Thanks. Got it. 
migrate_sessions_on_network_change_v2
Enabling this feature along with its dependencies should make it work. Correct me if I am wrong.

王明明

unread,
Nov 13, 2018, 7:32:52 AM11/13/18
to QUIC Prototype Protocol Discussion group
So, connection migration is not supported on iOS? I tried to set migrate_sessions_on_network_change_v2 true on iOS. But it doesn't work.

在 2018年9月19日星期三 UTC+8下午11:20:32,r...@chromium.org写道:
Yes, the chromium repository includes support for connection migration, but as Ian says it is not enabled by default. At the moment it is only supported on Android which Chrome has support for fine-grained network status notifications.

The QuicSessionKey simply stores the hostname and port to which the connection is connected. It does not need to change when the client migrates to a new network because the hostname of the server does not change.
On Wed, Sep 19, 2018 at 6:45 AM, Madhan <madhan...@gmail.com> wrote:
Hi Ian,
Is it available in the chromium git ? 
Even I tried experimenting similar usecase with chromium ( forked from latest git). Facing issue on seamless handover experience. 

AFAIK, the QuicSessionKey uses the destination details and hence it must return the sessionid of the previous session. Correct me if I am wrong 


Regards,
Madhan
On Wednesday, September 19, 2018, 'Ian Swett' via QUIC Prototype Protocol Discussion group <proto...@chromium.org> wrote:
It is under active development and experimentation, but not default enabled in apps such as YouTube.

On Wed, Sep 19, 2018 at 8:09 AM Sujith Rengan <sujith...@gmail.com> wrote:
Hi,

I've been trying to test the connection migration aspect of QUIC. The RFC states that:
QUIC allows connections to survive changes to endpoint addresses (that is, IP address and/or port), such as those caused by a endpoint migrating to a new network. 

So I tested the above case with the Youtube app on Android. The device is connected to WIFI initially while streaming a video. After some time, WIFI is disconnected and network switches to LTE.
When checking the tcpdump logs, I find that the connection ID is different for WIFI and LTE. A completely new connection is established for LTE after WIFI is disconnected. According to my understanding, connection ID should be same for the given server on IP change. Why is a new connection established? Is Connection migration implemented in GQUIC or am I missing something?

Any clarification would be helpful. Thanks in advance.

Sujith

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+...@chromium.org.

To post to this group, send email to proto...@chromium.org.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+...@chromium.org.

To post to this group, send email to proto...@chromium.org.
For more options, visit https://groups.google.com/a/chromium.org/d/optout.
--
Regards,
Madhan Raj K ,
Senior Lead Engineer - Advanced Protocol Solution - 5G,
Samsung R&D Institute India - Bangalore .

--
You received this message because you are subscribed to the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+...@chromium.org.

Sujith Rengan J

unread,
Nov 13, 2018, 7:44:51 AM11/13/18
to proto...@chromium.org
Did you also try setting quic_close_sessions_on_ip_change to false?

You received this message because you are subscribed to a topic in the Google Groups "QUIC Prototype Protocol Discussion group" group.
To unsubscribe from this topic, visit https://groups.google.com/a/chromium.org/d/topic/proto-quic/uumHKkw4nA8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to proto-quic+...@chromium.org.

Ryan Hamilton

unread,
Nov 13, 2018, 2:10:47 PM11/13/18
to proto...@chromium.org
Correct. Connection migration is currently only available on Android.

To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+unsubscribe@chromium.org.

王明明

unread,
Nov 14, 2018, 1:27:38 AM11/14/18
to QUIC Prototype Protocol Discussion group
Why connection migration is not available on iOS ?  Does it has plan to support Connection migration on iOS ?

在 2018年11月14日星期三 UTC+8上午3:10:47,r...@chromium.org写道:

Ryan Hamilton

unread,
Nov 15, 2018, 10:06:05 AM11/15/18
to proto...@chromium.org
Simply because we haven't implemented the layer to expose iOS platform network change notifications to cronet. If we did that, connection migration would basically work.

To unsubscribe from this group and stop receiving emails from it, send an email to proto-quic+unsubscribe@chromium.org.
Reply all
Reply to author
Forward
0 new messages