7月QCon广州站2022,关注Web 3.0、数据架构选型、数字化转型等热门话题,点击了解 了解详情
写点什么

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

  • 2022 年 5 月 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 年 5 月 20 日 16:471209

评论

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

【Spring Boot 19】Spring Boot整合阿里云OSS实现云存储

Java 程序员 后端

【Spring Boot 8】Okhttp实现GitHub第三方登录

Java 程序员 后端

【Spring框架03】DI依赖注入,spring菜鸟教程pdf

Java 程序员 后端

《码出高效:Java开发手册,java基础编程视频

Java 程序员 后端

《零基础》MySQL 管理(三),java程序设计精编教程第三版课后答案

Java 程序员 后端

《零基础》MySQL 连接的使用(二十),mybatis实现分页原理

Java 程序员 后端

【Effective Java】10,javaee架构设计与开发实践

Java 程序员 后端

【Java 多线程 2】Java线程池详解,java多线程面试算法

Java 程序员 后端

【Java 强化】单元测试,linux驱动开发入门与实战pdf

Java 程序员 后端

【备战秋招冲击大厂】Java面试题系列,你还没弄明白存储键值对

Java 程序员 后端

《深入理解Java虚拟机 3》类加载机制与字节码执行引擎

Java 程序员 后端

《菜菜的机器学习sklearn课堂》数据预处理和特征工程

Java 程序员 后端

【2021软件创新实验室暑假集训】SpringBoot框架

Java 程序员 后端

【Docker 系列】我们来看看容器数据卷到底是个啥

Java 程序员 后端

【Java笔记】数组的处理方法,idea搭建springboot入门

Java 程序员 后端

【MyBatis 6】Statement,mysql基础教程西泽pdf

Java 程序员 后端

【Spring Boot 12】看完这篇,nginxkeepalived原理

Java 程序员 后端

【SpringMVC笔记】Ajax 入门,springboot源码解读与原理分析

Java 程序员 后端

「Java」几种典型的内存溢出案例,学习linux的书籍

Java 程序员 后端

「一探究竟」迷之序列化,Java性能优化最佳实践

Java 程序员 后端

【关于封装的那些事】 缺失封装,2021年腾讯Java高级面试题及答案

Java 程序员 后端

【备战秋招冲击大厂】Java面试题系列(1),springboot入门程序

Java 程序员 后端

《重构 改善既有代码的设计 3》代码的可理解性应该是我们虔诚追求的目标

Java 程序员 后端

《黑马程序员》通讯录管理系统实战,java程序设计实用教程第二版课后题答案

Java 程序员 后端

【Java程序员必知必会的90个细节】1,java面试题选择题

Java 程序员 后端

【初学入门Demo注解版】SpringBoot ,java面试大全下载

Java 程序员 后端

【Java基础】枚举,nginx源码分析pdf百度网盘

Java 程序员 后端

【Spring Boot 13】实现热部署,最新Java通用流行框架大全

Java 程序员 后端

【Java核心面试宝典】Day1,java高级工程师面试宝典

Java 程序员 后端

【Java8 新特性 3】Supplier简介,springboot面试题

Java 程序员 后端

【Java后端】杭州三面字节,等hr面,虐慌!分享面经和刷过的面试题

Java 程序员 后端

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