发明内容
本发明的目的在于克服上述现有技术的不足,提出一种可重配置的光片上网络及配置方法,以根据不同的应用灵活配置成不同的网络结构,而不受固定网络结构的限制。根据该结构提出一种配置方法,尽可能将通信量大的IP核连在同一个光路由器上从而提高网络整体性能。
为实现上述目的,本发明的可重配置的光片上网络,包括:
N个IP核、N个光路由器R和N个光电转换单元,N由所需网络尺寸决定,所述IP核用于产生和处理数据,所述光路由器R用于接收和转发数据,所述光电转换单元用于实现光信号和电信号的相互转换,该IP核分为中心IP核、边缘IP核和角落IP核三类,中心IP核相邻的光路由器R有4个,边缘IP核相邻的光路由器R有2个,角落IP核相邻的光路由器R有1个,其特征在于:每个IP核通过(M-1)对微环谐振器光开关K与M个相邻光路由器R相连;初始状态时,所有的微环谐振器光开关K处于“关”状态,网络结构为网格结构,根据待配置网络中IP核与光路由器R之间的连接关系调节(M-1)对微环谐振器光开关K的状态,确定最终与IP核相连的一个相邻光路由器R,即在同一时刻控制一个IP核只能与一个光路由器R相连,实现网络重构。
所述的微环谐振器光开关K采用平行波导微环谐振器光开关,且每个微环谐振器光开关的尺寸和谐振频率相同。
所述中心IP核,通过3对微环谐振器光开关K分别与右下角、右上角以及左上角的3个相邻光路由器R相连,再通过光波导与左下角的相邻光路由器R相连。
所述边缘IP核分为网络上侧的边缘IP核和网络右侧的边缘IP核;所述网络上侧的边缘IP核通过1对微环谐振器光开关K与右下角的相邻光路由器R相连,再通过光波导与左下角的相邻光路由器R相连;所述网络右侧的边缘IP核通过1对微环谐振器光开关K与左上角的相邻光路由器R相连,再通过光波导与左下角的相邻光路由器R相连。
所述角落IP核直接通过光波导与左下角的相邻光路由器R相连。
为实现上述目的,本发明的光片上网络的配置方法,包括如下步骤:
(1)对实际应用中IP核的数目Q进行因数分解Q=a×b(a>b),若存在a,b满足(a-b)/a<=1/3,则选择(a-b)/a值最小时对应的a,b,并选择尺寸为a×b的网络;若不存在a,b满足(a-b)/a<=1/3,则将Q加1并重复上述步骤直到确定了所需网络的尺寸;
(2)分别将实际应用中的每个IP核ni,i=1,2,3...Q作为中心IP核,Q为应用中IP核的个数,根据应用中的通信关系和通信量分别找出与每个中心IP核之间通信量最大的IP核nj,作为与该中心IP核对应的扩展IP核,由中心IP核和扩展IP核构成IP核对(ni,nj),j=1,2,3...Q且j≠i;
(3)检测所有的IP核对,若2个IP核对中的中心IP核与扩展IP核互换了位置,即出现IP核对(ni,nj)与IP核对(nj,ni),则删除这些IP核对(ni,nj)和IP核对(nj,ni),并用IP核ni和IP核nj构成初始集合Am,m=1,2,3...;
(4)按IP核对中两个IP核之间的通信量大小顺序检测剩下的每个IP核对(ni,nj),若该IP核对中的IP核ni已经成为上一步确定的集合中的元素且此时该集合中的IP核个数小于4,则将IP核nj放入IP核ni所在的集合中;若此时该集合中的IP核个数不小于4,则用IP核nj构成新的集合;若该IP核对中的IP核nj已经成为上一步确定的集合中的元素且此时该集合中的IP核个数小于4,则将IP核ni放入IP核nj所在的集合中;若此时该集合中的IP核个数不小于4,则用IP核ni构成新的集合;删除IP核对(ni,nj);
(5)重复执行步骤(4)直到所有的IP核对都被删除,得到最终的集合Ck,k=1,2,3...;
(6)根据步骤(5)中得到的集合,计算每个集合的内部通信量,将内部通信量最大的集合Cmax中的IP核连接在网络中心的路由器上,并将集合Cmax标记为已布局;
(7)找出与已布局集合之间通信量最大的集合,对于该集合中的所有IP核,遍历每个IP核可连的所有光路由器,以网络功耗最小为目标最终确定与IP核相连的光路由器,并按照网络中每个区域IP核位置的优先级确定IP核的位置,将该通信量最大的集合标记为已布局;
(8)重复执行步骤(7),直到确定了所有IP核的位置以及和每个IP核相连的光路由器。
本发明具有如下优点:
1)本发明由于将IP核通过微环谐振器光开关和相邻光路由器相连,可灵活改变与IP核相连的相邻光路由器,实现网络重构。
2)本发明由于在网络中使用的微环谐振器光开关均是平行波导微环谐振器光开关,从而减小了光损耗;
3)本发明由于在初始状态时网络为网格结构,可直接用于一般应用需求,且所有的微环谐振器光开关处于“关”状态,因此不消耗能量;
4)本发明由于将通信量较大的IP核划入同一个集合中,并优先确定和已布局集合之间通信量最大的集合中IP核的位置以及IP核与光路由器的连接关系,使得通信量较大的IP核之间的通信跳数得到减少,因此提高了网络的性能。
具体实施方式
为更清楚的介绍本发明提出的可重配置光片上网络和其配置方法,下面将结合附图和具体实例进行详细说明。
参照图1,本发明提出的可重配置光片上网络,包括N个IP核、N个光路由器和N个光电转换单元,N由所需网络尺寸决定,本实例的N=16。每个IP核通过(M-1)对微环谐振器光开关与M个相邻光路由器R相连。IP核按照所在网络中的位置可以分为三类:中心IP核、边缘IP核和角落IP核。其中,边缘IP核又分为网络上侧的边缘IP核和网络右侧的边缘IP核。每个IP核都有若干个相邻光路由器,其中,每个中心IP核相邻的光路由器有4个,每个边缘IP核相邻的光路由器有2个,每个角落IP核相邻的光路由器只有1个。即IP核为中心IP核时,M=4;IP核为边缘IP核时,M=2;IP核为角落IP核时,M=1。如中心IP核101的相邻光路由器有光路由器105、光路由器106、光路由器107和光路由器108,网络上侧的边缘IP核102的相邻光路由器有光路由器105和光路由器106,网络右侧的边缘IP核103的相邻光路由器有光路由器109和光路由器110,角落IP核104的相邻光路由器有光路由器110。每个中心IP核首先通过3对微环谐振器光开关分别与右下角、右上角、左上角的相邻光路由器相连,再通过光波导与左下角的相邻光路由器相连;网络上侧的边缘IP核通过1对微环谐振器光开关与右下角的相邻光路由器相连,再通过光波导与左下角的相邻光路由器相连;网络右侧的边缘IP核通过1对微环谐振器光开关与左上角的相邻光路由器相连,再通过光波导与左下角的相邻光路由器相连;角落IP核直接通过光波导与左下角的相邻光路由器R相连。例如中心IP核101通过3对微环谐振器光开关与光路由器108、106、105相连,再通过光波导与光路由器107相连;网络上侧的边缘IP核102通过1对微环谐振器光开关与光路由器106相连,再通过光波导与光路由器105相连;网络右侧的边缘IP核103通过1对微环谐振器光开关与光路由器110相连,再通过光波导与光路由器109相连;角落路由器104直接通过光波导与光路由器110相连。
参照图2,本发明使用的微环谐振器光开关均采用平行波导微环谐振器光开关,它由两条平行的波导204、205和微环谐振器206构成,其工作原理是:当从一条波导的端口201输入波长为λ0的光信号时,若微环谐振器的谐振波长为λ0,则开关处于“开”状态,光信号将按照图3所示路径从另外一条波导的端口203输出,若微环谐振器的谐振波长不为λ0,则开关处于“关”状态,光信号将按照图4所示路径沿着原波导从端口202输出。
参照图5,当根据实际应用确定了一个IP核和相邻光路由器之间的通信关系后,通过调节各微环谐振器光开关的状态,使一个IP核只与一个光路由器连接,从而实现该IP核与该光路由器之间的数据传输。例如,IP核313通过3对微环谐振器与相邻光路由器301、302、303相连,并通过一对光波导308、312与相邻光路由器304相连,如果实际应用中IP核313与光路由器301存在通信,则通过外加电压的方式使微环谐振器光开关305以及309处于“开”状态,承载数据的电信号经过光电转换单元转换成光信号,通过处于“开”状态的微环谐振器光开关305输入到光路由器301,而当IP核接收来自光路由器301的数据时,由于微环谐振器光开关309处于“开”状态,承载数据的光信号通过处于“开”状态的微环谐振器光开关309输出到光电转换单元,转换成电信号后被IP核接收;若IP核313与光路由器302之间存在通信,微环谐振器光开关305以及309处于“关”状态,通过外加电压使微环谐振器光开关306以及310处于“开”状态,承载数据的电信号经过光电转换单元装换成光信号,通过处于“关”状态的微环谐振器光开关305不改变数据传输方向,再通过处于“开”状态的微环谐振器306输入到光路由器302,当IP核接收来自光路由器302的数据时,由于微环谐振器光开关310处于“开”状态,承载数据的光信号首先通过处于“开”状态的微环谐振器光开关310,再通过处于“关”状态的微环谐振器光开关309输出到光电转换单元,转换成电信号后被IP核接收。以此类推到IP核和光路由器303、304的所有通信路径。
表1中列出了图5所示一个模块中所有通信情况对应的微环谐振器光开关的状态。
表1 各通信关系下微环谐振器光开关的状态
参照图6,本发明将结合视频对象平面解码VOPD中各IP核之间的通信关系和通信量,对本发明的配置流程进行详细说明。为方便表示,对视频对象平面解码VOPD中的16个IP核进行编号:IP1,IP2,...,IP16。各IP核之间的通信关系和通信量如表2所示。表2中第一列表示源IP核,第一行表示目的IP核,数字0表示两个IP核之间不存在通信关系,不为0的数字表示源IP核到目的IP核之间的通信量。
表2 视频对象平面解码VOPD各IP核之间的通信关系和通信量
|
IP1 |
IP2 |
IP3 |
IP4 |
IP5 |
IP6 |
IP7 |
IP8 |
IP9 |
IP10 |
IP11 |
IP12 |
IP13 |
IP14 |
IP15 |
IP16 |
IP1 |
0 |
70 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
IP2 |
0 |
0 |
362 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
IP3 |
0 |
0 |
362 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
IP4 |
0 |
0 |
0 |
362 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
49 |
IP5 |
0 |
0 |
0 |
0 |
0 |
357 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
IP6 |
0 |
0 |
0 |
0 |
0 |
0 |
353 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
IP7 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
300 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
IP8 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
313 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
IP9 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
313 |
0 |
0 |
0 |
0 |
0 |
0 |
IP10 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
500 |
94 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
IP11 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
16 |
0 |
0 |
0 |
0 |
IP12 |
0 |
0 |
0 |
0 |
0 |
16 |
0 |
0 |
16 |
16 |
0 |
0 |
0 |
0 |
0 |
0 |
IP13 |
0 |
0 |
0 |
0 |
0 |
00 |
0 |
0 |
0 |
0 |
157 |
0 |
0 |
0 |
0 |
0 |
IP14 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
16 |
0 |
0 |
0 |
0 |
IP15 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
16 |
0 |
16 |
0 |
0 |
0 |
0 |
0 |
0 |
IP16 |
0 |
0 |
0 |
0 |
27 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
按照表2的通信关系和通信量,光片上网络的配置步骤如下:
步骤1,根据实际应用中IP核的数目Q确定所需网络的尺寸。
1.1)对应用中IP核的数目Q进行因数分解Q=a×b(a>=b);
视频对象平面解码VOPD中IP核的个数为16,对16进行因数分解的结果有16×1,8×2,4×4;
1.2)对于因数分解的结果,若存在a,b满足(a-b)/a<=1/3,则选择(a-b)/a值最小时对应的a,b,并选择尺寸为a×b的网络;若不存在符合该条件的结果,则将Q加1,并执行步骤1.3);
在本实例中4×4满足条件,选择尺寸为4×4的网络;
1.3)重复执行步骤1.2)直到确定满足条件的a,b,从而确定网络的尺寸。
步骤2,根据应用的通信核图中IP核之间的通信关系和通信量确定初始集合。
2.1)分别将实际应用中的每个IP核ni,i=1,2,3...Q作为中心IP核,Q为应用中IP核的个数,根据应用中的通信关系和通信量分别找出与每个中心IP核之间通信量最大的IP核nj,作为与该中心IP核对应的扩展IP核,由中心IP核和扩展IP核构成IP核对(ni,nj),j=1,2,3...Q且j≠i;
在视频对象平面解码VOPD中,中心IP核和与其对应的扩展IP核以及中心IP核和扩展IP核之间的通信量,如表3所示。
表3 中心IP核和与其对应的扩展出IP核以及通信量
中心IP核 |
扩展IP核 |
通信量(Mb/s) |
中心IP核 |
扩展IP核 |
通信量(Mb/s) |
IP1 |
IP2 |
70 |
IP9 |
IP10 |
407 |
IP2 |
IP3 |
362 |
IP10 |
IP8 |
500 |
IP3 |
IP2 |
362 |
IP11 |
IP12 |
16 |
IP4 |
IP3 |
362 |
IP12 |
IP6 |
16 |
IP5 |
IP4 |
362 |
IP13 |
IP14 |
157 |
IP6 |
IP5 |
357 |
IP14 |
IP13 |
157 |
IP7 |
IP6 |
353 |
IP15 |
IP11 |
16 |
IP8 |
IP10 |
500 |
IP16 |
IP4 |
49 |
根据表3可知确定的IP核对有(IP1,IP2)、(IP2,IP3)、(IP3,IP2)、(IP4,IP3)、(IP5,IP4)、(IP6,IP5)、(IP7,IP6)、(IP8,IP10)、(IP9,IP10)、(IP10,IP8)、(IP11,IP12)、(IP12,IP6)、(IP13,IP14)、(IP14,IP13)、(IP15,IP11)和(IP16,IP4);
2.2)检测所有的IP核对,若2个IP核对中的中心IP核与扩展IP核互换了位置,即出现IP核对(ni,nj)与IP核对(nj,ni),则删除这些IP核对(ni,nj)和IP核对(nj,ni),并用IP核ni和IP核nj构成初始集合Am,m=1,2,3...;
由表3可看出,在视频对象平面解码VOPD中,删除的IP核对有(IP2,IP3)、(IP8,IP10)、(IP13,P14)、(IP3,IP2)、(IP10,IP8)和(IP14,P13),用IP8、IP10构成初始集合{IP8,IP10},用IP2、IP3构成初始集合{IP2,IP3},用IP13、IP14构成初始集合{IP13,IP14}。
步骤3,按IP核对中两个IP核之间的通信量大小顺序检测剩下的每个IP核对(ni,nj),若该IP核对中的IP核ni已经成为上一步确定的集合中的元素且此时该集合中的IP核个数小于4,则将IP核nj放入IP核ni所在的集合中;若此时该集合中的IP核个数不小于4,则用IP核nj构成新的集合;若该IP核对中的IP核nj已经成为上一步确定的集合中的元素且此时该集合中的IP核个数小于4,则将IP核ni放入IP核nj所在的集合中;若此时该集合中的IP核个数不小于4,则用IP核ni构成新的集合;删除IP核对(ni,nj)。
例如,在视频对象平面解码VOPD中,按照IP核对中两个IP核之间的通信量大小顺序,首先对于IP核对(IP9,IP10),其中IP10存在于集合{IP8,IP10}中,且集合{IP8,IP10}中IP核数目小于4,因此把IP9加入,此时集合变成{IP8,IP10,IP9},删除IP核对(IP9,IP10);然后对于IP核对(IP4,IP3),其中IP3存在于集合{IP2,IP3}中,且集合{IP2,IP3}中IP核数目小于4,因此把IP4加入此时集合变成{IP2,IP3,IP4},删除IP核对(IP4,IP3);对于IP核对(IP1,IP2),其中IP2存在于集合{IP2,IP3}中,且此时集合{IP2,IP3}变为{IP2,IP3,IP4},其IP核数目依然小于4,因此把IP1加入,此时集合变成{IP2,IP3,IP4,IP1},删除IP核对(IP1,IP2)。
步骤4,重复执行步骤3直到所有的IP核对都被删除,得到最终的集合Ck,k=1,2,3...;对于视频对象平面解码VOPD,最终得到的集合为{IP8,IP10,IP9}、{IP2,IP3,IP4,IP1}、{IP13,IP14}、{IP5,IP6,IP7,IP12}、{IP16}和{IP11,IP15}。
步骤5,根据步骤4中得到的集合,计算每个集合的内部通信量,将内部通信量最大的集合Cmax中的IP核连接在网络中心的路由器上,规定中心路由器周围的四个IP核位置遍历的优先级从高到低分别为左上、左下、右上、右下,并将集合Cmax标记为已布局,中心路由器位置的规定如表4;
表4 不同网络尺寸对应的中心路由器位置
|
中心路由器位置(A代表行B代表列) |
a为偶数,b为偶数 |
A=a/2,B=b/2 |
a为偶数,b为奇数 |
A=a/2,B=(b+1)/2 |
a为奇数,b为偶数 |
A=(a+1)/2,B=b/2 |
a为奇数,b为奇数 |
A=(a+1)/2,B=(b+1)/2 |
为方便叙述,将视频对象平面解码VOPD最终确定的集合{IP8,IP10,IP9}、{IP2,IP3,IP4,IP1}、{IP13,IP14}、{IP5,IP6,IP7,IP12}、{IP16}和{IP11,IP15}编号为:集合1,集合2,...,集合6。计算每个集合内部的通信量,得到集合1内部通信量为1220,集合2内部通信量为794,集合3内部通信量为157,集合4内部通信量为726,集合5内部通信量为0,集合6内部通信量为16。可见,内部通信量最大的为集合1,因此将集合1中的IP核连在中心路由器上,即在网络中处于第二行第二列的路由器上,规定中心路由器周围的四个IP核位置遍历的优先级从高到低分别为左上、左下、右上、右下。所以集合1中IP8位于中心路由器的左上,IP10位于中心路由器的左下,IP9位于中心路由器的右上;将集合1标记为已布局。
步骤6,找出与已布局集合之间通信量最大的集合,对于该集合中的所有IP核,遍历每个IP核可连的所有光路由器,以网络功耗最小为目标最终确定与IP核相连的光路由器,并按照网络中每个区域IP核位置的优先级确定IP核的位置以及和每个IP核相连的光路由器,将该通信量最大的集合标记为已布局;若与已布局集合之间通信量相同,则优先确定集合标号小的集合中IP核的位置以及和每个IP核相连的光路由器,各区域IP核位置的优先级如表5,表5中Ax代表路由器所在的行,By代表路由器所在的列,A代表中心路由器所在的行,B代表中心路由器所在的列。
表5 各区域IP核位置的优先级
路由器和中心路由器的关系 |
IP核位置的优先级 |
Ax<A,By<B |
右下、右上、左下、左上 |
Ax>A,By<B |
右上、左上、右下、左下 |
Ax<A,By>=B |
左下、右下、左上、右上 |
Ax>=A,By>B |
左上、左下、右上、右下 |
Ax=A,By<B |
右上、右下、左上、左下 |
Ax>A,By=B |
左上、右上、左下、右下 |
在本实例视频对象平面解码VOPD最终确定的集合中,与已布局集合通信的集合只有集合4,因此直接确定集合4中各IP核的位置以及和每个IP核相连的光路由器,并将集合4标记为已布局。
步骤7,重复执行步骤6直到确定了所有IP核的位置以及和每个IP核相连的光路由器。
本实例中与已布局集合通信的集合有集合2、集合3、集合5和集合6。集合之间的通信量分别为:362、16、27、16。因此下一个应该确定集合2中各IP核的位置以及和每个IP核相连的光路由器,将集合2标记为已布局;
再次执行步骤6,此时,与已布局集合通信的集合有集合3、集合5和集合6,集合之间通信量分别为16、76、16,因此接下来确定集合5中各IP核的位置以及和每个IP核相连的光路由器,将集合5标记为已布局;
再次执行步骤6,此时,与已布局集合通信的集合有集合3和集合6,集合之间通信量分别为16、16,因此接下来确定集合3中各IP核的位置以及和每个IP核相连的光路由器,将集合5标记为已布局;
再次执行步骤6,此时,与已布局集合通信的集合有集合6,集合之间通信量为16,接下来确定集合6中各IP核的位置以及和每个IP核相连的光路由器,将集合6标记为已布局。
此时,已经确定了所有IP核的位置以及和每个IP核相连的光路由器,配置完毕。
根据本发明的配置方法确定的视频对象平面解码VOPD中各IP核的位置以及和每个IP核相连的光路由器如图7所示,处于“开”状态的微环谐振器光开关被标记为黑色。