竭诚为您提供优质文档/双击可除bgp属于哪种路由协议篇一:bgp路由协议汇总一、概述:1.bgp(bordergatewayprotocol):边界网关协议,属于egp(光杆司令);协议号为“6”,利用tcp179端口,bgp的边界在链路上2.bgp是应用于自治系统和自治系统之间的协议;属于路径矢量的协议(经过多少个as);有别于距离矢量,但又可以说属于他,所以在边界上会出现自动汇总现象。
3.bgp的as号的范围为:1~65535;属于公用的是1~64511;私有自治系统号是64512~65535(1024个)4.igp中以metric来定义路径的好坏;而bgp是通过属性来评价路径的好坏。
5.是基于路由策略的协议,其可以看到该路由是从哪个as来的路由。
6.可使用bgp的情况:⑴anasallowspacketstotransitthroughittoreachotherauto nomoussystems⑵anashasmultipleconnectionstootherautonomoussystems.⑶Routingpolicyandrouteselectionfortrafficenteringand leavingyourasmustbemanipulated7.不建议采用bgp的情况:⑴singleconnectiontotheinternetorotheras(即为一个末节as,只有一个出口)⑵(bgp属于哪种路由协议)lacksmemoryorprocessorpowertohandleconstantupdat esonbgprouters(一般要10000Ⅱ系列级别)⑶limitedunderstandingofroutefilteringandbgppathselec tionprocess8.出站和入站要分开来考虑出站和入站要分开来考虑9.bgp的邻居关系:⑴不一定要在同一个as中),在bgp中邻居叫做peers(对等体)⑵在一个as内部的对等体叫做ibgp(管理距离200);在不同as之间的对等体叫做ebgp(管理距离20)⑶虽然bgp的邻居可以是建立在任意两个可以建立tcp二、bgp的基本概念:1.bgp的特征:⑴边界汇总,庞大的路由表!⑵可靠的更新:其不像igp协议利用“ip包”或“udp”进行交换,利用协议保证可靠性(如确认,应答);bgp利用tcp179进行传输,那想一想bgp的可靠性靠什么来保证呢??(注意:tcp179被封bgp就启不来了)⑶增量的触发更新(注意:触发比较迟钝)⑷周期的keepalive消息,来验证tcp的连接是否正常。
(60s)⑸丰富的度量值:其不像eigRp综合计算metric,而是一个个比较,而且metric在bgp中叫做属性.⑹针对巨型网络的使用,如internet2.bgp的数据库:⑴bgp邻居表:是利用tcp学过来的,所以不需要直连就可以建立邻居,换句话说可以telnet到对方就可以建立邻居关系(注意:这里的telnet是广义上的)⑵bgp转发表(即bgp的路由表):是利用tcp学过来的,记住了每一个居所知的所有的网络,(bgp不能进行负载均衡)★当邻居第一次建立时,他们交换整个bgp路由表。
listofallnetworkslearnedfromeachneighbor包括cancontainmultiplepathwaystodestinationnetworks databasecontainsbgpattributesforeachpathway⑶3.bgp的消息类型:⑴open消息(编码为1):tcp会话建立起来以后,两个邻居都要发送一个open消息。
每个邻居都用该消息来标识自己、并且规定自己的bgp运行参数。
open消息包括以下信息:bgp版本号,除非通过叫neighborversion命令来运行较早版本否则默认为版本4,如果不同会自动协商到相同。
②as号:用来决定该bgp会话是ebgp还是ibgp。
③holdtime:180秒后没有收到keepalive认为邻居down。
④bgp标识符:用来标识邻居的ip地址;使用最大值的lookback地址;如果没有配置ip地址的lookback则选用用物理接口上数值最大的ip地址。
⑵keepalive消息(编码为4):如果路由器接受了它的邻居在open消息中的参数,它就会应答一个keepalive消息,缺省的情况是,每隔60秒发送一个keepalive。
或者以达成的holdtime时间的1/3时间发一次。
⑶update(编码为2)消息:网络层可到达信息(nlRi)路径属性.撒消路由⑷notification消息(编码为3):当检测到错误时发送,通常导致bgp连接中止。
※谁在我旁边?(open);我还活着(keepalive);有新的情况吗?(update);烦死了断开和你的连接(notification)三、bgp的state(1)idle(空闲):在该状态下,它拒绝接收所有入连接(2)connect:Routerfoundrouteandhascompletedthree-waytcphandshak e;在这种状态下,bgp过程会等到tcp连接完成以后再决定后续的动作。
如果tcp连接建立成功,bgp连接将connectRely清零,完成初始化过程,给邻居发送—个open消息并转移到发送open消息状态(opensent);如果tcp 连接建方失败bgp过程会继续监听邻居发启的连接,重置connectRely计时器并转移到激活状态。
(3)active(激活状态):在这个状态下,bgp过程试图与邻居建立一个tcp连接。
如果tcp连接建立成功,bgp连接将connectRely清零,完成初始化工作,给邻居发送一个open消息并转移到发送open消息状态(opensent),hold计时器被置成4分钟。
(4)opensent:在这种状态下,已经发送了0pen消息,bgp正在等待从邻居发来的open消息。
当收到一个open消息以后,检查该消息所有的字段。
如果发现差错,会给它的邻居发送一个notification并将状态转移到空闲。
如果在接收到的open消息中没有发现差错,bgp给邻居发送—个keepahve消息。
(5)openconfirm:在这种状态下,bgp过程会等待一个keepalive或者notification消息。
如果收到keepalive消息,转移到己建立状态。
如果收到notification消息或者tcp断开消息,状态转移到空闲。
.(6)established:peeringisestablished;routingbegins.(开始传转发表中的路由)★排错分析:idle状态:可能路由表中没有这条路由;查看连通性active状态:指了一个错误的对等体地址(应指向对方公告的更新源地址);邻居没有正确的指向你;更新源地址指错了四、bgp的属性(路由条目属性):(10条,我们可以利用这些属性进行bgp的选路,见后的配置)(1)公认的必选属性(well-knownmandatory):⑴oRigin(起源):明确了路由信息的来源igp:从发起者的as内部协议可以学到的网络层可达信息(nlRi),如利用netwoRk命令学到的。
起源代码为“i”egp:nlRi是从egp学到的。
起源代码为“e”或redistribute进来的incomplete:nlRi是从其他手段学到的如igp分发(redistribute进来的)进bgp。
起源代码为“?”⑵as_path(路径)as),以最近的as开始,以发起者的as结束;如1.0→a→b→c→d(as_path为:1.0:b-a-c)注意:只有update消息发送给另一个as的邻居时(ebgp)bgp才会将他的as号加入到as_path中。
as_path前置⑶next_hop(下一跳):在bgp中两个as之间交换信息(ebgp),传到ibgp后下一跳0.0.0.0表示下一跳为自己(2)公认自选属性(well-knowndiscretionary)⑴local_pReF(本地优先级)其高于as_path,决定了出站的选路(默认100)⑵atomic_aggReg(原子属性):同as-set(3)任选可透明传输属性(optionaltransitive)我不认识但我会传给下一个⑴aggRegatoR:指聚合在哪里出现。
⑵community(团队属性):比方在as1中有1.0和2.0两条路由,现在不允许1.0出as1,如果做路由过滤20有个出口就要做20次,很麻烦;利用团队属性的话只要有其中的一条属性就出不去了;其包括如下重要属性::自由公布路由no-export:接收到有该属性的路由不传递给他的ebgp 对等体(即不给其他as)no-local_as:接收到有该属性的路由不传递给他的ebgp对等体(包括联盟的)no-advertisment:接收到有该属性的路由不传给任何bgp对等体(本路由器)(4)任选非可透明传输属性(optionalnontransitive)我不认识我则丢弃⑴multi_exit_disc(med):bgp的metric⑵oRiginatoR_id(起源id用在路由反射器中。