NFRA-AIC: A RFID Reader Anti-Collision Protocol With Adaptive Interrogation Capacity

In radio frequency identification (RFID) applications, multiple readers are deployed in the work area to improve their coverage. Such adjacent readers may be faced with reader collision due to their mutual interrogation interference. In this case, the performance of the RFID system will be degraded greatly. Therefore, some researchers proposed a number of the RFID reader anti-collision protocols, such as NFRA and its variants. Based on the technical framework of NFRA, this paper proposes an RFID reader anti-collision protocol with adaptive interrogation capacity (NFRA-AIC). The main contribution is that the interrogation time of a reader is determined by the number of tags within its interrogation region. Among NFRA-AIC, by adding sub-rounds and reserving a period of time between the AC signal and the first OC signal, readers that complete interrogating tags can release the communication resources allocated to them. Therefore, other adjacent readers can have a chance to use these released communication resources to interrogate tags. It is worth pointing out that those readers interrogating tags will not be interrupted by an AC signal. To evaluate the protocol performance, the proposed NFRA-AIC is compared with several protocols, i.e., DCS, PDCS, Colorwave, NFRA, NFRA-C, FRCA1, FRCA2, and BACP, in 12 scenarios. The simulation results show that the proposed NFRA-AIC protocol outperforms the other conventional protocols. Especially, the NFRA-AIC harvests the highest efficiency improvement of more than 110% under both the random and mobile deployment patterns compared to the latest protocol BACP.


I. INTRODUCTION
Radio frequency identification (RFID) plays a critical role in Internet of Things (IoT), which is one of short distance communication technologies. RFID is characteristic of noncontact, flexible deployment and low cost. Hence, RFID is applied in many fields, e.g., smart warehouse [1], supply chain management [2], indoor localization [3] and modern agriculture [4]. Generally speaking, a passive RFID system is made up of a great number of passive tags and one or more readers. Passive tags are attached to the object items and used to store their information. They don't need a battery and The associate editor coordinating the review of this manuscript and approving it for publication was Mohamed Kheir. can harvest energy from electromagnetic waves emitted by readers. Readers interrogate tags to capture the data stored in tags by means of radio signals.
In some applications, only one reader is not sufficient to cover a specific identification area, so the tag identification efficiency of one reader may be limited. The general solution is to deploy multiple readers. However, the communication signals among multiple readers and multiple tags are easy to be interfered due to reader collision. Generally, the reader collision problem has two types: reader-to-reader collision and reader-to-tag collision [5]. When the reception terminal signals of readers are interfered by the interrogation signal from other readers, reader-to-reader collision happens. On the contrary, when two or more readers interrogate the VOLUME 7, 2019 This work is licensed under a Creative Commons Attribution 3.0 License. For more information, see http://creativecommons.org/licenses/by/3.0/ same tag within the overlapping section of their interrogation regions, reader-to-tag collision occurs. Either reader-toreader collision or reader-to-tag collision impairs seriously the tag identification performance of the RFID system [6]. Therefore, the reader collision avoidance protocol is required to coordinate the readers' operations (interrogation or waiting) to alleviate reader collision. Once a reader is allowed to interrogate tags, it will occupy a period of time (called the interrogation time) independently and other neighboring readers can't execute any interrogation operation during the interrogation time. Hence, reader collision avoidance protocols are responsible for ensuring the enabled reader to interrogate tags without interrupt during the interrogation time.
Up to date, various reader collision protocols have been proposed. One family of reader collision protocols is Distributed Color Selection (DCS) series, which includes the basic DCS, Probabilistic DCS (PDCS) and Colorwave. Based on Time-Division Multiple Access (TDMA), the basic DCS [7] is a distributed protocol where readers operate independently and don't rely on any centralized device. Probabilistic DCS (PDCS) [8] adopts a multichannel mechanism and provides the probabilistic color change strategy for the collided readers to improve the performance of the RFID system. Colorwave [9] offers a strategy called the max color adjustment to improve the interrogation efficiency of the RFID system. Every reader is capable of managing its own frame length. When the reader-to-reader collision becomes heavy, the reader is enabled to increase its number of colors.
The other family of reader anti-collision protocols is Neighbor Friendly Reader Anti-collision (NFRA) series including the basic NFRA, NFRA++, NFRA-C, SDMRA, Xia-NFRA, FRCA1, FRCA2 and BACP. They require a polling server to command the readers' operation. Clearly, they are centralized algorithms. The basic NFRA protocol [10] provides an efficient neighbor management mechanism by maximizing the number of communicating readers. In order to improve the fairness and the throughput, the NFRA++ protocol [11] defines the priority measure for every reader and adds an extra slot for the re-competition. For the same purpose, the NFRA-C protocol [12] makes a negotiation strategy for the readers having beacon collisions according to the historical interrogation information recorded by a counter. The SDMRA protocol [13] focuses on reducing beacon collision and increasing the throughput by using the sift function in the contend procedure. Xia-NFRA [14] introduces two strategies to enhance the throughput of NFRA. One is a competitive mechanism decided by the number of neighboring readers, and the other is a back off strategy for the collided readers to compete for interrogation chances again. FRCA1 and FRCA2 [15] combine TDMA and FDMA mechanisms to reduce reader-toreader and reader-to-tag collisions. BACP [16] also combines TDMA and FDMA mechanisms. It reduces collisions and increases the throughput by sending a priority code via a beacon message and making decisions based on the beacon messages received by readers.
In some mobile applications, e.g., conveyor-belt-based automatic production and large-scale warehouse management, tags attached to the objects enter and leave a reader's interrogation region frequently [17]. As a result, the number of tags within a reader's interrogation region is varying. Further, the time duration that a reader takes to complete interrogating all the covered tags is varying. In practice, there exist two possible conditions for a given time duration. One possibility is that the reader can't finish interrogating all the tags in its interrogation region, and the other possibility is that the reader does nothing but occupies the time after interrogating all the tags. In this case, it is possible to re-assign (or transfer) the occupied time to other potential neighboring readers in order to increase the throughput of the whole RFID system. However, the interrogation time duration is determined by the length of a frame (round) which is a fixed value in the existing protocols such as the DCS series [7]- [9] and the NFRA series [10]- [16]. Clearly, any fixed interrogation time is not suitable for mobile readers in the practical RFID applications.
Based on the technical framework of NFRA, this paper proposes a RFID reader anti-collision protocol with adaptive interrogation capacity (NFRA-AIC). NFRA-AIC provides each reader a chance to maintain its own interrogation time determined by the number of covered tags. Before interrogation, each reader is able to estimate the number of covered tags and calculate its desired interrogation time. When a reader starts to interrogate tags or finishes interrogating tags, it will broadcast signals to neighboring readers. According to the signals from neighboring readers, those readers who lose in the previous competition will decide to compete again or continue keeping silent in a sub-round, instead of waiting until the next round arrives. NFRA-AIC is capable of providing more interrogation time for more readers to improve the interrogation efficiency of the RFID system. Therefore, the contribution of this paper is to design a technical framework of NFRA-AIC, i.e., an embedded sub-round mechanism and its timing diagram.
The rest of this paper is organized as follows. Section II reviews the related theories of the reader collision model, the conventional protocols and the tag count estimation algorithm. Section III gives the technical descriptions of the proposed NFRA-AIC protocol. The simulation results and their comparative analyses are shown in Section IV. The conclusions are made in Section V.

II. REVIEW OF RELATED THEORIES
For the sake of clarity, this section reviews the reader collision problem, the conventional reader anti-collision protocols, the timing diagram of NFRA and the tag count estimation algorithm, respectively.

A. READER ANTI-COLLISION PROBLEM
Generally, a RFID system consists of multiple readers and a great number of tags. It is very important for the readers to obtain data from tags rapidly and correctly. However, the interference (also called collision) among readers and tags may prevent readers from interrogating tags correctly and thus decrease the performance of the RFID system. Figure 1 shows two types of reader collisions: reader-toreader collision and reader-to-tag collision. In Figure 1(a), Readers 1 and 2 are located in the counterpart's interference region formulated as D < R. If they use the same frequency channel to interrogate tags simultaneously, Reader 1 will receive the mixed signal from tags and Reader 2. Because the passive tags are energized by readers, the signal component that Reader 1 receives from passive tags is weaker than that from Reader 2. In this case, Reader 1 can't identify the signals from tags and Reader 2 correctly. Similar to Reader 1, Reader 2 also fails to interrogate tags. This effect is called reader-to-reader collision. Hence, to avoid reader-to-reader collision, readers located in the counterpart's interference region should use different frequencies and/or time to interrogate tags. Figure 1(b) shows reader-to-tag collision, where Readers 1 and 2 are very close and an overlap interrogation region exists due to D < 2r. In this case, if Readers 1 and 2 are operating simultaneously, Tag 2 located in their overlap interrogation region is not able to respond to Reader 1 or Reader 2 because it can't resolve the interrogation request from the mixed signal. Note that the tags located in the non-overlap interrogation region can respond to Reader 1 or Reader 2. Since the condition R > 2r has been proved in [18], the condition D < R can be derived from D < 2r in Figure 1(b). According to this condition, the reader-totag collision is always accompanied by the reader-to-reader collision. Therefore, it is improper for Readers 1 and 2 to interrogate tags simultaneously.

B. READER ANTI-COLLISION PROTOCOLS
In order to minimize reader-to-reader collision and readerto-tag collision, various reader anti-collision protocols are designed. These protocols are classified into two groups: distributed protocols and centralized protocols [19], so we will review them by following this taxonomy.
In the distributed protocols, the Distributed Color Selection (DCS) protocol [7] adopts the Time-Division Multiple Access (TDMA) scheme. The tag identification procedure of DCS takes place in rounds (frames). The frame size for readers in DCS is called the max color. Each frame is divided into several time slots (colors). A reader that wants to interrogate tags chooses one color in a frame and interrogates tags during the selected color. If the reader interrogates without collision in a frame, the reader will keep and reuse its color in the next frame. When two or more neighboring readers select the same color, they will change their own colors randomly among the max color and use the new color in the next frame due to reader collision. Then, all the collided readers inform their own neighboring readers of the new colors by sending kick signals. The neighboring readers compare the color received from the kick signal with their own color. If they are the same, the neighboring readers will reselect their own colors among the max color randomly.
Probabilistic DCS (PDCS) [8] is an enhanced version of DCS. Compared to DCS, PDCS enables the collided readers to reselect their own colors with a predefined probability, because they may experience a new collision in the next frame if both the two colliding readers choose the same new color again.
When the number of neighboring readers does not match the max color, DCS may be inefficient. Therefore, Colorwave [9] offers a strategy to adjust the max color. If the max color value is much greater than the number of neighboring readers, this may lead to many unused colors in a frame. On the contrary, if the max color value is much smaller than the number of neighboring readers, it will cause more overhead, such as more reader collisions, more kick signals and more slot reselections. In this case, Colorwave allows each reader to maintain its own frame length because each reader is able to estimate the percentage of successful interrogations. If this percentage is higher/lower than a predefined threshold, the reader can decrease/increase its own max number.
Neighbor friendly reader anti-collision (NFRA) protocol [10] is a well-known protocol in centralized protocols. A polling server broadcasts two kinds of commands, i.e., the arrangement command (AC) and the ordering command (OC), to synchronize the communication by using UHF 433 MHz. A reader also uses UHF 433 MHz to compete with neighboring readers by sending a beacon and an overriding frame (OF). The lengths of commands are relatively short (e.g., AC has 2.83ms, OC has 1ms; while the beacon and OF have 0.3ms). After all competitions among readers are over, the server doesn't send any signal and the communication between reader and tag (CRT) are conducted. During the CRT time, any signals to neighboring readers are disabled. The length of CRT time is 0.46s, as shown in Fig.3. It is obvious that the tag interrogation of readers mainly happens during the CRT time.
NFRA-C [12] is an extended version of the NFRA protocol by adding a counter to each reader. The counter is responsible for recording the historical number of successful communications with tags performed by the reader. When a reader meets a collision of beacons, it sends a compare counter (CC) value to its neighbors. If the reader receives only one CC from its neighbors, it will determine whether to interrogate tags or give up this chance. However, a reader VOLUME 7, 2019 has to wait until the beginning of the next round if multiple beacon collisions from the neighboring readers are detected. Besides, it's emphasized that NFRA-C and NFRA use the same mechanism in determining the length of the interrogation time.
The FRCA1 and FRCA2 protocols combine the TDMA and FDMA mechanisms to reduce reader-to-reader and reader-to-tag collisions. For the FRCA1 protocol, readers choose random numbers (time slots) by using the sift function and choose channels (frequencies) by using the uniform random function. If two readers choose the same random number and channel number, a beacon collision will occur. One reader having less tag communication in the previous rounds can occupy the channel and communicate with the tags. The other reader waits until a new round comes. If three or more readers encounter beacon collisions, all of them must wait until a new round starts.
In FRCA2, if only two readers encounter beacon collisions and the distance between them is less than twice the reading range, then one reader having smaller number of successful transmissions can occupy the channel, and the other reader must wait until the next round comes. On the contrary, if the distance between the two neighboring readers is larger than twice the reading range, one reader with smaller number of successful transmissions can occupy the channel, and the other reader randomly selects a new channel and takes part in competition in the next time slot.
BACP [16] is a protocol resulting from the combination of TDMA and FDMA, which aims at reducing reader collisions and increasing the throughput of the RFID system. In BACP, a priority code is sent via a beacon message and readers receive the priority code to make decisions. Therefore, BACP requires each reader to listen to the channel in real time.

C. TIMING DIAGRAM OF NFRA
In the NFRA protocol, a polling server broadcasts an AC signal to readers to determine the beginning of a new round, which contains an integer called the max number (MN). The readers generate their own random numbers from 1 to MN randomly after receiving AC. Then, the server broadcasts OC signals in succession. Readers compare their random numbers chosen at the beginning of the round with the value in the OC. If they are equal, the readers will send beacons (i.e., special signals) to all their neighboring readers to detect the collision status. The server reserves some extra time for sending and receiving beacons between readers to avoid collision between beacons and OCs, because they use the same frequency. If some readers do not detect any collision during this period, they will send an overriding frame (OF) to their neighboring readers and start to interrogate tags until the next AC arrives. Those readers that receive an OF will keep silent until the next AC is received. That is to say, they don't interrogate tags in the current round. On the other hand, it is easy to understand that the readers encountering with beacon collisions aren't able to communicate with tags in the current round.   2 depicts an RFID network with 8 readers, where a polling server is responsible for coordinating the timing sequence of reader operations. For the sake of clarity, the timing diagram of all readers is illustrated in Figure 3, according to the NFRA protocol. The interrogation time duration of a reader is determined by both the OF from the reader itself and the AC from the server. Taking Reader 1 as an example, the interrogation time duration of Reader 1 begins with the OF sent by Reader 1 and ends with the AC sent by the server. It means that the time duration of interrogating tag is determined by both Reader 1 and the server. However, the time which Reader 1 spends on interrogating tags is related to the number of tags in its own interrogation region. Suppose the number of tag in Reader 1's interrogation region equals 1. If Reader 1 is able to finish interrogating 4 tags in Round 1, it will occupy the channel but get no effective tag response during the time interval between finishing interrogating the tags and receiving the next AC from the server. If Reader 5 takes the time interval to interrogate tags, the tag interrogation efficiency will increase. Taking Reader 6 for another example, the number of tags in Reader 6's interrogation region is 3000. If Reader 6 isn't able to finish interrogating 3000 tags in Round 1, it will be interrupted by the AC signal and has to join the competition in Round 2. If Reader 6 can continue to interrogate tags by ignoring the AC signal, the time delay of interrogating tags will decrease. The mechanism of determining the length of interrogation time of NFRA doesn't correlate with the number of tags in each reader's interrogation region. Obviously, this mechanism is not helpful to improve the performance of the RFID system.

D. ESTIMATION OF TAG COUNT
Generally, a tag collision occurs if two or more tags respond to the same reader's interrogation simultaneously. In this case, some tag anti-collision protocols, such as Aloha series, are provided for the successful tag interrogation [24]. As you know, the throughput (number of interrogated tags per second) of the system is maximized if the dynamic frame length equals the number of unread tags in the reader's interrogation region [21]. Therefore, the estimation of tag count is of great importance for efficient tag interrogation.
In practice, as long as the number of tags is estimated, the reader can predict how long it takes to interrogate all covered tags [24]. Once the reader completes interrogating all tags in its coverage region, it will stop interrogating timely and release its communication resources. Consequently, these released resources are provided for its neighboring readers to compete and then more readers are enabled to interrogate tags. Therefore, the limited communication resources are fully utilized.
There are several tag count estimation algorithms, such as Maximum Throughput [21], Simple Tag Estimation [22], Enhanced Tag Estimation [23] and Maximum Likelihood Estimation [24]. For the sake of clarity, prior to reviewing them briefly, we assume that Ku tags are not interrogated and each frame has N slots. The probability that only one tag responds in a single slot is expressed as Similarly, the probability that no tag responds in a single slot is expressed as Therefore, the probability that two or more tags respond in a single slot simultaneously (i.e., tag collision) can be computed as Moreover, we assume that there are N 1 successful time slots, N 0 idle time slots and N C collided time slots in a frame. By ignoring the capture effect, Ku has a lower limit of N 1 + 2N C [20]. However, the condition considering only the lower limit of Ku is insufficient for estimating the number of tags correctly.

1) MAXIMUM THROUGHPUT RATE [21]
Without loss of generality, the throughput rate of the RFID system can be defined as By setting the derivative of Eq.(4) to zero and solving for Ku to find the maximum throughput ratio, the result is which indicates that the RFID system will gain the maximum throughput ratio if the frame size is equal to the number of tags. However, if the frame length is too small, the tag estimation error will become large.
2) SIMPLE TAG ESTIMATION [22] From the viewpoint of statistics, if N C collided time slots are detected by using the cyclic redundancy check method, the probability P C can be also rewritten as By subtracting Eq.(6) from Eq. (3), we can get a function By setting Eq. (7) to zero, we can solve for Ku.

3) ENHANCED TAG ESTIMATION [23]
The enhanced tag estimation method uses not only the number of collision slots but also the number of idle slots and the number of successful time slots. Define C tag as the average tag number in a collision slot, then Ku tags can be estimated as Thus, we get In practice, the number of tags can be obtained statistically as By substituting Eq.(9) from Eq.(10), we can get a function By setting Eq.(11) to zero, we can solve for Ku. VOLUME 7, 2019 4) MAXIMUM LIKELIHOOD ESTIMATION [24] The maximum likelihood estimation method uses N 0 idle time slots to estimate the tag count, and its probability mass function (PMF) is given by where Y is an integer constant. By using the maximum likelihood estimation method, we can obtain the estimation

III. THE RFID READER ANTI-COLLISION PROTOCOL WITH ADAPTIVE INTERROGATION CAPACITY
This section presents the reader state conversion, and proposes an enhanced protocol called NFRA-AIC, which is derived from the basic NFRA protocol. The main idea of NFRA-AIC is that CRT is divided into several sub-rounds. Readers can exit from interrogation individually or join re-competition during the sub-rounds, so they aren't required to wait for the next AC. Therefore, NFRA-AIC can enable readers to compete for new interrogations more efficiently than NFRA.
A. ANALYSIS OF READER STATE Figure 4 presents the state diagram of a reader where the NFRA protocol is applied. There are four main states: competition initialization, competition, interrogation and silence.
After the reader is powered up, the reader receives an AC signal and converts it into the competition initialization state. During the competition initialization, the reader randomly generates a random number and waits for the polling server to send the corresponding OC signal. If the reader receives an OF signal during waiting for the OC signal, it will convert to the silence state. If no OF signal is received, a beacon signal will be sent to the neighbor readers after receiving the corresponding OC signal. If a beacon collision is detected, the reader will convert to the silence state. If a beacon collision is not detected, it will convert to the interrogation state. Figure 5 presents the state diagram of readers by applying the NFRA-C protocol. The NFRA-C protocol is an improved version of the NFRA protocol. The Competition again state is added. If a reader detects a beacon collision, it won't convert into the silence state but the competition state again. It makes the readers that detect a beacon collision also have the opportunity to convert to the interrogation state. This mechanism provides an increase in the number of available readers. Therefore, it can be found that the NFRA-C protocol refines and decomposes the reader state after the beacon collision. Figure 6 gives the state diagram of readers by applying the NFRA-AIC protocol. Readers that finish interrogating all the   tags in their interrogation region can release the communication resources. A path from the interrogation state to the silence state is added, while the path from the interrogation state to the competition initialization state is deleted. This makes the readers that don't finish interrogation in a single round not be interrupted by an AC signal. Readers in the silence state can convert to the competition initialization state according to the states of neighbor readers. Obviously, the NFRA-AIC protocol has a different improvement from the NFRA-C protocol. (2) a reader can decide whether to join the competition during the sub-round based on the states of its neighbors; (3) a reader that doesn't yet finish interrogating tags can continue to interrogate tags by ignoring AC.
For the first rule, ASAP [24], i.e., a mac protocol, is introduced to NFRA-AIC. There are two important parameters to be defined. One is the tag count estimation parameter, which is used to estimate the number of tags in the reader's interrogation region. The other is the expected time that readers take to finish interrogating tags, which can be formulated as where, T FIT is the total expected time that a reader takes to finish interrogating tags, K is the number of tags located in the reader's interrogation region, T o = 320µs is the constant time duration of an occupied slot. In general, α = 0.1884 and β = 1.943. Note that K can be obtained easily by using the maximum likelihood estimation (MLE) algorithm, which will be discussed in Section II.D. For the second rule, CRT is divided into several subrounds. As shown in Figure 7, each sub-round consists of an arrangement command of the sub-round (ACS), several ordering commands of the sub-round (OCS) and a CRT time period of the sub-round (CRTS). During each sub-round, the server sends an ACS signal without interrupting the readers' tags interrogating, then waits for readers to send a reverse overriding frame (ROF) signal to activate those silent readers. The CRTS time length of a sub-round is computed by using where, T CRTS is the CRT time in a sub-round, T CRT is the CRT time in a round, T ACS , T OCS , T B , T OF and T ROF are the length values of the ACS time, the OCS time, the beacon time, the OF time and the ROF time, respectively, m is the number of sub-rounds. Typically, T ACS = 2.83ms, T ROF = T OF = T B = 0.3ms, T OCS = 1ms and T CRT = 460ms [10]. During the sub-round, readers can compute their own T FIT by using Eq. (14). When the time T that a reader takes to interrogate tags is equal to T FIT , the reader will stop interrogating tags and wait for an ACS signal to send ROF signals to its neighbors. Whether other waiting readers will join the competition or not is determined by the number of received OF signals (N OF ) and received ROF signals (N ROF ). After any reader that finishes interrogating tags broadcasts ROF signals, the neighboring readers can join the sub-round competition if N OF = N ROF . In this case, it is indicated that its neighboring readers aren't interrogating tags.
For the third rule, after the server broadcasts an AC signal, it will wait for a period time rather than broadcast an OC signal immediately. During this period time, those readers that can't finish interrogating tags in the previous round will continue to interrogate tags by sending OF signals to their neighbors.  tags, i.e., I = 0 (false) and I = 1 (true). When a reader receives an AC signal, all the readers set b = 0, I = 0, f = 0, N OF = 0 and N ROF = 0. When T < T FIT , the readers prevent neighboring readers from taking part in the competition and continue to interrogate tags by sending an OF signal before the server broadcasts the first OC signal. If a reader doesn't receive OF signals, it will be allowed to take part in the competition by choosing a random number among [1,MN ]. Then, the server broadcasts OC signals including the number from 1 to MN . Readers wait for the OC signal whose number equals the random number and send beacons to their neighbors. If no beacon collision happens, the readers send OF signals to their neighbors and interrogate tags. At the same time, they compute T FIT and start to record T . If readers receive OF signals or detect any collision of OF signals, they will update their values of N ROF or b. Figure 9 shows the pseudocode of NFRA-AIC during the sub-rounds of CRT time. The competition in the sub-rounds begins when the server broadcasts an ACS signal. Readers inform the neighboring readers by sending an ROF signal. They reset I = 0, f = 0 and T = 0 when T ≥ T FIT . Then, If the conditions I = 0, N OF = N ROF , f = 0 and b = 0 are satisfied, the reader doesn't interrogate tags in this round, which means that its neighboring readers aren't interrogating tags. In this case, it can join the competition of the sub-round. The competition result is determined by the chosen random number.

C. AN EXAMPLE OF NFRA-AIC
For the RFID network depicted in Figure 2, the timing diagram of NFRA-AIC is given in Figure 10. The server broadcasts an AC signal with MN = 2 and readers generate their own random numbers among [1], [2], except Reader 6 that sends an OF signal to its neighboring readers because it doesn't finish interrogating tags during the previous round. When the first OC signal (with 1) arrives, Readers 1, 2 and 4 send a beacon signal, respectively, and detect no collision of beacons, so they will interrogate tags after sending OF signals. At the same time, Reader 5 sets its N OF = 1 due to receiving the OF signal from Reader 1 and doesn't operate until N OF = N ROF . Because Reader 3 has a collision of OF signals from Reader 2, it doesn't operate until the next AC comes. When the server broadcasts the second OC signal (with 2), Readers 7 and 8 don't operate owing to a beacon collision.
In this case, the server broadcasts the first ACS signal with MNS = 2. Readers 7 and 8 generate a new random number among [1], [2] because their N OF and N ROF are both equal to 0. Then, the server broadcasts the first OCS signal, it is obvious that Reader 7 wins the competition and interrogates tags, while Reader 8 doesn't operate due to receiving the OF signal from Reader 7. Then, after the server broadcasts the second ACS signal with MNS = 2, Readers 1, 2 and 4 send ROF signals to their neighboring readers. The reason is that a reader can interrogate about 417 tags during a subround according to Eqs. (14) and (15) and Readers 1, 2 and 4 have finished interrogating tags during the Sub-round 1. When Reader 5 receives the ROF signal from Reader 1, it will generate a new random number among [1,2] due to N OF = N ROF = 1 and interrogate tags during the Sub-round 2.
Therefore, compared to NFRA, NFRA-AIC has 3 improvements in the above example: (1) more competition is provided for the readers having beacon collisions (e.g., Readers 7 and 8), (2) extra competition is provided during the subrounds for readers receiving OF (e.g., Readers 1 and 5), and (3) those readers that don't complete interrogating tags during a single round can continue interrogating tags, such as Reader 6.

D. TIME COMPLEXITY OF NFRA-AIC PROTOCOL
In this section, inspired by [16], the time complexity of NFRA-AIC protocol is measured by the numbers of operations of readers. For a given reader, firstly, we can define the worst case: (i) it encounters a beacon collision after receiving the OC signal with the sequence number MN − 1; (ii) then it receives an OF signal after receiving the OC signal with MN ; (iii) in each sub-round, it receives an ROF signal; (iv) then, it encounters a beacon collision after receiving the  Then, we define the time costs for operations used by a reader in the NFRA-AIC protocol as shown in Table 1 Table 1, respectively.
For the above worst case, the counts of operations are measured, as shown in Table 2. To be specific, we assume that the NFRA-AIC protocol has n rounds and each round contains m sub-rounds, so the time complexity of NFRA-AIC is estimated by using T (n) = 2T set + n 6T set + (4MN + 4)T jud + T sen +T gen + T det + (MN + 2)T rec + m[2T set +(5MNS + 5)T jud + (MNS + 2)T rec + T sen + T gen + T det ] .
For the sake of simplicity, let n = m = MN = MNS and replace all the values considered for the time costs with the maximum value (T max ). As a consequence, Eq. (16) can be simplified as: where n 3 is the highest-order term. Therefore, it can be concluded that the time complexity of the NFRA-AIC protocol is T (n) = O(n 3 ).

E. THEORETICAL ANALYSIS
In this section, it is required to determine how many tags are interrogated in a single round. In a RFID network with V +1 readers, we assume that any two readers are neighboring to each other. To be specific, for any Reader i, there are V neighboring readers, i.e., Reader j, (j = 1, 2, . . . , V + 1, j = i). It is supposed that T i Max represents the maximum interrogation time of Reader i in a single round. If Reader i wins the competition after receiving the θ i -th OC signal, T i Max can be calculated by using However, if Reader i wins the competition after receiving the θ i -th OCS signal in the s i -th sub-round, T i Max can be calculated by using For the sake of clarity, we define a binary variable X i to describe the conditions of Reader i. X i = 1 indicates that Reader i wins competition in OC or OCS signals, while X i = 0 indicate that Reader i fails and keeps silent. Known from Eq. (14), we can obtain the T FIT value of Reader i, denoted as T i FIT . As you know, the communication resources are released only in the sub-rounds. According to the relationship of T i FIT and T i Max , there are 3 following cases for Reader i to release the communication resources.
Case 1 (Undersupply): If T i FIT ≥ T i Max , Reader i takes T i max to interrogate tags in a single round and doesn't release the communication resources in the sub-rounds. In this case, no next reader can compete for interrogation, i.e., X i+1 = 0. So we can get the number of tags interrogated by Reader i in a single round Case 2 (Oversupply and Unreleased): Max , Reader i fails to release the communication resources while it misses the last ACS signal. In this case, no communication sources is provided for the next reader to compete, i.e., X i+1 = 0. Thus, we can obtain

Case 3 (Oversupply and Released):
Reader i releases the communication resources in the s-th sub-round and its neighboring readers compete again in the s-th sub-round. So we get Assume that Reader 1 is the first reader winner; Reader 2 is the second reader winner, and so forth. Above all, we can get the total number of interrogated tags in a single round Clearly, for a given value of m, T CRT is a linear function with respect to T CRTS , as drawn in Figure 11. As the value of T CRTS increases, the value of T CRT grows up; and vice versa. Further, it's not hard to observe an interesting thing that the slope of the curve is equal to m. Therefore, for a larger value of m, the value of T CRT will grow up faster. In turn, for a specific value of T CRT , we will get different values of T CRTS when the value of m varies.
To study the performances of protocols, such as NFRA [10], NFRA-C [12], FRCA1 [15], FRCA2 [15] and BACP [16], the value of T CRT is generally set to 0.46s. Hence, the value of T CRT in NFRA-AIC will be also set to 0.46s for the sake of fair comparison. In this case of T CRT = 0.46s, seen from Figure11, T CRTS equals 223.67s, 147.00s and 108.67s if m is 2, 3 and 4, respectively.

IV. EXPERIMENTAL RESULTS AND ANALYSIS
To evaluate the performance of NFRA-AIC, a series of numerical simulations are arranged in this section, where the effects of the parameters m and MNS are investigated and the comparisons among DCS, PDCS, Colorwave, NFRA, NFRA-C, FRCA1, FRCA2, BACP and NFRA-AIC are made.
For the sake of fairness, readers are deployed randomly in a circular area with the radius of 50 meters and the polling radius of the NFRA server is set 50 meters. 100 samples of reader networks are generated randomly with a certain number of readers. The number of tags in the interrogation region of a reader follows the Poisson distribution with the parameter λ. Each protocol is executed for 100 seconds in an individual network. The maximum interference radius and the  maximum beacon radius are 8 meters, respectively. All the simulations are implemented by using OMNET++ [25].
To measure the performance of protocols, we define the following average efficiency formula where E is the average efficiency with a unit of tags/second, NS is the number of reader network samples, NR is the number of readers in a sample of the reader network, R ij is the number of tags that the j-th reader have interrogated in the i-th reader network sample, and t is the total execution time.
A. MAX NUMBER FOR A SINGLE SUB-ROUND (MNS) Figure 12 shows the average efficiency of the proposed NFRA-AIC with varying MNS values when m = 1 and MN = 32. It means that only one sub-round is provided for qualified readers to compete for interrogations. On the whole, the average efficiency grows up as the number of readers or the value λ increases, as shown in Figure 12. When λ = 10, there are a few tags in each reader's interrogation region and the average efficiency are higher for MNS = 10 than that for MNS = 5. When MNS > 10, the average efficiency curves trend to be flat as shown in Figure 12(a). When λ = 100, the curves in Figure 12(b) have a similar trend to those in Figure 12(a). For instance, the average efficiency for MNS = 10 is slightly higher than that for MNS = 5; especially for MNS > 10, the average efficiency has almost unchanged. The reason is that those interrogating readers haven't finished interrogating tags before receiving the ACS signal. Therefore, those readers don't release resources; as a result, their neighboring readers don't join the second competition. In the sub-round, the readers having collision of beacon will compete again.
In Figure 12(c), when MNS ≤ 30, the average efficiency grows up as the MNS value increases; while the average efficiency tends to be stable when MNS > 30. Generally, the interrogating readers are unable to finish interrogating tags during a single round, so they will continue interrogating tags in the next round. Any reader competing in the subround must satisfy two conditions: (a) it has a collision of beacons and (b) is activated due to ROF signals. By comparison, the number of readers competing in the sub-round for λ = 1000 is more than that for either λ = 10 or λ = 100. Therefore, it is necessary to provide a bigger MNS for the case of λ = 1000. Figure 13 shows the average efficiency of the proposed NFRA-AIC with varying m values when MNS = 1 and VOLUME 7, 2019 MN = 32. In this case, m sub-rounds are arranged, but only one OCS is provided during a sub-round. In Figures 11(a)-(c), the average efficiency grows up not only as the number of readers increases, but also as the value λ increases. To be specific, in Figure 13(a), it is seen that the average efficiency curve of NR = 200 increases when m < 10. In other cases, the average efficiency curves are almost unchanged as the value of m varies. In Figure 13(b), when NR = 200 and NR = 400, the average efficiency curves both increase as the value of m increases. When NR = 600, NR = 800 and NR = 1000, the average efficiency curves tend to be all stable. When NR = 200, the probability of collisions due to OF and ROF signals is lower than that in the case of NR > 200. On the other hand, since the readers having a collision of OF or ROF signals don't join the competition during the sub-round, it is unnecessary to provide too many sub-rounds when NR > 200. In Figure12(c), it is observed that all the average efficiency curves increase slowly as the value of m increases.

B. THE NUMBER OF THE SUB-ROUNDS (m)
In summary, if there are m sub-rounds,m ACS signals are provided. Any readers receiving ACS signals can release resources. Therefore, the bigger the value of m is, the higher the probability that neighboring readers compete again is. MNS represents that there are MNSOCS signals during a subround. After receiving the specific OCS signal, the readers competing again will send beacons to neighbors. Clearly, the bigger the value of MNS is, the lower the probability that readers experience collisions of beacons is, which is beneficial to smooth competition. However, the values of m and MNS are constrained by Eq. (15). Therefore, there is a tradeoff between m and MNS.

C. PERFORMANCE COMPARISON 1) PARAMETER SETTING OF PROTOCOLS
For the sake of performance comparison, the average efficiencies are evaluated among DCS, PDCS, Colorwave, NFRA, NFRA-C, FRCA1, FRCA2, BACP and the proposed NFRA-AIC. The parameter settings of all the protocols are given in Table 3. Refer to the NFRA protocol [10], the communication time between a reader and tags is set to 0.46s for all the protocols. For DCS, PDCS and Colorwave, the communication time between readers is set to 1ms [10] and the max color is initiated as 5. For PDCS, the probability of selecting a new color is set to 0.7 [8]. For Colorwave, the values of Upsafe, Dnsafe, UpTrig, Dntrig and MinTimeIn-Color is set to 100, and is the same as the set 1 among the Colorwave test input [9]. For NFRA and NFRA-C protocols, the values of the parameters are the same as [10] and [12]. It is worthy of pointing out that the initial value of the counter is a random number between 0.1 and 0.3 in NFRA-C. For FRCA1, the number of channel is set to 1. For FRCA2 and BACP, the number of channel is set to 2. Finally, for NFRA-AIC, the max number for a single sub-round (MNS) is set to 10 and the number of the sub-rounds (m) is set to 24. It is noted that DCS, PDCS, Colorwave, NFRA, NFRA-C, FCRA1 and NFRA-AIC only use one channel (frequency). However, FRCA2 and BACP use two channels (frequencies).

2) EXPERIMENTAL ENVIRONMENT
In comparative experimental simulations, we take into account two kinds of reader deployment patterns: random pattern and mobile pattern. In the mobile pattern, the server is located in the coordinate origin (0, 0). The initial coordinates (x 0 , y 0 ) and the directions of motion (ω 0 ) of readers are generated randomly by following (−50, 50),  Given that v represents the moving speed, st represents the moving time, the coordinates (x t+1 , y t+1 )and the directions (ω t+1 ) of readers at the t + 1 time epoch are updated by using Note that ω t+1 is updated randomly and thus (x t+1 , y t+1 ) is also updated randomly. For the sake of simplicity, v is set to 1m/s, and st is set to 1s. Due to reader mobility, we define six mobile scenarios (SC7-SC12), which are different from stationary scenarios (SC1-SC6

3) EXPERIMENTAL RESULTS
For the sake of finding improvements, we use the latest algorithm BACP [16] as the counterpart and thus define the following evaluation equation where g represents the improvement percentage, E NFRA−AIC is the average efficiency of the proposed NFRA-AIC and E BACP is the average efficiency of the compared BACP. Table 4 presents the average efficiency of different protocols under the random pattern. For SC1, SC2 and SC3, according to Table 4, it is found that the average efficiencies of all the evaluated protocols increase as the value of NR increases. Besides, the average efficiencies also grow up as the value of λ increases. In detail, the average efficiencies of DCS, PDCS and Colorwave are very proximate, the average efficiencies of NFRA, NFRA-C, and FRCA1 are almost the same, and the average efficiencies of FRCA2 and BACP look similar. The average efficiency of NFRA-AIC is much bigger than those of the other protocols. To be specific, the proposed NFRA-AIC get the improvements of 0.71% to 24.75% in the efficiency gain compared with BACP.
On the one hand, the improvement in average efficiency increases as the value of NR increases. When NR = 10, the number of neighbor readers is approximately equal to 0, which means that almost all the readers can interrogate tags simultaneously. For NFRA-AIC, when readers finish interrogating tags and release resources, few neighbor readers can use these released resources. On the other hand, the improvements in average efficiency for λ = 10 and λ = 100 are both higher than that for λ = 1000. For λ = 1000, a lot of interrogating readers can't finish interrogating tags during a single round. In this case, some readers will release and transfer resources to the other readers during the sub-rounds.
For SC4, SC5 and SC6, it is observed from Table 4 that the average efficiency of NFRA-AIC is the highest. Further, NFRA-AIC harvests bigger improvements in average efficiency for SC4, SC5 and SC6 than those for SC1, SC2 and SC3. Especially, NFRA-AIC gets the improvement of 115.52% when NR = 900 and λ = 100. In a word, the average efficiency of NFRA-AIC is always the highest in the six scenarios (SC1-SC6). Table 5 presents the average efficiency of different protocols under the mobile pattern. Observed from Table 5, NFRA-AIC harvests the highest average efficiency among all evaluated protocols. Compared to the latest published BACP, NFRA-AIC obtains improvements ranging from 1.6% to 114.31%. On the one hand, to be specific, for λ = 10 and λ = 100, the improvements of NFRA-AIC range from 2.9% to 114.31%, whereas for λ = 1000, the improvements of NFRA-AIC do from 1.6% to 11.66%. Clearly, NFRA-AIC provides more powerful interrogation efficiency improvements for the scenarios of λ = 10 and λ = 100.
On the other hand, the improvements in average efficiency of NFRA-AIC range from 2.9% to 23.29% when the number of readers increases from 10 to 90, while those of NFRA-AIC range from 1.6% to 114.31% when the number of readers increases from 100 to 900. Especially, When λ = 100 and NR = 900, NFRA-AIC harvests the peak improvement in average efficiency of 114.31%, compared to the newly published BACP.
By comparing the results in Tables 4 and 5, it is not hard to find out that NFRA-AIC is able to obtain the best tag interrogation efficiency among 9 evaluated protocols and outperforms the newly-published BACP in an overwhelming manner, regardless of the random pattern or the mobile pattern.

V. CONCLUSION
In this paper, the NFRA-AIC protocol is proposed as a new protocol following the basic framework of NFRA. The main idea is that each reader is able to determine its own interrogation time according to the number of tags distributed in its own interrogation region. By inserting the sub-rounds, a reader that finishes interrogating tags can exit from the interrogation condition and inform its neighboring readers. Other neighboring readers can decide whether to join the competition again or not according to the status of its neighboring readers. By reserving a period of time between the AC signal and the first OC signal, a reader that doesn't finish interrogating tags can continue interrogating tags without extra competition.
We investigate the effects of the max number for a subround (MNS) and the number of the sub-rounds (m) on the average efficiency of the proposed NFRA-AIC. Besides, DCS, PDCS, Colorwave, NFRA, NFRA-C, FRCA1, FRCA2, BACP and the proposed NFRA-AIC protocol are evaluated in the random deployment pattern and the mobile deployment pattern, respectively. Under each deployment pattern, six scenarios with different number of readers and different number of tags are taken into account. The simulation results indicate that the proposed NFRA-AIC protocol outperforms the other existing protocols. Especially, NFRA-AIC harvests the highest improvement of more than 110% in average efficiency under both the random and mobile deployment patterns, compared with the latest published BACP.

APPENDIX
For the sake of clear definition, the variables used in this paper as well as their corresponding explanative descriptions are listed in Table 6.