Beruflich Dokumente
Kultur Dokumente
Arbitration
Jihoon Myung
Wonjun Lee
jmyung@korea.ac.kr
wlee@korea.ac.kr
ABSTRACT
Tag identification is an important tool in RFID systems with applications for monitoring and tracking. A RFID reader recognizes
tags through communication over a shared wireless channel.
When multiple tags simultaneously transmit their IDs to a reader,
the tag signals collide and this collision disturbs the readers identification process. Therefore, tag collision arbitration for passive
RFID tags is a significant issue for fast identification. This paper
presents two adaptive tag anti-collision protocols, an Adaptive
Query Splitting protocol (AQS), which is an improvement on the
query tree protocol and an Adaptive Binary Splitting protocol
(ABS), which is based on the binary tree protocol, which is a de
facto standard for RFID anti-collision protocols. To reduce collisions and identify tags efficiently, adaptive splitting protocols use
information obtained from the last process of tag identification.
Our performance evaluation shows that AQS and ABS outperform other tree based tag anti-collision protocols.
General Terms
Algorithm, Design, Performance
Keywords
Collision Resolution, RFID, Tag Anti-collision, Tag Identification
1. INTRODUCTION
Radio frequency identification (RFID) is an automatic identification system which consists of readers and tags. A tag has an identification number (ID) and a reader recognizes an object through
consecutive communications with the tag attached to it [14]. The
reader sends out a signal which supplies power and instructions to
a tag. The tag transmits ID to the reader, and the reader consults
Based on the analysis above, a good tag collision arbitration protocol for passive RFID tags should have the following characteristics. First, a reader ought to recognize all the tags inside its own
reading range. Tag starvation problem results in the failure of
object tracking and monitoring. Since the reader, however, cannot
assume the number of tags precisely, the guarantee of recognizing
all tags must be taken into consideration in the design of the tag
anti-collision protocol. Second, a reader has to recognize tags
promptly. Since an object with a tag is potentially mobile, tag
identification must keep pace with the objects velocity. If tag
identification is carried out slower than the objects velocity, the
Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies are
not made or distributed for profit or commercial advantage and that
copies bear this notice and the full citation on the first page. To copy
otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee.
MobiHoc06, May 2225, 2006, Florence, Italy.
Copyright 2006 ACM 1-59593-368-9/06/0005...$5.00.
202
reader cannot recognize it and the RFID system fails in monitoring or tracking. Finally, a tag should be recognized while consuming a small amount of resource. Since the tag supplements power
from the readers wave, tags available power is limited. Also, the
tag has low computational capability and limited memory. Thus,
the tag anti-collision protocol must load the tag with the least
possible communication and computation overheads.
We propose adaptive splitting protocols which are specializations
of tree based protocols for passive tag collision arbitration. An
Adaptive Query Splitting protocol (AQS) is an improvement on
the query tree protocol which has a deterministic methodology.
An Adaptive Binary Splitting protocol (ABS) is based on the binary tree protocol which adopts a probabilistic approach. For
decreasing collisions, the proposed protocols use information
obtained from the last identification process, in an environment
where a reader executes tag identification repeatedly for object
tracking and monitoring. The reduction in collisions facilitates tag
identification with a small delay and low communication overhead, while still recognizing all tags. Simulation results show that
AQS and ABS suppress the occurrence of collisions and shorten
total delay for recognizing all tags while preserving low communication overhead.
The reader recognizes all the tags within its reading range in a
frame, which consists of several reading cycles. The reader attempts to recognize a set of tags in a cycle. Each set includes tags,
which transmit at the same cycle. If a set has more than one tag,
tag transmissions lead to collision. When tag collision occurs, the
mechanisms split the tag set into two subsets by tag IDs or random numbers. After that, the reader tries to recognize two subsets
one by one in the same frame. By continuing this splitting procedure until each set has only one tag, tree based protocols are capable of recognizing all the tags in the readers range. The performance of tag identification is influenced significantly by how
efficiently it splits the tag set.
A frame of tree based protocols is represented by a tree structure
as shown Figure 1. According to the number of tag transmissions
in a cycle, reading cycles are divided into three types as follows.
203
for preventing tag collisions. They are still simple enough to apply to passive RFID tags and recognize all tags quickly.
Adaptive splitting protocols have the characteristic of fast tag
identification. AQS uses readers queries and tag IDs analogous to
QT, but it starts the tree search from the leaf nodes in the tree of
the last frame as shown in Figure 2. Since some arriving tags may
not match any nodes of readable cycles of the last frame, the tree
search starts at the nodes of idle cycles as well as the nodes of
readable cycles of the last frame. On the other hand, ABS uses
random numbers and starts the tree search from the nodes of readable cycles of the last frame. An arriving tag gets to belong to a
node of a randomly selected readable cycle of the last frame at the
beginning of a new frame. AQS and ABS restrain collisions between tags by skipping cycles in which tag collision occurred in
the last frame.
Staying tags sojourn in the readers range both during the last
frame and during the current frame. Since the reader already has
information on staying tags, tag collision arbitration can prevent
collisions between transmissions of staying tags. However, the
existing tag anti-collision protocols cause collisions between staying tags because they do not take staying tags into consideration.
At the beginning of the frame, BT resets tags counters to 0 and
QT initializes readers queue Q with 1-bit queries.
204
/* Query q is q1q2...qx
(qi = a binary value, x = the length of the query)
Tag ID is t1t2...tb
(ti = a binary value, b = the length of ID) */
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
1
2
3
4
5
6
7
8
9
10
11
12
13
Receive query q
while q != the command terminating a frame do
IsResponsible = TRUE
for i = 0 to i < the number of bits of q do
if qi != ti then
IsResponsible = FALSE
break
end if
if IsResponsible then
Transmit ID
end if
Receive query q
end while
q1q2qx into CQ in lines 19 and 21. Note that all leaf nodes correspond to either readable cycles or idle cycles. At the end of the
frame, CQ has queries of all the leaf nodes of the tree. By using
queries of leaf nodes of the last frame, the reader can recognize all
tags with few collisions and a small delay in the next frame.
When there are some arriving tags, the query expansion from leaf
nodes resolves collisions with few cycles.
Theorem 1: Maintaining CQ at the reader does not need additional memory.
(1)
where t(x) = 0 if the cycle of the xth query is a collision cycle, t(x)
= 1 otherwise. SCQ(x) increases when the cycle of the xth query is
not a collision cycle. However, when t(x) = 1,
S Q ( x) + S CQ ( x) = S Q ( x 1) l ( x ) + S CQ ( x 1) + l ( x)
= S Q ( x 1) + S CQ ( x 1)
/* Initialize Q and CQ */
Q = CQ
CQ = NULL
if Q = NULL then
push (Q, 0)
push (Q, 1)
end if
/* Identify tags and form CQ */
while Q ! = NULL do
q = pop(Q)
Transmit a query including q
Receive tag responses and detect collision
if collision occurs then
/* Push 1-bit longer bit strings into Q */
push (Q, q0)
push (Q, q1)
else if receive only a response then
Store the tag ID
push (CQ, q)
else /* receive no response */
push (CQ, q)
end if
end while
QueryDeletion(CQ) /* Remove unnecessary queries */
Transmit the command terminating a frame;
(2)
205
Figure 3. Tag identification of AQS. A number in a box indicates a bit string stored in CQ. (a) Tag identification in the first
frame when there are three tags, which have 0100, 0111 and 1010 as ID, respectively. (b) Tag identification by query insertion in
the second frame when tag 1101 is an arriving tag. (c) Tag identification by query deletion in the third frame when tag 0111 becomes a leaving tag.
AQS reduces collisions, but it needs some idle cycles. To guarantee the recognition of all tags, the reader uses not only queries of
readable cycles but also queries of idle cycles of the last frame.
Though the reader eliminates unnecessary idle cycles by leaving
tags, some idle cycles cannot be avoided in order to cover all
possible ranges of the tag ID. On the contrary, ABS starts tag
identification from only readable cycles of the last frame and uses
random numbers for splitting tag sets. A staying tag revises its
counter into the cycle number that its transmission does not collide with other staying tags. An arriving tag decides its counter
value with a random number selected among possible values inside the readers range. Tag transmissions are aligned in the increasing order of counter values. ABS achieves fast identification
by diminishing not only collisions but also unnecessary cycles.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
nized. In an idle cycle, the tag which has not been recognized in
the ongoing frame, i.e., the tag which has ASC greater than PSC,
decreases ASC by 1 in line 25. Since PSC is not changed in the
idle cycle, the decrement of ASC gets to pull the schedule of the
tag transmission. Figure 4 depicts tag operation in the collision
cycle and in the idle cycle under ABS, and Figure 5 shows tag
identification of ABS.
At the end of the frame, every tag gets a unique ASC. Preserving
ASC at the boundary of two consecutive frames enables the tree
search to start from the readable cycles of the last frame possible.
206
PSC = 0
if TSC = NULL then
TSC = 0
end if
Transmit the command starting a frame with TSC
While PSC <= TSC do
Receive tag responses and detect collision
if collision occurs then
TSC = TSC + 1
f = collision
else if receive only a response then
Store the tag ID
PSC = PSC + 1
f = readable
else /* receive no response */
TSC = TSC - 1
f = idle
end if
Transmit the feedback f
end while
greater than TSC, the reader supports the TSC value when a frame
starts. A tag having ASC greater than TSC changes its ASC to a
random number from 0 to TSC. ABS recognizes all tags quickly
through scaling ASCs of arriving tags into the range of TSC.
6. PERFORMANCE ANALYSIS
In this section, we analyze the total delay for recognizing all tags
with AQS and ABS. At first, the identification delay is defined by
the number of cycles.
Definition 1: Let Ar,i denote the set of tags which dwell inside
reader rs range in the ith frame of reader r. The identification
delay caused by recognizing Ar,i, dtotal(Ar,i), is
( )
d total Ar ,i =
T ( Ar ,i )
(d
reader ( x )
+ d tag ) T ( Ar ,i ) d cycle
(3)
x =1
Figure 5. Tag identification of ABS. (a) Tag identification in the first frame when there are three tags. (b) Tag identification in
the second frame when tag D is an arriving tag. (c) Tag identification in the third frame when tag B becomes a leaving tag.
207
Let ax denote tag x. Assume that tags have unique b-bit IDs and
Ar,i has n tags, i.e., Ar,i = {a1, a2, , an}. Let Barrive = {an+1, an+2,
, an+} be the set of arriving tags in the i+1th frame of reader r
and Bleave = {af(1), af(2), , af()} (1 f(x) n, 1 n) be the set
of leaving tags in the i+1th frame of reader r.
the ith frame. Since Ar,i Ar,i+1, the tree of the ith frame at QT is
the part of the tree of the i+1th frame at QT. From lemma 2,
As described in the previous section, AQS uses tag IDs for the
splitting procedure like QT. We analyze the worst case identification delay of AQS through the derivation of the identification
delay of QT.
because the minimum value of CQT(Ar,i) is n-1 when the ith frame
has no idle cycle. When there is no leaving tag, AQS reduces at
least n-1 cycles compared with QT.
TQT ( Ar ,i ) = 2C QT ( Ar ,i ) + 1
T AQS ( Ar ,i +1 Ar ,i ) = TQT ( Ar ,i +1 ) C QT ( Ar ,i )
( n + ){b + 2 log 2 ( n + )} 3 ( n 1)
(5)
C BT ( Ar ,i ) =
)(
+ n 1 1 2 k
n 1
(12)
(6)
C BT ( Ar ,i ) =
C QT ( n, k )
k =1
b 1
k = log 2 n
n
2
n
(b + 2 log 2 n) 2
2
(7)
2k 1 2 k
) n(1 2 )
k n 1
k =0
(13)
( n + ){b + 2 log 2 ( n + )} ( n + 2)
BT ( n, k )
{2
k =0
T AQS ( Ar ,i + B arrive Ar ,i )
C
k =0
k =1
log 2 n 1
2k +
=
2 (2
k =0
b 1
C QT ( Ar ,i )
(11)
= T AQS ( Ar ,i + B arrive Ar ,i )
Lemma 2: When the length of the tag ID is b bits and Ar,i has n
tags,
2 k
C QT ( n, k ) =
n / 2
(10)
(4)
(9)
T BT ( Ar ,i ) = 1 + 2
(8)
2 (2
k =0
)(
+ n 1 1 2 k
n 1
(14)
Proof: Suppose that there exist two readers and they attempt to
recognize Ar,i+1 under QT and AQS, respectively. Tag identification at QT starts at the l-level nodes in the tree. On the other hand,
Tag identification at AQS starts from the leaf nodes in the tree of
208
TBT ( Ar ,i ) = 1 + 2C BT ( Ar ,i )
(15)
Parameter
Simulation Area
Number of readers
Identification range of the reader
Number of tags
(1 2 )
k
/ n 1
Tag ID
k =0
+n
k +1
)(
2n 1 2 k + 3 1 2 k
/n
k =0
= ( n ) T BT 1 + n 1 + T BT n 1
Ai
rs
ra
Scenario I
100
50
0~1
Scenario II
100
50
0~1
0.5
Scenario III
100
50
0~1
Scenario IV
100
50
0.5
0~1
(17)
7. PERFORMANCE EVALUATION
We evaluate the performance of AQS and ABS compared to BT
and QT. To measure the efficiency of tag identification in the tree
based protocols, we consider the following aspects.
The number of collisions: We measure the number of
collisions between tag-to-reader signals. Collision defers
identification and increases power consumption of tags.
The number of idle cycles: The idle cycle is a factor of
identification delay.
Identification delay: We measure the total delay for recognizing all tags by the cycle. Fast identification is the most
significant factor in the tree based anti-collision protocols
because they do not cause tag starvation problem.
Tag communication overhead: This metric is the average
number of bits transmitted by a tag in a frame. This influences the amount of power consumption. Due to lack of
power source in tags, this must be low.
MPF ( a ) =
100 m 100 m
100
3m
1000
Randomly selected
96-bit ID
2 m/frame
(16)
Proof: When there exist n tags in the ith frame, ABS makes n
tag sets before the beginning of the i+1th frame. Each set has a
staying tag or a leaving tag. Among n sets, n sets include staying tags and sets include leaving tags. Without loss of generality,
assume that arriving tags select a set randomly. Arriving tags in
Barrive are assigned to n sets uniformly. Since BT and ABS have
the same splitting procedure,
T ABS ( Ar ,i + B arrive Bleave Ar + i )
Value
ma (t1 , t 2 )
(m/frame)
F p (t1 , t 2 )
where ma(t1, t2) is the distance that tag a moves in the time interval [t1, t2] and Fp(t1, t2) is the number of frames executed by protocol p in the interval [t1, t2]. By MPF, we can ensure that tree
based protocols recognize the same tags in any frame. In our
209
Figure 6(g), Figure 6(h) and Figure 6(i) show the results when
there is no staying tag. Though tag identification of AQS and
ABS lead to fewer collisions, idle cycles in AQS and ABS cause
delay. Since collisions between staying tags do not occur, the
increment of idle cycles is more than the decrement of collisions
at low ratios of arriving tags. This scenario shows the worst case
of adaptive splitting protocols, but it is unreal. The fourth scenario
210
Collisions
Idle cycles
Total
cycles
Scenario
I
BT
QT
AQS
ABS
45.06
43.76
0
0
14.02
13.72
56.51
29.81
91.12
89.53
88.55
61.85
Scenario
II
BT
QT
AQS
ABS
80.40
80.78
28.96
32.15
24.89
26.26
52.69
31.18
161.81
163.55
138.16
119.84
Scenario
III
BT
QT
AQS
ABS
35.14
34.86
14.75
13.15
10.99
11.71
60.68
37.49
71.28
71.72
100.58
75.79
Scenario
IV
BT
QT
AQS
ABS
76.84
76.35
26.79
30.65
23.67
24.17
52.94
32.04
154.69
154.71
133.91
116.88
(a) Collisions
We evaluate the performance by increasing the tag velocity. Figure 8 presents the simulation result obtained by varying the
maximum MPF. We normalize the measured values by dividing
by the number of tags. When tags move at low speeds, AQS and
ABS outperform BT and QT considerably. Tags would like to be
staying tags, and AQS and ABS eliminate collisions between
staying tags perfectly. There is no collision when the maximum
MPF is 0. As tags move faster, the performance of AQS and ABS
deteriorates. When the maximum MPF is more than 6 m/frame,
AQS has longer delay then QT. At high speed, there are few staying tags and collisions between staying tags at BT and QT hardly
occur. Additionally, adaptive splitting protocols generate more
idle cycles than BT and QT because leaving tags increase and a
cycle of a leaving tag is inclined to be idle. Hence, AQS and ABS
show the performance similar to BT and QT at high speed.
211
(a) Collisions
(a) Collisions
number of tags. As the identical bit increases, QT rapidly degenerates as expected. QT has the highest communication overhead
because the reader transmits all queries causing collisions in every
frame. On the other hand, the performance of AQS is not seriously affected by the similarity of IDs though it uses tag ID. Since
candidate queue CQ excludes queries of collision cycles of the
last frame, AQS uses a collision query only once. However, as the
identical bit increases, the tree has more leaf nodes and, consequently, identification delay of AQS is longer. ABS and BT are
not affected by the identical bit because they do not use the patterns of IDs. As in the previous scenario, ABS shows the shortest
identical delay.
8. CONCLUSION
Tag collision is a major factor in deferring tag identification of
RFID systems. In this paper, adaptive tag anti-collision protocols
for passive tags have been proposed and evaluated. We develop
novel and enhanced tree based protocols to reduce the number of
collisions by exploiting information obtained from the last process of tag identification. The key institution behind our proposed
approach is that in most applications employing RFID tags, the
set of objects encountered in successive readings from a particular
reader does not change substantially, and information from one
reading can be used for the next. A simulation based evaluation
212
shows that AQS and ABS significantly reduce delay and communication overhead for the tag reading process.
9. ACKNOWLEDGMENTS
This work was jointly supported by a grant from SK Telecom,
Korea [Project No. KU-R040572] and by a grant by KOSEF
[Grant No. R01-2005-000-10267-0]. Corresponding Author:
Wonjun Lee (E-mail: wlee@korea.ac.kr).
10. REFERENCES
[1] C. Floerkemeier and M. Lampe, Issues with RFID usage in
ubiquitous computing applications, Proc. 2nd Int'l Conf.
Pervasive Computing, LNCS 3001, pp. 188-193, 2004.
[14] K. Finkenzeller, RFID handbook: fundamentals and applications in contactless smart cards and identification, John
Wiley & Sons, 2003.
[2] C. Law, K. Lee and K.-Y. Siu, Efficient memoryless protocol for tag identification, Proc. 4th Int'l Workshop Discrete
Algorithms and Methods for Mobile Computing and Communications, pp. 75-84, Boston, Massachusetts, USA, Aug.
2000.
[3] D. W. Engels and S. E. Sarma, The reader collision problem, Proc. IEEE Int'l Conf. System, Man and Cybernetics,
Hammamet, Tunisie, Oct. 2002.
[17] R. Metcalfe, Steady state analysis of a slotted and controlled Aloha system with blocking, Proc. 6th Hawaii Conf.
System Science, Honolulu, HI, 1973.
213