|

- 社区积分
- 115
- 技术积分
- 1292
- 阅读权限
- 40
- 注册时间
- 2007-7-21
论坛徽章 1 |
关键词:行业网 BGP/MPLS VPN
摘
要:本文档在j简单介绍BGP/MPLS VPN基本技术的基础上,重点阐述了华为3Com公司的行业网BGP/MPLS VPN解决方案。
缩略语清单:
缩略语
| 英文全名
| 中文解释
| MPLS
| Multiprotocol Label Switching
| 多协议标记交换
| LDP
| Label Distribution Protocol
| 标签分发协议
| LSP
| Label Swithing Path
| 标记交换路径
| HoPE
| Hiberarchy of PE
| PE的分层结构
| MPLS TE
| Multiprotocol Label Switching Traffic Engineering
| 多协议标记交换流量工程
|
第1章 概述本文将主要对重点行业BGP/MPLS VPN方案的基本原理、重点业务、部署方案进行论述。
1.1 背景MPLS(Multiprotocol Label Switching,多协议标记交换)是从90年代中期起新兴的多层交换技术的标准化和最新进展,最初提出MPLS技术的初衷是为了加快IP转发速度。虽然MPLS最初是动机是提高路由交换设备的转发速度,随着硬件技术及网络处理器技术的不断发展,目前的GSR及高性能三层交换设备都已经能够做到线速转发,MPLS的这一优势已经不存在。但由于MPLS将2层交换和3层路由技术结合起来的固有优势,在解决VPN(虚拟专用网)、CoS(服务分类)和流量工程(Traffic Engineering) 这些IP网络的重大问题时具有很优异的表现,MPLS技术获得了越来越多的注意力。MPLS应用也逐步转向MPLS流量工程和MPLS VPN等。在IP网中,MPLS流量工程技术成为一种主要的管理网络流量、减少拥塞、一定程度上保证IP网络的QoS的重要工具。在解决企业互连,提供各种新业务方面,MPLS VPN也越来越被运营商看好,成为在IP网络运营商提供增值业务的重要手段!MPLS正日益成为IP骨干网络的主流技术。
MPLS VPN是一种基于MPLS技术的IP-VPN,是在网络路由和交换设备上应用MPLS技术,简化核心路由器的路由选择方式,利用结合传统路由技术的标记交换实现的IP虚拟专用网络(IP VPN),可用来构造宽带的Intranet、Extranet,满足多种灵活的业务需求。采用MPLS VPN技术可以把现有的IP网络分解成逻辑上隔离的网络,这种逻辑上隔离的网络的应用可以是千变万化的:可以是用在解决企业互连、政府相同/不同部门的互连、也可以时用来提供新的业务---如为IP电话业务专门开辟一个VPN、以此解决IP网络地址不足和QoS的问题,也可以为用MPLS VPN为IPv6提供开展业务的可能。
1.2 标准目前,在基本MPLS信令,BGP/MPLS VPN,QoS方面逐渐形成标准。MPLS主要标准:
n
RFC 3031 (MPLS总体结构)
n
RFC 3036 (LDP)
n
draft-ietf-ppvpn-rfc2547bis(BGP/MPLS VPN)
第2章 BGP/MPLS VPN基础知识2.1 BGP/MPLS VPN模型在MPLS/BGP VPN的模型中,网络由运营商的骨干网与用户的各个Site组成,所谓VPN就是对site集合的划分,一个VPN就对应一个由若干site组成的集合。但是必须遵循如下规则:两个Site之间只有至少同时属于一个VPN定义的Site集合,才具有IP连通性。

图2-1 BGP/MPLS VPN组网
基于BGP扩展实现的BGP/MPLS VPN所包含的基本组件:
PE:Provider Edge Router,骨干网边缘路由器,存储VRF(Virtual Routing Forwarding Instance),处理VPN-IPv4路由,是MPLS三层VPN的主要实现者。
CE:Custom Edge Router,用户网边缘路由器,发布用户网络路由。
P router: Provider Router,骨干网核心路由器,负责MPLS转发。
VPN用户站点(site):是VPN中的一个孤立的IP网络,一般来说,不通过骨干网不具有连通性,公司总部、分支机构都是site的具体例子。CE路由器通常是VPN Site中的一个路由器或交换设备,Site通过一个单独的物理端口或逻辑端口(通常是VLAN端口)连接到PE设备上。
用户接入MPLS VPN的方式是每个site提供一个或多个CE,同骨干网的PE连接。在PE上为这个site配置VRF,将连结PE-CE的物理接口、逻辑接口、甚至L2TP/IPSec隧道绑定的VRF上,但不可以是多跳的3层连接。
BGP扩展实现的MPLS VPN扩展的了BGP NLRI中的IPv4地址,在其前增加了一个8字节的RD(Route Distinguisher)。RD时用来标识VPN的成员---即Site的。VPN的成员关系是通过路由所携带的route target属性来获得的,每个VRF配置了一些策略,规定一个VPN可以接收哪些Site来的路由信息,可以向外发布哪些Site的路由信息。 每个PE根据BGP扩展发布的信息进行路由计算,生成每个相关VPN的路由表。
PE-CE之间要交换路由信息一般是通过静态路由,也可以通过RIP、OSPF、BGP、IS-IS等。PE-CE之间采用静态路由的好处是可以减少CE设备可能会因为管理不善等原因造成对骨干网BGP路由产生震荡,影响骨干网的稳定性。
PE与PE之间需要运行iBGP协议,存在可扩展性问题,但采用路由反射器RR可以显著地减少IBGP连接的数量。
MPLS/BGP VPN提供了灵活的地址管理。由于采用了单独的路由表,允许每个VPN使用单独的地址空间,称为VPN-IPv4地址空间,RD加上IPv4地址就构成了VPN-IPv4地址。很多采用私有地址的用户不必再进行地址转换。NAT只有在两个有冲突地址的用户需要建立Extranet连接进行通信时才需要。
在MPLS/BGP VPN中,属于同一的VPN的两个site之间转发报文使用两层标签来解决,在入口PE上为报文打上两层标签,第一层(外层)标签在骨干网内部进行交换,代表了从PE到对端PE的一条隧道,VPN报文打上这层标签,就可以沿着LSP到达对端PE,这时候就需要使用第二层(内层)标签,这层标签指示了报文应该到达哪个site,或者更具体一些,到达哪一个CE,这样,根据内层标签,就可以找到转发的接口。可以认为,内层标签代表了通过骨干网相连的两个CE之间的一个隧道。
BGP/MPLS VPN通过和Internet路由之间配置一些静态路由的方式,可以实现VPN的Internet上网服务,还可以为跨不同地域的、属于同一个AS但是没有自己的骨干网的运营商提供VPN互连,即提供“运营商的运营商”模式的VPN网络互连。(MPLS VPN访问Internet及Carrier's Carrier解决方案将在后面章节详细描述)
MPLS/MBGP VPN可以简化对用户端设备的需求和用户管理、维护Intranet/Extranet的复杂性,每个CE仅需要维持一个到PE的路由交换协议,CE间的路由交换、传输控制、路由策略由运营商根据VPN用户的需求来实施。由于BGP的策略控制能力很强,随之而来的是VPN用户路由策略控制的灵活性。
2.2 BGP/MPLS VPN典型应用 2.2.1 VPN访问Internet1. 企业内部访问控制方式:这种方式在每个企业的VPN内部对INTETNET访问做NAT,防火墙处理,既将安全机制放在企业的统一出口处(CE2)。VPN内部的各site的访问INTERNET的数据流,必须首先到该VPN的某一site中(该site一般为公司的总部),在该site做NAT,FIREWALL处理后再走到公网中去。这种方式,只需要在客户端进行配置,对运营商一侧的网络没有配置要求,但对运营商来说无法实现对客户访问Internet的统一管理。
2. 集中访问控制方式在这种方式INTERNET访问控制放置在服务提供商的INTERNET出口处(PE),但为了解决各VPN中采用重叠的保留地址的问题,需要为每个VPN配置一个防火墙,各个VPN的用户通过属于各自的防火墙实现对Internet的访问;这种方法,需要运营商为每个VPN配置一个访问Internet的VPN,在客户端需要配置一条访问Internet VPN的缺省路由,这种方法需要运营商进行一定的配置,而且由于每个VPN都需要一个防火墙,如果VPN用户较多则需要大量投资,但采用这种方法,运营商可以对各VPN用户访问Internet进行有效的管理。
3. 二级控制方式在这种方式下,首先在企业内部做INTERNET访问控制,然后在服务提供商处再做一次统一的访问控制,即两级访问控制。这种方式的优点是即可以满足企业用户对自身进行访问控制的需求,同时运营商也能对用户访问Internet进行统一控制,并且不象第二钟方式那样需要增加太多的投资(因为对每个VPN都要有单独的Firewall设备来进行访问控制)。当然这种方式的缺陷也是显然的,一是配置复杂,二是效率低于前两种。
2.2.2
ExtranetExtranet即外联网,指在这个网络内,属于某一个管理者的用户站点,由于业务的需求要与多个属于其他管理者的用户站点进行有限制的连接。一个Extranet应用的例子是:一个设备制造商在Extranet内与器材供应商及用户进行有限制连接,以便订购元器件、了解供货情况、了解用户需求、向用户介绍情况等。有限制的连接主要指可以进行互访问的有关协作数据是限制的,并不是所有数据都可以放开互访。所以在构建Extranet时,管理者要解决的关键问题就是确定用户允许接入、允许访问的数据类型和内容。
利用MPLS VPN技术可以很好的实现Extranet,对于MPLS VPN来说,Extranet实际上就是指两个VPN可以共享部分site的网络资源,同时两个VPN的其他Site保持相互隔离。 对于共享的site,即Extranet部分,采用两套IP地址,一套作为VPN私网地址,另一套作为Extranet公共地址,在访问本VPN其他site时(非Extranet部分),使用私有地址,在访问Extranet 的site时,使用Extranet公共地址,在访问Extranet site时,要先对报文的源IP地址进行NAT转换,即将原来VPN私有地址空间的源IP地址转换为Extranet公有地址空间的IP地址。同时需要设置两个DNS服务器,一个用于VPN私网内部的访问,这个DNS Server作为主用,另一个作为Second DNS Server,用于完成VPN用户访问Extranet站点时的地址解析工作。根据进行NAT地址转换的位置不同,有两种实现方式:
n
集中式(也叫组合式)方案。NAT地址转换工作统一在一个设备(一般多为防火墙设备)上完成,这样,对于两个VPN,NAT设备都相当于是它的CE,这里我们可以称之为虚拟CE,每个虚拟CE与PE之间通过2个VLAN连接,同时在VLAN子接口上针对每个VPN配置相应的NAT策略及防火墙策略,NAT设备可以将两个VPN用户访问Extranet的报文的源IP地址转换为公有地址池中的地址。要将公有地址池的路由发布到Extranet的站点中。
n
分布式方案。NAT地址转换工作在各Extranet site的出口完成。
n
地址空间统一规划。上面通过两套IP地址实现VPN之间互通的方式比较复杂,对网络管理维护人员的要求较高。所以实际应用中应该尽量避免使用。
需互访的VPN的地址空间由ISP统一规划。Extranet部分的IP地址与两个VPN的地址空间均不重合,通过route target属性(import/export)控制PE间路由的扩散,将两个VPN的路由引入到Extranet上,同时在VPN的其他site上只引入本VPN及Extranet的路由,为了防止VPN的其他site上通过通过指向extranet site的缺省路由进行互访,在与extranet直接相连的PE上通过ACL对非法互访流量进行隔离。这种方式适用于需共享的网络资源比较集中的情况。
注意:由于实现复杂的Extranet将导致网络配置复杂,不易维护,有些实际项目中,可以通过网络规划手段和管理措施尽量避免或减少这种需求:在采用VPN的网络中,绝大多数流量是隔离的,真正需共享或互通的设备不应过多。可以将需要互通的网络设备(如一些机要主机)单独划分在一个VPN中,如政务网中,机要部门系统和政府机关系统分别属于不同的VPN中,但是在某些地区,本地区的一些机要主机和政府部门主机需要互通,而这些主机与本系统的其他主机之间很少互访,这时,可以将这些主机单独划分一个VPN,这部分主机及本系统其他主机之间的数据交互通过人工或其他方式进行。
2.2.3 跨域VPN有三种方式,VRF-to-VRF方式、EBGP方式和Multi-Hop方式。
1. VRF-to-VRF方式这种方式要求两个域的ASBR能够做PE。两个AS域各自运行自己的VPN。对于每一个需要跨域的VPN,需要在本端跨域的PE设备(ASBR)上配置对应于这个VPN的VRF,把对端的 PE设备(ASBR)做为 本域VPN的CE,PE-CE之间运行EBGP协议,携带对端的VPN路由信息。这样,VPN报文在两个AS域都是两层标签转发,而在ASBR之间则是正常的IP转发。
这个方法的优点是在ASBR之间不需要运行MPLS,但缺点是每个跨域的VPN需要与一个子接口绑定,子接口的数量至少要和跨域的VPN的数量相当,并需要逐个VPN进行配置,因而存在可扩展性问题。这种方式也可以用于二层/三层VPN互通。
2. MP-EBGP携带VPN-IPv4路由通过直连的ASBR传播VPN-IPv4路由,并且为相应的VPN路由分配一个标签。在两个AS域内,VPN报文是普通的两层标签转发,在ASBR间,只有VPN内层标签,如果ASBR改变了VPN路由的下一跳,则需要交换报文的内层标签。当VPN-IPv4路由跨越多个AS时,采用的技术是同样的,无论跨越多少个AS,都只需要2层标签。
这种方法的优点是不需要在ASBR处为每个VPN的用户站点分配一个子接口,也不用建立跨域的LSP。但缺点是是需要在ASBR处同时维护VPN的路由和Internet路由,ASBR节点的压力大。为了克服这个缺点,可以采用多个ASBR,进行负载分担。
3. Multi-Hop MP-EBGP这种方式是首先在ingress与egress PE之间通过LDP + BGP的方式建立跨域的LSP,然后不同AS域之间的PE通过MP-EBGP方式传播VPN路由信息,由于PE间要跨越多跳,称为Multi-Hop MP-EBGP。
Ingress与Egress PE间LSP建立的方式同MP-EBGP为VPN-IPv4路由建立LSP的方式类似,区别是这时使用BGP协议发布PE的主机IPv4路由。首先在每个AS内通过LDP建立外层LSP,然后通过BGP将PE的主机路由携带标签发布到另外一个自治系统,路径是PE->ASBR->ASBR->PE,这样建立中间层LSP。这个LSP将两个AS内的外层LSP串接起来,形成跨域的LSP。当VPN-IPv4路由跨越多个AS时,采用的技术是同样的,无论跨越多少个AS,都只需要3层标签。
这种方式的优点是不需要在ASBR上维护VPN路由信息,将VPN路由信息的处理压力分散到PE上。缺点是一个PE要同另外一个AS内的所有PE之间建立EBGP连接,可扩展性差。为了解决这个问题,可以在每个AS内设置RR(路由反射器),PE同RR间使用MP-IBGP发布VPN-IPv4路由,两个AS的RR之间采用Multi-hop EBGP方式来发布VPN-IPv4路由。但一定要注意RR上决不能配置next-hop-self。另外注意,RR与ASBR不应该是同一个设备。
2.2.4 MCE根据VPN用户,将MCE路由表划分成几个独立的逻辑实体路由表(virtual route table);然后根据不同VPN用户占用不同的路由表,并根据独立的路由协议实例在不同的路由表中生成路由项。交换机转发引擎根据报文的vpn-id(如ACL或VLAN+端口)索引不同的路由表,并根据目的IP在其内进行查找``后将报文进行VPN的标识后经过上行链路转发出去。
MCE的优点是:MCE使得多个VPN用户可以共享一台CE设备,而又隔离了不同的用户,解决了安全和成本之间的矛盾;用户数据流在MCE被终结,避免了广播流量对PE设备造成不好的影响。总的来说,MCE是一种在局域网内实现多个VPN用户共享同一个CE设备,并共享该CE设备与PE设备间链路的技术。通过MCE特性,可以实现不同业务传输的完全隔离,低成本地解决传统局域网的安全性问题,极大的满足客户的需求。 |
|