好的,这可能只是一个愚蠢的问题,但我想知道蓝牙是否遵循TCP或UDP协议?根据我对网络协议的了解(不是很多),我会说它没有遵循这两种协议之一,而是存在一些特定的蓝牙协议。我还有一个问题......新iPhone OS 3.0中GameKit中的蓝牙功能遵循什么协议?我还没有完全看完苹果文档中的每个单词,但到目前为止,我还没有找到它。
好的,这可能只是一个愚蠢的问题,但我想知道蓝牙是否遵循TCP或UDP协议?根据我对网络协议的了解(不是很多),我会说它没有遵循这两种协议之一,而是存在一些特定的蓝牙协议。我还有一个问题......新iPhone OS 3.0中GameKit中的蓝牙功能遵循什么协议?我还没有完全看完苹果文档中的每个单词,但到目前为止,我还没有找到它。
TCP和UDP是传输层协议,而蓝牙则是一种更低级别的协议。因此您可以在蓝牙上使用TCP或UDP,就像您在以太网上使用TCP和UDP一样。
蓝牙协议栈包括其自己的传输协议:L2CAP和RFCOMM,其中RFCOMM链接使用L2CAP层。您可以通过在RFCOMM链接上封装UDP数据包来在蓝牙上进行一些IP隧道。
Gamekit会为您隐藏蓝牙堆栈,但我猜测它使用SDP进行对等体发现,并使用RFCOMM链接进行通信。
将蓝牙堆栈类比于典型的基于TCP/IP的OSI堆栈。如果您进一步阅读蓝牙协议栈和架构,您会看到与OSI堆栈映射的相似之处。就像您可能知道的传统OSI层一样,您有L2等效层、传输层、会话和应用程序等。
如果您考虑TCP层,则在蓝牙上查看L2CAP层。请参考蓝牙维基百科以获得更好的理解。
此外,多年前我参考过这本书 - http://www.amazon.com/Bluetooth-Operation-Use-Robert-Morrow/dp/007138779X
两个设备之间的正常通信是通过使用RFCOMM(无线电频率通信)和L2Cap。根据我的猜测,iPhone使用的协议可能是A2DP或AVRCP