Message Broadcasting via a New Fault Tolerant Irregular Advance Omega Network in Faulty and Nonfaulty Network Environments

InterconnectionNetwork (IN) is a key element for all parallel processing applications.Multistage InterconnectionNetwork (MIN) is an efficient IN for these applications, as it has the quality of excellent performance at low cost with high reliability.MINs are effective medium for message broadcasting. Doing the same task in faulty situations is a critical challenge. In this paper, we have presented a new Fault Tolerant Interconnection Network named as Irregular Advance Omega Network (IAON); also we have presented its routing algorithm. IAON is the modified form of Advance Omega Network. The proposed MIN can endure multiple faults and provides a suitable path between every source to every destination. We have examined the fault tolerance capacity of IAON and compared its performance with other existing MINs. In order to check the performance of proposed MIN, message broadcasting was performed in three conditions as follows: (1) when network was fault free; (2) when network was Single Switch Faulty in every stage; (3) when network was Double Switch Faulty in every stage. Results showed that IAON performed better than the earlier proposed MINs.


Introduction and Motivation
Interconnection Networks have a broad range of application specific domains, for example, On Chip Networks, Storage Area Networks, Local Area Networks, and Wide Area Networks.In all these networks, the basic component is IN which connects various modules with each other [1][2][3][4][5] and therefore, these modules have the proficiency of communication [6][7][8][9][10][11][12].These modules can be of any type like memory, I/O component, processor, functional units, register files, and so forth.MINs are essential INs for various parallel computing and telecommunication applications such as Omega Network, Advance Omega Network, and Clos Network.It is better than the crossbar INs in terms of cost and performance.Generally, a MIN consists of  input and  output devices which are connected via a number of switching stages [13][14][15][16][17][18][19][20][21].Based on the availability of paths, MIN may be blocking or nonblocking.Blocking MINs have a unique path between each input and output device, for example, Omega Network.In nonblocking MIN, any input device can be connected to any output device without affecting the existing connection pattern, for example, Clos Network.Nonblocking characteristic shows multipath nature of MINs.Due to the multipath nature of MINs, the concept of fault tolerance came into the limelight [22][23][24][25][26][27][28][29][30][31][32][33][34].Currently, fault tolerance is one of the most widely researched topics [26][27][28][29][30][31][32][33][34] in the field of MINs.It is defined as "The basic idea for fault-tolerance is to provide multiple paths between source and destination so that alternate paths can be used in case of faults [16]." Moreover, data packets can be transmitted using message unicasting method, message multicasting method, and message broadcasting method.In unicasting, a data packet is sent from a source to a single destination.In case of multicasting, a data packet is sent from a source to an arbitrary number of destinations, while in the broadcasting, a data packet is transmitted from a source to all given destinations.In this research work, we have applied message broadcasting technique to analyze the performance of proposed MIN.Adaptive dynamic rerouting strategy [30] was applied on MALN [15], IASEN-2 [18], and IAON for data transmission.In case of faulty switching elements (SEs), data packets were dynamically rerouted [30] from faulty SE to nonfaulty SE to get the desired destination.

Issue of Fault Tolerance in Multistage Interconnection
Networks.The concept of fault tolerance in MINs has been demonstrated in Figure 1.In this figure, we have considered a sample IN which has 2 stages.SEs of this network are , , , , , and .In Figure 1, the primary, first alternate, and second alternate paths are shown by green, light blue, and purple arrows, respectively.Initially, it is assumed that the network is nonfaulty and data will go through a primary path from a source to a destination or to multiple destinations.After this, it is assumed that one SE is faulty in each stage; therefore, data will be routed through first alternate path.These types of networks are known as Single Switch Fault Tolerant Network.Finally, it is assumed that two SEs are faulty in each stage therefore, data will choose second alternate path.These types of networks are known as Double Switch Fault Tolerant Network.If more than two SEs are faulty in each stage then data packets will not reach to their given destinations.
Various researchers have concentrated on fault tolerance [26][27][28][29][30][31][32][33][34] issue in order to increase the reliability of MINs.Literature survey revealed that in  ample work has been carried out on Single Switch Fault Tolerant Networks.However, providing an efficient communication through Double Switch Fault Tolerant Network still remained a major research challenge.Towards this problem, we have developed a Double Switch Fault Tolerant MIN named as Irregular Advance Omega Network.It is a reliable IN which provides an excellent communication between every pair of source and destination in presence of multiple faults and also produces better results than the earlier proposed MINs.Furthermore, it is compared with Modified Alpha Network (MALN) [15] and IASEN-2 [18].Both MALN [15] and IASEN-2 [18] are 4-stage INs for network size  = 16 and can tolerate single switch fault in each stage simultaneously.
The rest of the paper is organized as follows.In Section 2, previous fault tolerant networks have been discussed.Section 3 explains the structure of IAON.In Section 4 routing algorithm has been explained.In Section 5, performances of MALN, IASEN-2, and IAON were analyzed with simulation results.Finally, conclusion is presented in Section 6 followed by references.
Before moving to next section, let us have a look on the symbols which are used throughout the paper.Table 1 shows these symbols and their meanings.

Preliminaries and Background
Before reaching on next section, we have given a succinct description of MALN [15] and IASEN-2 [18] which were compared with IAON.

Modified Alpha
Network.MALN has  sources and  destinations with  = log 2  stages.It is divided into two subgroups with /2 sources and /2 destinations in each.The sources and destinations are connected with the entire network through multiplexer and demultiplexers, respectively.The SEs of -3, -2, and -1 stages are connected through auxiliary links [15].In the routing process, MALN takes the source and destination addresses in binary format.In the first step, it checks the MSB of the destination address and selects one subnetwork [15], that is, G0 or G1.If the address of SE is known then data will be sent through the shortest path and further routing is not required.If the SE is busy then it routes the data through the auxiliary link otherwise, it drops the request and follows the next step [15].In the next step, the secondary path is selected and we have to set the MSB of routing tag as 1.In this case, data will be moved through the intermediate stages and if the SE is busy in any of the stages except the last one then the whole procedure is repeated again [15].In the further step, it routes the data to auxiliary switch of the same stage and then send data to its destination address [15].

Irregular Augmented Shuffle Exchange Network-2.
IASEN-2 has  = log 2  stages with  source and  destinations.In this network, first and last stages contain /2 SEs.In the same way, second and third stages have /8 SEs.The SEs of all the stages are allied through the connecting links [18].In second and third stage it has some extra interconnecting links which are known as auxiliary links [18].The sources and destinations have a strong connectivity with the entire network through multiplexer and demultiplexers.As far as the routing process of IASEN-2 is concerned, if a SE receives a request from a source or from the SE of previous stage it immediately forwards it towards the SE of next stage [18].In case if this particular SE is faulty or busy then request will arrive on the alternate SE of the same stage.If the alternate SE is also busy or faulty then network will be failed to send the request to its appropriate destination.If it does not happen so, then it sends the request towards the destination side [18].If request arrives at the SE of last stage then it will be sent to its appropriate destination through demultiplexer.

Proposed Interconnection Network
The structure of  ×  Irregular Advance Omega Network is based on Advance Omega Network [14].IAON has 3 stages for every network size.In this network, sources, multiplexers, demultiplexers, and destinations are represented by , Mux, Demux, and , respectively.The sizes of Mux and Demux are 2×1 and 1×2, respectively.Presently, there are 16 Mux and 16 Demux in this network.Each Mux connects the  sources to SEs of first stage and each Demux connects SEs of third stage to  destinations.In first and third stage, the network has 4 SEs in each, while second stage has 3 SEs.The size of SEs in first and third stage is (/4 × 4) and (4 × /4), respectively.In the second stage, SE  and  have the size 5 × 5.The size of SE  is 6 × 6.Each source is connected with two other SEs of first stage through auxiliary links.In the same way, each destination is connected with two other SEs of third stage through auxiliary links.In Figure 2, auxiliary links of second stage are shown by green colour.In IAON, each source and each destination have one primary and two alternate SEs.If the SE is directly connected with any source or any destination then it will be primary SE of that particular source or destination.If it is indirectly (through auxiliary links) connected with any source or destination, then it will be first or second alternate SE of that particular source or destination.Hence, SEs a, b, and  are the primary, first, and second alternate SEs for source 0, respectively.Equally, we can see the primary, first alternate, and second alternate SEs of other sources and destinations in Figure 2.
Redundancy graph [15] of IAON is shown in Figure 3.In this figure, source and destination are shown by green nodes.

Routing Algorithm of IAON
Algorithm IAON Broadcast is designed for message broadcasting purpose (Algorithm 1).Initially, we have to take the total number of destinations as input from user side then as mentioned in the algorithm function FIRST-STAGE (Source) will be called.This function will check the nonfaulty SE in the first stage and transmit the data packets towards that particular SE.If all the SEs that is, primary, first alternate, and second alternate SE are busy or faulty then network will be failed and data transmission process will be stopped.In function SECOND-STAGE (Source), initially primary SE  will collect the data packets from the nonfaulty SE of first stage.If SE  is faulty or busy then these data packets will be dynamically rerouted through first alternate SE .In case, if SE  is also faulty then second alternate SE  will receive all the data packets.If all the SEs of second stage are busy or faulty then path will be blocked and data transmission will not be possible in this case.In function THIRD-STAGE (Source), the primary SE obtains the data packets from nonfaulty SE of second stage.This function will also search the nonfaulty SE in third stage and send the data packets to nonfaulty SE.Further, data packets will be transmitted to all destinations.If it does not happen so, IAON will be failed and data transmission process will be stopped.

Explanation of Routing Algorithm.
In this section, we have demonstrated the routes of data packets in Nonfaulty, Single Switch Faulty and Double Switch Faulty cases for source 5.
Case 1 (route of data packets when network is nonfaulty).In this case, we have assumed that IAON does not have any fault and data packets are easily transmitted through the primary SEs. Figure 4 shows the route of data packets through primary SEs.In this case the primary paths for source 5 are as follows:

BEGIN
(1) for  = 0 to First Alternate SE 3 (3) else Collect data packets on SE P3 and Send to N destinations (4) if First Alternate SE 3 == FB (5) Second Alternate SE 3 (6)  It shows that SEs , , ℎ, , , and  will be the primary SEs for source 5, and these are shown by green colour in Figure 4.
Case 2 (route of data packets when network is Single Switch Faulty in every stage).In this case, we have assumed that SEs b, e, and ℎ are faulty then first alternate paths for source 5 are as follows: Figure 5 shows that SE  is connected with SE  through Mux; hence, SE  is the first alternate SE of first stage for source 5. Similarly, SE  of second stage will be the first alternate SE of second stage.At last in the third stage, Figure 5 shows that SE ℎ is allied with SEs  and .Therefore, the SEs  and  will be the first alternate SEs of second stage and these SEs are shown by light blue colour in Figure 5.However, SE  is not connected with SE ℎ; hence, it will be treated as primary SE and it is shown by green colour in Figure 5.
Case 3 (route of data packets when network is Double Switch Faulty in every stage).In this case, we have assumed that SEs , , , , ℎ, and  are faulty then second alternate paths for source 5 are as follows: Path 1: -- Path 2: --.
Figure 6 shows that SE  is connected with SE  through Mux.Hence, SE  is the second alternate SE of first stage for source 5. Similarly, SE  of second stage will be the second alternate SE of second stage.At last in the third stage, Figure 6 shows that SE ℎ and  are allied with SEs  and .Therefore, the SEs  and  will be the second alternate SEs of second stage, and all these SEs are shown by purple colour in Figure 6.
All the discussed cases clearly explained the proposed routing algorithm.This description also proved that IAON is a Double Switch Fault Tolerant MIN.

Theorem. Minimum number of alternate paths between every source to every destination is 21.
Proof.In Section 3, it is given that the second stage of IAON connects the SEs of first stage to the SEs of third stage.It shows that the second stage is an important stage of IAON and all the alternate paths are generated by this stage.It is given in Figure 2.This figure shows that if a SE of first stage sends the data packets to the SE of second stage then it will be received by any one SE of second stage.In this way, SEs e, f, and  will generate the 3 different paths.Remaining 4 paths will be generated by auxiliary links of second stage.In this way, we will have the total 7 paths, which are generated by the second stage of IAON.These paths are as follows:  Further, it is known that each source is allied with 3 SEs of first stage.Therefore, total number of alternate paths will be IAON MIN = (7 × Allied SE 1 ) The above discussed hypothesis clearly proves our theorem and tells us that the given theorem is applicable on each network size of IAON.Furthermore, we have taken an example to understand the same fact.
Example 1.Let the source be 9 and let destination are 2. Figure 2 shows that source 9 is connected with SEs c, a, and .Equally, destination 2 is connected with SEs ℎ, , and .To obtain the alternate paths again we have considered three different cases.
Case 1 (when data packets will be transmitted through primary SE  of first stage).In this case the alternate paths are as follows: In all these cases the total numbers of paths are 21.It proved that IAON has minimum 21 alternate paths from any source to any destination.

Performance Analysis and Simulation Results
To evaluate the performance of IAON, we have simulated the proposed routing algorithm in java technology using JDK 1.6 platform.We have compared the probability of acceptance, throughput, processor utilization and processing power of IAON with MALN [15] and IASEN-2 [18].Basically, message broadcasting was performed in our simulation.In nonfaulty case, data packets will take the shortest path from source node to destination node and we assumed that the data transmission time between two nodes is 0.1 ms.In faulty situation, we have dynamically rerouted the data packets from faulty to appropriate nonfaulty node.Therefore, these data packets can be transmitted to the given destinations.In faulty cases, we have assumed that a data packet takes 0.2 ms in its rerouting process.Routing time of a data packet is explained in Sections 5.3 to 5.7.Before coming on the simulation results let us have a look on the various performance parameters.

Request Generation Probability (𝑝).
The term "Request Generation Probability" represents the number of data packets generated on a source node and these generated data packets can be transmitted to  destinations through IAON, MALN [15], and IASEN-2 [18].In this simulation,  is assumed to be 0.1, 0.2, . . ., 0.9, 1.Data packets were generated and transmitted to MALN, IASEN-2, and IAON in faulty and nonfaulty cases.
Assume that a switching element  has  = 2 input lines and  = 4 output lines as shown in Figure 7 and therefore, the size of SE  is 2 × 4.
For SE m, "Total number of requests that are passed per unit time is: The output of a stage will be the input of next stage and finally the output rate of last stage will be the BW of a MIN [13][14][15][16][17].In this way, BW of a MIN can be obtained easily.The definition of BW is as follows.

Definition 2. "BW is defined as the mean number of active memory modules in a transfer cycle of INs and therefore, BW
is the total number of request matured [14][15][16][17]." According to Definition 2, BW of a MIN will be BW =   ×   bytes/ms or BW =  DST ×   bytes/ms and  0 = .
Here,   is the total number of destinations ( DST ) and  0 is also the request generation probability.

BW Calculations of MALN, IASEN-2, and IAON.
To calculate the BW we have assumed that total number of stages for each network size will be constant that is, for MALN, IASEN-2, and IAON it will be 4, 4, and 3, respectively.
Probability equations for MALN [15] are as follows: ( As we know,  DST is the total number of destinations.Probability equations for IASEN-2 [18] are as follows: Probability equations for IAON are as follows: Figure 8 shows the bandwidth comparison of MALN, IASEN-2, and IAON for network size  = 16, 32, 64, and 128.Bandwidth of IAON is better than the other two MINs [15,18].

Routing Time (rt).
It is the time that a data packet takes from a source node to the given destination node.It is calculated by the following formula: where routing times of MALN [15], IASEN-2 [18], and IAON are as follows: NoN is 5 in IAON. (5)

Arrival Time (𝛽).
Arrival time is the time that a source node takes in order to send a data packet to all given destinations.It is given by the following formula: Therefore, arrival time of MALN, IASEN-2, and IAON is as follows: Arrival time is also explained in Example 3.
Example 3. Suppose we have to calculate the arrival time of a data packet for the network shown in Figure 9.
In Figure 9, we have taken a single stage IN.In this figure, red node is source, green nodes are destinations, and rests of the nodes are SEs of the network.At present, data packet is going through a light blue SE of network and data path is shown by green dotted arrows.It is assumed that a data packet is taking 0.

Total Arrival Time (𝛾)
. Total arrival time is the time that all generated data packets take from a source to all given destinations.It is given by the following formula: If NoD are 100 then total arrival time of Example 3 will be  = 40 ms.

Single Switch Fault Arrival Time (𝛿).
When single switch is faulty in every stage of the network then the arrival time of all the data packets from a source to all the destinations is given by the following formula: In Example 3, the network has only one stage therefore, NoS = 1 and we assumed that the light blue SE in Figure 9 is faulty then = 40.1 ms.

Double Switch Fault Arrival Time (𝜌).
When double switch is faulty in every stage of the network then in this  case the arrival time of a data packet from a source to all the destinations is given by the following formula: We know that MALN [15] and IASEN-2 [18] are not Double Switch Fault Tolerant Network.Therefore, we cannot calculate the double switch fault arrival time of these networks.In Example 3, now we assumed that the light blue and yellow SEs in Figure 9  5.8.Probability of Acceptance (PA).How many requests are going to be accepted by the destination side which is sent by the source side in a transfer cycle?PA is the answer of this question.Actually, during the data transmission process some data packets get blocked due to switch failure, link failure, or any other reason.Therefore, the total number of generated data packets on a source node and total number of accepted data packets by a destination node in a transfer cycle will not be the same [13].It can be given by the following definition.Definition 4. "It is defined as ratio of bandwidth to the expected number of requests generated per transfer cycle [15][16][17][18]".
Formula for PA [15][16][17] is Now, PA of MALN, IASEN-2, and IAON is given by the following formulas: 5.9.Throughput (TP).Basically, it is the average number of data packets which are going to be accepted by all destinations in a transfer cycle [13].We can define it as follows.

Processor Utilization (PU).
In each transfer cycle, data packets are transmitted from source side to destination side [13][14][15][16].For this transmission, processor plays a vital role in order to make this computation fast and efficient.Therefore, a specific amount of time is taken by the processor for each transfer cycle [15].This time is considered as the utilization time of the processor and can be defined as follows.

Processor Power (PP).
PP is calculated on the behalf of processors which are used during the transmission of data packets [13].It can be defined as follows.Definition 7. "PP is defined as sum of processor utilization over the number of processors [13,17]." Formula for PP is PP = ( DST × PU) PP of MALN [15], IASEN-2 [18], and IAON is given by the following formulas: Now, we have shown the results which were obtained using the above-mentioned formulas.
Figure 11 shows the throughput of MALN [15], IASEN-2 [18], and IAON in faulty and nonfaulty cases for network size  = 16, 32, 64, and 128.This figure shows that IAON is better than MALN and IASEN-2 in terms of TP.In Figures 11,12,13,14, and 15 we have shown the performance of MALN S, IASEN-2 S, IAON S, and IAON D. The significance of these networks is as follows: MALN S: MALN [15] is Single Switch Fault Tolerant in every stage, IASEN-2 S: IASEN-2 [18] is Single Switch Fault Tolerant in every stage, IAON S: IAON is Single Switch Fault Tolerant in every stage, IAON D: IAON is Double Switch Fault Tolerant in every stage.
In Figures 11,12,13,14,and 15, the time is converted from ms to seconds to explain the results evidently.

Conclusion
Faults are not a new issue in the MINs.However, developing a MIN with high performance and great fault tolerability is an important factor in recent networks.In this paper, we have proved that IAON can tolerate concurrently 2-faulty SEs in each stage.Also we have demonstrated that it has more alternate paths for data transmission as compared to MALN and IASEN-2.The routing algorithm of IAON is a generalized algorithm for message broadcasting and it provides the suitable way to all data packets to reach the given destinations in faulty and nonfaulty situations.Furthermore, all the performance factors such as probability of acceptance, throughput, processor utilization, and processing power of IAON are better than MALN and IASEN-2 in faulty and nonfaulty cases.In future, the interconnection pattern of IAON can be changed in such a way that it can produce better results in crucial faulty situations.

Figure 1 :
Figure 1: Single and double switch faulty situations in MIN.
Input: N Output: Data Packets Successfully Reached on  Destinations or Network Fails

Figure 15 :
Figure 15: The processing power of MALN, IASEN-2, and IAON in faulty and nonfaulty cases, when the network sizes are 64 and 128 separately.

Table 1 :
Various symbols and their meanings.
else Collect data packets on First Alternate SE 3 and Send to N destinations