Abstract

With the rapid developments of Internet of Things (IoT), tremendous number of sensors are deployed in the environment to monitor and collect different types of information. When a group of sensors located with the same location (or area) should deliver their data to a set of users and they have connected with the same network device, e.g., base station or access point, the data delivery between them and their users can be treated as a single source multicast in the core network from the network device connected with them to the network devices connected with their users. Generally, in such a case, multiple multicast sessions exist in the network simultaneously. In this paper, we study two major considerations, i.e., transmission throughput and information security, for multiple multicasts with multiple streams in IoT by using linear network coding (LNC). Specifically, we jointly consider the transmission rate allocation, transmission topology selection, and secure LNC design for multiple multicasts to maximize the total secure weighted throughput (SWT), which is referred to as the secure delivery for multiple multicasts with multiple streams (SMMS) problem. To this end, we firstly consider the SMMS problem in the case that each sensor is connected with a fixed network device. We then study the SMMS problem when the source of each multicast can be selected from a set of nodes. For the first case, we formulate it to be a linear programming (LP), based on which we give the MORT algorithm to optimally solve it. On the other hand, for the second case, we first formulate it to be an integer linear programming (ILP) and then propose an efficient MBLP algorithm based on linear programming relaxation to obtain a suboptimal solution. Finally, we conduct extensive simulations to show the effectiveness and efficiency of the proposed algorithms.

1. Introduction

Internet of Things (IoT) has been widely studied and applied in the past ten years [1, 2]. In IoT shown in Figure 1, multiple sensor nodes are allocated in different areas and they can access the core network by connecting the base station located within their communication range. To analyze and further utilize the data information collected by these sensors, the data should be transmitted from these sensors to the different users. Transmission throughput and information security are two major considerations in IoT.

Network coding (NC) is a promising technology to be used in the next-generation network because it can maximize the throughput capacity of a network [3, 4]. By using NC, nodes in the network can encode and decode the received data packets instead of only store and forward. When the encoding and decoding are linear operations on a finite field, it is called linear network coding (LNC) [4]. For multiple multicast, LNC has been applied to improve the transmission throughput [5, 6].

Related studies have proved that LNC not only can make the multicast transmission reach the theoretical upper bound of throughput [7, 8] but also can provide information confidentiality due to its inherent characteristics [9]. Specifically, when applying LNC to multicast communication, the data information transmitted in the network is no longer the original data chunk, but the linear combination of original data chunks, which is called the encoded packet. If the attacker cannot receive enough encoded packets, it cannot obtain information about the original data chunk. In this condition, LNC becomes an effective way to resist passive attacks and provide secure data transmission without the key distribution protocols, which reduces the system complexity [1018].

In order to provide data confidentiality, existing researches mainly focus on two different security requirements: Information Theoretical Security (ITS) [14, 15, 17, 18] and Weak Security (WS) [1013]. ITS requires that any nonzero linear combination of original data chunks cannot be obtained by attackers. In order to achieve ITS, random information must be added to encode together with original data chunks during data transmission. On the other hand, WS does not allow any meaningful information, e.g., the coded packets that can be generated by the original data packets of the same data stream be leaked to the attacker. We note that the data stream means a data flow in which all the data are collected by the same sensor.

In practice, a group of sensors with different types may be deployed at the same place to monitor the same area from different aspects [1, 2]. For example, a group of sensors, including temperature sensor, humidity sensor, PM2.5 sensor, and camera, may be placed at each place to monitor the same area and deliver their data information to a group of users, e.g., meteorological department, military department, companies, and personal devices. Since the group of sensors is located at the same place, they connect to the same network device, e.g., base station or access point. The data information sent from them must pass through the network device that they connected with; i.e., the network device can be seen as the source of data information. Similarly, the network devices can be seen as the destinations of data information requested by the users connected with it. Therefore, the data delivery from each group of sensors located in the same place to a group of users can be seen as a single source multicast which is from the network device connected with them to the group of network devices connected with their users. Moreover, multiple data streams generated by the different sensors exist in the single source multicast. With the consideration of the limitation of the bandwidth capacity of the core network, when multiple single source multicasts exist, the transmission rate should be allocated for each data stream in each multicast to maximize the total throughput. We also give each data stream a weight to reflect the different requirements or importance.

In our previous study [19], we have considered the optimal transmission rate allocation and weakly secure LNC for single multicast scenario. In this paper, we will further study the multiple multicasts scenario and the source selection problem when the source of each multicast can be selected from a set of nodes. Next, we will give an example to show the differences between these two scenarios, i.e., the achieved secure weighted throughput (SWT) in the cases of considering multiple multicasts individually and considering multiple multicasts together. In the following, we do not show the sensors and the users. Next, we give the examples to show the motivation and the importance of our research.

The core network is given in Figure 2, in which nodes represent network devices, e.g., base stations, access points, and routers, and they are connected by a wired core network. Specifically, there are two multicasts in this network; i.e., source node sends data to the destination node set and source node sends data to the destination node set . In addition, nodes and are assumed to be attackers in the network. The bandwidth capacity of each link is set to 1. In Figures 3(a)3(d), we assume that there are two data streams sent by source which are denoted as and , and two data streams sent by source which are denoted as and , respectively. In particular, encoding operations are only done between the data with the same source [10, 11, 13, 15, 16]. We also assign a unit weight to each data stream. We should allocate the transmission rate of each data stream and design secure LNC scheme under the transmission rate allocation to maximize the total SWT. For example, in the network, if the transmission rate of data stream is 2, it means the source node can send two packets of data stream in one transmission round: and . In addition, the coding coefficients of the LNC are chosen from the finite fields .

Firstly, in the network , when we consider each multicast individually, the maximum flow from source node to any destination node in is . Therefore, we can allocate the transmission rate 2 to data stream 1 and transmission rate 1 to data stream 2. The transmission topology and secure LNC of the first multicast are shown in Figure 3(a). Specifically, the destination can decode and recover , and . The destination can decode and recover , , and . Moreover, the attacker cannot obtain any nonzero coded data packet generated only by the data from the same stream, because it only receives one coded data packet . Although the maximum flow from source node to any destination node of in is , since each link has unit bandwidth capacity, after the first multicast occupying the set of links shown in Figure 3(a), the maximum flow from source node to any destination node of is in the remaining network topology which is shown in Figure 3(b). In this case, the total SWT of the two multicasts is .

Secondly, when we consider the two multicasts together to optimize the total SWT, the transmission topologies and secure LNCs of the two multicasts are shown in Figures 3(c) and 3(d), respectively. Specifically, for the first multicast, we can allocate the transmission rate 1 to data stream 1 and transmission rate 1 to data stream 2. Both the destinations and can decode and recover and . For the second multicast, we can allocate the transmission rate 1 to data stream 1 and transmission rate 1 to data stream 2. Both the destinations and can decode and recover and . Moreover, the attackers and cannot obtain any nonzero coded data packet generated only by the data from the same stream. Therefore, in this case, the total SWT of the two multicasts is . Compared to the schemes shown in Figures 3(a) and 3(b), the SWT is improved by 33%.

From the above examples, we can conclude that, to maximize the total SWT, multiple multicasts should be considered together. Therefore, in this paper, we will consider the transmission rate allocation, transmission topology selection, and the secure LNC schemes for multiple multicasts to maximize the total SWT, which is referred to as the secure delivery for multiple multicast with multiple streams (SMMS) problem. To this end, we will firstly consider the SMMS problem in the case that each sensor is connected with a fixed network device; i.e., each multicast has a fixed source. We then study the SMMS problem when the source of each multicast can be selected from a set of nodes; i.e., multiple network devices can be selected for each sensor.

The rest of the paper is organized as follows. We first introduce the network model in Section 2. We then formulate the SMMS problem and design algorithms based on linear programming and its relaxations in Section 3. We then conduct extensive simulations to illustrate the performance of the proposed algorithms in Section 4. Finally, we conclude the paper in Section 5.

2. SMMS Problem Modeling

2.1. The Network Model

In this section, we first introduce the network model, important parameters, the multiple multicast network coding scheme, and the security model to be used in this paper. Secondly, we give the formal definition of the weakly secure linear multicast code. Finally, we formally define the secure delivery for multiple multicasts with multiple streams (SMMS) problem.

In this paper, we consider an IoT network consisting of sensors, network device, e.g., base station, access point and routers, and end users, e.g., departments, companies, and personal devices [1, 2]. We consider multiple groups of sensors which are deployed in different areas to monitor the environment. Each group is located at the same place and they connect to the same network device, e.g., base station or access point. The data information sent from them must pass through the network device that they connected with; i.e., the network device can be seen as the source of data information. Similarly, the network devices can be seen as the destinations of data information requested by the users connected with it. Consequently, the data delivery from each group of sensors located in the same place to a group of users can be seen as a single source multicast which is from the network device connected with them to the group of network devices connected with their users. Therefore, in the following, we only consider multicasts within the wired core network. Moreover, multiple data streams generated by the different sensors exist in the single source multicast. With the consideration of the limitation of the bandwidth capacity of the core network, when multiple single source multicasts exist, the transmission rate should be allocated for each data stream in each multicast to maximize the total throughput.

We use a directed graph to present the wired core network, where is the set of nodes and is the set of links. Firstly, we assume that there are multicasts in and the source node of the multicast is denoted as , . Let . The set of destinations of multicast is denoted as . Let . The multicast session can be expressed as . Specifically, the source actually represents the group of sensors which connect to and has the set of destinations . If the number of sensors in the group is , then there are a total of data streams in multicast , each of which is generated (or sent) by a sensor node. The total transmission rates of the first data streams are denoted as and the transmission rate of the stream is and . Specifically, these data streams can be sent from to at different transmission rates in each transmission round.

In particular, for the data stream of the multicast, we define its weight as , , . The weights reflect different requirements or importance. In addition, for , it has a certain bandwidth capacity . For convenience, the important symbols are defined as shown in Table 1.

2.2. Linear Network Coding for Multiple Multicast

In this paper, the encoding operations are performed only between different data packets of streams of the same multicast [10, 11, 13, 15], which means data streams from different multicasts will not be encoded together. We define the set of original data packets sent by the source node as , . Therefore, in a transmission round, the set of original data packets for the data stream sent from the source node can be defined as .

Although multiple multicasts share the capacity of each link, only the data packets belonging to the same multicast will be encoded together. Therefore, when the transmission rate allocation and the transmission topology have been obtained, the LNC scheme for each multicast session can be designed individually. , if there is a coded packet from the multicast passing through it, we can use a -dimensional row vector to represent the global encoding vector (GEV) of the coded packet as long as . In addition, the LNC design is implemented in a finite field with size , which means all elements of the GEVs are taken from the finite field . In particular, for an original data packet from multicast , its GEV is a row of the -dimensional identity matrix. We denote the set of links entering node as and the set of links leaving node as . For the source node , it is assumed that constitutes virtual links, and each virtual link represents an original data packet of the multicast.

Therefore, for multicast , the -dimensional linear multicast code can be defined as follows.

Definition 1. , the -dimensional linear multicast code exists if the following three conditions are satisfied:
For the source in multicast , consists of the basis of the vector space .
, is a linear combination of ,.
For each destination in multicast , consists of the basis of the vector space .

The above definition shows that for , all the coded data packets transmitted in the network which related to multicast can be generated by it; , all the coded data packets sent out from it can be generated by linearly combining the coded data packets received from its incoming links; for , it can decode the received coded packets for the original data of all the streams. In addition, , if the destination node in the multicast receives linearly independent coded packets, it can decode and obtain original data packets. For example, suppose that the matrix is composed of coded data packets as its rows and the matrix is composed of the corresponding GEVs as its rows, then we have . Therefore, the destination node can decode and obtain the original data packets by . Additionally, , let .

2.3. Security Model

We assume that, in , there exists a set of inside passive attackers , each of which tries to acquire meaningful information of original data by collecting the data packets passing through them individually [10] (similar to the attack model considered in [11, 1315, 19]).

For the secure requirement, we consider the Weak Security (WS) [10] in this paper, which has been widely studied in the literature [1113, 19]. Since only the data packets belonging to the same multicast can be encoded together, the WS requirements should be satisfied for each multicast. Let be the matrix consisting of nonzero vectors in as its row vectors. For the above-mentioned attack model and multiple multicast models with multiple data streams, the weakly secure linear multicast code can be defined as follows.

Definition 2. , the -dimensional linear multicast code constructed on the finite field with size is weakly secure, if it satisfies that for any malicious node :Equation (1) shows that and , and are independent with each other. Any malicious node cannot obtain a nonzero linear combination of original data packets from the same data stream of the same multicast.

Definition 3. , if the -dimensional linear multicast code constructed on the finite field with size satisfies weakly secure requirements, then it is weakly secure for the multicast .
For the multicast , the LNC can achieve the requirements of WS when . This is because the original data packets from one data stream of the multicast can be encoded with the original data packets from the other data streams of the multicast to hide the information of the original data packet of the same stream.

2.4. SMMS Problem Description

In this paper, we will study the problem of secure delivery for multiple multicasts with multiple streams (SMMS).

Definition 4. For a given network , a malicious node set and multicasts, each of which has a source node , a set of destination node , and data streams, secure delivery for multiple multicast with multiple streams (SMMS) problem is to consider the transmission rate allocation, transmission topology selection, and the secure LNC schemes for multiple multicasts to maximize the total SWT.

3. Problem Formulation and Algorithm Design

In this section, we will firstly study the SMMS problem for multiple multicasts scenario when each multicast has a fixed source node. We then further consider the SMMS problem for multiple multicasts when the source of each multicast can be selected from a set of nodes in .

3.1. The SMMS Problem with Fixed Source

For single multicast, in our previous work [19], we have shown that the sufficient and necessary condition. Specifically, in the SMMS problem, the condition that a secure linear multicast code exists for multicast is that there exists a network flow with capacity between and each destination in , and for each malicious node , the actual data flow of that enters should not be more than .

For multicasts simultaneously transmitted in the network , we next formulate the SMMS problem when each multicast has a fixed source node. Before building a mathematical programming for the SMMS problem, we firstly define new parameters and decision variables, as shown in Table 2.

We can formulate a mathematical programming for the SMMS problem as follows:

The meanings of the objective and the constraints in the above mathematical programming MP are shown in Table 3.

Because of the existence of the nonlinear constraints (8)-(9) in , it cannot be solved directly. Therefore, next, we will equally transform the mathematical programming problem into a linear programming (LP) problem. Specifically, the nonlinear constraints (8)-(9) in MP can be replaced by the following constraints:

Firstly, the constraint (14) is used to replace the constraint (8). Specifically, the constraint (14) is equivalent to .

Secondly, the constraint (9) can be equally transformed into constraints (15)-(16). For , , if the constraints (15)-(16) are satisfied together, we can get which means that the solution also satisfies the constraint (9). On the other hand, , , if there is a solution of satisfying the constraint (9), then there must be a set of values of which makes the value of satisfy the constraint (16). Thus, with the linearization process, the optimal solution of MP will not be changed.

Therefore, the nonlinear programming MP can be transformed into the following linear programming (LP) :

The above LP can be solved efficiently. The obtained solution gives the transmission rate allocation, i.e., , and transmission topology, i.e., , for each multicast . Based on the transmission rate allocation and transmission topology for each multicast , secure linear multicast codes can be designed individually [19] to achieve the maximum total SWT given by the objective (2). We refer to the algorithm based on LP to find the transmission rate allocation and transmission topology for multicasts as the optimal rate allocation and transmission topology selection for multiple multicasts (MORT) algorithm.

3.2. The SMMS Problem with Source Selection

In the above subsection, we have considered the SMMS problem in the case that each group of sensors is connected with a fixed network device; i.e., each multicast has a fixed source. In this subsection, we will further study the SMMS problem in the case that each group of sensors can decide to connect to a network device; i.e., the source of each multicast can be selected from a set of nodes. Specifically, it means that the source of multicast in core network is different when each group of sensors selects different network devices. Obviously, such source selection will have impacts on the total SWT when multiple multicasts exist in the network. Based on the knowledge that the set of network devices can be selected for each group of sensors, for each multicast, we will select one node as the source node of the multicast in the core network. In the following, we firstly model the problem as a mathematical programming. Then, by linearizing the mathematical programming, we have integer linear programming (ILP) algorithm. Finally, we design an efficient Multicast Based on LP-Relaxation (MBLP) algorithm based on linear programming relaxation. We firstly define new parameters and decision variables as shown in Table 4.

We can formulate the SMMS problem with source selection as follows:

The meanings of the objective and the constraints in the above mathematical programming are shown in Table 5.

Similar to the linearization of , the mathematical programming can be equivalently transformed into a LP. The following linear constraints can be used to replace constrains (26)-(27) in :

Specifically, the constraint (34) replaces constraint (26), and constraints (35) and (36) replace constraint (27). Therefore, according to the above linearization, the SMMS problem with source selection can be formulated into the following ILP ;

When the size of the SMMS problem with source selection is small, the above ILP can be used to obtain the optimal source selection, rate allocation, and transmission topology for multicasts. However, with the increase of the problem size, the computational complexity of the ILP will be extremely high. Therefore, we next propose an efficient Multicast Based on LP-Relaxation (MBLP) algorithm to get the approximate optimal solution. Specifically, we will firstly relax the integer linear constraints of the ILP and obtain the solution of the linear programming. We then round these real number solutions to integer solution.

The MBLP algorithm mainly includes the following steps:

Replace constraint (32) by constraint (38):

The objective (18), constraints (19)–(25), constraints (28)–(31), and constraints (33), (34), (35), (36), and (38) compose a new LP. We denote the optimal solution of the LP as , in which , . , and , is the optimal solution obtained by solving the LP relaxed by ILP . We note that the value of may not be an integer.

For each multicast , , we will select one node from the available source node set as its source node. Specifically, as shown in Algorithm 1, for each multicast , we select the node in the available source node set who has the biggest value in set as the source node of the multicast, and let the corresponding value be and other values in be .

(1) Replace constraint (32) by constraint (38) in .
(2) Obtain the optimal solution by solving the LP consisting of the objective (18), constraints
  (19)–(25), constraints (28)–(31) and constraints (33), (34), (35), (36), and (38).
(3) For the multicast, select the node who has the biggest value in set as its source node, and
  let the corresponding value be and other values in be 0.
(4) After selecting the source node for each multicast, treat , as the know
  parameters in and solve it to obtain the optimal transmission rate allocation and transmission topology.

After obtaining the values of the , and , we treat them as known parameter in . Accordingly, becomes LP and we can solve it to obtain the optimal transmission rate allocation and transmission topology. Furthermore, secure linear multicast code can be further designed for multicast individually [19] to achieve the throughput obtained by .

4. Simulation Results

In this section, we will conduct extensive simulations to evaluate the performance of the proposed MORT algorithm and the MBLP algorithm for the SMMS problem with fixed source and source selection, respectively.

4.1. Simulation Settings

We will use the Waxman model [20] to generate the random network topology to represent the core network. Specifically, in the Waxman model, there are three parameters: , , and the size of the domain is .

We randomly select nodes in as the set of destination nodes . For the multicast, we first randomly select the value from and then randomly select nodes from the set of destination nodes as the set . For the SMMS problem with fixed source, we randomly select one node in for the multicast as its source node. On the other hand, for the SMMS problem with source selection, we first randomly select the value from and then randomly select nodes from for the multicast as the source set . In addition, nodes are randomly selected from the remaining nodes as passive attackers. For each link , its bandwidth capacity is selected randomly from .

For the multicast, the number of data streams is randomly selected from . Moreover, for the data stream of the multicast, the weight is given by the following steps. Firstly, we randomly select a number from . Then, the weight can be calculated by , which makes sure that the total weights of a multicast with streams are .

In the following simulations, for each set of parameters, we conduct 50 different groups of network topologies and obtain the average value of them. Moreover, for each figure shown in Figures 4 and 5, the performance is evaluated when changing only one parameter. In detail, the parameters used in our simulations are shown in Table 6. The default values of related parameters are , , , , , , , , , and .

4.2. Performance of the MORT Algorithm

In order to evaluate the performance of the MORT algorithm, we will compare the MORT algorithm with an upper bound (UB). Specifically, when the constraint (15) and the constraint (16) in the LP are removed, the objective value obtained by the LP is obviously an upper bound of the MORT algorithm.

We will compare the performances of the MORT algorithm with UB when the following seven sets of parameters change.

4.2.1. Network Parameters: , , and

With the increase of , the number of nodes in the network topology increases. When the parameter is a constant, more links can be selected to transmit data streams. Therefore, as shown in Figure 4(a), both the MORT algorithm and the UB can achieve higher weighted throughput. However, the MORT algorithm not only guarantees the WS requirements during the transmission, but also keeps the relative gap of the upper bound weighted throughput within 10%, even when the number of nodes and links are sufficiently large in the network. Moreover, with the increase of the node density, the SWT of the MORT algorithm is closer to that of UB.

As shown in Figures 4(b) and 4(c), with the increase of and , the weighted transmission throughput of the two algorithms also increases. Since or becomes larger, the probability of the existence of the link between two nodes also increases. Although the node density in the network does not change, the number of links in the network increase with the increase of or , which directly increases the transmission throughput of the network. On the other hand, when the network is sparse, the relative gap between the SWT obtained by the MORT algorithm and weighted throughput obtained by UB is about 10%. Moreover, when the network becomes denser, the MORT algorithm is closer to UB.

4.2.2. Number of Multicasts

As shown in Figure 4(d), with the increase of multicast, both the SWT of MORT and the weighted throughput of UB increase, because more multicast leads to larger total weighted throughput. However, since the SWT of MORT is limited by the WS requirements, the gap between the MORT and the UB increases with the increase of .

4.2.3. Number of Destination Nodes

In Figure 4(e), both the SWT of the MORT and the weighted throughput of UB decrease with the increase of the number of destinations. The reason is that, in each multicast, all the destinations should receive data streams with the same rate, i.e., the throughput of the multicast. Therefore, the more destinations, the lower the SWT achieved by the MORT and the weighted throughput of UB.

4.2.4. Number of Malicious Nodes

As we can see from Figure 4(f), the weighted throughput of the UB remains stable with the increase of . The reason is that the UB does not consider the security of data transmission. On the other hand, with the increase of malicious nodes, the SWT of MORT algorithm decreases. This is because that the SWT of MORT is limited by the WS requirements on all malicious nodes. It is worth noting that, even when , i.e., 90% of intermediate nodes are malicious, the MORT algorithm also can achieve SWT 49, which also can achieve 86% weighted throughput of the UB.

4.2.5. The Maximum Number of Data Streams

As shown in Figure 4(g), the weighted throughput of the UB does not change with the increase of . This is because when the network topology is fixed, the increase of the number of data streams in a multicast will not affect the weighted throughput of the multicasts. On the other hand, the SWT obtained by the MORT algorithm increases with the increase of . When the number of data streams of a multicast increases, different data streams can be encoded together to satisfy the requirements of WS. It means that the constraints (15) and (16) related to the requirements of WS will be easily satisfied. Therefore, with the increase of , the SWT obtained by the MORT algorithm will be closer to the weighted throughput obtained by the UB. We note that the gap between them tends to 0 when is large enough.

4.2.6. The Maximum Link Bandwidth Capacity

As shown in Figure 4(h), when the link bandwidth capacity becomes larger, both the SWT of the MORT and the weighted throughput of UB increase. The reason is obvious. In addition, the relative difference between the SWT obtained by the MORT algorithm and the weighted throughput obtained by the UB is no more than 10%.

4.2.7.

As mentioned in the example of Section 1, to maximize the total SWT, the weight of each data stream is an important parameter and it will directly affect the network weighted throughput. As shown in Figure 4(i), when the network topology is fixed, with the increase of the weight of each data stream, it will inevitably lead to a rapid increase of both the SWT of the MORT and the weighted throughput of UB. Moreover, the increase of the weight of each data stream also amplifies the gap between the SWT of the MORT and the weighted throughput of UB.

4.3. Performance of the MBLP Algorithm

In order to evaluate the performance of the MBLP algorithm, we will compare it with the Random Selection (RS) algorithm. Specifically, in the RS algorithm, we randomly select a node from the node set as the source node of the multicast, , and then obtain the maximum SWT by solving the MORT algorithm. Therefore, the SWT achieved by the RS algorithm composed a lower bound of the SMMS problem with source selection. We will compare the performances of the MBLP algorithm with the RS algorithm when the , i.e., the maximum size of the source node set, changes.

As shown in Figure 5, when the becomes larger, the SWT achieved by both algorithms increases significantly. The reason is that, for each multicast, the more the nodes that can be selected as the source, the higher optimization space (probability) that higher SWT can be achieved by the MBLP (RS) algorithm. Since the optimization space becomes larger with the increase of , the gap between the SWTs achieved by the MBLP and the RS becomes larger.

5. Conclusion

In this paper, the secure delivery for multiple multicast with multiple streams (SMMS) problem has been considered to maximize the total secure weighted throughput (SWT). Specifically, we considered the problem in the following cases. When the source is fixed in each multicast, we firstly formulated the problem as a linear programming (LP) based on the problem model and then proposed the MORT algorithm to optimally solve the LP. When the source of each multicast can be selected from a set of nodes, we firstly formulated the problem as an integer linear programming (ILP) and then proposed a near-optimal MBLP algorithm based on LP relaxation to solve the ILP. After we proposed the MORT algorithm and the MBLP algorithm, we also designed an upper bound for the MORT algorithm and a lower bound for the MBLP algorithm, respectively. Finally, we conducted extensive simulations to evaluate the performance of the two proposed algorithms, which showed the efficiency of them. Specifically, the proposed MORT algorithm is close to the upper bound when the network size or the problem size is large, and the proposed MBLP algorithm is far away from the lower bound when the available source node set size is large.

Data Availability

The data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

The authors declare that they have no conflicts of interest.

Acknowledgments

This work is supported in part by the National Natural Science Foundation of China under Grant no. 61672370, Natural Science Research Foundation of Jiangsu Higher Education Institutions under Grants nos. 17KJB520037 and 17KJB520035, and CERNET Next-Generation Internet Technology Innovation Project under Grant no. NGII20170311.