边界网关协议(Border Gateway Protocol, BGP)
[1],是互联网核心路由架构的事实性标准协议,承担不同自治系统(Autonomous System, AS)间可达性宣告的执行与路径的抉择,直接影响流量轨迹和全局路由收敛
[2]。BGP运行基于信任机制,但其内生性安全验证机制的缺失,致使其长期面临路由劫持、前缀伪造等安全风险。在域间网络中,域间流量牵引技术具有重要价值
[3],既可用作前述威胁的缓解手段,也是运营商执行备份链路负载均衡、处置突发流量黑洞、实施DDoS流量清洗
[3],以及保障服务等级协议
[4]的核心技术支撑。
目前,业界普遍采用的域间流量牵引技术主要包括AS路径预置、子前缀通告以及利用预定BGP团体属性进行调控等
[4-5]。这些技术虽然被广泛部署,其固有局限却不能忽视:AS路径预置对入站流量的调控粒度较粗,且没法越过目标的结构性路径倾向
[6];子前缀宣告能实现精准的域间流量牵引,但会加剧全球路由表的膨胀并扩大路由更新的传播范围
[7];利用预定义BGP团体属性进行调控的功能比较丰富、用法比较灵活,实际利用时却常受限于策略协调与标准化程度;Birge-Lee等
[8]提出的SICO框架使用BGP团体属性实现了精细域间流量操纵,其牵引流程却高度依赖人工试探和对网络策略细节的先验认知,缺乏对路径可达性、商业合规性及全局收敛稳定性的保障。总体而言,现有手段的运作高度倚重人工经验的介入,自动化程度低,且难以在达成目标(如DDoS流量清洗或故障路径规避
[9])的同时,有效规避服务中断与收敛延迟等衍生副作用
[10-11]。
针对上述局限,本文提出一种能够实现精确控制影响范围的域间流量牵引方案。该方法的核心思路在于,首先对BGP的路由决策机理进行系统分析,结合AS层级拓扑与路由策略意图(策略感知),并利用BGP团体属性作为执行策略的手段,从而构建一个“感知—决策—执行”的控制框架。
本文主要工作包括如下3点。
1)提出一种基于控制平面精微操作的域间流量牵引方法,能够对网络拓扑和路由策略进行双重感知,将AS间商业关系、拓扑层级等结构信息与细粒度的策略意图相结合,实现比传统方法影响范围更可控、调控目标更精确的流量引导。
2)构建基于控制平面精微操作的域间流量牵引方法的策略组合规划与配置自动生成规划框架,能够将流量牵引的特定目标自动转化为可执行的BGP路由策略配置,降低人工操作的不确定性、复杂性及由此引发的收敛延迟风险。
3)搭建基于实体路由器的真实域间路由骨干网络环境,验证了该方法在实现精准流量牵引目标的同时,能有效减少路由更新扰动、避免路由表膨胀和冗余路径探索,并显著提升域间流量控制与调度的有效性和自动化水平。
1 基础知识
1.1 边界网关协议
BGP属于路径矢量路由协议,通过传播目的前缀的可达性与路径属性,让路由器能形成一个全网范围的域间拓扑与可达关系的认知,从而支持跨AS的路由转发与策略控制。
当路由器接收到多条指向同一前缀的路径时,BGP先按最长前缀匹配,再依据属性选择:AS路径用于环路检测,本AS编号一旦出现,路径将被直接丢弃。本地优先级在出口选择中权重更高,以体现策略。若优先级相同,则选比AS路径更短的路径
[6]。以上构成了BGP稳定运行的核心基础。
1.2 自治系统与商业关系
互联网由众多自治系统通过BGP进行域间路由互联,其路由策略受AS间商业关系约束。AS关系通常抽象为两类:提供商—客户关系与对等关系。
在提供商—客户关系中,客户付费获取转发服务,并向所有邻居通告自身及从上游学到的路由;提供商则仅将客户路由通告给其客户或对等体,避免向上游传播。在对等关系中,双方免费交换流量,路由传播更为谨慎,一般只向下游客户通告。此类传播行为符合Gao-Rexford原则与无谷(No-Valley)
[2]原则,在实践中有效维持了域间路由的稳定性。
1.3 BGP团体属性
BGP团体属性是一种可传递的路径属性,用于对路由进行标记与分组,以简化策略配置,可跨AS传播,但传递范围取决于中间AS是否保留该属性。标准团体属性采用32位编码,格式为AS_number:Value,AS_number标识管理域,Value承载分类或动作语义。其核心作用是对路由进行分类标记,而动作型语义通常由运营商本地约定,用于触发如优先级调整、传播控制等行为。扩展团体属性在编码长度上有所扩展,可携带更丰富的结构化信息,支持如VPN标识等更复杂的策略语义。
2 跨域流量牵引实现原理
2.1 问题定义与基本假设
考虑两个正在进行正常通信的自治系统:源AS(记作)与目的AS(记作),目标前缀归属于。正常情况下,至目标前缀的数据流沿原始域间路径转发。在不影响端与端之间通信语义的前提下,考虑是否可以引入第3方可控AS(记作)作为稳定中转节点,将流量牵引至经由该的新路径。
该方法的目标是在不修改源自治系统与目的自治系统归属关系以及端到端通信语义的前提下,利用处于第3方的可控的牵引对跨域路径竞争关系进行精细调节,使源到目的的业务流量偏向经过的指定中转路径。
本文方法满足以下设计约束:不要求修改其本地路由策略;不依赖跨域隧道或覆盖网络;仅假设具备常规多目的连接能力,并可对其边界路由器配置出站策略;假设所需BGP团体属性语义可通过运营商公开策略文档或对接协商获得。
2.2 方法介绍
本文方法的本质在于,通过在BGP路由宣告中附加特定的BGP团体属性,对到的路径上的AS实施远程策略控制。该机制通过以下两个维度的协同操作实现。1)路径优选:最大化路径对的吸引力。2)传播抑制:严格限定路由信息的传播边界,防止非预期扩散和路由环路,保障全网路由稳定性。
如
图1所示,假设已选定了一条合法的引流路径
,表示为序列
。
将在向其直接上游邻居(即路径
上的下一跳节点)宣告到目标前缀的路时,附加一组复合BGP团体属性指令。这些指令将沿路径
传播并触发沿途AS执行相应的路由策略。
1)路径优选
为确保在路径的每一个路由决策点,流向的方向始终被选为最优出口,本文方法利用BGP选路原则中优先级最高的属性——本地优先级进行干预。尽管该属性仅在自治系统内部生效,但多数ISP(Internet Service Provider)及IXP(Internet Exchange Point)允许下游客户通过预定义的BGP团体属性远程设定对应路由的本地优先级值。
操作时,向通往特定上游AS的路由宣告中添加映射到高优先级的团体属性(如‑Preference)。当接收到带此标签的路由时,对端路由器将根据入站策略将其本地优先级提升至预定高值。由于默认路由优先级通常较低,经提权的路径将在本AS胜出,且此优势会沿路径逐跳向上传递,形成级联效应,从而保证整条路径在竞争中持续保持最优状态。
2)传播抑制
为防止路由泄露导致的路由环路或对非目标网络的非预期影响,须将路径的传播严格限制在预期拓扑范围内。所以,本文控制在宣告中附加限制传播范围的团体属性,如标准的传播抑制(NO_EXPORT)属性。
传播抑制要求接收AS仅在本AS内传播该路由,禁止向任何eBGP邻居转发。这样发布的路由通告可阻断经对等链路的非必要扩散,并防止路由回流至下行提供商而导致黑洞或环路,从而将引流影响限定在到的路径范围内,对互联网其余部分保持透明。
综上所述,通过组合使用“路径提权”与“传播抑制”策略,将接收到一条经过特殊工程处理的、具备高优先级的路由通告,从而将发往的流量主动牵引至,且该过程不会破坏自身的出站路径及网络其余部分的连通性。
3 跨域流量牵引策略规划框架
在基于控制平面精微操作的跨域流量牵引方法基础上,为提升其可部署性与自动化水平,本文进一步提出一个以策略组合为核心的规划框架。该框架系统整合了前述方法,并提供了完整的实现架构。
该框架如
图2所示,核心流程包含3个阶段:1)转发路径确定,确定牵引操作的安全底线,防止网络阻断;2)引流路径构造与筛选,在网络拓扑中搜索符合商业关系的候选路径;3)策略组合与配置文件生成下发,生成包含路径提权与传播抑制功能的BGP团体属性策略集合,并下发至物理网络。
本框架的核心逻辑通过“精准流量牵引策略生成算法”实现。该算法输入、、及网络状态知识,输出可部署的BGP团体属性策略集合π。具体逻辑如算法1所示。
算法1 精准流量牵引策略生成
输入:源AS(、牵引AS()、目的AS(
输出:可部署的BGP策略
1. //阶段1:转发路径确定
2. Path_forward = QueryRoutingTable(, ); //确定到的实际优选路径
3. (Path_forward is NULL) return FAILURE;
//若无可达路径,则操作中止
4. //阶段2:引流路径的构造与筛选
5. Candidate_Paths = FindPaths(, );
//枚举源到牵引节点的所有物理路径
6. st_Path = Select(Candidate_Paths) where:
7. Constraint A: Is Loop Free(Path + Path_forward); //无环性检查
8. Constraint B: Is Valid(Path, Gao-Rexford);
//商业关系传播合法性
9 Constraint C: Has community Capability(Path);
//具备策略操控能力
10. //阶段3:策略组合与配置文件生成合成与下发
11. Strategy = Empty;
12. Current_Node = ;
13. While (Current_Node!= ) {
14. Next_Hop = Get Next Hop(Best_Path, Current_Node);
15. //合成增强指令:路径提权
16. Comm_Enhance = Generate community(Next_Hop, ACTION_RAISE_LOCAL_PREF);
17. //合成抑制指令:传播抑制功能,限制传播范围,保护转发路径并避免副作用
18. Comm_Suppress = Generate community(Next_Hop, ACTION_NO_PEER/NO_EXPORT);
19. .append({Target: Next_Hop, Communities: [Comm_Enhance, Comm_Suppress]});
20. Current_Node = Next_Hop;
21. }
22. Return ;
上述算法的设计逻辑可概括为“先保可达、再保可选、后保可控”。
首先,通过查询到当前的转发路径,确认对可达;若本身不可达,算法直接返回失败,以避免黑洞风险。
其次,算法在到之间枚举候选路径并选择引流路径。不同于一般最短路径搜索,算法要求路径同时满足3类约束:1)无环性约束,即要求与拼接后不形成环路,防止回流导致的持续震荡或不可达;2)商业合规性约束,路径需满足无谷原则,以保证在现实导出规则下路由具备可传播性与可被选中的可能;3)策略可控性约束,即路径上的关键AS需支持基于BGP团体属性的入站策略触发与传播抑制能力,否则难以形成稳定的选路优势或控制影响范围。
最后,算法沿选定引流路径逐跳生成策略集合。对关键的BGP决策点采用“增强+抑制”操作的组合,既能通过提高的本地优先级使得引流的路由成为优选,又能对路由向对等或外部方向的扩散进行有效地限制,从而避免了路由的泄露、侧向的扩散以及由此引发的回流与环路的风险等。这样不仅能实现牵引的预期目标,还能将策略的影响范围约束在预期范围内,从而大大提高了引流的安全性与可预测性。上述算法能够在复杂度(n为拓扑中节点的个数)实现从域间流量牵引目标到控制平面策略组合的系统规划。
4 实验及结果分析
为评估所提跨域流量牵引方法的有效性与可控性,在实体网络环境中开展实验,从控制面与数据面对牵引过程进行同步观测分析。
实验重点关注:1)牵引路径增长时,控制面收敛与数据面迁移是否保持稳定。2)与典型方法相比,在牵引效果、收敛速度及影响范围上是否更具优势。
通过重复实验与指标统计,验证该方法可在无路由震荡的前提下实现可重复、可观测的精准牵引。
4.1 实验环境
本文搭建由21台实体路由器组成的测试环境(拓扑见
图3)。实验统一选取同一目标前缀作为牵引对象。控制面观测在
及关键中间AS侧采集BGP路由变化,依据源
路由表中目标前缀的最优路由及切换时刻判定收敛;数据面观测在主、备出口链路采集业务流量变化,并结合Traceroute验证转发下一跳是否按预期切换并保持稳定,从而确认牵引对实际转发路径的影响。
4.2 评估指标
实验采用控制面与数据面两类指标刻画牵引过程的收敛特性。
控制面收敛时间:从t0起算,到侧最优路由在路由表中完成变换经过的时间。
数据面切换时间:从t0起算,到业务流量主路径完成稳定迁移的时间(往后traceroute显示的下一跳不变,保持10 s的时刻)。
控制距离h:ASs到ASc的AS跳数。
为量化牵引策略对网络范围内路由变化的影响,引入影响扩散范围,越小,表示对非目标区域的扰动越弱。
式中:代表发生路由表更新的AS节点数量;代表方案路线中的AS数量;代表网络中AS节点的总数。
4.3 域间流量牵引的有效性验证
为了验证方法的有效性,本节以一个具体的场景为例进行实验。
如
图4所示,
对应AS6、
对应AS1、
对应AS4,其原始路径为
。将来自AS1去往AS4的流量牵引至经由AS6的路径,同时确保操作不影响其他无关流量与网络的整体稳定性。
到间的转发路径用于承接牵引后的转发。在此基础上,需要在到之间构造1条可传播且可控的引流路径。结合拓扑与商业关系约束,选定的引流路径为:。该路径呈逐跳c2p“上升”结构,满足无谷约束,因此在现实BGP导出策略下具备传播基础;同时,路径节点具备BGP团体属性,为后续策略合成与影响范围控制提供了实施条件。
为了使目标流量在侧能够稳定选择经由的路径,本文采用“选路增强+传播抑制”的策略组合。
一方面,通过在宣告通往AS4的路由上附加可映射为“提高本地优先级”的BGP团体属性,实现引流路由在决策过程中的优先级提升。在面向与的策略中分别触发相应的提权标签(例如,AS5:higher localpref与AS1:higher localpref)。在该配置生效后,引流路由在及选择中获得稳定优势,从而实现对特定源到特定目的流量的定向牵引。
另一方面,为避免引流路由经由对等链路无序扩散并引发路由泄露或回流风险,需要在路径的关键节点施加传播抑制策略。在等存在侧向互联的节点处附加NO_EXPORT类BGP团体属性(例如AS1:NO_EXPORT,具体值依运营商社区约定而定),将传播限制在接收AS内部。
通过上述限制,可将策略影响范围压缩在预期拓扑内,从而降低对互联网其他区域的扰动并提升部署的安全性。
4.4 ASs到ASc的AS跳数与收敛时间的变化趋势
为验证牵引路径增长时收敛过程的稳定性,在满足无谷原则且支持属性传播的拓扑中,固定其他条件,仅调整AS
s至AS
c的AS跳数
h(取1、2、3)。每组实验均在t0时刻触发牵引,并持续发送业务流量以同步观测控制面与数据面变化。每组重复50次,取平均值。该方法在不同路径长度下的收敛稳定性与可控性趋势如
图5所示。
从
图5可得,随着AS
s到AS
c的AS跳数
h从1增加到3,控制面收敛时间
与数据面切换时间
都呈单调上升趋势,整体增长较为平滑,没有出现抖动或异常突增,说明牵引路径变长后系统仍保持良好的稳定性。
在各个h场景下,与的数值始终接近,且曲线趋势一致,表明控制面路由收敛与数据面切换之间不存在明显的不同步现象,牵引生效过程具有较好的可控性。
当h从1增加到2、3时,与仅表现出近似线性的小幅增加,未随路径长度增加而指数放大,说明本文方法对路径长度变化不敏感,对多跳牵引场景具有较好的扩展性。
综合分析,在满足无谷原则且允许路由属性传播的前提下,本文牵引机制均能在可接受时间内实现控制面与数据面协同收敛,充分验证了其在收敛稳定性和时延可控性方面的有效性。
4.5 对比实验
在相同拓扑与相同业务目标前缀下,本文进一步将所提方法与两类典型域间流量工程手段进行对比:AS路径预置与子前缀通告。其中,AS路径预置通过在更高优先级的备选路径上进行AS路径长度扩展以降低其可选性,从而使引流路径成为优选;子前缀通告则通过在AS
c上宣告更精确前缀,利用最长前缀匹配吸引到达该前缀的流量。对比评估从牵引是否成功(源端流量是否稳定切换至目标路径)、收敛时间(
)以及影响扩散范围
等3个方面展开,实验结果如
表1所示。
从
表1可见,AS路径预置在本地优先级处于劣势时难以实现牵引。子前缀通告虽能牵引,但因宣告更精确前缀易吸引全网流量,影响范围较大。相比之下,本文方法在较短
与
下即可完成牵引,且对非目标区域的路由更新影响近乎为零。本文基于实体路由器构建物理测试环境,从跳数变化和对比两个维度评估所提跨域精准流量牵引方法。实验结果表明,该方法在牵引路径变长时仍能稳定收敛,并在牵引成功性、收敛速度及影响扩散范围方面优于典型传统方案,能够在不引入路由震荡的前提下实现可重复、可观测的精准流量牵引。
5 结束语
针对域间流量牵引中精准控制与稳定收敛难以兼顾的问题,本文提出一种基于控制平面精微操作的域间流量牵引方法。该方法深度融合BGP选路机制与AS商业关系约束,通过组合“路径提权”与“传播抑制”策略,并利用BGP团体属性实现流量的精确引导与影响范围控制。所构建的规划框架具备对路径异常与策略兼容性的基本容忍能力。实验结果表明,该方法能在不引起路由振荡的前提下实现跨域精准牵引,并有效控制策略影响范围。
国家自然科学基金(62402524)