第4章:虚拟化技术入门:理论

思科出版社

123.45 第二页
第2页,共5页
  • 一个逻辑路由器(LR)使用硬件分区在单个设备上创建多个路由实体。LR可以在路由器的不同卡上跨越不同的处理器运行。所有底层硬件和软件资源都专用于LR。这包括网络处理器,接口和路由和转发表。LRS提供出色的故障隔离,但确实需要丰富的硬件实现。

  • 一个虚拟路由器(VR)使用软件仿真来创建多个路由实体。底层硬件在不同的路由器进程之间共享(请注意,我们指的是整个IOS的非正弦部分的实例,而不是单个路由器进程)。在一个实现良好的虚拟路由器中,用户只能看到并更改“他们的”路由器的配置和统计信息。


注意:前面的定义和图4 - 2来自RST-4314 2004 NetWorkers“路由器架构的进步:CRS-1和IOS-XR,由David Tsiang和David Ward。


从前面的列表和图4 - 2,这为VRs和LRs之间的区别提供了一个图形概念,您可以看到只有LR是完全虚拟化的。由于拥有所有额外的硬件和设备管理所涉及的成本,LRs往往是高端系统。VR是一种基于软件的虚拟化解决方案,其中所有任务共享相同的硬件资源。

在这两种情况下,虚拟化的粒度可能不同。有些实现允许多个路由器进程(例如,每个客户域一个VR),其他实现允许你分配资源给任务(LR可以拥有)边界网关协议[BGP]在一个硬件子系统上运行中间System-to-Intermediate系统例如,[is]在另一个问题上)。

图4.2

图4 - 2

逻辑及虚拟路由器

多联机的意识

既然一个路由器上有多个路由和转发实例,那么使用这些表(这是一个很长的列表)中的信息的许多路由器子系统都需要具备“VRF感知能力”。可以配置支持VRF的特性来引用来自特定VRF的路由和转发信息,并了解只有特定的子接口可以与特定的VRFs一起使用。如果没有这些信息,该特性将使用全局表。例如,分配一个接口给一个VRF,基本接口ip地址命令被修改为接受一个VRF名称参数并变为ip地址多联机的名字转发


注意:VRF意识是一个重要的实施细节。遗憾的是,没有VRF感知功能的规范列表(列表不断发展),因此最好的方法是检查最新的在线文档或纠缠您的思科代表。


如果特定应用程序所需的所有特性都支持VRF,那么可以使用VRFs模拟VR,从而提供虚拟化设备功能。你将在本书的设计部分看到使用这种方法。

第2层:vfis

VFI是开关上的一种特定于服务的分区,它以vlan的形式将连接电路与虚拟交换接口(vsis)。

如果这没有什么意义,那么有一些关于服务本身的背景是很有用的虚拟私人LAN服务(VPLS),了解VFIs。

VPLS是由第2层提供的LAN服务服务提供商(SPs)通过WAN连接以太网设备。客户设备(打电话给他们客户边缘现在(CEs);我们在第5章“基础设施分割架构”中更详细地讨论了这一点)都是以太网交换机。然而,SP使用第3层网络运行多协议标签交换(MPLS)提供此服务。SP网络边缘的设备称为a提供者边缘(PE)。它的作用是将以太网流量从客户LAN映射到MPLS隧道,这些隧道连接到属于同一服务实例的所有其他PEs。PEs通过一个完整的隧道网络连接,并作为一个逻辑开关,称为VSI。考虑这个问题的另一种方法是将VPLS服务看作是连接在广域网上的以太网端口的集合。VSI是形成单个广播域的一组端口。

在许多方面,VSI的行为就像你期望的常规开关一样。当一个PE收到来自客户设备的以太网帧时,它首先学习源地址,就像任何交换机一样,在查看目标MAC地址和转发帧之前。如果目标MAC地址的端口映射是未知的,或者是一个广播,帧被发送到所有的PEs是VSI的一部分。PEs使用分割水平避免创建循环,这意味着不需要跨越SP网络生成树。

显然,前面的解释隐藏了相当多的细节,但它应该足以提供关于正在发生的事情的一个高级视图。

同样,需要定义和管理交换机上的隔离端口和隧道组。VLAN结构太有限,VRF严格地属于第3层事务,因此有必要为VPLS提出一种新的虚拟设备结构,称为VFI。

VFI列出了形成VSI的所有PE的地址。回想一下,VPLS使用完整的点对点隧道网格进行间接连接,因此将有与列出的每个PE连接。面向客户的端口将VLAN映射到VFI名称。示例4-6显示了一个简短的配置提取物,它将使得该更清晰。图4 - 3显示相应的网络拓扑。粗线表示在MPLS骨干上运行的VLAN,并在PE设备上连接VSIS。CE交换机“认为”它们通过VLAN100上的802.1Q主干连接。每个PE之间的细线是所定义的实际伪基座l2 vfi例4-6的陈述。


注意:假线是一条隧道。这个术语经常在第2层服务的上下文中使用。


图4.3

图4 - 3

vpl拓扑

例4 - 6VFI配置

l2 vfi VPLSA手动vpn id 100邻居13.13.13.13。封装mpls邻居封装mpls接口环回1 ip地址切换端口模式切换通道切换端口访问vlan 100接口vlan 100无ip地址xconnect vfi VPLSA

VPLS配置有两个组成部分。第一种方法,我们已经提到过,定义了一起充当虚拟交换机的伪线的网状结构。方法将VLAN主干端口映射到VSIXconnect.命令。这出现在示例4-6的最后。

虚拟防火墙上下文

设备虚拟化并不局限于交换机和路由器。最后一个示例,考虑防火墙设备。出于本质上的经济原因,您可能希望在多个不同的客户或网络段之间共享一个防火墙。每个逻辑防火墙都需要有一套完整的策略、用于传入和传出流量的专用接口,以及被授权管理防火墙的用户。

如今,许多供应商都提供了这种功能,而且毫无疑问,它们都有自己的、精心选择的名称,但在思科防火墙上,这个术语是这样的上下文用来指虚拟防火墙。与VRFs、VFIs或vlan不同,上下文是对设备的模拟(因此这是本章前面讨论的VR概念的一个示例)。

防火墙上下文在向上下文分配数据包的方式上有点不寻常。到目前为止,我们看到的所有分区都有静态的接口分配(可以动态地将IP包分配给VRF)。我们稍后再讨论这个问题)。防火墙模块查看传入数据包的目的IP地址或以太网VLAN标签,以确定数据包属于哪个上下文。防火墙所需要的只是两个字段中的一个是唯一的。因此,每个上下文在其接口上都有一个唯一的IP地址空间,或者地址空间是共享的,但是每个上下文都在不同的VLAN中。

图4 - 4展示了使用两个vlan将以太网交换机连接到防火墙上下文的简单设置。该开关将vlan与VRF蓝色(顶部)和VRF红色绑定。防火墙有两个不同的上下文。蓝色的接收VLAN 101上的所有帧,红色的接收VLAN 102。通过这种方式,来自外部(图右侧)属于VLAN 101的数据包要通过一组与属于VLAN 102的不同的防火墙规则。

图4.4

图4 - 4

VRF在开关上连接到跨越VLAN的防火墙上下文

网络设备虚拟化概述

真实的设备虚拟化允许将资源分配给任务或应用程序。我们查看了四种不同的基元,虚拟化交换机或路由器上的转发路径:VLAN和VFI用于第2层,第3层VRF,以及防火墙的上下文。这些功能中的每一个都略有不同。VRFS拥有最广泛的搭配其他功能,我们在设计部分中广泛使用。在涵盖数据路径虚拟化之前,有关数据中心设计的一个单词。2020欧洲杯预赛我们专注于本书专注于网络设备,并未解决服务器和存储虚拟化的详细信息,这些内容是自己右边的两个重要主题。

数据通路的虚拟化

在共享基础设施上用私有路径连接设备是一个众所周知的问题。多年来,SPs通过不同的VPN解决方案解决了这个问题。不足为奇的是,我们可以在企业网络中使用和调整许多相同的协议,以创建使用公共交换基础设施的虚拟第2层和第3层连接。本节的重点是与构建VPN的众多协议更为相关的内容。这部分的一些内容是对许多读者的回顾,特别是关于802.1q的材料,通用路由封装(gre)和ipsec,我们不会向这些主题投入很多空间。但是,我们还包括标签交换(A.K.A.MPLS)和第2层隧道协议版本3(L2TPv3),这可能是不太熟悉的,因此将更详细地介绍。


注意:除了本书末尾列出的参考资料外,我们还请感兴趣的读者参阅附录A“L2TPv3扩展范围”,以获得关于L2TPv3的更多细节。


层2:802.1q中继

您可能不会将802.1q视为数据路径虚拟化协议。但是,802.1Q协议在以太网链路上插入VLAN标签,具有保证网络接口上的地址空间分离的重要属性。

显然,这是第2层解决方案,并且必须单独配置每个跳以允许在网络上允许802.1Q连接。因为VLAN是与广播域的同义,所以通常避免端到端VLAN。

通用路由封装

GRE提供了一种方法,可以将一种协议类型的任意数据包封装到另一种协议类型的数据包中(RFC使用这个表达式)X / Y,准确地描述了正在解决的问题)。来自顶层的数据被称为有效负载。底层称为传递协议。GRE允许私有网络数据通过共享的,可能是公共基础设施传输,通常使用点对点隧道。

虽然GRE是一个通用的X over Y解决方案,但它主要用于在IP上传输IP (Microsoft使用了一个稍微修改过的版本)点对点隧道协议[PPTP]而且,最近,我们看到用于运输MPLS的GRE)。GRE也用于运输遗留协议,例如互联网络数据包交换(IPX)和AppleTalk,通过IP网络和第二层帧。

在RFC 2784中定义的GRE有一个简单的头文件,如您在图4 - 5

图4.5

图4 - 5

GRE标题

头的第二个8字节包含有效负载协议类型,使用互联网分配号码权限(IANA)以太网号码(您可以找到最新版本http://www.iana.org/assignments/Ethernet-numbers.)。IP被编码为0x800。

GRE报头最简单的表达式是协议类型字段。前面的字段通常为0,后面的字段可以省略。您可以找到仅对前2个八进制的免费软件实现,但是应该支持所有4个八进制。

GRE纯粹是一种封装机制。数据包如何到达隧道端点完全由用户决定。没有控制协议,没有要维护的会话状态,没有会计记录,等等;这种简洁性和简洁性使得GRE在高端系统的硬件上很容易实现。伴随而来的缺点是GRE端点不知道隧道另一端发生了什么,甚至不知道它是否可到达。

检测隧道可达性问题的历史悠久的机制是在隧道中运行一个动态路由协议。路由协议(rp)如果隧道下降,则丢弃Keepalives,并且RP本身将声明邻居作为无法访问的并且尝试在其周围路线。您可以丢失大量数据等待RP以这种方式检测问题和重新验。思科为其GRE实施的核心选择添加了一个核心选​​择。此选项可在可配置期间通过隧道发送数据包。经过一定数量的错过keepalives(数字是可配置的)后,路由器将隧道接口声明为下。路由协议将检测到界面关闭事件并相应地进行反应。

GRE缺乏控制协议也意味着基本上没有成本来维持一个安静的隧道活动。对等点不交换状态信息,必须在数据包到达时简单地封装它们。此外,与我们讨论的所有数据路径虚拟化机制一样,核心网络忽略了穿过它的隧道数量。所有的工作都是在边上完成的。

我们并不认为GRE是一种通用溶剂的VPN等效物。处理gree是有代价的——封装/解密、路由查找等等——但它是在数据路径中。

GRE iOS配置

在Cisco设备上,GRE端点是常规接口。这句看似无伤大雅的语句其实意义重大,因为思科IOS中任何需要查看接口的东西(路由协议、访问列表等)都可以在GRE隧道中自动工作。

例4-7给出了一个GRE端点配置,对应于的R103路由器图4 - 6

图4.6

图4 - 6

GRE拓扑

例4 - 7R103 GRE配置

接口Tunnel0 ip地址40.0.0.1 255.255.255.0隧道源串行1/0隧道目的地192.168.2.1
有关:
123.45 第二页
第2页,共5页
工资调查:结果在