1 Introduction

Recently, multimedia data traffic has rapidly increased, placing a significant burden on base stations (BSs). Thus, Release 12 of the 3rd Generation Partnership Project (3GPP) is proposing direct-mode communications to solve the problem. Among these schemes, device-to-device (D2D) communication in cellular networks is a strong candidate [1]. The idea of D2D communication in cellular networks was first proposed by Doppler et al. [2]; this scheme enables D2D users to communicate directly with each other without passing through a base station (BS). Therefore, it can not only reduce the burden on the BS, but also achieve higher total throughput of cellular networks. In general, D2D users can communicate within either uplink or downlink resources. If D2D users communicate within an uplink resource, only the BS receives interference from the D2D users, whereas if D2D users communicate within a downlink resource, the interference affects every cellular user nearby. Hence, it is an important challenge to properly manage interference. As a result, many studies have proposed new algorithms that incorporate mode selection [3, 4], resource sharing [5, 6], power allocation [7, 8], interference cancellation [9, 10], and so on. All of these studies show the success of improving the total system throughput in cellular networks; however, in these studies, D2D communication links were limited to one-to-one communication for simplicity.

The great success of one-to-one D2D communication has motivated us to consider information exchanges between more than two D2D users. Thus, we are interested in the following question: if there are many D2D users who want to exchange their information symbols simultaneously, is there any efficient method to exchange all information symbols in a shorter time period? Conventional one-to-one D2D communication cannot exchange symbols between many users simultaneously. Therefore, in this paper, we introduce a new link type, called multi-link D2D communication. It enables more than two D2D users to exchange their information symbols, similar to a mesh network. Our scheme can be easily understood using an example with four nodes. In this example, there are two senders and two downloaders in a D2D communication network. In the first time period, the senders directly transmit the same data (but different symbols) to each downloader. The downloaders then directly exchange the received different symbols with each other, while receiving new symbols from the senders in the second time period. An important point to notice here is that the exchange between the downloaders and the reception from the senders should be conducted simultaneously to reduce the consumed time period.

Therefore, a transmission scheme suitable for multi-link D2D communication in cellular networks is required. When the D2D users communicate directly using one-to-one communication, considering the transmission scheme is of minor importance. However, if the number of D2D communication links is increasing, the importance of the transmission scheme increases because of transmission efficiency and reliability. In general, space-time block coding (STBC) [11] and spatial multiplexing (SM) [12] are the best-known transmission schemes in wireless MIMO systems. STBC focuses on the advantages of diversity to improve MIMO system performance, whereas the SM scheme focuses on the spectral efficiency advantage of the MIMO system. According to [13], there is trade-off between diversity and multiplexing gains. However, by combining these two schemes, both diversity gains and higher data rates can be achieved simultaneously. The combined scheme is called hybrid STBC–SM [14, 15]. It is very efficient because the information symbols are transmitted to not only space and time domains, but also spatial (i.e. antenna) domains. Hence, in this paper, we exploit hybrid STBC–SM to facilitate multi-link D2D communication in cellular networks, as an extension of [16]. Hybrid STBC–SM may achieve wireless physical transmissions for multi-link D2D communication on the assumption that different orthogonal sub-channels are allocated to each downloader.

The remainder of this paper is organized as follows. The system model is briefly described in Sect. 2. The proposed hybrid STBC–SM scheme suitable for multi-link D2D communication is presented in Sect. 3. Finally, a simulation evaluation and conclusions are presented in Sects. 4 and  5, respectively.

2 System Model

Figure 1 shows the proposed multi-link D2D communication scheme in a cellular network. We assume that there are both cellular and D2D users, and they share the uplink resources of the cellular network. The BS has information specifying the number of symbols that the data consists of, as well as perfect channel state information (CSI). A similar process is described in detail in [3]. Thus, the BS can allocate dedicated resources among the D2D users to avoid interference, and control the transmissions of the D2D users (e.g. deciding what to transmit). Although there are various types of D2D communication links, this paper focuses only on four-node D2D communication.

Fig. 1
figure 1

Multi-link D2D communication in cellular networks

As noted before, multi-link D2D communication requires a suitable and efficient transmission scheme, because of its effect on reliability and data rates. Thus, we consider hybrid STBC–SM, which may achieve wireless physical transmissions for multi-link D2D communication on the assumption that different orthogonal sub-channels are allocated to each downloader.

Let us consider a system model of a hybrid STBC–SM scheme. The received symbol matrix \({\mathbf {Y}^m}(T)\) of the m-th receiver in the T-th time group can be expressed as follows.

$$\begin{aligned} {{\mathbf {Y}}^m}(T) = {{\mathbf {H}}^m}(T){{\mathbf {X}}^m}(T) + {{\mathbf {N}}^m}(T), \end{aligned}$$
(1)

where \({{\mathbf {H}}^m}(T)\), \({{\mathbf {X}}^m}(T)\), and \({{\mathbf {N}}^m}(T)\) denote the channel, transmitted symbol, and noise matrices, respectively, and time group T consists of two time periods (i.e. t and \(t+1\)). If we assume that the channel remains constant over one time group (e.g. \(h_{ij}^{mk}(t) = h_{ij}^{mk}(t + 1)\)), we can write the channel matrix \({{\mathbf {H}}^m}(T)\) as

$$\begin{aligned} {{\mathbf {H}}^m}(T) = \left[ {\begin{array}{ll} {h_{11}^{mk}}&{}\quad {h_{12}^{mk}}\\ {h_{21}^{mk}}&{}\quad {h_{ij}^{mk}} \end{array}} \right] , \end{aligned}$$
(2)

where \({h_{ij}^{mk}}\) denotes the channel gain between the i-th receiving antenna of the m-th receiver and the j-th transmitting antenna of the k-th transmitter. During the T-th time group, every two symbols are grouped using \(2\times 2\) space-time encoding [11], and transmitted to the m-th receiver as

$$\begin{aligned} {{\mathbf {X}}^m}(T) = \left[ {\begin{array}{ll} {x_l(t)}&{}\quad { - x_{l + 1}^*(t + 1)}\\ {x_{l+1}(t)}&{}\quad {x_l^*(t + 1)} \end{array}} \right] , \end{aligned}$$
(3)

where l denotes the symbol stream index. The additive white Gaussian noise matrix \({{\mathbf {N}}^m}(T)\) for the m-th receiver at the T-th time group is given as

$$\begin{aligned} {{\mathbf {N}}^m}(T) = \left[ {\begin{array}{ll} {n_i^m(t)}&{}\quad {n_i^m(t + 1)}\\ {n_{i+1}^m(t)}&{}\quad {n_{i+1}^m(t + 1)} \end{array}} \right] . \end{aligned}$$
(4)

Consequentially, the received symbol matrix \({{\mathbf {Y}}^m}(T)\) can be also written in matrix form as

$$\begin{aligned} {{\mathbf {Y}}^m}(T) = \left[ {\begin{array}{ll} {y_i^m(t)}&{}\quad {y_i^m(t + 1)}\\ {y_{i+1}^m(t)}&{}\quad {y_{i+1}^m(t + 1)} \end{array}} \right] . \end{aligned}$$
(5)

3 Hybrid STBC–SM Suitable for Multi-link D2D Communication

The main purpose of this paper is to enable two downloaders to receive different symbols from two senders, and simultaneously exchange symbols previously received from the senders via the hybrid STBC–SM scheme.

Fig. 2
figure 2

Hybrid STBC–SM for multi-link D2D communication during T-th time group

As shown in Fig. 2, we assume that users 1 and 2 are senders, and users 3 and 4 are downloaders. The senders use a single antenna, whereas the downloaders use two antennas, which is similar to the antenna configurations in [17]. Moreover, two dedicated sub-channels \(H^3\) and \(H^4\) are allocated to users 3 and 4, respectively. As a result, each sender can simultaneously transmit different symbols to each downloader without interference. We also separate the transmission time into two groups: the initial time group (i.e. T-th time group), and the remaining time groups (i.e. from the \((T+1)\)-st time group through the end of the download). Because the downloading process of each downloader is very similar (except in the T-th time group), for simplicity we focus on the T-th and \((T+1)\)-st time groups for user 3.

3.1 The T-th Time Group for UE3

Figure 2 shows the downloading process of the initial time group (i.e. T-th time group), which appears similar to STBC for virtual antenna array (VAA) systems [18]. However, during the T-th time group, the downloaders should receive different symbols, in order to exchange their received symbols with each other in the next time group.

Therefore, the senders (users 1 and 2) cooperatively transmit different STBC-encoded symbols (\(x_1\), \(x_2\) and \(x_3\), \(x_4\)) to the downloaders (users 3 and 4) through dedicated sub-channels \(H^3\) and \(H^4\), respectively. Because we focus only on the downloading process for user 3, the received symbol matrix for user 3 during the T-th time group can be expressed as

$$\begin{aligned} {{\mathbf {Y}}^3}(T) = {{\mathbf {H}}^3}(T){{\mathbf {X}}^3}(T) + {{\mathbf {N}}^3}(T), \end{aligned}$$
(6)

where the matrices are given as:

$$\begin{aligned} {{\mathbf {H}}^3}(T) & = \left[ {\begin{array}{ll} {h_{11}^{31}}&{}\quad {h_{11}^{32}}\\ {h_{21}^{31}}&{}\quad {h_{21}^{32}} \end{array}} \right] \nonumber \\ {{\mathbf {X}}^3}(T) & = \left[ {\begin{array}{ll} {x_1(t)}&{}\quad { - x_2^*(t+1)}\\ {x_2(t)}&{}\quad {x_1^*(t+1)} \end{array}} \right] \nonumber \\ {{\mathbf {N}}^3}(T) & = \left[ {\begin{array}{ll} {n_1^3(t)}&{}\quad {n_1^3(t+1)}\\ {n_2^3(t)}&{}\quad {n_2^3(t+1)} \end{array}} \right] \nonumber \\ {{\mathbf {Y}}^3}(T) & = \left[ {\begin{array}{ll} {y_1^3(t)}&{}\quad {y_1^3(t+1)}\\ {y_2^3(t)}&{}\quad {y_2^3(t+1)} \end{array}} \right] . \end{aligned}$$
(7)

We are only interested in detecting \(x_1\) and \(x_2\). Thus, these matrices can be rewritten as the following Eq. (8), when the channel \({{\mathbf {H}}^3}(T)\) remains constant over the two time slots (i.e. \(h_{ij}^{mk}(t) = h_{ij}^{mk}(t+1)\)).

$$\begin{aligned} {{\mathbf {H}}^3}(T) & = \left[ {\begin{array}{ll} {h_{11}^{31}}&{}\quad {h_{11}^{32}}\\ {h_{11}^{*32}}&{}\quad {-h_{11}^{*31}}\\ {h_{21}^{31}}&{}\quad {h_{21}^{32}}\\ {h_{21}^{*32}}&{}\quad {-h_{21}^{*31}} \end{array}} \right] ,\quad {{\mathbf {X}}^3}(T) = \left[ {\begin{array}{l} {x_1}\\ {x_2} \end{array}} \right] \nonumber \\ {{\mathbf {N}}^3}(T) & = {\left[ {\begin{array}{llll} {n_1^3(t)}&\quad {n_1^{*3}(t+1)}&\quad {n_2^3(t)}&\quad {n_2^{*3}(t+1)} \end{array}} \right] ^T} \nonumber \\ {{\mathbf {Y}}^3}(T) & = {\left[ {\begin{array}{llll} {y_1^3(t)}&\quad {y_1^{*3}(t+1)}&\quad {y_2^3(t)}&\quad {y_2^{*3}(t+1)} \end{array}} \right] ^T}. \end{aligned}$$
(8)

The desired symbol matrix \({{\mathbf {X}}^3}(T)\) can be easily detected by linear detectors, namely zero-forcing (ZF) or minimum mean square error (MMSE) detectors. A maximum likelihood (ML) detector may also provide improved performance, but its complexity is high (Fig. 3).

Fig. 3
figure 3

Hybrid STBC–SM for multi-link D2D communication during (\(T+1\))-th time group

3.2 The (\(T+1\))-th Time Group for UE3

Through the previous T-th time group, users 3 and 4 have \(x_1\), \(x_2\) and \(x_3\), \(x_4\), respectively. In other words, they have different symbols. Therefore, during the (\(T+1\))-th time group, users 3 and 4 can exchange the received symbols \(x_1\), \(x_2\) and \(x_3\), \(x_4\), respectively, while receiving new symbols \(x_5\), \(x_6\) and \(x_7\), \(x_8\) cooperatively transmitted from the senders through the dedicated sub-channels \(H^3\) and \(H^4\), respectively. The received symbol matrix for user 3 during the (\(T+1\))-st time group can be expressed as

$$\begin{aligned} {{\mathbf {Y}}^3}(T+1) = {{\mathbf {H}}^3}(T+1){{\mathbf {X}}^3}(T+1) + {{\mathbf {N}}^3}(T+1), \end{aligned}$$
(9)

where the matrices are given as:

$$\begin{aligned} {{\mathbf {H}}^3}(T+1) & = \left[ {\begin{array}{llll} {h_{11}^{31}}&{}\quad {h_{11}^{32}}&{}\quad {h_{11}^{34}}&{}\quad {h_{12}^{34}}\\ {h_{21}^{31}}&{}\quad {h_{21}^{32}}&{}\quad {h_{21}^{34}}&{}\quad {h_{22}^{34}} \end{array}} \right] \nonumber \\ {{\mathbf {X}}^3}(T+1) & = \left[ {\begin{array}{ll} {x_3(t+2)}&{}\quad {-x_4^*(t+3)}\\ {x_4(t+2)}&{}\quad {x_3^*(t+3)}\\ {x_5(t+2)}&{}\quad {-x_6^*(t+3)}\\ {x_6(t+2)}&{}\quad {x_5^*(t+3)} \end{array}} \right] . \end{aligned}$$
(10)

Because \({\mathbf {Y}^3}(T+1)\) and \({\mathbf {N}^3}(T+1)\) are similar to Eq. (7), we opted to omit the matrices. These matrices are also rewritten as follows.

$$\begin{aligned} {{\mathbf {H}}^3}(T+1) & = \left[ {\begin{array}{llll} {h_{11}^{31}}&{}\quad {h_{11}^{32}}&{}\quad {h_{11}^{34}}&{}\quad {h_{12}^{34}}\\ {h_{11}^{*32}}&{}\quad { - h_{11}^{*31}}&{}\quad {h_{12}^{*34}}&{}\quad { - h_{11}^{*34}}\\ {h_{21}^{31}}&{}\quad {h_{21}^{32}}&{}\quad {h_{21}^{34}}&{}\quad {h_{22}^{34}}\\ {h_{21}^{*32}}&{}\quad { - h_{21}^{*31}}&{}\quad {h_{22}^{*34}}&{}\quad { - h_{21}^{*34}} \end{array}} \right] \nonumber \\ {{\mathbf {X}}^3}(T+1) & = {\left[ {\begin{array}{llll} {x_3}&\quad {x_4}&\quad {x_5}&\quad {x_6}\end{array}} \right] ^T}. \end{aligned}$$
(11)

The desired symbols \({{\mathbf {X}}^3}(T+1)\) can be also detected by simple linear detectors. During the (\(T+1\))-st time group, the downloaders (users 3 and 4) can receive four symbols, respectively. In other words, they receive twice the number of symbols they receive during the T-th time group. Thus, as shown in Table 1, the symbol rates gradually increase until the maximum number of antennas is reached. For the succeeding time groups, similar downloading processes are conducted until the process is complete.

3.3 Linear Detection

The rewritten symbol matrix \({{\mathbf {X}}}\) can be easily detected by linear detectors regardless of the time groups. Although an ML detector can provide greater performance improvements, we employ ZF and MMSE detectors for their simplicity [19]. In order to eliminate the channel matrix \({{\mathbf {H}}}\), ZF and MMSE detectors (i.e. \({{\mathbf {W}}_{ZF}}\) and \({{\mathbf {W}}_{MMSE}}\)) are given as

$$\begin{aligned} {{\mathbf {W}}_{ZF}} & = {({{\mathbf {H}}^{H}} \cdot {{\mathbf {H}}})^{-1}}{{\mathbf {H}}^{H}}.\end{aligned}$$
(12)
$$\begin{aligned} {{\mathbf {W}}_{MMSE}} & = {({{\mathbf {H}}^{H}} \cdot {{\mathbf {H}}} + {\sigma ^2}{\mathbf {I}})^{-1}}{{\mathbf {H}}^{H}} . \end{aligned}$$
(13)

By multiplying the given detectors by received signal \({{\mathbf {Y}}}\), we can detect the desired symbol matrix \({{{\hat{\mathbf {X}}}}}\) as follows:

$$\begin{aligned} {{\hat{\mathbf {X}}}}_{ZF} = {{\mathbf {W}}_{ZF}}\cdot {{\mathbf {Y}}} = {{\mathbf {X}}} + {{\mathbf {W}}_{ZF}}\cdot {{\mathbf {N}}}. \end{aligned}$$
(14)

The ZF detector caused a performance degradation, owing to the noise enhancement; in contrast, the MMSE detector easily improved performance by using the statistical information of noise \({\sigma ^2}\).

$$\begin{aligned} {{\hat{\mathbf {X}}}}_{MMSE} = {{\mathbf {W}}_{MMSE}}\cdot {{\mathbf {Y}}}. \end{aligned}$$
(15)
Table 1 Increasing symbol rates of the downloader
Fig. 4
figure 4

Error rate performance of the proposed hybrid STBC–SM for multi-link D2D communication compared with performance of STBC and SM (1 frame \(= 10^3\) bits). a Coded BER performance, b FER performance

4 Performance Evaluation

In order to evaluate the performance of the hybrid STBC–SM suitable for multi-link D2D communication, we analyze the STBC and SM schemes individually.

In the STBC scheme’s case, the downloaders (users 3 and 4) can each receive two symbols, respectively, during the T-th time group. This is the same process used in the hybrid STBC–SM case. However, during the (\(T+1\))-st time group, users 3 and 4 cannot receive four symbols. According to [11], a downloading user with two antennas can receive only two symbols during two time periods (i.e. a single time group). If downloaders can receive four symbols during a single time group in an STBC scheme, it is no longer an STBC scheme but a hybrid STBC–SM scheme. Meanwhile, in the case of the SM scheme, the downloaders (users 3 and 4) can each receive four symbols, respectively, during the T-th time group. This is a higher symbol rate than that of the hybrid STBC–SM case. However, during the(\(T+1\))-st time group, users 3 and 4 cannot receive eight symbols. In other words, they cannot exchange their received four symbols with each other during the (\(T+1\))-st time group. This is because the downloaders have only two antennas.

Based on this knowledge, we compare the symbol rate, coded bit error rate (BER), frame error rate (FER), and effective throughput performance of our hybrid STBC–SM scheme with those of STBC and SM. We use quadrature phase shift keying (QPSK) modulation over a block-fading Rayleigh channel, and convolutional code (a code rate of 1/2, a constraint length of 7, and code generator polynomials of \(171_8\) and \(133_8\)).

Fig. 5
figure 5

Effective throughput performance of the proposed hybrid STBC–SM for multi-link D2D communication compared with STBC and SM, according to changes in time groups. a During (\(T+1\))-st time group, b during (\(T+4\))-st time group, c during (\(T+24\))-st time group, d during (\(T+49\))-st time group

As shown in Table 1, the symbol rates of the proposed hybrid STBC–SM case are measured as \(r_s=1.5\) at four time periods (i.e. two time groups). However, the symbol rate gradually increases \(r_s\simeq 2\) as time elapses, because each downloader receives four symbols at every time group (except the T-th time group). Similarly, the symbol rates of SM case are always measured in \(r_s=2\), whereas in STBC they are always measured in \(r_s=1\). In terms of coded BER and FER, however, the STBC case (black line) is clearly superior to the other cases, as shown in Fig. 4. This is because two symbols transmitted during two time periods have a diversity of order 2 [11]. Finally, we define effective throughput, which is the rate at which symbols are successfully received by the receiver. The effective throughput is defined as \(r_s\)(1-FER), which reflects both the symbol rate (\(r_s\)) and FER performance. Figure 5 shows effective throughput performance according to the changes in time groups. In the early time group (i.e. Fig. 5a, b), the proposed hybrid STBC–SM case has a degradation area, in contrast with the STBC case. However, the degradation area becomes narrower as time elapses, as shown in Fig. 5c. Furthermore, the proposed scheme finally shows improved effective throughput performance compared with the SM and STBC cases in Fig. 5d. In other words, the performance gains increase significantly as downloading time elapses. Consequently, the proposed hybrid STBC–SM scheme suitable for multi-link D2D communication can be an appropriate solution for downloading services that distribute large files (e.g. video on demand (VOD) services), because such files typically require a significant amount of time to download.

5 Conclusion

In this paper, we have considered multi-link D2D communication in cellular networks. It enables multiple D2D users to exchange their information symbols simultaneously. Additionally, we aimed to identify a physical transmission scheme suitable for multi-link D2D communication. The STBC, SM, and hybrid STBC–SM schemes were candidates; however, only the hybrid STBC–SM scheme showed improved throughput performance compared with the others. In particular, performance gains increase significantly as downloading time elapses. Therefore, the proposed hybrid STBC–SM scheme suitable for multi-link D2D communication is an appropriate solution for large file downloading services (e.g. video on demand (VOD) services), because such files typically require a significant amount of time to download.