Page 402 - 《软件学报》2026年第4期
P. 402

徐易 等: 基于真实源地址验证的轻量共识机制                                                          1843


                 体效率.
                    在实际运行中, 网络信任联盟的工作流程分为两个阶段: 激活阶段和动态更新阶段. 激活阶段主要面向已完全
                 部署真实源地址验证技术的地址域. 这些地址域相互验证对方的真实源地址验证技术部署情况, 建立地址域粒度
                 的信任关系及真实地址域前缀表. 构建完成后, 信任联盟基于前缀关系对联盟内的地址域进行聚合. 动态更新阶段
                 则涵盖   3  种情景: 新地址域加入信任联盟、信任联盟的动态维护以及地址域退出信任联盟. 在动态更新阶段, 信任
                 联盟需验证地址域的真实源地址验证技术部署情况, 并基于前缀树重新进行父子节点聚合或兄弟节点聚合. 完成
                 聚合后, 联盟会更新真实地址域前缀表, 确保联盟内的地址域列表及信任关系始终保持一致.
                  4.1   网络信任联盟激活
                    在激活阶段, 网络信任联盟采取先建立地址域间信任关系、后进行全局共识的方式, 以维护联盟内统一的信
                 任基础. 具体而言, 拟加入信任联盟的地址域需向其他已完全部署真实源地址验证技术的地址域发起通信请求. 接
                 收方通过验证请求方的真实源地址验证技术部署情况, 以筛选并排除恶意或误操作的地址域. 验证通过, 双方建立
                 域间信任关系. 在地址域间通信结束后, 信任联盟会汇总所有拟加入联盟的地址域信息, 根据                            IP  前缀长度从短到
                 长对这些地址域的真实源地址验证技术的部署情况进行共识验证. 通过让所有地址域参与共识过程, 信任联盟确
                 保了真实源地址验证技术部署信息的全局一致性, 从而构建信任基础, 并有效防止恶意或误操作的地址域加入信
                 任联盟.
                    在实现灵活的信任传递后, 网络信任联盟借助前缀树对联盟内地址域进行聚合. 具体如算法                             1  所示.
                 算法  1. 真实地址域前缀树、前缀表生成算法.

                 输入: 已经完全部署真实源地址验证技术的              IP  地址域列表  IP_domain_table;
                 输出: 网络信任联盟真实地址域前缀树和前缀表.
                 FOR IP_domain in IP_domain_table:
                    FOR bit in IP_domain:
                      // 判断是否可以进行父子节点聚合, 若当前地址域存在完全部署了真实源地址验证技术的上级域, 则
                       不将其纳入信任联盟
                      IF cur_node.has_domain = True:
                        cur_node = tree_root
                        BREAK
                      // 若不存在, 则纳入
                      IF bit = IP_domain.end:
                        cur_node.has_domain = True
                        table.add(IP_domain)
                        cur_node.remove(sons)
                        table.remove(cur_node.sons)
                        // 递归方式判断是否可以进行兄弟节点聚合, 若当前地址域存在相邻地址域可构成更大的地址域,
                         则将该更大的地址域纳入信任联盟
                        WHILE cur_node.father.ano_son.has_domain = True:
                               combine(cur_node, cur_node.father.ano_son)
                        END WHILE
                    END FOR
                 END FOR

                    网络信任联盟通过前缀树记录联盟内地址域, 并根据地址域间的前缀关系进行聚合, 在确保信任联盟覆盖率
   397   398   399   400   401   402   403   404   405   406   407