virtio-networking 1. 源起

1. 一段话总结 virtio-networking

2019 年 9 月 5 日发布的文章介绍了virtio-networking ,它由Red Hat、Intel、Mellanox 等软硬件厂商主导,基于virtio这一标准化开放接口(供虚拟机访问块存储、网络适配器等简化设备),聚焦 virtio 的网络设备;

当前 IT 领域无 "万能" 部署环境,各技术栈需协同,而网络是跨层连接,现有厂商定制方案非标准化,virtio-networking 社区(含 Linux Kernel、DPDK、QEMU、OASIS 等)旨在解决四大问题:

  • VM 网络加速
  • Pod 网络加速
  • 混合虚拟 / 云原生环境加速
  • 混合云加速

后续还将推出解决方案概述、技术深度解析及实操环节的博客文章。

二、当前 IT 领域背景与挑战

  1. 部署环境无 "银弹" :过去数年,IT 规模化部署中,虚拟化、私有云、公有云、Kubernetes 均成为重要部署环境,但目前无明确 "赢家",不存在适用于所有场景的 "万能" 方案。
  2. 架构复杂性高:IT 组织需应对多层复杂基础设施技术,各技术栈存在不同层面的抽象及专属 "规则",核心挑战是让这些差异显著的技术栈协同工作,以服务整体业务。
  3. 网络的关键作用 :虚拟化层是部署 Linux 容器、Kubernetes 等新兴技术的重要支点,而网络是跨云原生与现有技术栈各层级的终极连接器;无论是 VM、容器还是裸机应用,都需高效穿越技术栈,抵达服务器的 NIC(网络接口卡)层,才能与其他节点、服务器或外部世界通信。
  4. 现有方案缺陷 :为实现工作负载快速传输,网络设备厂商开发了多种定制方案以达到线速性能,但这些方案非标准化,部分甚至延伸到工作负载本身,导致兼容性与统一性问题。

三、virtio-networking 核心解析

  1. 定义与主导方

    • virtio-networking:以 virtio 技术为核心构建的网络解决方案,聚焦于解决当前 IT 领域的网络协同与加速问题。
    • 主导厂商 :由Red Hat、Intel、Mellanox及众多其他软硬件厂商共同主导推进。
  2. 技术基础:virtio :virtio 是一种标准化开放接口,主要功能是让虚拟机(VM)能够访问块存储、网络适配器等简化设备,为 virtio-networking 提供底层技术支撑。

  3. 社区构成 :virtio 网络设备最初用于虚拟环境中物理主机与客户机之间的网络虚拟化接口,后被多个开源社区采用,形成virtio-networking 社区,核心参与社区包括 Linux Kernel 社区、Data Plane Development Kit(DPDK)社区、QEMU、OASIS 等。

四、virtio-networking 目标解决的四大问题

问题类型 解决方式与目标
VM 网络加速 开发 VM 网络加速的开放标准接口,结合内核工具、DPDK 工具及硬件加速技术,将流量直接卸载到物理网络接口卡(NIC),提升 VM 网络性能
Pod 网络加速 为 Kubernetes Pod 添加专用的二层(L2)高速接口,加快 Kubernetes 环境中的网络传输速度
混合虚拟 / 云原生环境加速 通过开放标准接口,实现虚拟机(VM)与 Kubernetes Pod 的高效、快速协同运行,解决两种环境并存时的网络效率问题
混合云加速 提供特定接口,屏蔽运行 VM 和 Kubernetes Pod 的不同公有云与私有云之间的差异,尤其在需要网络加速的场景下,确保跨云环境的网络性能稳定

参考:

www.redhat.com/en/blog/int...

相关推荐
章豪Mrrey nical6 小时前
前后端分离工作详解Detailed Explanation of Frontend-Backend Separation Work
后端·前端框架·状态模式
派大鑫wink7 小时前
【JAVA学习日志】SpringBoot 参数配置:从基础到实战,解锁灵活配置新姿势
java·spring boot·后端
程序员爱钓鱼7 小时前
Node.js 编程实战:文件读写操作
前端·后端·node.js
xUxIAOrUIII8 小时前
【Spring Boot】控制器Controller方法
java·spring boot·后端
Dolphin_Home8 小时前
从理论到实战:图结构在仓库关联业务中的落地(小白→中级,附完整代码)
java·spring boot·后端·spring cloud·database·广度优先·图搜索算法
zfj3218 小时前
go为什么设计成源码依赖,而不是二进制依赖
开发语言·后端·golang
weixin_462446238 小时前
使用 Go 实现 SSE 流式推送 + 打字机效果(模拟 Coze Chat)
开发语言·后端·golang
JIngJaneIL8 小时前
基于springboot + vue古城景区管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
小信啊啊9 小时前
Go语言切片slice
开发语言·后端·golang
Victor35610 小时前
Netty(20)如何实现基于Netty的WebSocket服务器?
后端