《一种优化域间流量的重叠网络构建方法.pdf》由会员分享,可在线阅读,更多相关《一种优化域间流量的重叠网络构建方法.pdf(19页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 (43)申请公布日 (21)申请号 201510006008.3(22)申请日 2015.01.07H04N 21/61(2011.01)H04N 21/647(2011.01)H04N 21/258(2011.01)(71)申请人 电子科技大学地址 611731 四川省成都市高新西区西源大道 2006 号(72)发明人 刘梦娟 马小栓 罗绪成 王巍(54) 发明名称一种优化域间流量的重叠网络构建方法(57) 摘要P2P 直播应用会产生大量跨自治域的网络流量,本发明公开一种 P2P 直播系统的重叠网络构建方法,针对域间流量进行优化,同时保证直播视频的播放质量。方法包括 :第。
2、一,根据自治域之间的物理链路延迟及每个自治域需要建立的输入域间连接数,确定重叠网络中各自治域之间的互连关系;第二,根据每个自治域需要建立的域间连接数目和域内的用户数目,确定每个自治域数据传输的骨干节点和核心节点;第三,在各自治域的核心节点之间建立实际的单向域间连接,用于不同自治域之间的数据单向传输;第四,在各自治域内部建立核心节点、骨干节点、普通节点之间的双向域内连接,用于自治域内部的数据双向传输。(51)Int.Cl.(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书2页 说明书11页 附图5页(10)申请公布号 CN 104506958 A(43)申请公布日 2015.04。
3、.08CN 104506958 A1/2 页21.一种优化域间流量的重叠网络构建方法,其特征在于,包括以下步骤 :步骤 1、根据自治域之间的物理链路延迟,计算重叠网络中需要建立的域间连接,得到自治域互连关系矩阵Link_AS,其中视频服务器所在的自治域为AS0,如 果 Li,j为n表示自治域 i 需要建立 n 条指向自治域 j 的域间数据传输连接,Li,j的初始值设置为 0,NAS表示重叠网络中所包含的自治域个数 ;步骤 2、根据每个自治域需要建立的域间连接数目和域内部的用户数目,确定每个自治域数据传输的骨干节点和核心节点,其中核心节点用于建立不同自治域之间的域间连接,骨干节点用于在自治域内部。
4、的数据中继,每个自治域选择的骨干节点的个数由该自治域需要建立的输入域间连接数、输出域间连接数、自治域内的用户节点数、以及用户节点上传带宽等因素综合决定,核心节点从骨干节点中选择,核心节点数由该自治域的输入域间连接数决定 ;步骤 3、根据自治域互连关系矩阵,在各自治域的核心节点之间建立跨自治域的域间连接,用于不同自治域之间的数据单向传输,域间连接在传输数据包时是单向的,只能由数据提供节点发送数据包给数据接收节点,但是数据收发双方可利用域间连接交换数据包请求、应答、数据包缓存情况等控制信息 ;步骤 4、在每个自治域内部各节点之间建立双向域内连接,包括核心节点之间的连接,骨干节点之间的连接,普通节点。
5、之间的连接,以及核心节点、骨干节点、普通节点之间的连接,域内连接允许节点之间双向传输数据包以及双向交互控制消息。2.根据权利要求1所述的一种优化域间流量的重叠网络构建方法,其特征在于,步骤所述的计算重叠网络中需要建立的域间连接的方法为 :1.1)、确定每个自治域需要建立的提供数据输入的输入域间连接的数目,记为 IN(ASi)(i 1,2,NAS-1),该数目根据当前重叠网络中包含的自治域个数以及每个自治域所包含的用户数进行设置,所述输入域间连接是指从自治域i到自治域j的域间连接,该连接对于自治域 i 是输出域间连接,对于自治域 j 是输入域间连接 ;1.2)、根据每个自治域需要建立的输入域间连。
6、接数目 IN(ASi),确定每个自治域需要建立的域间连接,即确定需要与自治域 ASi(i 1,2,NAS-1) 建立输入域间连接的输入域集合,具体方法为 :1.2.1)、根据自治域之间的物理链路延迟,计算从视频服务器所在的源自治域 AS0到每个其他自治域经过 0、1、2M 个自治域的可达路径,M 是根据当前自治域个数设定的用于控制域间路径长度的阈值,即从源自治域 AS0到其他自治域 ASi(i 1,2,NAS-1) 的所有可达路径的域间路径长度均小于等于 M,所述从源自治域 AS0到自治域 ASi的域间路径长度是指该路径除源自治域和目的自治域外,所经过的自治域个数,每个自治域的可达路径集合记为。
7、 PATH(ASi)(i 1,2,NAS-1) ;1.2.2)、计算 PATH(ASi) 中每条可达路径的域间链路总延迟,选择域间链路总延迟最权 利 要 求 书CN 104506958 A2/2 页3小的可达路径,记为 AS0 ASs ASi,根据该路径确定自治域 ASi需要建立的 1 条输入域间连接为 ASs ASi,将 Link_AS 矩阵中 Ls,i的值自加 1,同时将 ASs加入到 ASi的输入域集合 IN_AS 中,并从 ASi的可达路径集合中将包含域间链路 ASs ASi的所有可达路径删除;1.2.3)、判断自治域 ASi目前确定的输入域间连接数是否达到需要建立的输入域间连接数目 。
8、IN(ASi),如果达到,则执行步骤 1.2.5 ;如果没有达到需要建立的输入域间连接数,则执行步骤 1.2.4 ;1.2.4)、从剩余可达路径集合中选择域间链路总延迟最短的可达路径,记为 AS0 ASm ASi,如果该路径的域间链路总延迟超过设置的允许的最大延迟,则从已经确定的ASi的输入域集合IN_AS中随机选择自治域ASj(ASjIN_AS)建立新的输入域间连接,同时将 Link_AS 矩阵中 Lj,i的值自加 1 ;如果最短可达路径的域间链路总延迟在允许范围内,则根据最短路径确定自治域 ASi需要建立的新的输入域间连接为 ASm ASi,将 Link_AS矩阵中 Lm,i的值自加 1,。
9、将 ASm加入到 ASi的输入域集合中,并从 ASi的可达路径集合中将包含域间链路 ASm ASi的所有可达路径删除,然后返回步骤 1.2.3 重复执行,继续确定新的输入域间连接 ;1.2.5)、判断所有自治域(源自治域除外)的输入域间连接是否都已确定,如果仍有自治域的输入域间连接还没全部确定,则返回步骤 1.2.1,重复执行,直到为所有自治域确定其全部输入域间连接为止,最终得到表示自治域互连关系的矩阵 Link_AS。3.根据权利要求1所述的一种优化域间流量的重叠网络构建方法,其特征在于,步骤3所述的在各自治域的核心节点之间建立跨自治域的域间连接的方法为 :3.1)、遍历自治域互连关系矩阵 。
10、Link_AS,如果 Li,j为 n 表示自治域 i 需要建立 n 条指向自治域 j 的域间连接 ;3.2)、从自治域 i 的核心节点中,随机选择没有建立输出域间连接的核心节点,作为该输出域间连接的数据提供节点 ;如果自治域 i 的所有核心节点都已经建立至少 1 条输出域间连接,则随机选择 1 个核心节点作为该输出域间连接的数据提供节点 ;3.3)、将自治域 j 中的核心节点按照上传带宽降序排列,选择未建立输入域间连接的上传带宽最大的核心节点作为该输入域间连接的数据接收节点 ;3.4)、在选定的数据提供节点和数据接收节点之间建立实际的域间连接,该连接在传输视频数据包时是单向的,只能由数据提供节。
11、点发送数据包给数据接收节点,但是数据收发双方可利用该连接交换数据包请求、请求应答、数据包缓存情况等控制信息 ;3.5)、判断自治域 i 和自治域 j 之间建立的域间连接数是否达到 Li,j表示的值,如果没有达到,返回步骤 3.2 继续建立自治域 i、j 之间的域间连接,如果域间连接数达到 Li,j表示的值,则继续遍历自治域互连关系矩阵,建立其他自治域之间的域间连接,直到建立完所有域间连接为止。权 利 要 求 书CN 104506958 A1/11 页4一种优化域间流量的重叠网络构建方法技术领域0001 本发明属于互联网视频应用领域,特别涉及一种用于 P2P 直播系统的重叠网络构建方法。背景技术。
12、0002 随着 P2P 直播系统在互联网上广泛部署,P2P 直播应用给互联网的骨干链路带来了巨大的流量压力,特别是跨自治域的网络流量导致互联网服务提供商昂贵的带宽开销。究其原因是 P2P 直播系统是运行在互联网应用层上,系统中位于不同自治域的用户节点通过随机选择邻居节点,建立数据传输连接。因此,目前的 P2P 直播系统采用的重叠网络构建方法会产生大量跨自治域的连接及流量。如图 1 所示,自治域 AS0、AS1 和 AS2 之间的域间连接是随机建立的,域间连接的数量不可控制。优化域间流量最直接的方法是将数据传输尽可能限制在自治域内部,减少域间数据传输,即用户节点应该尽可能选择位于同一自治域内的用。
13、户节点作为邻居节点,仅保留必要的跨域连接,用于自治域之间的数据传输。但是完全的本地化方案会使系统变得脆弱,从而影响直播视频的播放质量,如图 2 所示,如果AS0 和 AS1 的域间连接发生拥塞,出现数据包丢失的情况,后续自治域 AS1 的所有用户节点都可能受到影响,即使采用重传机制也会使数据包递交到自治域 AS1 中用户节点的延迟大幅上升,从而影响视频的播放质量。0003 一个良好的折中方法是控制域间连接的数目,使域间连接具有一定冗余,如图 3所示,自治域AS2有2条数据传输的域间连接,因此可以分别从自治域AS0和AS1获取数据,即使 AS0 到 AS2 的域间数据传输连接发生拥塞,AS2 的。
14、用户节点还可以通过另一条域间连接从 AS1 获取数据。另一方面,如果从数据源端到接收者的数据传输路径所经过的自治域太多,即数据包传输路径包含的域间连接太多,会严重影响数据递交延迟,导致视频播放质量下降。本发明提供一种 P2P 直播系统的重叠网络构建方法,用于建立视频服务器和用户节点之间、以及用户节点相互之间的数据传输连接。该方法通过控制系统用户建立的跨自治域的连接数量,达到优化域间流量的目的 ;通过限制数据包递交到每个用户节点的传输路径所经过的最大自治域数量,优化数据包递交延迟,从而保证直播视频的播放质量。本发明只涉及 P2P 直播系统中节点之间数据传输连接的建立方法,不包含数据包的调度和重传。
15、机制。在开发实际的 P2P 直播系统时,本发明提供的重叠网络构建方法需要与数据包调度和重传机制配合使用。发明内容0004 本发明的目的在于控制 P2P 直播系统产生的跨自治域的网络流量,同时保证直播视频的播放质量。为实现上述发明目的,本发明提出一种优化域间流量的重叠网络构建方法,其特征在于,重叠网络中跨自治域的数据传输是由域间连接承担,域间连接是单方向的,只能由域间连接的发送节点向域间连接的接收节点传输数据 ;每个自治域根据需要维护若干条输入域间连接用于从其他自治域获取数据,同时维护若干条输出域间连接用于向说 明 书CN 104506958 A2/11 页5其他自治域提供数据 ;重叠网络中总的。
16、域间连接数是可控的,且能保证从视频服务器到每个用户节点的数据传输路径所经过的自治域个数是受限制的。0005 本发明提出的一种优化域间流量的重叠网络构建方法,包括以下步骤 :0006 步骤 1、根据自治域之间的物理链路延迟,计算重叠网络中需要建立的域间连接,得到自治域互连关系矩阵,用 Link_AS 表示,其中视频服务器所在的自治域为 AS0,如 果 Li,j设置为 n 表示自治域 i 需要建立 n 条指向自治域 j 的域间数据传输连接,Li,j的初始值设置为 0 ,NAS表示重叠网络中所包含的自治域个数,域间连接的具体计算方法如下 :0007 0008 1.1)、确定每个自治域需要建立的提供数。
17、据输入的输入域间连接的数目,记为IN(ASi)(i1,2,NAS-1),该数目根据当前重叠网络中的自治域个数以及每个自治域所包含的用户数进行设置,所述输入域间连接是指从自治域i到自治域j的域间连接,该连接对于自治域 i 是输出域间连接,对于自治域 j 是输入域间连接 ;0009 1.2)、根据每个自治域需要建立的输入域间连接数目 IN(ASi),确定每个自治域需要建立的域间连接,即确定需要与自治域 ASi(i 1,2,NAS-1) 建立输入域间连接的输入自治域集合,具体方法为 :0010 1.2.1)、根据自治域之间的物理链路延迟,计算从视频服务器所在的源自治域 AS0到每个其他自治域经过 0。
18、、1、2M 个自治域的可达路径,M 是根据当前自治域个数设定的用于控制域间路径长度的阈值,即从源自治域 AS0到其他自治域 ASi(i 1,2,NAS-1) 的所有可达路径的域间路径长度均小于等于 M,所述从源自治域 AS0到自治域 ASi的域间路径长度是指该路径除源自治域和目的自治域外,所经过的自治域个数,每个自治域的可达路径集合记为 PATH(ASi)(i 1,2,NAS-1) ;0011 1.2.2)、计算 PATH(ASi) 中每条可达路径的域间链路总延迟,选择域间链路总延迟最小的可达路径,记为 AS0 ASs ASi,根据该路径确定自治域 ASi需要建立的 1 条输入域间连接为 AS。
19、s ASi,将 Link_AS 矩阵中 Ls,i的值自加 1,同时将 ASs加入到 ASi的输入域集合 IN_AS 中,从 ASi的可达路径集合中将包含域间连接 ASs ASi的所有可达路径删除 ;0012 1.2.3)、判断自治域 ASi建立的输入域间连接数是否达到需要建立的输入域间连接数目 IN(ASi),如果达到,则执行步骤 1.2.5 ;如果没有达到需要建立的输入域间连接数,则执行步骤 1.2.4 ;0013 1.2.4)、从剩余可达路径集合中选择域间链路总延迟最短的可达路径,记为AS0 ASm ASi,如果该路径的域间链路总延迟超过系统设置的最大延迟范围,则从已经确定的 ASi的输入。
20、域集合 IN_AS 中随机选择自治域 ASj(ASj IN_AS) 建立新的输入域间连接,同时将 Link_AS 矩阵中 Lj,i的值自加 1 ;如果最短可达路径的域间链路总延迟在允许范围内,则根据最短路径确定自治域 ASi需要建立的输入域间连接为 ASm ASi,将Link_AS 矩阵中 Lm,i的值自加 1,将 ASm加入到 ASi的输入域集合中,从 ASi的可达路径集合中将包含域间连接 ASm ASi的所有可达路径删除,然后返回步骤 1.2.3 重复执行,继续确说 明 书CN 104506958 A3/11 页6定新的输入域间连接 ;0014 1.2.5)、判断所有自治域(源自治域除外)。
21、的输入域间连接是否都已确定,如果仍有自治域的输入域间连接还没全部确定,则返回步骤 1.2.1,重复执行,直到为所有自治域确定其全部输入域间连接为止,最终得到表示自治域互连关系的矩阵 Link_AS ;0015 步骤 2、根据每个自治域需要建立的域间连接数目和域内部的用户数目,确定每个自治域数据传输的骨干节点和核心节点,其中核心节点用于建立不同自治域之间的域间连接,骨干节点用于在自治域内部作为数据传输的中继,每个自治域的骨干节点个数由该自治域需要建立的输入域间连接数、输出域间连接数、自治域内的用户节点数、以及用户节点上传带宽等因素综合决定,核心节点从骨干节点中选择,核心节点个数由该自治域的输入域。
22、间连接数决定 ;0016 步骤 3、根据自治域互连关系矩阵,在各自治域的核心节点之间建立跨自治域的域间连接,用于不同自治域之间的数据单向传输,具体建立方法如下 :0017 3.1)、遍历自治域互连关系矩阵 Link_AS,如果 Li,j为 n 表示自治域 i 需要建立 n条指向自治域 j 的域间连接 ;0018 3.2)、从自治域 i 的核心节点中,随机选择没有建立输出域间连接的核心节点,作为该输出域间连接的数据提供节点 ;如果自治域 i 的所有核心节点都已经建立至少 1 条输出域间连接,则随机选择 1 个核心节点作为该输出域间连接的数据提供节点 ;0019 3.3)、将自治域 j 中的核心节。
23、点按照上传带宽降序排列,选择未建立输入域间连接的上传带宽最大的核心节点作为该输入域间连接的数据接收节点 ;0020 3.4)、在选定的数据提供节点和数据接收节点之间建立实际的域间连接,该连接在传输视频数据包时是单向的,只能由数据提供节点发送数据包给数据接收节点,但是数据收发双方可利用该连接交换数据包请求、请求应答、数据包缓存情况等控制信息 ;0021 3.5)、判断自治域 i 和自治域 j 之间建立的域间连接数是否达到 Li,j表示的值,如果没有达到,返回步骤 3.2 继续建立自治域 i、j 之间的域间连接,如果域间连接数达到 Li,j表示的值,则继续遍历自治域互连关系矩阵,建立其他自治域之间。
24、的域间连接,直到建立完所有域间连接为止 ;0022 步骤 4、在每个自治域内部各节点之间建立域内连接,包括核心节点之间的连接,骨干节点之间的连接,普通节点之间的连接,以及核心节点、骨干节点、普通节点之间的连接,域内连接允许自治域内的节点之间双向传输数据包以及双向交互控制消息。附图说明0023 图 1 是本发明背景技术中描述的采用随机方案建立数据传输连接的重叠网络示意图 ;0024 图 2 是本发明背景技术中描述的采用完全本地化策略建立数据传输连接的重叠网络示意图 ;0025 图 3 是本发明背景技术中描述的采用域间流量优化策略建立数据传输连接的重叠网络示意图 ;0026 图 4 是本发明提供的。
25、重叠网络构建方法的整体流程图 ;0027 图 5 是本发明提供的计算域间连接的一种具体实施方式的流程图 ;说 明 书CN 104506958 A4/11 页70028 图 6 是本发明提供的核心节点之间建立域间连接的一种具体实施方式的流程图 ;0029 图 7 是本发明提供的自治域内各节点之间建立域内连接的一种具体实施方式的流程图 ;0030 图 8 是本发明提供的实施例所建立的 5 个自治域的域间连接的示意图 ;0031 图 9 是本发明提供的实施例所建立的自治域 AS1的域内连接的示意图。具体实施方式0032 下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。
26、。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。0033 图 4 是本发明提供的一种优化域间流量的重叠网络构建方法的整体流程,步骤包括:0034 步骤 1、根据自治域之间的物理链路延迟,计算重叠网络中需要建立的域间连接,得到自治域互连关系矩阵 Link_AS,具体方法如图 5 所示 :0035 1.1)、确定每个自治域需要建立的提供数据输入的输入域间连接的数目,记为IN(ASi)(i1,2,NAS-1),该数目根据当前重叠网络中的自治域个数以及每个自治域的用户节点数等因素进行设置,所述输入域间连接是指从自治域i到自治域j的。
27、域间连接,该连接对于自治域 i 是输出域间连接,对于自治域 j 是输入域间连接 ;0036 计算自治域输入域间连接数的一种具体实施方法如公式(1)所示,其中NAS是重叠网络中自治域的个数,M 是允许的数据传输路径经过的自治域的最大个数,是系统设定的用于控制域间路径长度的阈值,假设自治域个数为 10,M 为 2,IN(ASi) 2,即每个自治域的输入域间连接数为 2 ;0037 0038 1.2)、根据每个自治域需要建立的输入域间连接数目 IN(ASi),确定每个自治域需要建立的域间连接,即确定需要与自治域 ASi(i 1,2,NAS-1) 建立输入域间连接的输入自治域集合,具体方法为 :003。
28、9 1.2.1)、根据自治域之间的物理链路延迟,计算从视频服务器所在的源自治域 AS0到每个其他自治域经过 0、1、2M 个自治域的可达路径,M 是根据当前自治域个数设定的用于控制域间路径长度的阈值,即从源自治域 AS0到其他自治域 ASi(i 1,2,NAS-1) 的所有可达路径的域间路径长度均小于等于 M,所述从源自治域 AS0到自治域 ASi的域间路径长度是指该路径除源自治域和目的自治域外,所经过的自治域个数,每个自治域的可达路径集合记为 PATH(ASi)(i 1,2,NAS-1) ;0040 例如,当前系统中有 5 个自治域,分别是 AS0、A S1、A S2、A S3、A S4,M。
29、 为 1,从源自治域AS0到AS1的符合域间路径长度限制的可达路径集合为 :AS0AS1,AS0AS2AS1,AS0AS3 AS1,AS0 AS4 AS1;0041 1.2.2)、计算 PATH(ASi) 中每条可达路径的域间链路总延迟,选择域间链路总延迟最小的可达路径,记为 AS0 ASs ASi,根据该路径确定自治域 ASi需要建立的输入说 明 书CN 104506958 A5/11 页8域间连接为 ASs ASi,将 Link_AS 矩阵中 Ls,i的值自加 1,同时将 ASs加入到 ASi的输入域集合 IN_AS 中,并从 ASi的可达路径集合中将包含域间链路 ASs ASi的所有可达。
30、路径删除;0042 1.2.3)、判断自治域 ASi确定建立的输入域间连接数是否达到需要建立的输入域间连接数目IN(ASi),如果达到,则执行步骤1.2.5 ;如果没有达到需要建立的输入域间连接数,则执行步骤 1.2.4 ;0043 1.2.4)、从剩余可达路径集合中选择域间链路总延迟最短的可达路径,记为AS0 ASm ASi,如果该路径的域间链路总延迟超过设置的最大延迟范围,则从已经确定的 ASi的输入域集合 IN_AS 中随机选择自治域 ASj(ASj IN_AS) 建立新的输入域间连接,同时将 Link_AS 矩阵中 Lj,i的值自加 1 ;如果最短可达路径的域间链路总延迟在允许范围内,。
31、则根据最短路径确定自治域 ASi需要建立的输入域间连接为 ASm ASi,将 Link_AS矩阵中 Lm,i的值自加 1,将 ASm加入到 ASi的输入域集合中,从 ASi的可达路径集合中将包含域间连接 ASm ASi的所有可达路径删除,然后返回步骤 1.2.3 重复执行,继续确定新的输入域间连接 ;0044 1.2.5)、判断所有自治域(源自治域除外)的输入域间连接是否都已确定,如果仍有自治域的输入域间连接还没全部确定,则返回步骤 1.2.1,重复执行,直到为所有自治域确定其全部输入域间连接为止,最终得到表示自治域互连关系的矩阵 Link_AS ;0045 步骤 2、根据每个自治域需要建立的。
32、域间连接数目和域内部的用户数目,确定每个自治域数据传输的骨干节点和核心节点,每个自治域选择的骨干节点的个数由该自治域需要建立的输入域间连接数、输出域间连接数、自治域内的用户节点数、以及用户节点上传带宽等因素综合决定,核心节点从骨干节点中选择,核心节点数由该自治域的输入域间连接数决定 ;0046 选择骨干节点的一种具体实施方法如下 :将每个自治域中的用户节点按照其上传带宽由大到小降序排列,选择上传带宽大的用户节点作为骨干节点,骨干节点的个数super_num(ASi) 由公式 (2) 决定,其中 OUT(ASi) 表示 ASi的输出域间连接数,IN(ASi) 表示ASi的输入域间连接数,SP(A。
33、Si) 表示 ASi中选择出的骨干节点集合,band(p) 表示骨干节点的上传带宽,VR 是直播视频的流速率,|P(ASi)| 是 ASi中用户节点的个数, 是考虑骨干节点上传带宽因素,要求骨干节点提供的上传带宽具有一定的冗余, 的值要求大于 1, 是考虑骨干节点的个数与自治域中的用户数有关, 的值通常小于 0.5 ;0047 super_num(ASi) maxNum_a(ASi),|SP(ASi)|,Num_b(ASi) (2)0048 其中 :0049 Num_a(ASi) maxOUT(ASi),IN(ASi)0050 0051 0052 选择核心节点的一种具体实施方法如下 :从选择的。
34、骨干节点中,选择上传带宽最大的前 IN(ASi) 个节点作为核心节点 ;0053 例如,自治域AS1的输入连接数为3,输出连接数为4,内部节点数为100,节点按上说 明 书CN 104506958 A6/11 页9传带宽降序排序,带宽依此为5M,5M,5M,4M,4M,4M,2M,2M,2M,2M,2M,2M,,3,0.2 则 :0054 Num_a(AS1) max3,4 40055 0056 0057 super_num(AS1) max4,3,10 100058 因此,最终选择上传带宽最大的 10 个用户节点作为骨干节点,其中带宽最大的前3 个节点作为核心节点,剩余 7 个是普通骨干节点。
35、 ;0059 步骤 3、根据自治域互连关系矩阵,在各自治域的核心节点之间建立跨自治域的域间连接,用于不同自治域之间的数据单向传输,具体建立方法如图 6 所示 :0060 3.1)、遍历自治域互连关系矩阵 Link_AS,如果 Li,j为 n 表示自治域 i 需要建立 n条指向自治域 j 的域间连接,该域间连接对于自治域 i 是输出域间连接,对于自治域 j 是输入域间连接 ;0061 3.2)、从自治域 i 的核心节点中,随机选择没有建立输出域间连接的核心节点,作为该输出域间连接的数据提供节点 ;如果自治域 i 的所有核心节点都已经建立至少 1 条输出域间连接,则随机选择 1 个核心节点作为该输。
36、出域间连接的数据提供节点 ;0062 3.3)、将自治域 j 中的核心节点按照上传带宽降序排列,选择未建立输入域间连接的上传带宽最大的核心节点作为该输入域间连接的数据接收节点 ;0063 3.4)、在选定的数据提供节点和数据接收节点之间建立实际的域间连接,该连接在传输视频数据包时是单向的,只能由数据提供节点发送数据包给数据接收节点,但是数据收发双方可利用该连接交换数据包请求、请求应答、数据块缓存情况等控制信息 ;0064 3.5)、判断自治域 i 和自治域 j 之间建立的域间连接数是否达到 Li,j表示的值,如果没有达到,返回步骤 3.2 继续建立自治域 i、j 之间的域间连接,如果域间连接数。
37、达到 Li,j表示的值,则继续遍历自治域互连关系矩阵,建立其他自治域之间的域间连接,直到建立完所有域间连接为止 ;0065 步骤 4、在每个自治域内部各节点之间建立域内连接,包括核心节点之间的连接,骨干节点之间的连接,普通节点之间的连接,以及核心节点、骨干节点、普通节点之间的连接,域内连接允许自治域内的节点之间双向传输数据包以及双向交互控制消息 ;0066 域内连接的一种具体实施方法如图 7 所示 :0067 4.1)、计算每个核心节点和骨干节点所允许建立的最大连接数 ( 即节点的度数上限 ),每个核心节点 ( 骨干节点 ) 的度数上限如公式 (3) 所示 :0068 0069 4.2)、确定。
38、每个普通节点的度数上限,该度数上限为系统设置的一个固定值,每个普通节点的度数上限是相等的 ;0070 4.3)、建立核心节点的域内连接,其中 core_unselect 集合是没有与同一个自说 明 书CN 104506958 A7/11 页10治域内其他核心节点建立连接关系的核心节点集合,core_select 集合是已经建立连接关系的核心节点集合,初始时为空,具体方法如下 :0071 4.3.1)、将建立域内连接数未达到度数上限的核心节点加入到 core_unselect集合中,从 core_unselect 中随机选择一个核心节点加入到 core_select 集合中 ;0072 4.3.。
39、2)、从 core_unselect 中随机选择一个核心节点,从 core_select 集合中随机选择一个域内连接数没有达到其度数上限的核心节点,在两个核心节点之间建立数据可双向传输的域内连接,同时将从 core_unselect 中选择的核心节点从 core_unselect 集合中删除,加入到 core_select 集合中 ;重复执行上述步骤,直到 core_unselect 集合空为止 ;如果在此过程中,core_select 集合中的每个核心节点建立的域内连接数均已达到度数上限,则直接从 core_unselect 中随机选择一个核心节点加入到core_select 集合中,继续执。
40、行步骤 4.3.2 ;0073 4.3.3)、判断每个核心节点已经建立的域内连接数是否达到其度数上限,如果仍有核心节点的域内连接数未达到度数上限,则从域内的骨干节点中随机选择一个未与核心节点建立域内连接的骨干节点,与之建立域内连接 ;重复执行上述步骤,直到每个核心节点建立的域内连接数达到其度数上限,或者所有骨干节点均与核心节点建立域内连接为止 ;0074 4.3.4)、判断每个核心节点已经建立的域内连接数是否达到其度数上限,如果仍有核心节点的域内连接数未达到度数上限,则从域内的普通节点中随机选择一个未与核心节点建立域内连接的普通节点,与之建立域内连接 ;重复执行上述步骤,直到每个核心节点建立的。
41、域内连接数达到其度数上限,或者所有普通节点均与核心节点建立域内连接为止 ;0075 4.4)、建立骨干节点的域内连接,其中 super_unselect 集合是没有与同一个自治域内其他骨干节点建立连接关系的骨干节点集合,super_select 集合是已经建立连接关系的骨干节点集合,初始时为空,具体方法如下 :0076 4.4.1)、将建立域内连接数未达到度数上限的骨干节点加入到 super_unselect集合中,从 super_unselect 中随机选择一个骨干节点加入到 super_select 集合中 ;0077 4.4.2)、从super_unselect中随机选择一个骨干节点,从。
42、super_select集合中随机选择一个已经建立的域内连接数没有达到其度数上限的骨干节点,在两个骨干节点之间建立数据可双向传输的域内连接,同时将从 super_unselect 中选择的核心节点从super_unselect 集合中删除,加入到 super_select 集合中 ;重复执行上述步骤,直到super_unselect 集合空为止 ;如果在此过程中,super_select 集合中的每个骨干节点建立的域内连接数均已达到度数上限,则直接从 super_unselect 中随机选择一个骨干节点加入到 super_select 集合中,继续执行步骤 4.4.2 ;0078 4.4.3)。
43、、判断每个骨干节点已经建立的域内连接数是否达到其度数上限,如果仍有骨干节点的域内连接数未达到度数上限,则从域内的普通节点中随机选择一个未与核心节点和骨干节点建立域内连接的普通节点,与之建立域内连接 ;重复执行上述步骤,直到每个骨干节点建立的域内连接数达到其度数上限,或者所有普通节点均与骨干节点或者核心节点建立域内连接为止 ;0079 4.5)、建立普通节点之间的域内连接,将建立域内连接数未达到度数上限的普通节点加入到common集合中,从common集合中随机选择两个普通节点建立域内连接,如果某个普通节点建立的域内连接数达到其度数上限,则将其从 common 集合中删除,重复说 明 书CN 104506958 A。