一种gps设备接入网关装置的利记博彩app

文档序号:7889354阅读:487来源:国知局
专利名称:一种gps设备接入网关装置的利记博彩app
技术领域
本发明涉及网络技术领域的协议转换装置,是一种GPS设备接入网关装置。
背景技术
现有GPS系统的数据传输方式简单,通常采用TCP协议将GPS模块得到的定位数据等上传服务器,不对数据进行处理,也不对通信方式进行管理,简单易行,但在车载定位、 录像采集、音视频录像等大框架中,这样不利于和其他数据整合,造成管理多种数据的不便。音视频数据通常也有各自适用的通信协议,例如RTP等,这就造成在同一个框架内,有多种协议的数据并存,这就迫切需要一个应用层的协议可以对数据进行无差别的管理。SIP 协议是由IETF制定的,是一个应用层控制信令协议,用于建立、修改、终止用户之间的会话,广泛用于音视频等多数据通信的会话场合,成为了一通用的标准。通过该协议,可以对各类型数据通信进行有效的管理。将SIP应用于GPS系统的方式,一种是重新设计GPS设备,在设备端加入SIP并以此进行发送,但该方式需要修改设备硬件和软件,代价巨大,不利于现存设备的继续使用。另一种方式则是在服务器端建立一种GPS设备接入网关装置, GPS设备通过该装置进行SIP协议接入,这样设备就可以在不做出任何改变的情况下通过该装置接入到SIP网络中。虽然SIP协议转换相关的文献或产品已经有出现,在已公布的专利文献和产品中,大多是和类似协议如H. 323等同层协议的转换,尚未有涉及设备接入而进行协议转换的装置。

发明内容
本发明针对现有的GPS系统简单低效的通信模式、通信稳定性较差的不足,提供一种改善GPS的通信模式,将GPS设备和SIP系统相关联,建立一个应用层的协议可以对不同类型的数据进行统一管理,保持良好通信稳定性的GPS设备接入网关装置。本发明解决其技术问题所采用的技术方案是一种GPS设备接入网关装置,包括线程池模块,所述线程池模块与TCP通信模块、 SIP通信模块和协议转换模块连接,所述TCP通信模块用于与GPS设备通过TCP协议进行通信,所述SIP模块用于与服务器之间采用SIP+XML协议进行数据通信;所述协议转换模块用于完成TCP协议的数据和SIP+XML协议数据的相互转换。进一步,所述线程池模块中,控制TCP通信模块和SIP通信模块,完成GPS设备在 SIP框架下的服务器注册,实现设备的接入,TCP模块获取GPS设备的数据,通过协议转换模块转换数据,最后通过SIP模块将数据发送给服务器;同样,SIP模块接收服务器下发到设备的数据,通过协议转换模块转换数据,最后通过TCP模块下发到指定的设备。再进一步,所述线程池模块中,控制TCP通信模块和SIP通信模块,通过设置TCP 模块的保活机制,并和SIP模块的定时心跳包机制一起,保证GPS设备和接入网关装置、SIP 服务器和接入网关装置两个网络的通信保活。如发生中断,则能通过TCP模块切断GPS设备和接入网关装置的通信,同时通过SIP模块切断接入网关装置和服务器的通信。本发明的技术构思为采用TCP套接口技术、线程池技术、SIP协议及TCP协议,实现服务器、接入网关装置与GPS设备三者间的通信。针对接入网关装置需要应对大量设备的连接请求,以及整个系统接入SIP网络所对应的信令控制作出相应的改进(I)采用线程池技术,对于同时大量的设备连接以及协议转换请求,能作出及时的响应。(2) TCP通信模块,保证TCP通信可靠性(a)设置setsockopt O的keepalive保活机制,并和SIP的定时心跳包机制一起, 保证GPS设备和接入网关装置、SIP服务器和接入网关装置两个网络的通信保活;(b)采用select O机制,从recvO读取报文之前判断GPS设备主动断开/异常断开/正常报文;如果出现异常,则CloseO套接字,释放套接字;(C)针对网络转换中SIP注册失败、服务器断开设备连接等接入网关装置与SIP服务器这一侧通信中断的情况,也会调用closeO断开接入网关装置和GPS设备的连接;(d)采用状态转移图2编程,简单可靠。(3)分析了 GPS设备裸数据的消息格式,实现协议转换模块,将信息转换为XML格式的数据,方便SIP服务器统一管理。同时,对于SIP服务器下发的命令,也可以通过该模块解析并转换得到GPS设备可识别的消息格式。模块独立,方便添加和修改协议消息的内容。(4)每个GPS设备会通过接入网关装置的SIP通信模块,和服务器建立注册、心跳保活、消息上传、命令下发等一系列通信机制,并和线程池结合,每个设备相互独立,互不干扰。软件实现步骤为GPS设备首先连接到接入网关装置,通过其以SIP协议规定的格式注册到SIP服务器;接入网关装置和SIP服务器在设备注册过程中完成加密解密、心跳保活等操作;接下来,GPS设备将采集到的定位信息等以二进制格式上发接入网关装置,通过其转换成XML格式数据然后以SIP协议上发到服务器;服务器将需要发给设备的信息命令等以SIP协议格式先发到接入网关装置,通过其解析出命令数据,转发给对应设备。线程池模块处理设备连接和SIP消息发送的工作流程图为图3,接入网关装置和服务器的SIP通信图为图4,接入网关装置进行SIP协议转换的流程图为图5。本发明的有益效果主要表现在(1)实现GPS设备、接入网关装置和服务器的独立,可以方便对各个模块进行添加修改;(2)很好的保有了原有GPS设备的软硬件,不要修改原有设备,只需在系统中添加接入网关装置,简单易用,不破坏系统架构;(3)接入网关装置能实现一定量的设备连接,有一定的承载能力;(4)对于GPS设备的连接能和SIP系统相关联,实现无缝的网络通断判断,保证系统的稳定运行。


图I是总体架构框架。图2是Socket通信状态转移图。图3是线程池处理设备连接和SIP消息发送的工作流程图。
4
图4是接入网关装置和服务器的SIP通信图。图5是接入网关装置进行SIP协议转换的流程图。
具体实施例方式下面结合附图对本发明做进一步描述。参照图I 图5,一种GPS设备接入网关装置,接入网关装置的底层是一个实现任务调度的线程池模块,该模块控制TCP通信模块、SIP通信模块和协议转换模块,实现整个接入网关装置的功能。服务器和接入网关装置之间的通信通过TCP通信模块,以GPRS网络交互,采用的是SIP+TCP协议;接入网关装置与GPS设备之间通过TCP通信模块进行TCP连接。接入网关装置与服务器间的数据通信采用SIP+XML协议,接入网关装置与GPS设备间的数据通信采用普通的二进制数据,封装在TCP协议内,协议转换模块则完成以上数据的相互转换。其基本架构框架如图I所示。依据附图I搭建工作环境,由服务器、接入网关装置与GPS设备三部分组成。网络选择GPRS网络,实现了无线通信,设备则为任何带有GPS模块,并以TCP方式通信的设备。 服务器端则为处理SIP协议的服务器。整个发明的核心是接入网关装置,其底层采用的是一线程池模块,工作流程如图3 所示。系统开始阶段需要进行初始化的准备,这里首先涉及到的是需要开辟一系列工作线程,这些线程需要符合SIP通信的要求,对线程的内存大小等有一定的要求和限制。再者, 需要对所有工作线程实现任务分配以及维护回收工作线程等操作,这些会在线程池的初始化中设定状态参数,让所有工作线程依据状态参数的变化实现获得任务以及释放等自动化操作,实现线程的自动化操作和管理。在设计中,会根据设备请求TCP的连接来分配任务到某一个工作线程,当有连接请求时则分配线程工作。被分配任务的工作线程则负责维护一个设备的连接,进行数据的上传和下发。在进行具体数据的上发之前,会根据SIP协议和系统的设计,通过SIP通信模块完成设备的注册,如果注册成功,则会触发另外一个请求,从线程池中分配出一个工作线程,让这个线程成为SIP协议下心跳保活机制的工作线程,用于维持服务器和接入网关装置的SIP通信;如果注册失败,则会回收工作线程到线程池,并断开注册失败的设备。成功的注册之后,设备就可以通过工作线程实现和SIP服务器的数据上发。当设备的通信中断后,用于维护的线程能自己判断出来,并释放线程的资源。GPS设备和接入网关装置采用的是Socket的方式实现TCP通信。这里TCP通信模块会结合接入网关装置的底层线程池模块实现Socket的功能强化。首先,接入网关装置的TCP通信模块会从配置文件中获取服务器的IP和端口、然后调用socketO函数创建 Socket客户端,最终监听在网络转换装置的IP和端口上等待GPS设备的TCP连接。当有设备连接的时候,为每个得到的连接开启TCP的保活机制,并将该连接作为任务的请求触发线程池分配工作线程处理连接请求的具体任务。然后通信的工作就移交到具体的线程中, 在其中,会调用selectO函数检测是否有数据到来,若检测到有数据,则调用recvO函数接收数据,并将工作移交到SIP通信模块实现SIP的设备注册或者后续的数据上发;假设出现recv O异常或者TCP定时超时或者是设备断开等情况,则会在线程中关闭该socket,并释放该资源;其他情况下,则继续等待数据。如图2所示为整个状态转移图,根据状态转移图进行Socket编程,思路清晰,简单可靠。
接入网关装置与服务器之间采用如图3的模型实现SIP的通信,具体功能由SIP 通信模块实现。整个流程开始会需要有一个注册过程,这保证了只有拥有权限的设备才能建立和服务器的通信,保证了系统的安全。设备发送SIP注册请求是在设备连上接入网关装置,并获得工作线程之后。工作线程会首先根据设备的连接信息,通过协议转换模块实现注册信息的封装,后通过SIP通信模块将其发给服务器。服务器会根据收到的注册信息分析判断该设备是否有注册的权限,如果有则给发出注册请求的设备发送注册密文,也就是先发送到接入网关装置,对密文的解析工作由接入网关装置代替设备完成。如果接入网关装置没有收到服务器下发的注册密文,则整个SIP通信失败,则断开设备的连接,回收线程的资源。如收到,则接入网关装置对注册密文进行解析,并将解析后的信息通过SIP通信模块发送给服务器,服务器则对该信息进行解析,对于正确注册的设备,服务器会下发注册成功的响应到接入网关装置,至此,该设备的SIP注册阶段就完成了。同样,如果接入网关装置没有收到注册成功的响应,SIP的通信也失败,同样要断开设备连接,并释放相关资源。最终,拥有了和服务器通信权限的设备可以和服务器进行SIP协议下的通信。注册成功之后, 会开启一个用于维护该SIP通信的保活机制,具体的就是采用一个单独的线程定时和服务器保持信息的交互,维护住该设备在服务器上的在线状态。该方法保证了心跳保活机制和设备数据上发的独立性,两种类型数据单独发送便于维护。在系统中,除了通信协议的转换之后,还有具体设备信息和服务器可识别数据的协议转换部分。本设计中,为此单独设计了一个协议转换模块,抽象出接口,方便以后添加和管理更多类型的数据类型转换。设备上发的GPS信息以及设备信息等,会通过这个模块处理,转换成现服务器可识别的XML格式,然后再封装到SIP协议的数据包中,而SIP协议的数据包也通过函数接口实现统一的封装,简化程序。同理,服务器下发的数据到达网络转换装置,也会经过协议转换模块,从收到的XML 信息中解析出具体的数据,并转换成GPS设备可识别的数据格式,完成封装,之后接入网关装置就将该信息发给特定的设备,实现服务器到设备的数据下发。本发明基于SIP协议,接入网关装置能主动与服务器建立连接,同时在与GPS设备的通信中能根据设备的中断情况,以及和服务器端注册、通信等状况实现异常情况的判断, 实现断开和重连,保证数据稳定传输与交互。由于使用了线程池技术,因此能在多设备情况环境下得到使用,并能对同时大量等严苛的情况实现良好的响应,拥有良好的吞吐量。本发明实现了在协议转换时,保证设备连接和通信的稳定正常工作。
权利要求
1.一种GPS设备接入网关装置,其特征在于所述接入网关装置包括线程池模块,所述线程池模块与TCP通信模块、SIP通信模块和协议转换模块连接,所述TCP通信模块用于与 GPS设备通过TCP协议进行通信,所述SIP模块用于与服务器之间采用SIP+XML协议进行数据通信;所述协议转换模块用于完成TCP协议的数据和SIP+XML协议数据的相互转换。
2.如权利要求I所述的GPS设备接入网关装置,其特征在于所述线程池模块中,控制 TCP通信模块和SIP通信模块,完成GPS设备在SIP框架下的服务器注册,实现设备的接入, TCP模块获取GPS设备的数据,通过协议转换模块转换数据,最后通过SIP模块将数据发送给服务器;同样,SIP模块接收服务器下发到设备的数据,通过协议转换模块转换数据,最后通过TCP模块下发到指定的设备。
3.如权利要求I所述的GPS设备接入网关装置,其特征在于所述线程池模块中,控制 TCP通信模块和SIP通信模块,通过设置TCP模块的保活机制,并和SIP模块的定时心跳包机制一起,保证GPS设备和接入网关装置、SIP服务器和接入网关装置两个网络的通信保活。如发生中断,则能通过TCP模块切断GPS设备和接入网关装置的通信,同时通过SIP模块切断接入网关装置和服务器的通信。
全文摘要
一种GPS设备接入网关装置,包括线程池模块,所述线程池模块与TCP通信模块、SIP通信模块和协议转换模块连接,所述TCP通信模块用于与GPS设备通过TCP协议进行通信,所述SIP模块用于与服务器之间采用SIP+XML协议进行数据通信;所述协议转换模块用于完成TCP协议的数据和SIP+XML协议数据的相互转换。本发明提供一种改善GPS的通信模式,将GPS设备和SIP系统相关联,建立一个应用层的协议可以对不同类型的数据进行统一管理,保持良好通信稳定性的GPS设备接入网关装置。
文档编号H04L29/06GK102594736SQ20121003161
公开日2012年7月18日 申请日期2012年2月13日 优先权日2012年2月13日
发明者刘恺, 华惊宇, 孟利民, 徐志江, 李净 申请人:杭州普诺科技有限公司, 浙江工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1