JNCIS读书笔记.docx
- 文档编号:30036575
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:34
- 大小:44.43KB
JNCIS读书笔记.docx
《JNCIS读书笔记.docx》由会员分享,可在线阅读,更多相关《JNCIS读书笔记.docx(34页珍藏版)》请在冰豆网上搜索。
JNCIS读书笔记
JNCIS读书笔记
第八章高级MPLS
Constrainedshortestpathfirst(cspf)是改进的SPF算法用OSPF和IS-ISdatabase,叫做TED,是被RSVP用来选择LSP的。
TED里存放着RSVP的拓扑信息包括设备的运行MPLS能力信息,带宽可用性,优先级和可管理名字等。
CSPF算法在构造TED之前,先把用户定义的标准除去,在用此算法计算最短路径。
这样就形成了strict-hopExplictRouterobject(ERO),也就是我们可以自己定义LSP.
OSPF用类型为10的LSA来声明TE信息,每个area一个TED.(lsa格式见教材)
IS-IS用ExtendedisreachablilityTLV声明TE信息,type22,在所有IS-ISinterfaceandlevel执行。
(详细的格式和配置见教材)
CSPF算法过程
1.当LSP要求带宽预留是,除去没有可用带宽的所有链路,再执行算法
2当LSP要求网络路径包含和不包含管理组时,除去不包含和包含管理组的链路再执行算法
3.用剩下信息执行最短路径算法,当存在外在要求路由时执行单独的算法,从进口路由到第一跳,再由第一跳到下一跳直到达出口路由。
4当存在等价路径时,选择最后一跳是出口路由地址,最短跳数和配置了load-balancing的LSP(random,most-fill,least-fill)
5算法产生的ERO包含节点的物理接口地址
。
管理组
用途:
能够控制不同类型的数据流用不同的链路。
每个接口可配置一个or多个组值,并通过igp传播最后放到TED中。
(该值只有本地意义,并可有管理员自己命名,ex:
admin-groupgold2silver15bronze28interfaceat-0/1/0.0admin-groupsilver)
我们可以用组名关联到LSP用inchude命令(admin-groupincludesilver)
然而命令exclude要求LSP不能用包含改组的任何组名,用时要小心。
LSP的优先级和抢占
每个LSP有两个独特的值:
setupandholdpriority
Setuppriority用来决定是否有足够的带宽可用在0-7优先级层。
Holdpriorty被LSP用来预留带宽资源。
每个接口都宣告可用带宽值在8个级别上(0-7)0级别最好,默认下所有LSP收到setup值为7,确保新的LSP不消耗掉所有带宽。
然而当CSPF找到的路径是strict-hopERO,当resv信息到达上游进口路由器时,每个接口保留他的实际带宽用holdpriority0,也就是说LSP不会保留带宽给新启用的LSP.然后由TED宣告在LSP之间。
然而JUNOS可以让我们指定一些LSP比其它手动配置的优先级更重要,用命令priority.也就是说新的LSP可以抢占已经启用的LSP的资源。
比如哈:
已经在以太网启用的LSP预留了90M带宽,在默认优先级下,新的LSP如果要求带宽大于10M,那么对不起,没有那么多,新的LSP就不会起来。
现在假设启用90M的LSP的holdpriority是3,新的LSPsetuppriority是2这时候,他就会被高的优先级的LSP给抢了,那么他就挂了!
(sessionpreempted)
LSP的数据保护
管理员呢当然不希望LSP挂掉,如果挂了的话,只能用ipv4lookup,这是我们不愿看到的,不过世事难料,我们可以用三种方法搞定:
primarypath,secondarypath,fastreroute,
OKlet’shavearest!
PrimaryLSPpath是用户定义ERO的方法,大多都用这条链路传输,path包含带宽预留,优先级,和用户定义的ERO,管理组。
LSP可以没有或一个主路径,主路径有恢复能力。
两个要素:
retry-timer控制进口路由器等待时间的长度当他要重新启用primarypath(默认30秒)retry-limit控制进口路由器尝试重启主路径的次数。
(默认,junossetretry-limit是0,意思是总是尝试启用主链路)
Ok!
第二链路就是说一个LSP可以有一个或多个链路可用当主路径挂了时候,它们是平等的,没有歧视哦,不管有无优先级,当主链路active时,他处于Dn的状态。
主路径恢复时也要等待一段时间,防止主路径很短时间内挂掉。
Standbysecondarypaths用standby命令当主路径down掉时候第二链路马上启用,当主链路稳定时候,进口路由选择主链路,第二链路被取消,但他还是起作用。
如果你不希望看到回退机制,那么你可以只配置多个第二路径,不用配置主链路,ingressrouter按顺序用多个第二路径,当第一个第二路径挂了的时候,ingress启用第二个第二路径,然而当第一个第二路径恢复能力了,但不会重新启用它。
FastReroute
以上讨论的方法都有潜在的丢包,在链路切换过程中,这种方法可解决此问题。
每个路由器都创建一个detour保护失效的下游邻居或链路。
当有节点失效时,上游路由从失效点马上用可绕道的路径转发,很小的丢包!
两种模式:
nodeprotectionandlinkprotection
节点保护,每个启用LSP的路由器创建一个可绕道路径从它自己到出口路由,用TED信息和strict-hopERO。
这条路径继承了管理组,带宽限制等属性。
主要是保护下游失效。
用命令fast-reroute
链路保护:
我们创建bypassLSP从路由器到他的邻居RLR(pointoflocalrepair)执行标签交换,把下游节点宣告的标签放在MPLS头的底部,然后push标签到bypassLSP并转发。
详见教材
控制LSP行为
Adaptivemode
Fixedfilter(FE)可以为每个发送者(LSPid)和接受者(tunnelid)预留带宽,然而sharedexplicit(SE)为每个RSVPsession,配置用关键字adaptive在你的LSP.两种用法:
1.在standbysecondarypath环境中。
2当一个启用的LSP试图reroute它自己到新的链路上时候。
Explicitnulladvertisements
出口路由器宣告标签值为0,到倒数第二跳路由器,出口路由器能够把数据包分类沿用进口路由器的配置。
控制time-to-live
用no-decrement-ttl命令隐藏LSP的细节,no-propagate-ttl隐藏LSP细节。
LSP和路由协议的交互
Igp通过LSP转发数据,作为点对点链路放到链路状态数据库中,
LSPaccesstojusttheingressrouter
我们可以把inet.3路由表放到inet.0中命令bgp-igp路由器把inet.3路由表放到inet.0中。
命令traffic-engineeringbgp-igp-both-ribscopy出口路由器地址到inet.0路由表中,能够支持VPN,
命令traffic-engineeringmpls-forwarding拷贝出口路由器地址到inet.0中,但只是标记他是active的用来转发数据。
第九章
二层和三层VPN网络
先看几个术语
Customeredgerouter(ce)通常是位于用户端的设备,用二层拓扑连接到ISP,通过FRATM或以太网。
在三层VPN里,CE和提供商之间交换路由信息,或其它的CE交换信息。
Provideredgerouter(PE)是在服务商并和CE直接交互的路由器,并和其它PE之间运行MPLS。
Providerrouter(p)路由器位于运营商网络里,他不会维护任何的用户VPN信息,只是转发MPLS数据包从PE到PE之间。
VPNroutingandforwardingtable在三层vpn中每个PE为每个单独的用户维护一个VPN转发表,叫VRF表。
VPNforwardingtable(VFT)用在二层VPN环境,每个PE创建一个单独的VFT为每个用户。
VPNconnectiontable用在二层环境,他被包含在VFT中,是用来为pe把收到的二层frames转发到正确的远端pe上
OK 接下来看三层VPN
当两个不同的客户同时宣告同一个网络时候,为了区分客户,让PE看做是单独的进程我们可以用 router distinguisher(RD)来区分
NLRL信息包含Maskmplslabelrdandipv4prefix等信息
当然在PE之间必须启用MBGP,pe之间转发vpn-ipv4NLRI信息会出现在bgp.l3vpn.0表中。
讨论下RouterDistinguishers
共8个字节,当RD用2字节Administratorfield时,把global自治系统号放到这里,当4字节长时,放如起源PE的routerid
两种方法分配RD自动和手动,当用命令route-distinguisher-id时,PE自动产生RD为每个VRF,用的是routerid在Administratorfield中,并产生号码。
手动的时候呢是AS-basedRD
让我们讨论下两个平台
控制平台在三层VPN中,我们在PE之间通常用的是fullmeshofbgp,和路由策略来控制哪个路由接收每个客户的VRF表,路由策略的控制用routetarget来区分那个路由属于哪个VRF表。
具体过程
当PE路由器收到CE宣告的路由(来自直连或静态或动态协议)放到路由表中
PE路由器通过比较应用到VRF表上的出口策略来决定那些路由改宣告给其它的PE,这些策略也应用到routetarget上
当其它PE检查进口策略,如果匹配包含相同的RT时,则放到bgp.l3vpn.0中。
收到信息的PE开始检查下一跳可达性,在Inet.3中,确保MPLSLSP已经启用,并下一跳可达。
PE开始push标签,这个VPNlabel也关联到bgp.l3vpn.0表中。
PE把VRF表放到BGP路由中,然后转发给和他运行路由协议的CE
数据转发平面
当CE收到适当的路由了,那么他就可以转发数据了,具体过程,检查本地路由表,发送到PE
该pe收到后查看VRF表,然后用LSP转发给P路由器,这时候该PE路由器执行两次标签注入,VPN标签放入协议栈的底部,LSP标签放到上面。
P路由器收到MPLS,检查上面的标签值,执行交换,并跳出上层标签,将剩下的信息转发给下一跳,收到信息的PE跳出标签转发剩下的数据给CE,CE执行本地查找
那么OKping结束
在PE-CE间启用BGP
JUNOS让我们在CE-PE之间用RIP,OSPF和BGP
具体的应用见教材实例当CE-PE运行ospf时需要重分发ok先休息下
DomainID
默认情况下是32bit(0.0.0.0)用来让PE路由器宣告类型3或类型5LSA(在pe-ce运行ospf)
Ospfroutetypeattribute是BGPextendedcommunity自动被PE路由器包含当他宣告ospf时
PE用routetype和domainid值来决定是宣告sunmmary和Asexternallsa
1当收到1,2,3LSA,但不含domainid属性,宣告Type3summarylsa
2当收到的路由是内部类型和domainid和本地配置domainid相同时宣告类型3,不同时宣告类型5
3当本地没有配置ID值即为默认值时,宣告类型5LSA
4当收到5或7的LSA时,宣告5的LSA
VPNRoutetag
在ospf中LSA5是在domain泛洪的,这在三层VPN中会带来问题。
在上面我们讨论的情况如果CE接收到类型5的LSA,他就会在domain泛红,这样他连接的CE也会收到这个LSA,连接该ce的PE也会转发到他的邻居PE,存在潜在的环路。
Vpnroutetagvalue是存在类型5LSA中,当PE从CE那收到和他本地同样的值,就不会转发到他的邻居了,在ospf进程中自动估算VPN路由tag,我们可以用命令domain-vpn-tag来为每个客户配置
接下来internetaccessforvpncustomers
先来看independentinternetaccess是指CE直接转发数据到internet或用PE作为二层来转发,这时候运行商就不会有收入了呵呵,他们只是提供了二层的电路
分布式internet访问
在这种模式下,运行商的每个PE都连接到internet上为他的CE,第一个可选是在CE和PE上建立两个电路,一个给VPN,一个可提供Internet连接
第二个是CEPE建立两个电路,CE发送vpn和internet到PE用相同的电路,从internet返回的数据用第二个非VRF电路,从ce上看他们有相同的下一跳
第三可选是PECE只用一条电路,ce发送数据到pe,pe查看VRF表,要求在VRF表中有个默认静态路由到达到inet.0,数据才能到达internet,用命令next-table那么数据返回到CE时呢,只能是vrf表拷贝到inet.0了
集中式internet访问与分布式访问区别在中心CE路由宣告一个0.0.0.0的默认路由给其它CE在Vpn环境中。
二层VPN
二层vpn和三层vpn用相同的基础设施,PE路由之间用MBGP来宣告路由信息,包含vpnconnectiontable(VCT)描述标签信息需要在PECE之间特殊的封装
PE-CE帧中继连接
在CE端配置封装和dlci值,在PE上配置封装frame-relay-cccdlci值这种封装让PE路由器直接把二层数据帧放到MPLS标签交换路径上传输。
配置站点标识
在二层VPN中,NLRI宣告不包含外在的VPN标签提供给远端PE。
让远端PE自动计算标签用他的本地配置,本地配置用siteidentifier,每个用户站点都分配一个站点id.
命令remote-site-id声明远端PE的站点id,是为了不让PE执行默认的行为,默认为每接口增加1,造成与对端不匹配的情况
PE–CE用ATM连接
与帧中继类似
PE-CE用以太网vlan连接
详见配置命令其它的封装方法见教材补充:
Kireetikompella是在PE和客户用BGP交互 ;第二个vpn形式是Lucamartini用的是LDP在pe之间;(什么是CCC)
最后看下二层电路
二层电路与二层VPN区别在控制平台和虚拟连接的设置上。
在PE间启用LDP,宣告虚电路信息,让PE之间执行MPLS转发
二层vpn用的是MBGP而二层虚电路用的是LDP
第七章MPLS
这一章我们详细讨论RSVP和LDP
先看动态信令的第一种,RSVP支持流量工程
Pathmessage当路由器确定LSP时,他产生path信息,并转发到他的下游到出口路由器,这些message包含了sessionRSVP-Hop,time-valuessessionattribute等信息,逐跳传递直到出口路由器。
如果是新的信息,建立一个新的RSVPsoft-state,上游的接口地址被保存,为了resv信息到达上游路由器
Resvmessage
是由出口路由器产生的,并传递到上游,这个信息收集rsvp-hop,用来转发,这时候为resvstateblock,并存储出口地址,并根据pathstateblock信息来定位下一个上游路由器,当pathstateblock匹配,就会宣告他从下游收到的标签值,标签包含在labelobject中
Patherrmessage是一跳一跳的送到进口路由器的错误信息
Resverrmessage是逐跳发送到出口路由器的错误信息和patherr一样,他们不会破坏网络的softstate
Pathtearmassage当我们想把已经启用的LSP中断的时候,这个信息顺下到出口路由器,除去pathstateblock和resvstateblock
Resvtearmessage是逐跳传递到进口路由器的信息,也是除去LSP状态
RSVPobject
l.LSP-tunnel-ipv4sessionobject是在每个RSVPmessage都存在,并且是标识LSP唯一性的关键
2.ipv4rsvp-hopobject是用来标识邻居RSVP的接口地址,他让每个设备保存pathandresvstate的信息
3.time-valuesobject包含在path和Resv信息中,用来评估PSVPsoft-state信息的生存时间,包含更新的值
Ipv4error-specobject包含在patherrorresverr信息中,包含了出错路由器的地址
Styleobject是包含在resv信息中,决定怎样预留资源,默认每个session都创建独特的预留叫做fixedfilter(FF)第二个叫sharedexplicit(SE)多个发送者可共享预留资源。
Integratedservicesflowspecobject出现在resv信息中,与带宽的平均值和峰值有关
LSP-tunnel-ipv4filter-specobject包含在resv信息中,用来表识LSP的发送者。
这些信息在多个发送者共享一个预留资源有用途
LSP-tunnel-ipv4sendertemplateobject包含在path信息中用来表识LSP的发送者,用来区分发送源,或LSPID在RSVPsession中
Integratedservicessender-tspecobject包含在path信息中,包含带宽请求为LSP带宽平均值和峰值
Labelobject
包含在resv信息中,并向他的上游邻居宣告MPLS标签
Laberrequsetobject包含在path信息中,有三种方式,第一种不要求特殊的标签范围,让下游路由器分配任意值,其它两种在ATMorframerelay范围
Explicitrouteobject(ERO)包含在path信息中,让进口路由器表示特殊路径,JUNOS只形成ipv4前缀,当路由器收到path信息时候,先检查ERO是否第一个节点被strictlyorloosely,本地路由器决定第一个节点地址和ERO是否相同,第一种情况,当第一个节点在ERO是loosely并且本地地址不是ERO列出的地址,本地路由器会转发到ERO列出的地址
第二种情况第一个ERO地址是strictly设置,本地地址必须匹配ERO要求的地址,本地地址不匹配的话就产生patherr信息
Recordroutobject(RRO)包含在pathorresv信息中,描述那些信息通过了该节点,标签值也包含,节点地址为IPV4,也用来排错,和检测环路
Detourobject包含在path信息中,用来启用快速detour(绕道)用来保护链路
Fastreroutobject包含在path信息中,改变所有下游路由为保护LSP链路,每个LSP路由器除了egress,都创建一个detourpath到下游节点,用detourobject.这些信息包含带宽预留,跳数,管理组等信息
LSP-tunnelsessionattributeobject包含在path信息中,被进口路由器用来声明LSP的优先级值
RSVPsession当LSP启用的时候,他分配了确定的资源,标签值和带宽预留,并且fastreroute的创建,所有这些信息连接在一起叫做一个rsvpsession
OK好多啊havearest!
!
接下来看LDP
两个邻居通过hello信息建立LDPsession,来宣告ipv4接口地址,标签和可达前缀,并且通过TCP连接,用LDPwellknown端口646,有高路由ID的发起,叫activenode.这个路由器呢用initalizationmessage到他的邻居(passivenode)包含了keepalivetimeandLDPID信息还包含TLV支持gracefulrestart
通过session交换信息
一旦LDP启用,他们就可以交换信息了通过会话,每个信息包含自己的格式,让我们详细看看
接口地址:
LDPaddressmessage宣告下一跳地址,这个地址与标签值关联
宣告标签值:
LSP呢是MPLS用来转发数据的路径,那么LDP是怎么宣告标签的呢?
先来看个概念
Forwardingequivalenceclass(FEC)转发等价类,他是一个前缀被出口路由器映射到LSP,他描绘了数据的流动路径。
并且每个LDP路由器都用同样的方式宣告标签,在默认下只宣告环回口地址作为FEC,让所有的LDP路由器用loopback启用LSP,这些MPLS可达地址放入到inet.3表中,给BGP提供查找
每个被FEC宣告的前缀都关联一个标签值,让出口路由器宣告标签到他的上游,这些是用LDPlabelmappingmessage来完成的,最终可看到标签值和环回口地址的对应,防止路由环路的方法是LDP用igp来选择下一跳
LDPlabelwithdrawmessage用来去除label和FEC因为LDP不支持流量工程,我们可以用LDPtunneling方式,通过rsvp上启用LDP
第六章组播
在PIM的稀疏模式下,每个组播组需要选择一个RP,静态配置rp到组的映像,auto-rp和bootstrap
1.静态配置
我们先选择一个路由器作为RP,并且将他的地址宣告给每个路由器,缺点是单点故障,如果没有指定组的范围,RP将为所有组播组服务。
EstablishingRPT
当路由器知道RP后,就发送join和prune信息给RP,并且安装(*,G)状态,因为源还不确定,当逐跳到达RP时候,RPT启用,此时PR作为组播的源让pim路由器把信息转发给他自己
EstablishingSTP
当组播源开始发送数据到第一跳路由器时,这个路由器封装数据报为PIMregistermessage并单播到RP。
当RP收到后,执行解封装,并沿着RPT转发给最后一跳路由器,PR并开始计算通过registermessages收到的组播数据包,当数值超过设定的阀值,默认为0,RP开始产生PIM
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JNCIS 读书笔记