###1. NFC

NFC (Near Filed Communication, 近场通信)也叫近距离无线通信技术,由RFDI技术, 磁条卡技术融合发展而来,这一技术标准最早由sony和philips在2002年推出, 在2004年sony,philips, nokia, 等公司共同成立了名为 NFC Forum 非盈利性组织(类似于 Wi-Fi Alliance)来推广NFC技术, 负责制定技术标准和认证测试

nfc

NFC和RFID在物理层有相似之处,但其本身和RFID是两个领域的技术,RFID仅仅是一种通过无线对标签进行识别技术,而NFC是一种无线通信方式,这种通信方式是交互的

###2. NFC

  • 有效距离约为 4cm
  • 工作频率为 13.56MHz
  • 传输速率有 106Kbps, 212Kbps, 424Kbps 3种

###3. NFC 的工作模式

虽然NFC的前身 RFID 和 词条卡 中有着明确的 “卡/读卡器” 的概念, 但是NFC协议中希望能够淡化这一概念, 而是统称为NFC device, 每一个NFC device可以支持如下的一种或者多种模式:

  • Reader/Writer 模式: 简称R/W, 作为NFC的读写器, 可以读写另一个无源的NFC标签
  • P2P 模式 : 简称P2P,即两个都工作在这一模式下的设备直接进行交互
  • Card Emulation 模式 : 简称CE, 即把一个支持NFC的设备模拟为一个smart card, 用于实现手机支付,门禁

NFC 定义了两种通信模式:

  • 主动通信 : 即设备给对端的nfc设备供电
  • 被动通信 : 即设备无源工作,可由主动通信的设备激活, 并且由主动通信的nfc设备供电,

两种工作模式

  • Poll : 打开射频场,并根据配置模式进行发现过程,来发现周围的NFC设备, 在NFC规范中,发现的顺序为NFC-A, NFC-B, NFC-F, 私有技术
  • Listen : 关闭射频场, 等待对方设备发来的POLL命令,如SENS_REQ/SENSF_REQ

NFC 的不同设备模式对应着不同的通信模式和工作模式的组合, 例如 CE mode 对应 “Listen工作模式”和“被动通信”,因此支持支付的手机, 在没有电池的情况下, 也可以支付

###4. NFC的射频规范

NFC的3中工作模式都依赖于NFC的的无线射频技术, 其相关的标准有3种

  • ISO 18092 : NFCIP-1 (NFC Interface and Protocol1) 定义了NFC RF层的工作流程
  • ISO 14443 : 非接触式IC卡标准, 在RF层面上定义了如何与不同的非接触式IC(RFID, NFC Tag, smart card)卡交互, 它定义了Type A, Type B种非接触式IC卡
    • Type A : 由philips制订, 后归从philips独立出的NXP所有, 商标名为 MIFARE, 市场占有率约为70%
    • Type B : 由其它公司制订, 主要在法国市场
  • Felica : 也称Type F, 由sony开发, 没有成为ISO标准, 只是作为日本的工业标准 JIS 6319-4

Type A, B, F 的主要区别在于RF层的信号调制解调方法, 传输速率以及数据编码率上面

ISO 18092 比 ISO 14443 晚, 兼容且包含 ISO 14443

###5. NFC技术框架

NFC forum 所定义的技术框架如下

nfc 技术框架

####5.1 底层的comon规范

最底的3层是RF层的规范:

  • Analog Specifications : 该规范描述了NFC设备的RF层的电气特性
    • NFC-A, NFC-B, NFC-F
  • Digital Protocol Specification : 该规范在 ISO-19092 ISO-14443以及JIS X6319-4 之上, 定义了NFC设备之间的数字通信协议, 使得基于不同的底层协议(例如Type A或者Type F的NFC设备或者NFC与其它使用ISO 18092等规范的设备之间)之间能够交互
    • NFC-A, NFC-B, NFC-F 编码规范
    • 基于ISO 18092的NFC-DEP (用于P2P mode), 基于ISO 14443的 ISO-DEP (用于CE mode和 R/W mode), 2者差异不大
  • NFC Activities Specification : 该规范为运行各协议对应的协议栈提供支持(比如P2P模式下, 两个设备如何建立连接)

####5.2 CE mode 的相关规范

CE mode下, 直接在RF层的 NFC Activities Specification 规范上开发应用

####5.3 P2P mode 的相关规范

  • LLCP : P2P协议栈的最底层, 用于处理物理地址寻址,链路管理, 以及数据传输
  • SNEP : 该协议使得两个NFC device之间能够直接交换NDEF消息
  • CHP : Connection Handover Protocol, 用于通过NFC来配置wifi, bluetooth的连接
  • Protocol Bindings : 用于让NFC支持更高层次的协议, 例如IP协议, OBEX协议

在SNEP协议或者其它的协议之上, 可以开发应用程序

####5.4 R/W mode 的相关规范

  • NDEF : 根据NFC Forum的规定, R/W模式下, NFC设备之间每一次交互的数据都会封装在一个NDEF Message之中
  • RTD : RTD规范定义了NFC Forum规定的七大数据类型中的 Well known type 和 External type