一种通过蓝牙服务器实现多个蓝牙设备组网的方法、软件程序及服务器的制作方法

文档序号:7943754阅读:1756来源:国知局
专利名称:一种通过蓝牙服务器实现多个蓝牙设备组网的方法、软件程序及服务器的制作方法
技术领域
本发明涉及计算机软件、硬件及无线通信技术,特别是一种通过蓝牙服务器实现多个蓝牙设备组网的 方法、软件程序及服务器。
背景技术
蓝牙(Bluetooth)技术,实际上是一种短距离无线通信技术,利用"蓝牙"技术,能够有效地简化 掌上电脑、笔记本电脑和移动电话手机等移动通信终端设备之间的通信,也能够成功地简化以上这些设备 与Internet之间的通信,从而使这些现代通信设备与因特网之间的数据传输变得更加迅速高效,为无线 通信拓宽道路。
组建个人区域网(PAN)是蓝牙的用途之一。个人区域网是一个基于Internet协议(IP)的网络。 它通常用于设备和计算机之间的短距离特定通信。PAN描述了两个或更多个蓝牙设备如何构成一个即时网 络。蓝牙个人区域网PAN有两种应用模型 一种被称为组网络GN (Group Ad-hoc Networking);另一种被 称为网络访问点NAP (Networking Access Point)。
在组网(GN)中, 一个简单的组网由一个主设备和1 7个活动的从设备组成微微网。在这一个主从 网中,主设备与从设备之间的点对点或点对多点通讯在主设备的控制下进行,这个网络不需与外部网络相 连。另外一种就是由一个NAP和其他蓝牙设备组成的网络。这种无线设备充当网络设备(以太网、GSM等) 之间的网桥、代理或者路由。网络访问点与Internet相连,它是其他计算机或设备与外部网络相连的中 介。计算机通过网络访问点共享所有的网络资源。
蓝牙个人区域网就是要用无线代替有线,用蓝牙硬件在不同设备之间建立一条虚拟的蓝牙链路,从而 使现有的各种应用软件不经修改,就可以在不同蓝牙设备之间进行数据传输和数据交换。但是这种组网, 有如下局限及问题
1. 需要对蓝牙设备进行专业的配置来实现GN和NAP。
2. 微微网中的主设备在同一时间只能同其中的一个从设备进行数据交换。
3. 这种组网只能把有限的设备(最多8个设备)组入一个微微网。尽管在一个地理位置中可能存在 多个独立的微微网,且可以通过时分复用实现让一个蓝牙设备在一个微微网中作为主设备,在另一个微微 网中作为从设备来把两个或更多的微微网组合起来成为散射网。然而处于散射网中并不意味着该蓝牙设备 具有任何网络路由能力或功能。也就是说,处于不同微微网中的蓝牙设备只能通过接力的形式将数据在微 微网间传输。
4. 组网络GN和网络访问点NAP不可并存,NAP蓝牙设备只能充当路由的脚色,它不可再与其他蓝牙 设备组成微微网,在本地的蓝牙设备之间进行数据传递。

发明内容
有鉴于此,本发明的目的在于提供一种可以为更多个蓝牙设备进行组网,并可同时与这些蓝牙设备进
行数据通信的建设方法、软件程序和服务器。
为解决上述问题,本发明实施例提供了一种全新的蓝牙设备组网方法,包括步骤 搭建一个配备有多个蓝牙适配器的服务器,并安装特有的软件稈序用于管理蓝牙适配器。 蓝牙服务器为搭配在上面的各蓝牙适配器各自分配一个端口,这样可方便多个蓝牙设备对应接入。 当终端蓝牙设备进入蓝牙服务器的信号区后,终端蓝牙设备如果蓝牙关闭,则不建立连接。 当终端蓝牙设备进入蓝牙服务器的信号区后,终端蓝牙设备如果蓝牙开启并运行终端软件,则向蓝牙
服务器发送连接请求。
蓝牙服务器的某一个未超过最大连接数量的蓝牙适配器接收到连接请求后,会建立起一个对应的交互 线程,以处理与此设备之间的交互通信。这种连接可以根据移动蓝牙设备的数量增加而不断增加。
蓝牙服务器可以同这些接入的蓝牙设备同时进行双向数据传输,接入的各蓝牙设备相互之间也可进行 数据传输;这种数据传输是建立在蓝牙Sockets通信协议之上。
通过蓝牙服务器,这些接入的蓝牙设备还可以同外部网络通信,进行数据传输。在这种情况下,服务 器担当网络访问点NAP的作用。
本发明实施例也提供了一种蓝牙服务器,包括
安装有一种软件程序的具有较高硬件配置的电脑主机,用于程序数据处理和通信端口管理。 多个通过USB接口相连的蓝牙适配器,用于提供支持多个蓝牙设备的硬件基础。
同时本发明实施例还提供了一种软件程序,安装在蓝牙服务器中,用于为各蓝牙适配器分配一个端
口,当有蓝牙设备通过某蓝牙适配器连接到蓝牙服务器时,建立一个对应的交互线程,管理服务器与蓝牙 设备之间的数据交互。
与现有技术相比,本发明实施例具有如下优点
消除了蓝牙设备组网的个数限制,各蓝牙设备之间能直接实现数据交换和交互通信,实现真正的蓝牙
局域网络,同时借助服务器的NAP功能,还能接入外部网络。本发明可以为人员集中的地方如地铁、商场、
机场、餐饮和娱乐场所等,通过蓝牙服务器同时为大量用户提供本地及网络上的内容与信息服务。同时接 入的移动终端通过蓝牙服务器,相互之间也可进行通信,从而达到蓝牙设备间的信息互动。


图1是本发明中多个蓝牙设备与蓝牙服务器组网的实施例示意图。
图2是本发明中单个蓝牙设备通过蓝牙服务器连入该网络并实现数据交互传输的实施例流程图。
具体实施例方式
下面结合附图对本发明实施例的具体实施方式
作进一步的详细阐述。
如图1所示,是本发明中多个蓝牙设备与蓝牙服务器组网的实施例示意图。包括步骤
多个蓝牙适配器通过USB端口连接到服务器主机上;
服务器主机通过软件程序管理各个蓝牙适配器,为逸些蓝牙适配器与终端蓝牙设备的连接与数据通信 提供分配与管理
多个蓝牙设备通过这些蓝牙适配器与蓝牙服务器建立起基于蓝牙Sockets协议的通信连接,服务器主 机与多个蓝牙设备之间以及多个蓝牙设备相互之间均可实现同时交互数据传输,从而形成一个全新的蓝牙 局域网络BLAN (Bluetooth Local Area Network);
蓝牙服务器还可与外部Internet相连,担当网络访问点NAP的作用,这样与蓝牙服务器相连的蓝牙 设备也可以连接到外部网络。
为了克服蓝牙技术固有的局限以达到与多个客户端进行连接交互,需要在同一服务器主机上配备多个 蓝牙通信适配器,并可根据负载具体定制。为保证数据的带宽,每个蓝牙适配器可根据需耍限定连接的数 量。服务器会用未超过限定连接数量的蓝牙适配器去连接新的请求。考虑到服务器主机的负载程度、通信 效率和服务质量因素,服务器主机应具有合理的较高配置。另外,为了对各个访问点服务器进行控制与维 护,服务器主机还应具备网络硬件与软件的配置。
本发明建立的蓝牙无线网络中,客户端与服务器的连接以及相互之间的数据通信建立在无线蓝牙通信 协议之上。这里具体介绍所用到的蓝牙协议栈及编码设计与实现-
在Internet网络中具有一套通信协议栈以实现不同类型不同层次上的数据通信, 一旦某个客户应用 程序获得了其将连接主机的IP地址,就必须决定使用什么传输协议。和Internet网络一样,无线蓝牙也 基于一套成熟的协议栈实现蓝牙设备间的无线通信。在本发明所构建的无线蓝牙网络中,每个提供服务的 蓝牙适配器也具有自己的地址,当客户端得到将要访问的蓝牙地址时也必须决定使用什么协议进行通信。 每层协议完成不同的功能,并为上层协议服务。而本发明主要基于RFCOffl协议实现了服务器与客户端之 间的各种数据通信。同时该发明也适用于通过L2CAP协议实现了服务器与客户端之间的各种数据通信。
RFC0MM是基于ETSI的TS07. 10规范的串口仿真协议,支持蓝牙设备之间点对点的通信。作为线缆替 代协议,它在基带上仿真RS-232的控制和数据信号,为使用串行线传送机制的上层协议(如0BEX)提供_ 服务。RFC0MM是一个可靠的传输协议,就像TCP/IP协议族的TCP协议,然而两者之间主耍不同之处在于 TCP协议支持65535端口,而RFCOMM只支持30个端口,当基于一个适配器同时服务于7个客户连接时, 端口冲突的发生几率大概是50%以上。所以为了保持稳定性与并行服务于多个客户端应用程序,我们必须 对每个服务进程控制其服务对象的数量,这也是我们为什么要在一个服务器主机上配备多个蓝牙适配器的原因。
在本发明的基于蓝牙的无线网络中,利用Sockets进行通信的模式和利用TCP/IP协议通信的模式类似。 首先创建一个Socket对象,接着建立一个蓝牙地址,并设定利用的协议类型和使用的端口,然后将创建的 Socket对象与蓝牙地址绑定在一起,用Listen方法使建立的Socket对象处于监听模式,用以监听是否有客 户连接请求,当发现有客户端应用程序发送连接请求时,可用Accept方法接收客户请求并获得系统资源, 保存连接信息用以实现数据通信。如果该Socket的连接超过限定的数量,则暂停监听直到有连接断开。
利用Sockets协议进行通信的模式实现了本发明中多个蓝牙设备的互联及与蓝牙服务器的组网,该种 通信模式在本发明的保护范围之内。
如图2所示,是本发明中单个蓝牙设备通过蓝牙服务器连入该网络并实现数据交互传输的实施例流程 图。包括步骤
蓝牙服务器会随时监听客户连接, 一旦发现有蓝牙接入请求,就会用未超过限定连接数量的蓝牙适配 器接受请求。 一旦连接成功,则在主机端创建客户交互线程,与此客户应用程序进行交互。
交互线程建立后,服务器与蓝牙客户端之间进行数据的交互传输与处理,并时刻判断客户是否发送了 断离请求。如果是,则断离连接,释放系统资源,否则对客户请求进行相应处理,如根据客户不同请求 向其发送不同数据文件,或者保存客户传来的数据。
与蓝牙服务器建立了连接的蓝牙客户端可以通过与外部网络建立了连接的蓝牙服务器与外网进行数 据通信,从而实现NAP的功能。连接中的蓝牙客户端通过交互线程将其与外网传输的数据发送到蓝牙服务 器,蓝牙服务器的服务程序接收到数据后对数据进行解析,然后根据其内容通过蓝牙服务器的网线与远端 的外网服务器进行通信,为蓝牙客户端发出数据传输请求并传输数据。同时蓝牙服务器的服务程序也会把 外网的数据接收并转发到与蓝牙服务器相连的对应蓝牙客户端。
通过以上实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件 平台的方式来实现。基于这样的理解,本发明的技术方案对现有技术做出的贡献部分可以以软件产品的形 式体现出来,该计算机软件产品存储在一个存储介质中,包含若干指令,用以使得一台包含蓝牙适配器的 计算机设备(个人计算机、服务器、网络设备等)执行本发明实施例所述的方法。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所 作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1、一种通过具有蓝牙设备的服务器实现多个蓝牙设备组网的方法,其特征在于,包括如下步骤(1)搭建一个配备有多个蓝牙适配器的主机,并在主机中安装特有的软件程序用于管理蓝牙适配器,监控蓝牙设备的接入;(2)带蓝牙的多个移动终端设备与主机建立起基于蓝牙Sockets协议的无线通信连接,这种连接个数还可以随蓝牙服务器上蓝牙适配器个数的增加而增加;(3)主机为接入的每一个蓝牙设备单独建立一个交互线程,并通过这一线程管理蓝牙设备与主机蓝牙适配器之间的数据通信;(4)所有接入主机的蓝牙设备,相互之间也可以通过主机及蓝牙适配器建立起数据交互通信;(5主机如果接入了外部网络,如Internet,则所有与主机连接的蓝牙设备也可以通过蓝牙设备访问外部网络;
2、 一种蓝牙服务器,其特征在于,包括(1) 安装有一种软件程序的具有较高硬件配置的电脑主机,用于程序数据处理、蓝牙适配器管理 和蓝牙通信端口管理;(2) 多个通过USB接口相连的蓝牙适配器,用于提供支持多个蓝牙设备的硬件基础。
3、 一种软件程序,其特征在于,包括(1) 安装在蓝牙服务器中,用于管理各蓝牙适配器,为各蓝牙适配器分配一个端口;(2) 当有蓝牙设备通过某蓝牙适配器连接到蓝牙服务器时,建立一个对应的交互线程,管理服务器 与蓝牙设备之间的数据交互;
4、 根据权利要求1所述的方法,其特征在于-(1) 蓝牙服务器与移动终端的蓝牙设备之间是通过基于蓝牙Sockets协议的无线通信连接,各蓝牙设 备之间的无线通信交互也是通过基于蓝牙Sockets协议的无线通信连接;(2) 每一个接入蓝牙服务器的移动终端蓝牙设备会被一个单独的交互线程管理,随着蓝牙服务器上 蓝牙适配器接入个数的增加,可以接入蓝牙服务器的移动终端蓝牙设备个数也在增加;
5、 根据权利要求2所述的蓝牙服务器,其特征在于蓝牙适配器是通过USB接口连入蓝牙服务器主 机,这种USB接口可以是外接的USB Hub,也可以是主板集,的USB接口,也可以是USB扩展卡,进 一步的,也可以以蓝牙内嵌模块的形式接入蓝牙服务器主机。
6、 根据权利要求3所述的软件程序,其特征进一步包括软件程序可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包含若干指令,用以使得一台包含蓝牙适配器的计算机设备(个人计算机、服务器、网络设备等)执行本发明实施例所述的方法。
全文摘要
本发明是一种通过蓝牙服务器实现多个蓝牙设备组网的方法、软件程序及服务器,涉及计算机软件、硬件及无线通信技术领域。本发明目的是为解决目前蓝牙PAN组网在连入个数及应用等方面的局限性而提出的一种崭新的蓝牙组网方式BLAN(Bluetooth Local Area Network),包括步骤搭建蓝牙服务器并安装相关软件程序以对蓝牙服务器上的多个蓝牙适配器进行管理;多个蓝牙设备通过这些蓝牙适配器与蓝牙服务器建立起基于蓝牙Sockets协议的通信连接,服务器主机与多个蓝牙设备之间以及多个蓝牙设备相互之间均可实现同时交互数据传输。本发明在人口密集区域,如地铁、商场、机场、餐饮和娱乐场所等,可为大量蓝牙用户提供本地及网络上的内容与信息服务,蓝牙用户之间也可实现信息互动。
文档编号H04W84/18GK101510793SQ200910000640
公开日2009年8月19日 申请日期2009年1月12日 优先权日2009年1月12日
发明者王云峰 申请人:北京翰龙潮网络科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1