发明名称 一种电力通信网络中基于密度聚类算法的OSPF区域划分方法
摘要 本发明提出一种电力通信网络中基于密度聚类的OSPF区域划分方法,通过实际网络节点地理位置因素,采用密度聚类方法将网络划分为骨干区域和非骨干区域,结合电力通信网络实际情况通过选择未来区域内的中心汇聚节点对邻居节点进行区域划分,解决区域划分的覆盖度和合理度问题。从网络全局流量负载均衡的角度出发,划分后的区域路由器数量应该在满足区域最大承载量的同时,保证各个区域尽可能均匀分布,从网络局部流量负载均衡的角度出发,为每个区域设置合适数目的边界路由器,以保证路由路径的多样性,避免域间路由器成为关键节点带来网络性能的降低,提高网络的故障恢复能力。
申请公布号 CN106559266A 申请公布日期 2017.04.05
申请号 CN201611037676.3 申请日期 2016.11.23
申请人 国网安徽省电力公司芜湖供电公司;国家电网公司 发明人 任水华;赵灿明;纪诗厚;李祝红;杜炳
分类号 H04L12/24(2006.01)I 主分类号 H04L12/24(2006.01)I
代理机构 合肥天明专利事务所(普通合伙) 34115 代理人 金凯
主权项 一种电力通信网络中基于密度聚类算法的OSPF区域划分方法,其特征在于,包括以下步骤:(1)区域划分电力通信网络中所有路由器节点维护一跳邻居数据样本集合NB为S{(r<sub>1</sub>,N<sub>1</sub>(r<sub>1</sub>)),(r<sub>i</sub>,N<sub>1</sub>(r<sub>i</sub>)),…,(r<sub>m</sub>,N<sub>1</sub>(r<sub>m</sub>))}, 半径Eps和阈值MinPts,其中,任意路由器节点r<sub>i</sub>∈NB, i=1,…,m,m为电力通信网络中的路由器节点总数,将电力通信网络划分为min(m/M,|A<sub>0</sub>|)个区域,其中,M为每个区域承载路由器节点的饱和容量,|A<sub>0</sub>|为骨干区域边界内路由器的数量;(2)核心节点的确定任意路由器节点r<sub>i</sub>维护一组二维空间数据,表示任意路由器节点r<sub>i</sub>与网络中其他路由器节点v的关系,其中hops表示任意路由器节点r<sub>i</sub>与其他路由器节点v的网络跳数,dist表示任意路由器节点r<sub>i</sub>与其他路由器节点v的地理空间距离,对于任意路由器节点r<sub>i</sub>,以一跳邻居距离E为半径,即采用欧几里得距离计算方式时,值为1,计算任意路由器节点r<sub>i</sub>的E领域集合E(r<sub>i</sub>),若E(r<sub>i</sub>)中包含的元素个数满足核心对象节点的选举条件,则r<sub>i</sub>成为核心对象节点,记作r<sub>h</sub>;NB中所有元素均为待选举的核心对象节点,(3)骨干区域的划分确定核心节点r<sub>h</sub>后,,以核心节点r<sub>h</sub>的一跳邻居节点集合N1(r<sub>h</sub>)为半径范围建立骨干区域,骨干区域的初始边界为A<sub>0</sub>={ r<sub>h</sub>,N<sub>1</sub>(r<sub>h</sub>)},完成骨干区域的划分;(4)非骨干区域的划分核心节点r<sub>h</sub>的E领域E(r<sub>h</sub>)中的所有直接密度可达节点N<sub>1</sub>(r<sub>h</sub>)中任意节点作为种子节点寻找所有与之两跳密度可达的节点集合W,节点集合W为非骨干区域;(5)重复步骤(4),直到所有种子节点聚类过程完成,此时与核心节点r<sub>h</sub>同属一个区域的节点集合W中有可能包含骨干区域的节点,相应的这些交集节点成为非骨干区域与骨干区域的边界路由器节点,加入边界路由器集合,边界路由器集合为DBR={br<sub>1</sub>,br<sub>2</sub>,…br<sub>j</sub>},br为边界路由器,j为边界路由器的数目,NB中未被进行区域划分的其他节点,暂时标记为自由节点;(6)对于NB中选中的其他核心节点,重复步骤(2)‑(5),遍历所有核心节点的区域划分过程,步骤(4)中被标记为自由节点的路由器在遍历所有k个核心节点的过程中部分可能会转换为已聚类节点,在此过程中如果出现某一个已聚类节点同时满足另一个核心节点的区域划分条件,则此节点自动成为两个区域的边界路由器节点,即同时属于两个区域集合,区域划分产生的簇集合为DV={dv<sub>1</sub>,dv<sub>2</sub>,…,dv<sub>k</sub>},dv<sub>k</sub>为区域划分产生的簇, k为簇的数目,每个簇都有相应的核心节点。
地址 241000 安徽省芜湖市镜湖区中山北路18号