Open Access

Full Rate Network Coding via Nesting Modulation Constellations

  • Suhua Tang1Email author,
  • Hiroyuki Yomo1, 2,
  • Tetsuro Ueda1,
  • Ryu Miura1 and
  • Sadao Obana1
EURASIP Journal on Wireless Communications and Networking20112011:780632

Received: 30 September 2010

Accepted: 14 January 2011

Published: 10 February 2011


Network coding is an effective method to improving relay efficiency, by reducing the number of transmissions required to deliver data from source(s) to destination(s). However, its performance may be greatly degraded by rate mismatch, which is seldom touched in previous works and remains a challenge. In this paper, we reinterpret network coding as a mapping of modulation constellation. On this basis, we extend the mapping to support full rate network coding (FRNC), enabling simultaneous use of different modulations by nesting the low level constellation as a subset of the high level constellation. When relay links have different qualities, the messages of different flows are combined via network coding in such a way that for each relay link, its desired message is transmitted at its own highest rate. The limit in constellation size is also addressed. Compared with the state-of-the-art solutions to rate mismatch, the proposed scheme achieves the full rate of all relay links on the broadcast channel.

1. Introduction

Wireless communications suffer greatly from multipath fading where outages may degrade communication quality. Different schemes, such as adaptive modulation and coding and relay [1], have been exploited to mitigate this problem. The relay efficiency can be improved via network coding (NC) [2] if the traffic pattern and the a priori information are exploited. Typical transmission patterns suitable for applying NC include two-way relay [35], multihop forwarding [6], multiple access channel [7], multicast channel, and so forth. In addition, joint network and channel coding can further improve spectral efficiency [7, 8].

A two-way relay transmission typically consists of two stages: multiple access stage and broadcast stage. NC is applied in the second stage and has two types. The first type of NC is performed in the bit level [3]. Each node transmits its packet to the relay node successively. The relay node decodes each packet and combines them together via NC and forwards the coded packet later. The second type of NC is performed in the signal level. Typically two nodes transmit simultaneously their packets. The relay node regards the superposed signal as a NC signal and forwards it. Each node recovers its desired signal from the NC signal with interference cancelation [4]. The NC signal is further refined in [5] by taking modulation constellations into account.

The performance of NC, especially bit level NC, is limited by several factors such as packet length mismatch (the short packets are zero padded), traffic rate mismatch (some packets cannot be network-coded due to lack of pairing packets) and transmit rate mismatch. The last factor is neglected in most previous works. In the two-way relay scenarios, the rate mismatch may be formed due to two factors. One is the relay position (which leads to relatively stable differences in link qualities) and the other is fading. Even though the relay lies exactly in the middle of two nodes, the two relay links may have different instantaneous qualities. Since the network-coded packet is intended to be received by both nodes, the minimal rate is chosen for the NC transmission [3]. In this way, the transmission at a low rate on the link supporting a high rate wastes channel bandwidth.

When NC is applied to multiple flows, the effect of rate mismatch becomes more obvious, since the minimal rate over more links only gets lower. One solution to this problem is to exploit opportunistic scheduling. Instead of transmitting network-coded packets to all potential nodes, only some of them are selected by taking the tradeoff between the number of links and the actual rate [9]. This opportunistic scheduling, however, cannot exploit the full power of NC.

Recently, some initial efforts were made to fully exploit rate adaptations in NC. Multiplicative NC was proposed in [10] to better adapt code and modulation rates to different links. However, it only applies to constant modulus signals. Unconventional 5-ary modulation was introduced to work together with QPSK in [11]. This makes modulation complex and is difficult to extend to other modulations. Compress and forward was studied in [12], with the assumption that the relay is much closer to the sink than nodes and has a much higher rate. Its application is limited to multiple access up-link. XOR-based NC and physical layer superposition coding were combined together to better exploit rate adaptation in [13], however, at the cost of significant power loss. Moreover, its performance is degraded and approaches that of NC when relay links have similar quality. Despite all these efforts, there is still no complete solution to the rate mismatch problem.

In this paper, we focus on the bit level NC and propose to achieve full rate network-coding (FRNC) on the broadcast channel via nesting modulation constellations. With a cross-layer design, we exploit physical layer method as well. The principle of dirty paper coding [14] indicates that a signal known at the receiver is not interference at all and with suitable coding the full capacity is achievable. As an analogy for NC, when the a priori information is available, NC should also achieve the highest rate over each link, in other words, achieve the full rate on the broadcast channel. This is our starting point. The basic idea is as follows: (i) at the relay node, in order to combine packets together and transmit them over links supporting different rates (modulations), the low level constellation points are nested in the high level constellation. In other words, a subset of the high level constellation is used as the low level constellation, and this subset depends on the design of NC. (ii) At the receiver side, nodes merely supporting low level modulation first find their constellation according to the a priori information and then perform demodulation and decoding. In this way, the highest rate of each link is used and the sum rate is achieved over the broadcast channel. We further study the effect of the limit in constellation size and suggest combining FRNC with superposition coding (SC). Both the analysis and simulation evaluation show that FRNC with SC is significantly superior to the state-of-the-art solutions to the rate mismatch problem.

The rest of the paper is organized as follows: the relay model is presented in Section 2 and the reinterpretation of NC as constellation mapping is addressed in Section 3. In Section 4, the detailed procedures for achieving full rate in network-coded transmissions are described. The performance of different schemes is analyzed in the two-way relay scenario in Section 5 and the related simulation evaluation is presented in Section 6. Finally, we conclude the paper with Section 7.

2. System Model

We consider a network with nodes , , and 1 relay . For the simplicity of description, we assume that all nodes and are synchronized and the transmissions are done in terms of TDMA (it is possible to extend the proposed scheme to other channel access methods such as CSMA.) There are flows. The th flow from to goes through the two-hop path - - and the actual transfer of packets is via the relay . The packet transfer is divided into two stages: (a) multiple access stage where collects packets from all nodes. Each node sends packet to in the th slot, using its optimal rate (modulation and coding). After the data transmission, each node reports its receiving status of packets to , in a similar way as the COPE scheme [15]. Based on such a feedback, makes the NC scheduling, selecting a subset of nodes, each of which knows all packets involved in the NC except its own desired packet. Without loss of generality, in the following, we assume equals . Then after slots, knows . (b) Broadcast stage where forwards packets to all nodes. transmits ( represents the bitwise exclusive or (XOR) operation) to all nodes, and recovers by . Hence, packets are exchanged in +1 slots. A typical example for the model is the local area wireless networks where nodes exchange packets via their associated access point ( in the model). A special case is , corresponding to the two-way relay in Figure 1. In this special case, each node uses its transmitted packet as the a priori information and the feedback of receiving status of packets is unnecessary.
Figure 1

Two-way relay, a special case of the general model.

Over each link, the rate can be adjusted by modulation and coding. With coding rate and modulation level (constellation size = ), on average bits can be transmitted by each symbol. Generally, the modulation level determines a rate range, within which the coding scheme further fine adjusts the rate. Different modulation levels have constellations with different sizes. But these constellations all have the same normalized energy.

In the above model, NC is used at the second stage. We focus on this stage and exploit joint design of modulation and coding so that the highest rate of each link is realized in the NC transmission. We take the following assumptions: (i) has collected enough data for each flow so that the zero-padding is unnecessary in the NC transmission, (ii) the a priori information required for network decoding is available at each node by recording the overheard packets, and (iii) the relay node knows the channel state information of all links. The key problem is how to realize full rate on all links simultaneously.

3. Reinterpretation of Network Coding

In conventional bit level NC schemes, bits from different flows are XORed together, channel coded, modulated, and then transmitted. The receiver just works in the reverse way to recover its information bits. Due to the linearity of both channel coding and NC, their order can be exchanged [16]. In this paper, the NC operation is done after channel coding.

Although the NC is performed in the bit level, it can be reinterpreted as a function of constellation mapping. This is explained by an example shown in Figure 2 using the typical QPSK constellation with gray codes. Assume relays ("01") from to , and ("11") from to , respectively. When relaying these bits, combines them together as "10" by XOR and transmits . already knows ("11"). Exploiting this as the a priori information, for all possible bits of , the NC bits and corresponding signals can be computed locally at . These signals, when interpreted as the points for , construct a new QPSK constellation . This constellation has the same size as but with a different layout due to NC. In this way, the NC function actually provides a mapping between constellations. Instead of a fixed constellation in conventional modulations, such a mapping depends on the a priori information and changes for each symbol. The reinterpretation of NC can be summarized as follows:

(i) transmits where is the channel-coded packet of the th flow, and involves NC (XOR in conventional NC) and modulation.

(ii)At the receiver side, ( in conventional NC) provides the constellation for demodulating , where is the a priori information at the th receiver.

Figure 2

Reinterpretation of network-coding by modulation.

In conventional NC schemes, the constellations for different flows have the same size and min-distance, and the latter is the main factor that decides the rate. This forces the relay node to transmit the XORed packet with the minimal rate of all links so that all nodes can correctly recover the XORed packet.

The above constellation mapping can be extended to support simultaneous use of modulations with different levels (size and min-distance). Specifically, we use constellation-compatible modulations and nest the low level constellation inside the high level constellation. For example, a subset of four 16 QAM constellation points can be used as the QPSK constellation so that over the broadcast channel QPSK is used for one link while 16 QAM is used for the other link in the two-way relay scenario. In other words, among the links supporting different modulations, the highest modulation level is always used as the container. Other low level modulations use a subset of the high level constellation as their constellations.

4. Full Rate Network Coding Protocol

In this section, we present the full rate network-coding (FRNC) protocol. First the basic idea is explained with a simple example. Then the idea is generalized. How to nest constellations, how to find the actual constellation under the NC operation, how to transmit at the relay, and how to receive at the nodes are successively described in detail.

4.1. An Example Revealing the Basic Idea

With the two-node ( ) scenario in Figure 1, we show how to use different rates over different links in the network-coded transmission. Assume that (i) links between and / support rates with , (QPSK), , (16 QAM), respectively. On average, can forward bit/symbol to and bit/symbol to . (ii) The slot length is symbols. Then 2 bits to or 4 bits to can be transmitted in a single slot. (iii) The two bits from to are = "10" and 4 bits from to are = "1101".

The transmit procedure is shown in Figure 3. At , and are channel-coded to = "1101" and = "11100010". The modulations for the two messages are QPSK and 16 QAM, respectively. To transmit the two messages together via NC, the QPSK constellation for is nested in the 16 QAM constellation used for . The nesting is realized by postcoding. In this example, by repetition codes with rate = 1/2, is encoded to = "11110011", with the same length as = = "11100010". The XORed sum of and is = "00010001". Then is modulated with the 16 QAM constellation (using gray codes) shown in Figure 4, and transmits .
Figure 3

Coding and modulation at the relay node.

Figure 4

Nesting QPSK constellation in 16 QAM constellation.

The receive procedure is shown in Figure 5. At the th node, the signal received from is . For simplicity, noise and channel fading are ignored. In the same way as the relay performs channel coding and post-coding, = "11110011" is calculated from at , and = "11100010" is calculated from at , and are used as the a priori information in the network decoding stage.
Figure 5

Recover information bits at the nodes.

Since has the same modulation level as the one supported by the quality of link , decoding at is the same as usual. At first, = "00010001" is demodulated from . With = "11110011" as the a priori information, = = "11100010" is obtained and then = "1101" is channel decoded. has a higher modulation level than the one supported by the quality of link . Therefore, the decoding at is a little more complex. The QPSK constellation to be used at depends on the a priori information and has to be constructed from the 16 QAM constellation. With repetition codes used in the post-coding stage in this example, two bits carried in a QPSK symbol are post-coded to , corresponding to a 16-QAM symbol. With as the a priori information, varying , the possible NC bits and the corresponding signals can be computed. Table 1 shows the derived QPSK constellations for demodulating , with the four a priori bits as an index.
Table 1

Constellation conversion from 16 QAM to QPSK ( represents the a priori info, are the info bits to be received).

a priori info

QPSK constellation ( )

















At , with = "11100010" known a priori, for the first symbol in , = "1110", is to be demodulated with the QPSK constellation (refer to Table 1); for the second symbol in , = "0010", is to be demodulated with the QPSK constellation . Here, logically corresponds to . It is demodulated to = "1101" and converted to = "10" after channel decoding. In this way network decoding is realized by the constellation conversion.

A simple comparison on the broadcast channel, among decode-and-forward (DF), bit level NC with minimal rate, and FRNC, is summarized in Table 2. With DF, uses one symbol for each node and thus transmits 3 bits in total. With NC, transmits = 4 bits. With FRNC, transmits = 6 bits using two symbols.
Table 2

A comparison of the broadcast channel among three schemes, for the scenario shown in Figure 1.



# transmitted bits



NC (min rate)


FRNC (full rate)


Although superposition coding handles links with different qualities as well, the proposed FRNC scheme is quite distinct from it. Constellation nesting fully exploits the power on each link by using the a priori information in times of decoding. As a comparison, superposition coding does not exploit the a priori information for decoding the desired signal. Instead, the total power is divided into two parts, most power for the base layer signal and little power for the secondary layer signal, which results in significant power loss in transmitting the secondary layer signal.

In the following sections, we extend the above idea to more general cases and study the related post-coding scheme and the decoding method.

4.2. Nesting Constellations

We first consider how to nest -QAM (we focus on the constellations in the form of grid, extension to other forms of constellations is also possible.) in -QAM ( , , ). A simple way is to choose a subset of -QAM constellation points as the -QAM constellation. We construct the -QAM constellation by dividing -QAM into subsets. Let the min-distance of -QAM be . The points of -QAM with a distance to their neighbors are grouped into the same subset. In this way, the -QAM constellation is divided into subsets, each of which having the same size .

Choosing points for (non-QAM) BPSK requires one more step: after choosing a subset for QPSK from the QAM constellation, select two diagonal points from the QPSK constellation for BPSK.

A single point of the -point constellation can only carry information bits. But after nesting it inside the -constellation, its bit vector is extended to bits. There should be a bit-mapping. The only subset, which contains the all-zero bit-vector, is used for bit mapping from to .

Figure 4 shows an example of dividing 16 QAM to find QPSK constellations, where , , , . The 16 QAM constellation is divided into four subsets: = , = , = , = .   =   is the constellation for 16 QAM. QPSK may use any as its constellation point, although with a different layout under NC.

Table 3 shows some bit mapping methods, where the    -bit vectors are one-to-one mapped to    -bit vectors in the subset containing the all-zero vector. The left column represents the nesting method, the second column is the original bits to be transmitted with low level constellation, and the right column shows the bit vectors in the nested constellation. With the bit mapping, the bits of low-level constellations are modulated to the subsets of high-level modulation, and the function of post-coding in Figure 3 is realized.
Table 3

Some bit mapping methods.

Nesting Method

Bits in low-level constellation

Bits for sub-set in container constellation


0, 1

00, 11

BPSK in 16 QAM

0, 1

0000, 1111

QPSK in 16 QAM

00, 01

0000, 0011


10, 11

1100, 1111

QPSK in 64 QAM

00, 01

000000, 000110


10, 11

110000, 110110

16 QAM in 64 QAM

0000, 0001

000000, 000011


0010, 0011

000101, 000110


0100, 0101

011000, 011011


0110, 0111

011101, 011110


1000, 1001

101000, 101011


1010, 1011

101101, 101110


1100, 1101

110000, 110011


1110, 1111

110101, 110110

The constellation nesting may have SNR loss since the min-distance of the nested constellation may be a little less than that of the standard one. For example, with normalized energy, the min-distance of two 16-QAM points equals 0.6325. When nesting QPSK inside 16 QAM, the min-distance equals , which is 0.97 dB less than 1.414, the min-distance of normal QPSK constellation. Table 4 shows the SNR loss, where the horizontal and vertical labels stand for original constellations and container constellations, respectively. Although nesting QPSK in 16 QAM has SNR loss of about 0.97 dB, nesting other constellations has little SNR loss (0.05 dB for 64 QAM in 256 QAM) or no SNR loss (0 dB for BPSK in QPSK) at all. The SNR loss is taken into account when choosing rate (modulation and coding) according to SNR.
Table 4

Potential SNR loss in constellation conversion.




16 QAM

64 QAM




16 QAM

−0.97 dB

−0.97 dB


64 QAM

−1.18 dB

−1.18 dB

−0.21 dB


256 QAM

−1.23 dB

−1.23 dB

−0.26 dB

−0.05 dB

4.3. Actual Constellation under Network Coding

The next important issue is to find the actual constellation layout under NC. We explain this with Figure 4 as an example. It can be easily verified that the division has the following property:

Equation (1) shows that, for a point in the high level constellation ( ), if is in the subset , it maps to by the NC operation. The actual constellation layout of for demodulating is determined by , with known a priori at the receiver. Although a constellation under NC changes with the a priori information, the min-distance for -QAM, under all the a priori information, remains the same: .

As for the example in Figure 1, using the third row of Table 3, two bits are post-coded to . With being received and known a priori at , the QPSK constellation for demodulating is looked up in Table 1 by using as an index. For example, when = "1110", is equivalent to . Since the derived QPSK constellation depends on the a priori information, it changes for each symbol. Recovery of other constellations can be done in a similar way.

4.4. Encoding/Modulation at the Relay

Figure 3 shows the transmit procedure at relay . For each flow , according to the SNR of its relay link, finds the transmit rate from an empirical SNR-rate table shown in Table 5. SNR loss due to constellation nesting is considered in this process: the rate corresponding to SNR is lowered if SNR loss makes this rate improper.
Table 5

SNR threshold for rate adaptation (for a message consisting of 4800 symbols).

SNR (dB)

Modulation and coding



BPSK (1/2)



BPSK (3/4)



QPSK (1/2)



QPSK (3/4)



16 QAM (1/2)



16 QAM (3/4)



64 QAM (2/3)



64 QAM (3/4)



256 QAM (2/3)



256 QAM (3/4)


Assume, without loss of generality, that rates, , over links from to , are in the increasing order, that is, . Each corresponds to a coding rate and a modulation level . , are also in the increasing order.

Transmission at is done by the following steps.
  1. (i)

    Every time transmits a fixed number of symbols, . For each flow , the number of information bits that can be transmitted is . These information bits form a frame . On channel coding with rate is performed, which generates . , , have different length in bits.

  2. (ii)

    In order to transmit , the constellation should be nested in . This is done by the bit mapping (POST-COD) according to Table 3, which maps to and encodes to .

  3. (iii)

    are XORed together as . , modulated to signal with constellation , is transmitted to all nodes with out-of-band rate information (each node only records the information bits on overhearing packets from nearby nodes to the relay. With the rate information from the relay, the node performs the same channel coding/post coding as the relay and calculates the coded bits as the a priori information for network decoding.)


4.5. Demodulation/Decoding at the Receiver

Figure 5 shows the demodulation and decoding procedure at all nodes. At the th node, the signal received from is

where is the channel gain and is zero mean additive white Gaussian noise (AWGN).

A node , supporting the used constellation ( ), performs soft demodulation and calculates symbol log-likelihood ratio (LLR) [17] and then converts to bit LLR. The bit LLR corresponds to XORed bits from all flows. With the a priori information bits ( ) known in advance, the LLR of desired bits can be recovered and then channel decoding is performed. The whole procedure is shown in the right side of Figure 5.

For a receiver requiring a lower constellation , at first the low-level constellation is derived by exploiting the a priori information, as described in Section 4.3. This derivation of constellation is actually network decoding. Then the received signal is demodulated with the derived constellation and later channel decoded to recover the bits, as shown in the left side of Figure 5.

4.6. Discussion: Constellation Size Limit

FRNC requires that constellation size should be large enough so that high rate can be used at high SNR. In practical systems, there is a constraint on the constellation size which restricts the maximal rate. The maximum of constellation size, referred to as the constellation size limit hereafter, confines the performance of FRNC. In such cases, FRNC can be used together with superposition coding (SC) to fully exploit the transmit power. NC is already used together with SC in [13], where the fine scheduling is used to combine links with almost the same gain and apply NC to them. For links with quite different gains, SC is applied. But such a scheduling heavily depends on the actual topology. As a comparison, we replace the NC in [13] with FRNC and suggest FRNC + SC, which is analyzed in Section 5.

5. Performance Analysis of Two-Way Relay

In this section, we analyze the performance of different schemes under the two-way relay scenario shown in Figure 1. Six schemes are compared here. (i) DF, the decode-and-forward scheme, (ii) NC, the normal bit level NC scheme with minimal rate constraint, (iii) SC, the superposition coding scheme, (iv) NC + SC, the iPack scheme in [13], (v) FRNC, and (vi) FRNC + SC. In the analysis, we assume (i) each channel has zero mean AWGN noise with variance ; (ii) channel gain of the link - is ; (iii) each symbol has normalized energy and the SNR over each link is , (iv) the packet length is infinite.

5.1. Capacity without Fading

With FRNC, the capacity of the broadcast channel reaches the sum rates of the two links (here, we ignore SNR loss in constellation nesting for simplicity. the SNR loss is taken into account in the simulation evaluation),
The capacity of DF is half of that of FRNC,
The capacity of NC is
Next we calculate the throughput of NC + SC, SC, FRNC + SC, where SC is involved. Assume, without loss of generality, that . Part of the power is used to transmit the base layer signal (the NC coded message in NC + SC, the plain message in pure SC, the FRNC coded message in FRNC + SC), and the remaining power is used to transmit the secondary signal to . The transmitted signal is
At , SNR of the received base layer signal ( ) is
Since is an increasing function of , and the rate used for the NC coded message is determined by . At , after perfect interference cancellation, the SNR of the secondary layer signal is
The throughput of NC + SC under given , , and , is
By differentiating with respect to , its maximum can be obtained at . To achieve the maximal capacity, the power allocation should be done as follows:
The capacity of the pure SC is as follows:

This is a decreasing function of and reaches its maximum when approaches 0. With the constellation size limit in practical systems, over the link - , all SNR greater than a certain threshold supports the maximal rate. When is large enough, it is sufficient to choose so as to satisfy . The rest of the power can be used for the SC transmission over the link - .

As for FRNC + SC, the FRNC coded message replaces in (6), and its capacity is as follows:
It is interesting to see that the power allocation has no capacity loss over the link - . The only loss compared with FRNC is the part over the - link, which approaches 0 as approaches 1. is an increasing function of . Without constellation size limit, should be set to 1, and FRNC + SC degenerates to FRNC. With the constellation size limit, devoting full power to transmitting the FRNC coded packet is unnecessary. Therefore, the SC coding should be used and is divided into two parts, and . The optimal power allocation policy is as follows:

The power allocation can be explained as follows: (i) when is small enough ( ), all power ( ) should be used for FRNC since its rate is not saturated yet. (ii) As gets greater than , should be set to satisfy . The maximal rate is used over link - for FRNC, and the extra power is used for the SC transmission over the link - . (iii) If is very large, both the FRNC and SC transmission reach the maximal rate over the link - , and is chosen to satisfy for the SC transmission. The rest power is used in improving the FRNC rate over the link - .

5.2. Capacity with Fading

Next we consider the effect of fading and assume each channel experiences block Rayleigh fading. follows the exponential distribution: , and the joint distribution is . The average throughput can be calculated by numerical integration.

With a two-way relay scenario similar to the one shown in Figure 1, we study how the position of the relay node affects the system performance. Adjusting the position of between and changes the normalized distance . Average SNR ( ) of links and is calculated from the normalized distance according to the two-ray model [18] with the path loss exponent (equaling 3 in the simulation). When lies in the middle of and , the average SNR of both relay links equals 20 dB. is set to the optimal value for schemes employing SC.

Figure 6 shows the average throughput of different schemes, where there is no limit on constellation size. The curve of FRNC + SC overlaps with that of FRNC. Both outperform other schemes. As analyzed before, SC in NC + SC only works under certain conditions. When the relay is near the middle point, the difference in link quality is not very large. NC + SC degenerates to NC, as is clear when the distance equals 0.5. Without constellation size limit, the best link is always chosen in SC, and the two-way communication becomes unidirectional. The performance of NC is greatly affected by the min-rate, especially when the relay is away from the middle point and the difference in link quality becomes large. Due to the effect of fading, two links with the same average SNR have different instantaneous SNR. Therefore, FRNC/FRNC + SC outperform NC and NC + SC even when the normalized distance equals 0.5.
Figure 6

Throughput achieved by different schemes on the broadcast channel-effect of relay position for two way relay (theoretical calculation, no constellation size limit).

6. Numerical Results

In this section, we evaluate the proposed FRNC and FRNC + SC schemes using Monte-Carlo simulations. Each slot consists of 4800 symbols. Messages are coded by a 4-state recursive systematic convolutional (RSC) code with the generator matrix (1, 5/7). Modulation and coding schemes shown in Table 5 are used. Altogether, 10 different transmit rates can be supported. The number of information bits in a message varies from 2400 bits to 28800 bits. Messages are transmitted from to nodes via different schemes and decoded accordingly. In the evaluation, we focus on the broadcast channel, and compare FRNC, FRNC + SC against DF, NC [3], NC with opportunistic scheduling (NCSched) [9], SC, and NC + SC [13]. SNR loss in FRNC is taken into account when choosing rates for transmissions. It is assumed that each link experiences independent block Rayleigh fading. Modulation constellations are adopted from IEEE 802.11a and the related parameters (symbol period, number of subcarrier) are used in calculating throughput [19].

With the two-way relay scenario shown in Figure 1 and the same setting as in Section 5.2, we compare the actual throughput achieved by different schemes, with the practical constellation size limit. Figure 7 shows the total throughput of different schemes on the broadcast channel with respect to the normalized distance, where the largest constellation is 256 QAM. Generally speaking, Figure 7 shows similar trend as Figure 6. But with the limit in constellation size, some differences do occur: (i) FRNC + SC outperforms FRNC, (ii) at a small distance, FRNC and NC + SC have similar performances, and (iii) the difference between FRNC + SC and NC + SC gets larger than that in Figure 6. By the optimal allocation of power between FRNC and SC, the best performance is achieved in FRNC + SC under all distances. When the distance equals 0.30, FRNC + SC reaches the largest throughput gain, 25.8%, against NC + SC. At this distance, FRNC + SC achieves a much larger gain, 74.2%, against NC. The cumulative density function of the throughput at this distance is shown in Figure 8. The superiority of FRNC and FRNC + SC over other schemes is very clear.
Figure 7

Throughput achieved by different schemes on the broadcast channel-effect of relay position for two way relay (simulation results, largest constellation is 256 QAM).

Figure 8

Cumulative density function of throughput achieved on the broadcast channel (normalized distance = 0.3 in Figure 7).

Figure 9 shows the effect of constellation size limit. When the largest constellation is constrained to 64 QAM instead of 256 QAM, the performance of both FRNC + SC and FRNC is degraded. But the performance of FRNC + SC is less affected, where the extra-power is used in SC transmission than being wasted in FRNC.
Figure 9

Throughput achieved by different schemes on the broadcast channel-effect of relay position for two way relay.

Next the effect of the number of nodes, , is evaluated. Average SNR of all relay links is fixed at 20 dB. In such scenarios, SC can hardly be used. Therefore, only the schemes without using SC are compared. Figure 10 shows the throughput on the broadcast channel. DF transmits in a TDMA manner. Therefore, it cannot benefit from the increase in nodes and its throughput is almost a constant value. On the other hand, NC, NCSched and FRNC all benefit from the increase in flows more or less. Due to the different capability in handling rate mismatch, the slopes of three curves differ greatly. FRNC always has the highest throughput because the rate mismatch problem is completely solved and full rate is achieved.
Figure 10

Throughput achieved by different schemes on the broadcast channel, effect of the number of nodes. (simulation results, largest constellation is 256 QAM).

7. Conclusions

Recently, network coding is widely studied for improving the relay efficiency in wireless networks. Its performance, however, is greatly limited by factors such as rate mismatch. In this paper, we reinterpreted network coding as a mapping between modulation constellations and extended this mapping to enable simultaneous use of different modulations in network-coded transmissions. In this way, the highest rate over each link can be used and the sum rate can be achieved over the broadcast channel. As a result, the rate mismatch problem is completely solved. The only shortcoming of the proposed scheme is its SNR loss in nesting constellations. This little SNR loss is acceptable if the throughput gain is taken into account. We will further study the effect of the direct link and the potential errors at relay node.



This research was performed under research contract of "Research and Development for Reliability Improvement by The Dynamic Utilization of Heterogeneous Radio Systems", for the Ministry of Internal Affairs and Communications, Japan.

Authors’ Affiliations

ATR Adaptive Communications Research Laboratories
Faculty of Engineering Science, Kansai University


  1. Fitzek FHP, Katz MD: Cooperation in Wireless Networks: Principles and Applications. 1st edition. Springer, New York, NY, USA; 2006.View ArticleGoogle Scholar
  2. Ahlswede R, Cai N, Li SYR, Yeung RW: Network information flow. IEEE Transactions on Information Theory 2000, 46(4):1204-1216. 10.1109/18.850663MATHMathSciNetView ArticleGoogle Scholar
  3. Larsson P, Johansson N, Sunell KE: Coded bi-directional relaying. Proceedings of the IEEE 63rd Vehicular Technology Conference (VTC '06), July 2006 2: 851-855.Google Scholar
  4. Popovski P, Yomo H: Bi-directional amplification of throughput in a wireless multi-hop network. Proceedings of the IEEE 63rd Vehicular Technology Conference (VTC '06), July 2006 2: 588-593.Google Scholar
  5. Zhang S, Liew SC, Lam PP: Hot topic: physical-layer network coding. Proceedings of the 12th Annual International Conference on Mobile Computing and Networking (MOBICOM '06), September 2006 358-365.View ArticleGoogle Scholar
  6. Katti S, Gollakota S, Katabi D: Embracing wireless interference: analog network coding. Proceedings of the ACM : Conference on Computer Communications (SIGCOMM '07), August 2007 397-408.Google Scholar
  7. Hausl C, Hagenauer J: Iterative network and channel decoding for the two-way relay channel. Proceedings of the IEEE International Conference on Communications (ICC '06), July 2006 4: 1568-1573.Google Scholar
  8. Tang S, Cheng J, Sun C, Miura R, Obana S: Joint channel and network decoding for XOR-based relay in multi-access channel. IEICE Transactions on Communications 2009, E92-B(11):3470-3477. 10.1587/transcom.E92.B.3470View ArticleGoogle Scholar
  9. Yomo H, Popovski P: Opportunistic scheduling for wireless network coding. IEEE Transactions on Wireless Communications 2009, 8(6):2766-2770.View ArticleGoogle Scholar
  10. Larsson P: A multiplicative and constant modulus signal based network coding method applied to CB-Relaying. Proceedings of the IEEE 67th Vehicular Technology Conference (VTC '08), May 2008 61-65.Google Scholar
  11. Koike-Akino T, Popovski P, Tarokh V: Denoising maps and constellations for wireless network coding in two-way relaying systems. Proceedings of the IEEE Global Telecommunications Conference (GLOBECOM '08), December 2008 3790-3794.Google Scholar
  12. Zeitler G, Koetter R, Bauch G, Widmer J: On quantizer design for soft values in the multiple-access relay channel. Proceedings of the IEEE International Conference on Communications (ICC '09), June 2009Google Scholar
  13. Alimi R, Li LI, Ramje R, Viswanathan H, Yang YR: IPack: in-network packet mixing for high throughput wireless mesh networks. Proceedings of the 27th IEEE Communications Society Conference on Computer Communications (INFOCOM '08), April 2008 66-70.Google Scholar
  14. Costa MHM: Writing on dirty paper. IEEE Transactions on Information Theory 1983, IT-29(3):439-441.View ArticleGoogle Scholar
  15. Katti S, Rahul H, Hu W, Katabi D, Médard M, Crowcroft J: XORs in the air: practical wireless network coding. Proceedings of the Conference on Computer Communications (SIGCOMM '06), 2006 243-254.Google Scholar
  16. Xiao L, Fuja TE, Kliewer J, Costello Jr DJ: Nested codes with multiple interpretations. Proceedings of the 40th Annual IEEE Conference on Information Sciences and Systems (CISS '06), 2007 851-856.Google Scholar
  17. Hagenauer J, Papke L, Offer E, Papke L: Iterative decoding of binary block and convolutional codes. IEEE Transactions on Information Theory 1996, 42(2):429-445. 10.1109/18.485714MATHView ArticleGoogle Scholar
  18. Goldsmith A: Wireless Communications. Cambridge University Press, New York, NY, USA; 2005.View ArticleGoogle Scholar
  19. IEEE Computer Society LAN MAN Standards Committee : LAN Medium Access Protocol (MAC) and Physical Layer (PHY) Specification. IEEE Std 802.11-2007, IEEE, 2007Google Scholar


© Suhua Tang et al. 2011

This article is published under license to BioMed Central Ltd. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.