인식을 위한 충돌 방지 알고리즘 -...

57
RFID 시스을위Anti-collision algorithm for efficient tag identification in RFID system

Upload: others

Post on 13-Feb-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

  • 工學 碩士學位 論文

    RFID 시스템에서의 효율적인 태그

    인식을 위한 충돌 방지 알고리즘

    Anti-collision algorithm for efficient tag

    identification in RFID system

    亞洲大學校 大學院

    電子工學科

    李 忠 熙

  • RFID 시스템에서의 효율적인 태그

    인식을 위한 충돌 방지 알고리즘

    Anti-collision algorithm for efficient tag

    identification in RFID system

    指道敎授 金 宰 顯

    이 論文을 工學 碩士學位 論文으로 提出함.

    2008 年 2 月

    亞洲大學校 大學院

    電子工學科

    李 忠 熙

  • 본문 차례

    본문 차례 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i

    그림 차례 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii

    표 차례 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii

    약 어 표 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv

    감사의 글 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v

    요 약 문 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi

    제 1 장 서 론 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

    제 2 장 기존 충돌 방지 알고리즘 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    2.1 이진트리탐색알고리즘 . . . . . . . . . . . . . . . . . . 5

    2.2 동적이진트리탐색알고리즘 . . . . . . . . . . . . . . . 6

    2.3 슬롯단위이진트리알고리즘 . . . . . . . . . . . . . . . 8

    2.4 수정된슬롯단위이진트리알고리즘 . . . . . . . . . . . 10

    2.5 Bit-by-bit 이진트리알고리즘 . . . . . . . . . . . . . . . 11

    제 3 장 EPC Class 1 충돌 방지 알고리즘 . . . . . . . . . . . . . . . . . . . . . . . . 14

    3.1 EPC Class 1 시스템 . . . . . . . . . . . . . . . . . . . . 14

    3.2 EPC Class 1 시스템에서의충돌방지알고리즘 . . . . . . 16

    제 4 장 고속 충돌 방지 알고리즘 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    제 5 장 성능 분석 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    5.1 EPC Class 1 시스템의충돌방지알고리즘 . . . . . . . . 29

    5.2 제안하는충돌방지알고리즘 . . . . . . . . . . . . . . . . 31

    제 6 장 수학적 분석 및 시뮬레이션 결과 . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    제 7 장 결론 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    참고 문헌 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

    Abstract - 영문요약 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

    i

  • 그림 차례

    1 태그충돌문제 . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

    2 리더-리더충돌문제 . . . . . . . . . . . . . . . . . . . . . . . . 3

    3 다중리더-태그충돌문제 . . . . . . . . . . . . . . . . . . . . . . 4

    4 이진트리탐색알고리즘의예 . . . . . . . . . . . . . . . . . . . 6

    5 동적이진탐색알고리즘의예 . . . . . . . . . . . . . . . . . . . 7

    6 슬롯단위이진트리알고리즘의예 . . . . . . . . . . . . . . . . 9

    7 수정된슬롯단위이진트리알고리즘의예 . . . . . . . . . . . . 10

    8 Bit-by-bit 이진트리알고리즘의예 . . . . . . . . . . . . . . . . 11

    9 PingID 응답타이밍 . . . . . . . . . . . . . . . . . . . . . . . . . 16

    10 EPC Class 1 시스템에서의이진트리구조의예 . . . . . . . . . 19

    11 EPC Class 1 충돌방지알고리즘의순서도 . . . . . . . . . . . . 21

    12 PingID 응답의예 . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    13 고속충돌방지알고리즘의순서도 . . . . . . . . . . . . . . . . . 28

    14 성능분석시뮬레이터 . . . . . . . . . . . . . . . . . . . . . . . . 34

    15 ScrollID 명령어전송횟수 . . . . . . . . . . . . . . . . . . . . . 35

    16 PingID 명령어전송횟수 . . . . . . . . . . . . . . . . . . . . . . 36

    17 전체명령어전송횟수 . . . . . . . . . . . . . . . . . . . . . . . 37

    18 태그인식시간 . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    19 초당태그인식갯수 . . . . . . . . . . . . . . . . . . . . . . . . . 39

    ii

  • 표 차례

    1 예에서사용된태그들의 ID . . . . . . . . . . . . . . . . . . . . . 8

    2 시뮬레이션파라메터 . . . . . . . . . . . . . . . . . . . . . . . . 33

    iii

  • 약 어 표

    EPC Electronic product code

    ITM Identifier tag memory

    MSB Most significant bit

    OPNET Optimized network engineering simulator

    RF Radio frequency

    RFID Radio frequency identification

    UHF Ultra high frequency

    iv

  • 감사의 글

    2년전 기대 반 걱정 반으로 석사 과정을 시작하던 것이 엇그제 같은데 어느

    덧마무리해야될시점이되었습니다. 그동안겪었던경험들은저에게힘든일

    을 극복할 수 있는 용기와 더욱 더 적극적으로 일을 해결할 수 있는 지혜와 열

    정을배울수있도록해주었습니다. 하지만, 석사과정을마무리하는이시점에

    서 제일 먼저 느끼는 감정은 아쉬움인 것 같습니다. 더욱 열심히 하지 못한 것

    에 대한 후회와 미련이 못내 아쉽지만, 저는 이를 거울삼아 더욱 향상된 제 자

    신을만들어야겠다는결심을다시한번마음속으로되새기며앞으로의더나은

    앞날을위하여매진하려합니다.

    때론 엄하게 때론 다정하게 저를 지도해주신 지도교수님, 김재현 교수님께

    진심으로감사의마음을드립니다. 그리고저에게관심을가져주시고, 저의논

    문을 성심 성의껏 심사해주신 오성근 교수님과 이채우 교수님께도 깊은 감사의

    마음을드립니다.

    그리고 2년동안 연구실에 들어와 동고동락하면서 저에게 큰 도움을 준 재룡

    이형, 성민이형, 현진이형, 호승이형, 성진이형, 상민이형, 신헌이, 승환이, 주

    아, 규환이, 성형이, 광춘이에게도감사의말을전하고싶습니다.

    마지막으로 고향에서 저를 위해 항상 기도하시고 계실 아버지, 어머니와 누

    이 동생에게 감사와 사랑의 마음을 전하며, 미쳐 이름을 언급하지 못한 친구들,

    친척들, 친지분들, 모든분들에게감사의마음을갖고이논문을바칩니다.

    v

  • 요 약 문

    Radio Frequency Identification(RFID) 기술은 RF 통신을 이용하여 사물을

    인식하는 기술로써 다양한 분야에서 각광받고 있는 기술이다. 일반적인 RFID

    시스템은 RFID 리더와 수동 태그(Passive tag), 그리고 컨트롤러 등으로 구성

    된다. 수동 태그를 이용하는 RFID 시스템은 수동 태그의 시스템 특성상 많은

    문제를 갖고 있다. 특히 다양한 충돌 문제(collision problem)들이 발생하여 이

    를해결하는충돌방지(anti-collision) 알고리즘이시스템성능을좌우하게되는

    중요한요소중하나가된다.

    본논문에서는 860MHz-930MHz UHF(ultra high frequency) 대역에서동작

    하는 EPC Class 1 RFID 시스템에서 태그 충돌 문제(tag collision problem)를

    해결하기 위한 태그 충돌 방지 알고리즘을 분석하고 새로운 알고리즘을 제안하

    였다. 이를위해직접실험을통하여기존에사용되고있는시스템의충돌방지

    알고리즘을분석하였다. 분석을위해리더무선단의전송파형을관찰하고, 다

    시 명령어의 시퀀스로 바꾸는 방법을 사용하였다. 그리고 분석한 내용을 토대

    로 기존의 알고리즘을 향상시켜 RFID 태그 인식 속도를 향상 시킬 수 있는 새

    로운 ‘고속충돌방지알고리즘’을제안하였다.

    또 기존의 알고리즘과 제안한 알고리즘의 성능을 비교하기 위해 수학적인

    분석을 통하여 각각의 명령어 전송 횟수와 태그 인식 시간을 구하였으며, 시

    뮬레이션을 통하여 수학적인 분석 결과를 검증하였다. 결과에 따르면, 고속 충

    vi

  • 돌 방지 알고리즘이 기존의 알고리즘에 비해 초당 태그 인식속도 면에서 약

    89.2%의 성능 향상을 보였다. 따라서, 제안한 알고리즘을 실제 시스템에 적용

    할경우, 시스템성능이크게향상될것으로기대할수있다.

    vii

  • 제 1 장 서 론

    RFID 기술은다양한영역에서활용될수있는유용한기술이다. 이미유통,

    물류, 국방, 환경, 의료, 항공 등 여러 분야에서 사용되고 있으며, 그 활용 영역

    은 계속 확대되고 있다. 일반적인 RFID 시스템은 리더, 수동 태그, 컨트롤러

    등으로 구성된다. 리더는 전력, 저장 장치 등을 가지고 있어 자신의 전력을 통

    해 인식 영역 안에 있는 태그들에게 무선 통신 채널을 통하여 명령을 전송하여

    이들의 ID나 저장된 정보를 요청한다. 태그는 무선 채널을 통하여 리더로부터

    전력을얻고, 이를간단한내부동작과리더와의통신에사용한다.

    RFID 시스템의 리더는 요청 명령을 브로드캐스트한다. 이 리더의 전송 범

    위 내에 있는 태그들은 명령에 따라 동작하여, 리더에게 응답을 전송하게 된다.

    이러한특수한통신방식때문에, RFID 시스템에서는다양한문제가발생한다.

    가장 심각한 문제 중의 하나로 “충돌 문제”를 들 수 있다. “충돌 문제”는 크게

    “태그 충돌 문제”, “리더-리더 충돌 문제”, “다중 리더-태그 충돌 문제” 등의

    3가지로 나눌 수 있다. 리더가 명령을 브로드캐스팅 했을 때, 만약 하나의 태그

    만이 응답을 전송하게 되면 리더는 그 태그를 인식하게 되지만, 그림 1과 같이

    2개 이상의 태그가 동시에 응답하게 되면, 무선 채널 상에서 충돌이 발생하여

    리더가 이를 인식할 수 없게 된다. 이러한 문제를 “태그 충돌 문제”라고 정의

    한다. 또, 그림 2와같이 2개이상의리더가서로의간섭거리내에있고동시에

    1

  • 그림 1. 태그 충돌 문제

    Fig 1. Tag collision problem

    같은주파수를사용하여통신을시도할때발생하는문제를 “리더-리더충돌문

    제”라고 정의 한다. “리더-리더 충돌 문제”는 “주파수 간섭 문제”라고도 한다.

    세번째충돌문제는그림 3과같이다수의리더가동시에하나의태그와통신을

    시도할때발생하는문제로 “다중리더-태그충돌문제”라고한다. 이러한충돌

    문제들을 해결하는 능력은 RFID 시스템의 성능을 결정하는 중요한 요소 중의

    하나이다 [8],[14].

    본 논문에서는 860MHz-930MHz 대역에서 동작하는 EPC Class 1 RFID

    시스템에서 태그 충돌 문제를 해결하기 위한 태그 충돌 방지 알고리즘을 분석

    하고 새로운 알고리즘을 제안한다. [1]에는 충돌 방지 알고리즘에 대한 자세한

    언급이 없기 때문에 직접 실험을 통하여 기존 시스템의 충돌 방지 알고리즘을

    알아내었다. 이를 위해 리더 무선 단의 전송 파형을 관찰하고, 다시 명령어의

    2

  • 그림 2. 리더-리더 충돌 문제

    Fig 2. Reader-to-reader collision problem

    시퀀스로 바꾸는 방법을 사용하였다. 이렇게 알아낸 기존의 알고리즘의 성능을

    분석하기 위해 수학적인 분석을 통하여 명령어 전송 횟수와 태그 인식 시간을

    구하고 이를 다시 시뮬레이션으로 검증하였다. 이러한 결과를 바탕으로 고속

    충돌방지알고리즘을제안하고, 두알고리즘의성능을수학적인분석과시뮬레

    이션을 통하여 비교한다. 2장에서는 RFID 시스템에서의 태그 충돌 방지를 위

    해 나와있는 기존의 여러 알고리즘들에 대해 살펴보고, 3장에서는 기존의 EPC

    Class 1 시스템에서 실제로 사용되는 알고리즘을 분석한다. 4장에서는 본 논문

    에서 제안하는 고속 충돌 방지 알고리즘을 설명한다. 5장에서는 기존의 알고리

    3

  • 그림 3. 다중 리더-태그 충돌 문제

    Fig 3. Multi-reader-to-tag collision problem

    즘과 제안하는 알고리즘을 분석하고 성능평가를 위한 수학적 분석을 한다. 6장

    에서는 수학적 분석 및 시뮬레이션 결과를 보고 기존 시스템에서의 알고리즘과

    제안한알고리즘의성능을비교하고분석하며 7장에서결론을맺는다.

    4

  • 제 2 장 기존 충돌 방지 알고리즘

    2.1 이진 트리 탐색 알고리즘

    이진트리탐색알고리즘(binary tree search algorithm)은충돌이발생한부

    분을 점차 줄임으로써 전송 가능한 태그의 수를 줄여 충돌을 해결하는 방식이

    다[11]. 리더는 인식 가능한 영역에 있는 모든 태그의 ID를 받아서 충돌이 일어

    나는 bit의 위치를 파악한다. 그 중 충돌이 발생한 최상위 bit가 1인 태그는 전

    송이 지연되고, 충돌이 발생한 최상위 bit가 0인 태그는 ID를 전송한다. 이런

    과정을순차적으로반복수행함으로써하나의태그를인식한다.

    예를 들어 리더가 그림 4에서와 같이 ID가 8 비트인 4개의 태그를 인식하

    기 위해 REQUEST(≤1111111) 명령을 전송하면 ID가 ’11111111’보다 작거나

    같은 값을 가지고 있는 태그들은 모두 자신의 ID를 전송한다. 리더는 태그로

    부터 수신된 ID의 시퀀스를 메모리에 저장한다. 수신된 비트 시퀀스 중 처음

    충돌이 발생한 비트를 0으로 바꾸어 다시 명령을 전송하게된다. 그림 4에서는

    2번째 비트에서 처음 충돌이 발생하였기 때문에 검색범위를 ’≤10111111’로 해

    서 REQUEST 명령을 전송하게 되고 하나의 태그가 남을 때까지 이런 과정을

    반복함으로써 n개의 태그 중 하나를 인식한다. n개의 태그가 존재한다고 할 때

    하나의 태그를 인식하기 위한 기본 이진 탐색 알고리즘의 반복횟수(IBBS)는 식

    5

  • 그림 4. 이진 트리 탐색 알고리즘의 예

    Fig 4. An example of Binary tree search algorithm

    1과같다.

    IBBS =log(n)

    log(2)+ 1. (1)

    2.2 동적 이진 트리 탐색 알고리즘

    이진 탐색 알고리즘에서 태그는 항상 리더에게 모든 ID bit를 전송한다. 따

    라서 ID의 길이가 길어지면 하나의 태그를 인식하기 위해 전송되는 데이터의

    6

  • 그림 5. 동적 이진 탐색 알고리즘의 예

    Fig 5. An example of Dynamic binary search algorithm

    양은 증가하므로 하나의 태그를 처리하는 시간이 증가한다. 동적 이진 트리 탐

    색 알고리즘(dynamic binary search algorithm)은 이를 보완하기 위한 방법으

    로써, 리더는 REQUEST 명령 외에 VB(Valid Bit)를 추가하여 전송한다[? ].

    VB는 충돌이 발생하는 비트의 위치를 의미한다. 예를 들어 리더에 수신된 bit

    시퀀스가 ’X0XX’이면, 리더는 충돌이 발생하는 최상위 비트의 위치를 전송한

    다. 시퀀스 ’X0XX’에서 ’X’는 충돌이 발생하였음을 의미한다. 이때 그 위치의

    7

  • 값이 1인태그는 ID의전송이지연되고 0인태그들은 ID중 VB까지의 bit를제

    외한 나머지 bit를 전송한다. 그림 5와 같은 방식으로 반복과정에서 전송되는

    데이터의 양을 줄여 태그를 인식하는데 소요되는 시간을 줄인다. 동적 이진 탐

    색알고리즘에서하나의태그를인식하기위한반복횟수는기본이진탐색알고

    리즘과 같다. 그러나 데이터의 총 전송량은 기본 이진 탐색 알고리즘과 비교할

    때 50%까지 줄일 수 있기 때문에 태그를 인식는데 소요되는 시간을 줄일 수 있

    다.

    2.3 슬롯 단위 이진 트리 알고리즘

    리더가 태그에게 전송요구를 하면 응답한 태그들은 랜덤하게 0과 1을 선택

    함으로써 두 개의 그룹으로 나누어진다. 만일 리더가 i번째 슬롯에서 태그에게

    전송을 요구하면 모든 태그들은 i번째 슬롯에서 자신의 ID를 전송한다. 리더의

    표 1. 예에서 사용된 태그들의 ID

    Table 1. IDs of the used tags in examples

    Tag ID

    Tag1 0001

    Tag2 0010

    Tag3 1010

    Tag4 1011

    8

  • 그림 6. 슬롯 단위 이진 트리 알고리즘의 예

    Fig 6. An example of slotted binary tree algorithm

    전송 요구에 응답한 태그 중 0을 선택한 그룹의 태그들은 i+1번째 슬롯에서 전

    송을 시도하고 1을 선택한 그룹의 태그들은 0을 선택한 그룹의 태그들이 모두

    성공적으로 ID를 전송할 때까지 기다리게 된다. i+1번째 슬롯이 idle 슬롯이거

    나 성공적으로 전송을 하게 되면 1을 선택한 두 번째 그룹의 태그들은 i+2번째

    슬롯에서 재전송을 하게 된다. 여기서 idle 슬롯이란 태그로부터의 전송이 없는

    슬롯을 의미한다. 그러나 i+1번째 슬롯에서 또다시 충돌이 발생하게 되면 다

    시 랜덤하게 0 또는 1을 선택하여 또 다른 두 개의 하위 그룹으로 나누어진다.

    이런 과정을 반복적으로 수행함으로써 모든 충돌을 해결할 수 있게 된다. 그림

    6은 표 2.2에 표시된 4개의 태그를 인식하기 위한 기본 슬롯단위 이진 트리 알

    고리즘의진행순서를나타낸다.

    그림 6에서, ’X’는 리더의 요구에 응답한 태그의 개수가 2개 이상 이라서 충

    돌이 발생했음을 의미하고, ’I’는 idle 슬롯을 의미하며, ’S’는 리더의 요구에 응

    9

  • 그림 7. 수정된 슬롯 단위 이진 트리 알고리즘의 예

    Fig 7. An example of slotted binary tree algorithm

    답한 태그의 개수가 1개라서 성공적인 전송이 이루어졌음을 의미한다. 슬롯단

    위 이진 트리 알고리즘에서 n개의 태그를 해결하기 위한 반복횟수(IBBSBT )는

    식 2와같다[10].

    IBSBT = 1 +n∑

    k=2

    nk

    2 (k − 1) (−1)k[

    1 − pk − (1 − p)k] (2)

    이때, p는태그가 0 또는 1을선택할확률로 0.5이다.

    2.4 수정된 슬롯단위 이진 트리 알고리즘

    기본 슬롯 단위 이진 트리 알고리즘에서 각 태그들이 0 또는 1을 선택할

    때 모두 0을 선택하거나 1을 선택하게 되면 idle상태가 존재하게 되는데, 수정

    된 슬롯 단위 이진 트리 알고리즘(modified slotted binary tree algorithm)은

    ternary feedback을이용하여 idle 슬롯을제거함으로써충돌해결과정을좀더

    10

  • 그림 8. Bit-by-bit 이진 트리 알고리즘의 예

    Fig 8. An example of bit-by-bit binary tree algorithm

    빠르게할수있다[10]. 7는표 2.2에표시된 4개의태그를인식하기위한 modi-

    fied 슬롯단위이진트리알그림고리즘의진행순서를나타낸다.

    그림 7에서는슬롯단위이진트리알고리즘(그림 6)의 idle 슬롯이제거되어

    반복횟수가 1회 줄어든 것을 확인할 수 있다. Modified 슬롯단위 이진 트리 알

    고리즘에서 n개의태그를해결하기위한반복횟수(IMSBT )는식 3과같다[10].

    IMSBT = 1 +n∑

    k=2

    nk

    (−1)k

    [k (1 + p) − 1 − pk

    ][1 − pk − (1 − p)k]

    . (3)

    이때, p는슬롯단위이진트리알고리즘과동일하다.

    2.5 Bit-by-bit 이진 트리 알고리즘

    EPCglobal에서제안한 CLASS 0 bit-by-bit이진트리알고리즘에서[2],[7],[12],

    리더가인식할수있는영역내의모든태그들에게 ID 중원하는비트를순서대

    11

  • 로요청하게되면모든태그들은리더의요구에대한응답으로 0 또는 1을전송

    한다. 충돌이 발생 하지 않으면 리더는 태그로부터 받은 비트를 메모리에 저장

    한 후 다음 비트를 요청하게 된다. 그러나 충돌이 발생하면 리더는 알고리즘에

    의해 0 또는 1을가진그룹중에서하나의그룹을선택하고다음비트를요청하

    게된다. 예를들면, 리더가인식할수있는범위내의모든태그에게 ID의 k번

    째 비트 전송요구(k의 초기값은 1)를 하게 되면 모든 태그들은 리더의 요구에

    대한 응답으로 k번째 비트를 전송하게 된다. 태그로부터 받은 k번째 비트가 충

    돌이발생하지않으면 k번째비트를메모리에저장한후다음비트의전송을요

    구한다. 그러나 충돌이 발생하면 메모리에 임의로 k번째 비트를 0으로 저장한

    후 다음 비트의 전송요구와 함께 k번째 비트가 1인 모든 태그를 inactive 상태

    로 만든다. inactive 상태란 알고리즘 수행 중 충돌이 발생했을 때 충돌이 발생

    한비트가 1인태그들이일시적으로리더의다음비트전송요구에응답하지않

    는대기상태가되는것을말한다. 하나의태그가인식되면리더는 inactive 상태

    의 태그들을 리더의 전송요구에 응답할 수 있는 active 상태로 만든다. 이런 과

    정을태그의 ID길이만큼반복함으로써하나의태그를인식하게된다.

    그림 8은 bit-by-bit 이진 트리 알고리즘을 사용하여 표 2.2에 표시된 4개

    의 태그를 인식하기 위한 과정을 나타낸 것이다. 이 때, 4개의 태그를 인식하기

    위한 반복횟수는 16회(4×4 비트)이다. 만일 n개의 태그가 존재하고 각 태그의

    ID가 j 비트라면 모든 태그를 인식하기 위해 필요한 반복횟수(IBBT )는 식 4와

    12

  • 같다.

    IBBT = n × j (4)

    13

  • 제 3 장 EPC Class 1 충돌 방지 알고리즘

    본 장에서는 기존에 사용되고 있던 RFID 시스템에서의 태그 충돌 방지 알

    고리즘에대해논의한다. 실제태그인식절차에서사용되는태그충돌방지알

    고리즘을파악하기위해기존의시스템을실험적인방법으로분석하였다.

    3.1 EPC Class 1 시스템

    EPC Class 1 시스템에서는 리더가 태그를 인식 할 때, 명령어와 prefix 비

    트를 브로드캐스트한다. 리더의 인식 영역 내에 있는 태그들 중 prefix가 일치

    하는 태그들은 명령어에 해당하는 응답하게 된다. EPC CLASS 1 system에서

    PingID 명령어와 ScrollID 명령어가 가장 중요한 명령어들이다. PingID 명령

    어는 충돌이 발생 했을 때 다수의 태그들을 구분하기 위해 전송되고, ScrollID

    명령어는 태그를 인식하기 위해 전송된다. PingID 명령어를 전송 받은 태그 중

    prefix가일치하는태그들은자신의 identifier tag memory(ITM) 중 prefix 다음

    부터 저장된 8 비트로 응답한다. 이때 8 비트 중 최상위 3비트에 해당하는 bin

    slot(time slot) 동안응답을보내게된다. 그림 9는 PingID 응답타이밍을나타

    낸 그림이다[4]. 또 하나의 중요한 명령어인 ScrollID는 전체 ITM을 전송하라

    는 명령어이다. 또한 기존의 시스템에서는 이 두 명령어들을 성공적인 태그 인

    식이 이루어진 이후에 확인을 위한 용도로 다시 전송하게 된다. EPC Class 1

    시스템에서사용되는명령어들을정리해보면다음과같다.

    14

  • • ScrollAllID: 명령을받은모든태그들이응답을하게된다. 8 비트 pream-

    ble을시작으로 CRC와전체태그 ID코드가Most Significant Bit (MSB)부

    터전송된다.

    • ScrollID: 명령을 수신한 태그 중 [PTR] 위치의 비트부터 [VALUE] 값

    이 일치하는 태그들이 응답을 하게 된다. 8 비트 preamble을 시작으로

    CRC와전체태그 ID 코드가 MSB부터전송된다.

    • PingID:명령을수신한태그중 [PTR]위치의비트부터 [VALUE]값이일

    치하는 태그들이 응답을 하게 된다. [PTR]부터 시작하여 8 비트 정보를

    이용하여응답하게되는데이때, 그림 9과같은 8개의 bin slot 중 PingID

    응답의 MSB 3비트에해당하는 bin slot 동안응답하게된다.

    • Quiet: 명령을 수신한 태그 중 [PTR] 위치의 비트부터 [VALUE] 값이 일

    치하는태그들이 Quiet 모드로전환된다. Quiet 모드가된태그들은새로

    운 Talk 명령을받기전까지는리더의명령에응답하지않게된다.

    • Talk: 명령을 수신한 태그 중 [PTR] 위치의 비트부터 [VALUE]값이 일

    치하는 태그들이 Active 모드로 전환된다. Active 모드가 된 태그들은

    Quiet 명령을 받기 전까지는 리더로부터 응답을 받았을 때 이에 응답하게

    된다.

    • Kill: CRC와 태그 ID, 8 비트 Password까지 모든 [VALUE] 값이 일치하

    는 태그들은 영구적으로 동작을 정지하고, 리더의 명령에 응답하지 않는

    15

  • 그림 9. PingID 응답 타이밍

    Fig 9. PingID response timing

    다.

    3.2 EPC Class 1 시스템에서의 충돌 방지 알고리즘

    EPC Class 1 RFID 시스템에서는 리더의 인식 범위 내의 태그들을 8개의

    가지들로 이루어지는 이진 트리 구조에 따라 인식한다. 그림 9에 나타난 것처

    럼 bin slot이 8개이기 때문에 그림 10의 트리 구조는 각 노드가 8개의 가지를

    갖게 된다. 그림 10는 리더의 인식 범위 내에 5개의 태그가 존재할 때의 예이

    다. 선에 표시된 이진수는 태그 ID를 나타내며, 노드 안에 표시된 숫자는 같

    은 prefix를 가진 태그의 수를 나타낸다. 이 숫자가 1이면 그 노드에 해당하는

    prefix로 명령어를 전송해 태그를 인식할 수 있고, 2 이상이면 충돌이 발생하기

    때문에태그를인식할수없게된다. EPC Class RFID 시스템의상세한동작은

    그림 11의순서도에표시하였고, 이를정리해보면다음과같다.

    1. 리더는 prefix ‘0’과 ‘1’로 번갈아 가면서 3번씩 Talk 명령을 브로드캐스팅

    하여인식영역내의태그들을 active 상태로만든다.

    16

  • 2. 다음으로 리더가 ScrollAllID 명령을 브로드캐스팅하면, 주변에 active 상

    태가 된 모든 태그들은 자신의 전체 identifier tag memory(ITM)을 전송

    한다.이때 3 가지경우가발생할수있다.

    A. 리더의 인식 영역 안에 태그가 하나도 없기 때문에 응답이 없다. 따

    라서 리더는 새로운 태그가 들어왔는지 확인하기 위해 주기적으로

    ScrollAllID 명령을반복하여브로드캐스팅한다.

    B. 하나의 태그만이 존재할 경우, 태그의 응답에서 충돌이 발생하지 않

    아리더가그태그를인식한다. 그리고, 태그를 inactive 상태로만들

    고주기적으로 ScrollAllID 명령을반복한다.

    C. 만약, ScrollAllID 응답에서 충돌이 발생할 경우, 리더는 PingID 명

    령으로 써서 이를 해결 하게 된다. 처음에는 그림 10에서 depth가

    0인 PingID 명령어를 보낸다. 바꾸어 말하면, prefix를 1 비트로 설

    정([PTR]=0, [LEN]=1)한다. 먼저, [VALUE]=0으로 PingID 명령을

    전송하여 ITM의 most significant bit(MSB)가 0인 태그들을 인식한

    다.

    (1) PingID 응답의 bin slot들에 응답이 있을 경우, 리더는 이를

    Bin 0부터 Bin 7까지 순차적으로 처리하게 된다. 응답이 있

    었던 bin slot에는 bin slot에 해당하는 값 만큼 prefix를 늘

    려서 ScrollID를 전송한다. 즉, [PTR]=0, [LEN]=[LEN]+3,

    [VALUE]=[VALUE|(3-bit bin slot number)]로 설정하여 Scrol-

    17

  • lID를전송한다.

    A. 만약 ScrollID 명령에 대한 응답에서 충돌이 없다면, 하나의

    태그 만이 응답한 것이기 때문에 리더는 그 태그를 인식하

    고, Quiet 명령을통해 inactive 상태로만든다. 그리고 inac-

    tive 상태를 확인하기 위해, 태그를 인식하였던 prefix로 다

    시한번 ScrollID 명령을전송하게된다.

    B. 하지만, 만약 ScrollID 응답에서 충돌이 발생 한다면, 리더

    는 그 bin slot에 해당하는 prefix를 가진 태그가 여러개 존

    재한다는 것을 알 수 있다. 따라서, depth가 1인 PingID

    명령어를 전송하여 이를 구분한다. 이 때, PingID 명령의

    prefix는 ScrollID 명령의 prefix와 마찬가지로 [PTR]=0,

    [LEN]=[LEN]+3, [VALUE]=[VALUE|(3-bit bin slot num-

    ber)]가된다.

    (2) 8개의 bin slot에대한인식이모두끝날경우, 각각의 bin slot들

    에 해당하는 태그들을 모두 읽었는지 확인을 위한 PingID 명령

    을다시한번브로드캐스팅한다. 이때, PingID명령의 prefix는

    태그들을 인식 할 수 있었던 ScrollID 명령의 prefix와 마찬가

    지로 [PTR]=0, [LEN]=[LEN]+3, [VALUE]=[VALUE|(3-bit bin

    slot number)]가된다.

    (3) 8개의 bin slot에대한확인절차까지마치고난후, prefix를 3비

    18

  • 그림 10. EPC Class 1 시스템에서의 이진 트리 구조의 예

    Fig 10. An example of binary tree structure of EPC Class 1 system

    트 줄여서 이전 depth의 다음 bin slot에 대한 명령어를 브로드

    캐스팅하여남은태그들을인식하게된다.

    (4) MSB가 0인 태그들을 모두 인식하였다면, [PTR]=0, [LEN]=1,

    [value]=1로 설정하고 2c로 돌아가 depth가 0인 PingID 명령어

    를보내어 MSB가 1인태그들에대한인식을시작한다.

    (5) 리더의 인식 영역 내의 모든 태그에 대한 인식이 끝났을 경우,

    2로돌아가 ScrollAllID 명령브로드캐스팅을반복한다.

    본논문에서는 Alien Technology Corporation의 ALR-9780을기존의시스템

    으로 선정하였다. Alien Technology Corporation은 RFID 시장에서 가장 큰 부

    분을 차지하는 회사 중 하나이다. 기존의 EPC Class 1 시스템에서 사용 하고

    19

  • 있는 충돌 방지 알고리즘에서 특징적인 점을 정리해보면 3가지 정도로 요약할

    수있다.

    1. bin slot에 응답이 있을 경우 리더가 무조건 그 bin slot에 해당하는 pre-

    fix를가진태그들에게전체 ITM의전송을요구한다.

    2. 모든 성공적인 태그 인식 이후에는 확인을 위한 2개의 명령어 전송이 이

    루어진다.

    3. 태그 인식 과정에서 ITM의 구조가 중요한 역할을 한다. ITM의 태그

    ID부분 앞에 Cyclic Redundency Check(CRC) 부분이 위치하기 때문에

    인식할 태그들의 ID가 순차적으로 분포되어있건, 랜덤하게 분포되어있건

    상관없이태그 ITM들은랜덤하게분포하게된다.

    다음절에서는기존의 EPC Class 1 시스템에서사용되는충돌방지알고리즘을

    개선하는새로운충돌방지알고리즘을제안한다.

    20

  • 그림 11. EPC Class 1 충돌 방지 알고리즘의 순서도

    Fig 11. Flow chart of the anti-collision algorithm of EPC Class 1 system

    21

  • 제 4 장 고속 충돌 방지 알고리즘

    본 논문에서는 기존의 EPC Class 1 RFID 시스템에서 사용되는 태그 충돌

    방지 알고리즘을 개선하기 위한 고속 충돌 방지 알고리즘을 제안한다. 고속 충

    돌 방지 알고리즘은 리더가 PingID 응답에서 bin slot 동안 들어오는 8 비트의

    응답 신호에서 충돌 정보를 알 수 있다는 가정 하에 제안되었다. bin slot 동안

    동시에 여러 개의 태그가 응답할 경우에 다수의 8비트 신호가 동시에 들어오게

    된다. 예를 들면, 그림 12와 같이 2개의 태그가 동시에 PingID응답을 할 경우

    bin slot 010에 두 신호가 들어온다. 이 때, 충돌을 감지하기 위해서는 다양한

    방법이이용될수있다. 가능한방법으로는먼저 bin slot상에신호가감지되지

    만, 8-bit의 심벌로 디코딩이 되지 않을 때에 충돌 혹은 전송 오류라고 볼 수 있

    다. 또, 다수의 신호가 다른 지연 시간을 통해 전송되어 실제 8비트를 전송 받

    을 때의 신호보다 긴 신호가 들어올 경우 충돌이 났음을 알 수 있다. 마지막으

    로 매우 특별한 경우이긴 하지만, 신호의 세기가 매우 셀 경우 충돌이 발생했다

    고볼수있다.

    그림 13은 고속 충돌 방지 알고리즘의 순서도이다. 고속 충돌 방지 알고리

    즘의 메인 아이디어는 기존의 알고리즘과는 달리 8개의 bin slot에 들어오는 응

    답에서 충돌 유무에 따라 리더가 다른 동작을 취하는 것이다. bin slot에 충돌

    이 있을 경우, 기존의 알고리즘과는 달리 바로 PingID를 전송하여 다수의 태그

    22

  • 그림 12. PingID 응답의 예

    Fig 12. An example of PingID responses

    를 구분하여 인식하게 된다. bin slot에 충돌이 없을 경우에는 기존의 알고리즘

    과마찬가지로 ScrollID를전송한다. 또한고속충돌방지알고리즘에서는기존

    의알고리즘에서존재하던각각의태그인식이후의확인을위한추가적인명령

    어 전송을 생략하였다. 인식 과정에서 누락된 태그들은 반복되는 다음 인식 절

    차에서인식되기때문에확인절차를생략하는것이시스템성능상의심각한저

    하를 일으키지는 않는다. 그림 13에 표시한 고속 충돌 방지 알고리즘을 정리해

    보면다음과같다.

    23

  • 1. 리더는 prefix ‘0’과 ‘1’로 번갈아 가면서 3번씩 Talk 명령을 브로드캐스팅

    하여인식영역내의태그들을 active 상태로만든다.

    2. 다음으로 리더가 ScrollAllID 명령을 브로드캐스팅하면, 주변에 active 상

    태가 된 모든 태그들은 자신의 전체 identifier tag memory(ITM)을 전송

    한다.이때 3 가지경우가발생할수있다.

    A. 리더의 인식 영역 안에 태그가 하나도 없기 때문에 응답이 없다. 따

    라서 리더는 새로운 태그가 들어왔는지 확인하기 위해 주기적으로

    ScrollAllID 명령을반복하여브로드캐스팅한다.

    B. 하나의 태그만이 존재할 경우, 태그의 응답에서 충돌이 발생하지 않

    아리더가그태그를인식한다. 그리고, 태그를 inactive 상태로만들

    고주기적으로 ScrollAllID 명령을반복한다.

    C. 만약, ScrollAllID 응답에서 충돌이 발생할 경우, 리더는 PingID 명

    령으로 써서 이를 해결 하게 된다. 처음에는 그림 10에서 depth가

    0인 PingID 명령어를 보낸다. 바꾸어 말하면, prefix를 1 비트로 설

    정([PTR]=0, [LEN]=1)한다. 먼저, [VALUE]=0으로 PingID 명령을

    전송하여 ITM의 most significant bit(MSB)가 0인 태그들을 인식한

    다.

    (1) PingID 응답의 bin slot들에 응답이 있을 경우, 리더는 이를 Bin

    0부터 Bin 7까지 순차적으로 처리하게 된다. 이때, 기존의 EPC

    24

  • Class 1 시스템에서사용하는태그충돌방지알고리즘과는달리

    bin slot에충돌이있을경우와없을경우에동작이다르다.

    A. bin slot에 충돌이 없이 응답이 들어왔을 경우, bin slot에 해

    당하는 값 만큼 prefix를 늘려서 ScrollID를 전송한다. 즉,

    [PTR]=0, [LEN]=[LEN]+3, [VALUE]=[VALUE|(3-bit bin

    slot number)]로설정하여 ScrollID를전송한다. ScrollID 응

    답에 충돌이 없을 경우, 하나의 태그 만이 응답한 것이기

    때문에 리더는 그 태그를 인식하고, Quiet 명령을 통해 in-

    active 상태로 만든다. ScrollID 응답에 충돌이 있을 경우,

    이 bin slot에는 8 비트 정보가 동일한 다수의 태그가 동시

    에 응답을 한 것이기 때문에 이를 구분하기 위해 PingID 명

    령을 이전의 PingID 명령의 prefix보다 8 비트 늘려서(이

    전 ScrollID 명령보다 5 비트 늘려서) 브로드캐스팅한다.

    즉, [PTR]=0, [LEN]=[LEN]+5, [VALUE]=[VALUE|(5-bit

    response in the bin slot)]로설정하여브로드캐스팅한다.

    B. 만약, bin slot에 충돌이 있을 경우 binslot 번호에 해당하

    는 3 bit가 동일한 다수의 태그가 응답한 것이기 때문에, 이

    를 구분하기 위하여 새로운 PingID 명령을 전송하게 된다.

    이때, PingID 명령의 prefix는 [PTR]=0, [LEN]=[LEN]+3,

    [VALUE]=[VALUE|(3-bit bin slot number)]가된다

    25

  • (2) 8개의 bin slot에대한인식이모두끝날경우, prefix를 3비트줄

    여서이전 depth의다음 bin slot에대한명령어를브로드캐스팅

    하여남은태그들을인식하게된다.

    (3) MSB가 0인 태그들을 모두 인식하였다면, [PTR]=0, [LEN]=1,

    [value]=1로 설정하고 2c로 돌아가 depth가 0인 PingID 명령어

    를보내어 MSB가 1인태그들에대한인식을시작한다.

    (4) 리더의 인식 영역 내의 모든 태그에 대한 인식이 끝났을 경우,

    2로돌아가 ScrollAllID 명령브로드캐스팅을반복한다.

    본 절에서는 기존의 EPC Class 1 시스템에서 사용 하고 있는 충돌 방지 알

    고리즘을 개선하기 위한 ‘고속 충돌 방지 알고리즘’을 제안하였다. ‘고속 충돌

    방지알고리즘’의특징적인점을정리해보면 2가지정도로요약할수있다.

    1. bin slot에 응답이 있을 경우 리더가 무조건 그 bin slot 동안 응답에서의

    충돌유/무에따라충돌이없을경우바로태그를인식하지만, 충돌이있

    을 경우 다수의 태그가 응답했다고 판단하고 바로 이를 구분하기 위한 동

    작을한다.

    2. 기존의 EPC Class 1 시스템에서 반복해서 수행하던 확인을 위한 명령어

    전송을 생략하여 전체 태그 인식 속도를 향상시켰다. 리더가 반복해서 인

    식 영역 내의 태그들을 인식하기 때문에 인식 과정에서 누락된 태그는 다

    음 반복되는 인식 과정에서 인식이 이루어지게 되어 전체 시스템 신뢰성

    에큰영향을미치지않는다.

    26

  • 다음 장에서는 제안한 태그 충돌 방지 알고리즘과 기존의 EPC Class 1 시스템

    에서사용되는충돌방지알고리즘의성능을수학적으로분석하였다.

    27

  • 그림 13. 고속 충돌 방지 알고리즘의 순서도

    Fig 13. Flow chart of the fast anti-collision algorithm

    28

  • 제 5 장 성능 분석

    이 장에서는 기존의 알고리즘과 제안하는 고속 충돌 방지 알고리즘의 성능

    을 분석한다. 이를 위한 성능 지표로 태그 인식 시간과 명령어 전송 횟수를 구

    한다. 먼저, 태그인식시간( Tidentification)은

    Tidentification = CW × ntotal +breader

    DRreader+

    btagDRtag

    , (5)

    이때, CW는 continuous wave를전송하는데걸리는시간이고, ntotal은모든태

    그를인식하는동안의전체명령어전송횟수, breader는리더로부터전송되는전

    체 비트 수, DRreader는 reader-to-tag 전송률이다. btag는 태그로부터 전송되는

    전체 비트 수이고 DRtag는 tag-to-전송률이다. breader와 btag를 구하기 위해서

    다음 두 장에서 기존의 알고리즘과 제안하는 알고리즘에서의 명령어 전송 횟수

    를구하였다. 수학적인방법은 [7],[6]과유사한방법을사용하였다.

    5.1 EPC Class 1 시스템의 충돌 방지 알고리즘

    우선 depth가 k인 ScrollID와 PingID전송횟수를각각 ISk와 IP k(k =1,2,3,…)

    라고하자. 이들을구하기위해응답에서생길수있는경우들의확률을구하였

    다. PingID 응답을 받았을 때, bin slot에 응답이 있을 경우 기존의 알고리즘에

    서는 ScrollID 명령을 전송한다. bin slot에 응답이 있을 확률(Presponse)을 구하

    29

  • Presponse = 1 −(

    r − 1r

    )n, (6)

    이다. 이때, r은 bin slot의 개수이고 n은 인식할 태그의 개수이다. 만약 하나

    의 bin slot 동안 하나의 태그만이 응답을 전송했다면, ScrollID 응답에서도 충

    돌 없이 태그를 인식하고 확인을 위한 ScrollID를 전송 할 것이다. 하나의 bin

    slot 동안하나의태그만이응답할확률(Pnocoll)은

    Pno coll = n(

    r − 1r

    )n−1· 1r, (7)

    또, m을 전체 태그의 수, nbin을 이진 트리 구조에서의 k depth에 해당하는 노

    드의수라고하면 ISk는

    ISk = nbin × Presponse + nbin × Pno coll

    = 2rk ×[1 −

    (r − 1

    r

    ) m2rk−1

    +m

    2rk−1

    (r − 1

    r

    ) m2rk−1

    −1· 1r

    ]. (8)

    만약, 하나의 bin slot 동안 2개이상의태그가동시에응답을하였다면 ScrollID

    응답에서 충돌이 발생할 것이고, 리더는 다시 PingID를 전송할 것이다. Scrol-

    lID 응답에서충돌이발생할확률(Pcoll)은

    Pcoll = Presponse − Pno coll = 1 −(

    r − 1r

    )n− n

    (r − 1

    r

    )n−1· 1r

    (9)

    이다. 그리고 8개의 bin slot들에대한인식이끝났을경우, 확인을위해마지막

    에 태그를 인식했던 prefix들로 PingID 명령어를 전송한다. IPk는 다음과 같이

    구할수있다.

    IPk = [nbin × Pcoll]k=k + [nbin × Pno coll]k=k−1

    30

  • = 2rk ×[1 −

    (r − 1

    r

    ) m2rk−1

    − m2rk−1

    (r − 1

    r

    ) m2rk−1

    −1· 1r

    ]

    + 2rk−1 ×[

    m

    2rk−2

    (r − 1

    r

    ) m2rk−2

    −1· 1r

    ]. (10)

    식 10에서앞의 k = k 부분은 k depth에대한 PingID 명령어전송을의미하고,

    뒤의 k = k + 1 부분은 k + 1 depth에대한 PingID 명령어전송을나타낸다. 계

    산 과정에서 각 노드에서 태그 수의 기대 값이 1보다 작을 경우 남은 태그들에

    대한모든인식이완료된다고가정하였다.

    5.2 제안하는 충돌 방지 알고리즘

    제안한 알고리즘에서는 하나의 bin slot 동안 응답이 있고, 충돌이 없을 경

    우 ScrollID 명령어를 전송한다. 이러한 경우는 2가지 경우가 있는데, 하나는

    한 개의 태그만이 응답한 경우, 다른 하나는 다수의 태그들이 같은 8 비트로 응

    답한경우이다. 하나의태그만이응답할확률(Ptag 1))은식 11과같다.

    Ptag 1 = n(

    r − 1r

    )n−1· 1r. (11)

    또, 2개이상의태그가응답할확률, Ptag≥2는식 12과같이구할수있다.

    Ptag≥2 = 1 −(

    r − 1r

    )n− n

    (r − 1

    r

    )n−1· 1r. (12)

    PingID 응답을할때, 각각의태그들은 8비트응답중최상위 3비트에해당하는

    bin slot 동안 응답한다. 따라서 같은 bin slot에 다수의 태그들이 응답해서 bin

    slot 내의충돌이발생하지않을확률Pbin no coll은식 13와같다.

    Pbin no coll =(

    1

    25

    )n, n ≥ 2. (13)

    31

  • bin slot에서충돌이없었지만, ScrollID응답에서충돌이발생할확률은 Pbin no coll이

    고, 리더는이경우다음 depth의 PingID를전송한다. 계산에서는 Pbin no coll이

    무시할 수 있을 정도로 작기 때문에 생략하였다. 따라서, k depth의 ScrollID

    명령어전송횟수, ISk는식 14과같다.

    ISk = nbin × (Ptag 1 + Ptag≥2 × Pbin no coll)

    ≈ nbin × Ptag 1

    = 2rk ×[

    m

    2rk−1

    (r − 1

    r

    ) m2rk−1

    −1· 1r

    ]. (14)

    마찬가지로, k depth의 PingID 명령어 전송 횟수, IPk는 식 15과 같이 구할 수

    있다.

    IPk = nbin × Ptag≥2 × (1 − Pbin no coll)

    ≈ nbin × Ptag≥2

    = 2rk ×[1 −

    (r − 1

    r

    ) m2rk−1

    − m2rk−1

    (r − 1

    r

    ) m2rk−1

    −1· 1r

    ]. (15)

    32

  • 제 6 장 수학적 분석 및 시뮬레이션 결과

    제안한 고속 충돌 방지 알고리즘과 기존의 알고리즘의 성능을 비교하고,

    이를 시뮬레이션을 통해 검증하였다. 성능분석 시뮬레이터는 그림 14과 같이

    OPNET을사용하여구현하였고, 표 1은수학적인분석과시뮬레이션에서사용

    한파라메터들이다[1],[5]. 태그수는 50개부터 500개까지의경우를고려하였다.

    수학적분석에서는태그 ID가랜덤하게분포되었다고가정하였고, 시뮬레이션

    에서는순차적인경우와랜덤한경우를모두고려하였다.

    표 2. 시뮬레이션 파라메터

    Table 2. Simulation parameters

    Parameter Value

    CW 0.064 msec

    master clock interval (T0) 0.025 msec

    DRreader (1/T0) 40 kbps

    DRtag (2/T0) 80 kbps

    Transaction gap(1.25T0) 0.3125 msec

    Tag setup period (8T0) 0.2 msec

    Tag response period (64T0) 1.6 msec

    33

  • 그림 14. 성능분석 시뮬레이터

    Fig 14. Simulator for performance analysis

    수학적인 분석과 시뮬레이션 결과들을 그림 15부터 그림 19까지 나타내었

    다. 그림에서 선으로 표시된 부분은 수학적 분석결과이고, 심벌로 나타낸 부분

    은 시뮬레이션 결과이다. 수학적 분석 결과가 시뮬레이션 결과와 유사함을 확

    인 할 수 있다. 또, 태그 ID들의 분포가 랜덤 할 경우와 순차적일 경우의 시뮬

    레이션결과값들도매우유사함을볼수있는데, 그이유는 ITM에서태그 ID부

    34

  • 그림 15. ScrollID 명령어 전송 횟수

    Fig 15. Number of ScrollID command transmission

    분 앞에 CRC부분이 위치하기 때문에 태그 ID가 순차적으로 분포하더라도 전

    체 ITM은거의랜덤하게분포하게되기때문이다.

    그림 15는 인식 태그 수에 따른 리더의 ScrollID 명령 전송 횟수이다. 전

    송 횟수가 전체 태그 수에 따라 거의 선형적으로 증가하는 것을 관찰할 수 있

    다. 그림 15 500개의 태그를 인식하는 동안 기존의 알고리즘을 사용할 경우 약

    1210번의 ScrollID 명령어 전송이 이루어지며, 제안하는 알고리즘을 사용할 경

    우 약 500번의 번의 ScrollID 명령어 전송이 이루어짐을 알 수 있다. 이를 비율

    35

  • 그림 16. PingID 명령어 전송 횟수

    Fig 16. Number of PingID command transmission

    로 계산해 볼 경우 약 58.68%의 ScrollID 명령어 전송이 줄어들었다는 것을 확

    인할 수 있다. 이는 bin slot에서의 충돌 정보를 이용하고 또, 반복되는 확인을

    위한 명령어 전송을 생략함으로서 ScrollID 전송 횟수가 감소했음을 의미한다.

    또, 그림 16에서 전체 태그 수에 따른 리더의 PingID 명령어 전송 횟수를 살펴

    보면, PingID 명령어 전송 횟수 역시 ScrollID 명령어 전송 횟수와 마찬가지로

    거의 선형적으로 증가하는 것을 확인할 수 있다. 예를 들면 500개의 태그를 인

    식하는 동안, 기존의 알고리즘을 사용하는 리더는 약 710번의 PingID 명령어

    36

  • 그림 17. 전체 명령어 전송 횟수

    Fig 17. Number of total command transmission

    전송을 하는 반면, 제안하는 알고리즘을 사용하는 리더는 약 210번의 PingID

    명령어 전송만으로 전체 태그를 인식할 수 있게 된다. 약 70.42%의 PingID 명

    령어 전송이 줄어든다. PingID 명령어의 경우, 태그 인식 후 확인을 위한 명령

    어 전송은 줄어들었지만, 그 외의 전송횟수는 기존의 알고리즘과 동일하다. 그

    림 17은전체명령어전송횟수를나타낸다. 마찬가지로전체명령어전송횟수

    도 전체 태그 수에 따라 거의 선형적으로 증가한다. 이는 bin slot에서의 충돌

    정보를 이용함으로써 ScrollID 전송 횟수가 감소했음을 의미한다. 500개의 태

    37

  • 그림 18. 태그 인식 시간

    Fig 18. Tag identification time

    그를 인식하기 위해서 기존의 알고리즘을 사용하는 리더의 경우 2410번의 명령

    어 전송이 필요하지만, 제안하는 알고리즘의 경우 약 1200번의 명령어 전송만

    이필요하여약 50.21%의명령어전송을줄일수있었다.

    그림 18은 리더가 전체 태그를 인식하는데 걸리는 시간을 나타낸 그림이다.

    500개의 태그를 인식하는데 기존의 알고리즘을 사용할 경우 약 8.9초의 시간이

    소요되며, 제안하는 알고리즘을 사용할 경우 약 4.7초가 소요됨을 알 수 있다.

    약 47.19%의시간이절약된다. 태그인식시간를바꾸어계산해보면그림 19와

    38

  • 그림 19. 초당 태그 인식 갯수

    Fig 19. Tag identification per second

    같이 초당 태그 인식 갯수를 알 수 있다. 초당 태그 인식 갯수를 보면, 기존의

    알고리즘을사용할경우초당약 56개의태그를인식할수있지만, 제안하는알

    고리즘을 사용할 경우 초당 약 106개의 태그를 인식할 수 있음을 알 수 있다.

    제안하는 알고리즘이 기존의 알고리즘에 비해 초당 태그 인식 속도 면에서 약

    89.2%의성능향상을보임을알수있다.

    본 장에서는 기존의 EPC Class 1 시스템에서 사용하는 충돌 방지 알고리즘

    과제안하는고속충돌방지알고리즘의성능을수학적분석결과와시뮬레이션

    39

  • 결과를 통하여 비교 분석해보았다. 분석 결과 제안하는 고속 충돌 방지 알고리

    즘을 사용할 경우 상당한 성능 향상이 있음을 알 수 있었다. 다음 장에서는 결

    론을맺도록한다.

    40

  • 제 7 장 결론

    본 논문에서는 860MHz-930MHz 대역에서 동작하는 EPC Class 1 RFID 시

    스템에서 태그 충돌 문제를 해결하기 위한 태그 충돌 방지 알고리즘을 분석하

    고 새로운 알고리즘을 제안하였다. 이를 위해 직접 실험을 통하여 기존 시스템

    의 충돌 방지 알고리즘을 알아내었다. 이를 위해 리더 무선 단의 전송 파형을

    관찰하고, 다시 명령어의 시퀀스로 바꾸는 방법을 사용하였다. 그리고 분석한

    내용을 토대로 기존의 알고리즘을 향상시켜 RFID 태그 인식 속도를 향상 시킬

    수 있는 새로운 ‘고속 충돌 방지 알고리즘’을 제안하였다. 또 기존의 알고리즘

    과제안한알고리즘의성능을비교하기위해수학적인분석을통하여각각의명

    령어전송횟수와태그인식시간을구하였으며, 시뮬레이션을통하여수학적인

    분석결과를검증하였다.

    본논문이가지는의미를정리해보면크게 3가지를들수있다.

    1. 기존의 EPC Class 1 RFID 시스템의 태그 충돌 방지 알고리즘을 분석하

    였다.

    2. 태그 인식 속도를 향상시키기 위한 고속 충돌 방지 알고리즘을 제안하였

    다. 제안한알고리즘에서는 bin slot에서의충돌유무정보를이용하여명

    령어전송횟수를줄였으며, 불필요한명령어전송을줄였다.

    41

  • 3. 마지막으로 성능 평가를 위하여 기존의 충돌 방지 알고리즘과 제안한 알

    고리즘을 수학적으로 분석하였으며, 이를 시뮬레이션을 통하여 검증하였

    다.

    결과에 따르면, 고속 충돌 방지 알고리즘이 기존의 알고리즘에 비해 초당 태그

    인식속도 면에서 약 89.2%의 성능 향상을 보였다. 따라서, 제안한 알고리즘을

    실제 EPC Class 1 RFID 시스템에적용한다면시스템성능이크게향상되어짧

    은시간에더많은태그를인식할수있을것으로기대할수있다.

    42

  • 참고 문헌

    [1] Auto-ID Center, Technical report 860MHz-930MHz Class I Radio Fre-

    quency Identification Tag Radio Frequency & Logical Communication In-

    terface Specification Candidate Recommendation, Version 1.0.1.

    [2] Auto-ID Center, Draft Protocol Specification for a Class 0 Radio Frequency

    Identification tag, Feb. 2003.

    [3] C. H. Lee, S. H. Oh, and J. H. Kim, “An Enhanced Ubiquitous Identifi-

    cation System Using Fast Anti-Collision Algorithm,” in Lecture Notes in

    Computer Science 4611 : Ubiquitous Intelligence and Computing - UIC

    2007, pp.53-62, July. 2007.

    [4] D. Engels.and S. Sarma, “The reader collision problem,” Systems, Man

    and Cybernetics, 2002 IEEE International Conference on Volume 3, 6-9

    Oct. 2002 Page(s):6 pp. vol.3.

    [5] EPCglobal, EPCTM Tag Data Standards Version 1.1 Rev.1.24, Apr. 2005.

    [6] H. S. Choi, and J. H. Kim, “A Novel Tag identification algorithm for RFID

    System using UHF,” Lecture Notes in Computer Science 3824:IEEE EUC,

    Dec. 2005, pp. 629-638.

    43

  • [7] H. S. Choi, J. R. Cha and J. H. Kim, “Fast Wireless Anti-collision Algo-

    rithm in Ubiquitous ID System ,” in Proc. IEEE VTC 2004, L.A., USA,

    Sep. 26-29, 2004.

    [8] H. Vogt, “Efficient Object Identification with Passive RFID tags,” IEEE

    ICPC, Zurich, 2002, pp.98-113.

    [9] ISO/IEC FDIS 18000-6:2003(E), Part 6: Parameters for Air nterface Com-

    munications at 860-960 MHz, Nov. 2003.

    [10] J. L. Massey, “Collision Resolution Algorithms and Random-access Com-

    munications,” University California, Los Angeles, Technical ReportU-

    CLAENG -8016, Apr. 1980.

    [11] K. Finkenzeller, RFID Handbook: Radio-Frequency Identification Funda-

    mentals and applications. John Wiley & Sons Ltd, 1999.

    [12] M. Jacomet, A. Ehrsam, and U. Gehrig, “Contactless Identification Device

    with Anticollision Algorithm,” IEEE Computer Society CSCC’99, Athens,

    pp.269-273, Jul. 1999.

    [13] S. Birari and S. Iyer, “PULSE: A MAC Protocol for RFID Networks,” USN

    2005, Dec. 2005.

    44

  • [14] S. Sarma, D. Brock, and D. Engels, “Radio frequency identification and

    electronic product code,” IEEE MICRO, 2001, pp. 50-54.

    [15] S. Sarma, J. Waldrop, and D. Engels, “Colorwave : An Anti-collision Algo-

    rithm for the Reader Collision Problem,” IEEE International Conference

    on Communications, ICC ‘03, vol. 2, pp.1206-1210, May 2003.

    45

  • Abstract

    The radio frequency identification (RFID) system is a simple form of ubiq-

    uitous sensor networks that are used to identify physical objects. The RFID

    system identifies the unique tag ID or detailed information saved in them at-

    tached to objects. Passive RFID systems generally consist of three components

    - a reader, passive tags, and a controller. The reader interrogates tags for

    their ID or detailed information through RF communication link, and contains

    internal storage, processing power, and so on. Tags get the processing power

    through RF communication link from the reader using back scattering and use

    this energy for on-tag computations and communication with the reader. There

    are various collision problem due to the characteristic of the RFID system. So,

    the ability to resolve these collision problems is crucial in the performance of

    the RFID system.

    We analyze the tag identification procedure of conventional EPC Class

    1 RFID system and propose the fast anti-collision algorithm for the perfor-

    mance improvement of the system. In the proposed algorithm, the reader uses

    information of tag collisions and reduces unnecessary procedures of the conven-

    tional algorithm. We evaluate the performance of the proposed anti-collision

    algorithm and the conventional algorithm using mathematical analysis and

    simulation.

    46

  • According to the results, we found that the proposed algorithm shows about

    89.2% performance improvement compared to the conventional algorithm in

    aspect of the identification rate(tags/sec). Consequently, if the proposed fast

    anti-collision algorithm applies to EPC Class 1 RFID system, the reader can

    identify more tags within shorter time.

    47