关于XMPP xep-0065和xep-0096的混淆

时间:2012-07-18 13:41:09

标签: xmpp xmppframework

我目前正在研究xmppframework,要求是在两个iPhone之间传输文件。我搜索了XEP并找到了0065和0096

XEP-0065说:

  

XMPP旨在发送相对较小的XML块   网络实体,不是为发送二进制数据而设计的。然而,   有时需要将二进制数据发送到另一个实体   一个人在XMPP网络上发现了(例如,发送文件)。   因此,拥有用于流式传输的通用协议是有价值的   XMPP网络上任意两个实体之间的二进制数据。 主要   这种字节流技术的应用是文件传输   在SI文件传输[1]和Jingle文件传输[2]中指定。   但是,其他应用也是可能的,这就是重要的原因   开发通用协议而不是专用协议   特定的应用程序,如文件传输。

如果文件传输XEP是SI文件传输(0096)和Jingle文件传输(0234),请看粗体行,令我困惑,那么这个0065 XEP的目的是什么?为什么人们在网上引用sep-0065进行文件传输?

2 个答案:

答案 0 :(得分:5)

在XMPP中,有不同的协议(XEPS)用于文件传输。 Jingle,Bytestreams,OOB,IBB ......

XEP-0096的目的是流启动。因此,它构建在其他文件传输协议之上,以实现无缝文件传输。

因此,它曾经同意上述两个客户端之间的文件传输协议之一进行传输,并且如果由于任何原因失败,也可以查找回退方法。

亚历

答案 1 :(得分:0)

XEP-0065用于代理文件传输:除非您使用公共代理,否则您的基础架构中将需要这样的代理。

XEP-0096要复杂得多,我建议不要一开始,但如果你以后广泛使用大型二进制传输/交换,我会建议它,因为Jingle至少用于VoIP。