讀寫(xiě)器的沖突是指由一個(gè)讀寫(xiě)器檢測(cè)到,,并且由另一個(gè)讀寫(xiě)器所引起的干擾,。它主要有三種表現(xiàn)形式,。
(1)讀寫(xiě)器與讀寫(xiě)器之問(wèn)的干擾
當(dāng)一個(gè)讀寫(xiě)器發(fā)射較強(qiáng)的信號(hào)與一射頻標(biāo)簽反射回的微弱信號(hào)相干擾時(shí),就引起了讀寫(xiě)器與讀寫(xiě)器之間的干擾,其示意圖如圖1所示,。讀寫(xiě)器R1位于讀寫(xiě)器R2干擾區(qū),。從射頻標(biāo)簽Tl反射回的信號(hào)到達(dá)讀寫(xiě)器R1,很容易被讀寫(xiě)器R2發(fā)射的信號(hào)干擾,。這種干擾即使兩個(gè)讀寫(xiě)器閱讀范圍沒(méi)有重疊也有可能產(chǎn)生,。
(2)多讀寫(xiě)器到標(biāo)簽問(wèn)的干擾
當(dāng)多個(gè)讀寫(xiě)器同時(shí)閱讀同一個(gè)標(biāo)簽時(shí)引起了多讀寫(xiě)器到標(biāo)簽間的干擾,如圖2所示,,兩個(gè)讀寫(xiě)器閱讀范圍重疊,。從讀寫(xiě)器Rl和R2發(fā)射的信號(hào)可能在射頻標(biāo)簽Tl處產(chǎn)生干擾。在這種情況下,,標(biāo)簽T1不能解密任何查詢信號(hào)并且讀寫(xiě)器R1和R2都不能閱讀T1,。因?yàn)樽x寫(xiě)器沖突,讀寫(xiě)器Rl能閱讀標(biāo)簽T2和T3,,但是不能閱讀標(biāo)簽Tl,,因此,讀寫(xiě)器R1指示兩個(gè)射頻標(biāo)簽存在而不是3個(gè),。
抗沖突問(wèn)題研究" onclick="get_larger(this)" src="http://files.chinaaet.com/images/20110315/21f47d75-2600-4dab-b35d-cce030727e52.jpg" style="width: 550px; height: 367px" />
(3)讀寫(xiě)器沖突使載波偵聽(tīng)無(wú)效
另外一種讀寫(xiě)器沖突的情況如圖3所示,。兩個(gè)讀寫(xiě)器閱讀范圍沒(méi)有重疊,但讀寫(xiě)器R2發(fā)射的信號(hào)與讀寫(xiě)器R1發(fā)射的信號(hào)在標(biāo)簽T處干擾,。這種情況同時(shí)發(fā)生在兩個(gè)讀寫(xiě)器不在相互偵聽(tīng)范圍內(nèi)時(shí),,使射頻識(shí)別網(wǎng)絡(luò)中載波偵聽(tīng)無(wú)效。
除了誤操作,,讀寫(xiě)器沖突同時(shí)使射頻識(shí)別系統(tǒng)總的閱讀速率減慢,,而且這些問(wèn)題在移動(dòng)或手持式讀寫(xiě)器中更加嚴(yán)重。因此,,減少讀寫(xiě)器沖突是必須的,。
2 相關(guān)工作和研究
2.1 讀寫(xiě)器沖突的主要特點(diǎn)
讀寫(xiě)器沖突主要有下列特點(diǎn):
①隱藏節(jié)點(diǎn)問(wèn)題是讀寫(xiě)器沖突問(wèn)題的一個(gè)方面,。兩個(gè)讀寫(xiě)器不在相互偵聽(tīng)范圍內(nèi)而在標(biāo)簽處干擾時(shí),,使射頻識(shí)別網(wǎng)絡(luò)中正常的載波偵聽(tīng)無(wú)法工作。
?、诋?dāng)多個(gè)讀寫(xiě)器詢問(wèn)/發(fā)射的信號(hào)在某射頻標(biāo)簽處沖突時(shí),,該點(diǎn)的信號(hào)會(huì)變得非常雜亂并且射頻標(biāo)簽不能再接收任何讀寫(xiě)器詢問(wèn)/發(fā)射的信號(hào)。
?、鬯芯康纳漕l標(biāo)簽是被動(dòng)式標(biāo)簽,,因此標(biāo)簽本身既不能調(diào)整也不能主動(dòng)與讀寫(xiě)器通信以避免沖突。射頻標(biāo)簽是在被讀寫(xiě)器詢問(wèn)信號(hào)激活后才能通信,。
2.2 相關(guān)的多址機(jī)制
常用的多址機(jī)制不能直接應(yīng)用在射頻識(shí)別系統(tǒng)中,,因?yàn)椋?/p>
?、貴DMA。FDMA方式中,,讀寫(xiě)器使用不同的頻率和射頻標(biāo)簽通信,。由于射頻標(biāo)簽沒(méi)有頻率調(diào)諧電路,因此射頻標(biāo)簽不能選擇一個(gè)特定的讀寫(xiě)器與其通信,。如果射頻標(biāo)簽增設(shè)頻率調(diào)諧電路功能,,將大大增加射頻標(biāo)簽的成本,因此FDMA不適合應(yīng)用在射頻識(shí)別系統(tǒng)中,。
?、赥DMA。TDMA方式中,,讀寫(xiě)器被分配不同的時(shí)隙,,以避免讀寫(xiě)器同時(shí)詢問(wèn)/發(fā)送射頻信號(hào)。這類似于圖論中的圖形著色問(wèn)題,,是一個(gè)NP-hard問(wèn)題,。在移動(dòng)式網(wǎng)絡(luò)中,沒(méi)有干擾的讀寫(xiě)器因?yàn)橐苿?dòng)靠近而出現(xiàn)干擾,,需要重新分配時(shí)隙,。動(dòng)態(tài)的分配時(shí)隙減小了RFID系統(tǒng)閱讀速率。
?、跜SMA,。RFID網(wǎng)絡(luò),像其他的無(wú)線網(wǎng)絡(luò)一樣,,存在隱藏節(jié)點(diǎn)問(wèn)題,。讀寫(xiě)器不在互相偵聽(tīng)范圍內(nèi)在標(biāo)簽處發(fā)生干擾,因此僅僅依靠載波偵聽(tīng)無(wú)法避免RFID網(wǎng)絡(luò)中的沖突問(wèn)題,。
?、蹸DMA。CDMA需要在射頻標(biāo)簽上增設(shè)額外的電路,,大大增加了標(biāo)簽的成本,,并且分配碼給所有網(wǎng)絡(luò)中的標(biāo)簽是一件非常復(fù)雜的工作。因此CDMA不是一種成本低且有效的方案,。
2.3 相關(guān)的抗沖突機(jī)制
常見(jiàn)的抗沖突協(xié)議,,如RTS-CTS,不能直接應(yīng)用在RFID系統(tǒng)中,,因?yàn)椋?/p>
①傳統(tǒng)的無(wú)線網(wǎng)絡(luò),,只有一個(gè)節(jié)點(diǎn)回發(fā)CTS信號(hào)給發(fā)送者,。然而在RFID系統(tǒng)中,如果讀寫(xiě)器廣播發(fā)送一RTS信號(hào),所有在讀寫(xiě)器閱讀范圍內(nèi)的標(biāo)簽都得回發(fā)CTS信號(hào)給發(fā)送者讀寫(xiě)器,。這需要給這些CTS信號(hào)設(shè)計(jì)另外的抗沖突機(jī)制,,將使這種協(xié)議更加復(fù)雜。
?、谟锌赡芤?yàn)闆_突,,一些標(biāo)簽(如T1)沒(méi)有接收到RTS信號(hào)而另外一些標(biāo)簽(如T2)接收到了RTS信號(hào)。在這種情況下,,從T2回發(fā)的CTS信號(hào)不能確定在讀寫(xiě)器的閱讀范圍內(nèi)沒(méi)有沖突,。如何確定讀寫(xiě)器接收了在其閱讀范圍內(nèi)的所有標(biāo)簽的CTS信號(hào),對(duì)于讀寫(xiě)器是否存在沖突是非常重要的,。
2.4 相關(guān)的讀寫(xiě)器抗沖突方法
2.4.1 UHF第二代標(biāo)簽標(biāo)準(zhǔn)
UHF第二代標(biāo)簽標(biāo)準(zhǔn)是由EPCglobal制定的,。該標(biāo)準(zhǔn)把讀寫(xiě)器和射頻標(biāo)簽的信號(hào)傳輸分割開(kāi),這樣沖突只能在標(biāo)簽與標(biāo)簽間或者讀寫(xiě)器與讀寫(xiě)器問(wèn)發(fā)生,。這種分割使讀寫(xiě)器和射頻標(biāo)簽信號(hào)在不同的頻道上傳輸,,解決了讀寫(xiě)器問(wèn)的干擾。然而,,標(biāo)簽沒(méi)有頻率選擇性,。因?yàn)楫?dāng)兩個(gè)讀寫(xiě)器用不同的頻率同時(shí)與標(biāo)簽通信時(shí),標(biāo)簽不能調(diào)諧到特定的頻率.所以會(huì)在標(biāo)簽處發(fā)生沖突,。因此該標(biāo)準(zhǔn)仍存在多讀寫(xiě)器到標(biāo)簽間的干擾,。
2.4.2 Colorwave算法
Colorwave算法是一種基于TDMA分布式算法。該算法規(guī)定每一個(gè)讀寫(xiě)器從0到maxColors中隨機(jī)選擇一個(gè)時(shí)隙(顏色)傳輸數(shù)據(jù),。如果發(fā)生了沖突,,讀寫(xiě)器選擇一個(gè)新的時(shí)隙(顏色),并且發(fā)送一個(gè)kick(較小的控制包)給它所有鄰近的讀寫(xiě)器,,告訴它們它選擇了一個(gè)新的時(shí)隙(顏色),。如果鄰近的讀寫(xiě)器有同樣的時(shí)隙(顏色),它重新選擇一個(gè)新的時(shí)隙(顏色)并發(fā)送一個(gè)kick,。這樣一直繼續(xù)下去,。這種轉(zhuǎn)換和駐留的動(dòng)作就被稱為kick。每一個(gè)讀寫(xiě)器跟蹤當(dāng)前的時(shí)隙是什么顏色,。
Colorwave算法要求在讀寫(xiě)器之間時(shí)間同步,,同時(shí)假定讀寫(xiě)器能夠檢測(cè)到RFID系統(tǒng)中的沖突。然而,,僅僅用一個(gè)讀寫(xiě)器檢測(cè)在標(biāo)簽處發(fā)生的沖突是不可行的,,除非標(biāo)簽也參加沖突檢測(cè),并且讀寫(xiě)器移動(dòng)將會(huì)重新分配時(shí)隙,,重新分配的時(shí)隙傳播整個(gè)網(wǎng)絡(luò),,將會(huì)導(dǎo)致整個(gè)系統(tǒng)的無(wú)效,。
2.4.3 ETSl EN 208標(biāo)準(zhǔn)
ETSI EN 208是一個(gè)為RFID讀寫(xiě)器開(kāi)發(fā)的標(biāo)準(zhǔn),它基于CSMA協(xié)議的“先聽(tīng)再說(shuō)”,。讀寫(xiě)器首先在一特定的小時(shí)間段里偵聽(tīng)數(shù)據(jù)通道里任何正在進(jìn)行的通信,。如果在那段時(shí)間里,數(shù)據(jù)通道空閑,,它將閱讀標(biāo)簽,;如果通道忙,它隨機(jī)選擇一段退避時(shí)間,。然而,,正如前面所講,讀寫(xiě)器僅僅依靠載波偵聽(tīng)不能檢測(cè)到?jīng)_突,。
2.4.4 Q學(xué)習(xí)算法
Q學(xué)習(xí)算法提出了一種HiQ,、多層、在線的學(xué)習(xí)算法,。該算法通過(guò)學(xué)習(xí)讀寫(xiě)器的沖突模式和有效地分配頻率給讀寫(xiě)器,,動(dòng)態(tài)地解決RFID系統(tǒng)中讀寫(xiě)器的沖突問(wèn)題。Q學(xué)習(xí)算法多層結(jié)構(gòu)如圖4所示,。讀寫(xiě)器發(fā)送沖突消息給讀寫(xiě)器級(jí)服務(wù)器層(R-Server),。然后單個(gè)的R-server然后分配資源給它的讀寫(xiě)器,這樣的方式可使它們之間的相互通信不出現(xiàn)干擾,。R-Server通過(guò)Q學(xué)習(xí)服務(wù)器(Q-server)被分配到頻率和時(shí)隙,。根Q-server具有所有頻率和時(shí)隙資源的全部知識(shí),并且能分配它們,。Qserver不像R-Server一樣,,沒(méi)有單個(gè)讀寫(xiě)器問(wèn)約束關(guān)系,這種關(guān)系通過(guò)該層下面的服務(wù)器之問(wèn)的相互作用來(lái)推斷,。
這種方法如果應(yīng)用在RFID系統(tǒng)中,,將存在下面的問(wèn)題:
①協(xié)議保持多層結(jié)構(gòu)需要額外的管理開(kāi)銷,。
?、趯?duì)于移動(dòng)的讀寫(xiě)器來(lái)說(shuō),網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)不確定的變化將會(huì)改變Q學(xué)習(xí)算法的多級(jí)結(jié)構(gòu),。這就需要重新分配時(shí)隙,,將花去更多的時(shí)間并使系統(tǒng)無(wú)效。
?、跶學(xué)習(xí)假定讀寫(xiě)器的沖突檢測(cè)不在讀寫(xiě)器相互的偵聽(tīng)范圍內(nèi),。然而,并不是所有的沖突都能檢測(cè)到,,這將導(dǎo)致協(xié)議的不正確操作,。
?、苁褂脮r(shí)隙需要所有的讀寫(xiě)器同步,這種同步將是整個(gè)系統(tǒng)的額外開(kāi)銷,。
綜上所述,這些讀寫(xiě)器抗沖突方法不適合具有移動(dòng)讀寫(xiě)器的RFID網(wǎng)絡(luò)系統(tǒng),。因此,,必須尋求一種具有實(shí)際意義且有效的適合各種情況的RFID系統(tǒng)。
3 一種減少讀寫(xiě)器沖突的新算法
3.1 新算法的提出
在設(shè)計(jì)讀寫(xiě)器抗沖突協(xié)議時(shí),,要考慮的一個(gè)重要因素就是射頻標(biāo)簽是被動(dòng)式的,,因此不能參與抗沖突;同時(shí)任何增加給標(biāo)簽的新功能都將增加標(biāo)簽的成本,。因此希望尋求一種標(biāo)簽不參與的抗沖突協(xié)議,。
RFTD網(wǎng)絡(luò)存在隱藏節(jié)點(diǎn)問(wèn)題,如圖5所示,。R1和R2不在相互的偵聽(tīng)范圍內(nèi),,但是在T處從讀寫(xiě)器R2發(fā)射的信號(hào)與從讀寫(xiě)器R1發(fā)射的信號(hào)發(fā)生干擾。在這種情形下,,R1和R2間需要一個(gè)通知機(jī)制,。這樣,當(dāng)Rl和T正在通信,,R2被通知R1的通信,,因此R2可以延遲與射頻標(biāo)簽的通信。我們把這種通過(guò)廣播形式發(fā)送的消息稱為“信標(biāo)”,。當(dāng)一個(gè)讀寫(xiě)器正在與射頻標(biāo)簽通信時(shí),,它將周期性地在一個(gè)獨(dú)立的控制通道里發(fā)送信標(biāo)。
控制通道的通信范圍,,指任何兩個(gè)讀寫(xiě)器在相互的數(shù)據(jù)通道(該通道用來(lái)閱讀標(biāo)簽)干擾,,能夠在控制通道通信。圖5中盡管讀寫(xiě)器R1和R2相互在數(shù)據(jù)通道干擾,,但它們將在控制通道通信,。這是通過(guò)在控制通道比數(shù)據(jù)通道發(fā)射更高的功率達(dá)到的??刂仆ǖ朗荝FID頻譜中除那些用作讀寫(xiě)器與標(biāo)簽間通信的頻譜外的子頻帶,。因此,在控制通道上的傳播不影響任何在數(shù)據(jù)通道上正在進(jìn)行的通信,。數(shù)據(jù)通道被用作讀寫(xiě)器與標(biāo)簽之間的通信,,而控制通道被用作讀寫(xiě)器與讀寫(xiě)器之間的通信。假定讀寫(xiě)器能夠同時(shí)接收控制通道和數(shù)據(jù)通道上的信號(hào),。
3.2 新算法信標(biāo)的幀格式
新算法只為讀寫(xiě)器設(shè)計(jì),,因?yàn)樯漕l標(biāo)簽不參與抗沖突活動(dòng),。信標(biāo)的幀格式如下:
①幀類型,,指示該數(shù)據(jù)包是信標(biāo)數(shù)據(jù),。它可以分割成幀類型和序列號(hào),序列號(hào)指明將被發(fā)送的信標(biāo)的數(shù)量,。
?、谠吹刂罚òl(fā)射信標(biāo)的讀寫(xiě)器的地址,。在該結(jié)構(gòu)中信標(biāo)沒(méi)有目標(biāo)地址,,因?yàn)樾艠?biāo)是在控制通道廣播發(fā)送。
?、跜RC檢驗(yàn),,用來(lái)檢測(cè)錯(cuò)誤和校正,是數(shù)據(jù)包循環(huán)冗余檢驗(yàn)部分,。
3.3 新算法的工作流程和步驟
圖6為該算法的工作流程圖,,主要包括下列步驟:
①讀寫(xiě)器在與射頻標(biāo)簽通信前,,必須在等待狀態(tài)至少等待tmin時(shí)長(zhǎng),。該時(shí)長(zhǎng)等于3倍的信標(biāo)間隔時(shí)間。時(shí)長(zhǎng)tmin類似于802.11算法DIFS時(shí)間,。在該狀態(tài),,讀寫(xiě)器每接收到一個(gè)信標(biāo),它重新復(fù)位等待時(shí)長(zhǎng)為tmin,。
?、谧x寫(xiě)器如果在時(shí)長(zhǎng)tmin消耗完了還沒(méi)有接收到任何信標(biāo),讀寫(xiě)器推斷出在其附近沒(méi)有其他的讀寫(xiě)器在閱讀標(biāo)簽,。于是讀寫(xiě)器進(jìn)入競(jìng)爭(zhēng)階段,,并且從時(shí)間間隔[OACW]中選擇一隨機(jī)退避時(shí)間。如果它選擇i,,那么讀寫(xiě)器必須在競(jìng)爭(zhēng)狀態(tài)等待i個(gè)信標(biāo)時(shí)間間隔時(shí)間,。如果讀寫(xiě)器現(xiàn)在接收到一個(gè)信標(biāo),它就丟失現(xiàn)在的周期,,在下一個(gè)周期等待,。例如在tmin時(shí)長(zhǎng)接收到了信標(biāo),它將在下一個(gè)tmin時(shí)長(zhǎng)等待,。如果隨機(jī)退避時(shí)間結(jié)束,,讀寫(xiě)器還沒(méi)有接收到信標(biāo),該讀寫(xiě)器就認(rèn)為沒(méi)有其他的讀寫(xiě)器和它競(jìng)爭(zhēng),因此該讀寫(xiě)器就在控制通道上發(fā)送信標(biāo),,并且在數(shù)據(jù)通道上和標(biāo)簽通信,。該隨機(jī)退避時(shí)間幫助讀寫(xiě)器問(wèn)避免產(chǎn)生沖突。否則,,許多其他讀寫(xiě)器在等待時(shí)長(zhǎng)tmin后會(huì)同時(shí)發(fā)送信標(biāo),。隨機(jī)退避時(shí)間是多倍的信標(biāo)間隔長(zhǎng),提高了競(jìng)爭(zhēng)的公平性,。
?、郛?dāng)讀寫(xiě)器與標(biāo)簽通信時(shí),讀寫(xiě)器在控制通道上每隔一信標(biāo)間隔時(shí)長(zhǎng)發(fā)送一個(gè)信標(biāo),。該信標(biāo)通知鄰近的讀寫(xiě)器,以便阻止它們與標(biāo)簽的通信,,這樣避免了沖突,。在與標(biāo)簽通信結(jié)束后,讀寫(xiě)器重新回位到等待狀態(tài),,繼續(xù)余下的周期,。
④每次讀寫(xiě)器發(fā)送一信標(biāo),,它首先檢測(cè)控制通道,。如果控制通道忙,就一直檢測(cè)下去,。一旦檢測(cè)到控制通道空閑,,讀寫(xiě)器就等待一隨機(jī)延遲并再一次檢測(cè)通道和發(fā)送信標(biāo)。該隨機(jī)延遲是多倍的信標(biāo)傳播延遲,,以避免沖突,。否則,許多讀寫(xiě)器在信道空閑時(shí)會(huì)同時(shí)發(fā)送信標(biāo),。算法中的競(jìng)爭(zhēng)延遲及發(fā)信標(biāo)前延遲與通常的無(wú)線網(wǎng)絡(luò)中的退避相似,。一旦控制通道檢測(cè)到空閑競(jìng)爭(zhēng)延遲和發(fā)信標(biāo)前延遲,計(jì)數(shù)器減少,;當(dāng)檢測(cè)到發(fā)送時(shí),,計(jì)數(shù)器停止計(jì)時(shí);當(dāng)控制通道檢測(cè)到空閑后,,計(jì)數(shù)器重新計(jì)數(shù),。并且,如果讀寫(xiě)器在競(jìng)爭(zhēng)階段的退避期間接收到信標(biāo),,它就會(huì)存儲(chǔ)余下的退避計(jì)算時(shí)間等待下一次機(jī)會(huì),。例如,在tmin時(shí)間內(nèi)讀寫(xiě)器接收了信標(biāo),,當(dāng)讀寫(xiě)器重新進(jìn)入競(jìng)爭(zhēng)階段時(shí),,讀寫(xiě)器利用余下的退避時(shí)間,。這樣做的目的是提高讀寫(xiě)器間的公平。
4 結(jié)論
分布式讀寫(xiě)器抗沖突算法,,通過(guò)在控制通道上周期地發(fā)送信標(biāo)來(lái)達(dá)到抗沖突的目的,。與CSMA機(jī)制相比,它可以降低讀寫(xiě)器沖突1%~2%,,提高讀寫(xiě)器的閱讀速率高達(dá)98%,。它需要讀寫(xiě)器較少的花銷,完全不需要射頻標(biāo)簽參與抗沖突,。該算法同時(shí)還適合移動(dòng)或手持式閱讀器的射頻網(wǎng)絡(luò),,具有重大的實(shí)用價(jià)值。