Вы находитесь на странице: 1из 52

Anti-tag collision algorithms of

RFID
Chun-Fu Lin
Agenda
Taxonomy of tag collision protocols
Bi-slotted tree based anti-collision protocols
Adaptive binary splitting
I-code
Tag collision Reader collision

Probability-based Centralized
Deterministic-based (Prefix-based) Distributed
RFID research topics
Hardware
circuit, antenna design, etc.
Collision
Reader collision
Tag collision
Security & privacy
Application
CSI/CTPAT/WCO SAFE
Supply chain management, medical care, etc.
Taxonomy of tag anti-collision protocols
by Dong-Her Shih et. al., published in Computer Communications, 2006
SDMA (Space Division
Multiple Access)
Reuse a certain resource,
such as channel capacity in
spatially separated area.
Reduce the reading range
of readers and forms as
an array in space.
Electronically controlled
directional antenna
Various tags can be
distinguished by their
angular positions.
FDMA (Frequency
Division Multiple
Access)
Several transmission
channels on various
carrier frequencies are
simultaneously
available.
Tags respond on one
of several frequencies.
CDMA (Code Division Multiple Access)
Too complicate and too computationally
intense for RFID tags as well
TDMA (Time Division Multiple Access)
The largest group of RFID anti-collision protocols
Tag driven (tag talk first, TTF)
Tag transmits as it is ready
Aloha
SuperTag
Tags keep quiet and retransmit until reader acknowledges
Reader driven (reader talk first, RTF)
Polling, splitting, I-code, contactless
Polling
Reader must have the complete knowledge
(database) of tags
Reader interrogates the RFID tags by polling whose
serial number starts with a 1 in the first position?
Those tags meet this test reply yes while others
remain
Slow, inflexible
Splitting method
Tree algorithm
Based on binary search tree algorithm
Each collided tag generates a random number by
flipping an unbiased B-sided coin
B = 2, each collided tag would generate a number 0
or 1
The reader always sends a feedback informing the
tags whether 0 packet, 1 packet, or more than 1
packet is transmitted in the previous slot.
Each tag needs to keep track of its position in the
binary tree according to the readers feedback
R set responds first

L: set generates 1
R: set generates 0
S: single reply
Z: zero reply
C: collision
Query Tree
Prefix based
Tags match the prefix respond
I-Code
stochastic passive tag identification protocol
based on the framed-slotted Aloha concept.
Each tag transmits its information in a slot that
it chooses randomly based on the seed sent
by the reader.
The reader can vary the frame size N, the
actual size of a slot is chosen according to the
amount of data requested
Approximation of N
The reader detects the number of slots by a triple of numbers c =
(c0, c1, ck), where c0 stands for the number of slots in the read
cycle in which 0 tags have transmitted, c1 denotes the number of
slots in which a single tag transmitted and ck stands for the
number of slots in which multiple tags are transmitted.
Lower bound method

Minimum Distance method: distance between read result c and


the expected value vector of n
Various N values corresponding to specific ranges have
been found from experiments and tabulated

If n [17, 27], both 32 and 64 are appropriate choices for N


Contact-less
Is based on the tree splitting methodology to identify one bit of
the ID in every arbitration step
The tag uses the modulation scheme which identifies 0 in the
specified bit position with 00ZZ (Z stands for no modulation) and
1 as ZZ00. In this way, the reader can recognize the
responses from all the tags and divide the unidentified tags into
2 groups.
1
1
Identified 1101
Related papers published in IEEE communications letters (I/F 1.196)
from 2006 ~ now
MARCH 2006, Adaptive Binary Splitting for Efficient RFID Tag Anti-
Collision, Jihoon Myung, Student Member, IEEE, Wonjun Lee, Senior Member,
IEEE, and Jaideep Srivastava, Fellow, IEEE
APRIL 2006, Enhanced Binary Search with Cut-Through Operation for
Anti-Collision in RFID Systems, Tsan-Pin Wang
DECEMBER 2006, Bi-Slotted Tree based Anti-Collision Protocols for Fast
Tag Identification in RFID Systems, Ji Hwan Choi, Student Member, IEEE,
Dongwook Lee, and Hyuckjae Lee, Member, IEEE
JANUARY 2007, Optimized Transmission Power Control of Interrogators
for Collision Arbitration in UHF RFID Systems, Joongheon Kim, Member,
IEEE, Wonjun Lee, Senior Member, IEEE, Eunkyo Kim, Dongshin Kim,
Student Member, IEEE, and Kyoungwon Suh, Student Member, IEEE
JANUARY 2007, Query Tree-Based Reservation for Efficient RFID Tag
Anti-Collision, Ji Hwan Choi, Student Member, IEEE, Dongwook Lee, and
Hyuckjae Lee, Member, IEEE

Tag collision
Reader collision
Ji-Hwan Choi, Dongwook Lee, Hyuckjae
Lee, Bi-slotted tree based anti-collision
protocols for fast tag identification in RFID
systems, IEEE communication letter,
December 2006
BSQTA
Reader sends n-1 bits prefix.
Tag that match the prefix will
Send ID from n+1 bit to end bit if its n-th bit is 0.
Wait for LENGTH-n bit duration if its n-th bit is 1.
If reader detects any collision occurs, it pushes the
prefixes (prefix+0, prefix+1) into stack and repeats the
exploring process.
BSCTTA (variation from BSQTA, tags send their
ID from n+1 bit to the time that ACK signal
received)
P:101
Reader

0 1 0
Tag1
1010010
0 1 0
Tag2
1011010 Wait |N-prefix| bits
Simulation
One reader
Number of tags increases from 2 to 65536
Tag IDs are randomly generated
ID length is not clear (believe to be 250)
Compared to QTA and CTTA
In another way of thinking
The tag collision problem can be referred to as a
distributed systems problem : how to reach a
consensus agreement (transmission slot) for every
distributed node (tag) without interaction to each other?
The constraints will be
Tag is unable to detect collision
Tag has limited or no calculation capability
Tag has limited or no memory space
Tags can be moved in and out dynamically
Reader has no information of the number of tags
There could be not just one reader
Jihoon Myung, Wonjun Lee, Jaideep
Srivastava, Adaptive binary splitting for
efficient RFID tag anti-collision, IEEE
communication letter, March 2006
Every tag maintains two local variables: Pc and Ac(i).
Pc, progressed-slot counter; number of tags recognized by the
reader so far.
Ac(i), allocated-slot counter, time slot for tag is transmission.
Reader sends feedback (readable, idle, collision) to tags
According to readers feedback, each tag decides its
transmission time of slot.
If feedback=readable, tag adds 1 to Pc.
If feedback=idle and Pc < Ac(i), tag decreases Ac(i) by 1
If feedback=collision and Pc < Ac(i), tag generates a
random number of 0 and 1 and adds to Ac(i).
Simulation results
Identification delay
Number of time slots required for all tags
Tag communication overhead
Average number of bits transmitted by a tag for identification
n: number of tags recognized in the last process
: number of staying tags (tsSr,iSr,i-1)
: number of arriving tags (taSr,i+1-Sr,i)
: number of leaving tags (tlSr,i-Sr,i+1)
w: given, w=/n, /n=/n=1-w
Binary tree protocol and query tree protocol are
compared

Sr,i: the set of all the tags recognized by reader r in the ith
Identification process
Stable for
static tags

w=0, No staying tags, arriving tags=leaving tags


w=1, static tags, no arriving and leaving tags
Harald Vogt, Efficient Object Identification
with Passive RFID Tags, Proceedings of
the International Conference on Pervasive
Computing, April 2002, pp.98-113.
I-Code
Reader is attached to the serial interface of a host (PC)
Communication and power transmission between the readers and tags
takes places by inductive coupling
All tags within reading range will answer requests from the reader
An I-Code tag provides 64 bytes memory
It employs a variant of slotted Aloha for access to the shared
communication medium
Tag reading cycle

I: what data is requested in memory


Rnd: random value {0, 31} for tags function sT of randomization
N: frame size {1, 4, 8, 16, 32, 64, 128, 256}
s: tag sends in slot s, 0sN
The result of a read cycle can be viewed as a triple of numbers <c0,
c1, ck>
Mathematical Preliminaries
Occupancy
Given N slots and n tags, the number r of tags in one slot is

The expected value of the number of slots with occupancy


number r is given by
r: the number of slots being filled with exactly r tags

Remaining arrangement
Tags reading as a Markov process

0 1 2 3 n
The matrix Q is used to compute a lower bound of the number of
reading steps necessary to identify all tags with a given probability.

q00 q01 ... q0 n



q10 q11 ...
Q


q qnn
n0
How to estimate n?
Based on the results of read cycles c=<c0, c1, ck>, and the
current value of N, the function that compute estimations of n is:

Error function: sums up the weighted errors over all possible


outcomes of the read cycle
An problem to optimal value for the number of cycles
Small frame size high collisions
Large frame size high response time
Stochastic nature of reading process (frame slotted Aloha) can
not guarantee 100% probability of identifying all tags
Compute the time to achieve a given assurance level : values
were obtained by performing read cycles for 1 min. and
computing the average consumed time

tN : cycle time, also depends


on the connection speed
between reader and host
TN is nearly linear in N
For a fixed frame size N, the time T required to achieve an
assurance level is Min number of read cycles

S satisfies

Probability of identify k tags after s read cycles,


K = 1, 2, , n. Choose its nth component and
Compare it to
If the optimal frame size is known, e.g. if n can be estimated
correctly, then the identification time that meet the threshold
increase linearly with the number of tags
Two estimation functions
Lower bound a collision involves at least 2 different
tags

Distance between read result c and the expected value


vector of n
Lower-bound is accurate for small n but grows fast with larger n.
e-dist is more steady
Due to the inaccuracy of the estimation functions and the
jitter as shown in Fig.3, it is free to choose the actual
frame size for a given estimate; ex. if n{17,27}, both 32
and 64 are appropriate choice for N.
Thank you

Вам также может понравиться