文档开发者中心
我的

【综合】Quic特性1:连接迁移

作者:HW-LL


连接迁移

Quic底层使用UDP,而UDP本身是无连接状态的,所以Quic协议设计了CID唯一标识一条流。这一点和TCP协议不同,TCP是基于IP和端口的四元组来标识一条流。所以Quic协议当IP、端口变化时,不影响流的传输。从而在wifi/4G场景下切换不需要重新建立连接,这一点是之于TCP协议的一个优势点。


激活功能

默认是不开启连接迁移的。

观察测试

测试一个下载场景,下载文件24M,启动下载时使用Wifi网络,下载过程中关掉Wifi,切换到4G网络。观察发现,打开连接迁移功能,下载是成功的;否则报下载失败。

一开始使用的是wifi IP:100.64.44.10进行下载

停掉wifi后,切换到数据业务,使用数据IP:10.22.81.88继续下载。

参考抓包:migrate(wifi to mobile 7s).pcap

非连接迁移

报错异常:

onFailed, CronetException is: org.chromium.net.impl.QuicExceptionImpl: Exception in CronetUrlRequest: net::ERR_QUIC_PROTOCOL_ERROR, ErrorCode=10, InternalErrorCode=-356, Retryable=false, QuicDetailedErrorCode=27

参考抓包:migrate(no enable).pcap

请求级关闭

可以全局开启,针对某些请求关闭连接迁移功能。

其报错和全局关闭是一样的。


点赞
收藏
回复
5
分享
举报
浏览3073 发布于2019-11-18 06:44未知归属地
全部评论
最多点赞
最新发布
最早发布

感谢分享

5楼回复于2019-11-22 06:43 未知归属地

向楼主学习

4楼回复于2019-11-22 06:42 未知归属地

作者的其他文章推荐:Android手机修改/etc/hosts的方法

3楼回复于2019-11-18 09:08 未知归属地

作者的其他文章推荐:Android平台Https使用IP直连方案说明

2楼回复于2019-11-18 09:07 未知归属地

很好的帖子哦,很详细呢

1楼回复于2019-11-18 09:07 未知归属地
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

目录 收起
连接迁移
Quic底层使用UDP,而UDP本身是无连接状态的,所以Quic协议设计了CID唯一标识一条流。这一点和TCP协议不同,TCP是基于IP和端口的四元组来标识一条流。所以Quic协议当IP、端口变化时,不影响流的传输。从而在wifi/4G场景下切换不需要重新建立连接,这一点是之于TCP协议的一个优势点。
激活功能
观察测试
非连接迁移
请求级关闭
了解社区公约,与您携手共创和谐专业的开发者社区。