VPN原理基础
VPN原理基础
无连接的IP与面向连接的服务
无连接的IP如何提供类似面向连接的服务?
众所周知,“全IP”已经到来,但是“尽最大努力的”服务的特点,使得IP和面向连接的ATM、X.25等协议而言,在QoS上面要解决很多问题。
从IP本身而言,数据链路层的ARQ(自动重发请求)、传输层TCP的流量、拥塞控制和重传机制,以及各个层次的校验功能在一定程度上解决了一些可靠性问题。但是要使得IP能和实时性要求较高的语音、图像等应用结合,上面的机制还不能完全满足,并且上面的机制基本上没有能够解决全网(这里的全网一般是局部的)、端到端的QoS问题。
IP技术中如何提供Qos的保证成为了最重要的问题之一。QoS相关的基本思想:分类(如何讲流分类)、管制(平均速率、峰值速率、突发长度等控制)、调度(调整流的优先权)以及呼叫接纳(哪些用户可以接入资源,接入的优先权控制)。
QoS相关的两个模型
如何解决全网、端到端的QoS问题?
综合服务(集成服务)InteServ模型
【道路戒严】:国家领导人视察的时候一些道路往往戒严—“预留了一些行车道”。
区分服务DiffServ模型
【警车开道】:区别与综合服务模型,区分服务模型在领导视察的时候,仅仅在车辆上“打了标记”,车牌号往往O或者红色字面打头以0001结尾,并且前面有拉警报的警车开道,告诉相关部门“这是特殊的流量”,需要优先通过。
综合服务InteServ模型
IETF提出了RSVP协议,具体的表现为MPLS中的RSVP隧道。核心思想是预留资源,一般从局部网络中实现,需要改变网络的结构,实现复杂,难以大规模实现。但是能达到的效果理想,并且使可控的。
区分服务DiffServ模型
IETF提出了DS(Differential Services)。核心思想是利用IPV4和IPV6(这个字段进行了扩展)中服务字段总的DS字段值来标记,边界路由器进行分类或者通信量调节。与InteServ相比实施简单,但是不能像RSVP那样提供相对“面向连接”的服务。
MPLS技术
MPLS产生背景——ATM和IP结合
ATM保证QoS,但是硬件昂贵、实施复杂;基于IP的应用广泛,但是QoS问题突出,因此ATM和IP结合,IP Over ATM(覆盖模型:IPOA、LANE、MPOA)。
IP和ATM结合的典型的网络。
IP和ATM结合的主要问题
由复杂的时候转发逻辑复杂。
报文要分析到IP层,时间、空间开销满足不了高速网络;
【更多】发现一个很有趣的事情:开始IP在ATM之上,后面IP MPLS中IP反过来可以承载ATM。又证明了通信界中的“潜规则”:先进的技术未必能广泛应用。
MPLS技术(多协议标记交换)
MPLS是一种技术,更确切的说是一种思想。核心思想:使用很简单的转发算法对打算固定长度“标记”的分组用硬件进行转发,而避免了每个节点的三层路由(转发上升到三层),这些转发都是在二层。由于MPLS不局限于ATM,也可用于IPX、PPP、以太等二层协议,因此这种标记是“多协议”的。【更多】TMPLS可以视作是MPLS的一个扩展子集,数据是基于MPLS标签进行转发的,是面向连接的MPLS,对MPLS某些复杂的功能进行了简化,去掉了数据面中不必要的转发处理,用于传输网。
VPN分类
在VPN中创建隧道的方式多种多样,我们以此对VPN进行了划分,主要包括:
传统VPN
帧中继(二层)
ATM(二层)
基于客户端实施(CPE)VPN
L2TP(二层)
GRE(三层)
基于运营商实施VPN
基于MPLS的二层VPN
BGP/MPLS VPN
这里说的VPN都是基于MPLS的VPN,采用了MPLS技术。
VPN原理基本上包括控制和转发两个方面
控制(控制平面)
控制平面主要是解决如何分配标签、维护路由信息、检测、切换等等问题。
转发(转发平面)
转发平面主要是解决在路由信息、标签等信息确定的情况下如何识别报文、转发包括等等问题。
L2VPN概述
这里说的L2VPN都是基于MPLS的L2VPN,采用了MPLS技术
VPWS:Virtual Private Wire Service虚拟专线服务
点到点连接。核心思想:提供点到点的服务,即透明的将报文一点“透明”传输到另外一点。这里的接入可以是以太、以太VLAN,也可以是PPP、HDLC等等
VPLS:Virtual Private LAN Service虚拟LAN服务
点到多点连接。这个网络对用户而言是一个LAN,而且对用户而言是“透明”的。
通信、计算机中“透明”这个概念经常用到,而且很重要!
VPWS原理
1、用户侧如何识别?
由本端的接入点(AC)的绑定来解决如何识别该业务的报文——流匹配规则
2、网络侧如何识别?
由远端节点地址和vc-id(VCID)号构造全网唯一的PW标识。
vc-id:虚拟链路标志
vc-id在本地节点必须是唯一的,远端节点对应接口需分配同样的vc-id号
3、如何转发?(转发平面)通过内、外层标签转发表
外层标记,又称隧道标记, 由LDP或者RSVP协议分配,指示从该PE路由器到目的PE路由器的路径 。 PE之间创建公共通道(LSP)。
内层标记,又称虚拟链路标记,由扩展的LDP协议或者BGP分配,用以标签识别不同的VPN信息 。是通过VCID和对端信息来协商或者指定的。 PE之间建立的点到点的子隧道称之为伪线PW。【更多】两个模型Martini、Kompella。
4、如何分配标签(标签的形成)?(控制平面)
上面的转发逻辑是建立在内外层标签建立的基础之上,那么通过什么来分配,如何分配?
PE和P设备或者PE和PE之间需运行路由协议,并通过LDP或者RSVP分配标签创建LSP
PE之间用扩展LDP或者BGP协商分配内层标签(也可以手动指定内层标签,即静态伪线)。
VPWS原理—总结
VPWS的工作模式:点到点
VPWS的VC建立过程:
LSP建立:通过MPLS网络建立LSP隧道
VC分配:PE配置VCID分发VC Label并和远端PE交互
PW建立:两台PE之间通过mapping消息协商交互,建立PW
VPWS的数据转发过程:
CE1通过AC发送数据包给PE
PE1通过VCID封装VC Label和LSP Label转发
P根据LSP Label转发(只处理公网LSP标签)
PE2根据VC Label识别将报文传发送给对应CE2
VPLS原理
VPLS基本原理和VPWS一致,比VPWS多了如下一些基本概念:
1、虚拟转发实例VFI(Virtual forwarding Instance)VFI即PE路由器上的一个VPLS实例 ,不同PE上相同vc-id的VPLS实例属于同一个VPLS域,可以相互通信。创建VFI后就将连接VPN的接口添加到此VFI中,当PE从此接口收到报文就会根据接口对应VFI信息区分VPN。这个是ROS设备中的逻辑,而ROSNG中没有明显的VFI的概念,只要求伪线两端的VCID一致。
2、执行MAC学习、MAC交换等
3、伪线的Hub/Spoke属性、GroupID和接入接口(AC)的Client/Server属性、GroupID属性。
VPLS基本原理和VPWS一致,也包括上面提到的四个问题:
1、用户侧如何识别?
2、网络测如何识别?
3、如何转发?
4、如何分配标签?
除此之外,VPLS还涉及如下问题:
1、执行MAC学习、MAC交换等
2、伪线的Hub/Spoke属性、GroupID
3、接入接口(AC)的Client/Server属性、GroupID属性
等等
VPLS网络中,相对于一台PE设备,我们把其下挂的CE设备称为本地成员,配置的PE peer称为远端成员,ZXR10 VPLS成员可以归为以下属性:
本地成员(Local CE):Client属性和Server属性
远端成员(PW Peer):Hub属性和Spoke属性
为便于理解和记忆,我们做如下约定:
Hub_pw和 Client_interface 归纳为H属性成员;
Spoke_pw和 Server_interface 归纳为S属性成员。
VPLS工作机制中,PE路由器对于广播(Broadcast)、组播(Multicast)和未知(Unknown)包(Frames)要进行广播(或称洪泛)给其他成员
ZXR10 VPLS “广播定律” 表述如下:
从H属性成员收到的广播包要向S属性成员广播,不得再向H属性成员广播
从S属性成员收到的广播包要向其他S属性成员及其所有的H属性成员广播
广播定律是对PE路由器的一个VFI内部而言的,广播定律对单播转发同样适用。
VPLS原理-总结
VPLS:服务提供商ISP通过可扩展的IP/MPLS网络提供城域内和城域间的多点到多点二层连接,对于用户而言,遍布各地的站点就好像连接到一个简单的以太网LAN。
用户可以通过MAN(Metropolitan Area Network,城域网)或WAN(WideArea Network,广域网)来实现自己的LAN(Local Area Network,局域网)
L3VPN
L3VPN:Layer 3 Virtual Private Network,三层虚拟专用网。
L3VPN主要提供一种三层的透明传输业务,对用户而言,这个业务逻辑上就是一个路由器,并且是透明的。
L3VPN的基本原理、数据包转发过程与L2VPN一致,同样也是利用了MPLS的核心思想,通过标签交换实现业务的透明传输。
相同点:
1、都是采用了MPLS技术;2、外层标签都可以通过LDP和RSVP分配
差异:
1、传输内容L2VPN是以太报文,而L3VPN是IP报文;2、内层标签分配上,L2VPN用的是扩展LDP或者BGP(MPBGP),而L3VPN则是BGP(MPBGP)。
除此之外,L3VPN还需要解决其自身特殊的问题。
L3 VPN中关键要实现两个目标:
VPN的路由信息仅能由本VPN的设备学习而不能被P设备及其他VPN设备学习——通过PE两点间运行BGP决办法:可以通过在PE两点间运行BGP协议来实现
PE设备上需保存各组VPN及公共网络的相关路由信息,但相互之间不能影响——提出VRF概念
VRF:VPNRouting&Forwarding VPN路由转发
作用:隔离、识别不同的VPN
每个VRF存储的路由信息包括:
与此VRF有关的直连从CE站点接收到的路由
从其他PE路由器接收到的具有可接受的BGP属性的路由
只有来自与VRF相关的站点的数据包才会被查询
提供不同VPN间的隔离
1、如何识别VPN—本地识别
当PE收到报文后如何判断这是VPN的用户信息还是公网信息?如何分辨VPN呢?
在PE上配置不同的VRF,将不同的接口指定到对应的VRF中。
2、如何识别VPN——跨公网识别
PE发送VPN路由信息时如何标识他们的VPN属性呢?
不同的VPN可能使用相同的地址空间,又如何标志路由信息属于哪个VPN呢?
VRF中包含两种属性:RD和RT,BGP/MPLS VPN就是通过这两个属性解决以上问题的
1、RD:路由标识符(Route Distinguisher):用来解决用户地址复用问题
2、RT:路由目标(route-target):用来识别不同VPN的路由信
作用:RT为路由实例VRF配置输入输出的路由策略,指定PE路由器能够接收、发送哪些路由信息,通过这些路由策略定义VPN的连接性。实质:RT实质上是BGP的扩展团体属性,用来标识每条路由信息的所属关系。格式:AS号:分配号或IP地址:分配号
VPN-IPV4地址仅用于公共网络,CE并不接收
入口PE在发送路由信息进入公共网络时,将Ipv4路由格式变为VPN-ipv4格式
出口PE在发送给CE路由信息时将Vpn-ipv4地址变为Ipv4地址发送
VPN-IPV4地址仅用于控制层面,即在BGP传递路由消息时使用,而数据报文转发时不会使用
RT实际由两部分组成:
import target:用于输入策略,只有当输入路由信息属性与PE上VRF的import target属性相匹配才能学习保存
export target:用于输出策略,PE发送路由信息时携带对应VRF的export target属性,用来标识发送VPN
>更多相关文章
- 09-24什么是ARP地址?什么是ARP攻击?如何利用ARP命令解决网络故障
- 09-24100 个网络基础知识普及,看完成半个网络高手
- 09-24IP地址分配与中继设备
- 09-24不同网段的弱电系统设备之间如何互访?
- 09-24这些APP已经支持IPv6服务,IPv6如何逐步取代IPv4
- 09-24微服务入门:Openresty实现API网关
- 09-24核心交换机的链路聚合、冗余、堆叠、热备份
- 07-30IPv6优于IPv4的十大功能
首页推荐
佛山市东联科技有限公司一直秉承“一切以用户价值为依归
- 01-11全球最受赞誉公司揭晓:苹果连续九年第一
- 12-09罗伯特·莫里斯:让黑客真正变黑
- 12-09谁闯入了中国网络?揭秘美国绝密黑客小组TA
- 12-09警示:iOS6 惊现“闪退”BUG
- 12-05亚马逊推出新一代基础模型 任意模态生成大模
- 12-05OpenAI拓展欧洲业务 将在苏黎世设立办公室
- 12-05微软质疑美国联邦贸易委员会泄露信息 督促其
- 12-05联交所取消宝宝树上市地位 宝宝树:不会对公
- 12-04企业微信致歉:文档打开异常已完成修复
相关文章
24小时热门资讯
24小时回复排行
热门推荐
最新资讯
操作系统
黑客防御