【AICon】探索RAG 技术在实际应用中遇到的挑战及应对策略!AICon精华内容已上线73%>>> 了解详情
写点什么

Netflix 如何在网络不好时提供更安全、更流畅的流媒体体验?

  • 2020-05-07
  • 本文字数:2101 字

    阅读完需:约 7 分钟

Netflix如何在网络不好时提供更安全、更流畅的流媒体体验?


本文最初发布于 Netflix 技术博客,由 InfoQ 中文站翻译并分享。


Netflix 专注于提供最好的流媒体体验。我们希望可以立即开始回放(playback),并且在任何网络环境中都不会意外停止。我们还致力于在不牺牲任何回放体验的情况下保护用户隐私和服务安全。为实现这一目标,我们正使用 ABR(自适性串流)来实现更好的播放体验。同时,我们还使用 DRM(数字版权管理)来保护我们的服务,用 TLS(传输层安全)来保护客户隐私并创建一个更安全的流媒体体验。


在诸如电视、机顶盒等消费类电子设备上,Netflix 最近才在流媒体业务上使用 TLS 1.2。现在,为获得更安全、更流畅的体验,我们已经支持 TLS 1.3。

TLS 是什么?

要实现双方间的安全通信,就要有一个安全通道。该通道需要具有以下三个特性。


  • 身份验证:验证通信双方的身份。

  • 保密性:通过通道发送的数据仅对端点可见。

  • 完整性:通过通道发送的数据如果被攻击者修改可以检测到。


TLS 协议旨在通过提供实现上述特性的工具和方法,来提供两个对等点之间的安全通道。

TLS 1.3

TLS 1.3 是传输层安全协议(Transport Layer Security)的最新版本。与前一个版本相比,它更简单、更安全、更高效。

Perfect Forward Secrecy

对 Netflix 而言,我们认为非常重要的一点是提供 PFS (Perfect Forward Secrecy)。


PFS 是密钥交换算法的一个特性,即使服务器的私钥被破坏,它也可以确保会话密钥不被破坏。通过为每个会话生成新的密钥,PFS 可以保护过去的会话不受未来密钥泄露的影响。


TLS 1.2 支持具备 PFS 特性的密钥交换算法,但是它也允许不支持 PFS 的密钥交换算法。即使在 TLS 1.2 的前一个版本中,Netflix 也总是会选择一个提供 PFS 的密钥交换算法,比如 ECDHE(Elliptic Curve Diffie Hellman Ephemeral)。不过,TLS 1.3 删除了所有不提供 PFS 的密钥交换算法(如静态 RSA),进一步强化了这一概念。

认证加密

对于加密,TLS 1.3 删除了所有弱密码,只使用带有关联数据(AEAD)的认证加密。这保证了数据的保密性、完整性和真实性。我们使用 AES Galois/Counter 模式,因为它同时还提供良好的性能和高吞吐量。

安全握手

虽然上述更改很重要,但 TLS 1.3 中最重要的变化可能是重新设计了握手协议。


TLS 1.2 的握手并不是为了保护整个握手过程的完整性而设计的。它只保护 cipher suite negotiation 后的握手部分,这就增加了降级攻击的可能性,让攻击者能强制使用不安全的 cipher suites。


使用 TLS 1.3,服务器会对整个握手过程(包括 cipher suite negotiation)进行签名,从而防止攻击者降低 cipher suite 的级别。


同样,在 TLS 1.2 中,扩展在 ServerHello 中是明文发送的。现在,在 TLS 1.3 中,甚至连扩展都加密了,ServerHello 后的所有握手消息都加密了。

减少握手

TLS 1.2 支持许多密钥交换算法、cipher suites 和数字签名,包括易受攻击的数字签名。因此,它执行一次握手需要更多的消息和两次网络往返。


相比之下,TLS 1.3 中的握手现在只需要一次往返,它简化了设计,去掉了所有易受攻击的算法。


此外,它还有一个针对重新握手的新特性,称为 0-RTT 或 TLS 早期数据。这让应用程序可以在初始握手消息中包含应用程序数据,而不必等到握手完成。


在 Netflix,我们通过高效地恢复 TLS 会话并谨慎地将 0-RTT 用于流数据,来减少播放延迟。


A/B 测试结果

基于对 TLS 1.3 的协议组合分析,我们确信它会给我们带来更好的安全性,但是,我们不知道它在流媒体环境下的效果如何。


由于 TLS 1.3 的性能特性是支持重新握手的 0-RTT 模式,所以我们假设 TLS 1.3 将减少延迟。我们不需要再等待握手完成,相反,我们可以更早地发送媒体数据 HTTP 请求,并接收媒体数据的 HTTP 响应。


为了解 TLS 1.3 在实际应用时的性能,我们做了一个实验:


  • 用户帐户:每个组 50 万个帐户

  • 设备类型:中端设备(Quad ARM core @ 1.7GHz)

  • 对照组:TLS 1.2

  • 实验组:TLS 1.3

播放延迟

播放延迟是指需要多少时间才开始播放。以下是在实验中测得的播放延迟数据。结果表明,在较慢或拥塞的网络中(即分位数大于 0.75),TLS 1.3 的增益最大,并且在所有的网络条件下都有所改善。



下面是实验所用的中端设备在实际应用中的时序平均播放延迟图。从中可以看出,使用 TLS 1.3 播放开始得更早。


Media Rebuffer(媒体重新缓冲)

在 Netflix,我们将媒体重新缓冲定义为非网络起点的重新缓冲。其发生通常是由于 CPU 的负载过高导致设备处理媒体数据的速度不够快。与对照组使用的 TLS 1.2 相比,使用 TLS 1.3 的实验组在媒体重新缓冲方面提高了大约 7.4%。


这个结果表明,使用 TLS 1.3 和 0-RTT 更高效,可以减少 CPU 负载。


小结

从安全性分析来看,我们相信 TLS 1.3 的通信安全性比 TLS 1.2 高。从现场测试来看,我们相信 TLS 1.3 能为我们提供更好的流媒体体验。


此时,互联网正经历着比平时更高的流量和拥堵。我们相信,即使节省少量的数据和网络往返也很有意义,如果它还能提供更安全、更高效的流媒体体验,那就更好了。


因此,我们已经开始在比较新的消费类电子设备上部署 TLS 1.3,希望不久的将来可以部署到更多的设备上。


英文原文:


How Netflix brings safer and faster streaming experience to the living room on crowded networks using TLS 1.3


2020-05-07 16:161788
用户头像

发布了 684 篇内容, 共 391.7 次阅读, 收获喜欢 1498 次。

关注

评论

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

Microsoft 365 for Mac(Office 365)v16.80正式激活版

iMac小白

使用PotPlayer播放器查看软解和硬解4K高清视频时的CPU及GPU占用情况 | 主赛道

身份自动化工作流,帮助您快速提高工作效率

Authing

企业管理 统一身份认证 Authing 身份自动化 身份管理

Navicat Premium 16 for Mac(数据库管理软件)v16.3.4中文激活版

影影绰绰一往直前

海外营销推广难?看看这款外贸人强推的海外云手机!

Ogcloud

跨境电商 外贸

sublime text for Mac(代码编辑器) v4.0(4169)中文注册版

影影绰绰一往直前

JNPF开发平台--初体验

互联网工科生

低代码 JNPF

一文讲透基于感知超分模型的实时视频抗弱网技术

中关村科金

人工智能 音视频

AnyGo for Mac v6.9.5激活版 GPS定位软件

iMac小白

哪些关键供应链指标的数据集成可以提高智能商品系统决策支持效果

第七在线

Java-springboot整合activiti实际项目案例(源代码)

金陵老街

ERP与智能商品系统在供应链管理上有哪些区别和优势?

第七在线

Royal TSX for Mac(强大的远程管理软件)v6.0.2激活版

影影绰绰一往直前

从数据洞察到市场变革:我们的 Web3 愿景

Footprint Analytics

区块链 #Web3

五大能力六大场景,百度“品牌智能体”打造品牌AGI时代最核心经营阵地

科技热闻

macOS 14 Sonoma(最新MacOS系统)pkg完整安装包 14.2正式版

iMac小白

Parallels Desktop 19 for Mac v19.1.0一键激活版

iMac小白

2024通义语音AI技术图景,大模型引领AI再进化

阿里技术

通义千问

Navicat Premium 15 for Mac(数据库开发工具)v15.0.36中文激活版

iMac小白

微信多开 WechatTweak for Mac(微信多开、消息防撤回工具)v3.8.6中文集成版

iMac小白

Final Cut Pro X for Mac(fcpx视频剪辑)v10.7.1简体中文版

iMac小白

Dynamic Wallpaper for Mac(Mac动态壁纸桌面)v17.0中文版

影影绰绰一往直前

月薪50k万的程序员,和三个15K的程序员,谁的开发效率高?

伤感汤姆布利柏

程序员 互联网 高薪

“数”上加“速” 腾讯云(辽宁)数字经济产业基地在铁西揭牌

Geek_2d6073

macOS 13 Ventura (苹果最新系统) v13.6.3正式版

iMac小白

Solidity之旅(十六)Constant 和 Immutable状态变量

BSN研习社

区块链 Solidity

跨链技术 2023:拥抱区块链的互操作性

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

文心一言 VS 讯飞星火 VS chatgpt (167)-- 算法导论13.1 7题

福大大架构师每日一题

福大大架构师每日一题

Proxifier for Mac(全局代理客户端) v3.11注册版

影影绰绰一往直前

Acrobat Pro DC 2023 for mac(专业PDF编辑软件)中文直装版

iMac小白

Netflix Mac(奈飞客户端) v2.13.0激活版

iMac小白

Netflix如何在网络不好时提供更安全、更流畅的流媒体体验?_安全_Netflix技术博客_InfoQ精选文章