31、虚拟网络管理与架构原型解析

虚拟网络管理与架构原型解析

1. VNet管理环境原型

VNet管理(VNM)原型用于评估和展示VNet概念与流程。典型的VNM环境架构包含位于不同物理资源中的代理,这些代理控制资源以创建、移除或修改虚拟资源,且由集中或分布式的管理器控制,管理器接受基础设施提供商的命令来管理物理资源,并持有根据VNM环境当前状态不断更新的存储库。

  • VNet管理器
    • 功能活动
      • 处理基础设施提供商工具连接。
      • 处理VNet代理连接。
      • 处理来自或发往VNet代理和基础设施提供商管理工具的请求和信息的同步控制。
      • 处理对VNet存储库的同步更新,该存储库作为VNets配置的中央存储。
    • 通信机制 :基础设施提供商管理工具通过相同接口与VNet管理器进行数据收发,每个工具实例启动会在VNet管理器中创建一个单独线程处理请求和返回信息,通信基于TCP套接字以确保可靠通信。VNet代理连接类似,每个代理实例也会创建一个线程处理信息收发,接口格式相同,使用TCP/IP套接字通信。
    • 控制功能 :为不同线程提供以下功能:
      • 处理从基础设施提供商工具线程接收的命令操作。
      • 命令VNet代理执行活动。
      • 处理VNet代理通过线程接收的信息。
      • 向基础设施提供商工具发送信息。
      • 更新存储库。

下面是VNet管理器功能活动的表格总结:
| 功能活动 | 描述 |
| — | — |
| 处理工具连接 | 与基础设施提供商工具建立连接 |
| 处理代理连接 | 与VNet代理建立连接 |
| 同步控制请求和信息 | 确保请求和信息的同步处理 |
| 更新存储库 | 对VNet存储库进行同步更新 |

  • VNet代理
    • 管理物理资源虚拟化 :每个物理资源上执行一个VNet代理,其功能特定于所控制的资源。
    • 通用架构 :具有与VNet管理器的接口以获取创建、移除、修改、启动或关闭虚拟资源的命令。代理实例中的多个线程执行以下任务:
      • 对传入的虚拟资源管理指令进行排队。
      • 以先进先出(FIFO)方式执行这些指令。
      • 检索当前状态信息。
      • 通知当前状态信息。
    • 不同类型代理
      • 服务器代理 :管理具有单个网络连接的物理服务器上的虚拟服务器,通过VLAN实现网络级虚拟化。
      • 路由器代理 :控制物理路由器管理虚拟环境,物理路由器的多个网络接口与虚拟路由器实例桥接,使用VLAN实现VNets。
      • 交换机/无线接入点代理 :使用VLAN和多个虚拟SSID将流量分配到不同虚拟网络。

以下是VNet代理不同类型及功能的表格:
| 代理类型 | 功能 |
| — | — |
| 服务器代理 | 管理物理服务器上的虚拟服务器 |
| 路由器代理 | 控制物理路由器管理虚拟环境 |
| 交换机/无线接入点代理 | 分配流量到不同虚拟网络 |

mermaid格式流程图展示VNet代理工作流程:

graph LR
    A[接收指令] --> B[指令排队]
    B --> C[FIFO执行]
    C --> D[检索状态信息]
    D --> E[通知状态信息]
2. 虚拟网络部署

为验证和测试节点架构原型,将其部署在上述VNet管理环境中。该部署具有以下特性:
- 节点架构在虚拟化环境中运行,其网络访问直接连接到虚拟网络。
- 虚拟网络和底层流量的复用由虚拟化基础设施处理,对节点架构守护进程透明。

使用基于Xen的虚拟化技术,每个虚拟节点可获取底层物理机的部分资源,多个虚拟节点基于管理程序的调度机制并行运行。逻辑上,虚拟节点如同普通物理节点,节点架构可直接部署到虚拟节点,其网络访问映射到使用VLAN桥接的虚拟网络接口。

小型演示测试床的物理网络包括一台服务器、一台路由器和一个包含交换机的接入点,多个虚拟网络可并行运行。主要特点是通过图形用户界面展示不同利益相关者的角色,VNet运营商终端发出更改虚拟网络配置的请求,在基础设施提供商终端等待批准,批准后虚拟网络进行相应更改,包括虚拟节点和链路的添加/移除以及资源分配的更改。

以下是虚拟网络部署特性的列表:
- 节点架构在虚拟化环境运行。
- 网络访问直接连接虚拟网络。
- 流量复用对节点架构守护进程透明。

mermaid格式流程图展示虚拟网络部署流程:

graph LR
    A[节点架构原型] --> B[VNet管理环境]
    B --> C[Xen虚拟化]
    C --> D[虚拟节点运行]
    D --> E[网络访问映射]
    E --> F[小型演示测试床]
3. 网络虚拟化架构原型

该原型实现了网络虚拟化架构的多个组件,可在多个物理基础设施提供商(InPs)之上即时提供定制化虚拟网络(VNets)。与之前的VNet管理原型不同,此实现侧重于测试床环境中的大规模原型,实现并完全自动化了VNet生命周期。

  • 基础设施与软件
    • 原型在异构实验网络(HEN)上实现,该网络包含110多台计算机,通过单个无阻塞、恒定延迟的千兆以太网交换机连接。主要使用戴尔PowerEdge 2950系统,配备两个英特尔四核CPU、8GB DDR2 667 MHz内存和8或12个千兆端口。
    • 利用现有的节点和链路虚拟化技术进行VNet的供应和管理访问。使用Xen 3.2.1、Linux 2.6.19.2和Click模块化路由器(版本1.6并带有消除SMP锁定问题的补丁),采用轮询驱动程序进行数据包转发。依靠Xen的半虚拟化技术托管虚拟节点,以提供足够的隔离级别和高性能。

以下是使用的基础设施和软件列表:
| 类别 | 具体内容 |
| — | — |
| 网络 | 异构实验网络(HEN) |
| 服务器 | 戴尔PowerEdge 2950系统 |
| 虚拟化技术 | Xen 3.2.1 |
| 操作系统 | Linux 2.6.19.2 |
| 路由器 | Click模块化路由器(版本1.6) |

mermaid格式流程图展示基础设施与软件关系:

graph LR
    A[HEN网络] --> B[戴尔服务器]
    B --> C[Xen虚拟化]
    C --> D[Linux系统]
    D --> E[Click路由器]
  • 原型概述
    • 固定数量的HEN节点组成底层网络,划分为多个逻辑集群,每个集群作为一个独立的InP。InP拓扑通过在HEN交换机中配置虚拟局域网(VLAN)离线构建,此过程由交换机守护程序自动执行,该守护程序接收VLAN请求并相应地配置交换机。
    • 单独的物理节点充当VNet提供商(VNP)和VNet运营商(VNO)。VNP与属于InP的专用管理节点建立直接连接,这些管理实体代表其对应的InP处理所有VNet请求。VNO、VNP和所有底层节点暴露基于XML - RPC的供应和控制台接口,允许远程过程调用。
    • VNet需求由VNO制定并传达给VNP,需求描述了虚拟资源实例的数量及其各自的属性。VNP和InP按请求到达的顺序处理VNet请求,每个请求的结果传达给VNP,再传达给VNO。所有VNet请求使用基于XML的资源描述模型进行通信,该模型包括节点和链路的单独描述符,以实现连贯的VNet规范。

以下是原型中各角色及功能的表格:
| 角色 | 功能 |
| — | — |
| InP | 提供物理资源,通过VLAN配置拓扑 |
| VNP | 接收VNO请求,与InP交互处理请求 |
| VNO | 制定和传达VNet需求 |

mermaid格式流程图展示原型中各角色交互流程:

graph LR
    A[VNO] --> B[VNP]
    B --> C[InP管理节点]
    C --> D[InP]
    D --> C
    C --> B
    B --> A
4. 虚拟网络供应

VNet实例化涉及VNO、VNP和参与的InP之间的多次交互,具体步骤如下:
1. 资源发现 :影响资源发现的关键参数是InP允许的信息披露级别。实现了两种资源发现系统,一种用于InP暴露有限信息的情况,另一种用于InP不暴露任何信息的情况。VNP与InP交互收集其广告的资源信息,并更新和维护这些信息,用于在InP之间拆分VNet请求。
2. VNet嵌入 :将每个部分VNet嵌入到相应的InP中,分解为节点和链路分配。节点分配策略的主要目标是保持底层节点之间的低压力和平衡压力。每个请求的虚拟链路根据最短路径算法映射到底层路径,使用底层链路的成本(表示链路压力)进行路径选择。
3. 节点设置 :VNet分配后,每个管理节点向底层节点发送单个请求,底层节点在其管理域(Dom0)内处理传入请求,触发相应操作(如创建/配置虚拟节点)。
4. 虚拟链路设置 :使用IP - in - IP封装的隧道进行虚拟节点的互连,每个虚拟节点使用其虚拟接口传输数据包,数据包由Click模块化路由器捕获进行封装,然后注入隧道。在接收主机上,Click对传入数据包进行解复用并传递到适当的虚拟节点。使用Click SMP和轮询驱动程序进行数据包转发,Click在内核空间运行,底层节点将所有虚拟转发路径合并到单个域(Dom0)中,以提高数据包转发速率。

以下是虚拟网络供应步骤的列表:
1. 资源发现
2. VNet嵌入
3. 节点设置
4. 虚拟链路设置

mermaid格式流程图展示虚拟网络供应流程:

graph LR
    A[资源发现] --> B[VNet嵌入]
    B --> C[节点设置]
    C --> D[虚拟链路设置]
5. 管理访问

为使VNO能够操作任何实例化的VNet,提供对所有虚拟节点的管理访问。管理访问通过VNP中继到适当的InP,再到托管目标虚拟节点的物理节点。
- 使用全局唯一的VNet标识符(vnetID)和虚拟节点标识符(vmID)来分离多个VNets,vmID的范围限于特定的VNet,并且与InP内特定节点虚拟化技术(如Xen)使用的标识符(vmconfigID)不同。InP管理节点通过查询InP资源数据库提供vmID和vmconfigID之间的转换。
- VNP、InP管理节点和所有底层节点运行守护程序,暴露用于管理访问的专用接口。VNO对VNet X的节点Y的管理访问请求首先发送到VNP,VNP查询其资源数据库确定请求应中继到哪个InP,然后InP管理节点将vmID Y转换为vmconfigID Z,使用X.Z定位托管目标虚拟节点的物理节点,最终VNO能够建立对任何虚拟节点的管理访问并应用所需的配置更改。

以下是管理访问涉及的标识符及作用的表格:
| 标识符 | 作用 |
| — | — |
| vnetID | 全局唯一标识VNet |
| vmID | 标识特定VNet内的虚拟节点 |
| vmconfigID | InP内特定节点虚拟化技术使用的标识符 |

mermaid格式流程图展示管理访问流程:

graph LR
    A[VNO请求] --> B[VNP查询]
    B --> C[InP转换]
    C --> D[定位物理节点]
    D --> E[建立管理访问]
6. 总结

实现的原型能够在多个InP之上提供和管理定制化VNets,为网络虚拟化架构的关键设计决策提供了见解,如信息披露与信息隐藏的权衡。尽管资源发现和分配的复杂性增加,但实验表明VNets可以在几秒钟内供应,且在存在多个InP的情况下,基础设施内未发现可扩展性问题。这表明新的商业模式可以创建在大型基础设施中在几分钟内设置VNets的商业产品,同时遵守InP施加的限制,如有限的资源知识。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值