是否有可能在微微网与另一个微微网之间进行通信

时间:2011-02-05 05:20:45

标签: java-me bluetooth

我在how to communicate with mobile devices using bluetooth in j2me发布的上一个问题已经提出了基于蓝牙的问题。我得到了一些实现客户端服务器通信的想法。现在我在这里根据微微网与另一个微微网之间的通信提出问题。可能吗?主设备必须通过微微网与从设备进行通信,并通过自己的微微网的从设备与主设备和从设备通信到另一个微微网。

任何人都可以为我的问题给我一些指导和文章。

请帮帮我..

提前谢谢

1 个答案:

答案 0 :(得分:1)

在蓝牙中,主设备启动与从设备的通信。在基带级别,主设备轮询从设备。但是,在应用程序(API)级别,它被抽象出来,允许主设备发送到从设备,从设备发送给主设备。

您描述的情况是散射网。蓝牙规范允许发生分散网。您正在使用的蓝牙堆栈可能会对是否允许分散网络施加限制,更一般地说,允许使用哪些主/从配置(例如,允许的并发从属数量)。

您会发现,在与某些设备交互时,会请求角色切换以防止散射网。例如,远程设备(主设备)可以发起与蜂窝电话(从设备)的连接;一旦建立连接,手机就会请求角色切换,成为主人。这允许电话在所有连接中保持主控并防止形成散射网。根据API,此角色切换可能对您的应用程序完全透明。如果没有来自协议分析仪的空中痕迹,您将不会知道它发生了。您会注意到性能损失,因为从站无法像主站那样频繁发送(因为从站没有“驱动”连接)。

JSR-82本身不允许您请求角色切换。如果您查看ServiceRecord.getConnectionURL(int, boolean),您会看到您可以要求您的设备成为主设备(通过true),或者您可以允许主设备或从设备模式(通过false)。< / p>

蓝牙规范(可用here)是开始了解微微网和分散网如何工作的好地方。您应该参考JSR-82文档,如果可能的话,还应该参考堆栈的文档,以便更好地了解可能存在的一些特定于堆栈的限制。