写点什么

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

  • 2022-05-20
  • 本文字数:1033 字

    阅读完需:约 3 分钟

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

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

 

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

 

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

 

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

 

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


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 倍。”


根据官方消息,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

2022-05-20 16:472358

评论

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

曾国藩正面与侧面2

dfuru

举三反一,一通百通的“数学脑”是怎样炼成的?

图灵社区

数学

【一Go到底】第二十三天---字符串函数详解

指剑

Go golang 10月月更

二叉树的详细实现(含递归展开图)

lovevivi

c 数据结构 10月月更

极客时间 - 运维进阶训练营 - 第一周作业

dog_brother

Docker 镜像 linux namespace

分享5个可能用得上的JavaScript 库

devpoint

JavaScript i18n

决胜AI金融新赛道!Python Quants 创始人分享宝贵 AI 算法交易经验

图灵教育

人工智能

使用Java实现BMI指数测试

魏铁锤

10月月更

Spring Boot「12」自定义 starter

Samson

Java spring 学习笔记 spring-boot 10月月更

“程”风破浪的开发者|HTML知识框架整理

默默的成长

Web3.0 “程”风破浪的开发者

【资损】资损防控的系统规范-内部接口类设计

小明Java问道之路

架构 微服务 安全 10月月更 资损

“程”风破浪的开发者|Web3用合约让利润分配更公平

石云升

区块链 Web3.0 10月月更 “程”风破浪的开发者

Java之面向对象

魏铁锤

10月月更

【愚公系列】2022年10月 Go教学课程 037-面向对象综合案例-微博

愚公搬代码

10月月更

1:安装、连接以及配置-MySQL

Yeats_Liao

数据库 后端 10月月更

1024@程序员:图灵社区福利来了,请本人签收

图灵社区

程序员节

golang中的nil接收器

六月的

golang nil

运维进阶训练营-W01H

赤色闪电

运维

栈和队列的实现

lovevivi

c 数据结构 10月月更

2022-10-23:给你一个整数数组 nums 。如果 nums 的一个子集中, 所有元素的乘积可以表示为一个或多个 互不相同的质数 的乘积,那么我们称它为 好子集 。 比方说,如果 nums =

福大大架构师每日一题

算法 rust 福大大

1024@程序员:图灵社区福利来了,请本人签收

图灵教育

程序员节

决胜 AI 金融新赛道!Python Quants 创始人分享宝贵 AI 算法交易经验

图灵社区

人工智能

C4D2023取消永久许可?Maya推出精简版?你不能错过的7个CG软件资讯...

Renderbus瑞云渲染农场

CG Renderbus瑞云渲染 渲染软件更新

Excel 文档的写入

芯动大师

Python Monad Excel数据分析 10月月更

“程”风破浪的开发者|我的数据结构和算法学习小技巧

Albert

学习方法 算法 LeetCode “程”风破浪的开发者

3:表的基本操作-MySQL

Yeats_Liao

数据库 后端 10月月更

举三反一,一通百通的“数学脑”是怎样炼成的?

图灵教育

数学 科普

类型转化问题

魏铁锤

10月月更

eBPF深度探索: 高效DNS监控实现

俞凡

ebpf

2:数据库的基本操作-MySQL

Yeats_Liao

数据库 后端 10月月更

【web 开发基础】PHP 快速入门(8)-PHP 运算符之逻辑运算符详解

迷彩

逻辑运算符 10月月更 web开发基础 PHP基础

谷歌开源 PSP 安全协议:Offload 友好,节省约 0.5% 处理能力_开源_褚杏娟_InfoQ精选文章