?0??011233?? 2?显然,BANYAN网络具有简单、模块化、可扩展性好及信元交换时延小等优点,但它也存在着明显的问题,即内部阻塞。
BANYAN网络的内部阻塞
当BANYAN网络中某一个2?2交换单元的两条入线同时要向同一条出线发送信元时,就会发生阻塞。根据发生阻塞的交换单元在交换网络中的位置,会出现下面两种情况:
⑴发生阻塞的2?2交换单元在交换网络的最后一级,即交换网络的两条或多条入线同时试图占用同一条出线,这称为出线阻塞。由于出线阻塞不是由于交换网络本身的缺陷造成的,采用诸如输入或输出缓冲排队方法可以很好地解决。
⑵发生阻塞的2?2交换单元在交换网络的各级(除最后一级以外),即交换网络的两条或多条入线试图占用同一条出线,发生阻塞。如果不采取适当措施,就会造成信元丢失。
应当注意的是,BANYAN网络的内部阻塞发生在2?2交换单元内部,而不是级与级之间的链路上。 BANYAN网络不仅有内部阻塞,而且这种内部阻塞是随着阵列级数的增加而增加。当级数太多时,内部阻塞就会变得不可容忍。因为交换网络太大了,级数就会增加,所以,由于内部阻塞,BANYAN网络不可能做得很大。 内部阻塞是BANYAN网络必须解决的一个问题。解决办法可有如下考虑:
①内部阻塞是在2?2交换单元的两条入线要向同一个出线发送信元产生的,在最坏的情况下,这个概率是1/2.但是,如果入线上并不总是存在信号,这个概率就会下降。因此,可以通过适当限制入线上的信息量或加大缓冲存储器来减少内部阻塞。
②可以通过增加多级交换网络的级数来消除内部阻塞,例如,把8?8BANYAN网络的级数由3增加到5,就可以消除内部阻塞。事实上,有人已经证明了,若要完全消除N?N的BANYAN网络(其级数为M?log2N)的内部阻塞,至少需要2log2N?1级。
③可以增加BANYAN网络的平面数,构成多通道交换网络。
④使用排序-BANYAN网络,这是近年来解决BANYAN网络的内部阻塞问⑤上述后三种方法能很好地消除内部阻塞,但会增加网络单元数,这样做不
题的一个重要研究成果。
仅会增加网络的复杂性,而且还会增加信元通过网络的时延,尤其不适宜传送对信元敏感的信息,而AIM技术的本意就是要将多种信息综合到一个网络进行传输交换。如果将BANYAN网络改造成单侧折叠式的,则可以避免上述问题。在
单侧折叠式网络中,每一对入线和出线之间都有多条可供利用的路径。这样就能大大减少信元碰撞的机会,从而使内部阻塞率降低。
证明2N?2NBANYAN网络自选路由的特性
证明:①对于2N?2N的BANYAN网络,当N=1时,其级数为M?log22N?1。 对于任意一条入线,比如入线‘0’,只需在数据位后添加一位二进制数就可以表示其唯一出线的编号。如:‘0’表示出线‘0’,‘1’表示出线‘1’。
0011
②设对于2N?1?2N?1的BANYAN网络,需要MN?1?log22N?1?N?1位的2进
制数来表示其唯一出线路径的编号。
2N?1③对于2N?2N的BANYAN网络,其级数为MN?log22N?N。
由BANYAN网络的构造方法可知,2N?2N的BANYAN网络是由两个
?2N?1的BANYAN网络再加上一级2N?1个2?2交换单元构成。
从2N?1?2N?1的BANYAN网络到最后一级2?2交换单元共有2N条路径,并
且要到其中一条出线必须经过其中的唯一的一条路径。并且这样构成的2N?2N的BANYAN网络仍然是在每条入线和每条出线间都存在一条路径并且只有唯一的一条路径。 由二进制地址的性质可知,对于M位的二进制地址,若增加一位二进制数,其地址数增加M个。对于级数为MN?1?log22N?1?N?1的2N?1?2N?1的BANYAN网络来说,增加一位二进制即MN?1?1?N位二进制正好可以表示构成2N?2N的BANYAN网络的两个2N?1?2N?1的BANYAN网络的2N条路径。
由BANYAN网络的唯一路径可知,2N?2N的BANYAN网络可由
MN?log22N?N
位二进制地址唯一地表示其路径。
综上所述,2N?2NBANYAN网络的自选路由特性得证。