Namespace:Openstack的网络实现

本文介绍了Linux Namespace如何实现进程资源隔离,重点解析了Network Namespace及其在网络虚拟化中的作用,特别是Openstack的网络实现。Openstack通过Neutron结合OVS和veth pair,利用network namespace为虚拟机提供独立的网络视图,实现网络隔离和通信。通过router network namespace,Openstack可以打通不同网络的路由通信。
摘要由CSDN通过智能技术生成

前言:众所周知在linux系统中PID、IPC、Network等都是全局性的资源,任何的修改和删减都会对整个系统造成影响,这也是为什么kvm之类的虚拟化技术需要模拟一个完成主机系统的原因。但是,在linux namespace中这些PID、IPC、Network等都不再是全局性的资源,基于namespace的虚拟化技术是内核级别的虚拟化,具有敏捷、安全、资源轻消耗的优点。在云计算的信息化建设中,计算资源和存储资源的虚拟化已经做的非常好并具备了丰富的解决方案。但是网络的虚拟化的技术还在逐步成熟的过程中,在网络虚拟化技术中目前最主流的技术就是基于namespace网络虚拟化技术(我更觉得应该称为NFV:网络功能虚拟化)。本文意在通过对Network namespace的解析来统一的介绍一下Openstack网络实现原理,以期帮助需要的伙伴更好的理解网络虚拟化相关技术。

Linux Namespace:

Linux Namespace是Linux提供的一种OS-level virtualization的方法。目前在Linux系统上实现OS-level virtualization的系统有Linux VServer、OpenVZ、LXC Linux Container、Virtuozzo等,Linux namespace提供了PID、IPC、UTS、Mount、Network等系统资源的完全隔离机制。这种完全隔离机制的实现是靠不同namespace中的进程彼此之间是互不干扰的,即使是同样的进程只要在不同的namespace中。为了更好的理解这一点,我们略加分析一个PID例子。在所有的linux系统都一个init进程(即初始化进程),其PID=1,而由于在不同的namespace中的进程都是彼此透明的,因此在不同的namespace中都可以有自己的PID=1的init进程,相应Namespace内的孤儿进程都将以该进

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值