一种数据传输方法、设备及系统.pdf

上传人:b*** 文档编号:4285464 上传时间:2018-09-13 格式:PDF 页数:20 大小:1.24MB
返回 下载 相关 举报
摘要
申请专利号:

CN201410782530.6

申请日:

2014.12.16

公开号:

CN104519129A

公开日:

2015.04.15

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):H04L 29/08申请日:20141216|||公开

IPC分类号:

H04L29/08

主分类号:

H04L29/08

申请人:

京信通信系统(中国)有限公司

发明人:

黄健安

地址:

510663广东省广州市萝岗区科学城神舟路10号

优先权:

专利代理机构:

北京同达信恒知识产权代理有限公司11291

代理人:

黄志华

PDF下载: PDF下载
内容摘要

本发明公开了一种数据传输方法、设备及系统,应用在安装有浏览器的本地终端和内部架设有嵌入式Web服务器的至少一台远程监控设备的数据通信系统中,用以解决在位于不提供接入公网的有线网络接口的工程现场的远程监控设备与接入公网的本地终端之间无法建立一条网络链路的问题。该方法包括:本地终端通过创建的第一服务端套接字接收至少一个所述远程监控设备通过通用分组无线业务技术网络发送的包含套接字描述符的套接字连接请求;通过第一服务端套接字根据套接字连接请求中包含的套接字描述符建立并维护与发送套接字连接请求的远程监控设备的套接字连接;通过建立的所述套接字连接与发送套接字连接请求的远程监控设备进行数据传输。

权利要求书

权利要求书1.  一种数据传输方法,其特征在于,应用在安装有浏览器的本地终端和内 部架设有嵌入式Web服务器的至少一台远程监控设备的数据通信系统中,所述 方法包括: 本地终端通过创建的第一服务端套接字接收至少一台所述远程监控设备通 过通用分组无线业务技术GPRS网络发送的包含套接字描述符的套接字连接请 求,所述套接字描述符用于标识远程监控设备; 本地终端通过第一服务端套接字建立并维护与发送套接字连接请求的远程 监控设备的套接字连接,所述套接字连接是第一服务端套接字根据套接字连接 请求中包含的套接字描述符建立的; 本地终端通过建立的所述套接字连接与发送套接字连接请求的远程监控设 备进行数据传输。 2.  如权利要求1所述的方法,其特征在于,本地终端通过建立的所述套接 字连接与发送套接字连接请求的远程监控设备进行数据传输,包括: 本地终端通过创建的第二服务端套接字接收浏览器发送的包含套接字描述 符的数据请求,所述第二服务端套接字绑定了监听所述浏览器的端口; 本地终端在确定与所述套接字描述符所标识的远程监控设备建立了套接字 连接后,将浏览器的数据请求通过建立的所述套接字连接转发给所述套接字描 述符所标识的远程监控设备。 3.  如权利要求2所述的方法,其特征在于,本地终端在确定与所述套接字 描述符所标识的远程监控设备建立了套接字连接后,将浏览器的数据请求通过 建立的所述套接字连接转发给所述套接字描述符所标识的远程监控设备,包括: 本地终端通过线程确定与所述套接字描述符所标识的远程监控设备建立了 套接字连接; 本地终端通过所述线程解析浏览器发送的所述数据请求,确定该数据请求 包含的套接字描述符; 本地终端通过所述线程将所述数据请求发送给所述套接字描述符所标识的 远程监控设备,所述线程是通过建立的所述套接字连接将所述请求数据发送给 远程监控设备的。 4.  如权利要求3所述的方法,其特征在于,所述方法还包括: 本地终端通过所述套接字连接接收远程监控设备针对所述数据请求返回的 数据响应,将该数据响应发送给所述浏览器。 5.  如权利要求1所述的方法,其特征在于,本地终端通过建立的所述套接 字连接与发送套接字连接请求的远程监控设备进行数据传输,包括: 本地终端通过第一服务端套接字接收发送套接字连接请求的远程监控设备 的设备信息,以使所述浏览器对多台远程监控设备的设备信息进行汇总显示, 所述第一服务端套接字是利用建立的所述套接字连接接收所述设备信息的。 6.  一种数据传输方法,应用在安装有浏览器的本地终端和内部架设有嵌入 式Web服务器的至少一台远程监控设备的数据通信系统中,其特征在于,所述 方法包括: 远程监控设备通过端对端协议PPP拨号登录到通用分组无线业务技术 GPRS网络; 远程监控设备通过创建的第一客户端套接字向本地终端发送包含套接字描 述符的套接字连接请求,所述套接字连接请求是第一客户端套接字利用所述 GPRS网络发送的,以使所述本地终端建立与所述远程监控设备之间的套接字连 接; 远程监控设备通过所述套接字连接与所述本地终端进行数据传输。 7.  如权利要求6所述的数据传输方法,其特征在于,远程监控设备通过所 述套接字连接与所述本地终端进行数据传输,包括: 远程监控设备通过第一客户端套接字接收本地终端利用所述套接字连接发 送的数据请求; 远程监控设备通过创建的第二客户端套接字将接收的数据请求转发给所述 Web服务器; 远程监控设备通过第二客户端套接字接收所述Web服务器返回的针对所述 数据请求的数据响应,将该数据响应发送给所述第一客户端套接字; 远程监控设备利用第一客户端套接字将所述数据响应通过建立的所述套接 字连接发送给所述本地终端。 8.  如权利要求6所述的数据传输方法,其特征在于,远程监控设备通过建 立的所述套接字连接与所述本地终端进行数据传输,包括: 远程监控设备通过创建的第一客户端套接字将远程监控设备的设备信息发 送给所述本地终端,所述第一客户端套接字是利用所述套接字连接将设备信息 发送给所述本地终端的。 9.  一种本地终端,其特征在于,应用在安装有浏览器的本地终端和内部架 设有嵌入式Web服务器的至少一台远程监控设备的数据通信系统中,所述本地 终端包括: 接收模块,用于通过创建的第一服务端套接字接收至少一台所述远程监控 设备通过通用分组无线业务技术GPRS网络发送的包含套接字描述符的套接字 连接请求,所述套接字描述符用于标识远程监控设备; 建立模块,用于通过第一服务端套接字建立并维护与发送套接字连接请求 的远程监控设备的套接字连接,所述套接字连接是第一服务端套接字根据所述 接收模块接收的套接字连接请求中包含的套接字描述符建立的; 传输模块,用于通过所述建立模块建立的所述套接字连接与发送套接字连 接请求的远程监控设备进行数据传输。 10.  如权利要求9所述的本地终端,其特征在于,所述传输模块具体包括: 接收单元和传输单元; 所述接收单元,用于通过创建的第二服务端套接字接收浏览器发送的包含 套接字描述符的数据请求,所述第二服务端套接字绑定了监听所述浏览器的端 口; 所述传输单元,用于在确定与所述套接字描述符所标识的远程监控设备建 立了套接字连接后,将所述接收单元接收的浏览器的数据请求通过建立的所述 套接字连接转发给所述套接字描述符所标识的远程监控设备。 11.  如权利要求10所述的本地终端,其特征在于,所述传输单元,具体用 于通过线程确定与所述套接字描述符所标识的远程监控设备建立了套接字连 接;通过所述线程解析浏览器发送的所述数据请求,确定该数据请求包含的套 接字描述符;通过所述线程将所述数据请求发送给所述套接字描述符所标识的 远程监控设备,所述线程是通过建立的所述套接字连接将所述请求数据发送给 远程监控设备的。 12.  如权利要求11所述的本地终端,其特征在于,所述传输模块,还用于 通过所述套接字连接接收远程监控设备针对所述数据请求返回的数据响应,将 该数据响应发送给所述浏览器。 13.  如权利要求9所述的本地终端,其特征在于,所述传输模块,具体用 于通过第一服务端套接字接收发送套接字连接请求的远程监控设备的设备信 息,以使所述浏览器对多台远程监控设备的设备信息进行汇总显示,所述第一 服务端套接字是利用建立的所述套接字连接接收所述设备信息的。 14.  一种远程监控设备,其特征在于,应用在安装有浏览器的本地终端和 架设有嵌入式网络Web服务器的至少一台远程监控设备的数据通信系统中,包 括: 登录模块,用于通过端对端协议PPP拨号登录到通用分组无线业务技术 GPRS网络; 发送模块,用于通过创建的第一客户端套接字向本地终端发送包含套接字 描述符的套接字连接请求,所述套接字连接请求是第一客户端套接字利用所述 登录模块登录的GPRS网络发送的,以使所述本地终端建立与所述远程监控设 备之间的套接字连接; 传输模块,用于通过所述套接字连接与所述本地终端进行数据传输。 15.  如权利要求14所述的远程监控设备,其特征在于,所述传输模块,具 体用于通过第一客户端套接字接收本地终端利用所述套接字连接发送的数据请 求;通过创建的第二客户端套接字将接收的数据请求转发给所述Web服务器; 通过第二客户端套接字接收所述Web服务器返回的针对所述数据请求的数据响 应,将该数据响应发送给所述第一客户端套接字;利用第一客户端套接字将所 述数据响应通过建立的所述套接字连接发送给所述本地终端。 16.  如权利要求14所述的远程监控设备,其特征在于,所述传输模块,具 体用于通过创建的第一客户端套接字将远程监控设备的设备信息发送给所述本 地终端,所述第一客户端套接字是利用所述套接字连接将设备信息发送给所述 本地终端的。 17.  一种数据传输系统,其特征在于,包括权利要求9~13任一所述的本地 终端和至少一个权利要求14至16任一所述的远程监控设备。

说明书

说明书一种数据传输方法、设备及系统
技术领域
本发明涉及数据转发技术,尤其涉及一种数据传输方法、设备及系统。
背景技术
随着移动互联技术的发展,越来越多的监控产品需要通过Web(网络)网 页接入互联网并对其进行远程控制和访问。嵌入式技术与移动互联技术的结合 产生了嵌入式Web技术成为嵌入式技术发展的一个方向,由于Internet(互联 网)技术的渗透,嵌入式系统变的越来越智能化并具有越来越多的网络友好特 性。
当嵌入式Web服务器架设到远程监控设备中时,即便将远程监控设备放在 远端恶劣的环境中,只要保证网络链路畅通,远程用户采用B/S (Browser/Server,浏览器/服务器)模式时,可利用浏览器访问到远程监控设 备,实现对远程监控设备的远程维护、数据实时采集等,这样极大提高了监控 的效率,节省了人力物力成本。
而含有嵌入式Web服务器的远程监控设备如何联网成为保证网络链路畅 通的关键所在,也决定用户是否可以通过本地终端访问远程监控设备。针对 Web服务器架设在远程监控设备端情况,目前几乎所有联网措施仅通过网线接 入到公网,这样用户可以在家或办公室可利用个人电脑(Personal Computer, PC)或其他本地终端来实现对远程监控设备的访问。而在工程现场往往不会提 供接入公网的网络接口,这就使得远程监控设备无法通过接入公网的网络接口 与接入公网的本地终端相连,因此,如何在位于工程现场的远程监控设备与接 入公网的本地终端之间建立一条方便、可靠性高、可实现的网络链路成为一项 技术难题。
发明内容
有鉴于此,本发明实施例提供了一种数据传输方法、设备及系统,用以解 决在位于不提供接入公网的有线网络接口的工程现场的远程监控设备与接入 公网的本地终端之间无法建立一条网络链路的问题。
本发明实施例提供一种数据传输方法、设备及系统,具体如下:
一种数据传输方法,应用在安装有浏览器的本地终端和内部架设有嵌入式 Web服务器的至少一台远程监控设备的数据通信系统中,所述方法包括:
本地终端通过创建的第一服务端套接字接收至少一台所述远程监控设备 通过通用分组无线业务技术GPRS网络发送的包含套接字描述符的套接字连接 请求,所述套接字描述符用于标识远程监控设备;
本地终端通过第一服务端套接字建立并维护与发送套接字连接请求的远 程监控设备的套接字连接,所述套接字连接是第一服务端套接字根据套接字连 接请求中包含的套接字描述符建立的;
本地终端通过建立的所述套接字连接与发送套接字连接请求的远程监控 设备进行数据传输。
一种数据传输方法,应用在安装有浏览器的本地终端和内部架设有嵌入式 Web服务器的至少一台远程监控设备的数据通信系统中,所述方法包括:
远程监控设备通过端对端协议PPP拨号登录到通用分组无线业务技术 GPRS网络;
远程监控设备通过创建的第一客户端套接字向本地终端发送包含套接字 描述符的套接字连接请求,所述套接字连接请求是第一客户端套接字利用所述 GPRS网络发送的,以使所述本地终端建立与所述远程监控设备之间的套接字 连接;
远程监控设备通过所述套接字连接与所述本地终端进行数据传输。
一种本地终端,应用在安装有浏览器的本地终端和内部架设有嵌入式Web 服务器的至少一台远程监控设备的数据通信系统中,所述本地终端包括:
接收模块,用于通过创建的第一服务端套接字接收至少一台所述远程监控 设备通过通用分组无线业务技术GPRS网络发送的包含套接字描述符的套接字 连接请求,所述套接字描述符用于标识远程监控设备;
建立模块,用于通过第一服务端套接字建立并维护与发送套接字连接请求 的远程监控设备的套接字连接,所述套接字连接是第一服务端套接字根据所述 接收模块接收的套接字连接请求中包含的套接字描述符建立的;
传输模块,用于通过所述建立模块建立的所述套接字连接与发送套接字连 接请求的远程监控设备进行数据传输。
一种远程监控设备,应用在安装有浏览器的本地终端和架设有嵌入式网络 Web服务器的至少一台远程监控设备的数据通信系统中,包括:
登录模块,用于通过端对端协议PPP拨号登录到通用分组无线业务技术 GPRS网络;
发送模块,用于通过创建的第一客户端套接字向本地终端发送包含套接字 描述符的套接字连接请求,所述套接字连接请求是第一客户端套接字利用所述 登录模块登录的GPRS网络发送的,以使所述本地终端建立与所述远程监控设 备之间的套接字连接;
传输模块,用于通过所述套接字连接与所述本地终端进行数据传输。
一种数据传输系统,包括上述本地终端和上述的远程监控设备。
在本发明的实施例中,利用远程监控设备能通过GPRS网络与本地终端建 立单向链路,进而远程监控设备通过该单向链路向本地终端建立套接字连接, 使得远程监控设备和本地终端之间可以通过该建立的套接字连接来进行数据 传输,因此,解决了位于不提供接入公网的网络接口的工程现场的远程监控设 备与接入公网的本地终端之间无法建立一条网络链路的问题。
附图说明
图1为本发明实施例中的远程监控设备与本地终端之间的单向链路示意 图;
图2为本发明实施例中的针对本地终端侧的数据传输方法的流程图;
图3为本发明实施例中的针对本地终端侧的数据传输方法的另一流程图;
图4为本发明实施例中的针对远程监控设备侧的一种数据传输方法的流程 图;
图5为本发明实施例中的另一针对远程监控设备侧的一种数据传输方法的 流程图;
图6为本发明实施例中的数据传输方法的架构图;
图7为本发明实施例中的本地终端的结构示意图;
图8为本发明实施例中的远程监控设备的结构示意图;
图9为本发明实施例中的一种数据传输系统的示意图。
具体实施方式
为了解决现有技术中在位于不提供接入公网的有线网络接口的工程现场 的远程监控设备与接入公网的本地终端之间无法建立一条网络链路的问题,本 发明实施例提供了一种数据传输方法、设备及系统。
为了清楚地说明本发明实施例的方案,下面先对远程监控设备与本地终端 之间的单向链路进行说明。
工程现场中,远程监控设备(其内设有SIM(Subscriber Identity Module, 客户识别模块)卡,该SIM卡可以为GSM(Global System for Mobile  Communication,全球移动通信系统)或者WCDMA(Wideband Code Division  Multiple Access,宽带码分多址)卡)可通过无线Modem(调制解调器)进行PPP (Peer-Peer Protocol,端对端)拨号登陆到GPRS核心网,再经过GPRS(General  Packet Radio Service,通用分组无线服务技术)网络接入公网,该拨号上网的远 程监控设备能访问到公网的本地终端,然而,GPRS为远程监控设备分配内网 IP地址,公网的本地终端无法通过该内网IP地址访问所述远程监控设备,即 远程监控设备和用户之间的链路是单向的。此时,远程监控设备与本地终端之 间的单向链路示意图如图1所示。
在本发明实施例的技术方案中,正是基于上述远程监控设备通过GPRS网 络与本地终端之间建立的单向链路的基础上,远程监控设备通过该单向链路向 本地终端发送套接字(Socket)连接请求,与本地终端建立套接字连接,以及 利用该建立的套接字连接进行数据传输,因此,解决了位于不提供接入公网的 有线网络接口的工程现场的远程监控设备与接入公网的本地终端之间无法建 立一条网络链路的问题。并且针对上述问题,本领域通常做法是通过新增网关 设备并进行网关配置进行数据转发来解决上述问题,而本发明实施例中并不使 用网关设备,而是通过GPRS单向通路、Socket网络编程技术以及IP数据转 发技术来解决上述问题,有效降低网络建设和运营维护成本。
通常,线程用来创建套接字,本发明中的套接字可以均是由一个线程创建 的,也可以是由多个线程创建的,为了清楚地说明本发明实施例的方案,本发 明实施例中,针对本地终端侧,使用第一线程创建第一服务端套接字用于维护 与远程监控设备的数据链路,并在此数据链路上进行数据交互,使用第二线程 创建第二服务端套接字用于接收浏览器的数据请求,并将此数据请求存放在缓 冲区中;针对远程监控设备侧,使用第四线程创建第一客户端套接字,用于定 时向本地终端侧发送心跳信息,并接收本地终端转发浏览器的数据请求,使用 第五线程创建第二客户端套接字,用于将接收到本地终端转发浏览器的数据请 求转发给Web服务器。
下面结合说明书附图先从本地终端侧对本发明实施例的方案进行详细描 述,再从远程监控设备侧对本发明实施例的方案进行详细描述;最后再从系统 的角度对本发明实施例的方案进行详细描述。
参见图2,为本发明实施例提供的针对本地终端侧的数据传输方法的流程 图,该数据传输方法应用在安装有浏览器的本地终端和内部架设有嵌入式Web 服务器的至少一个远程监控设备的数据通信系统中,包括以下步骤:
步骤201:本地终端通过第一线程创建的第一服务端套接字接收至少一台 所述远程监控设备通过GPRS网络发送的包含套接字描述符的套接字连接请 求;
所述套接字描述符用于标识远程监控设备;
一个Socket通常包括:通信的目的IP地址、使用的传输层协议(TCP (Transmission Control Protocol,传输控制协议TCP)或UDP(User Datagram  Protocol,用户数据报协议))和使用的端口号三个参数。
所述第一服务端套接字作为服务端包含的IP地址可以为任意IP地址,因 为该第一服务端套接字作为本地终端的服务程序用于监听远程监控设备发送 过来的包含监控信息的套接字连接请求,并不定位具体某一个的远程监控设 备,而是处于等待连接的状态,实时监控网络状态。
所述监控信息包括远程监控设备与该第一服务端套接字进行通信而建立 的套接字描述符,还可以根据实际需要包括设备编号、地理位置、设备型号等。 而远程监控设备不止一台设备,可能为多台设备,利用套接字描述符(也可称 套接字的ID)来区别不同的设备。
步骤202:本地终端的第一服务端套接字建立并维护与发送套接字连接请 求的远程监控设备的套接字连接,所述套接字连接是第一服务端套接字根据套 接字连接请求中包含的套接字描述符建立的;
在Socket网络编程中,获得了对端的包含套接字描述符的套接字连接请求 后,即可利用该套接字描述符与对端进行通信。
由于远程监控设备端通过PPP拨号登陆到GPRS核心网,GRPS核心网给 远程监控设备分配内网IP,该IP是内网IP,运营商通过地址映射技术将该内 网的IP映射到公网的IP,因此,远程监控设备端通过映射到公网的IP直接访 问到本地终端,而本地终端是无法访问到GRPS内网的IP。本地终端侧第一服 务端套接字描述符中设置IP为INADDR_ANY(即能访问到本地终端侧的任意 IP)和PORT为8888(该端口号为固定端口号),所以,本地终端并不关注远 程监控设备的IP,只要远程监控设备能访问到本地终端即可通过套接字网络编 程技术建立网络连接。
步骤203:本地终端通过建立的所述套接字连接与发送套接字连接请求的 远程监控设备进行数据传输。
较佳的,上述步骤203,包括步骤A和步骤B:
步骤A:本地终端通过第二线程创建的第二服务端套接字接收浏览器发送 的包含套接字描述符的数据请求,所述第二服务端套接字绑定了监听所述浏览 器的端口,第二服务端套接字作为服务端IP地址任意;
步骤A中的所述浏览器可以是本地终端上的浏览器,也可以是其它设备终 端的浏览器,此时,该设备终端需要先和本地终端建立连接,也即该设备终端 能访问所述本地终端。
步骤B:本地终端在确定与所述套接字描述符所标识的远程监控设备建立 了套接字连接后,将浏览器的数据请求通过建立的所述套接字连接转发给所述 套接字描述符所标识的远程监控设备。
较佳的,在上述步骤A之后,步骤B之前,所述方法还包括:步骤C;
步骤C:本地终端通过第二线程创建的第二服务端套接字监听浏览器发送 的包含套接字描述符数据请求,并将该数据请求放入缓存中;
本步骤C中将数据放入缓存中供后续解析使用是业界已知的,即使这里没 有描述本步骤C,后续进行解析时,也隐含了本步骤C。
此时,上述步骤B,包括:步骤D至步骤F;
步骤D:本地终端通过第三线程确定与所述套接字描述符所标识的远程监 控设备建立了套接字连接,所述第三线程是本地终端创建的;
步骤E:本地终端通过所述第三线程解析缓存中的所述数据请求,确定该 数据请求包含的套接字描述符;
步骤F:本地终端通过所述第三线程将所述数据请求通过建立的所述套接 字连接发送给所述套接字描述符所标识的远程监控设备。
上述步骤D至步骤F中的第三线程也可以换为上述的第一线程或第二线 程,也就是说,本发明实施例的方案可以由本地终端中的同一个线程来执行。
较佳的,所述方法还包括:
本地终端通过套接字连接接收远程监控设备针对所述数据请求返回的数 据响应,将该数据响应发送给所述浏览器,这里具体为第三线程使用所述套接 字连接来接收所述数据响应。
较佳的,上述步骤203包括:
本地终端通过第一服务端套接字监听发送套接字连接请求的远程监控设 备的设备信息,以使所述浏览器对多台远程监控设备的设备信息进行汇总显 示,所述第一服务端套接字是利用建立的所述套接字连接接收所述设备信息 的。
本发明实施例的本地终端侧进行数据传输的上述方案可以基于Windows  Socket编程技术编写的应用程序来实现,下面以本地终端的监听本地浏览器端 口为7878;监听本地端口使用8888(也即设定8888为监听套接字连接请求的 端口)为例,对上述实施例的方案进行说明:
如图3所示,该应用程序含有三个线程:线程1用于监听远程监控设备的 套接字连接请求,接收远程监控设备发送过来的设备信息数据,该设备信息数 据用于本地终端网页汇总界面。线程2接收浏览器发送的POST请求(目的是 为了向远程监控设备内的Web服务器传送数据)或GET请求(目的是从远程 监控设备内的Web服务器获取数据),同时将数据请求放在缓冲Buffer中;线 程3一方面接收线程2的Buffer数据,另一方面将远程监控设备端返回的响应 数据返回给浏览器;
为了实现上述功能,线程1执行以下步骤:
步骤3011:创建第一服务端套接字(也即Server Socket1),绑定监听本地 8888端口;
步骤3012:第一服务端套接字接收远程监控设备的套接字连接请求,与该 远程监控设备建立套接字连接;
由于在数据传输系统中至少有一台远程监控设备,因此,可能有多个远程 监控设备向该本地终端发送套接字连接,这里本地终端分别与每一个发送套接 字连接请求的远程监控设备建立套接字连接,每个请求中包含的套接字描述符 是不同的(也即每一个Socket的ID是不同的,该ID可用于标识远程监控设 备);
步骤3013:第一服务端套接字维护与远程设备的套接字连接;
步骤3014:第一服务端套接字利用建立的套接字连接接收远程监控设备的 设备信息,并放入xml(eXtensible Markup Language,可扩展标记语言)文件 中。
第一服务端套接字将设备信息放入xml文件中,以供浏览器来显示这些设 备信息。
线程2执行以下步骤:
步骤3021:创建第二服务端套接字(也即Server Client2),绑定监听本地 浏览器7878端口;
步骤3022:第二服务端套接字接收浏览器的数据请求;
步骤3023:第二服务端套接字将浏览器的数据请求与对应的套接字句柄 (Socketfd)存入Buffer;
这里的套接字句柄用于区分是哪个浏览器发送请求,远程监控设备中的 Web服务器(webserver)回应对应的浏览器。当多个客户终端用浏览器访问远 程监控设备时,需要一一对应响应。
线程3执行以下步骤:
步骤3031:第三线程判断是否有浏览器数据请求和建立了套接字连接;若 判断结果为有浏览器请求且建立了套接字连接,则执行步骤3032;否则,结束。
具体的,第三线程通过查看缓冲Buffer中数据类型和建立的socket句柄来 判断是否有浏览器数据请求和建立了套接字连接。
步骤3032:解析浏览器的数据请求,确定数据请求中包含的套接字描述符;
步骤3033:发送浏览器的数据请求至确定的套接字描述符所标识的远程设 备,清除buffer数据,等待远程监控设备回复数据响应;
步骤3034:接收远程监控设备针对所述数据请求回复的数据响应,并存入 buffer;
步骤3035:把远程监控设备回复的响应数据发送给数据请求的浏览器,清 除buffer数据。
参见图4,为本发明实施例中针对远程监控设备侧的一种数据传输方法, 该方法应用在安装有浏览器的本地终端和架设有嵌入式Web服务器的至少一 台远程监控设备的数据通信系统中,包括以下步骤:
步骤401:远程监控设备通过端对端协议PPP拨号登录到通用分组无线业 务技术GPRS网络;
步骤402:远程监控设备通过第四线程创建的第一客户端套接字向本地终 端发送包含套接字描述符的套接字连接请求,所述套接字连接请求是第一客户 端套接字利用所述GPRS网络发送的,以使所述本地终端建立与所述远程监控 设备之间的套接字连接;
步骤403:远程监控设备通过所述套接字连接与所述本地终端进行数据传 输。
较佳的,上述步骤403包括:以下步骤:
步骤A2:远程监控设备通过第一客户端套接字接收本地终端利用所述套 接字连接发送的数据请求;
步骤B2:远程监控设备通过第五线程创建的第二客户端套接字将接收的 数据请求转发给所述Web服务器;
步骤C2:远程监控设备通过第二客户端套接字接收所述Web服务器返回 的针对所述数据请求的数据响应,将该数据响应发送给所述第一客户端套接 字;
步骤D2:远程监控设备通过第一客户端套接字将所述数据响应通过建立 的所述套接字连接发送给所述本地终端。
较佳的,上述步骤403包括:
远程监控设备通过第四线程创建的第一客户端套接字将远程监控设备的 设备信息发送给所述本地终端,所述第一客户端套接字是利用所述套接字连接 将设备信息发送给所述本地终端的。
本发明实施例的远程监控设备侧进行数据传输的上述方案可以基于Linux  Socket编程技术编写的应用程序来实现,下面以本地终端设备的IP地址(公 网IP地址)为58.248.22.60,本地终端使用8888端口作为本地监听端口为例, 对上述实施例的方案进行说明:
如图5所示,该应用程序含有两个线程:线程4,用于在远程Web设备应 用程序启动后首先与本地终端的线程1建立套接字连接,并向本地终端PC发 送心跳信息,通过建立的套接字连接接收线程3的第二服务端套接字发送过来 的数据,并将数据转发给线程5。线程5用于接收线程4的数据请求,并把数 据请求转发给嵌入式Web服务器,同时接收嵌入式Web服务器回复的响应数 据,并把回复的响应数据返回给线程4,线程4再把回复的响应数据通过建立 的套接字连接发给线程3。
为了实现上述功能,远程监控设备端线程4执行以下步骤:
步骤5011:创建第一客户端套接字(也即Client Socket1),绑定连接 58.248.22.60的8888端口,定时向本地终端发送套接字连接请求;
由于在上述例子中,本地终端使用8888端口作为本地监听端口,因此, 这里需要使用第一客户端套接字来绑定8888端口,进而使得发送的套接字连 接请求进入本地终端的8888端口,此时,本地终端即可监听到该连接请求;
步骤5012:确定与本地终端建立了套接字连接,将用户设备信息通过创建 的该套接字连接发送给本地终端,并设置连接成功标识为1;
之后,线程4还可以通过向本地终端发送心跳消息,通知本地终端无线监 控设备处于在线状态。
线程5执行以下步骤:
步骤5021:创建第二客户端套接字(Client Socket2),第二客户端套接字判 断连接成功标识是否为1,若是,则执行步骤5022;
该第二客户端套接字中包含的IP地址为Web服务器的IP地址,假设Web 服务器的IP地址为127.0.0.1,则这里第二客户端套接字中包含的IP地址即为 127.0.0.1;该第二客户端套接字包含的端口号可以为80,80端口是为HTTP (HyperText Transport Protocol)即超文本传输协议开放的。
步骤5022:第二客户端套接字接收本地终端浏览器的数据请求;
步骤5023:第二客户端套接字创建与本地Web服务器之间的套接字连接;
步骤5024:第二客户端套接字将接收到的数据请求通过创建的与本地Web 服务器之间的套接字连接发送至Web服务器;
步骤5025:第二客户端套接字接收Web服务器返回的数据响应,关闭与 Web服务器的连接;
步骤5026:第二客户端套接字将接收的数据响应通过与本地终端建立的 套接字连接发送给该本地终端。
实现上述图3和图4所示的数据传输方法的架构图如图6所示,图6中画 出了各个套接字之间的关系,其中,带双向箭头的虚线表示套接字内部之间的 交互,远程监控设备数据传输程序中的带双向箭头的直实线表示第二客户端套 接字和BOA服务器之间的数据交互,本地终端数据传输程序中带双向箭头的 直实线表示浏览器和线程2的交互,带单向箭头的直实线表示数据间的传输, 带单向箭头的直虚线表示心跳消息的发送,图6中的使用BOA服务器作为Web 服务器。
基于同一发明构思,本发明实施例还提供了一种本地终端和一种远程监控 设备,由于该本地终端和远程监控设备所解决问题的原理与前述数据传输方法 相似,因此本地终端和远程监控设备的实施可以参见前述方法的实施,重复之 处不再赘述。
如图7所示,为本发明实施例提供的一种本地终端,应用在安装有浏览器 的本地终端和内部架设有嵌入式Web服务器的至少一个远程监控设备的数据 通信系统中,所述本地终端包括:接收模块71、建立模块72和传输模块73; 其中:
接收模块71,用于通过创建的第一服务端套接字接收至少一台所述远程监 控设备通过通用分组无线业务技术GPRS网络发送的包含套接字描述符的套接 字连接请求,所述套接字描述符用于标识远程监控设备;
建立模块72,用于通过第一服务端套接字建立并维护与发送套接字连接请 求的远程监控设备的套接字连接,所述套接字连接是第一服务端套接字根据所 述接收模块71接收的套接字连接请求中包含的套接字描述符建立的;
传输模块73,用于通过所述建立模块72建立的套接字连接与发送套接字 连接请求的远程监控设备进行数据传输。
较佳的,所述传输模块73,具体包括:接收单元731和传输单元732;
所述接收单元731,用于通过创建的第二服务端套接字接收浏览器发送的 包含套接字描述符的数据请求,所述第二服务端套接字绑定了监听所述浏览器 的端口;
所述传输单元732,用于在确定与所述套接字描述符所标识的远程监控设 备建立了套接字连接后,将所述接收单元731接收的浏览器的数据请求通过建 立的所述套接字连接转发给所述套接字描述符所标识的远程监控设备。
较佳的,所述传输单元732,具体用于通过线程确定与所述套接字描述符 所标识的远程监控设备建立了套接字连接;通过所述线程解析浏览器发送的所 述数据请求,确定该数据请求包含的套接字描述符;通过所述线程将所述数据 请求通过建立的所述套接字连接发送给所述套接字描述符所标识的远程监控 设备。
较佳的,所述传输模块73,还用于通过所述套接字连接接收远程监控设备 针对所述数据请求返回的数据响应,将该数据响应发送给所述浏览器。
较佳的,所述传输模块73,具体用于通过第一服务端套接字接收发送套接 字连接请求的远程监控设备的设备信息,以使所述浏览器对多台远程监控设备 的设备信息进行汇总显示,所述第一服务端套接字是利用建立的所述套接字连 接接收所述设备信息的。
如图8所示,为本发明实施例提供的一种远程监控设备,应用在安装有浏 览器的本地终端和内部架设有嵌入式Web服务器的至少一台远程监控设备的 数据通信系统中,所述远程监控设备包括:登录模块81、发送模块82和传输 模块83;其中:
登录模块81,用于通过端对端协议PPP拨号登录到通用分组无线业务技 术GPRS网络;
发送模块82,用于通过创建的第一客户端套接字向本地终端发送包含套接 字描述符的套接字连接请求,所述套接字连接请求是第一客户端套接字利用所 述登录模块81登录的GPRS网络发送的,以使所述本地终端建立与所述远程 监控设备之间的套接字连接;
传输模块83,用于通过所述套接字连接与所述本地终端进行数据传输。
较佳的,所述传输模块83,具体用于通过第一客户端套接字接收本地终端 利用所述套接字连接发送的数据请求;通过创建的第二客户端套接字将接收的 数据请求转发给所述Web服务器;通过第二客户端套接字接收所述Web服务 器返回的针对所述数据请求的数据响应,将该数据响应发送给所述第一客户端 套接字;利用第一客户端套接字将所述数据响应通过建立的所述套接字连接发 送给所述本地终端。
较佳的,所述传输模块83,具体用于通过创建的第一客户端套接字将远程 监控设备的设备信息发送给所述本地终端,所述第一客户端套接字是利用所述 套接字连接将设备信息发送给所述本地终端的。
如图9所示,为本发明实施例提供的一种数据传输系统,包括上述的任一 本地终端91和至少一个上述的任一远程监控设备92。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计 算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结 合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包 含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产 品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入 式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算 机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一 个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设 备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中 的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个 流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使 得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处 理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个 流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基 本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要 求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发 明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

一种数据传输方法、设备及系统.pdf_第1页
第1页 / 共20页
一种数据传输方法、设备及系统.pdf_第2页
第2页 / 共20页
一种数据传输方法、设备及系统.pdf_第3页
第3页 / 共20页
点击查看更多>>
资源描述

《一种数据传输方法、设备及系统.pdf》由会员分享,可在线阅读,更多相关《一种数据传输方法、设备及系统.pdf(20页珍藏版)》请在专利查询网上搜索。

本发明公开了一种数据传输方法、设备及系统,应用在安装有浏览器的本地终端和内部架设有嵌入式Web服务器的至少一台远程监控设备的数据通信系统中,用以解决在位于不提供接入公网的有线网络接口的工程现场的远程监控设备与接入公网的本地终端之间无法建立一条网络链路的问题。该方法包括:本地终端通过创建的第一服务端套接字接收至少一个所述远程监控设备通过通用分组无线业务技术网络发送的包含套接字描述符的套接字连接请求;。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1