Dynamic Frame Update Policy for UHF RFID Sensor Tag Collisions

The current growing demand for low-cost edge devices to bridge the physical–digital divide has triggered the growing scope of Radio Frequency Identification (RFID) technology research. Besides object identification, researchers have also examined the possibility of using RFID tags for low-power wireless sensing, localisation and activity inference. This paper focuses on passive UHF RFID sensing. An RFID system consists of a reader and various numbers of tags, which can incorporate different kinds of sensors. These sensor tags require fast anti-collision protocols to minimise the number of collisions with the other tags sharing the reader’s interrogation zone. Therefore, RFID application developers must be mindful of anti-collision protocols. Dynamic Frame Slotted Aloha (DFSA) anti-collision protocols have been used extensively in the literature because EPCglobal Class 1 Generation 2 (EPC C1G2), which is the current communication protocol standard in RFID, employs this strategy. Protocols under this category are distinguished by their policy for updating the transmission frame size. This paper analyses the frame size update policy of DFSA strategies to survey and classify the main state-of-the-art of DFSA protocols according to their policy. Consequently, this paper proposes a novel policy to lower the time to read one sensor data packet compared to existing strategies. Next, the novel anti-collision protocol Fuzzy Frame Slotted Aloha (FFSA) is presented, which applies this novel DFSA policy. The results of our simulation confirm that FFSA significantly decreases the sensor tag read time for a wide range of tag populations when compared to earlier DFSA protocols thanks to the proposed frame size update policy.


Introduction
Traditionally, Radio Frequency Identification (RFID) technology applications focused on item identification, location, and authentication. In the past years, the growing interest in wireless sensors has also reached RFID, and it has been transformed to a technology for both identification and sensing applications. As a result, RFID has become a crucial element of the Internet of Things (IoT) platform. Industry alliances, such as the NFC forum (for HF RFID) and the RAIN RFID alliance (for UHF RFID), have been formed to motivate and promote these efforts. The use of RFID technology to sense our physical world has expanded tremendously in the last decade. This has enabled the sensing ability of RFID technology to gather information from real-world objects and seamlessly integrate this data within the IoT.
RFID applications using wireless sensors require a fast communication protocol to read the sensor's data, especially with increasing tag populations. The main purpose of the protocol is for the 1. An analysis and classification of the state-of-the-art DFSA tag anti-collision protocols according to their frame update policy.

2.
A novel fast frame update policy for DFSA protocols. This policy first applies fuzzy logic to select the value of the slot where the frame size is updated. It then calculates the frame size as a function of the estimated number of tags inside the reader interrogation zone and the duration of the different time slots of the RFID platform.

3.
We introduce the anti-collision Fuzzy Frame Slotted Aloha (FFSA) protocol, which applies the previous policy to lower the average time to read a sensor data packet from one tag compared with existing recent strategies.
The rest of this paper is organised as follows. Section 2 analyses the frame update policy of DFSA protocols. Next, Section 3 presents the related work and classifies the main state-of-of-art DFSA protocols according to their frame update policy. A novel frame update policy and the FFSA protocol are presented in Section 4. Section 5 provides the results of the performance evaluation followed by some of the limitations that we have identified. Finally, Section 6 concludes this paper and presents some recommendations for future work.

Analysis of Frame Update Policy of Dfsa Protocols
In order to improve different metrics regarding the process of tag identification, several DFSA anti-collisions protocols have been studied in the literature. Each strategy employs a different approach to update the frame size, with the focus of improving different performance metrics. Establishing a clear classification of all DFSA protocols is not straightforward. The key feature that differentiates DFSA protocols is the strategy that they follow to update the frame size. This section establishes a novel approach to classify the main frame update policies employed by DFSA anti-collision protocols. This classification considers three different perspectives to update L, which respond to the following three questions: how is L calculated? When is L examined? And, when must a new frame be started? The classification of the main up-to-date policies is summarised in Table 1. The literals in this table will be defined in the next section.

Frame Size Calculation
The reader adjusts L in each reading cycle according to the responses from the competing tags in each frame. Two main strategies can be found in the literature to set a value for the frame size in DFSA protocols: the first calculates L as a function of the parameter Q, and the second sets L as a function of the estimated number of tagsn. The parameter Q is an integer value used in the EPC C1G2 to set L as L = 2 Q .

1.
Parameter Q, f(Q): the frame size can be adjusted by controlling the number and types of the slots in each frame with the parameter Q, so that Q increases when collisions are detected and decreases with increasing number of idle slots. Several approaches in the literature update L by adjusting Q [1,7,14-17].

2.
Tag set size estimation: several works in the literature have addressed the tag estimation task to provide an optimal frame size according to the estimated number of tags. It is known that a DFSA protocol reaches its maximum slot efficiency, which is defined as the ratio between the number of tags and the total number of slots required to identify them, when the frame size is equal to the number of tags. Therefore, to maximise this metric, the reader should set the frame size equal to the estimated number of tags. However, this condition of setting L =n is only satisfied if the reader assumes that the three types of slots have equal duration. However, the standard EPC C1G2 determines that each time slot has a different duration. Consequently, some approaches set the frame size according ton but assume unequal processing duration for each type of slot (single, collision, idle) [12,18].
Once the tag set size has been estimated, the next step is to calculate L according ton. Two main strategies to set L as a function ofn can be found in the literature, which is presented next.

•
Continuous function ofn, f(n): the first strategy is to set L as a continuous function ofn. The reader analyses the information extracted from the tags' responses and then sets L as a function of these values. Several anti-collision protocols follow this strategy [9][10][11][12][19][20][21][22][23][24]. • Look-up table (LUT) according ton, LUT(n): the second strategy is to set L according to an LUT based onn. The idea is to define different ranges ofn and assign a different value of L for eachn range. Several approaches in the literature follow this strategy, including [8,13,[25][26][27][28].

Frame Size Examination
This section answers the question related to when (and in which slot) L must be examined, considering that an examination refers to a new calculation of L. DFSA algorithms update L dynamically. Therefore, a strategy is defined to establish in which slot or slots within a frame the value of L must be examined. Three main strategies can be found in the literature, as follows:

2.
Pointer by Pointer (PbP): some protocols have defined some particular slots within the frame, referred as the pointer p in the present paper (p < L), where L is examined to check its appropriateness [7,8,12,13,28]. These pointers are usually set as a fraction of the current frame size.

Frame Break Condition
This section presents the different policies followed by the reader to decide, after calculating L, whether a new frame must be started, or if the reader must proceed with the next slot. Six main strategies can be found in the literature.

2.
L fits n from an LUT, LUT(n): some algorithms define an LUT based onn and L [8,13] to check the appropriateness of L. First, the reader searches in the LUT for the corresponding value of L for the previously obtainedn. Then, if this new value differs from the current one, a new frame is started. Otherwise, the reader proceeds to the next slot of the current frame.

3.
Higher expected number of successful slots, c s (n, L): the authors in [10] define a policy to break the current frame and start a new one if the expected number of successful slots in the rest of the current frame c s1 (n, L) is less than that expected in the new frame c s2 (n, L). In other words, a new frame is started if c s2 (n, L) > c s1 (n, L).

4.
Lower Identification Time, (lower t IT ): the authors in [16] present a frame cancellation strategy to minimise the total expected time to identify a tag set.

5.
Lower sensor read time, (lower t R ): this work presents a strategy where a new frame is started if the expected average time for reading one sensor packet t R (n, L) in the new frame is lower than the one in the current frame. 6.
End of Frame, (EoF): a new frame is started when the current frame has finished. This strategy is intrinsic to a DFSA-based anti-collision protocol and it is applied in all the protocols analysed in the present paper.

Related Work: Classification of Dfsa Protocols
In this section, we will present and classify some of the most relevant related work in DFSA protocols, including Slot Counter [1], FuzzyQ [7], Chen14 [8], Eom [9], ILCM-FbF [11], ILCM-SbS [10], Chen16 [12], and SUBEB-Q [13]. The performance evaluation of these protocols will be analysed and evaluated with detail in the next section, and will also be compared with the proposed solution FFSA.
The analysis performed in this work is based on the standard RFID wireless communication model, and it is shown in Figure 1. This figure shows the different reader and tags messages along with their corresponding duration meeting the EPC C1G2 requirements. A sequence of L slots is referred to as a frame, where L represents its size. The reader distinguishes between three different type of slots: idle (no tag respond), collision (two or more tags transmit a message simultaneously), and single read (the reader correctly receives the tag EPC during T s and one sensor data packet with during T p ). The duration of each slot is referred to as T i , T k , and T sp , respectively. T 1 , T 2 , and T 3 separate the reader commands and tags responses. Next, Table 2 presents a novel classification of the previous protocols, including the proposed FFSA. The classification is made according to the frame update policy followed by each protocol to identify a group of tags of size n. Table 2. Classification of main DFSA anti-collision protocols according to their frame update policy.

L Calculation L Exam Frame Break Condition
Lower t R(n,L) at p or EoF

The Proposed Frame Update Policy
This section introduces the novel fuzzy frame update policy. The arbitration of RFID communication is a stochastic process of unknown behaviour. Therefore, fuzzy logic is an efficient tool to model the process of identifying RFID tags. Fuzzy control for RFID anti-collision protocols was first introduced in [7], where a fuzzy system was used to give an intuitive value of the frame size. This work presents a Fuzzy Rule Based System (FRBS), which obtains the value of the pointer slot p to only accurately examine the frame size when appropriate. This solution is combined with a time-minimising function to update the value of L at slot p. The resulting proposed policy lowers the average time required to read one sensor packet from one tag compared to existing strategies. The three parts of the proposed policy (frame size calculation, frame size examination, and frame break condition) are presented next.

Frame Size Calculation to Minimise T R (N, L)
The first part of the policy sets the value of L to minimise the expected time to receive one sensor data packet from one tag in a frame. For this purpose, the sensor data read time t R (n, L) is defined as the expected time to identify one tag among n in a frame of size L and read one sensor data packet: where c s (n, L), c k (n, L), and c i (n, L) are defined as the expected value of the number of single, collision, and idle slots in a frame, respectively. The duration of the slots, T s , T p , T k , and T i , are set according to the standard and where T command is the duration of the reader command Qc, QA, or QR, referred as T Qc , T QA , and T QR , respectively. The parameters T EPC and T RN16 correspond to the duration of the EPC and RN16 tag messages, respectively. These two parameters are calculated as a function of the Tag-to-Reader synchronisation time T Preamble TR , the length of each parameter, and the tag data rate DR t , calculated as The parameter BLF refers to the Backscatter-link frequency. Thus, and The length of the sensor data packet T data is calculated by taking a commercial UHF RFID accelerometer sensor tag as a reference [6]. According to the sensor data sheet, each accelerometer data packet contains 10 bytes of data.
The reader transmits one QA or Qc command in the first slot of each frame. Then, it transmits consecutive QR commands in the following slots of the frame until it reaches the last slot of the frame. Assuming a frame with sufficiently large L, T command = T QR is applied in Equations (2), (4), and (5) when one frame is analysed.
The duration of the reader commands Qc, QA, QR, Req RN , and ACK are calculated as and The duration of the Read command T Read is calculated using a commercial UHF RFID accelerometer sensor tag as a reference [6]. Thus, The parameters T FSync RT or T Preamble RT correspond to the Reader-to-Tag synchronisation time as defined in [1], and the reader data rate DR r is obtained as where T symbol 0 = Tari, and T symbol 1 = 1.5·Tari. Tari represents the reference time interval for a symbol-0 (FM0 symbol) transmission. Next, the value of L minimising t R (n, L) is obtained by evaluating an RFID system with n tags and one reader. In this system, we can apply a a binomial distribution P r (n, L) [9] to approximate the probability that r tags among n select one slot along a frame of size L Additionally, p s (n, L), p k (n, L), and p i (n, L) correspond to the probabilities that only one tag, more than one tag or no tag, respectively, occupy a slot [7]. In order to obtain the expected number of idle, single, and collision slots in a frame with a size L sufficiently large, we can apply a Poisson distribution with mean ρ = n/L [9]. c i (n, L) is approximated with r = 0 in Equation (18) by c s (n, L) is approximated with r = 1 in Equation (18) by Then, c k (n, L) is approximated by By substituting Equations (19), (20), and (21) into (1), and applying n/ρ n/ρ−1 ≈1, the following expression is obtained Computing the derivative of t R (ρ) in Equation (1) with respect to ρ yields Then, by posing dt R (ρ) dρ = 0, we obtain the following equation By solving Equation (24), the value of ρ that minimises t R (ρ) is obtained: where W(x) is the Lambert W-function. Finally, the optimal frame size which minimises t R (n, L) is where ρ is obtained from Equation (25). The value of ρ in Equation (25) is evaluated and presented in Figure 2 as a function of T i /T k . It can be appreciated that ρ decreases when the difference between T i and T k grows, which results in an increasing L. In conclusion, a higher difference in the values of T i and T k (with T i ≤ T k ) will result in a higher L. This result is coherent regarding the process of RFID tags identification and sensor data reading. If the duration of collision slots is much higher than that of idle slots, then it is necessary to increase L to reduce the number of collision slots. This occurs at the expense of an increase in the number of idle slots. However, because idle slots are much shorter than collision slots, this is an acceptable effect.
The previous analysis and Equation (26) demonstrate that the frame size calculation of the proposed policy is timing-aware. This means that the calculation is made as a function of the number of tags n and the timing parameters (ultimately the duration of the reader commands and tags responses) of the RFID scheme.

Frame Size Examination: Pbp
The second part of a frame update policy refers to the slot where L is examined. The FbF strategy is not efficient in the case of large frames filled with many collisions because the reader must wait until the frame has finished to update the frame size, which increases the identification time [11]. The SbS strategy involves the calculation of L at every single slot of the frame. As a consequence, one drawback of this solution is that it could overload a system with limited resources. Finally, the PbP strategy provides the flexibility of breaking the current frame before it ends, which maintains a low computational complexity in the reader. Therefore, the proposed policy applies a PbP strategy where the value of the pointer slot is dynamically updated using fuzzy logic.
The proposed policy applies a fuzzy rule-based system (FRBS) to adjust the value of the pointer efficiently. Consequently, the current L and the tag collision rate col_rate are modelled as fuzzy sets to adaptively update the value of the pointer. A zeroth-order Takagi-Sugeno-Kang fuzzy system with a complete AND-composed rule [29] is proposed. The membership functions that we have used to codify the input variables are trapezoidal (see Figure 3) and the t-norm minimum is used to implement the AND operator. Among the traditional shapes of membership functions (triangular, trapezoidal, Gaussian, generalized bell, and sigmoid), trapezoidal membership functions have been selected due to their representation simplicity, which allows faster calculations. The proposed system has two inputs, as follows: • Q: codifies the current value of this parameter which determines L, where Q ∈ N and 0 ≤ Q ≤ 20. • col_rate: codifies the tag collision rate up to the current slot. This is defined by col_rate = c k /slot_index, and 0 ≤ col_rate ≤ 1.
Additionally, the variable slot_index represents the reader's internal counter, which keeps track of the present slot in the current frame.  The output p represents the slot where L must be examined. Specific values for membership functions and consequents in the rule base have been adjusted experimentally. The rules were designed also experimentally, considering the typical behaviour of an RFID system: on the one hand, more collisions (higher col_rate) require us to promptly examine L (smaller output p); while on the other hand, a smaller frame size (smaller Q) requires the examination of L in a later time slot (higher output p). The experimental values for the membership functions and the rules have been obtained by evaluating different ranges and selecting the one with the best performance in t R . Figure 4 shows the surface representation of the proposed FRBS that determines the output p, normalised to L = 16. To illustrate an example, for the inputs Q = 10 and col_rate = 0.3, the output is p = L/9. Then, the new value of the pointer slot is p = round(2 Q /9) = round(2 10 /9) = 114.

Frame Break Condition: Lower T R (N, L)
Finally, the last part of the policy determines the condition to break the current frame and start a new one. The expected average time to read one sensor data packet [6] among n sensor tags in the current frame of size L c is obtained as t R c = t R (n, L)| n=n,L=L c , (27) and the expected average time to read one sensor data packet among n sensor tags in the newly calculated frame of size L n is t R n = t R (n, L)| n=n,L=L n .
To lower the tag sensor data read time, a new frame will be started if the condition t R n < t R c is satisfied. Thus, at slot p, the reader obtains t R n and t R c with Equations (27) and (28), assuming T command = T QR , and then compares these values. Following this strategy, the reader guarantees that if a new frame is started at slot p, then the expected average time required to read one sensor data packet will be reduced.

The Proposed Fuzzy Frame Slotted Aloha Protocol
The novel FFSA protocol is introduced in this work, which applies the previously presented DFSA policy: determines the frame size minimizing t R (n, L) (Section 4.1), examines the frame size following a PbP strategy (Section 4.2), and starts a new frame with the condition to lower t R (n, L) (Section 4.3). FFSA is compliant with the EPC C1G2 standard, meaning that it meets the specific communication timing requirements and uses power-of-two values for L. As a consequence, this policy can be used to identify commercial sensor tags.
In order to calculate the frame size in Equation (26), FFSA applies the traditional Mean Minimum Square Error (MMSE) estimator [26] to calculaten aŝ MMSE has been applied in FFSA due to its computational simplicity while providing a relatively low estimation time.
The pseudocode of FFSA is presented in Algorithm 1. Initially, the reader sets the value of ρ with Equation (25) according to the RFID system timing parameters, and starts the identification procedure by broadcasting Qc. Each tag selects a slot in the frame to transmit its RN16, and the reader updates the variables c s , c k , and c i accordingly. When the reader reaches the last slot of the frame, the remaining tag population size is estimated with Equation (29). Then a new frame is started by broadcasting QA, specifying the new frame size as Q n = log 2 ((n − c s )/ρ), L n = 2 round(Q n ) . At every slot, col_rate is calculated and p is set as the current slot if col_rate = 1. If the current slot is a pointer, the reader calculatesn with Equation (29) and sets L n with. Then, it obtains t R c and t R n with Equations (27) and (28). If the condition t R n < t R c is satisfied, a new frame is started and p is updated with the FRBS. Otherwise, the reader broadcasts QR to proceed to the next slot. The sensor tags reading process ends when there are no collision slots in the current frame and the frame is terminated. col − rate = c k /slot_index 14: if col − rate=1 then 15: p = slot_index 16: end if 17: if slot_index = p then 18:n =MMSE(c s , c k , c i ) 19:

20:
if t SR n < t SR c then 21: p = FRBS(col − rate,Q n ), L c =L n

Performance Evaluation
This section evaluates the performance of FFSA in terms of the average time to read one sensor data packet from one tag t R . This metric is calculated as the total sensor read time divided by the total number of tags n in one inventory round: In one inventory round, the variables c s T , c k T , and c i T are the total number of single, collision, and idle slot, respectively. The value of T command in Equations (2), (4), and (5) will vary depending on the slot position within a frame:

•
First slot of the inventory round: T command = T Qc . • First slot of the frame: T command = T QA . • None of the above: T command = T QR . Table 3 summarizes the most relevant variables covered in this work. For each scenario, t R is evaluated as a function of the control variable indicated with *, n in S1 and BLF in S2. BLF is varied from 40 kbps (the minimum value allowed by the standard) to 640 kbps (maximum). S2 represents a special case because BLF also influences Tari, which represents the reference time interval for a data-0 transmission, and affects RTcal, TRcal, T 1 , and T 2 . These parameters are also modified every time that BLF changes during the simulation. In both scenarios, the initial L is set to 16. In FFSA, the initial value for p is set to eight and this value has been obtained experimentally. Table 4 shows the parameter values that we have employed. Expected value of the number of idle, single, and collision slots in one frame t R Time to read one sensor data packet from one tag t R (n, L) Expected time to read one sensor data packet from one tag among n in a frame of size L Next, the protocols presented in Section 3 are evaluated and compared with FFSA for different performance metrics. A scenario with one reader and a varying number of tags has been evaluated with Matlab R2019, where the tags are uniformly distributed. The simulation responses have been averaged over 1000 iterations to ensure accuracy in the results. The performance evaluation followed in this work focuses on the media access control layer, ignoring the physical layer effects (assuming no capture effect and a non-impaired channel). This approach is widely accepted and incorporated by several studies in the related literature [8,[10][11][12]. Our evaluation is performed for one inventory round, which is defined as the period of time that begins when the reader transmits the initial command Qc and which ends when the reader interrupts the reading process and the tags lose their state.

Impact of the Number of Tags in S1
This section compares the selected protocols in terms of t R of Equation (30) by varying the number of tags n from 64 to 8192 (see Table 4). Additionally, c k T and c i T per tag are measured because t R is mostly influenced by them. The results of t R evaluation are shown in Figure 5. The average percentage improvement of FFSA compared to the rest of the protocols in terms of t R ranges from 3% to 9% in S1. This improvement will be more notable (above 9%) for shorter sensor data length (lower T d ata). Most protocols show a quasi-constant t R for n up to 2048 in Figure 5. FFSA requires the lowest average time read one sensor data packet from one tag. The strategy Chen14 shows an increasing t R for n > 2048 because it limits the frame size to 1024 when n is greater than 710. FuzzyQ also presents a peak at n = 2048, because the value of the Q parameter is upper-bounded. The improvement in FFSA comes from the reduction in c k T at the expense of an increase in c i T , as can be appreciated in Figure 6a,b, respectively. Because the duration of an idle slot (Equation (5)) is shorter than that of a collision slot (Equation (4)), the reduction in c k T leads to a lower t R for FFSA. The strategies ILCM-FbF and Chen14 present the highest c k T , leading to the highest t R .

Impact of the Tag Backscatter Link Frequency in S2
This section compares the selected protocols in terms of t R (Equation (30)), while varying the tag Backscatter Link Frequency BLF. Therefore, the previous protocols are evaluated by varying BLF from 40 to 640 kbps; minimum and maximum values specified in the current standard. Tari is set to its minimum value 6.25 µs. The simulation results are averaged for n from 64 to 8192, and are shown iupn Table 5. The value of ρ employed by FFSA is also presented, which has been obtained with Equation (25). All of the protocols present a decreasing t R with increasing BLF. For the highest values of BLF, all of the protocols present a similar behaviour and FFSA does not introduce a significant performance improvement. This occurs because the value of ρ (see Table 5) takes a significantly higher value, which causes a larger number of collision slots. As BLF decreases, FFSA shows a significant reduction in t R in relation to the prior protocols.
To analyse the previous results, c k T and c i T per tag are measured as functions of BLF and averaged for all the tag set sizes n in S2, and the simulation results are shown in Figure 7. When BLF gets close to its upper limit, the increase in c i T of FFSA is not compensated by the small reduction in c k T in relation to the prior protocols, which limits the performance improvement of the proposed protocol. On the other hand, while the prior protocols present a quasi-constant c k T with decreasing BLF, FFSA presents a notably decreasing c k T , which is reflected in a reduction in t R in relation to the prior protocols. Although for BLF > 80 kbps Chen16 behaves similarly to FFSA, the improvement introduced by FFSA becomes notably clear when BLF gets close to its upper or lower limit. This occurs because as BLF gets closer to its lower bound, Chen16 results in a low value of y (y is used by Chen16 in its algorithm to obtain L), which leads to an increasing c k T and decreasing c i T .

Discussion
The previous section evaluated the performance of FFSA in terms of t R (Equation (30)). To demonstrate the benefits of the proposed protocol, its performance was compared with several related works presented in Section 3. In terms of the sensor data read time, the main parameter evaluated in this work, FFSA, presents the lowest t R for most of the values of n and BLF evaluated. The parameter BLF was selected as a control variable because it is related to the tag data rate. The two scenarios evaluated in this work consider that tags use Miller modulation with M = 4. The relationship between the tag BLF and the tag data rate is DR t = BLF/M. Thus, a higher BLF results in a faster tag, and vice versa. Consequently, the time to identify one tag t R is lower for higher BLF values. This effect is appreciated in Table 5. FFSA analyses this characteristic and takes into consideration the value of BLF to adjust L according to Equation (25). Therefore, FFSA lowers the sensor read time of the comparative protocols for a wide range of tag data rate configurations. In conclusion, the savings in the tag sensor data read time of FFSA is substantial for most of the range of BLF and n, which confirms that the proposed protocol is a time saving procedure in S1 and S2.

Identified Limitations
The protocols performance evaluation analysed in this work assumed an ideal communication channel, because it focused on the media access control layer. However, in a real scenario for passive RFID systems, the capture effect is typically present [30]. The capture effect occurs when the reader successfully resolves one tag reply in a collided slot. This effect could benefit the performance of FFSA because fewer collided slots and more single slots would occur, decreasing t R . However, there is a negative impact of this effect over FFSA performance. The capture effect may hide some tags, which provides erroneous information to the tag estimator and increases the estimation error. Thus, the updated L value may not be appropriate, which negatively affects t R . A study of the capture effect on t R and an evaluation of FFSA taking this effect into account is recommended for future work.

Conclusions
A comprehensive survey and classification of the frame update policies for RFID DFSA anti-collision protocols has been presented. In general, this policy can be divided into three parts: L update, L calculation, and frame break condition. Then, several state-of-the-art DFSA anti-collision protocols have been analysed and classified according to this policy. Finally, a novel frame update policy has been proposed. This results in the Fuzzy Frame Slotted Aloha (FFSA) protocol, which is a fast DFSA anti-collision protocol and is compliant with the current UHF RFID standard. With a significant improvement in the sensor data read time in relation to the current anti-collision protocols, FFSA is a suitable candidate where low sensor data read time is sought in UHF RFID systems that require a varying number of sensor tags.

Conflicts of Interest:
The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.