Relay Assisted Concurrent Scheduling to Overcome Blockage in Full-Duplex Millimeter Wave Small Cells

The millimeter wave (mmWave) has been extensively utilized for its rich spectrum resource. With the development of self-interference (SI) cancellation technology, full-duplex (FD) communications have become possible recently. In order to get larger network capacity, we introduce FD communications into mmWave wireless network. However, mmWave links are easily blocked by obstacles, and the blockage makes some flows fail to be transmitted directly. For the communication problems of shadow coverage area, a relay path selection algorithm is proposed to select optimal multi-hop paths for these blocked flows. This proposed algorithm not only can relay the blocked flows by other unblocked links, but also select the appropriate relay paths to minimize transmission time of the entire transmission process. To further improve the system transmission efficiency, we develop a concurrent scheduling algorithm by using FD communications. The scheduling algorithm continuously schedules the links until the throughput requirements of flows are accommodated. Through extensive simulations at 60 GHz mmWave wireless network, the proposed scheme can solve the problem for a certain degree of blocked flows and complete the transmission with the least time consumption. Compared with other existing schemes, the proposed scheme shows superior performances on relaying capability and scheduling duration.


I. INTRODUCTION
Due to the explosive growth of mobile traffic, the high-rate transmission is necessary to be provided.New spectrum allocation in the millimeter-wave (mmWave) bands with the adequate available bandwidth resources has driven the development of fifth-generation (5G) wireless communications.Therefore, multiple applications of mmWave have caught much attention for commercial communication systems [1].Small cells in the mmWave band are able to support multi-gigabit wireless services in terms of huge available bandwidth, such as cameras, mobile phones, and appli-The associate editor coordinating the review of this manuscript and approving it for publication was Fang Yang.
ance computers, as well as real-time applications like high definition television (HDTV).Thus, the communications of the small cells in mmWave bands have great advantages in transmission performances.
In addition to the high carrier frequency and massive bandwidth, mmWave communication has non-negligible weaknesses, severe attenuation and blockage problem.Due to the small wavelength, mmWave links are sensitive to the blockage caused by obstacles like humans and furniture [1], [3].So how to deal with the blockage problem is the key to complete the transmission successfully.For the attenuation problem, directional antenna and beamforming technique are often used to compensate for the high path loss [4], [5].Scheduling multiple links concurrently results in serious VOLUME 7, 2019 This work is licensed under a Creative Commons Attribution 4.0 License.For more information, see http://creativecommons.org/licenses/by/4.0/mutual interferences, and the transmission performances will be further degraded.However, directional communication can help concurrent transmission reduce the interferences between different links, and significantly improve the transmission efficiency and system throughput [6].Therefore, solving the blockage problem and scheduling the links are both significant for the mmWave communication.
To improve the network capacity, full-duplex (FD) communication is proposed to improve half-duplex (HD) communication.There are so many existing concurrent scheduling schemes [10]- [15], but most of them hold the assumption of HD communication.Since FD communication can make equipments transmit and receive information simultaneously over the same frequency, the spectral efficiency of FD communication may be theoretically doubled compared with HD communication [7], [11], [12].But FD communication was not used widely due to the restriction of self-interference (SI).SI of the equipment is caused by the received signal power transmitted from this equipment.Since SI cancelation technology has been rapidly developed recently, FD communication gradually becomes possible.However, SI cannot be eliminated completely and some residual self-interference (RSI) still exists in the system after performing existing SI cancelation technologies.So both multiuser interference (MUI) for unrelated links and RSI need to be considered in FD communication, and the rate calculation of FD communication is more complex than HD communication.
In this paper, considering many bandwidth-intensive applications of the mmWave network, transmissions require the system throughput at Gbps level [13].There are always many different minimum throughput requirements of flows for different applications, and both relay path selection and scheduling scheme need to fulfill the minimum throughput requirements of flows.The minimum throughput requirement is also referred to as the quality of service (QoS) requirement in the paper.In order to compare the performances of different schemes, we set the objective function as the transmission time for a fixed number of flows.Since the relay path selection is important to the transmission performances, we optimize the relay path selection of blocked flows to save time resources.With the results of relay path selection, we design a heuristic concurrent transmission scheduling algorithm to further minimize the transmission time.The relaying algorithm and scheduling algorithm fully exploit the potential of FD communication and concurrent transmission.The contributions of this paper can be summarized as follows.
• We introduce FD communication into the relay path selection algorithm and the scheduling algorithm to complete the transmission.Compared with HD communication, FD has a better performance on transmission efficiency.FD makes more links be scheduled concurrently, and the total duration of completing the traffic mission is shorter.By taking advantages of FD concurrent transmission, the performances on relaying the traffic of blocked links and scheduling links are both significantly improved.
• We propose a multi-hop relay path selection algorithm to choose appropriate relay paths for blocked flows.For the proposed relaying algorithm, the relay paths are selected to minimize the transmission time.And the relay path selections avoid being repetitive to achieve a balanced traffic distribution in the system.In addition to the relay path selection algorithm, we formulate a nonlinear integer programming (NLIP) problem aiming at minimizing transmission time to accommodate the traffic demands of all the flows.Then, we propose an efficient and practical transmission scheduling algorithm with low complexity to solve the formulated problem.Considering FD communication, both RSI and MUI need to be simultaneously taken into account in this paper.
• We conduct extensive simulations to compare with other schemes.The combination of proposed FD relaying algorithm with proposed scheduling algorithm can significantly shorten the transmission time to accomplish all the links scheduling with their QoS requirements satisfied.And the proposed scheme can successfully relay more blocked flows in the total system.Besides, we also analyze the impacts of SI cancellation level and the maximum number of hops for the multi-hop relaying on many kinds of performances.
The rest of this paper is organized as follows.In Section II, we introduce the related work.Section III introduces the system model and assumption.In Section IV, we formulate the relay path selection algorithm, and the relay paths are selected to minimize transmission time.In Section V, we formulate the problem of optimal link scheduling into an nonlinear integer programming (NLIP) problem and propose an efficient and practical scheduling algorithm.Section VI evaluates the performances of the proposed scheme in the paper.In Section VII, we conclude this paper.

II. RELATED WORK
There has been some work on blockage problem and transmission scheduling under the small cells in the mmWave bands.For the blockage problem, [10] proposed a blockage robust and efficient directional MAC protocol, which can overcome the blockage problem and achieve near-optimal network performances in terms of the delay and system throughput.Reference [11] proposed a relay path selection algorithm to establish relay paths for blocked flows, and the algorithm can improve the system throughput and connection robustness.For the scheduling problem, early research on scheduling was with serial TDMA schemes.Afterward, TDMA concurrent transmission scheduling has been studied extensively [11]- [13], as it can significantly increase the system throughput and system capacity.Reference [12] proposed a scheduling algorithm based on maximum QoS aware independent set (MQIS), and the algorithm can maximize the number of completed flows with QoS requirements of all the flows satisfied.Reference [13] proposed an exclusive region based scheduling algorithm to exploit concurrent transmission.However, all the above relay path selection algorithms and scheduling algorithms are assumed with HD communication.
With the developments of SI cancelation technology, FD communication becomes possible.Considering the potential of FD communication, [14] proposed a design framework.It combines FD transmission with hybrid beamforming in routing and scheduling schemes.However, this scheme is for the system which needs to accommodate the traffic demands with sufficient time resource.But this scheme has no special considerations for the QoS requirements of flows.Reference [15] proposed a QoS-aware FD concurrent scheduling algorithm to maximize the number of links.But the performance on the transmission time for accomplishing all the links has no improvement.The most important problem is these schemes do not give a solution to the blockage problem.
For these existing schemes, some of them do not consider the blockage problem in mmWave networks, and some of them design algorithms based on HD communication.So these algorithms cannot obtain ideal performances on both time consumption and blockage problem.Therefore, a relay path selection algorithm and a FD concurrent scheduling algorithm are needed.

III. SYSTEM OVERVIEW A. SYSTEM MODEL
In this paper, we consider a typical mmWave small cell with N nodes.One of nodes is the base station (BS), and other nodes are user stations (STAs).All the nodes in system are assumed to operate in FD mode.
To simplify the relaying problem and the scheduling problem, we assume that each node is equipped with two steerable directional antennas, as shown in Fig. 1.Each node can only be the transmitter of one link and be the receiver of another link at the same time.In our investigated system, time is partitioned into a series of non-overlapping frames which are called superframes [15], and each superframe consists of M equal time slots (TSs), which is illustrated in Fig. 2. For clarity of illustration, we use the number of TSs to measure the length of the transmission time.
From Fig. 2, we can know the structure of superframe in detail.Each superframe is divided into two phases, one is scheduling phase and the other one is transmission phase.In the scheduling phase, the network performs relaying algorithm and scheduling algorithm to overcome the blockage problem and decide on a specific scheduling scheme.In the transmission phase, all nodes perform operations following the schedule schemes until QoS demands of all the flows are cleared.To minimize the transmission time, the relay paths should be selected cautiously.Different relay path selections have different impacts on transmission performances.
Deploying small cells underlying the conventional homogeneous macrocell network is very effective to improve transmission rate, and is usually referred to as heterogeneous cellular networks (HCNs) [10].With small cells densely deployed in HCNs, the communication modes of each node in system can be 4G operation or mmWave operation.Since 4G macrocell can be coupled with the small cells to some extent, some control signaling can be performed in 4G mode [17].We consider one of STAs is the piconet controller (PNC) and other STAs except the PNC are non-PNC stations.The PNC should broadcast beacons in all directions since every device connected with the PNC should receive the beacons for proper operations [18].Since broadcasting the time scheduling information and transfer management information by beacons to other nodes, the PNC can synchronize the clocks of all the STAs and schedule the medium access to accommodate their traffic demands.The system runs a bootstrapping program to make each node know the update-to-date network topology and the location information of other nodes.We can obtain the network topology by the neighbor discovery (ND) approaches in [19]- [22], and obtain the location information by the schemes in [23]- [25], which are based on the signatures of wireless channel, such as time difference of arrival (TDoA), angle of arrival (AoA), or received signal strength (RSS).In addition to this way, the network topology and location information can also be obtained via the reliable 4G networks.So each node can direct its beam towards other nodes.The beamforming between nodes has been completed before data transmission, and appropriate beam training or beam tracking techniques are applied to ensure the beams of the transmitter and receiver directed towards each other when needed [26], [27].
In the system, we assume each traffic flow between a pair of nodes need to be transmitted on the link between two nodes.Considering the severe attenuation of non-lineof-sight (NLOS) transmission [28], we use the line-of-sight (LOS) path loss model in the network.
For link l, the transmitter is denoted by s l , and the receiver is denoted by r l .The received signal power at node r l from node s l can be calculated as where k 0 is proportional to ( λ 4π ) 2 (λ is the wavelength), and k 0 is a constant coefficient.G t (l, l) denotes the transmitter antenna gain in the direction of from s l to r l , and G r (l, l) denotes the receiver antenna gain in the direction of from s l to r l .d s l r l is the distance from node s l to node r l .n is the path loss exponent, and P t is the transmission power at node s l [13].
For another link l , if it is concurrently scheduled with link l without sharing any node, there will be MUI between link l and link l .The interference at r l from node s l can be calculated as There are two types of interference in FD transmission, MUI and RSI.For any two concurrent links, if the transmitter of one link is the receiver of the other one, the interference between these two links is RSI.RSI is at the node shared by these two links.In fact, SI cancellation technologies are very complicated and diverse, so we do not discuss the specific cancellation methods too much in the paper.Although we do not care about those cancellation schemes, the value of RSI after cancellation can be expressed in terms of the transmission power to facilitate the calculation.Specifically, we use h r l P t to denote the RSI of node r l , where h r l represents the SI cancelation level of node r l , which is a non-negative parameter, and P t is the transmission power of the link that transmits from node r l .
For a lack of the multipath effect, mmWave channel can be approximately modeled as Gaussian channel.According to the Shannon's channel capacity, the transmission rate of link l can be calculated as where η represents the efficiency of the transceiver design, and it is in the range of (0, 1).N 0 is the onesided power spectral density of white Gaussian noise.W is the channel bandwidth.P r (l, l) is the received signal power at node r l which is defined in (1).
From the actual situation, each flow has its own throughput requirement for guaranteeing the communication qualities.We denote the QoS requirement of the flow on link l by q l .To satisfy the QoS requirement, the minimum number of TSs for completing the traffic on link l is calculated as where T s is the duration of scheduling phase in a frame, M is the total number of TSs of transmission phase in a frame, and t is the duration of a TS.
According to the number of TSs, we denote the TS demand of link l by t s l r l .t s l r l is equal to the number of TSs that link l needs to complete its traffic transmission.All the TS demands of links make up a TS demand matrix T. The matrix is a N ×N matrix.

B. ANTENNA MODEL
The realistic directional antenna model that we adopt in this paper is mentioned in [29].The gain of a directional antenna is in units of dB, and can be expressed as where θ denotes an angle within the range [0 is the angle of the half-power beamwidth.θ ml is the main lobe width in units of degrees calculated as θ ml = 2.6 • θ −3dB .G sl is the sidelobe gain, which is calculated as G sl = −0.4111log(θ−3dB ) − 10.579.The antenna model is used to calculate the transmitter antenna gains and receiver antenna gains in (1) and (2).

IV. THE RELAY SELECTION ALGORITHM
In this section, we propose a heuristic relay path selection algorithm to relay blocked flows.If links are blocked by obstacles, we will exploit other available nodes to relay the flows on these links.According to actual condition, we know the relay paths of blocked flows are all multi-hop paths, so each blocked flow is transmitted by multiple links after being relayed.
For the blocked flows shown in Fig. 3, we maintain connectivity for the their direct blocked links by establishing relay paths.For example, the flow transmitted from node 1 to node 4 is blocked due to the blockage of the link between two nodes.Then we consider two relay paths, one consists of the link from node 1 to node 5 and the link from node 5 to node 4, the other one consists of the three links which are from node 1 to node 2, node 2 to node 3 and node 3 to node 4. By the relaying algorithm described below, we choose the better one as the relay path for the blocked flow.We should distribute similar amount of traffic to different links to prevent any single link to take on too much traffic, then concurrent transmission can be fully exploited in the transmission phase.Since the links to be scheduled simultaneously are uncertain, we first ignore the RSI between the links, then the rate of link  l can be calculated as The relay path selection algorithm selects optimal relay paths for blocked flows and calculates the TS demand of each link by the QoS requirement and the transmission rate as (6), then the TSs requirements of all links constitute the demand matrix T. The specific calculation method is shown as equation ( 4).We can obtain a directed and weighted multigraph G(V , E) from matrix T, where V denotes the set of vertices and E denotes the set of directed and weighted edges.Corresponding to each non-zero element t ij in T, there is an edge e ij ∈ E which is from node i to node j.And its weight is equal to the value of t ij .If link l is blocked, the values of corresponding transmission rate R l will be equal to 0. The set of blocked edges is denoted by E b .All the blocked edges are removed from E. The set of alternative relay paths for the blocked edge e ij is denoted by S p (e ij ).The relay path that we finally select for the flow on blocked edge e ij ∈ E b is denoted by p f (e ij ).The maximum number of hops for relay paths is denoted by H max .For each blocked edge e ij , the algorithm searches for all the possible relay paths with the number of hops less than or equal to H max .
Before explaining the algorithm, we must first determine the order of blocked flows to be processed.In order to determine the order, we give a parameter to indicate the relay probability.For blocked edge e ij ∈ E b , the probability that e ij can be relayed by other nodes successfully is expressed by a relay parameter r(e ij ).We calculate r(e ij ) as r(e ij ) = N (i) × N (j), N (i) denotes the number of the neighbors that node i (transmitter of e ij ) can reach without blockage, and N (j) denotes the number of the neighbors that can reach node j (receiver of e ij ) without blockage.If the value of r(e ij ) is big, the probability of relaying the flow of blocked edge e ij will be large.
The blocked flows execute the relay path selection algorithm in descending order of the relay parameter.Then we illustrate the algorithm concretely.
To give the rule for alternative relay paths generation, we denote a temporary set as S tem and denote the last node of path p ∈ S tem as n p .Then the basic rule for path generation is given as follow.
Alternative Paths Generation Rule: For blocked edge e ij ∈ E b , the alternative paths are initialized to node i (transmitter of e ij ).There is a temporary set S tem origins from node i.For each node v and each path p ∈ S tem , if node n p to node v is unblocked and node v is not on path p, generate a new path p by extending p to node v.If the node v is the receiver of e ij , add p into alternative paths set S p (e ij ).
After getting all the alternative paths, we need select an optimal path from S p (e ij ) as p f (e ij ).For each unblocked edge e ij ∈ E, its weight is defined as w c (e ij ), which represents the number of TSs for e ij to accommodate its throughput requirement.To select the optimal path, we define the node weight and path weight as follows.
For alternative path s p ∈ S p (e ij ), add all the edges on s p into E.For each node v ∈ V , calculate the total weights of the edges which are from node v ( w c (e vj ), j ∈ V , e vj ∈ E), then calculate the total weights of the edges which are to node v ( w c (e iv ), i ∈ V , e iv ∈ E).Node weight S(v) is equal to the larger one of these two summation values.
For alternative path s p ∈ S p (e ij ), add all the edges on s p into E.For each node v ∈ V , calculate its weight S(v).Path weight PS(s p ) is the maximum of all the node weights.
Thus, the rule for optimal path selection is as follows.Optimal Path Selection Rule: For alternative path s p ∈ S p (e ij ), calculate its weight PS(s p ).If the value of PS(s p ) is large, it will probably take much time to schedule all the links.So we select the path with the minimum weight as optimal path p f (e ij ).
Due to FD transmission, any two links with the same transmitter or receiver cannot be scheduled concurrently.The traffic among nodes after relaying should be distributed in a balanced way.For a better use of FD concurrent transmission, there cannot be too much traffic from one node or to one node.When we select alternative path s p as the final relay path p f (e ij ) for e ij , s p cannot be an alternative path for other blocked flows.
The pseudo-code of the relay path selection algorithm is shown as Algorithm1.The algorithm selects the blocked flow with the largest relay parameter to relay, as presented in line 3.In lines 7-17, the algorithm finds all the alternative relay paths with the number of hops less than or equal to H max .Then the algorithm selects the optimal path p f (e ij ) for e ij ∈ E b in lines 18-35.In the end, output G(V , E) and p f (e ij ) in line 40.
To estimate the complexity of algorithm, we can observe that the outer while loop has

V. THE FULL-DUPLEX SCHEDULING ALGORITHM
After selecting the relay paths, we should schedule all the links including the links of relay paths.Since many relay paths are generated, there can be more than one flow on each for each p ∈ S tem do 8: Output G(V , E) and p f (e ij ); link, and the QoS requirement of any link is the sum of the QoS requirements for the flows on this link.We denote the set of the links to be transmitted as L. The purpose of the scheduling algorithm is completing the transmission with the minimum number of TSs.If two links can be scheduled simultaneously, their transmitters and receivers are both different.In order to ensure the transmission quality of each link, the relative interferences between any two links cannot be large.If the interferences between links are large, the number of TSs allocated to the links will be large or the QoS requirements of the flows on links cannot be satisfied.In worse cases, some applications even cannot be supported due to massive interference [14].
If the transmitter of link l is the receiver of link l, the interference from link l to link l should be RSI.RSI from link l to link l is calculated as where P r (l, l) is calculated as (1), P t is the transmission power of link l , h r l represents the SI cancelation level of node r l .
If link u and link u do not share the same node, the interference from link u to link u should be MUI.And the interference from link u to link u can be calculated as where I u u is calculated as (2) and P r (u, u) is calculated as (1).
We denote the number of TSs that complete all the transmission traffic requirements as δ f .We should accommodate the QoS requirements of flows on each link with the minimum transmission time.Therefore, the objective function can be formulated as Then we analyze the constraints.Firstly, the number of TSs for scheduling all the links must be less than the total TSs in the transmission phase of a frame.Thus, the corresponding constraint is We assume the number of the links which need to be scheduled is |L|.It is obtained from set E. The number of TSs for each link can be obtained from w c (e ij ).The pre-scheduling set S denotes as S = {s 1 , s 2 , ..., s l , ..., s |L| }.We define a scheduling matrix A |L|×M , where |L| is the total number of links and M is the total number of available TSs.A binary variable a lm = 1 (1 ≤ l ≤ |L|, 1 ≤ m ≤ M ) indicates that link s l is scheduled in the mth TS.Conversely, a lm = 0 indicates link s l is not scheduled in the mth TS.We define the set of links that can be scheduled simultaneously as S s .S s is initialized to ∅.We denote the transmitter and the receiver of the link s l as s s l and r s l .As we mentioned earlier, any two links are simultaneously scheduled with sharing the same node, this node can only serve as the transmitter of one link and the receiver of the other one at the same time.It can be expressed as After determining which links are scheduled simultaneously, we can calculate the actual transmission rate of each s l ∈ S s .Actual transmission rate R l of link l is affected by other links in S s .Since the rates of link l in different TSs are different, we denote the rate of link l in mth TS as R m l .In order to judge whether the throughput of each link is up to the sum of the QoS for flows on it.As for each link of relay paths, the value of the QoS requirement is equal to the QoS requirement of the blocked flow relayed by it.If any link of relay paths overlaps an original unblocked link which has other transmitting flow, the QoS requirement of the overlapped link is the sum of the QoS requirements for its blocked flow and the original flow.
However, original unblocked links and the links of relay paths are treated equally in the scheduling algorithm, and we define the actual throughput of link l as The total throughput of the link should satisfy the QoS requirement, and the constraint is In summary, the problem of optimal scheduling can be formulated as follows min δ f s.t.Constraints (10) − (13). ( According to above analysis, the FD scheduling algorithm is proposed to schedule the links.The rule for scheduling the links is as follow Scheduling Rule: In each TS, the algorithm rearranges the links which are scheduled simultaneously.The algorithm successively judges whether each link in S is in conflict with links in S s in turn.The links that have been scheduled in last TS should be judged at the end in present TS. The pseudo code for the proposed scheduling algorithm is shown as Algorithm2.The algorithm obtains the location (Loc) of each BS, the SI cancelation level (h) at each BS and the QoS requirement (q l ) of each link.Then algorithm obtains the pre-scheduling set S from E, then initializes A |L|×M , S s and δ f .In lines 2-17, the links are scheduled by the rule we have proposed.In lines 2-6, the scheduling algorithm selects the links that can be scheduled simultaneously and puts them in set S s .Then the links in S s are removed from S, as indicated by line 4.After determining the links which are simultaneously scheduled, the actual transmission rates of them are calculated, as indicated by line 7.In lines 9-17, the algorithm calculates the remaining throughput demands of the links after this TS.In the end, the algorithm outputs the scheduling matrix A and the number of TSs δ f in line 19.This is a NLIP problem and is NP-hard [12].The complexity of the scheduling algorithm can be estimated, we can Calculate the actual transmission rate R m l of each s l ∈ S s in mth TS; 8: for each s l ∈ S s do 10: Calculate the remaining throughput demand of s l , if q l ≤ 0 then

VI. PERFORMANCE EVALUATION A. SIMULATION SETUP
In the simulations, we assume that there is a 60GHz mmWave wireless network.There are 50 nodes randomly distributed in a 200m×200m square area, and the simulations are conducted in MATLAB.The transmission power P t of each node is the same.We generate the flows which need to be transmitted by randomly selecting theirs transmitters and receivers among the nodes in network, and the QoS requirement of each flow is uniformly distributed between 0.1Gbps and 0.5Gbps.The blocked flows are randomly selected among these generated flows.Different BSs have different SI cancelation parameters h, which are uniformly distributed in a certain range.Other simulation parameters are listed in Table 1.
In order to show the advantages of our proposed scheme, we evaluate the following four performance metrics.
1)Relay Ratio: We define relay ratio as the percentage of flows that can be successfully transmitted in the total traffic flows.2)Number of TSs: number of TSs is defined as the number of time slots for scheduling the links with the QoS requirements of all the flows satisfied, and the scheduled objects include the links of relay paths.
3)System Throughput: system throughput is the average achieved throughput of all links in the system.At any moment, it is equal to the sum of the rates of all the concurrent links at this moment.
4)Completed Flows: completed flows is defined as the number of transmitted flows, including the blocked flows that are relayed successfully after performing relaying algorithm in the case of blockage.
We combine the proposed relay path selection algorithm and the QoS-aware FD concurrent scheduling algorithm as a complete scheme (Proposed-FD) and compare it with the following five schemes.
1)FDBT: FDBT [15] schedules the links by contention graph.This scheme first removes the link(s) requiring TSs more than one frame, then evaluates the profits after adding each new link.But it does not rearrange the scheduling links in each TS.FDBT only considers the benefits of large throughput, but ignores the impacts of transmission duration and the blockage problem.
2)MQIS: MQIS [12] is a HD concurrent scheduling algorithm based on the maximum QoS-aware independent set.For the HD communications, each equipment can only transmit or receive data in every TS.MQIS achieves the best performance on the system throughput with limited TS resources among the existing HD scheduling algorithms.Therefore, we use it as the baseline for evaluating performance without FD communication.However, it does not consider the blockage problem.
3)FDP: FDP [14] scheme is for the system where the TS resources are sufficient.It aims at accomplishing all of the transmissions with the minimum time.In every phase, higher priority is given to the link that occupies the most TSs.Divide the links into several phases, the links in each phase can be transmitted at the same time.Only when all the links scheduled together in one phase are completed, we can start the next phase and make a new scheduling decision.Nor does it give a solution to the blockage problem.
4)BRDMAC: BRDMAC [11] overcomes the blockage problem by a two-hop relaying algorithm based on the maximum throughput.If there is no available two-hop relay path, the blocked flow will be abandoned for relaying.BRD-MAC is a HD transmission scheme which fully exploits the spatial reuse by iteratively scheduling each link into each concurrent transmission pairing in non-increasing order of traffic demand.
5)BRDMAC(FD): BRDMAC(FD) uses the same relaying algorithm and scheduling algorithm with BRDMAC, but the scheme is used in FD communication.
All the simulations perform 200 times to get more reliable average results.

B. COMPARISON WITH EXISTING SCHEMES
In Fig. 4, Fig. 5 and Fig. 6, we simulate the comparison results of the proposed scheme, BRDMAC scheme and BRD-MAC(FD) scheme.The relay path selection algorithms of BRDMAC and BRDMAC(FD) are different from our proposed relaying scheme.Besides, these two schemes also have their own scheduling algorithms which are different from the proposed scheduling algorithm.For the fairness, we set the maximum hops number H max of proposed scheme to 2. From the aspects of relay ratio, number of TSs and system throughput, we can see the comparison results of the relaying algorithms and the scheduling algorithms.Besides, we also compare the proposed-FD with FDBT, MQIS and FDP, but none of three contrast schemes consider the blockage problem.For convenience, contrast schemes adopt the same two-hop relay path selection algorithm as our proposed scheme.Then the performances of proposed scheme can be further shown as follows.
In Fig. 4, we plot the relay ratio under different blockage rates.The total number of flows is set to 100 and the number of blocked flows is from 10 to 50, then the blockage rates are shown in the graph.With the increasing blockage rate of traffic flows, the relay ratios of different schemes all decline, but the superiority of the proposed relaying algorithm is more and more obvious.The relaying algorithms of FDP, FDBT and proposed-FD are the same, so the relay ratios of these three   schemes almost coincide.The relaying algorithms of FDP, FDBT, proposed-FD and MQIS are all the proposed relaying algorithm, but the relaying algorithm of MQIS among them is based on HD which is different from other FD schemes.However, the performances of these four schemes with proposed relaying algorithms on relay ratio are similar.Besides, the relay ratios of BRDMAC and BRDMAC(FD) are similar because they have the same relaying algorithms.Viewed as a whole, the relay ratios of FDP, FDBT, proposed-FD and MQIS are all higher than BRDMAC and BRDMAC(FD), this would mean the relaying algorithm we proposed is better than the relaying algorithm of BRDMAC and BRDMAC(FD).Thus, the proposed relay path selection algorithm can relay more blocked flows compared with other schemes.There are lots of nodes in the network and so many available links that can be used to transmit data for blocked links, so the relay ratios of all the schemes are overall high.
In Fig. 5, we plot the number of TSs under different blockage rates.The numbers of flows and blocked flows are the same as Fig. 4. As the blockage rate increases, the time consumption of these schemes are all growing.Compare with other schemes, proposed-FD has the superior performance on the number of TSs, that is to say, the TS number of our proposed scheme is always less than others.It is necessary to compare the proposed-FD with BRDMAC (FD) and BRD-MAC at first, because the relay algorithms and scheduling algorithms of them are both different.More obviously the number of TSs of HD scheme, BRDMAC, is much more than other two FD schemes, because the transmission efficiency of HD communication is lower than FD communication.The advantages of our relaying algorithm have been outstanding compared with BRDMAC(FD) and BRDMAC, and our proposed scheme can schedule much more links rapidly.As can be seen in conjunction with Fig. 4 and Fig. 5, the performance on time consumption of proposed-FD is better than that shown in Fig. 5, because proposed-FD is scheduling more links than other two schemes under the conditions of this figure.
Then we compare the proposed-FD with FDBT, FDP and MQIS, and they have different scheduling algorithms.The number of TSs for the proposed-FD is less than FDBT, MQIS and FDP.In fact, the conditions of Fig. 4 and Fig. 5 are the same, and Fig. 4 shows that the proposed-FD schedules the most links with the least number of TSs compared with other schemes.The TSs number of FDP is much more than other schemes, because FDP cannot transmit uninterruptedly and the phase by phase transmission waste a lot of TS resources.The number of TSs of MQIS is more than BRDMAC, FDBT and FDP, due to the waste of TSs and the lower transmission efficiency of HD communication.In a word, the scheduling algorithm of proposed-FD has a clear superiority among these schemes.
In Fig. 6, we plot the system throughput under different blockage rates.The numbers of flows and blocked flows are unchanged.The system throughputs of schemes decrease with the blockage rate increasing, and the throughput of proposed-FD is larger than other schemes.For proposed-FD, BRDMAC(FD) and BRDMAC, the throughput of BRDMAC is the worst and our proposed scheme is the best.BRDMAC is based on HD communication, so it is not comparable to other FD schemes in terms of transmission efficiency and throughput.The algorithm of BRDMAC(FD) cannot compare with the proposed algorithm in the aspect of throughput.
Compared with MQIS, FDP and FDBT, the system throughput of proposed-FD is also the best of all.FDP has the worst performance on system throughput because its scheduling algorithm wastes so much TS resources.Second bad is MQIS which is similar to BRDMAC due to its HD communication characteristics.The system throughput of FDBT is worse than proposed-FD only due to differences in scheduling algorithms.
As we mentioned earlier, SI cancellation level and the maximum number of hops are important to the performances.So we study the effects of SI cancellation level h and the maximum number of hops H max in this section.BRDMAC was originally a HD scheme and BRDMAC(FD) is derived from it, so BRDMAC and BRDMAC(FD) do not involve SI cancellation.Therefore, we do not consider BRDMAC and  BRDMAC(FD) in the simulations for the performances of h.For the simulations of H max , we discuss in a small network to conspicuously show the impact of H max on the algorithm, which has 10 nodes in the whole net.Because, if the nodes in network are fewer, the available links that can be used to relay blocked flows will be less and the impact of H max will be more obvious.
In Fig. 7, we plot the number of TSs with different SI cancelation levels.The total number of flows is set to 20, and the number of blocked flows among 20 flows is set to 10.The abscissa x is the magnitude of h.For example, when x = 12, h is uniformly distributed in 10 −13 ∼10 −12 .First, we can find the number of TSs for MQIS has no change under different SI cancellation levels, because HD scheme does not need SI cancellation.For three FD schemes, proposed-FD, FDBT and FDP, the SI cancelation level h has significant impacts on their performances.When x is small, that is, the SI cancelation level is low, the numbers of TSs for proposed-FD, FDBT and FDP are large.As x increases, the RSI of the FD transmissions becomes less, and the RSI has a negative impact on the time consumption.When RSI is lower than 10 −12 by SI cancellation, the numbers of TSs three FD schemes nearly unchanged as abscissa x increases.At this time, the change of RSI has a weak influence on transmission.From Fig. 7, we can confirm that SI cancellation level has a significant impact on transmission.If SI cancellation level is too low, the performances on FD schemes will be even worse than HD scheme.However, excessive SI cancellation can lead to unnecessary costs and complexity.
In Fig. 8, we plot the system throughput with different SI cancelation levels, and the parameters settings are the same as in Fig. 7.The throughput of the HD scheme MQIS is also unchanged as the abscissa increases.When SI cancelation level is low, the system throughput performances of three FD schemes are worse than HD scheme MQIS.As abscissa x increases, SI cancelation level becomes higher and higher, and the throughputs of proposed-FD, FDBT and FDP are  larger than MQIS.When x is 12, the system throughputs of proposed-FD, FDBT and FDP gradually stabilize.Therefore, referring to Fig. 7 and Fig. 8, we set h to 10 −13 ∼10 −12 in other simulations, which can get good performances and make transmissions successful.

C. IMPACT OF THE MAXIMUM NUMBER OF HOPS H max
The maximum number of hops H max is a significant parameter.Next, we will study the impacts of H max on our proposed-FD scheme.
In Fig. 9 and Fig. 10, we plot the number of completed flows and the number of TSs respectively under different H max .The total number of the flows to be transmitted is set to 30 and the number of blocked flows is set to 25.The curve trends of these two figures are similar.As the maximum number of hops H max increases, the number of completed flows becomes larger and larger.When H max is large, the blocked flows are more likely to be successfully relayed and the links that need to be scheduled are more.Since there are more links need to be scheduled, large amount of completed flows need longer transmission time.The phenomena in Fig. 9 and Fig. 10 are consistent with the previous assumptions of the relay algorithm.Take Fig. 9 as an example, compared to the completed flows with H max = 2, the number of completed flows increases greatly when H max = 3.When H max = 4, the number of completed flows increases little compared to the increase with H max = 3.When H max is bigger than 4, the number of completed flows is almost constant.The situations in Fig. 10 are the same.With the increasing on H max , the growth of the number of the completed flows becomes less and less.Considering practical condition adequately, the value of H max increased by one will increase the complexity of the algorithm to a certain extent.We can see from the figures that the increase of the completed flows with H max = 4 compared to H max = 3 is too small, so it is not worthwhile to exchange the increase of complexity with such a small amount of flow increase.Thus, H max = 3 is the optimal setting in the current situation.

D. COMPARISON WITH OPTIMAL SOLUTION
To demonstrate the proposed-FD scheme can achieve near-optimal performances, we compare it with the optimal relay path selection algorithm and optimal scheduling algorithm (exhaustive search method).We list all the possible relay paths and scheduling schemes to find the optimal solution.Since it is too complicated to obtain the optimal solution under normal circumstances, we can only obtain the optimal solution in a small scale network.So we set 5 nodes and 10 flows in this simulation, and the number of H max is set to 3.
In Fig. 11 and Fig. 12, we respectively plot number of completed flows and TSs of the optimal solution scheme and proposed-FD scheme under different blockage rates.As we can see, the gaps between the optimal solution and our proposed scheme are negligible in these two figures.For example, when the blockage rates is 0.4, the gaps in Fig. 11 is about 0.7%.The proposed scheme is able to approximate the optimal solution of the problem with a very small gap, and the solution joints relay path selection and scheduling links.Thus, the performances of the proposed scheme can be near-optimal in the small scale network.

CONCLUSION
In this paper, we propose a FD scheme that includes a FD multi-hop relay path selection algorithm and a FD concurrent scheduling scheme.By establishing multi-hop relay paths, the proposed scheme makes better on solving blockage problem in small cells of HCNs, and fully exploits FD communication and concurrent transmission to shorten the transmission duration.Extensive simulations show that the proposed-FD scheme has good performances on relaying blocked flows and efficient scheduling the links.Compared with other schemes, our proposed scheme is also not bad in terms of system throughput.We also investigate the impacts of different SI cancellation levels and the maximum number of hops of multi-hop relaying algorithm.Thus, the proposed scheme increases the number of blocked flows that are successfully relayed and improves the transmission efficiency of network.

FIGURE 1 .
FIGURE 1. Full-duplex communication in a mmWave small cell.

FIGURE 2 .
FIGURE 2. The mmWave superframe structure for the small cell.

FIGURE 3 .
FIGURE 3. The scene of blocked flows.
|E b | iterations.The for loop in line 20 has |S p (e ij )| iterations, where |S p (e ij )| is O(N H max ) in the worst case.N is the number of nodes in network.And the for loop in line 23 has |V | iterations, where |V | is O(N ).Thus, the relay path selection algorithm can be implemented in practice with the computational complexity of O(|E b |N H max +1 ).

VOLUME 7, 2019 Algorithm 1 1 :
The Relay Path Selection Algorithm Initialization: Obtain G(V , E) from T; Obtain E b from blocked flows; Compute the relay parameter to predict the relay probability of blocked edges in E b ; Remove the blocked edges in E b from E; Set the temporary set S tem = ∅; Set the alternative paths set S p (e ij ) = ∅; Iteration: while (|E b | = 0) do ij ∈ E b with the largest r(e ij ); 4: S tem = i; S p (e ij ) = ∅;

Algorithm 2 1 : 2 : 3 :
The FD Scheduling Algorithm Initialization: Obtain Loc, h and q l ; Obtain the set of non-zero edges from E; Get the pre-scheduling set S; A |L|×M = ∅; S s = ∅; δ f = 0; Iteration: while (|S| = 0) do for each s l ∈ S do if s l has no contention with the link(s) in S s then 4:S s = S s ∪ s l ; S = S − s l ; links in S s into the tail end of S, S = S ∪ S s ; 17: S s = ∅; 18: end while 19: Output A and δ f ; observe the outer while loop is O(|S|) in the worst case.The for loop in line 2 has |S| iterations, it is O(S).And the for loop in line 9 has |S s | iterations, it is O(S) in the worst case.Therefore, the worst computational complexity of scheduling Algorithm is O(2|S| 2 ).

FIGURE 5 .
FIGURE 5. Number of TSs under different blockage rates.

FIGURE 6 .
FIGURE 6. System throughput under different blockage rates.

FIGURE 7 .
FIGURE 7. Number of TSs under different SI cancelation levels.

FIGURE 8 .
FIGURE 8. System throughput under different SI cancelation levels.

FIGURE 9 .
FIGURE 9. Number of completed flows under different H max .

FIGURE 10 .
FIGURE 10.Number of TSs under different H max .

FIGURE 11 .
FIGURE 11. of completed flows under different blockage rates.

FIGURE 12 .
FIGURE 12. Number of TSs under different blockage rates.
is unblocked and v is not on p then S p (e ij ) = S p (e ij ) ∪ p ; S tem = S tem − p ;