




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020 4 24 BGP路由协议原理 华为技术 学习完此课程 您将会 理解BGP协议的基本概念和原理了解BGP协议的路由属性 目标 第1章BGP协议概述第2章BGP工作原理第3章BGP路由属性 内容介绍 1 BGP概述 BGP是什么 BGP是BorderGatewayProtocol边界网关路由协议 属于距离矢量路由协议 作用 在AS自治系统之间传递路由信息 4个版本 V1 V2 V4 V4 即MBGP 被TCP承载 端口号179 由TCP来解决可靠性 路由附带丰富的属性信息 可以通过控制属性来控制路由选择 2 为什么要使用BGP BGP价值传递 使用BGP的三大理由 1 大量路由需要承载 IGP只能容纳千条 而BGP可以容纳上万 2 支撑MPLS VPN的应用 传递客户VPN路由 3 策略能力强 可以很好的实现路由决策与数据控制 2 为什么要使用BGP BGPVSOSPF OSPFVSBGP话说当年武林挑选盟主 主办方IP组织让OSPF和BGP说各自的修行心得 OSPF 身如路由器 心似转发表 报文何其多 日夜勤查找 BGP 路由本非器 转发何需表 报文虽然多 自有他人找 主办方IP组织宣布BGP获胜 OSPF不服 老子日夜辛苦 修行的OSPF心法300多页 构思巧妙 算法复杂 堪称武林绝学 而师弟BGP 终日游山玩水 草草写了一本70多页的心法就交差了 主办方问 那么你的心法能够管理多少设备多少路由呢 OSPF这时才自知不如 无话可说 主办方继续说 OSPF只能管理设备百台 路由千条 而BGP能够管理整个internet百万台路由器 路由十万余条 原因是 BGP是无为而治 表面看是无所做为 其实他只是不想过份的拘泥于细节 OSPF虽然厉害 但是太拘泥于细节 最终BGP胜出 但是BGP也知道 他少不了OSPF的这个帮手 他得靠OSPF培养人才 路由 最终BGP联手OSPF 一统江湖 无人能敌 3 BGP协议基本概念 什么是自治系统 AS 自治系统指由同一个技术管理机构管理 使用内部路由策略的一些路由器的集合 每个自治系统都有唯一的自治系统编号 自治系统的编号范围是1到65535 其中1到64511是注册的因特网编号 64512到65535是专用网络编号 没有BGP的日子里 有了BGP之后 链路层协议生成路由 IGP发现和计算路由 BGP控制路由传播和选择 BGP两种邻居 IBGP和EBGP 第1章BGP协议概述第2章BGP工作原理第3章BGP路由属性 内容介绍 1 BGP的协议包 2 BGP报文封装格式 单播形式发送 IP协议号为6 TCP端口号为179 Open报文类型 Open报文是由BGP报文头 报文头type 1 加如下结构构成 HoldTime Version MyAutonomousSystem BGPIdentifier OptionalParamenters OptionalParamentersLength 扩展参数 如MBGP GR route refresh 接收不到邻居的Update或Keepalive所能等待的最长时间 此值默认为180s Update报文类型 UpdateMessage用于BGP路由的更新Update报文由BGP报文头 type 2 加如下结构构成 Keepalive报文类型 KeepaliveMessage用于保持BGP邻居之间的会话缺省60秒发一次给PeerKeepalive type 4 报文只有BGP报文头 Notification报文类型 NotificationMessage用于终止BGP邻居间的会话BGP进程遭遇错误或设备出现问题OpenMessage交互的过程中 如果设备发现OpenMessage中协商的某些参数不匹配 就会发送一个NotificationMessage并中断连接 Notification报文由BGP报文头 type 3 加如下结构构成 Data ErrorCode ErrorSubcode 3 BGP工作流程 有限状态机FSM Active Open sent Open confirm Established Idle Connect Connect Retrytimerexpiry TCPconnectionfails Connect Retrytimerexpiry Start Others TCPconnectionfails Error Error Error KeepAlivetimerexpiry KeepAlivepacketreceived 1 KeepAlivetimerexpiry2 Updatereceived3 KeepAlivereceived CorrectOPENpacketreceived TCPconnectionsetup TCPconnectionsetup Others 3 BGP工作流程 邻居状态机一览表 4 BGP工作机制 在BGP对等体建立之前 对等体之间首先进行TCP连接 BGP邻居间会通过Open消息协商相关参数 建立起BGP对等体关系 BGP邻居刚建立时 发送整个BGP路由表交换路由信息 之后为了更新路由表只交换更新消息 updatemessage 系统在运行过程中 通过接收和发送keep alive消息来检测相互之间的连接是否正常的 成为BGP路由的途径之一 纯动态注入 OSPF发现路由18 0 0 1 8把IGP OSPF 发现的路由纯动态地注入到RTB的BGP路由表中 成为BGP路由的途径之二 半动态注入 OSPF发现路由18 0 0 1 8把IGP OSPF 发现的路由半动态地注入到RTB的BGP路由表中 18 0 0 1 8 OSPF RTB AS200 成为BGP路由的途径之三 静态注入 人为配置静态路由18 0 0 1 8把人为配置的静态路由注入到RTB的BGP路由表中 BGP路由通告原则 存在多条路径时 BGPSpeaker只选取最优的使用 非负载分担 BGPSpeaker只把自己使用的路由通告给相邻体BGPSpeaker从EBGP获得的路由会向它所有BGP相邻体通告 包括EBGP和IBGP BGPSpeaker从IBGP获得的路由不向它的IBGP相邻体通告 如果存在RR呢 BGPSpeaker从IBGP获得的路由是否通告给它的EBGP相邻体要依IGP和BGP同步的情况来决定连接一建立 BGPSpeaker按照以上原则 把自己所有BGP路由通告给新相邻体 BGP路由通告原则 BGPSpeaker从IBGP获得的路由不向它的IBGP相邻体通告 BGP路由表与系统路由表的关系 存在多条路径时 BGPSpeaker只选取最优的使用 非负载分担时 BGPSpeaker只把自己使用的最优路由通告给相邻体BGPSpeaker只把自己使用的最优的路由加入到路由表中 BGP同步 BGPSpeaker从IBGP获得的路由是否通告给它的EBGP相邻体要依IGP和BGP同步情况决定 解决方法 RB上配置静态并发布让同步或者取消同步 取消同步的条件 全连接 但是全连接也会产生一个问题 IBGP缺省不改变下一跳 IBGP全互联 IBGP全互联AS内部的所有路由器都运行BGP 就可以关闭所有路由器的同步 而不影响路由的通告和连通性 随之产生的问题 当as内部路由器数量很多时 需要建立N N 1 2个ibgp会话 带来过度的系统开销 扩展性不好 即15个路由器的AS 需要建立15 15 1 2 105个ibgp会话 IBGP全互联的解决方案 路由反射器AS内部的所有路由器都运行bgp 在AS内部部署路由反射器 构建hubandspoke的ibgp 会话数为N 1 然后关闭所有bgp路由器的同步 问题 此方案可以使bgp路由器传递ibgp路由到ebgp 并保证bgp路由的连通性 但是对物理拓扑有很大的限制 BGP路由反射 路由反射器 RouteReflector AS101 AS100 AS102 IBGP EBGP RR Client Client Client client client nonclient AS100 RR AS200 路由反射器的规则 RR从clients和nonclients收路由更新后路由反射的规则按照BGP的基本选路原则 选出最佳路由 只通告最佳路由从client收到的更新 反射到nonclients和clients从nonclient收到的更新 反射到clients从EBGP邻居收到的更新 反射到所有nonclients和clients IBGP全互联的解决方案 2 bgp联盟AS内部的所有路由器都运行bgp 把一个原始的AS基于网络拓扑划分为若干个sub AS 又称联盟AS 联盟AS之间的bgp邻居叫做联盟ebgp 不需要fullmeshbgp会话 在每个联盟AS内部运fullmeshibgp或者hubandspoke反射器 然后就可以关闭所有路由器的bgp同步功能 结论 bgp联盟结合路由反射器的方式 较好的解决了bgp的同步规则带来的需求 是最为有效的解决方案 BGP联盟 联盟 Confederation AS100 IBGP EBGP AS1001 AS1003 AS1002 AS101 EBGP Confed 第1章BGP协议概述第2章BGP工作原理第3章BGP路由属性 内容介绍 BGP属性作用 BGP属性的作用 描述路由的一组参数 BGP根据路由的属性选择最佳路由 一条路由可能有多个属性 可以人为置值 以便执行路由策略 表达了路由的特征 同时便于扩展 BGP为什么如此强大 如此受欢迎 就是因为拥有这么多丰富的独门功夫 操纵起路由的时候是易如反掌 BGP属性分类 属性分类 公认属性 Well known 公认必遵 Well knownmandatory 如 OriginAS PathNexthopBGP都认识 且在路由属性中必须携带公认自决 Well knowndiscretionary 如 Local PreferenceBGP都认识 但不一定必须携带可选属性 Optional 可选可传递 Optionaltransitive 如 Community可以不认识该属性 但该属性可以传递到其他BGPspeaker可选不可传递 Optionalnon transitive 如 MED可以不认识该属性 不可以传递给其他BGPspeaker BGP的路由属性 1 Origin2 AS Path3 Nexthop4 MED5 Local Preference6 Atomic Aggregate7 Aggregator8 Community 9 Originator ID10 Cluster List11 DestinationPref MCI 12 Advertiser Baynet 13 Rcid Path Baynet 14 MP Reach NLRI15 MP Unreach NLRI16 Extended Communities 1 Origin属性 作用 标识路由的来源起点属性是一个公认必遵属性 它指示路由更新的起源 BGP允许三种类型的起源 某条路由是直接而具体的注入到BGP路由表中的 则origin属性为IGP路由是通过EGP得到的 则origin属性为EGP其他情形下 Origin属性都为Incomplete 2 AS Path属性 公认必遵属性向EBGPpeer通告路由时在AS属性的最左边添加自己的AS号 最左边的是刚经过的AS 最右边的是起源AS 作用一 描述到达目标网络所要经过的AS号序列 EBGP使用AS Path防止循环 作用二 AS路径属性也在影响路由选择 在其它因素相同的情况下 选择AS路径较短的路由 AS Path属性 防止环路 优选AS Path短的路径 3 NextHop属性 公认必遵属性BGP的下一跳属性和IGP的有所不同 不一定就是邻居路由器的IP地址 通常情况下 Next Hop属性遵循下面的规则 BGPSpeaker在向EBGP对等体发布某条路由时 会把该路由信息的下一跳属性设置为本地与对端连接的接口地址 BGPSpeaker将本地始发路由发布给IBGP对等体时 会把下一跳属性设置为发起该路由的路由器的接口地址 BGPSpeaker在向IBGP对等体发布从EBGP对等体学来的路由时 并不改变该路由信息的下一跳属性 NextHop属性 AS100 AS200 1 1 2 1 24 D 8 0 0 0 Next Hop 1 1 1 1 1 1 1 1 24 EBGP EBGP D 8 0 0 0 Next Hop 1 1 2 1 IBGP D 8 0 0 0 Next Hop 1 1 2 1 AS300 IBGP D 8 0 0 0 8 0 0 0 1 1 3 1 24 RTA RTB RTC RTE RTF Next Hop 1 1 3 1 4 Localpreference属性的使用 Localpreference本地优先级公认可选属性 缺省local pref为100一般只在AS内部IBGPpeer之间传递 不会传递给ebgppeer可以修改设置local pref的值 优选较高值的路由 Local Preference属性 D local pref1100 D local pref2200RTA就会优先选择本地优先级高的local pref2 假如RTF上还有19的A类地址 如果想要RTA访问它的时候 数据通过路由器RTD走 可以如何实现 这样就实现了数据的负载均衡 并有备份 5 MED属性的使用 Medmulti exit disc任选非传递属性优选较低MED值的 不跨AS传播相对于local pref 可以把路由策略传递给ebgppeer除非配置了 always compare med 其它时候永远只比较来自同一AS的路径 MED Multi Exit DISC 属性 6 Community团体属性 作用 标识一些有相同性质的前缀 给路由打标记 以便统一处理 实现路由过滤和路由选择Community不限于一个网络或一个自治系统 没有物理边界一个路由可以有多个团体属性 公认的CommunityNO ADVERTISE 不通告给任何的BGP对等体 NO EXPORT 不通告给EBGP对等体 INTERNET 可以通告给所有的其他BGP对等体 LOCAL AS 表示本路径不发布到本AS外部 当配置联盟时 本路径不发布给其它的自治系统或子自治系统 私有community Community团体属性的使用 私有团体是对用户有意义的数字四个字节 为增加可读性 可配置为aa nn 一般aa建议为AS号 nn代表业务 缺省在peer之间不传递community属性 必须针对特定peer使用命令修改 才能将community属性发送出去 BGP路由选优过程 综合起来 本地BGP路由选优的过程为 首先丢弃下一跳 Next Hop 不可达的路由 无条件优选带Label的IPv4路由 优选协议优先级最高 Preference值小的路由 优选本地优先级 Local Pref 最高
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中劳动课程课件
- 高三网课自律课件
- 公共交通枢纽环境卫生清扫与垃圾收运合同
- 蔬菜大棚租赁与有机农产品销售合作合同
- 水上娱乐项目租赁合同终止及权益补偿协议
- 髋关节灵活度训练课件
- 制作卡通形象发展规划方案
- 医院监控管理规定
- 优惠力度大购物乐趣多
- 园艺营养土选购技巧:助力植物健康成长
- 民航企业管理概论课件
- 解读学习2025年《住房租赁条例》培训课件
- Q-JJJ 9002-2025 铁路建设项目安全穿透式管理实施指南
- 视网膜静脉周围炎诊断
- 睾丸鞘膜积液护理查房
- 小学健康心理课件
- 政法干警执纪监督心得体会
- 安阳职业技术学院《影视置景工艺》2023-2024学年第一学期期末试卷
- DB45∕T 2952-2024 高标准农田耕地质量评价技术规程
- 安全生产合规管理
- 肩袖损伤护理常规
评论
0/150
提交评论