<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article  PUBLIC "-//NLM//DTD Journal Publishing DTD v3.0 20080202//EN" "http://dtd.nlm.nih.gov/publishing/3.0/journalpublishing3.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" dtd-version="3.0" xml:lang="en" article-type="research article"><front><journal-meta><journal-id journal-id-type="publisher-id">JCC</journal-id><journal-title-group><journal-title>Journal of Computer and Communications</journal-title></journal-title-group><issn pub-type="epub">2327-5219</issn><publisher><publisher-name>Scientific Research Publishing</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.4236/jcc.2015.35009</article-id><article-id pub-id-type="publisher-id">JCC-56578</article-id><article-categories><subj-group subj-group-type="heading"><subject>Articles</subject></subj-group><subj-group subj-group-type="Discipline-v2"><subject>Computer Science&amp;Communications</subject></subj-group></article-categories><title-group><article-title>
 
 
  Parallel Response Ternary Query Tree for RFID Tag Anti-Collision
 
</article-title></title-group><contrib-group><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Ching-Nung</surname><given-names>Yang</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Song-Ruei</surname><given-names>Cai</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib><contrib contrib-type="author" xlink:type="simple"><name name-style="western"><surname>Li-Zhe</surname><given-names>Sun</given-names></name><xref ref-type="aff" rid="aff1"><sup>1</sup></xref></contrib></contrib-group><aff id="aff1"><addr-line>Department of Computer Science and Information Engineering, National Dong Hwa University, Hualien, Taiwan</addr-line></aff><pub-date pub-type="epub"><day>25</day><month>05</month><year>2015</year></pub-date><volume>03</volume><issue>05</issue><fpage>72</fpage><lpage>79</lpage><history><date date-type="received"><day>February</day>	<month>2015</month>	</date></history><permissions><copyright-statement>&#169; Copyright  2014 by authors and Scientific Research Publishing Inc. </copyright-statement><copyright-year>2014</copyright-year><license><license-p>This work is licensed under the Creative Commons Attribution International License (CC BY). http://creativecommons.org/licenses/by/4.0/</license-p></license></permissions><abstract><p>
 
 
   A tag-collision (or missed reads) in RFID system (Radio Frequency Identification) system degrades the identification efficiency. The so-called tag collision is that a reader cannot identify a tag when more than one tags respond to a reader at the same time. There are some major anti-collision protocols on resolving tag collision, e.g., ALOHA-based protocol, binary tree protocol, and Query Tree (QT) protocol. Up to date, most tag anti-collision protocols are QT protocols. QT protocols are categorized into M-ary query tree (QT). In the previous literature, choosing M = 3 (i.e., a ternary QT (TQT)) was proven to have the optimum performance for tag identification. Recently, Yeh et al. used parallel response approach to reduce the number of collisions. In this paper, we combine the partial response and TQT to propose an effective parallel response TQT (PRTQT) protocol. Simulation results reveal that our PRTQT outperforms Yeh et al.’s protocol and TQT protocol. 
 
</p></abstract><kwd-group><kwd>Radio Frequency Identification (RFID)</kwd><kwd> Tag Collision</kwd><kwd> Query Tree</kwd><kwd> Ternary Tree</kwd><kwd> Parallel Response</kwd></kwd-group></article-meta></front><body><sec id="s1"><title>1. Introduction</title><p>Radio frequency identification (RFID) system consists of readers, tags and backend database server [<xref ref-type="bibr" rid="scirp.56578-ref1">1</xref>]. This technology can be applied in inventory control, distribution industry, supply chain management,∙∙∙, and etc. However, there are two types of collision problems in RFID system, the tag collision and the reader collision [<xref ref-type="bibr" rid="scirp.56578-ref2">2</xref>] [<xref ref-type="bibr" rid="scirp.56578-ref3">3</xref>]. Tag collisions occur when multiple tags respond to a reader simultaneously and the reader cannot differentiate these tags correctly. In this paper, we deal with the tag-collision problem. When tags communicate with a reader through wireless transmission, they should be uniquely identified one by one. After the successful identification, a reader then sends the collected data from tags to a data processing system (backend database server), for the further application need.</p><p>There are two types of two tag anti-collision protocol to address tag-collision problem. One is ALOHA-based protocol [<xref ref-type="bibr" rid="scirp.56578-ref4">4</xref>] and the other is tree-based protocol. ALOHA protocol reduces the tag collisions since it has the starvation problem (a tag cannot be identified for a long time). Tree-based protocols can be classified to the binary tree (BT) and the query tree (QT). In BT protocols [<xref ref-type="bibr" rid="scirp.56578-ref5">5</xref>]-[<xref ref-type="bibr" rid="scirp.56578-ref8">8</xref>], a tag generates a random bit. If the bit is “0”, tags transmit their Electronic Product Codes (EPCs) to the reader, and tags having “1” transmit later. By repeating this process, all tags can be uniquely identified.</p><p>QT protocols [<xref ref-type="bibr" rid="scirp.56578-ref9">9</xref>]-[<xref ref-type="bibr" rid="scirp.56578-ref12">12</xref>] are sending a query string to identify the tags. If just one tag ID matches the query string, then the tag is identified. When multiple tags have the same query string, they are collided with each other. Otherwise, this situation is idle. Usually, QT protocol is implemented as binary QT (BQT) protocol that query tree is binary tree. Also, M-ary QT (MQT) were proposed in [<xref ref-type="bibr" rid="scirp.56578-ref10">10</xref>]-[<xref ref-type="bibr" rid="scirp.56578-ref12">12</xref>] with arbitrary number M. Repre- senting binary tuples to a decimal digit, a QT can be used as MQT for M = 2, 4, 8∙∙∙etc. Using large M-ary tree reduces the number of collisions, but increases the number of idle situations. Obviously, MQT protocol is reduced to BQT protocol for M = 2. Mathys et al. claimed the optimum performance of MQT is M = 3, i.e., ternary QT (TQT) [<xref ref-type="bibr" rid="scirp.56578-ref13">13</xref>]. However, in real environment, readers and tags communicate through binary code. TQT protocol is hard to implement from binary EPC. In [<xref ref-type="bibr" rid="scirp.56578-ref14">14</xref>], the authors adopted a conversion of 3B2T (3 binary code to 2 ternary code), to practically implement TQT protocol.</p><p>Recently, Yeh et al. [<xref ref-type="bibr" rid="scirp.56578-ref15">15</xref>] proposed a parallel response query tree scheme that combines the frequency shift keying (FSK) modulation and Manchester coding to provide two subcarriers for tags communicating with reader in parallel. In this paper we adopt the parallel subcarriers of Yeh’s protocol and the optimal performance of TQT protocol to design a parallel response ternary query tree (PRTQT) protocol. The remainder of this work is organized as follows. In Section 2, we review previous woks, Yeh et al.’s protocol and 3B2T conversion in TQT protocol. In Section 3, we propose the PRTQT algorithm for tag anti-collision. Performance and comparison are given in Section 4. Finally, our conclusion is drawn in Section 5.</p></sec><sec id="s2"><title>2. Previous Works</title><sec id="s2_1"><title>2.1. Partial Response in Query Tree</title><p>Yeh et al. [<xref ref-type="bibr" rid="scirp.56578-ref15">15</xref>] used frequency shift keying (FSK) modulation technique combining Manchester code to provide two subcarriers for tags to communicate with reader in parallel. In [<xref ref-type="bibr" rid="scirp.56578-ref16">16</xref>], two subcarrier tones in f<sub>0</sub> = 2.2 MHz and f<sub>1</sub> = 3.3 MHz based on the baseband carrier in 900 MHz is provided for a reader could receive two separate signals at the same time. The responded bits of tags are encoded as Manchester code, in which a low-to-high transition stands for 0, and a high-to-low transition stands for 1, as shown in <xref ref-type="fig" rid="fig1">Figure 1</xref>(a) and <xref ref-type="fig" rid="fig1">Figure 1</xref>(b). By this parallel two subcarrier responding and partial parallel prefix matching, Yeh et al.’s protocol performs like 4-ary QT protocol. However, Yeh et al.’s enhance the performance of 4-ary QT protocol since using two subcarriers.</p><p>A simple example with 8 tags with IDs {(0000100), (0010100), (0011010), (0011101), (1010110), (1011000), (1100111), (1101110)}. When reader send a query string S = (00), tags with prefix (00) and (11) will respond.</p><fig id="fig1"  position="float"><label><xref ref-type="fig" rid="fig1">Figure 1</xref></label><caption><title>Tag’s responses of Yeh et al.’s protocol with two subcarriers</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/56578x3.png"/></fig><p>Also, the MSB + R<sub>1</sub> = 0 (respectively, 1) will use subcarrier f<sub>0</sub> (respectively, f<sub>1</sub>) to respond, where MSB is the first bit of ID and R<sub>1</sub> is the first bit of the tag remainder exclusive S. In <xref ref-type="fig" rid="fig1">Figure 1</xref>(c), since MSB + R<sub>1</sub> = 0 for the tag (0000100), and MSB + R<sub>1</sub> = 1 for other tags of (0010100), (0011010), (0011101), (1100111), and (1101110), thus the tag (0000100) respond using subcarrier f<sub>0</sub> to sender and uniquely identified. Other five tags respond using f<sub>0</sub> and collide with each other. By the same argument, reader continuously sends the query string S = (0010). This procedure is repeated until all tags are successfully identified.</p></sec><sec id="s2_2"><title>2.2. 3B2T Conversion in TQT</title><p>A ternary tree is impossible directly implemented in QT protocol to identify a binary EPC. So using TQT delivers a problem how to efficiently convert 96-bit (EPC)<sub>2</sub> to a ternary (EPC)<sub>3</sub>.</p><p>The tradition method of convert binary digits to ternary digits is difficult to implement, and it would waste more time. The 3B2T conversion divides 96 bits EPC to 32 parts of three binary digits. And each three digits can map to two ternary digits by conversion table, this is shown in <xref ref-type="fig" rid="fig2">Figure 2</xref>. Actually, 96 binary bits just needs 61 ternary digits for conversion. Using 96 &#180; (2/3) = 64 ternary digits for conversion is not the optimal choice, but this way could finish conversion faster than the traditional conversion. By 3B2T conversion divides all bits to be 32 parts, and each part is independent with others. Thus, we do not need to turn covert all EPC at once, and just convert the part we use.</p></sec></sec><sec id="s3"><title>3. The Proposed PRTQT Protocol</title><p>As we know, in [<xref ref-type="bibr" rid="scirp.56578-ref13">13</xref>], the authors showed that TQT (M = 3) has the optimum performance (i.e., the less identification time). The proposed PRTQT is motivated by the parallel subcarriers of Yeh’s protocol and the optimal performance of TQT protocol. We use a more complex reader that could distinguish three responded signals with different frequencies from tags, and meantime process each response in parallel. Notations and their descriptions used in the proposed PRTQT protocol are defined below.</p><p>The proposed PRTQT protocol combines the parallel subcarrier response method and TQT protocol. In the proposed PRTQT, we have to convert binary IDs to ternary IDs for all tags by using 3B2T conversion. A tag with ternary digit t = (t<sub>1</sub>, t<sub>2</sub>,∙∙∙, t<sub>64</sub>), where t<sub>i</sub>&#206;{0, 1, 2} and 1 ≤ i ≤ 64. Readers first push (Q, 0) into a NULL queue Q. When the queue Q is not null, readers pop a ternary string q (|q| = x) from Q to broadcast. If t<sub>i</sub> = q<sub>i</sub>, for 1 ≤ I ≤ x − 1. Then the tag responds by using subcarrier c, where c is t<sub>x</sub>. There are three outcomes may occur in subcarrier. When more than one tags respond with the same subcarrier, the collision occurs. Then, readers would push (Q, q’||c||0) into the queue Q, where q’ = (q<sub>1</sub>, q<sub>2</sub>,∙∙∙, q<sub>x</sub><sub>−1</sub>). On the other hand, if only one tag responds with the subcarrier, the tag would be uniquely identified. After the successful identification, tag sends its ID to the reader. This procedure is repeated until the queue Q is empty. In the proposed PRTQT, all binary digits of ID are not necessarily converted to ternary digits at first. We just need 3B2T conversion when the query strings need to be used, so that the performance can be improved. The proposed PRTQT algorithm is shown in <xref ref-type="fig" rid="fig3">Figure 3</xref>.</p><p>Example 1. We use eight tags with 12-bit ID: (000101010010), (000111010111), (001101110000), (001110010110), (010110100001), (101010110001), (110000100010), and (110001110011), to test the pro-</p><fig id="fig2"  position="float"><label><xref ref-type="fig" rid="fig2">Figure 2</xref></label><caption><title> 3B2Tconversion</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/56578x4.png"/></fig><fig id="fig3"  position="float"><label><xref ref-type="fig" rid="fig3">Figure 3</xref></label><caption><title> The Proposed PRTQT</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/56578x5.png"/></fig><p>posed PRTQR protocol.</p><p>At first, the first three bits of all tags are converted into two ternary digits: (00), (00), (01), (01), (02), (12), (20), and (20) by 3B2T conversion. Readers then push (0) into a NULL queue Q for initialization. Readers pop a ternary string q = 0 from queue Q and broadcast the query string to all tags. Five tags with ternary prefix (00), (01) and (02), where t<sub>1</sub> = 0, respond to this query using subcarrier 0, and collide with each other since they respond with the same subcarrier 0. However, two tags with ternary prefix (20), where t<sub>1</sub> = 2, respond with subcarrier 2, and collide with each other since they respond with the same subcarrier 2. The tag with ternary prefix (12), where t<sub>1</sub> = 1, responds with subcarrier 1, and is uniquely identified. Thus, the tag (101010110001) with ternary prefix (12) is identified successfully. Readers then push (Q, 00) and (Q, 20) into the queue Q. When tags respond with the same subcarrier c, readers push string (q’||c||0) into the queue Q. After the first query cycle, the remainder of queue Q is {00, 20}. Hence, in the second query cycle, readers pop the string q = (q<sub>1</sub>, q<sub>2</sub>) = (00) and broadcast to all tags. <xref ref-type="table" rid="table1">Table 1</xref> lists the detail of identifying procedure for all eight tags, and <xref ref-type="fig" rid="fig4">Figure 4</xref> is its corresponding tree plot. Since we use three subcarriers to send the ternary digits, and thus there are no idle situations in the proposed PRTQT protocol. Finally, there are total 7 interrogation cycles.</p></sec><sec id="s4"><title>4. Performance Evaluation</title><p>In this section, we conduct two experiments to evaluate the performance of BQT, TQT and the proposed PRTQT. Suppose tag’s ID is using EPC (96-bits). And we have n tags need to be identified, where n = 100, 200, 300, 400, 500, 1000 and 2000. In Experiment A, n tags are randomly chosen that is for real situation. Experiment B is special case for test the performance with similar EPC. In [<xref ref-type="bibr" rid="scirp.56578-ref17">17</xref>], we consider the RFID warehouse distribution. It is reasonable to assume that the EPC data of most items from the same warehouse will be very similar since the items are manufactured by the same company, and are stacked together in a large warehouse. So, tags have very similar EPCs for this case. Both experiments are showing the number of collision cycles N<sub>C</sub>, idle cycles N<sub>I</sub> and total cycles N<sub>T</sub>.</p><p>Experiment A. Three protocols are tested: BQT, TQT, Yeh et al.’s protocol (denoted as PRQT), and the proposed PRTQT. Also, 96-bit EPCs of test tags are randomly generated.</p><fig id="fig4"  position="float"><label><xref ref-type="fig" rid="fig4">Figure 4</xref></label><caption><title> The query tree of PRTQT for Example 1</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/56578x6.png"/></fig><table-wrap id="table1" ><label><xref ref-type="table" rid="table1">Table 1</xref></label><caption><title> Identification of nine tags in Example 1 using the proposed PRTQT</title></caption><table><tbody><thead><tr><th align="center" valign="middle" >Cycle</th><th align="center" valign="middle" >q</th><th align="center" valign="middle"  colspan="2"  >Response</th><th align="center" valign="middle" >Queue Q</th></tr></thead><tr><td align="center" valign="middle" >0</td><td align="center" valign="middle" >NULL</td><td align="center" valign="middle"  colspan="2"  >Initialization</td><td align="center" valign="middle" >0</td></tr><tr><td align="center" valign="middle"  rowspan="3"  >1</td><td align="center" valign="middle"  rowspan="3"  >0</td><td align="center" valign="middle" >subcarrier 0</td><td align="center" valign="middle" >collision</td><td align="center" valign="middle"  rowspan="3"  >00,20</td></tr><tr><td align="center" valign="middle" >subcarrier 1</td><td align="center" valign="middle" >1 (101010110001<sup>*</sup>)</td></tr><tr><td align="center" valign="middle" >subcarrier 2</td><td align="center" valign="middle" >collision</td></tr><tr><td align="center" valign="middle"  rowspan="3"  >2</td><td align="center" valign="middle"  rowspan="3"  >00</td><td align="center" valign="middle" >subcarrier 0</td><td align="center" valign="middle" >collision</td><td align="center" valign="middle"  rowspan="3"  >20,000, 010</td></tr><tr><td align="center" valign="middle" >subcarrier 1</td><td align="center" valign="middle" >collision</td></tr><tr><td align="center" valign="middle" >subcarrier 2</td><td align="center" valign="middle" >02 (010110100001<sup>*</sup>)</td></tr><tr><td align="center" valign="middle"  rowspan="3"  >3</td><td align="center" valign="middle"  rowspan="3"  >20</td><td align="center" valign="middle" >subcarrier 0</td><td align="center" valign="middle" >collision</td><td align="center" valign="middle"  rowspan="3"  >000,010, 200</td></tr><tr><td align="center" valign="middle" >subcarrier 1</td><td align="center" valign="middle" >-</td></tr><tr><td align="center" valign="middle" >subcarrier 2</td><td align="center" valign="middle" >-</td></tr><tr><td align="center" valign="middle"  rowspan="3"  >4</td><td align="center" valign="middle"  rowspan="3"  >000</td><td align="center" valign="middle" >subcarrier 0</td><td align="center" valign="middle" >-</td><td align="center" valign="middle"  rowspan="3"  >010,200</td></tr><tr><td align="center" valign="middle" >subcarrier 1</td><td align="center" valign="middle" >001 (000101010010<sup>*</sup>)</td></tr><tr><td align="center" valign="middle" >subcarrier 2</td><td align="center" valign="middle" >002 (000111010111<sup>*</sup>)</td></tr><tr><td align="center" valign="middle"  rowspan="3"  >5</td><td align="center" valign="middle"  rowspan="3"  >010</td><td align="center" valign="middle" >subcarrier 0</td><td align="center" valign="middle" ></td><td align="center" valign="middle"  rowspan="3"  >200</td></tr><tr><td align="center" valign="middle" >subcarrier 1</td><td align="center" valign="middle" >011 (001101110000<sup>*</sup>)</td></tr><tr><td align="center" valign="middle" >subcarrier 2</td><td align="center" valign="middle" >012 (001110010110<sup>*</sup>)</td></tr><tr><td align="center" valign="middle"  rowspan="3"  >6</td><td align="center" valign="middle"  rowspan="3"  >200</td><td align="center" valign="middle" >subcarrier 0</td><td align="center" valign="middle" >collision</td><td align="center" valign="middle"  rowspan="3"  >2000</td></tr><tr><td align="center" valign="middle" >subcarrier 1</td><td align="center" valign="middle" >-</td></tr><tr><td align="center" valign="middle" >subcarrier 2</td><td align="center" valign="middle" >-</td></tr><tr><td align="center" valign="middle"  rowspan="3"  >7</td><td align="center" valign="middle"  rowspan="3"  >2000</td><td align="center" valign="middle" >subcarrier 0</td><td align="center" valign="middle" >2000 (110000100010<sup>*</sup>)</td><td align="center" valign="middle"  rowspan="3"  >NULL</td></tr><tr><td align="center" valign="middle" >subcarrier 1</td><td align="center" valign="middle" >2001 (110001110011<sup>*</sup>)</td></tr><tr><td align="center" valign="middle" >subcarrier 2</td><td align="center" valign="middle" >-</td></tr></tbody></table></table-wrap><p><sup>*</sup>successfully identified</p><p>In BQT and TQT, the leaf in a query tree just can be one of identification, collision, or idle node, where identification node is that one tag is uniquely identified. Hence N<sub>T</sub> = n + N<sub>C</sub> + N<sub>I</sub>. For example, when n = 100, the BQT has 140 collisions and 42 idle times. The number of total interrogation cycles is N<sub>T</sub> = 282 (= 100 + 140 + 42). However, in the proposed PRTQT, when n = 100, we have 61 collisions and no idle times. The number of total interrogation cycles is N<sub>T</sub> = 95 (&#185;100 + 0 + 61). In fact, the PRTQT protocol can identify more than one tag in a cycle. Since three subcarriers are used in the proposed PRTQT, at most three tags can be simultaneously identified within one cycle. Thus, for PRTQT, N<sub>T</sub> &#187;[n/3] + N<sub>C</sub> + N<sub>I</sub> = [n/3] + N<sub>C</sub> (∵no idle cycle). For example, the PRTQT has N<sub>T</sub> = 1836 interrogation cycles, while [n/3] + N<sub>C</sub> = 667 + 1164 = 1831. Both values are almost the same. For the case n = 2000, there 5534 and 5282 interrogation cycles for BQT protocol and TQT protocol, respectively. Our PRTQT uses parallel response method and ternary query tree, and there are total 1836 interrogation cycles, and enhance the N<sub>T</sub> = 2729 in PRQT. <xref ref-type="table" rid="table2">Table 2</xref> shows all the values of N<sub>C</sub>, N<sub>I</sub>, and N<sub>T</sub>, and <xref ref-type="fig" rid="fig5">Figure 5</xref> illustrates the number of total collisions for 100 &#163; n &#163; 2000. Obviously, our PRTQT protocol has the less interrogation cycles among all protocols.</p><p>Experiment B. Redo Experiment A, but use test tags with the very similar EPC data.</p><p>As we know, EPC embraces four sections: header (H: 8 bits), GMN (G: 28 bits), object class (O: 24 bits), and serial number (S: 36 bits). In fact, l<sub>f</sub> and l<sub>s</sub> are the first half and the second half in an EPC. Thus, in the so-called very similar EPC, we use the same first l<sub>f</sub> = 60 bits (H + G + O) cascaded with the random l<sub>s</sub> = 36 bits (S) for all tags. Experimental data are shown in <xref ref-type="table" rid="table3">Table 3</xref>. Compared with Experiment A using random EPC, the numbers of N<sub>T</sub> for BQT, TQT, PRQT, and PRTQT increase when using similar EPC. <xref ref-type="fig" rid="fig6">Figure 6</xref> illustrates the number of total</p><fig id="fig5"  position="float"><label><xref ref-type="fig" rid="fig5">Figure 5</xref></label><caption><title> Total cycles of each protocol for Experiment A</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/56578x7.png"/></fig><table-wrap id="table2" ><label><xref ref-type="table" rid="table2">Table 2</xref></label><caption><title> N<sub>C</sub>, N<sub>I</sub> and N<sub>T</sub> for tags with random EPC</title></caption><table><tbody><thead><tr><th align="center" valign="middle" ></th><th align="center" valign="middle"  colspan="3"  >BQT</th><th align="center" valign="middle"  colspan="3"  >TQT</th><th align="center" valign="middle"  colspan="3"  >PRQT</th><th align="center" valign="middle"  colspan="3"  >PRTQT</th></tr></thead><tr><td align="center" valign="middle" >n</td><td align="center" valign="middle" >N<sub>C</sub></td><td align="center" valign="middle" >N<sub>I</sub></td><td align="center" valign="middle" >N<sub>T</sub></td><td align="center" valign="middle" >N<sub>C</sub></td><td align="center" valign="middle" >N<sub>I</sub></td><td align="center" valign="middle" >N<sub>T</sub></td><td align="center" valign="middle" >N<sub>C</sub></td><td align="center" valign="middle" >N<sub>I</sub></td><td align="center" valign="middle" >N<sub>T</sub></td><td align="center" valign="middle" >N<sub>C</sub></td><td align="center" valign="middle" >N<sub>I</sub></td><td align="center" valign="middle" >N<sub>T</sub></td></tr><tr><td align="center" valign="middle" >100</td><td align="center" valign="middle" >140</td><td align="center" valign="middle" >42</td><td align="center" valign="middle" >282</td><td align="center" valign="middle" >94</td><td align="center" valign="middle" >79</td><td align="center" valign="middle" >273</td><td align="center" valign="middle" >50</td><td align="center" valign="middle" >20</td><td align="center" valign="middle" >134</td><td align="center" valign="middle" >61</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >95</td></tr><tr><td align="center" valign="middle" >200</td><td align="center" valign="middle" >280</td><td align="center" valign="middle" >82</td><td align="center" valign="middle" >562</td><td align="center" valign="middle" >183</td><td align="center" valign="middle" >146</td><td align="center" valign="middle" >530</td><td align="center" valign="middle" >106</td><td align="center" valign="middle" >42</td><td align="center" valign="middle" >284</td><td align="center" valign="middle" >117</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >184</td></tr><tr><td align="center" valign="middle" >300</td><td align="center" valign="middle" >417</td><td align="center" valign="middle" >119</td><td align="center" valign="middle" >836</td><td align="center" valign="middle" >278</td><td align="center" valign="middle" >224</td><td align="center" valign="middle" >802</td><td align="center" valign="middle" >156</td><td align="center" valign="middle" >63</td><td align="center" valign="middle" >424</td><td align="center" valign="middle" >177</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >279</td></tr><tr><td align="center" valign="middle" >400</td><td align="center" valign="middle" >545</td><td align="center" valign="middle" >147</td><td align="center" valign="middle" >1093</td><td align="center" valign="middle" >366</td><td align="center" valign="middle" >286</td><td align="center" valign="middle" >1052</td><td align="center" valign="middle" >208</td><td align="center" valign="middle" >74</td><td align="center" valign="middle" >560</td><td align="center" valign="middle" >234</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >367</td></tr><tr><td align="center" valign="middle" >500</td><td align="center" valign="middle" >703</td><td align="center" valign="middle" >205</td><td align="center" valign="middle" >1408</td><td align="center" valign="middle" >465</td><td align="center" valign="middle" >374</td><td align="center" valign="middle" >1339</td><td align="center" valign="middle" >261</td><td align="center" valign="middle" >105</td><td align="center" valign="middle" >703</td><td align="center" valign="middle" >296</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >466</td></tr><tr><td align="center" valign="middle" >1000</td><td align="center" valign="middle" >1378</td><td align="center" valign="middle" >380</td><td align="center" valign="middle" >2750</td><td align="center" valign="middle" >921</td><td align="center" valign="middle" >731</td><td align="center" valign="middle" >2652</td><td align="center" valign="middle" >505</td><td align="center" valign="middle" >192</td><td align="center" valign="middle" >1372</td><td align="center" valign="middle" >579</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >922</td></tr><tr><td align="center" valign="middle" >2000</td><td align="center" valign="middle" >2766</td><td align="center" valign="middle" >768</td><td align="center" valign="middle" >5534</td><td align="center" valign="middle" >1835</td><td align="center" valign="middle" >1447</td><td align="center" valign="middle" >5282</td><td align="center" valign="middle" >1000</td><td align="center" valign="middle" >354</td><td align="center" valign="middle" >2729</td><td align="center" valign="middle" >1164</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >1836</td></tr></tbody></table></table-wrap><fig id="fig6"  position="float"><label><xref ref-type="fig" rid="fig6">Figure 6</xref></label><caption><title> Total cycles of each protocol for Experiment B</title></caption><graphic mimetype="image"   position="float"  xlink:type="simple"  xlink:href="http://html.scirp.org/file/56578x8.png"/></fig><table-wrap id="table3" ><label><xref ref-type="table" rid="table3">Table 3</xref></label><caption><title> N<sub>C</sub>, N<sub>I</sub> and N<sub>T</sub> for tags with similar EPC</title></caption><table><tbody><thead><tr><th align="center" valign="middle" ></th><th align="center" valign="middle"  colspan="3"  >BQT</th><th align="center" valign="middle"  colspan="3"  >TQT</th><th align="center" valign="middle"  colspan="3"  >PRQT</th><th align="center" valign="middle"  colspan="3"  >PRTQT</th></tr></thead><tr><td align="center" valign="middle" >n</td><td align="center" valign="middle" >N<sub>C</sub></td><td align="center" valign="middle" >N<sub>I</sub></td><td align="center" valign="middle" >N<sub>T</sub></td><td align="center" valign="middle" >N<sub>C</sub></td><td align="center" valign="middle" >N<sub>I</sub></td><td align="center" valign="middle" >N<sub>T</sub></td><td align="center" valign="middle" >N<sub>C</sub></td><td align="center" valign="middle" >N<sub>I</sub></td><td align="center" valign="middle" >N<sub>T</sub></td><td align="center" valign="middle" >N<sub>C</sub></td><td align="center" valign="middle" >N<sub>I</sub></td><td align="center" valign="middle" >N<sub>T</sub></td></tr><tr><td align="center" valign="middle" >100</td><td align="center" valign="middle" >205</td><td align="center" valign="middle" >107</td><td align="center" valign="middle" >413</td><td align="center" valign="middle" >135</td><td align="center" valign="middle" >158</td><td align="center" valign="middle" >393</td><td align="center" valign="middle" >84</td><td align="center" valign="middle" >54</td><td align="center" valign="middle" >205</td><td align="center" valign="middle" >104</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >136</td></tr><tr><td align="center" valign="middle" >200</td><td align="center" valign="middle" >351</td><td align="center" valign="middle" >153</td><td align="center" valign="middle" >784</td><td align="center" valign="middle" >236</td><td align="center" valign="middle" >245</td><td align="center" valign="middle" >681</td><td align="center" valign="middle" >141</td><td align="center" valign="middle" >78</td><td align="center" valign="middle" >350</td><td align="center" valign="middle" >170</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >237</td></tr><tr><td align="center" valign="middle" >300</td><td align="center" valign="middle" >498</td><td align="center" valign="middle" >200</td><td align="center" valign="middle" >998</td><td align="center" valign="middle" >332</td><td align="center" valign="middle" >324</td><td align="center" valign="middle" >957</td><td align="center" valign="middle" >193</td><td align="center" valign="middle" >99</td><td align="center" valign="middle" >498</td><td align="center" valign="middle" >228</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >333</td></tr><tr><td align="center" valign="middle" >400</td><td align="center" valign="middle" >609</td><td align="center" valign="middle" >211</td><td align="center" valign="middle" >1220</td><td align="center" valign="middle" >410</td><td align="center" valign="middle" >373</td><td align="center" valign="middle" >1183</td><td align="center" valign="middle" >233</td><td align="center" valign="middle" >105</td><td align="center" valign="middle" >615</td><td align="center" valign="middle" >276</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >411</td></tr><tr><td align="center" valign="middle" >500</td><td align="center" valign="middle" >776</td><td align="center" valign="middle" >278</td><td align="center" valign="middle" >1555</td><td align="center" valign="middle" >526</td><td align="center" valign="middle" >485</td><td align="center" valign="middle" >1511</td><td align="center" valign="middle" >301</td><td align="center" valign="middle" >134</td><td align="center" valign="middle" >778</td><td align="center" valign="middle" >355</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >527</td></tr><tr><td align="center" valign="middle" >1000</td><td align="center" valign="middle" >1487</td><td align="center" valign="middle" >489</td><td align="center" valign="middle" >2976</td><td align="center" valign="middle" >990</td><td align="center" valign="middle" >864</td><td align="center" valign="middle" >2855</td><td align="center" valign="middle" >559</td><td align="center" valign="middle" >253</td><td align="center" valign="middle" >1493</td><td align="center" valign="middle" >655</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >991</td></tr><tr><td align="center" valign="middle" >2000</td><td align="center" valign="middle" >2852</td><td align="center" valign="middle" >854</td><td align="center" valign="middle" >5706</td><td align="center" valign="middle" >1898</td><td align="center" valign="middle" >1556</td><td align="center" valign="middle" >5454</td><td align="center" valign="middle" >1060</td><td align="center" valign="middle" >417</td><td align="center" valign="middle" >2852</td><td align="center" valign="middle" >1217</td><td align="center" valign="middle" >0</td><td align="center" valign="middle" >1899</td></tr></tbody></table></table-wrap><p>collisions for 100 ≤ n ≤ 2000. It is observed that our PRTQT also has the better performance. No matter what types of tags (random EPC or similar EPC) are tested, our protocols has the less N<sub>T</sub>. For example, for n = 2000, our PRTQT has N<sub>T</sub> = 1899, less than N<sub>T</sub> = 5706, 5454, and 2852 in BQT, TQT, and PRQT, respectively.</p></sec><sec id="s5"><title>5. Conclusion</title><p>In this paper, we proposed a PRTQT protocol to address the tag collision in RFID system. We adopt the parallel-subcarrier approach into TQT, so that tags can be identified in parallel subcarriers. Experiments reveal that the proposed PRTQT has better performance than BQT protocol, TQT protocol, and PRQT protocol.</p></sec><sec id="s6"><title>Acknowledgements</title><p>This work was supported in part by Ministry of Science and Technology, under Grant 102-2221-E-259-009-MY2 and 103-2221-E-259-015.</p></sec><sec id="s7"><title>Cite this paper</title><p>Ching-Nung Yang,Song-Ruei Cai,Li-Zhe Sun, (2015) Parallel Response Ternary Query Tree for RFID Tag Anti-Collision. Journal of Computer and Communications,03,72-79. doi: 10.4236/jcc.2015.35009</p></sec></body><back><ref-list><title>References</title><ref id="scirp.56578-ref1"><label>1</label><mixed-citation publication-type="other" xlink:type="simple">Finkenzeller, K. (2000) RFID Handbook: Radio Frequency Identification Fundamentals and Applications. John Wiley &amp; Sons.</mixed-citation></ref><ref id="scirp.56578-ref2"><label>2</label><mixed-citation publication-type="other" xlink:type="simple">Yang, C.N., He, J.Y. and Kun, Y.C. (2012) RFID Tag Anti-Collision Protocols. Chapter 7 in the book Advanced RFID Systems, Security, and Applications, IGI Global.</mixed-citation></ref><ref id="scirp.56578-ref3"><label>3</label><mixed-citation publication-type="other" xlink:type="simple">Sarma, S., Weis, S. and Engels, D. (2003) RFID Systems and Security and Privacy Implications. LNCS, 2523, 454-470.  
http://dx.doi.org/10.1007/3-540-36400-5_33</mixed-citation></ref><ref id="scirp.56578-ref4"><label>4</label><mixed-citation publication-type="other" xlink:type="simple">Lee, S.R., Joo, S.D. and Lee, C.W. (2005) An Enhanced Dynamic Framed Slotted ALOHA Algorithm for RFID Tag Identification. Proceedings of MobiQuitous 2005, Jul., 166-172.</mixed-citation></ref><ref id="scirp.56578-ref5"><label>5</label><mixed-citation publication-type="other" xlink:type="simple">Zhou, F., Jin, D., Huang, C. and Hao, M. (2003) Optimize the Power Consumption of Passive Electronic Tags for Anti- Collision Schemes. Proceedings of the 5th International Conference on ASIC (ASIC 03), Oct., 1213-1217.</mixed-citation></ref><ref id="scirp.56578-ref6"><label>6</label><mixed-citation publication-type="other" xlink:type="simple">Feng, B., Li, J.T., Guo, J.B. and Ding, Z.H. (2006) Id-Binary Tree Stack Anti-Collision Algorithm for RFID. Proceedings of 11th IEEE Symposium on Computers and Communications (ISCC 06), Jun., 207-212.  
http://dx.doi.org/10.1109/ISCC.2006.86</mixed-citation></ref><ref id="scirp.56578-ref7"><label>7</label><mixed-citation publication-type="other" xlink:type="simple">Myung, J. and Lee, W. (2005) Adaptive Binary Splitting: A RFID Tag Collision Arbitration Protocol for Tag Identification. Proceedings of 2nd International Conference on Broadband Networks (BroadNets 05), Oct., 347-355.</mixed-citation></ref><ref id="scirp.56578-ref8"><label>8</label><mixed-citation publication-type="other" xlink:type="simple">Cui, Y. and Zhao, Y. (2008) Mathematical Analysis for Binary Tree Algorithm in RFID. Proceedings of 67th IEEE Vehicular Technology Conference (VTC 08), May, 2725-2729. http://dx.doi.org/10.1109/VETECS.2008.596</mixed-citation></ref><ref id="scirp.56578-ref9"><label>9</label><mixed-citation publication-type="other" xlink:type="simple">Hsu, C.H., Yu, C.H. and Huang, Y.P. (2008) An Enhanced Query Tree (EQT) Protocol for Memoryless Tag Anti- Collision in RFID System. Proceedings of 2nd International Conference on Future Generation Communication and Networking (FGCN 08), Dec., 427-432. http://dx.doi.org/10.1109/FGCN.2008.224</mixed-citation></ref><ref id="scirp.56578-ref10"><label>10</label><mixed-citation publication-type="other" xlink:type="simple">Pupunwiwat, P. and Stantic, B. (2009) Unified q-ary Tree for RFID Tag Anti-Collision Resolution. Proceedings of 20th Australasian Database Conference (ADC 09), Mar., 49-58.</mixed-citation></ref><ref id="scirp.56578-ref11"><label>11</label><mixed-citation publication-type="other" xlink:type="simple">Yang, C.N. and He, J.Y. (2011) An Effective 16-bit Random Number Aided Query Tree Algorithm for RFID Tag Anti- Collision. IEEE Communications Letters, 15, 539-541. http://dx.doi.org/10.1109/LCOMM.2011.031411.110213</mixed-citation></ref><ref id="scirp.56578-ref12"><label>12</label><mixed-citation publication-type="other" xlink:type="simple">Yang, C.N., Hu, L.J. and Lai, J.B. (2012) Query Tree Algorithm for RFID Tag with Binary-Coded Decimal EPC. IEEE Communications Letters, 16, 1616-1619. http://dx.doi.org/10.1109/LCOMM.2012.090312.121213</mixed-citation></ref><ref id="scirp.56578-ref13"><label>13</label><mixed-citation publication-type="other" xlink:type="simple">Mathys, P. and Flajolet, P. (1985) Q-ary Collision Resolution Algorithms in Random-access Systems with Free or Blocked Channel Access. IEEE Transactions on Information Theory, 31, 217-243.  
http://dx.doi.org/10.1109/TIT.1985.1057013</mixed-citation></ref><ref id="scirp.56578-ref14"><label>14</label><mixed-citation publication-type="other" xlink:type="simple">Yang, C.N., He, Y.C. and Wu, C.C. (2010) A Practical Implementation of Ternary Query Tree for RFID Tag Anti- Collision. Proceedings of 2010 IEEE International Conference on Information Theory and Information Security, Dec., 283-286. http://dx.doi.org/10.1109/ICITIS.2010.5689460</mixed-citation></ref><ref id="scirp.56578-ref15"><label>15</label><mixed-citation publication-type="other" xlink:type="simple">Yeh, M.K., Jiang, J.R. and Huang, S.T. (2011) Parallel Response Query Tree Splitting for RFID Tag Anti-Collision. Proceedings of 40th International Conference on Parallel Processing Workshops, Sep., 6-15.</mixed-citation></ref><ref id="scirp.56578-ref16"><label>16</label><mixed-citation publication-type="other" xlink:type="simple">Draft Protocol Specification for a 900 MHz Class 0 Radio Frequency Identification Tag, MIT Auto-ID Center, Feb. 2003.</mixed-citation></ref><ref id="scirp.56578-ref17"><label>17</label><mixed-citation publication-type="other" xlink:type="simple">Pupunwiwat, P. and Stantic, B. (2009) Unified q-ary Tree for RFID Tag Anticollision Resolution. Proceedings of Australasian Database Conference, 49-58.</mixed-citation></ref></ref-list></back></article>