BGP协议详解
创作时间:
作者:
@小白创作中心
BGP协议详解
引用
CSDN
1.
https://blog.csdn.net/qq_23930765/article/details/146438489
BGP(边界网关协议)详解
BGP(Border Gateway Protocol) 是互联网中用于在不同自治系统(AS, Autonomous System)之间交换路由信息的核心协议。作为路径矢量协议,它负责在互联网骨干网中确定最优路径,是唯一广泛使用的外部网关协议(EGP)。以下从多个维度深入解析BGP的关键特性。
一、核心概念
- 自治系统(AS)
- 定义:由单一管理机构控制的一组网络设备(如ISP、大型企业网络)。
- AS编号范围:公有ASN(1-64511)、私有ASN(64512-65534)。
- 关键作用:BGP通过AS路径属性避免路由环路。
- BGP类型
- eBGP(External BGP):不同AS间的路由交换(默认TTL=1)。
- iBGP(Internal BGP):同一AS内的路由同步(需全互联或路由反射器)。
- 协议细节
- OSI层:应用层协议,基于TCP端口179,确保可靠传输。
- 增量更新:仅传播变化的路由,高效节省带宽。
二、BGP报文类型
报文类型 | 功能描述 | 触发条件 |
---|---|---|
OPEN | 建立BGP对等体会话,协商参数(如Hold Time) | 初始连接时发送 |
UPDATE | 携带路由更新(新增/撤销路由) | 网络拓扑变化时 |
KEEPALIVE | 维持会话存活(默认60秒间隔) | 定期发送,避免会话超时 |
NOTIFICATION | 报告错误并终止会话(如版本不兼容) | 检测到致命错误时 |
三、关键路径属性(Path Attributes)
- AS_PATH
- 类型:强制(必须存在)
- 作用:记录路由经过的AS序列,用于防环和路径选择。
- 示例:
表示路由经过AS64500和AS64501。AS_PATH 64500 64501
- NEXT_HOP
- 类型:强制
- 特殊规则:eBGP通告时修改为自身接口地址,iBGP保持原值。
- LOCAL_PREF(本地优先级)
- 类型:可选(仅iBGP传播)
- 作用:在同一AS内优选高值路径(默认值100)。
- MED(Multi-Exit Discriminator)
- 类型:可选
- 应用场景:向相邻AS建议入口点,值越小优先级越高。
- COMMUNITY
- 类型:可选
- 常见值:
- NO_EXPORT(不传出联邦)
- NO_ADVERTISE(仅限本地AS)
四、BGP路由决策过程(逐级筛选)
- 权重(Weight)
- Cisco私有属性,本地路由器优先级(值越高越优)。
- LOCAL_PREF
- AS内部统一策略,全局优先级指标。
- AS_PATH长度
- 优选路径最短的AS_PATH(可通过
bgp bestpath as-path ignore
跳过)。
- ORIGIN类型
- 优先级:IGP(i)> EGP(e)> Incomplete(?)。
- MED比较
- 仅在相邻AS间生效,需确保比较的MED来自同一AS。
- eBGP优于iBGP
- 外部路由优先于内部路由。
- IGP度量
- 优选到达NEXT_HOP的IGP成本最低路径。
五、高级部署场景
- 路由反射器(Route Reflector)
- 解决iBGP全互联问题,通过Cluster-ID标识反射器组。
- 规则:反射器不修改路由属性,仅传递路由。
- BGP联邦(Confederation)
- 将大AS划分为子AS(使用私有ASN),外部显示为单一AS。
- MP-BGP(多协议扩展)
- 支持IPv6、VPNv4(用于MPLS VPN)、组播等。
- 关键属性:AFI/SAFI(地址族标识)。
六、安全与优化
- 前缀劫持防护
- RPKI(资源公钥基础设施):验证AS对IP前缀的所有权。
- BGPsec:为路由更新提供加密签名(尚未大规模部署)。
- 路由聚合
- 使用
aggregate-address
命令减少路由表条目。 - 条件:至少一条明细路由存在。
- 路由阻尼(Damping)
- 抑制频繁震荡的路由,惩罚值超过阈值则暂停广播。
七、典型应用案例
- 多宿主(Multihoming):企业通过双ISP接入互联网,使用BGP实现负载均衡和故障切换。
- 互联网交换点(IXP):通过BGP Peering实现AS间直接互联,减少中转成本。
- 云网络互联:AWS Direct Connect、Azure ExpressRoute基于BGP与用户网络对接。
总结
BGP作为互联网的“粘合剂”,其复杂性和灵活性使其成为构建大规模网络的核心。掌握BGP不仅需要理解协议机制,还需结合实际策略设计(如流量工程、安全加固)。对于网络工程师而言,BGP的深度优化能力(如利用Community属性实现精细控制)是体现专业水平的关键领域。
热门推荐
物业服务质量如何监管?
怎么深入学习嵌入式
杭州民营经济总部领军企业占全省近半,东部湾新城成总部经济新高地
6部冷门小众高分电影,你可能一部也没看过!
三个月小狗需要接种哪些疫苗?疫苗接种的常见问题解答
氢储能技术科普:能量密度是电化学储能的100多倍
常见呼吸道疾病健康科普:流感、普通感冒、肺炎支原体感染如何区分?
办公软件怎么进行筛选
行走中的“新春第一会”!遂溪这些高质量发展课题被置顶
雷锋名言十个字的
身份管理系统为什么要结合零信任做迭代升级
三菱劲炫首保项目,新劲炫首保注意事项
中焦不通的10个典型表现!8种运动打通中焦,排出浊气
皮肤管理照片如何拍照的
上春山,膝盖保护不可忘:专家教你3招
如何评估半导体公司的市场前景?这种评估对投资决策有何参考价值?
公积金集中封存的流程是什么?这个流程中需要注意哪些细节?
【优秀教师典型案例】爱与责任的守护者——谷松青
三乙醇胺102-71-6:属性、用途与合成
国家药监局发布近视控制医疗器械指导原则,专家提醒:户外活动仍是最佳防控手段
探索公司财务审批软件:功能与应用概览
一文搞懂 EMC 基础:从原理到降噪,全是干货!
可转债什么时候转股
现代超写实雕塑:艺术与技术的完美交融
最近发烧、嗓子疼的人好多,该如何应对?
数据治理项目实施:数据标准在数据治理中的落地实践
如何在手机上查看网络延迟(Ping)值?
尿糖阳性的临床意义——阳性、阴性常见于哪些情况?
药物相互作用:当两种药物不再和睦相处
ADC的指标详解:SINAD、ENOB、SNR、THD、THD+N、SFDR