全国免费咨询:

13245491521

VR图标白色 VR图标黑色
X

中高端软件定制开发服务商

与我们取得联系

13245491521     13245491521

2022-05-24_「转」性能提升57% ,SMC-R透明加速TCP实战解析

您的位置:首页 >> 新闻 >> 行业资讯

性能提升57% ,SMC-R透明加速TCP实战解析 作者 | 龙蜥社区高性能网络 SIG 策划 | 凌敏 TCP 协议作为当前使用最为广泛的网络协议,场景遍布移动通信、数据中心等。对于数据中心场景,通过弹性 RDMA 实现高性能网络协议 SMC-R,透明替换应用 TCP 协议,实现应用网络透明加速。 为什么需要新的内核网络协议栈? Linux 内核网络协议栈没有银弹,当前 Linux 网络协议栈是在性能(吞吐、CPU 使用率)、时延和通用性权衡下的实现。 在真实场景中,我们可能需要高性能但是并不通用的用户态协议栈,亦或是通用、更高性能更低时延的方案,但是基于传统以太网卡的方案很难有大幅度的提升,更多是基于硬件的红利,例如 100G/400G 网络。 鉴于此,我们考虑是否可以基于其他高性能网络,提供 TCP 兼容的行为和 socket 接口,提供更优的性能。 基于共享内存的网络通信 在谈跨主机通信之前,我们先把视线放到单机维度,如何在单机维度实现 IPC?下面是几种常见的 IPC 方式: 不出意外,共享内存是最快的 IPC 方式,但是缺少一种 OS 层面的统一实现和接口,多数是在语言的 library 中提供。 这里我们分解一下单机维度的共享内存 IPC 流程: 发送方写到预先分配好的一块内存区域; 通知对端,并更新新写入内存的偏移量; 接收方按照新更新的偏移量读取数据; 接收方更新读取内存的偏移量。 如果有一种技术,可以实现在两台机器间“搬运”内存,那么我们可以把这种高性能 IPC 方案从单机维度拓展到不同的主机间。很显然,Remote Direct Memory Access RDMA 可以帮助我们高效地搬运内存。 相对于单机的共享内存通信流程,基于 RDMA 的流程: 发送方写到本机预先分配好的一块内存区域; 通过 RDMA 将该内存写入到对端维护的内存区域的相同位置; 通过 RDMA 通知接收方,并更新新写入内存的偏移量; 接收方按照新更新的偏移量读取数据; 接收方通过 RDMA 更新读取内存的偏移量。 基于 RDMA 的共享内存模型,SMC-R 应运而生,SMC-R 缩写即为 Shared Memory Communcation over RDMA。 下面让我们看下 SMC-R 是如何加速 TCP 应用。 SMC-R 是一种混合协议,即通过 TCP 实现建联时信息交互,通过 RDMA 网络实现数据路径高性能数据传输。同时,一旦 RDMA 链路建联失败,可以 fallback 到 TCP,实现兜底 TCP 的能力。除此之外,SMC-R 借助多个 RNIC,可以实现运行时的故障迁移,确保运行时可靠性。 RDMA 本身提供了 verbs 接口供应用使用,SMC-R 基于共享内存的模型,提供了一套完全兼容 TCP socket 的内核接口,可以通过 LD_PRELOAD 基于 eBPF 的规则替换等方式,实现将 TCP socket 透明替换成 SMC socket,进而实现透明替换和加速。 基于 SMC-R 透明替换,我们测试了几种应用场景,其中 Redis 有最高 57% 的性能提升,此时 Redis 无需进行任何改造,即可享受 SMC-R 带来的性能加速。 使用 SMC-R 加速应用 透明替换并加速 TCP 应用,可以使用下面三种方案: 使用 LD_PRELOAD 的方式,这种方式原理是将动态链接的二进制文件中,关于 socket 创建的 SOCK_STREAM 协议,替换为 AF_SMC 协议,从而实现将 TCP 透明替换 SMC 协议; 通过 net namespace 级别的 sysctl,可以实现网络命名空间(容器等)纬度的所有 TCP 连接的替换; 通过 eBPF 规则(例如五元组、进程 ID 等),动态匹配需要替换的连接进行替换。 SMC-R 在龙蜥 在龙蜥社区中,我们也正在持续不断地增强优化 SMC,包括性能、使用场景、稳定性和透明替换。参与龙蜥社区贡献的半年时间内,共为 Linux 上游社区贡献了 60+ 的补丁。 相关链接地址: 1、代码仓库:hpn-cloud-kernel 2、高性能网络 SIG 地址:https://openanolis.cn/sig/high-perf-network 你也「在看」吗???

上一篇:2019-04-29_一键修复女神林青霞旧照,背后用到了哪些AI技术? 下一篇:2020-06-27_卡内基梅隆大学 Ruslan Salakhutdinov 教授:要将领域知识结合到机器学习中

TAG标签:

16
网站开发网络凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设网站改版域名注册主机空间手机网站建设网站备案等方面的需求...
请立即点击咨询我们或拨打咨询热线:13245491521 13245491521 ,我们会详细为你一一解答你心中的疑难。
项目经理在线

相关阅读 更多>>

猜您喜欢更多>>

我们已经准备好了,你呢?
2022我们与您携手共赢,为您的企业营销保驾护航!

不达标就退款

高性价比建站

免费网站代备案

1对1原创设计服务

7×24小时售后支持

 

全国免费咨询:

13245491521

业务咨询:13245491521 / 13245491521

节假值班:13245491521()

联系地址:

Copyright © 2019-2025      ICP备案:沪ICP备19027192号-6 法律顾问:律师XXX支持

在线
客服

技术在线服务时间:9:00-20:00

在网站开发,您对接的直接是技术员,而非客服传话!

电话
咨询

13245491521
7*24小时客服热线

13245491521
项目经理手机

微信
咨询

加微信获取报价