Chinaunix首页 | 论坛 | 博客
  • 博客访问: 19017
  • 博文数量: 12
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 75
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-21 17:40
个人简介

Tech Inventory

文章分类
文章存档

2015年(5)

2014年(7)

我的朋友

分类: AIX

2014-07-16 12:05:39

IBM 虚拟以太网技术简介

有这样一句话,叫做“更多虚拟,更少管理 (Virtualize more, manage less)”。IBM 将虚拟定义为不受物理限制的资源逻辑表达。更简单地说,IBM 将虚拟诠释为可以将一个物理设备作为很多虚拟资源 ( 分区 ) 来使用,或者令多个异构资源的行为看起来就如同是一个大的资产 ( 集合 )

自从 2004 年 IBM 将虚拟化技术引入基于 Power 5 处理器的 IBM 主机系统以来,用户渐渐了解到了虚拟化技术 APV(Advanced POWER Virtualization)的价值。

今天,IBM 虚拟产品正在帮助客户降低总拥有成本,提供对共享基础架构进行访问的能力以及增加基础架构的灵活性。客户的拥有成本,因为管理成本的降低,以及现有资产利用率的增加以及基础架构性能和业务目标之间更好的联系而得到改善。

随着基于新一代的 IBM POWER6 处理器的新一代 IBM System P 的发布,IBM 将增强的虚拟化能力结合到有史以来最快的 POWER 架构系统上。这些增强的虚拟化功能之一就是,可以同时提供给多个分区使用的虚拟化的 10Gbps 物理以太网接口。下面,我们就将这一新的虚拟化功能介绍给大家。

IVE 简介

IVE(Integrated Virtual Ethernet adapter)是所有 POWER 6 系统中的标准功能。它由一个与 POWER6 GX+ 总线直连的物理以太网卡和一个 PCI 适配器组成。这种结构使得 IVE 可以提供高速和低延迟的 I/O 吞吐。

在 IVE 之前,虚拟以太网技术提供了 LPAR 之间的网络连接,而 SEA(Shared ethernet adatper) 和 VIOS(Virtual I/O Server)提供了 LPAR 到外部的网路服务。现在 IVE 可以替代虚拟以太网和 SEA 所提供的大部分功能。图 1 中左侧是 VIOS(Virtual I/O Server),右侧是 IVE。

IVE 功能给用户提供了多种选择,从两端口的 1Gbps 到四端口的 1Gbps 链接,以及高速的两端口 10Gbps 连接。

图 1.VIOS 和 IVE

IBM POWER6 IVE 技术简介

IVE 和 VIOS 的对比

IVE 网络适配器都提供了虚拟化以太网和 LPAR(Logical Partition) 对外的网络通讯能力,但是他们所提供的功能并不完全相同。在不同需求下,我们需要选择不同的以太网虚拟化方式。表 1 我们列举了 IVE 和 VIOS 所能提供的虚拟化以太网应用的主要不同点,以供读者参考。

表 1 IVE 和 VIOS 对比表

虚拟化功能 IVE VIOS

基本功能

虚拟化服务器的以太网资源 Y Y

提供硬件加速 Y N

可以被 HMC 作为一个硬件设备管理 Y N

灵活的可扩展性 N Y

基于操作系统—必须在一个 LPAR 上运行 N Y

拥有 ASF(advanced server functions)功能,例如:Live Partition Mobility N Y

网络功能

虚拟化出的以太网卡可以被用作 SEA Y Y

提供低延迟 10Gbps 速率以太网 Y N

提供 LPAR 之间的安全网络链接 Y Y

支持网络工业化标准,例如 VLAN,MTU Y Y

不需要单独的 PCI 网卡提供对外网络链接 Y N

存储功能

虚拟化的 SCSI 文件系统数据 (iSCSI) N Y

可以看到和 IVE 相,VIOS 是基于软件的虚拟化方案,它可以提供更多的虚拟化以太网端口,以及更高的灵活性(例如:live partition mobility)。但是不能提供基于硬件的以太网协议加速,并且需要在系统上的一个 LPAR 上运行。

IVE(Integrated Virtual Ethernet adapter)架构介绍

IVE 提供了从 1Gbps 到 10Gbps 速率的以太网网络链接,并提供 TCP 链接的队列处理和虚拟化功能。另外 IVE 还提供网络协议栈处理的硬件加速,以及使用系统内存作为控制信息的主存储等功能。由此,我们可以看到,IVE 提供了诸多的先进功能。下面我们就从 IVE 的架构上做详细的了解。

IVE 架构介绍

图 2.IVE 系统布局

IBM POWER6 IVE 技术简介

每一个 POWER 6 服务器的 I/O 子系统都包括 P5IOC2 芯片。P5IOC2 芯片作为一个独立的控制器,在系统中作为 PCI 总线和所有 I/O 设备之间的首要桥接芯片使用。IVE 的主要硬件部分就包含在 P5IOC2 芯片中。

除 了提供了明显的低延迟网络通讯优化功能外,IVE 的一个关键功能是在一块 P5IOC2 芯片上提供了整合的 2 个 10Gbps 速率以太网端口或者 4 个 1Gbps 以太网端口。这种高度的整合,使得 10G/1G/100M/10M 速率共享相同的 I/O 设备而无需额外的硬件,从而大大降低了入门级和中端服务器平台上以太网解决方案的成本。

IVE 提供了如下主要的虚拟化功能:

高达 32 个逻辑端口

每个 IVE 端口组提供 16 个 MAC 地址

每个逻辑端口可以划归不同的 LPAR

每个 LPAR 分立的缺省发送和接收队列

每个 LPAR 分立的 MIB 和 RMON 计数器

每个逻辑端口分立的 VLAN 过滤器(最大 4096 个 VLAN*32 逻辑端口)

LPAR 到 LPAR 的内部二层交换

IVE 使用系统内存和 CPU 实现网络加速功能,从而大大降低了成本并提供了极大的灵活性。

IVE 的逻辑和物理层组件

IVE 是一个包括物理硬件和固件两个部分,下面我们就介绍其中的几个主要模块:

Host Ethernet Adapter (HEA) 是 IVE 的主要硬件部分,上文提到的 P5IOC2 芯片包含在其中。HEA 负责所有的逻辑端口和虚拟二层交换以及到物理端口的连接(请参考图 3)。

物理端口(Physical ports)是一个硬件模块,负责连接外部 LAN/VLAN 以及交换机。

子卡(daughter cards)中包含 IVE 的虚拟化管理程序和驱动

图 3.IVE 逻辑结构

IBM POWER6 IVE 技术简介

IVE 中的一些概念:

HEA Host Ethernet Adapter,位于 P5IOC2 I/O 控制芯片中。

LHEA Logical Host Ethernet Adapter, 物理 HEA 适配器的逻辑表达,是 LHEA 端口的父设备。

LHEA 端口 (Port) 物理 HEA 端口的逻辑表达。

端口组(Port group) 共享 1 个或者 2 个物理端口的逻辑端口集合。IVE 支持最多 2 个端口组,任何端口组都支持最多 16 个逻辑端口(LHEA Port)。

MCS(Multiple Core Scaling)一个允许在每个 LPAR 上支持多接受传输队列必须设计的参数。

物理端口和逻辑端口(Physical port and logical port)

从 硬件上看,物理端口就是一个你可以连接以太网电缆(IVE 提供铜口或者光纤连接模式)的连接器。逻辑端口是物理端口的虚拟化,它允许多个 LPAR 共享一个物理端口和它的连接。另外,任何逻辑端口都拥有自己的 MAC 地址,这个 MAC 地址存储在 IVE 的硬件中。

一个物理端口最多支持 16 个逻辑端口,逻辑端口的数量需要根据 MCS 值进行调整。当混杂模式被打开后,1 个物理端口只允许分配给 1 个单独的 LPAR 使用。

图 4.IVE 内部结构与传统网络结构的类比

IBM POWER6 IVE 技术简介

物理端口的混杂模式

当一个物理端口被设置成混杂模式后,这个端口只能分配给 1 个单独的 LPAR 使用,而其他 LPAR 不能使用这个物理端口。

何时开启混杂模式:

? 当你需要将 1 个物理端口上共享给超过 16 个 LPAR 的时候,IVE 将不能满足你的需求,请打开物理端口的混杂模式,并将其分配给 VIOS,使用 VIOS 的 SEA 虚拟化功能。

? 当你想要将物理端口作为一个专用资源分配给一个 LPAR 的时候。比如执行 tcpdump 或者 iptrace。

在图 5 中,第二物理端口被设置为了混杂模式并将其分配给一个 VIOS。VIOS 将第一个逻辑端口作为 SEA 使用。

图 5.物理端口混杂模式案例

IBM POWER6 IVE 技术简介

LPAR 之间的内部通讯

在 同一物理端口上的逻辑端口之间都可以实现 LPAR 到 LPAR 的内部通讯。换句话说,多个 LPAR 如果使用了在同一物理端口上虚拟化出的逻辑端口,那他们之间就可以实现 LPAR-LPAR 的内部高速通讯。所以,如果你需要 LPAR 之间的高速网络通讯,请给他们分配同一物理端口上虚拟出来的逻辑端口。

IVE 的典型工作模式

下面我对 IVE 的典型工作模式做一个简略的介绍,请看图 5。图的下部显示这是一个拥有两个物理端口的 IVE 适配器。其中右侧的物理端口被配置成了混杂模式,并被独享给最右侧的 VIOS 分区。VIOS 分区将这个物理端口虚拟化出的 LHEA 进一步配置成 SEA 使用。IVE 适配器左侧的物理端口则虚拟出 3 个逻辑端口,分别分配给 3 个逻辑分区使用。注意,因为这 3 个逻辑端口是由 1 个物理端口虚拟出来的,所以他们之间可以实现高性能的 LPAR-LPAR 内部通讯,而不需要经过外部交换机。

如何配置 IVE

配置 HEA 和 LHEA(Logical Host Ethernet Adapter)

下 面我们将带你一步一步配置 HEA 和 LHEA。请注意,配置 HEA 你必须拥有一台 HMC 或者安装好的 IVM(Integrated Virtualization Manager)。下面我们将介绍再 HMC 上配置 IVE 的步骤,IVM 上的步骤是类似的。

在 HMC 上配置 HEA

首先需要通过 HMC 确认你的系统所拥有 LHEA 功能模块。

i. 在服务器管理面板里选择你的服务器,并且点击 Task 下拉按钮中的 properties 按钮。然后选择 Capabilities 标签页,将有类似图 6 的页面显示出来。请注意 Logical Host Ethernet Adapter Capability 是否为 Ture.

图 6.LHEA 功能

IBM POWER6 IVE 技术简介

ii. 在你的服务器管理面板里选择你的服务器,然后选择 Tasks 下拉按钮,点击 Hardware Information → Adapters → Host Ethernet。如图 7

图 7

IBM POWER6 IVE 技术简介

iii. 在新弹出的的 HEA 配置窗口中(图 8)选择你想配置的物理端口,单击 Configure.

图 8

IBM POWER6 IVE 技术简介

iv. 在新弹出的 HEA 物理端口配置窗口(图 9)中,你可以根据你的情况配置 Speed/Duplex/Packet size 等。我们建议你开启 Flow control enabled 功能。当网络连接出现拥塞时,此功能可以阻止包的丢弃。出于对性能的考虑,对于 10Gbps 速率的网络适配器,我们更加推荐开启这个功能以使其能达到全速。对于如何调整 Multi-Core Scaling value (MCS) 的值,请参考章节“参数性能建议”。

v. 当你调整完所有的配置后,点击 OK 按钮。

图 9

IBM POWER6 IVE 技术简介

在 HMC 上配置 LHEA 端口

当你使用创建 LPAR 向导创建一个新的 LPAR 时,其中一步允许你配置 LHEA。

在创建 LPAR 向导窗口选择之前我们配置的 HEA 的物理端口,然后单击 Configure。(如图 10)

图 10

IBM POWER6 IVE 技术简介

图片看不清楚?请点击这里查看原图(大图)。

在 新的 LHEA 配置窗口(如图 11)选择你想要使用的空闲逻辑端口。如果你想使用 VLAN,在 Allowed VLAN IDs 中选择这个逻辑端口想要处于的 VLAN,如果想增加新的 VLAN,你可以再 VLAN to add 输入框中输入 VLAN ID 并单击 ADD 按钮。如果你需要这个逻辑端口能访问所有的 VLAN,请勾选 Allow all VLAN IDS。

完成配置后,单击 OK 按钮。

图 11

IBM POWER6 IVE 技术简介

在 AIX 上配置 LHEA

LHEA 的功能特性以及限制。

每个 LPAR 不能被分配由一个物理端口虚拟化出的多个逻辑端口。

LPAR 会将逻辑端口当作原生以太网接口使用,可以按照配置正常以太网卡的方式设置。

如果你的 LPAR 使用了 Live Partiton Mobility 功能,将不能在此 LPAR 上使用 LHEA。

根据总线在硬件内存表中的位置,网卡的顺序在不同的系统上可能存在区别。对于 p570 来说,将使用如下载入顺序:

LHEA (logical adapters)

PCI (physical adapters)

VIO (virtual adapters)

通过下面的命令可以清楚的查看 HEA 和 LHEA 的关系:

bash-2.05b# lsslot -c slot | grep -Ei "lhea|Description"
# Slot Description Device(s)
HEA 1 Logical I/O Slot lhea0 ent0 ent1
bash-2.05b# lsdev -l ent0 -F physloc
U789D.001.DQD75C5-P1-C10-T2
bash-2.05b# lsdev -l ent0 -F physloc
U789D.001.DQD75C5-P1-C10-T1
# entstat -d ent1 | grep Port
Logical Host Ethernet Port (l-port) Driver Properties:
Logical Port Link State: Up
Physical Port Link State: Up
Logical Host Ethernet Port (l-port) Specific Properties:
Logical Port Number: 2
Port Operational State: Up
External-Network Switch-Port Operational State: Down

从上面的命令执行结果可以看出,HEA1 是一块 IVE 子卡,lhea0 是和 HEA1 对应的逻辑表达,ent0 和 ent1 是由 lhea0 两个端口虚拟化出的虚拟网卡。

在 AIX 上启用和关闭 MCS

MCS 可以在大部分情况下提供更好的性能。

在 AIX 环境下 MCS 缺省是开启的,可以通过一下方式查看:

# lsslot -c slot | grep -Ei “lhea|Desciption”
# Slot Description Device(s)
HEA 1 Logical I/O Slot lhea(0) ent(0) ent1
# lsattr -El ent1 | grep multicore
multicore yes Enable Multi-Core Scaling
True

如果想关闭 MCS 功能,请使用下面的方法:

# ifconfig en1 down detach
# chdev -l ent1 -a multicore=no
ent1 changed
# lsattr -El ent1 | grep multicore
multicore no Enable Multi-Core Scaling
True

参数性能建议

MCS 在 AIX 系统中缺省是开启的,并且使用通过 HMC 设定的 QP 值。在设置 MCS 值时,请注意下面的规则:

使用能满足性能需求的最小的 MCS 值,并且要注意在一个端口组内的所有物理端口共享相同的 MCS 值。

对于逻辑端口,设置越高的 MCS 值意味着得到越高的吞吐率,直到达到网络链接的理论极限,但是这也将造成更大的 CPU 消耗。

对于一个 LPAR 独享的 10Gbps 物理端口,我们建议至少将 MCS 值设置为 4 以获得逻辑端口的全速率链接。相反,如果 4 个 LPAR 共享这个物理端口,并且都处于活动状态,请将 MCS 值设置为 1,以使所有 LPAR 的逻辑端口达到全速。

对于 1Gbps 的物理端口,1 是我们推荐的,能达到全速率的最小 MCS 值。

如果网络中存在大量小文件传输,请调高 MCS 值。

The maximum transmission unit (MTU) 必须根据你的网络结构在 HMC 中设置。

将物理端口设置为混杂模式,如果你想通过 SEA 将物理端口共享给超过 16 个 LPAR。

这个模式并不能带来性能的提升

你可以通过 entstat -d entx | grep Promiscuous 命令来查看混杂模式。

使用这种 SEA 访问外网的 LPAR 可以进行网络监听。如果你想使用 sniff 工具,你可以将物理端口临时设置为混杂模式。

总结

在本文中,您了解了 IBM POWER6 的虚拟以太网 IVE 技术,以及如何从零开始配置和使用 IVE。您还了解了如何对 IVE 参数进行简单的调整,从而获得最优化的性能。使用 IVE 可以大大的提高系统的使用的灵活性,提高资源利用率,降低系统管理成本。

阅读(1482) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~