网络传输如何“快”人一步

2020 年 8 月 06 日

根据《中国互联网发展报告 2020》显示,截至 2019 年底,我国电子商务交易规模为 34.81 万亿元,继续占据全球电子商务市场首位;网络支付交易总额 249.88 万亿元,移动支付普及率位于世界领先水平,数字经济如今已经成为新兴商业模式变革的催化剂。


随着数字经济加速消费升级,应用程序成为人们社会生活的重要一环,促使互联网用户对应用程序的低延迟、安全性以及连接稳定性的需求不断增加。HTTP 协议作为传统的互联网信息传递方式,不可避免的面临巨大挑战。


自万维网诞生以来,HTTP 协议的作用就是请求 - 响应,实现数据的传输。可以说 HTTP 协议是互联网的基石,如今常见的 HTTPS、HTTP/2 都是基于 HTTP 协议进行的演变,HTTPS 解决了文本传输的安全问题,HTTP/2 提升了文本传输效率。虽然 HTTP 等协议可提供稳定的数据传输,但它们通常运行在 TCP 协议之上,对于复杂网络环境的适应性较弱,在弱网环境下依旧会面临握手延迟大、队头阻塞等难题。


为此,Google 提出了全新的开源协议 QUIC,QUIC 全称 quick udp internet connection(与英文的“快”同音),它基于 UDP 的新一代互联网传输协定,便于快速更新和部署,下一代 HTTP/3 协议标准也是从 QUIC 演进而来。QUIC 整合了 TCP,TLS,HTTP/2 等协议的特性,保证 UDP 协议的速度和效率。


QUIC 协议相比 HTTP 协议有几大优势


首先,QUIC 在应用层实现了基于 UDP 的可靠传输,消除了队头阻塞。TCP 中当有多个串行请求执行时,如果第一个请求中断,后续请求也无法继续执行,造成数据被阻塞。QUIC 采用多路复用的机制避免,可同时并发多个请求,避免了 TCP 的队首阻塞问题,并且为丢包恢复提供了更多的反馈信息;


其次,QUIC 改进了握手机制,实现了更少的 RTT。TCP 是可靠协议需要三次握手,QUIC 优化了握手延迟,某些场景下可以实现 0-RTT 的加密通信,既保证了高并发和数据安全性,又实现了传输的高可靠性;


此外,QUIC 还同时设计了连接迁移的新特性。可以保证在用户的网络地址发生变化时,比如 WIFI 和 4G 切换,业务请求依然能够被继续处理,不需要重新发起请求;


如今,业界已有许多 QUIC 协议的开源解决方案和和使用实践。你是否还在担心 App 访问速度?你是否还在被弱网环境下较高的丢包率所困扰?你是否还在奋力寻找移动网络和 WIFI 网络的频繁切换不会断线的解决方案?


如何实现“快”人一步?


8 月 15 日,「快手网络传输技术沙龙」将如期举行,届时快手联合阿里云与腾讯云数位大咖,从 QUIC 协议发展趋势到技术的落地应用,全方位分析新一代网络传输技术的标准化方向。同时,快手为广大前端小伙伴带来了基于 QUIC 协议,自研的高性能服务器 kQUIC 解析,给于短视频 + 直播领域的开发者提供了丰富的应用经验与参考建议。


扫描 图中二维码 即可报名沙龙,参与沙龙更有 神秘大礼 等你来领!



2020 年 8 月 06 日 15:38975

评论

发布
暂无评论
发现更多内容

4. 上新了Spring,全新一代类型转换机制

YourBatman

Spring Framework 类型转换 Converter

一文搞懂 CountDownLatch 用法和源码!

cxuan

Java 源码 并发

蚂蚁集团下架互联网存款产品:互联网金融是天使还是魔鬼

石头IT视角

阿里 10 年:一个普通技术人的成长之路

阿里巴巴云原生

阿里云 云原生 技术人 自我思考 职场成长

第九周总结

小兵

数据结构与算法经典问题解析-Java语言描述

田维常

数据结构

训练营第十三周作业 2

仲夏

盘点2020 | 21 张图总结我的 2020 年

pingan8787

盘点2020

盘点2020 | 干饭人 cxuan 活下来了

cxuan

学习 总结 盘点2020

DeFi平台DAPP软件系统开发

开發I852946OIIO

系统开发

Synchronized用法原理和锁优化升级过程(面试)

叫练

synchronized 轻量级锁 偏向锁 多线程与高并发 同步

vivo 微服务 API 网关架构实践

vivo互联网技术

微服务 微服务网关 API网关 Zuul2

11 组关系带你看清 JVM 全貌

田维常

JVM

工作3年,看啥资料能月薪30K?

小傅哥

Java 面试 小傅哥 七日更 技术成长

快手基于 Apache Flink 的优化实践

Apache Flink

flink

ETHERZ流动性挖矿系统软件APP开发

开發I852946OIIO

系统开发

为什么你成为不了团队核心成员

数据社

团队 七日更

盘点2020|从写程序到写文章,一个宅男程序猿到平台写手的心路历程

罗小龙

程序猿 盘点2020 心路历程 宅男 平台写手

IoT数据模型设计

soolaugust

物联网 IoT 数据模型 工业物联网 七日更

第九周-作业一

Geek_0b0f83

Cache Design Patterns

邵俊达

JVM 垃圾回收原理

梧桐

算法的时间与空间复杂度

咸鱼杰克

七日更

点个外卖,我把「软中断」搞懂了

小林coding

Linux 操作系统

围观|第一代云原生企业米哈游如何让想象发生?

阿里巴巴云原生

阿里云 最佳实践 运维 云原生 游戏开发

Java并发编程:AQS的原子性如何保证

码农架构

Java java 并发

测开之函数进阶· 第1篇《递归函数》

清菡

测试开发

《面试官不讲武德》对Java初级程序猿死命摩擦Http协议

Silently9527

面试 https HTTP 图解https

LeetCode题解:92. 反转链表 II,递归,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

MySQL修改账号密码方法大全

Simon

MySQL 七日更

Linux 如何实现定时调度任务

Near

Linux Timer 定时调度

网络传输如何“快”人一步-InfoQ