12
Adaptive Splitting Protocols for RFID Tag Collision Arbitration Jihoon Myung Department of Computer Science and Engineering Korea University, Seoul, Korea [email protected] Wonjun Lee Department of Computer Science and Engineering Korea University, Seoul, Korea [email protected] ABSTRACT Tag identification is an important tool in RFID systems with ap- plications 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 reader’s iden- tification 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 colli- sions 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 outper- form other tree based tag anti-collision protocols. Categories and Subject Descriptors C.2.1 [Computer-Communication Networks]: Network Archi- tecture and Design - Wireless Communication General Terms Algorithm, Design, Performance Keywords Collision Resolution, RFID, Tag Anti-collision, Tag Identification 1. INTRODUCTION Radio frequency identification (RFID) is an automatic identifica- tion system which consists of readers and tags. A tag has an iden- tification 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 an external database with ID to recognize the object. RFID is fast replacing bar-code based identification mechanisms because (i) communication between a reader and a tag is not limited by the requirement of ‘line-of-sight’ reading and (ii) each tag is allowed to have a unique ID. Simultaneous transmissions in RFID lead to collision because readers and tags communicate over a shared wireless channel. Collisions make both communication overhead and transmission delay often lose their usefulness. As a result, either the reader may not recognize all objects or retransmissions are required for successful recognition. Reader collisions occur when neighboring readers interrogate a tag simultaneously [3]. Tag collisions occur when multiple tags transmit ID to a reader at the same time and prevent the reader from recognizing any tag [1]. Especially, since low functional passive tags can neither detect collisions nor figure out neighboring tags, tag collision gives rise to the need for a tag anti-collision protocol that enables the recognition of tags with few collisions, and also executes in real-time. Tag anti-collision protocols for passive tags can be grouped into two broad categories, namely aloha based protocols and tree based protocols. Aloha based protocols such as aloha [15], slotted aloha [8], [17], [18], [20], [23] and frame slotted aloha [4], [5], [7], [9], [10], [13], [22] reduce the occurrence probability of tag colli- sions since tags transmit at distinct times. Aloha based protocols, however, cannot completely prevent collisions. In addition, they have the serious problem that a specific tag may not be identified for a long time, leading to the so called ‘tag starvation problem’. On the other hand, tree based protocols such as the binary tree protocol [9], [19], [22] and the query tree protocol [2], [6] do not cause tag starvation, although they have relatively long identifica- tion delay [21]. Based on the collision resolution algorithm stud- ied in [11], [12] they split a set of tags into two subsets and at- tempt to recognize the subsets one by one. By splitting until each set has only one tag, the reader can recognize all tags. Based on the analysis above, a good tag collision arbitration pro- tocol for passive RFID tags should have the following characteris- tics. 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 object’s velocity. If tag identification is carried out slower than the object’s 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, re- quires prior specific permission and/or a fee. MobiHoc’06, May 22–25, 2006, Florence, Italy. Copyright 2006 ACM 1-59593-368-9/06/0005...$5.00. 202

Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

Adaptive Splitting Protocols for RFID Tag Collision Arbitration

Jihoon Myung

Department of Computer Science and Engineering Korea University, Seoul, Korea

[email protected]

Wonjun Lee

Department of Computer Science and Engineering Korea University, Seoul, Korea

[email protected]

ABSTRACT Tag identification is an important tool in RFID systems with ap-plications 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 reader’s iden-tification 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 colli-sions 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 outper-form other tree based tag anti-collision protocols.

Categories and Subject Descriptors C.2.1 [Computer-Communication Networks]: Network Archi-tecture and Design - Wireless Communication

General Terms Algorithm, Design, Performance

Keywords Collision Resolution, RFID, Tag Anti-collision, Tag Identification

1. INTRODUCTION Radio frequency identification (RFID) is an automatic identifica-tion system which consists of readers and tags. A tag has an iden-tification 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

an external database with ID to recognize the object. RFID is fast replacing bar-code based identification mechanisms because (i) communication between a reader and a tag is not limited by the requirement of ‘line-of-sight’ reading and (ii) each tag is allowed to have a unique ID.

Simultaneous transmissions in RFID lead to collision because readers and tags communicate over a shared wireless channel. Collisions make both communication overhead and transmission delay often lose their usefulness. As a result, either the reader may not recognize all objects or retransmissions are required for successful recognition. Reader collisions occur when neighboring readers interrogate a tag simultaneously [3]. Tag collisions occur when multiple tags transmit ID to a reader at the same time and prevent the reader from recognizing any tag [1]. Especially, since low functional passive tags can neither detect collisions nor figure out neighboring tags, tag collision gives rise to the need for a tag anti-collision protocol that enables the recognition of tags with few collisions, and also executes in real-time.

Tag anti-collision protocols for passive tags can be grouped into two broad categories, namely aloha based protocols and tree based protocols. Aloha based protocols such as aloha [15], slotted aloha [8], [17], [18], [20], [23] and frame slotted aloha [4], [5], [7], [9], [10], [13], [22] reduce the occurrence probability of tag colli-sions since tags transmit at distinct times. Aloha based protocols, however, cannot completely prevent collisions. In addition, they have the serious problem that a specific tag may not be identified for a long time, leading to the so called ‘tag starvation problem’. On the other hand, tree based protocols such as the binary tree protocol [9], [19], [22] and the query tree protocol [2], [6] do not cause tag starvation, although they have relatively long identifica-tion delay [21]. Based on the collision resolution algorithm stud-ied in [11], [12] they split a set of tags into two subsets and at-tempt to recognize the subsets one by one. By splitting until each set has only one tag, the reader can recognize all tags.

Based on the analysis above, a good tag collision arbitration pro-tocol for passive RFID tags should have the following characteris-tics. 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 object’s velocity. If tag identification is carried out slower than the object’s 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, re-quires prior specific permission and/or a fee. MobiHoc’06, May 22–25, 2006, Florence, Italy. Copyright 2006 ACM 1-59593-368-9/06/0005...$5.00.

202

Page 2: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

reader cannot recognize it and the RFID system fails in monitor-ing or tracking. Finally, a tag should be recognized while consum-ing a small amount of resource. Since the tag supplements power from the reader’s wave, tag’s 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 bi-nary 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 over-head, 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 commu-nication overhead.

The rest of this paper is organized as follows. Section 2 describes existing tree based tag anti-collision protocols. We discuss prob-lems of existing tree based protocols and explain our approach for resolution of problems in tree based protocols in Section 3. Sec-tions 4 and 5 describe AQS and ABS, respectively. In Sections 6 and 7, the performance analysis, including the derivations of sev-eral major equations referred to in the analysis, is presented. Fi-nally, the conclusions of our analysis are presented in Section 8.

2. TREE BASED TAG ANTI-COLLISION PROTOCOLS Tree based tag anti-collision protocols perform tag identification in units of ‘reading cycle’. In a reading cycle, a reader transmits a query (or a feedback) to tags and then tags transmit ID to the reader. Since a passive tag cannot detect collision, the reader de-tects whether tag collision occurs or not after its transmission and determines the query of the next cycle according to the result of the detection. Upon receiving a query from the reader, the tag decides whether to transmit or not. Only if a single tag transmits in a cycle, can the reader recognize it successfully.

The reader recognizes all the tags within its reading range in a frame, which consists of several reading cycles. The reader at-tempts 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 ran-dom numbers. After that, the reader tries to recognize two subsets one by one in the same frame. By continuing this splitting proce-dure until each set has only one tag, tree based protocols are ca-pable of recognizing all the tags in the reader’s range. The per-formance 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.

� • Idle cycle: No transmission is attempted. It is a source of unnecessary increment of identification delay.

� • Readable cycle: Exactly one transmission is attempted. A tag is recognized by the reader successfully.

� • Collision cycle: More than one transmission is attempted. Tag collision occurs and the reader is unable to recognize any tags. The collision cycle defers tag identification and the tag’s communication is pure overhead.

Only a node of a collision cycle has two child nodes since a tag set is split into two subsets only in the collision cycle. Conse-quently, all the intermediate nodes in the tree correspond to colli-sion cycles and all the leaf nodes correspond to either readable cycles or idle cycles.

Tag identification is coincident with a tree search for finding nodes of readable cycles. The reduction of delay in tag identifica-tion can be accomplished by skipping collision cycles. However, once a frame is started, the tree search of the existing tree based protocols departs from the root of the tree and explores all inter-mediate nodes. In short, the unreasonable starting point of the tree search in existing protocols prolongs the identification delay.

2.1 Binary Tree Protocol The binary tree protocol (BT) [9], [19], [22] uses random binary numbers generated by colliding tags for the splitting procedure. The tag has a counter initialized to 0 at the beginning of the frame and transmits ID when its counter value is 0. Therefore, all the tags within the reader’s reading range, at the start of the frame, form one set and transmit concurrently. The reader transmits a feedback to inform tags of the occurrence of tag collision. Ac-cording to the reader’s feedback, every tag changes its counter. In a collision cycle, the tag randomly selects a binary number when its transmission causes collision (i.e., its counter value is 0). Every colliding tag adds a random binary number to its counter. When tag collision occurs, the tag which is not involved in colli-sion (i.e., its counter value is not 0) increases its counter by 1. Consequently, a tag set is split into two subsets. In a no-collision cycle, all tags decrease their counter by 1. The tag infers the suc-cessful transmission from the following feedback indicating no collision. The tag recognized by a reader does not transmit any signal until the ongoing frame is terminated. Since the reader also has a counter and changes it value as the tag does, all the tags are recognized.

Figure 1. Tag identification in tree based protocols. Each node in the tree corresponds to a reading cycle. (a) Binary

tree protocol. (b) Query tree protocol.

203

Page 3: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

2.2 Query Tree Protocol The query tree protocol (QT) [2], [6] uses tag IDs to split a tag set. The reader transmits a query including a bit string. The reader has queue Q for bit strings of queries and initializes Q with two 1-bit strings, 0 and 1, at the beginning of the frame. The reader pops a bit string from Q and transmits a query in a cycle. The tag whose first bits of ID equal the bit string of the query responds by trans-mitting ID. If tag responses of query q1q2…qx (qi�{0,1}, 1 ≤ x ≤ b, and b is the number of bits in the tag ID) collide, the reader pushes two 1-bit longer bit strings, q1q2…qx0 and q1q2…qx1, into Q and uses two 1-bit longer queries in next cycles. The set of tags which match q1q2…qx is split into two subsets; one is a set of tags which match q1q2…qx0 and the other is a set of tags which match q1q2…qx1. By expanding the query until either a response or no response follows, the reader recognizes all the tags.

Contrary to BT, QT imposes simple functions on tags. QT is also called a memoryless protocol because tags need not have addi-tional memory except ID for identification. However, the identifi-cation delay is affected by the distribution of tag IDs. As tags have much similar IDs, delay is increased.

3. ADAPTIVE SPLITTING PROTOCOLS We assume that a reader performs tag identification processes, namely, frames, repeatedly for object tracking and monitoring1. For reader r, let Ar,i be the set of tags which dwell inside reader r’s range in the ith frame of reader r. To consider the tag’s mobil-ity, we classify tags into staying tags, arriving tags, and leaving tags. We say that tag as is a staying tag in the ith frame of reader r if as � Ar,i-1 ∩ Ar,i. We say that tag aa is an arriving tag in the ith frame of reader r if aa � Ar,i − Ar,i-1. We say that tag al is a leaving tag in the ith frame of reader r if al � Ar,i-1 − Ar,i. Tag identifica-tion should recognize staying tags and arriving tags promptly.

Staying tags sojourn in the reader’s 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 stay-ing 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 reader’s queue Q with 1-bit queries.

Tag identification in existing tree based protocols starts from one set including all tags and causes tag collisions for splitting tag sets. The colliding tag need re-transmit ID whenever tag collision oc-curs. The retransmission brings about an increase in identification delay, which handicaps the identification capability of the reader. To make matters worse, readers and tags consume significantly extra energy for successful transmission. Therefore, eliminating inter-staying tag collisions can shorten total delay for tag identifi-cation and reduce tag communication overhead. Moreover, infor-mation on the tree of the last frame makes a new tag identification start from multiple tag sets and hence the reader can recognize tags with less collisions. Our proposed protocols maintain infor-mation on the last frame with a small amount of data and use it

1 Prominent retailers such as Wal-Mart, Target and Best Buy, as

well as logistics companies like UPS and Fed-Ex have made this a requirement of all their operations. Manufacturers are fol-lowing suite.

for preventing tag collisions. They are still simple enough to ap-ply to passive RFID tags and recognize all tags quickly.

Adaptive splitting protocols have the characteristic of fast tag identification. AQS uses reader’s 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 read-able 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 be-tween tags by skipping cycles in which tag collision occurred in the last frame.

4. ADAPTIVE QUERY SPLITTING AQS recognizes tags with queries sent by a reader. The query includes a bit string. The tag responds with its ID when its first bits of ID are equal to the bit string of the query. Collisions are resolved by two 1-bit longer queries. The reader does not transmit queries which caused tag collisions in the last frame. The reader has queue Q which maintains bit strings for queries. At the begin-ning of the frame, Q is initialized with queries of all the leaf nodes in the tree of the last frame. To do this, the reader also has candidate queue CQ, which compiles queries of readable cycles and idle cycles of the ongoing frame. When a new frame starts, the reader initializes Q with bit strings in CQ and makes CQ empty. Tags still require very simple functions such as matching its ID with the query and are recognized with few collisions.

4.1 Query Insertion Algorithm 1 and Algorithm 2 show pseudo code of the tag and the reader, respectively, in AQS during a frame. “IsResponsible” flag is set to TRUE if the tag is allowed to send ID and set to 0 other-wise. At the beginning of the frame, Q is initialized with queries of CQ. The reader recognizes all the tags during the “while” op-eration from line 9 to line 23 in Algorithm 2. In lines 10 and 11, the reader pops a bit string from Q and transmits a query in a cy-cle. If responses of query q1q2…qx (qi�{0,1}, 1 ≤ x ≤ b, and b is the number of bits in the tag ID) collide, the reader pushes q1q2…qx0 and q1q2…qx1 into Q in lines 15 and 16. If q1q2…qx engenders an idle cycle or a readable cycle, the reader pushes

Figure 2. The starting point of tag identification in tree based

protocols

204

Page 4: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

q1q2…qx into CQ in lines 19 and 21. Note that all leaf nodes cor-respond 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 addi-tional memory.

Proof: Let SQ(x) be the size of Q after transmitting the xth query and SCQ(x) be the size of CQ after transmitting the xth query. Denote l(x) as the number of bits of the xth query. For x ≥ 0, we have

⎪⎩

⎪⎨⎧

+−=

)()()1(0

)(xlxtxS

xSCQ

CQ 0if0if

>=

xx

(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,

)1()1(

)()1()()1()()(

−+−=

+−+−−=+

xSxS

xlxSxlxSxSxS

CQQ

CQQCQQ

(2)

That is, the total size of Q and CQ is not changed. Therefore, maintaining CQ at the reader does not require additional memory. □

4.2 Query Deletion In performing the procedure, query insertion augments the num-ber of leaf nodes in the tree and increases the length of queries. Since the number of readable cycles is the same as the number of tags, idle cycles will proliferate and worsen the reader’s ability of tag identification. It results from which readable cycles of the last frame is transformed into idle cycles by leaving tags. To address this problem, AQS eliminates unnecessary idle cycles in line 24 in Algorithm 2. Since there is more than one response in the colli-

sion cycle, a node of a collision cycle should have two child nodes which are a pair of types as follows: 1) two collision cycles, 2) a collision cycle and a readable cycle, 3) a collision cycle and an idle cycle, and 4) two readable cycles. If leaving tags trans-form a pair of child nodes, the reader deletes unnecessary queries from CQ as follows. � • A readable cycle and an idle cycle: If only tag ax re-

sponds to query q1q2…qx0 (q1q2…qx1) and no tag responds to q1q2…qx1 (q1q2…qx0), tag ax can be recognized by q1q2…qx without collision. The reader deletes q1q2…qx0 and q1q2…qx1 from CQ and puts q1q2…qx into CQ.

� • Two idle cycles: If both q1q2…qx0 and q1q2…qx1 are queries of idle cycles, there is no tag which responds to q1q2…qx. Therefore, q1q2…qx is the query of the idle cycle. The reader deletes q1q2…qx0 and q1q2…qx1 from CQ and puts q1q2…qx into CQ.

After a frame, the reader deletes unnecessary queries except two 1-bit queries from CQ. Figure 3 depicts an example of the query insertion and the query deletion procedure. As the query deletion is done under the condition that all branches in the tree are in-cluded in CQ, all tags can be recognized promptly in the next frame.

Theorem 2: All tags are recognized by queries of all the leaf nodes in the tree of the last frame.

Proof: If a 1-bit query, 0 (or 1) is a leaf node, it recognizes all tags of which the first bit of IDs is 0 (or 1). For query q1q2…qx, all tags which match q1q2…qx are recognized by q1q2…qx0 and q1q2…qx1. Therefore, any tag can be recognized by all the leaf nodes in the tree of the last frame. □

Algorithm 1. AQS Tag Operation

/* 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 Receive query q 2 while q != the command terminating a frame do 3 IsResponsible = TRUE 4 for i = 0 to i < the number of bits of q do 5 if qi != ti then 6 IsResponsible = FALSE 7 break 8 end if 9 if IsResponsible then 10 Transmit ID 11 end if 12 Receive query q 13 end while

Algorithm 2. AQS Reader Operation (candidate queue CQ)

1 /* Initialize Q and CQ */ 2 Q = CQ 3 CQ = NULL 4 if Q = NULL then 5 push (Q, 0) 6 push (Q, 1) 7 end if 8 /* Identify tags and form CQ */ 9 while Q ! = NULL do 10 q = pop(Q) 11 Transmit a query including q 12 Receive tag responses and detect collision 13 if collision occurs then 14 /* Push 1-bit longer bit strings into Q */ 15 push (Q, q0) 16 push (Q, q1) 17 else if receive only a response then 18 Store the tag ID 19 push (CQ, q) 20 else /* receive no response */ 21 push (CQ, q) 22 end if 23 end while 24 QueryDeletion(CQ) /* Remove unnecessary queries */ 25 Transmit the command terminating a frame;

205

Page 5: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

5. ADAPTIVE BINARY SPLITTING AQS reduces collisions, but it needs some idle cycles. To guaran-tee 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 col-lide with other staying tags. An arriving tag decides its counter value with a random number selected among possible values in-side the reader’s range. Tag transmissions are aligned in the in-creasing order of counter values. ABS achieves fast identification by diminishing not only collisions but also unnecessary cycles.

5.1 Tag transmission control Algorithm 3 shows the pseudo code of the tag in ABS. A tag has two counters, Progressed Slot Counter (PSC) and Allocated Slot Counter (ASC). It is applicable to passive RFID tags because they can have a little storage though they can neither have a complex logic nor communicate each other [16]. PSC represents the num-ber of tags recognized successfully. PSC is initialized to 0 at the beginning of the frame and is increased by 1 only in the readable cycle. All the tags have the same value of PSC at all times. ASC signifies the cycle when the tag can transmit ID. The tag is al-lowed to transmit when its ASC is equal to PSC. If the tag has ASC less than PSC, it does not attempt the transmission until the completion of the frame because it has already been recognized in the ongoing frame. To control PSC and ASC, the reader informs tags of the type of the last cycle by transmitting a feedback. For splitting a set of tags transmitting at the same cycle, every collid-ing tag increases ASC by a random number. When tag collision occurs, the tag which has ASC equal to PSC randomly selects one of two binary numbers, 0 and 1, and then adds it to ASC in lines 13 and 14. To prevent the second subset, i.e., tags which have ASC equal to PSC and select 1, from combining with another set, i.e., tags which have ASC equal to PSC + 1, the tag which has ASC greater than PSC adds 1 to ASC in the collision cycle in line 21. Since PSC is not changed, the first subset, i.e., tags which have ASC equal to PSC and select 0, tries to retransmit in the following cycle. The second subset, i.e., tags which have ASC equal to PSC and select 1, transmits after the first subset is recog-

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.

Algorithm 3. ABS Tag Operation

1 Receive the command starting a frame with reader’s TSC 2 /* Initialize PSC and ASC */ 3 PSC = 0 4 if ASC = NULL or ASC > TSC then 5 ASC = random number from 0 to TSC 6 end if 7 /* Process PSC and ASC for transmission */ 8 while PSC <= ASC do 9 if PSC = ASC then 10 Transmit ID 11 Receive the reader's feedback f 12 if f = collision then 13 Select a binary value i randomly 14 ASC = ASC + i 15 else 16 PSC = PSC + 1 17 end if 18 else 19 Receive the reader's feedback f 20 if f = collision then 21 ASC = ASC + 1 22 else if f = readable then 23 PSC = PSC + 1 24 else /* f = idle */ 25 ASC = ASC – 1 26 end if 27 end if 28 end while

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 be-

comes a leaving tag.

206

Page 6: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

5.2 Frame termination For terminating a frame at once after identifying all tags, the reader of ABS acts as the tag which has the largest ASC. Algo-rithm 4 shows the pseudo code of the reader. The reader deter-mines the end point of the frame with Progressed Slot Counter (PSC) and Terminated Slot Counter (TSC). PSC represents the number of tags recognized successfully. In a readable cycle, the reader adds 1 to PSC. TSC signifies the number of tag sets in the reader’s range. For fast identification, the reader preserves TSC after the end of the frame. If collision occurs, the reader increases TSC by 1 because the number of sets has increased. When a cycle of type ‘idle’ is encountered, the reader decreases TSC by 1. This is to reflect the effect of elimination of idle cycles. As soon as PSC is greater than TSC, the reader concludes that all tags have been recognized and terminates the frame.

In an environment with multiple readers, an arriving tag can be recognized with its ASC given by other readers. If an arriving tag has ASC less than TSC, it is obvious that the arriving tag has the same ASC as a staying tag or a leaving tag. To cope with ASC

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 r’s range in the ith frame of reader r. The identification delay caused by recognizing Ar,i, dtotal(Ar,i), is

( ) cycleir

AT

xtagreaderirtotal dATdxdAd

ir

⋅≈+= ∑=

)())(( ,

)(

1,

,

(3)

where T(Ar,i) is the number of cycles in a frame when reader r recognizes tags in Ar,i, dreader(x) is the delay of delivering the xth query (or feedback), dtag is the delay of delivering the tag ID, and dcycle is the average delay of the reading cycle. The identification delay is determined by T(Ar,i).

Figure 4. Tag operation in ABS. A number in parentheses

indicates ASC which tags in the set have. (a) The operation in the collision cycle. (b) The operation in the idle cycle.

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.

Algorithm 4. ABS Reader Operation

1 PSC = 0 2 if TSC = NULL then 3 TSC = 0 4 end if 5 Transmit the command starting a frame with TSC 6 While PSC <= TSC do 7 Receive tag responses and detect collision 8 if collision occurs then 9 TSC = TSC + 1 10 f = collision 11 else if receive only a response then 12 Store the tag ID 13 PSC = PSC + 1 14 f = readable 15 else /* receive no response */ 16 TSC = TSC - 1 17 f = idle 18 end if 19 Transmit the feedback f 20 end while

207

Page 7: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

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.

As described in the previous section, AQS uses tag IDs for the splitting procedure like QT. We analyze the worst case identifica-tion delay of AQS through the derivation of the identification delay of QT.

Lemma 1: Let us define CQT(Ar,i) as the number of collision cycles in the ith frame when reader r recognizes Ar,i under QT. For given CQT(Ar,i), the identification delay of QT, TQT(Ar,i), is

1)(2)( ,, += irQTirQT ACAT (4)

Proof: In the tree of tag identification at QT, only a node of a collision cycle has two child nodes, since a tag set is split into two subsets only in the collision cycle. Therefore, the tree of tag iden-tification at QT is a full binary tree and all the intermediate nodes in the tree correspond to collision cycles. □

Lemma 2: When the length of the tag ID is b bits and Ar,i has n tags,

3)log2()( 2, −−+= nbnAT irQT (5)

Proof: By lemma 1, the worst case in the identification delay of QT is that collisions are most numerous. Since tags have unique b-bit IDs, two tag IDs can, at most, equal first b-1 bits except the last bit. At this time, two tags make b-1 collisions. In depth k of the tree, a node can be a collision cycle when more than one tag selects it for transmission. The maximum number of collision cycles in depth k of the tree when reader r recognizes n tags under QT, CQT(n, k) is

⎪⎩

⎪⎨⎧

=2/

2),(n

knCk

QT )1(log)1log0(

2

2bkn

nk<<−−≤<

(6)

⎣ ⎦

⎣ ⎦

2)log2(2

22

),()(

2

1

log

1log

1

1

1,

2

2

−−+≤

+=

∑∑

∑−

=

=

=

nbn

n

knCAC

b

nk

n

k

k

b

kQTirQT

(7)

From lemma 1, (5) is derived. □

Theorem 3: Let TAQS(Ar,i+1|Ar,i) be the number of cycles in the i+1th frame when reader r recognizes Ar,i+1 under AQS after it has recognized Ar,i in the last frame. When Ar,i+1 = Ar,i + Barrive,

)2()}(log2){(

)(

2

,,

+−+−++≤

+

nnbn

ABAT irarriveirAQS

αα (8)

Proof: Suppose that there exist two readers and they attempt to recognize Ar,i+1 under QT and AQS, respectively. Tag identifica-tion 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

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,

)1(3)}(log2){(

)()()(

2

,1,,1,

−−−+−++≤

−= ++

nnbn

ACATAAT irQTirQTirirAQS

αα

(9)

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. □

Theorem 4: When Ar,i+1 = Ar,i + Barrive − Bleave,

)2()}(log2){()( 2,1, +−+−++≤+ nnbnAAT irirAQS αα (10)

Proof: AQS is able to eliminate unnecessary idle cycles after the reader has detected nonexistence of tags. However, reader r does not know leaving tags before the i+1th frame. Therefore,

)(

)(

,,

,,

irarriveirAQS

irleavearriveirAQS

ABAT

ABBAT

+=

−+

(11)

Theorem 4 is derived from (8). □

We analyze the average case in identification delay of ABS be-cause the performance of ABS is determined by random numbers.

Lemma 3: The number of collision cycles in the ith frame when reader r recognizes Ar,i under BT, CBT(Ar,i), is

( )( )∑∞

=

−−

⎭⎬⎫

⎩⎨⎧ −−+−=

0

1, 21122)(

k

nkkkirBT nAC (12)

Proof: A frame of BT can be represented in a binary tree. Let EBT(n, k), RBT(n, k) and CBT(n, k) be the number of idle cycles, readable cycles and collision cycles, respectively, in depth k of the binary tree when BT recognizes n tags. Since the number of nodes in depth k of the binary tree is 2k, EBT(n, k) = 2k(1-2-k)n and RBT(n, k) = n(1-2-k)n-1.

( ) ( ){ }

( ) ( )∑

=

−−−

=

=

⎭⎬⎫

⎩⎨⎧ −−−−=

−−=

=

0

1

0

0,

212122

,,2

),()(

k

nknkkk

kBTBT

k

kBTirBT

n

knRknE

knCAC

(13)

Lemma 4: The number of cycles in the ith frame when reader r recognizes Ar,i under BT, TBT(Ar,i), is

( )( )∑∞

=

−−

⎭⎬⎫

⎩⎨⎧ −−+−+=

0

1, 2112221)(

k

nkkkirBT nAT (14)

Proof: Lemma 1 is also applied into tag identification at BT. As a result, every intermediate node in the binary tree corresponds to the collision cycle and hence

208

Page 8: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

)(21)( ,, irBTirBT ACAT += (15)

Lemma 4 is derived from (12) and (15). □

Theorem 5: Let TABS(Ar,i+1|Ar,i) be the number of cycles in the i+1th frame when reader r recognizes Ar,i+1 under ABS after it has recognized Ar,i in the ith frame. When Ar,i+1 = Ar,i + Barrive − Bleave,

( )

( )( )∑

∑∞

=

−−−+

=

−−−+

⎭⎬⎫

⎩⎨⎧ −+−−+

−−=

0

/11

0

1/1,1,

213222

21)|(

k

nkkk

k

nkirirABS

nn

nnAAT

α

α

α

αβ

(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 stay-ing 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,

( ) ( )11,

1)(

)(−−

+

⋅++⋅−=

−+

nTnTn

ABBAT

BTBT

irleavearriveirABS

αβαβ (17)

Theorem 5 is derived by (14) and (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 rec-ognizing 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 influ-ences the amount of power consumption. Due to lack of power source in tags, this must be low.

7.1 Simulation Setup The simulation setup is shown in Table 1. To avoid the reader collision problem [3], we place readers such that their reading ranges do not intersect. To appreciate the impact of tag’s mobility, we define Meter Per Frame (MPF). Let MPF(a) denote MPF of tag a. MPF(a) is given by

),(),()(

21

21

ttFttmaMPF

p

a= (m/frame)

where ma(t1, t2) is the distance that tag a moves in the time inter-val [t1, t2] and Fp(t1, t2) is the number of frames executed by pro-tocol p in the interval [t1, t2]. By MPF, we can ensure that tree based protocols recognize the same tags in any frame. In our

simulations, initial positions and destinations of tags are randomly selected under the simulation area. A tag moves from its initial position toward its destination with MPF, which is randomly se-lected from 0 to the maximum MPF.

7.2 Impact of Staying Tags and Arriving Tags First, we simulate tree based protocols with a single reader while varying the number of staying tags and arriving tags. Let U be the set of all tags in the simulation area and let Ai be the set of tags recognized in the ith frame. We measure the performance in the i+1th frame by changing the ratio of staying tags to Ai, denoted by rs and the ratio of arriving tags to U − Ai, denoted by ra. We place 100 tags in the simulation area and only 50 tags of them sojourn within the reader’s range in the ith frame. We consider four sce-narios according to the values of rs and ra as shown Table 2.

Figure 6 and Table 3 depict the simulation results about the four scenarios. In the first scenario, there is no arriving tag. From Fig-ure 6(a) and Table 3, we can see that AQS and ABS achieve colli-sion-less tag identification. They do not allocate more than one staying tag to the same set to block collisions between staying tags. On the other hand, as the number of staying tags increases, tag collisions occur more frequently in BT and QT. Figure 6(b) illustrates that identification delay of ABS is the shortest of all protocols at high ratios of staying tags, while it is slower than BT and QT at ratios less than 0.3 because of idle cycles produced by leaving tags. AQS has longer delay than ABS because the reader transmits additional queries for covering all possible ranges of ID. The second scenario is tag identification with increasing the frac-tion of staying tags when some arriving tags exist. Though AQS and ABS eliminate collisions between staying tags, they cannot completely block collisions by arriving tags as shown in Figure 6(d) and Figure 6(e). As the fraction of staying tags increases, collisions between staying tags overwhelm collisions by arriving tags and the superiority of identification delay of AQS and ABS becomes stronger.

Table 2. Simulation scenarios

Ua Ai rs ra

Scenario I 100 50 0 ~ 1 0

Scenario II 100 50 0 ~ 1 0.5

Scenario III 100 50 0 0 ~ 1

Scenario IV 100 50 0.5 0 ~ 1

Table 1. Simulation setup

Parameter Value

Simulation Area 100 m × 100 m Number of readers 100 Identification range of the reader 3 m Number of tags 1000

Tag ID Randomly selected 96-bit ID

Maximum Meter Per Frame (MFP) 2 m/frame

209

Page 9: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

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

is tag identification while increasing the fraction of arriving tags, where there are some staying tags. The results in Figure 6(j) and Figure 6(k) show faster identification of AQS and ABS than BT and QT in spite of additional idle cycles created by leaving tags. Additionally, the decrement of collisions involves low communi-cation overhead at a tag in all the scenarios.

(a) Collisions (ra=0) (b) Identification delay (ra=0) (c) Tag communication overhead (ra=0)

(d) Collisions (ra=0.5) (e) Identification delay (ra=0.5) (f) Tag communication overhead (ra=0.5)

(g) Collisions (rs=0) (h) Identification delay (rs=0) (i) Tag communication overhead (rs=0)

(j) Collisions (rs=0.5) (k) Identification delay (rs=0.5) (l) Tag communication overhead (rs=0.5)

Figure 6. The simulation results according to the values of rs and ra

210

Page 10: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

7.3 Impact of the Number of Tags Figure 7 shows the simulation results obtained by changing the number of tags. As the number of tags increases, the identification delay gets longer and tag collisions occur more often. BT and QT show comparable delay curves. By restraining the occurrence of collisions, AQS and ABS have shorter delay than BT and QT. Small collisions activate small tag communication overhead. ABS has the shortest delay because it eliminates many idle cycles. AQS generates more idle cycles than others due to additional queries in order to guarantee recognizing all tags. On the other hand, AQS make less collision than ABS. In AQS, many idle cycles prevent arriving tags from colliding with staying tags and reduce the tag communication overhead.

7.4 Impact of Tag Movement We evaluate the performance by increasing the tag velocity. Fig-ure 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 stay-ing 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.

7.5 Impact of the Similarity of ID For the purpose of another comparison, we evaluate the impact of the similarity among IDs. QT and AQS may be influenced by the distribution of IDs because they use tag ID for splitting a tag set. To quantify the similarity of IDs, we define an identical bit. If the identical bit is γ and each tag has a 96-bit ID, ID is depicted by x1x2…xγxγ+1…x96 (xi is a binary digit, 1 ≤ γ < 96) and all tags have the same x1x2…xγ. Figure 9 gives the simulation results for vari-ous identical bits from 0 (IDs are completely randomly selected) to 80. We normalize the measured values by dividing by the

Table 3. Average number of reading cycles according to the ratio of staying tags and the ratio of arriving tags

Protocol Collisions Idle cy-cles

Total cycles

BT 45.06 14.02 91.12 QT 43.76 13.72 89.53

AQS 0 56.51 88.55 Scenario

I ABS 0 29.81 61.85

BT 80.40 24.89 161.81 QT 80.78 26.26 163.55

AQS 28.96 52.69 138.16 Scenario

II ABS 32.15 31.18 119.84

BT 35.14 10.99 71.28 QT 34.86 11.71 71.72

AQS 14.75 60.68 100.58 Scenario

III ABS 13.15 37.49 75.79

BT 76.84 23.67 154.69 QT 76.35 24.17 154.71

AQS 26.79 52.94 133.91 Scenario

IV ABS 30.65 32.04 116.88

(a) Collisions

(b) Idle cycles

(c) Identification delay

(d) Tag communication overhead

Figure 7. Performance comparison with varying the number of tags

211

Page 11: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

number of tags. As the identical bit increases, QT rapidly degen-erates 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 seri-ously 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, conse-quently, identification delay of AQS is longer. ABS and BT are not affected by the identical bit because they do not use the pat-terns 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 proc-ess 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

(a) Collisions

(b) Idle cycles

(c) Identification delay

(d) Tag communication overhead

Figure 9. Impact of ID distribution

(a) Collisions

(b) Idle cycles

(c) Identification delay

(d) Tag communication overhead

Figure 8. Impact of tag mobility

212

Page 12: Adaptive Splitting Protocols for RFID Tag Collision …read.pudn.com/downloads106/doc/437619/anti-collision.pdfTag anti-collision protocols for passive tags can be grouped into two

shows that AQS and ABS significantly reduce delay and commu-nication 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: [email protected]).

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.

[2] C. Law, K. Lee and K.-Y. Siu, “Efficient memoryless proto-col for tag identification,” Proc. 4th Int'l Workshop Discrete Algorithms and Methods for Mobile Computing and Com-munications, pp. 75-84, Boston, Massachusetts, USA, Aug. 2000.

[3] D. W. Engels and S. E. Sarma, “The reader collision prob-lem,” Proc. IEEE Int'l Conf. System, Man and Cybernetics, Hammamet, Tunisie, Oct. 2002.

[4] “EPCTM radio-frequency identification protocols class-1 generation-2 UHF RFID protocol for communications at 860MHz-960MHz version 1.0.8,” EPCglobal, Dec. 2004.

[5] F. C. Schoute, “Dynamic frame length ALOHA,” IEEE Trans. Comm., COM-31(4):565-568, Apr. 1983.

[6] F. Zhou, C. Chen, D. Jin, C. Huang and H. Min, “Evaluating and optimizing power consumption of anti-collision proto-cols for applications in RFID systems,” Proc. Int'l Symp. Low Power Electronics and Design, Newport Beach, Cali-fornia, USA, Aug. 2004.

[7] H. Vogt, “Efficient object identification with passive RFID tags,” Proc. Int'l Conf. Pervasive computing, LNCS 2414, pp. 98-113, Apr. 2002.

[8] I. E. Teletar and R. G. Gallager, “Combining queuing theory and information theory for multiaccess,” IEEE J. Selected Areas Communication, vol. 13, pp. 963-969, Aug. 1995.

[9] “Information technology automatic identification and data capture techniques – radio frequency identification for item management air interface - part 6: parameters for air inter-face communications at 860-960 MHz,” Final Draft Interna-tional Standard ISO 18000-6, Nov. 2003.

[10] J. E. Wieselthier, A. Ephremides and L. A. Michaels, “An exact analysis and performance evaluation of framed

ALOHA with capture,” IEEE Trans. Comm., COM-38(2):125-137, 1989.

[11] J. I. Capetanakis, “Tree algorithms for packet broadcast channels,” IEEE Trans. Information Theory, IT-25(5):505-515, Sept. 1979.

[12] J. Moseley and P. Humblet, “A class of efficient contention resolution algorithms for multiple access channels,” IEEE Trans. Communications, vol. COM-33, pp. 145-151, 1985.

[13] J. Zhai and G. Wang, “An anti-collision algorithm using two-functioned estimation for RFID tags,” Proc. Int'l Conf. Com-putational Science and its Applications, May 2005.

[14] K. Finkenzeller, RFID handbook: fundamentals and applica-tions in contactless smart cards and identification, John Wiley & Sons, 2003.

[15] N. Abramson, “The aloha system- another alternative for computer communications,” Proc. Fall Joint Computer Conf., AFIPS Conf., vol. 37, pp. 281-285, 1970.

[16] “Philips I*Code1 System Design Guide – Application Note AN00025,” Philips Semiconductors, 2002.

[17] R. Metcalfe, “Steady state analysis of a slotted and con-trolled Aloha system with blocking,” Proc. 6th Hawaii Conf. System Science, Honolulu, HI, 1973.

[18] R. Rao and A. Ephremides, “On the stability of interacting queues in a multiple-access system,” IEEE Trans. Inform. Theory, vol. 34, pp. 918-930, 1988.

[19] S. A. Weis, S. E. Sarma, R. L. Rivest and D. W. Engels, “Security and privacy aspects of low-cost radio frequency identification systems,” Proc. First Annual Conf. Security in Pervasive Computing, LNCS 2802, pp. 201-212, Mar. 2003.

[20] S. Lam and L. Kleinrock, “Packet switching in a multi access broadcast channel: Dynamic control procedures,” IEEE Trans. Automat. Contr., vol. AC-27, pp. 891-904, 1975.

[21] T. A. Scharfeld, “An analysis of the fundamental constraints on low cost passive radio-frequency identification system design,” M.S. thesis, Massachusetts Institute of Technology, pp. 92-100, Aug. 2001.

[22] UCODE, Philips Semiconductors, http://www.semiconductors.philips.com, 2005.

[23] V. Anatharam, “The stability region of the finite-user slotted ALOHA protocol,” IEEE Trans. Inform. Theory, vol. 37, 1991.

213