谷歌开源 PSP 安全协议:Offload 友好,节省约 0.5% 处理能力

简介: 近日,谷歌宣布将用于加密传输的 PSP 安全协议开源。这是一种类似于 TLS 的协议,独立于传输,支持每个连接的安全性,并且对 Offload 友好。

近日,谷歌宣布将用于加密传输的 PSP 安全协议开源。这是一种类似于 TLS 的协议,独立于传输,支持每个连接的安全性,并且对 Offload 友好。

据悉,Google 十多年前就对数据中心之间的流量进行加密。在随后的发展中,几乎所有 Google 传输的数据都进行了加密。虽然提供了隐私和安全优势,但对于 Google 的消耗也不小:加解密 RPC 需要大约 0.7% 的 Google 处理能力以及相应的内存容量。

虽然安全传输层协议 (TLS) 可以满足 Google 的安全要求,但由于内核中的连接状态和硬件中的卸载状态之间的紧密耦合,所以 TLS 不是一个 Offload 友好的协议。另外,TLS 也不支持非 TCP 传输协议,例如 UDP。 而 IPsec 协议虽然可以卸载到硬件,但也需要大规模的投入。

因此,谷歌开发了 PSP,一种类似于 TLS 的协议,独立于传输,支持每个连接的安全性,并且对 Offload 友好。

PSP 旨在满足大规模数据中心流量的要求,不强制要求特定的密钥交换协议,并且为数据包格式和加密算法提供很少的选择。它通过允许每个第 4 层连接(例如 TCP 连接)使用加密密钥来实现每个连接的安全性。

image.png

PSP 协议还支持无状态操作,并且可以在使用安全参数索引 (SPI) 和设备上的主密钥接收数据包。与维护大型设备表的典型状态加密技术相比,可以避免硬件状态爆炸。

PSP 使用了带有自定义标头和尾标的用户数据报协议 (UDP) 封装。一个 PSP 数据包以原始 IP 头开始,之后是预先指定的目标端口上的 UDP 头,然后是包含了 PSP 信息的 PSP 头,再者是原始 TCP/UDP 数据包(包括头和有效负载),并以包含完整性校验和值 (ICV) 的 PSP 预告片。

基于用户提供的称为 Crypt offset 的偏移量,可以对第 4 层数据包(报头和负载)进行加密或验证。例如,该字段可用于在传输过程中对 TCP 报头的一部分进行认证但不加密,同时保持报文的其余部分加密,以便在必要时支持网络中的报文采样和检测。

根据介绍,PSP 与零拷贝技术结合效益倍增。例如,TCP 零拷贝发送和接收的影响受到软件加密有效载荷的额外读取和写入的限制。由于 PSP 消除了这些额外负载和存储,RPC 处理就不再需要接触网络堆栈中的有效负载。“对于 1MB 的大型 RPC,我们看到 PSP 和零拷贝相结合的速度提高了 3 倍。”

image.png

根据官方消息,Google 已将 PSP 修补到自己的生产 Linux 内核、 Andromeda 网络虚拟化堆栈和 Snap 网络系统中。据悉,PSP 加密卸载可节省 Google 约 0.5% 的处理能力。

查看更多:

https://cloud.google.com/blog/products/identity-security/announcing-psp-security-protocol-is-now-open-source

目录
相关文章
|
机器学习/深度学习 数据处理 数据安全/隐私保护
DPU:数据中心与计算架构的革新引擎
【2月更文挑战第3天】
2287 1
DPU:数据中心与计算架构的革新引擎
|
24天前
|
存储 缓存 算法
SGLang Hierarchical Sparse Attention 技术深度解析
阿里云 Tair 联合 SGLang 推出分层稀疏化框架,通过“稀疏+分层”协同优化,将 KVCache 从 GPU 显存扩展至 CPU 与远端存储,实现计算与存储效率双突破,为百万级超长上下文推理提供新路径。
|
人工智能 数据挖掘 测试技术
大模型代肝,自动刷《崩铁》升级材料,Claude操纵计算机还能这么用!
Claude 3.5 Computer Use是首个提供公共测试的具备图形用户界面(GUI)操作能力的前沿AI模型,标志着GUI自动化领域的重要突破。它通过API调用实现端到端解决方案,能根据用户指令和视觉GUI状态生成操作,无需外部知识辅助。研究展示了其在网页搜索、工作流和生产力软件等任务中的卓越能力,并揭示了滚动导航等局限性。未来有望进一步优化并拓展应用领域。论文链接:https://arxiv.org/pdf/2411.10323。
459 38
|
机器学习/深度学习 人工智能 前端开发
【AI系统】AI编译器前瞻
本文基于《The Deep Learning Compiler: A Comprehensive Survey》调研,对比了TVM、nGraph、TC、Glow和XLA五个热门AI编译器,介绍了它们的特点和应用场景。文章分析了AI编译器面临的挑战,包括动态Shape问题、Python编译静态化、发挥硬件性能、特殊优化方法及易用性与性能兼顾问题,并展望了AI编译器的未来,探讨了编译器形态、IR形态、自动并行、自动微分及Kernel 自动生成等方面的发展趋势。
719 1
|
存储 数据库连接 API
构建RESTful API:使用FastAPI实现高效的增删改查操作
构建RESTful API:使用FastAPI实现高效的增删改查操作
760 0
|
NoSQL 安全 Linux
Redis 从入门到精通之内存和CPU配置优化
Redis 是一种基于内存的数据存储系统,因此内存的规划是非常重要的。在配置 Redis 内存时,应该避免物理内存使用过量导致大量使用 Swap,同时需要考虑内存碎片的问题。根据多年的经验整理了一些建议
1480 98
|
前端开发 程序员 API
教你实现微信8.0『炸裂』的礼花表情特效
作为一个前端程序员,这就勾起了我的好奇心,虽然我从来没有实现过这样的动画,但是我还是忍不住想要去实现,最终我花了2天时间去看一些库的源码到我自己实现一个类似的效果,在这里我总结一下,并且手把手地教大家怎么学习实现。而🎉有一个自己的名字,叫做五彩纸屑,英文名字叫 confetti。
1367 0
教你实现微信8.0『炸裂』的礼花表情特效
|
SQL 缓存 关系型数据库
为什么强烈推荐你使用单表查询?(续篇)
为什么强烈推荐你使用单表查询?(续篇)
为什么强烈推荐你使用单表查询?(续篇)
|
JavaScript PHP UED
【PHP开发专栏】PHP与WebSocket实时通信
【4月更文挑战第30天】本文介绍了PHP实现WebSocket实时通信的原理、使用方法和实际案例。WebSocket是基于HTTP的全双工通信协议,PHP 5.4以上版本支持WebSocket,可通过内置函数或第三方库如Socket.io、PHP-WebSocket来实现。文章详细展示了创建WebSocket服务器和客户端的PHP代码示例,并提及在PHP中使用Socket.io库进行实时通信。
853 2
|
弹性计算 监控 网络协议
记一个诡异的TCP挥手乱序问题
tcp四次挥手是超经典的网络知识,但是网络中的异常状况千奇百怪,说不定会“偷袭”到标准流程的盲区。最近笔者遇到了一个罕见的挥手乱序问题,经过对内核代码的分析和试验,最后终于找到了原因,角度可谓刁钻。本文从技术视角,将排查过程记录下来,既是对整个过程的小小总结,将事情彻底完结掉,也是对tcp实现的一些细节的学习记录。
138128 11