openstack的网络模式(转)
单节点上虚拟机和虚拟机之间通信
直接同过linuxbridge转发数据,即可通信
虚拟机跨物理节点通信
利用交换机的包转发机制,在大二层网络中转发数据包
虚拟机跟外网通信
同样利用交换机转发,将数据包转发到网络节点的linuxbridge上
网络节点的linuxbridge也就是L2-Agent转发到L3-Agent上
L3-Agent又关联物理机上的一块网卡,网卡是负责和外网通信的
Flat网络模式
Flat网络模式 # 所有的虚拟都在一个局域网中所有生产环境都不会使用
Flat + DHCP网络模式 # 所有的虚拟都在一个局域网中所有生产环境都不会使用
VLAN网络模式
# OpenVswitch作用是虚拟vlanid和实际vlanid之间的转换 # 缺点 4096 vlan上限问题 mac地址和arp表过大 广播风暴 基于ip地址的子划分限制网络规模
GRE和Vxlan
# 两者都是隧道网络 # GRE网络 利用三层网络实现虚拟二层数据包的转发,即物理上的三层通信,虚拟上的二层通信 # 数据传输过程 在数据包封装时,在mac报头外包装一层GRE报头,然后在GRE报头外包装IP包头,IP报头负责路由功能, 到了对端后解开GRE报头,获取到GRE id,该id类似于vlan id,然后利用此id在对端局域网vlan内转发数据包 从而实现跨网络的虚拟二层转发 # 类似于VPN,基于IP转发数据包的 # OpenVswitch作用是将虚拟vlanid和GRE tunnel id之间的转换 # 报文格式 源数据 + mac报头 + gre报头 + IP报头(delivery协议报头) # 优点 gre id:2的24次方 只识别终端设备的mac 三层网络 解决ip地址划分规模问题 # 缺点 两两计算节点建立隧道 # Vxlan网络 利用三层网络实现虚拟二层数据包的转发,即物理上的三层通信,虚拟上的二层通信 # 报文格式 源数据 + mac报头 + vxlan报头(vni id + 组播地址) + UDP报头 + IP报头
来源:
Openstack - 陈乾 - 博客园
https://www.cnblogs.com/cq146637/p/8401942.html
用一个例子来演示会更加清晰
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App