超高频RFID空中接口协议的研究
1 RFID系统组成
RFID (Radio Frequency Identification) 的基本原理就是将电子标签安装在被识别的物体上,当被标识的物体进入RFID系统的阅读范围时,射频识别技术利用无线电波或微波能量进行非接触双向通信,来实现识别和数据交换功能。
标签向读写器发送携带信息,读写器接收这些信息并进行解码,通过串口将读写器采集到的数据送到后端处理,并通过网络传输给服务器,从而完成信息的全部采集与处理过程,以达到自动识别被标识物体的目的。
RFID应用系统的架构如图1所示,基本由阅读器,天线和标签组成,另外还有后台的企业应用系统。标签和读写器之间通过耦合元件实现射频信号的非接触耦合。系统中有一个中间件负责完成系统与多种阅读器的适配,过滤阅读器从标签获得的数据,以减少网络流量。标签与读写器之间通过空中接口协议进行通讯,读写器与中间件之间的通信通过读写器协议进行定义,中间件与应用系统之间的通信接口由ALE协议规定。
图2为RFID系统阅读器和标签之间的通信过程。读写器和标签通过射频电磁场进行数据交换。
阅读器首先发送连续载波信号,通过ASK调制等方式发送各种读写命令,标签通过反向散射调制的方式响应阅读器发出的命令,返回EPC(电子产品编码)等信息。
2 空中接口协议
如图1所示,RFID系统涉及的协议从底层通讯到上层应用都有各自的规范,根据标签的供电方式不同,RFID系统可分为有源系统和无源系统两种;根据系统工作的频段不同,可分为低频,高频,超高频和微波频段的RFID系统。论文主要讨论超高频段无源RFID空中接口协议部分的关键技术。
当前超高频RFID空中接口协议主要是ISO 18000-6 TYPE B协议和EPC Global Class 1 GEN 2协议(EPC C1 GEN2协议,现已经成为ISO 18000-6 TYPE C)。两种协议的对比如表1所示。总体来讲,EPC C1 GEN 2空中接口协议定义更完备,现有的产品大多遵循此类协议。另外,ISO 18000-6基本上是整合了一些现有RFID厂商的产品规格和EAN-UCC所提出的标签架构要求而订出的规范。它只规定了空中接口协议,对数据内容和数据结构无限制,因此可用于EPC。所以EPC协议得到广泛的应用,成为事实标准。
空中接口协议包含物理层和媒体接入控制(MAC)层,物理层包含数据的帧结构定义,调制/解调,编码/解码,链路时序等,MAC层包含链路时序,交互流程,防碰撞算法及安全加密算法等。
2.1物理层
EPC协议中,前向通信使用双边带幅移键控(DSB-ASK)、单边带幅移键控(SSB-ASK)或者反相幅移键控(PR-ASK)等调制方式。标签通过阅读器的RF电磁场来获得工作电源能量。阅读器通过发送一个未经调制的RF载波并侦听标签的反向散射的回复来获得标签的信息。标签通过反向散射调制射频载波的幅度或者相位来传送信息。编码格式由标签根据阅读器命令进行选择,可以是FM0或者Miller调制副载波。
在链路时序方面,EPC协议规定了读写器发送不同命令,读写器发送命令与标签响应命令之间的时间间隔最大、最小和典型时间。
数据帧结构方面,EPC协议通过规定查询命令前的前导码,指定反向数据速率,编码方式等,其他命令前使用帧同步码实现同步。反向帧同步码自相关性能较差,可以修改反向帧同步码进一步提高其自相关性。
EPC协议中,前向通讯采用不等长的PIE编码,简化标签端的解码算法。另外,PIE编码还带有时钟信息,在通信过程中,能较好地保持数据同步,抵抗各种无线干扰,从而提高系统在无线环境的可靠性。反向通讯采用FM0或者Miller子载波编码方式。
信号调制方面,阅读器使用DSB-ASK,SSB-ASK,或者PR-ASK调制方式跟标签进行通讯,标签应该能够对全部三种调制类型进行解调。
ASK调制受数字数据的调制而取不同值,它采用包络检波方式解调,适合电子标签的特点。PSK用需要传输的数据值来调整载波相位,这种调制技术具有更好的抗干扰性能,相位的变化可作为定时信息来同步发送机和接收机时钟。
2.2MAC层
2.2.1标签访问控制
阅读器通过选择,清点,访问三个基本操作来管理标签群体。阅读器选择标签群体以便对标签进行清点和访问。这个操作类似于从数据库中选择记录。阅读器通过在四个会话中的一个会话发出一个查询命令来启动一轮清点,可能会有一个或者多个标签响应。若单个标签响应,阅读器请求该标签的PC,EPC和CRC-16。若多个标签响应,则进入防碰撞处理过程。阅读器和单个标签进行读或者写之前,标签必须被唯一识别。访问的每一个操作包括多个命令。
2.2.2防碰撞算法
在标签访问控制过程中,读写器在一轮中清点多个标签响应,需要读写器进行碰撞仲裁。EPC协议中采用ALOHA算法,ISO18000协议中采用BinaryTree算法解决防碰撞问题。然而,ALOHA算法清点效率仅有33%,需要解决标签数目估计问题,BianryTree算法更低,需要解决标签快速分散问题,因此有论文提出用多叉树算法来快速分散标签,提高防碰撞效率。
2.2.3安全加密
在进行读操作时,读卡器向标签发出读指令,随后标签根据读指令传送出明文数据。在进行写操作时,读卡器向标签请求一个随机数,标签将这个随机数以明文的方式传送给读卡器,读卡器使用这个随机数与待写入的数据进行异或运算传输给标签,标签将获得的数据经过再次异或得到明文后写入存储器。在进行访问指令和杀死指令时,读卡器在发送密码前同样先向标签请求一个随机数,并将经过此随机数异或过的密码发送给标签,以达到数据在读卡器到标签的前向通道上被掩盖的目的。
EPC协议中,密码在空中无保护传输,任何读卡器都能够读取和向芯片写数据。虽然EPC协议指定使用存取密码来保护芯片中的数据,但是这个存取密码在芯片和读卡器之间在空中被直接无保护传送。这使得密码变得不安全,为密码破解提供了可能性,不能保证数据安全。
3 结束语
RFID应用中,需要解决各层的接口标准问题,其中空中接口协议是基础。空中接口协议需解决物理层的链路时序,帧结构,编码方式,调制方式等问题,MAC着重解决访问控制协议,防碰撞算法和安全加密算法问题。