1. Field of the Invention
The invention relates to a communication network, in particular to a basic self-routing unit and a method for building its half-cleaners, sorters, network concentrators and multicast switching network.
2. Description of the Related Art
In recent years, network service has been greatly popularized. Online video service is one of the services that are used the most. Video streaming has typical characteristics, such as, video content is sent from a single point and received at multiple points, which is commonly referred to as multicast. At present, the flow of popular applications based on video application such as IPTV, video conferences, interactive simulation and multiplayer games all have the characteristics of multicast. Therefore, in order to improve the performance and effective utilization of network, multicast communication technology is of particular importance.
In order to realize the characteristics of multicast, the early internet adopted the method of repeated unicast transmission. The strategy of repeated unicast not only increases server workload but also increases the network flow. If the IP multicast technology is adopted to establish a forwarding tree between one sender and a plurality of receivers through the multicast protocol, the sender only needs to transmit one piece of data content which can be copied through the intermediate route switching nodes and finally transmit the copies to all receivers, so that the server workload and the network load can be reduced fundamentally.
Focus of research in the field of IP multicast has inclined towards flow control and congestion control, research on wireless multicast and research on large-scale high-effective multicast.
Although the realization of multicast needs the support of an application layer, a transmission layer, a network layer and a data link layer in the network, from a realized physical location, it can be divided into terminals and intermediate route switching nodes; and from a realization method, it can be divided into a method of a repeated unicast software scheduling and a method of a hardware circuit wire speed fan-out copy. However, as a whole, the terminals basically realize various application layers, transmission control layers and network layer protocols through software, usually without bottlenecks. And the realization of switching nodes is the key of multicast performance, because: firstly, the packet can go through route nodes of a plurality of hops (for example, 5 hops and 8 hops) but only goes through the single-hop terminal; and secondly, route nodes need to handle the contention of many ports which are the network bottleneck themselves.
The methods for realizing multicast of route switching nodes can be divided into a method of a repeated unicast software scheduling and a method of a hardware circuit wire speed fan-out copy. The reference Ying Liu and Ke Xu; Internet Multicast System Architecture, Science Press, April 2008 says that most of the current multicast based on switching nodes is soft multicast of repeated unicast; that is to say, the multicast packet is copied first before the route, then the copies line up in their respective source port queue, and then the packet transmission is achieved through software to realize the respective scheduling mode of port matching. At present, an overwhelming majority of routes of Cisco (William R. Parkhurst; Cisco multicast routing and switching, McGraw-Hill, 1999) and Huawei have realized the PIM-SM multicast route protocol and the IGMP, and has the capability of supporting multicast business. Nevertheless, soft multicast has a disadvantage of poor real-time performance and cannot ensure quality. This method makes the multicast data packets that are transmitted to different users go through different time delays at the same node so that the jitter of receivers' data happens and the multicast performance reduces.
Since every input port is connected with all output modules through broadcast, this architecture has characteristics of multicast. The references H. J. Chao, B. S. Choe; “Design and analysis of a large-scale multicast output buffered ATM switch,” IEEE/ACM Trans. Networking, vol. 3, pp. 126-138, April 1995, H. J. Chao, B. S. Choe, J. S. Park, N. Uzun; “Design and implementation of Abacus switch: a scalable multicast ATM switch,” IEEE J. Selected Areas Commun., vol. 15, no. 5, pp. 830-843, 1997 and K. Y. Eng, M. G. Hluchyj, Y. S. Yeh; “Multicast and Broadcast Services in a Knockout Packet Switch,” INFOCOM'88, pp. 29-34, 1988 have put forward multicast design proposals based on this architecture.
The architecture shown in
Tony Lee's copy network consists of three parts, namely the running sum adder network, the concentrator network and the broadcast banyan network. The running sum adder network is used to calculate the number of cells needing to be copied. As shown in
Although the multicast network has provided better interior nonblocking for input cells and the self-route has the characteristic of fixed time delay, the architecture has the following problems: the running sum adder network and the dummy address encoder are not suitable for the large-scale extension; when the sum of input packet copy requirements exceeds the number of output ports, the phenomenon of overflow happens, and, if the copy network doesn't provide the retransmission mechanism, packets that exceed the number of ports will be discarded and the loss probability due to overflow will increase progressively from top to bottom in the copy network, which causes unfair services; and the cache overhead needed for the multicast address translation of the architecture is very large, and the reference Turner, J. S; “A practical version of Lee's multicast switch architecture”, IEEE Transactions on Communications, vol. 41, pp. 1166-1169, August 1993 also points out that every of its look-up tables is 256 Mb with large cache overhead. Therefore, its architecture is too complicated; the component complexity of both concentrator network and broadcast banyan network is Θ(N log2N) which is equivalent to the complexity of the self-routing network.
Although someone has already put forward a proposal that provide a fair mechanism for the copy network, the proposal further increases the architecture complexity. The reference Turner, J. S; “A practical version of Lee's multicast switch architecture”, IEEE Transactions on Communications, vol. 41, pp. 1166-1169, August 1993 puts forward a method for reducing the multicast translation table, but it further increases the complexity of the copy network to make it difficult to expand to design of large-scale switch fabrics.
The Sunshine N. McKeown; “The iSLIP scheduling algorithm for input-queued switches,” IEEE/ACM Transactions on Networking, vol. 7, no. 2, pp. 188-201, April 1999 shown in
Due to the historical position of Clos C Clos, “A study of non-blocking switching networks”, Bell System Technical Journal, 1953 three-stage interconnection network in circuit switch as well as the component complexity (Clos is Θ(N1.5)) of Clos prior to that of traditional CrossBar architecture under strict non-blocking conditions, Clos attracts many scholars to study the application of Clos for packet switching. The difficulty of packet switching by application of Clos architecture is how to achieve cell switches by effective routing. This problem can be equivalently converted to the decomposition of rate matrix or the minimum edge-coloring of bipartite graph H. J. Chao, Bin Liu; High Performance Switches and Routers, John Wiley & Sons, April 2007 (P383-387). The Clos architecture is identical with conditions of unicast flow, and the key points of Clos architecture for multicast switch are the route selection and cell scheduling. Based on the Growable packet switch (GPS) (D. J. Marchok, C. E. Rohrs, R. M. Schafer; “Multicasting in a Growable Packet (ATM) Switch,” INFOCOM'91, pp. 850-858, 1991) architecture,
The reference D. J. Marchok, C. E. Rohrs, R. M. Schafer; “Multicasting in a Growable Packet (ATM) Switch,” INFOCOM'91, pp. 850-858, 1991 introduces a path allocation vector, which realizes multicast path allocation by reserving the path of the middle module through a ring mode in the first stage module. The algorithm is similar to an algorithm which is based on the Banyan network to resolve output contention and is set out in B. Bingham, H. Bussey; “Reservation-based contention resolution mechanism for Batcher-Banyan packet switches”, Electron Lett. 24 (13), pp 772-773, 1988. Although the algorithm is not centralized scheduling and has no bottleneck of central processing capability, the whole path decision needs to be participated in by all first stage modules in sequence. If the number of the first stage modules is k, the time complexity of the algorithm reaches Θ(K) which keeps the architecture from large-scale extension.
Many multicast path selection algorithms based on Clos have been put forward in succession. In 2010, the latest reference Jastrzebski, A., Kubale, M.; “Rearrangeability in multicast Clos networks is NP-complete”; 2nd International Conference on Information Technology (ICIT), pp. 183-186, August 2010 proved that the multicast path matching of the Clos network is a NP-complete problem. This further indicates the complexity of the Clos multicast scheduling algorithm.
To sum up, prior art all has problems of that can't carry out large-scale extension and have bottlenecks.
In view of the above-described problems, it is one objective of the invention to provide a multicast technology that is easy to carry out large-scale extension and has no network bottlenecks, namely a basic self-routing unit and a method for building its half-cleaners, sorters, network concentrators and multicast switching network, in the light of the problems that prior art can't carry out large-scale extension and have bottlenecks.
The technical proposal of one or more embodiments to solve its technological issues is to build a basic self-routing unit for multicast. The basic self-routing unit comprises of at least two input ports and at least two output ports. The input ports includes a first input port and a second input port. The output ports includes a first output port and a second output port respectively. The input signal of the input ports comprises the route signal and the following data attribute and data content. The route signal has a algebraic lattice structure. The route signal consists of a bicast signal, a unicast signal and an idle signal. The route signals of the two input ports are the bicast signal and the idle signal respectively, the input port whose route signal is the bicast signal is connected with the first output port and the second output port respectively, the output route signal value of the first output port is the Boolean product of the two input route signals, and the output route signal value of the second output port is the Boolean sum of the two input route signals.
Further on, when the input route signals of the two input ports both point to one of the two output ports, the two input ports contend for the pointed output port according to the data priority of the data attributes of their input signals, the input port with higher data priority is connected with the output port and the input port with lower data priority is connected with the other output port; On the other hand, when the input route signals of the two input ports point to different output ports respectively, the input ports are connected with the output ports crosswise or in parallel. The cross connection includes the connection of the first input port and the second output port, and the connection of the second input port and the first output port. Similarly, the parallel connections include the connection of the first input port and the first output port, and the connection of the second input port and the second output port.
Further on, the route signals have the algebraic lattice structure, which includes using the algebraic lattice to build the self-routing in-band route signal table. The algebraic lattice is a distributive lattice.
The invention also relates to a half-cleaner constituted by the basic self-routing units. The k 2×2 bitonic sorters are arranged in order; the 2×2 bitonic sorter includes two input ports and respectively transmits the one with the smaller input signal value to the low output port and the one with the larger input signal value to the high output port. One output port of the nth one of the k bitonic sorters is the nth input port of the half-cleaner, and the other output port is the (k+n)th input port of the half-cleaner. The low output port of the nth one of the k bitonic sorters is the nth output port of the half-cleaner, and its high output port is the (k+n)th output port of the half-cleaner. The first output port to the kth output port of the half-cleaner outputs a bitonic sequence a1, and the (k+1)th output port to the 2kth output port of the half-cleaner outputs a bitonic sequence a2, a1≦a2, wherein, k is a positive integer, n=1, 2, . . . , k and the 2×2 bitonic sorter is the basic self-routing unit.
Further on, when k=1, the half-cleaner is the basic self-routing unit.
The invention also relates to a bitonic sorter constituted by the self-routing units. The bitonic sorter includes G input ports and G output ports, wherein G=2g, and g is a positive integer. The bitonic sorter includes g stages; among them, the mth stage includes 2m-1 half-cleaners of k=G/2m, wherein m=1, 2, . . . , g. Each stage of the half cleaners includes a plurality of 2×2 bitonic sorters, and the output port of each 2×2 bitonic sorter is respectively connected with the input ports of different 2×2 bitonic sorters of the half-cleaners of the next stage or with different half-cleaner input ports of the next stage.
The invention also relates to an arbitrary binary sorter constituted by the self-routing units. The arbitrary binary sorter includes G input ports and G output ports, wherein G=2g, and g is a positive integer. The arbitrary binary sorter includes g-stage bitonic sorters, and among them, the pth stage includes 2g-p G×G bitonic sorters of G=2p. The bitonic sorters are connected according to their stages.
The invention also relates to a network concentrator constituted by the self-routing units. The network concentrator includes 2G input ports and 2G output ports.
The network concentrator includes 2 G×G arbitrary binary sorters and half-cleaners of K=G which are connected with the output ports of the 2 G×G arbitrary binary sorters. G maximum sort output ports of the half-cleaners are a 1-output group; and G minimum sort output ports of the half-cleaners are a 0-output group.
Further on, every output port of the network concentrator is strung with an address filtering unit.
The also relates to a method for building a multicast switching network which includes the following steps:
The basic self-routing unit and the method for building its half-cleaners, sorters, network concentrators and multicast switching network have the following advantageous effects. Its basic self-routing unit outputs the Boolean product and sum of input signals at its output ports when multicast signals appear, so as to make it not only realize unicast but also be able to realize the sorting and screening of signals during multicast. Further, half-cleaners, sorters and network concentrators may be obtained through the basic unit to realize the route switching functions of the multicast network. Therefore, the embodiments are convenient for large-scale expansion and have no network bottlenecks.
Embodiments are described with reference to the accompanying drawings, in which:
The following will further illustrate the embodiments of the invention with attached drawings.
As shown in
In a divide-and-conquer network, the data packet sort switch process of a 2×2 basic self-routing sort element can be realized by using in-band signaling, for example, adding two-digit in-band signaling before the data packet. The first digit A1 active bit represents whether the current time slot has a data packet or not, which is represented by 1 or 0, wherein 1 represents that there is an active effective data packet and 0 represents an empty packet that now has effective data. Further, when A1 is 1, the second digit D1 represents that the output target port address of the packet is 0 or 1. Further, when A1 is 0, D1 is meaningless. Accordingly, A1D1 equals to “10”, “11” and “00” which respectively represent the effective data packet whose output port target is 0, the effective data packet whose output port target is 1 and the empty data packet.
Therefore, during unicast, a 2×2 network basic element can realize self-route according to the prescribed linear sort relation as follows: 10<00<11, the specific control mode of the unicast 2×2 network basic element by two-digit in-band signaling self-routing switch sees the following table.
According to the fast knockout [S.-Y. R. Li, Hui Li; “Optimization in the fast knockout algorithm for self-route concentration”, IEEE Proceedings of ICC'98, pp. 630-634, Atlanta, June 1998] concentrator construction algorithm or bitonic circular [S.-Y. R. Li; Algebraic Switching Theory and Broadband Applications, Academic Press, 2001], the element can constitute any 2G-to-G self-routing group concentrators by coordinating with the one-stage half-cleaner [Hui Li, S.-Y. R. Li; On the Complexity of Concentrators and Multi-stage Interconnection Networks in Switching System, The Chinese University of Hong Kong, 2000.11].
In the embodiment, in order to realize the full combination of multicast and unicast, the target multicast is realized by the wire speed fan-out copy at the physical data link layer, wherein the physical data link layer needs to build a basic multicast circuit unit. Generally, an ideal structure of a switch fabric is that it can realize recursive extension of scale at will, has no bottleneck, and is a large-scale switch system built by the most fundamental 2×2 element at the lowest cost through various topological structure and meets performance indexes.
Obviously, the unicast 2×2 basic self-routing element doesn't have the quality required by multicast. Therefore, the embodiment builds a 2×2 basic self-routing element which meets the multicast conditions, namely a basic 2×2 sorter, and gets a large-scale switch system through the unit.
Two output tabs are 0 and 1, when the sorter is used for the 2×2 unicast switch fabric. The route unit means defining of packet route. An effective packet includes a route signal and its following load. The value of the signal is either 0-bound or 1-bound, depending on its own target output. The null value of the signal is represented as idle. In the embodiment, the corresponding self-routing in-band signal table of the route unit is represented as Ωroute={ 0-bound, 1-bound, idle}, wherein the 0-bound=10, 1-bound=11 and idle=00. Therefore, the original linear sort of 10<00<11 equals the sequence prescribed as follows: 0-bound<idle<1-bound.
Linear sort operation is carried out to transmit effective signals as much as possible to their predetermined output ports. The selection of straight/cross status depends on packet priority when the output contention of two 0-bound packets or two 1-bound packets happens.
In order to support the 2×2 sorter of wire speed multicast, the unit with functions shown in the table below must be provided, wherein
One can understand that the self-routing in-band signal table that supports multicast must be extended as Ωbicast=Ωroute∪{bicast}.
The extension set Ωbicast is sorted by the rule 0-bound<idle<1-bound and the rule 0-bound<bicast<1-bound for their respective parts. The multicast unit sorts the signals that belong to the set Ωbicast. However, when idle meets bicast, the switch control complies with the following rules: the output signal value of the output-0 port is 0-bound; the output signal value of the output-1 is 1-bound; and they are both followed by the same load.
Further, when going through the multicast unit, the packet load can be in a direct connection state, a cross state or a multicast mode with one input port connecting with two output ports. According to the mode, the multicast unit will transmit packet load to its predetermined target port as much as possible.
In order to combine the sort rules (two) and the switch rule, the signal table Ωbicast must be given an algebraic lattice structure. The lattice is a set that has binary operand Boolean sum (“”) and Boolean product (“”) and complies with the following properties:
1) commutative law: ab=ba, ab=ba
2) associative law: a(bc)=(ab)c, a(bc)=(ab)c
3) idempotent law: aa=a=aa
4) absorption law: a(ab)=a=a(ab)
The common lattice is a subset of the set that follows the union and intersection operations in the Boolean operation. According to the rule of a≦bab=a, one can see that every lattice can export a part ordered sequence. If any two elements of a part ordered set (referred to as poset for short) have an infimum and a supremum, the poset is called a partially ordered lattice. The Boolean sum and the Boolean product are used to represent the two limits and the poset has characteristics of lattices. On the other hand, every poset which is defined by a lattice is naturally a partially ordered lattice. Therefore, the partially ordered lattice equals to a lattice logically.
According to the sort rules,
If a lattice meets the distributive law:
a
(bc)=(ab)(ac),
a
(bc)=(ab)(ac)
the lattice is a distributive lattice. Ωbicast is a simple example. Referring to
To sum up, the embodiment builds a basic self-routing unit for multicast which includes two input ports and two output ports. The input ports includes a first input port and a second input port (the 0 input port and the 1 input port), and the output ports are respectively a first output port and a second output port (the 0 output port and the 1 output port). The input signal of the input ports comprises the route signal and the following data attribute (the data attribute comprises the data priority field that shows the priority of the data) and data content. The route signal has the algebraic lattice structure. The route signal includes a bicast signal, a unicast signal and an idle signal. The route signals of the two input ports are the bicast signal and the idle signal respectively. The input port whose route signal is the bicast signal is connected with the first output port and the second output port respectively. The output route signal value of the first output port is the Boolean product of the two input route signals. The output route signal value of the second output port is the Boolean sum of the two input route signals. The input route signals of the two input ports both point to one of the two output ports. The two input ports contend for the pointed output port according to the data priority of the data attributes of their input signals. The input port with higher data priority is connected with the output port and the input port with lower data priority is connected with the other output port. The input route signals of the two input ports point to different output ports respectively. The input ports are connected with the output ports crosswise or in parallel. The cross connections include the connection of the first input port and the second output port and the connection of the second input port and the first output port. The parallel connections include the connection of the first input port and the first output port and the connection of the second input port and the second output port. In the embodiment, the route signals have the algebraic lattice structure, which includes using the algebraic lattice to build the self-routing in-band route signal table, and the algebraic lattice is distributive lattice.
In the embodiment, according to the above description, it is easy to get the sorting with the hierarchy of the following algebraic structure: ordered setdistributive latticelatticeposet. In the embodiment, the distributive lattice is used to build the self-routing in-band signal table of multicast sort and multicast switch. Up till now, what the common switch fabrics use were all linear ordered sets, especially when the signal value is represented by numerals.
The requirement for carrying out complete sorting of all in-band signals not only limits the application scope of the structure, but even worse completely blocks the multicast operation. The same is very clear in the light of the comparison between the 2×2 multicast unit based on the distributive lattice and the original 2×2 unicast unit.
Pay attention to the importance of the distributive law. The distributive lattice can customize special applications, for example, adding multicast of QoS features. For instance, all five axioms of conjunctive normal form based on supporting the distributive lattice. The general sorting 0-1 theory is introduced in the reference S.-Y. R. Li; Algebraic Switching Theory and Broadband Applications, Academic Press, 2001, and needs the same axiom basis with the conjunctive normal form. On the other hand, when all original signal values are not completely ordered, the signal table is usually built into a poset structure. However, mathematical tools which derive from the axioms that dominate posets or even partially ordered lattices are not enough for the multicast switch.
The distributive law is equally important to the Boolean concentrator theorem. More evidences and intuitions show that the distributive lattice is a natural, proper, perfect choice in the building of multicast switch fabrics and the hierarchy of algebraic sorting, in light of the cost complexity of device realization and the application probability and flexibility.
The embodiment also comprises half-cleaners, sorters and network concentrators through the basic self-routing unit. The network units are all obtained through different topology and recursion of the basic self-routing unit. The specific description is provided below.
Generally, the 2×2 bitonic sorter can transmit two input port signals to the combinational logic circuit of the output port after self-routing sorting based on the size of the signals, according to one digit address information. A bitonic sequence is a sequence which only includes a plurality of 0 and 1. Their sequences may progressively increase before decreasing progressively, or progressively decrease before increasing progressively, or monotone increasing or monotone decreasing. (The sequences like 0 . . . 01 . . . 10 . . . 0 or 1 . . . 10 . . . 0111, 0 . . . 01 . . . 1, 1 . . . 10 . . . 0 are all bitonic sequences.)
A k-bitonic sorter is a network that can sort a bitonic sequence at the length of k into a monotonic sequence. As shown in
A k-half-cleaner is a primary network which can divide a 2k-long bitonic sequence into 2 bitonic sequences a1 and a2, and can ensure a1≦a2. The definition of the operator ≦ is as follows: as for the two bitonic sequences of equal length a1 and a2, if every element of a1 sequence is less than or equal to elements of a2, a1≦a2. It should be noted that not all bitonic sequences have such relation. Only when one of the sequences to be compared is all 0 or all 1, such relation exists. For example, 000000≦001100, 111100≦111111. In the embodiment, the specific structure of the k-half-cleaner is shown in
The bitonic sequence a1 . . . a2k with a defined length of 2k only has two situations 0i1j0m or 1i0j1m. i+j+m=2k, wherein i, j and m are numerals which range from 0 to 2k. Just prove 0i1j0m through symmetry. As shown in
Any two sequences constituted by 0 and 1 all constitute a 2-long bitonic sequence by themselves. Therefore, the half-cleaner of K=1 is an above stipulated 2×2 bitonic sorter whose output is already linear sorting.
According to the definition and the half-cleaner structure, the following method can be used to input the bitonic sorter at a scale of G=2g through recursive construction. The first stage is 1 half-cleaner of k=G/2, whose output is two bitonic sequences of G/2=2(g-1), and one of the bitonic sequences is already an identical 0 or 1 sequence. The second stage is 2 bitonic sorters of (G/2)×(G/2). The first stage of every (G/2)×(G/2) bitonic sorter is a half-cleaner of k=G/4, whose output is 2 bitonic sequences of G/4=2(g-1), and one of the bitonic sequences is already an identical 0 or 1 sequence. Therefore, the second stage outputs 4 G/4 bitonic sequences. The third stage is 4 (G/4)×(G/4) bitonic sorters. Based on such recursion, the gth stage is 2(g-1) 2×2 bitonic sorters, namely a half-cleaner of k=1. Therefore, as for g-stage half-cleaners that halve stage by stage, the amount of half-cleaners of each stage progressively increases by times.
The recursion by bitonic sorter can be used for construction when G=2g input signals are an arbitrary 0-1 binary sequence. The first stage is 2(g-1) vertically stacked 2×2 bitonic sorters, namely 2×2 sorters. The second stage pairs the output signal of the first stage into 2(g-2) bitonic sequences which are input to 2(g-2) vertically stacked 4×4 bitonic sorters. Based on such recursion, the gth stage pairs the output signals of the (g−1)th stage into a G-long bitonic sequence, which is input to a G×G bitonic sorter.
A 2G-to-G concentrator refers to a 2G×2G sort switch module, which routes G maximum signals of 2G input signals to G output ports of the maximum output addresses and routes the other G signals to G output ports of the minimum output addresses. The network concentrator comprises 2G input ports and 2G output ports. The network concentrator comprises 2 G×G arbitrary binary sorters and half-cleaners of k=G which are connected with output ports of 2 G×G arbitrary binary sorters. G maximum sort output ports of the half-cleaners are a 1-output group. G minimum sort output ports of the half-cleaners are a 0-output group. Every output port of the network concentrator is strung with an address filtering unit.
The structure of a 2G-to-G concentrator is constituted by connecting a one-stage half-cleaner of k=G after 2 G×G arbitrary 0-1 binary sorter networks. Naturally, G maximum sort output ports can be regarded as a “1-output group”, and the other n small sort output ports are regarded as a “0-output group”. Since every input port at every time lot in the self-routing switch fabric may be idle and without data, or have data which are transmitted to the “1-output group”, or “0-output group”, there are at least three situations.
Although the above has been talking about sorters of 0-1 binary sequences, any sorters that can sort 0-1 sequences accurately can also sort sequences which are constituted by any numerals according to the “0-1” theorem. Therefore, the sorters of the structure can sort the two-digit information of the three input packet status. The sorting size is based on the 1-output group, the idle and the 0-output group. Therefore, if the number of packets which are transmitted to a certain group at each time slot exceeds G, the packets will be mistakenly self-routed to another group address, so that the packet addresses are identified after every group output line so as to block the packets whose destination addresses are mistakenly routed and leave correct route packets, at most G packets.
As for multicast, the multicast concentrator theorem refers to the n-to-m concentrator which is constituted by sorters of a multistage internetwork, and replaces sorters with multicast units. In order to make the signal table Ωbicast, it would be well if V0 input values are 0-bound, V1 input values are 1-bound and are VB input values are bicast. The following result can be gotten: n−m top output ports may produce min{n−m, V0+VB} 0-bound and bicast signals in total at most. m bottom output ports may produce min{m, V1+VB} 1-bound and bicast signals in total at most.
A Boolean network is a multistage internetwork, wherein all the nodes are Boolean units. Further, when the units constitute concentrators, every Boolean network equals to a multistage internetwork which is constituted by Boolean units.
When there is a proper multicast signal table Ωbicast, the multicast concentrator theorem is in an input state, which can realize the optimal multicast switch. When Boolean units replace sorters of the concentrator network, the theorem is tenable for the signal table of any lattice or distributive lattice structure. This causes a question: what essential attributes of Ωbicast lattice structures cause the multicast concentrator theorem? With careful observation, it is found that Ωbicast is divided into a top ideal {0, B} and a bottom ideal {1, I} in Claim 7, and {1, B} and {0, I} in Cclaim 8 similarly.
If the nonvoid subset S of the lattice Ω meets the conditions of xεS, yεS=>xyεS, xyεS, S is a sublattice; if xεS, yεΩ=>xyεS, the sublattice S is a top ideal; and if xεS, yεΩ=>xyεS, the sublattice S is a bottom ideal.
If the Boolean operation of the mapping between two lattices remains unchanged, the mapping is called lattice homomorphism. The lattice homomorphism from the lattice Ω to the lattice Ω2 is the same as dividing the lattice Ω into a top ideal and a bottom ideal.
A homomorphism μ of mapping from the lattice Ω to the lattice Ω2 comprises partition of Ω: a top ideal μ−1(0) and a bottom ideal μ−1(1). Conversely, the lattice Ω is divided into a top ideal U and a bottom ideal L, and, if sεU, μ(s)=0 and sεL, μ(s)=1, is the homomorphism of lattices from Ω and Ω2.
As for a n-to-m concentrator which is constituted by sorters of a multistage internetwork, Boolean units are used to replace all sorters of the multistage internetwork to then get a n-to-m Boolean concentrator network which is called a Boolean concentrator. An arbitrary distributive lattice Ω is divided into a top ideal U and a bottom ideal L. Input u values from the U, 0≦u≦n, after entering the concentrator network from n−u values of the L: the n−m top ports output min{n−m, u} which belongs to the value of the U; and the m bottom ports output min{m, n−u} which belongs to the value of the L.
According to the 0-1 theory of Boolean concentrators, the unit is a n-to-m Boolean concentrator. Make t represents the homomorphism of Ω and Ω2 in sεU, μ(s)=0 and sεL, μ(s)=1. Use p(s) to replace every input signal s. This converts n input signal values into the combination of u 0 and n−u 1. According to the nature of the concentrator network, n−m top ports output min{n−m, u} 0 and n bottom ports output min{m, n−u} 1. Because t is a lattice homomorphism, the interstage is replaced with the same signals. When the output value of a output port is 0 or 1 after the replace, the output value before replace respectively belongs to μ−1(0)=U or μ−1(1)=L.
As for the n-to-m concentrator which is constituted by a multistage internetwork of sorters, all sorters are replaced with bicast units, so when the signal table is Ωbicast, one of the following declarations is tenable:
The output of n−m top ports is only 0-bound signals. The output of m bottom ports is only 1-bound signals. No output of ports is idle signals, and no output of ports is bicast signals.
The abbreviations for signal values 0-bound, 1-bound, bicast and idle are respectively 0, 1, B and I. The accurate input combination of the multistage internetwork which is constituted by bicast units is: V0 0, V1 1, VB B and VI I. Due to the special characteristics of the signal table, the bicast unit of the multistage internetwork will be further replaced with Boolean units. Therefore, the Boolean concentrator theorem can be used and ensure the building of the Boolean concentrator network.
Now, it will be divided into the top ideal U={0, B} and the bottom ideal L={I, 1}. In order to assess the initial symmetric polynomial σm+i of n variables of n-units:
The other situation is to divide the ideal into the top part U={1, B} and the bottom part L={0, I}. The following conclusion is drawn in a similar way:
If (2) and (4) are tenable, the value of σm+1 may only be 0, so that the standpoint that the output of n−m top ports is only 0-bound signals is tenable.
Symmetrically, if (1) and (3) are tenable, the value of σm+1 may only be 1, so that the standpoint that the output of m bottom ports is only 1-bound signals is tenable.
If (2) and (3) are tenable, the value of σm+1 may only be B, so σm≧σm+1=B. The output of n−m top ports can't be I. Therefore, the output of m bottom ports also can't be I. Therefore, the standpoint that no output of ports is idle signals is tenable.
According to symmetrical characteristics, when (1) and (4) are tenable, the standpoint that assumes that no output of ports is bicast signals is also tenable.
Therefore, the sum of 0-bound and bicast signals is reserved stage by stage in the multistage internetwork, so does the sum of 1-bound and bicast signals. Therefore, if any of the 4 statements related to the n-to-m concentrator which is constituted by a multistage internetwork of sorters is tenable, the statement should be regarded as a detailed version of the Boolean multicast concentrator theory. Actually, the version demonstrates a more common fact that: the Boolean concentrator theory can not only route signals as many as possible to the destination output group, but realize optimal routing according to their priorities. The concept of “priority” needs to be explained because the signal table is just an unordered set which is assumed to be a distributive lattice. The definition is suitable for all possible modes for dividing the distributive lattice into a top ideal and a bottom ideal. See the following examples for explanation.
According to the Boolean concentrator theorem, when signals are routed to the output group 0, the priority of any element of U is higher than the priority of any element of L, so does the route output group 1. The following conclusion can be drawn by applying the theory to the 5 dividing methods:
(7) Meanwhile, when being routed to any output groups, the two signals B and I are granted the same priority. That means that B and I can't appear in opposite output groups.
For example,
Although non-distributive lattices are used as signal tables in practical application, the Boolean concentrator theory can still be applied when the multicast communication of high priority accounts for a very small part of the whole communication traffic.
The complete self-routing divide-and-conquer network of high modularity and low device complexity can provide basic network structure models for the super large wire speed multicast routing switch fabrics of the study. In order to apply to large-scale multicast switching, a method for building large-scale and almost non-blocking switch fabrics is to apply the “statistical wire group” technology to the divide-and-conquer network. Every 2×2 node of the self-routing divide-and-conquer network is amplified as a 2G×2G node which is replaced with a fast knockout concentrator of 2G-to-G; in the network, every connecting wire is replaced with a bundle of G lines, thus building a multipath self-routing structure with statistical multiplexing characteristics. Every bundle of G output lines share a G-bit address. The packet loss ratio caused by communication fluctuations and burst decreases in an exponential order, with the increase of G value. For example,
In
The embodiment puts forward a multicast switch fabric based on algebraic lattice wire speed packets. The fabric has the following characteristics: the multicast switch fabric has characteristics of modularity and low component complexity and there are recursive extension models which are supported by mathematical theories; multicast is realized by the wire speed fan-out copy of physical data links, which features low time delay and no jitter; multicast strives to provide high-quality QoE and QoS for users rather than completely non-blocking videos; there are no bottlenecks of resource bandwidth and computational capability. Allow control algorithms to decide users' requirements for joining multicast or for access through possible assess. Give up port scheduling of every cell time slot.
The embodiments are only several modes of execution of the invention, which are relatively specific and detailed descriptions. However, the embodiments can't be interpreted as the limitation of patent claims of the invention. It should be noted that ordinarily skilled persons of the field can also make a plurality of changes and improvements within the concept of the invention. The changes and improvements are all within the scope of protection of the invention. Therefore, the scope of patent protection of the invention should be subject to the claims.
This application is a continuation-in-part of International Patent Application No. PCT/CN2012/085793 with an international filing date of Dec. 4, 2012, designating the United States, now pending, the contents of which, including any intervening amendments thereto, are incorporated herein by reference. Inquiries from the public to applicants or assignees concerning this document or the related applications should be directed to: Matthias Scholl P. C., Attn.: Dr. Matthias Scholl Esq., 245 First Street, 18th Floor, Cambridge, Mass. 02142.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2012/085793 | Dec 2012 | US |
Child | 14711802 | US |