关于NFC使用哪些传输协议

微型DSP 专栏收录该内容
2 篇文章 0 订阅

NFC这事情也是说了快十年了,真心希望它能回归到其就是一个小小的接入技术上来,开放,大多数开发者能如同呼叫一个通用的接入一样用它。


NFC这事也不应该赖上移动支付,俩位都锁在那锁了10年了,其实维基上的一句描述写的不错:“NFCoffers a low speed connection with extremely simple setup, and canbe used to bootstrap more capable wireless connection. It could forexample , replace the pairing step of establishing Bluetoothconnections or the configuration of Wi Finetworks”。看来这哥们真的是接的快,传的慢。不论怎样,如果不仅仅把NFC绑在支付上,或者说80%的NFC场景不是支付的话,可能NFC还真能小小的改变你我的生活。


但是这么一个小玩意,参与的公司多,乱,杂,背景不通,诉求不同,有电信领域的,有金融领域的,有卡商,有手机厂商等等,结果是规范乱,实现乱,认证不断延期,尤其是规范乱这事儿,实在是晕,一会儿14443,一会儿18092,一会儿用NDEF,一会儿又SNEP,还有ISO-DEP,不待这么玩的。


是需要把各个点捋清除,分享之。


书归正传,先从最基本的一出说起-认知的模型,我觉得还是OSI分层协议描绘的清晰些个,大多数通信场景,往这一套,立马了然。


先看看OSI在wiki上的描述,这是各层的功能和跑的数据单元


清理下NFC的基本概念


题外话,其实琢磨SWP(single wiredprotocol)也可以往这上面套,啥I frame, Sframe的,没错,上面不是写这frame和Datagram了嘛,没错,就是这,SWP 就在这层。


花开两朵,单表一支,咱们再说回NFC,把OSI7层协议套用过来,NFC的3中方式或者叫使用场景更合适些个:卡模式,读写模式,点对点模式


清理下NFC的基本概念


在OSI上都逐个有所对应,到此忽然发现,原来天天和人白话NFC啊移动支付啥的原来卡模式里面不用NDEF,SNEP 等等,以及展现层上的 RTD, 到此,一脑门子汗,不总结不知道。


另外从NFC往OSI的套图上也看的出来, connectionhandover在读写模式和P2P模式的应用层都占了位置,这就了然了,为啥NFCForum在讨论应用和测试规范时候,connectionhandover比较看重,一者这个还真实和其他技术比如非接触卡的区别,二者应用场景也很诱人!


卡模式方面:


似乎层4,5,6都没有涉及到,应用层也是各个支付方式自己实现自己的。ISO-DEP基于ISO 14443,NFC-DEP基于18092,这就是NFC乱的地方,一个层上出这么多七七八八的协议,差异不大还各说个的,到底有啥差异,稍候在叙。所以在物理层(射频,或者说耦合更合适些个),数字链路层和网络层实现了NFC技术(比如ISO-DEP)之上,就是各个应用paypasspaywave的实现,简单明了,要不怎么说卡模式呢,其实跟卡实现的各层一样,姑且把googlewallet也放在这个模式里面,G公司的支付这部分有点胡搞,当然现在改变为在卡短实现虚拟卡的方式似乎又有些起色。

清理下NFC的基本概念

读写模式:


好了来个少复杂的,各层都有,从射频到RTD,从物理层到应用,如果真有终端的话,我倒是觉得这个比支付吸引人一些,商场地图,应用下载,歌迷会等等,可以让想象力再飞一会!实现NFC的手机里面,这个功能应该是第一波实现的,需要引起重视的是在RTD上面实现的(或者说需要实现的)connectionhandover,不能把read/write模式就想象成POS机,那非自己玩死自己不可,想象一下噻,在星巴克 NFC check in, 然后app connectionhandover把你的能的支付在后台处理,或者加上优惠券,不比Square和星巴克的合作酷?星巴克不能接着合作可咱可试试 coldstone冰激凌,或者HM服装,总之不去日本人的店就成。其实东支付的市场需要深度挖,觉不仅仅是发个SD卡涮卡的事情,要是就刷卡了还有啥创新,大家就都奔着银行那532分成去了,这部读写模式已然能刷出花样!深度的用户场景看来需要下篇单独写了。

清理下NFC的基本概念

P2P模式:


来个更多交互的,点对点。已然是从层一物理层到层7应用层都引入了,除了NFC技术上使用了基于ISO18092的NFC-DEP之外,还有有别与其他的LLCP,SNEP。NDEF部分是读写模式和P2P都用到了,故而也不算独有或者邪门的地方了。

说说邪门的:


LLCP:基于IEEE802.2的规范的。某种程度上依然算是层2实现的紧凑协议。初衷是可以更好的支持小应用的有限数据传输,所以,应用得小,真得小,或者说行为简单,换个名片,微博互粉,相互识别一串数(比如磁条卡号码啥的),数据得小,大了我不玩了,还是突出NFC的那个描述:“NFCoffers a low speed connection with extremely simplesetup”。另外LLCP的涉及也是为了支持一些网络协议如OBEX,TCP/IP啥的。说到着,对照OSI7层协议的模型,再看看LLCP的英文:logical link controlprotocol,逻辑链路控制协议,就全对上号。OSI是个好模型,一个模型走边天下噻!


SNEP:专门为P2P设计的,就是为了P2P的时候使用NDEF交换信息,名字就能看出来:Simple NDEF exchangeprotocol,还是建立连接更简单(虽然数据的速度慢),回到刚才NFC的特点描述的那段洋文: “NFC offers a lowspeed connection with extremely simple setup”。了然!


另外读写模式上NFC技术使用ISO-DEP(基于14443), P2P使用了基于18092的NFC-DEP,这个两个基础规范虽说差异不大,还是变态般的分列出来,回头细聊。


 

清理下NFC的基本概念

NFC场强,射频和耦合:


不少地方把NFC的物理部分叫射频,其实这个无线电射频还是两码事,这个还是叫耦合比较好点(couple), 轮询放给出能量和时钟和bit流请求,收听放给出反馈。之所以不用读卡器和卡是因为NFC的世界里象尽量淡化读卡器,卡,而是用NFCdevice( 啥都能当),至少这是2003年他们开始耍时候的想法

 

清理下NFC的基本概念

稍微看看NFC论坛提及的测试方式,抓狂级,涉及14个点上不同的速度和角度的测试,先得找到贴着DUT得0点位置,由此演化出同一水平面上得4个附加位置,再提升5厘米,上一个平面上2个圆环加圆心9个点共14个,测试相应耦合场,波形,敏感度,载波等等。

清理下NFC的基本概念


由此来看,NFC还是属于proximity这种贴近式得方式。


关于两个混乱协议


ISO18092:因该说兼容14443,为NFC设计得协议以决如何交换数据流的问题。定义了 NFC设备通讯的两种模式:poller模式和listen模式。并且分别定义了两种模式的选择和射频场防冲突方法、设备防冲突方法,定义了不同波特率通讯速率下的编码方式、调制解调方式等等最最底层的通讯方式和协议。在 NFC 的世界里没有读卡器,没有卡,只有 NFC 设备。 初始设计是为了提供贴近式,后来增加了对 ISO15693(接近式)的兼容,说实话,每必要,说拿手机隔着1米半搞啥呢?不过也比一定(仔细想下),比如不知道哪一代Iphone要实现数字家庭遥控的话,加入还考虑家里就是死活不装WiFi的人家儿,用这么距离的vicinity也没准噻!


ISO14443非接触卡片用的不赘述了,被18092不小心包含了,小样,往哪跑,我做的晚,啥都包括!

  • 4
    点赞
  • 1
    评论
  • 11
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

ation_work

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值