CN102377814B - 针对嵌入式操作***的远程协助服务方法 - Google Patents

针对嵌入式操作***的远程协助服务方法 Download PDF

Info

Publication number
CN102377814B
CN102377814B CN 201010263466 CN201010263466A CN102377814B CN 102377814 B CN102377814 B CN 102377814B CN 201010263466 CN201010263466 CN 201010263466 CN 201010263466 A CN201010263466 A CN 201010263466A CN 102377814 B CN102377814 B CN 102377814B
Authority
CN
China
Prior art keywords
equipment
remote assistance
data
remote
tcp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN 201010263466
Other languages
English (en)
Other versions
CN102377814A (zh
Inventor
贡运华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FANDE Co Ltd
Original Assignee
FANDE Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FANDE Co Ltd filed Critical FANDE Co Ltd
Priority to CN 201010263466 priority Critical patent/CN102377814B/zh
Publication of CN102377814A publication Critical patent/CN102377814A/zh
Application granted granted Critical
Publication of CN102377814B publication Critical patent/CN102377814B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种通讯控制方法,尤其是指一种针对嵌入式操作***的远程协助服务方法,通过利用HTTP协助代理服务技术及反向主动连接技术,使得远程协助服务器可通过网络数据传输与交换对远端嵌入式设备前端的路由器进行访问、配置,从而使得嵌入式设备成为可服务的网络端子设备,从而使得更多的嵌入式设备很容易地成为网络中可服务的网络端子设备。与通用的远程协助方法相比较能够大大地减少人力、财力的开销,同时减少用户在嵌入式设备的安装与使用中困惑与烦恼,推进、扩展了未来嵌入设备发展的市场与前景。

Description

针对嵌入式操作***的远程协助服务方法
【技术领域】
本发明涉及一种通讯控制方法,尤其是指一种针对嵌入式操作***的远程协助服务方法。
【背景技术】
在科技发展的今天,计算机的使用已经深入千家万户,成为人们生活、工作、学习、娱乐等不成缺少的一部份,再加上互联网的高速发展,人们使用计算机的情形更是随处可见。计算机用户,特别是没有多少技术专长的用户,经常会遇到这样一些配置问题或使用问题,技术支持人员或朋友、家庭成员很难通过电话进行诊断和解决。“远程协助”为用户提供了一种获取所需帮助的途径。有经验的用户可以利用“远程协助”直接为自己的朋友和家庭成员提供帮助,并可节约成本。
其工作原理在于:远程协助使用了终端服务技术,允许帮助人员通过远程“终端服务”会话来提供帮助。远程协助在建立您与帮助人员之间的连接时使用了一种简单而安全的过程。远程协助技术是被控端请求已信任的协助控制端,透过网络(局域网或者广域网)连接到被控端的计算机上,因此整个远程控制所解决处理的问题是一个远程网络操控的过程。
已有的远程协助技术都可以提供远程的协助,可以服务远程的查看,操作等等功能,也可以协助与前端的路由器或者网络设备进行通信,但其应用于PC机或者PC机性能之上的终端设备,并且设备必需安装了功能完善的操作***才能使用。终端设备,例如我们的个人PC机电脑,或者工作站等,这样的终端设备结构复杂,功能强大,具有复杂集成电路,高性能的多任务处理能力。终端设备上的操作***,例如Windows Server 2000、Windows XP、Windows Vista等系列,Linux***等开放式操作***。在远程协助安装技术实现的过程中,其中的被控端与协助端都必需运行在终端设备并安装了功能完善的作操***上。然而,在未来社会发需求下,更多的小型多功能的嵌入式产品(如手机、电视机顶盒、多媒体设备等等具有嵌入式操作***的设备等)将占据大部分市场,而其中30%到40%的产品将成为网络端子设备,在这些结构简单,功能单一,中、低端处理能力,小型嵌入式操作***的设备是无法使用已有的远程协助技术,因为这些设备在网络上使用时,要能提供服务时就需要成为网络TCP数据流服务设备,就当今的网络模型状态,要让网络端子设备成为网络服务设备,并能通过网络TCP的数据流传输方式是很难实现的,也就需要其它外界的协助才能将网络端子成为网络TCP数据流服务设备。即为使用远程协助技术不得不此类嵌入设备增加一台终端计算机,从成本上已经增加了远程协助成本及实用价值。同时,终端计算机上的数据信息将出现安全隐患,因为在透过终端计算机对嵌入式设备进行协助的时候,计算机需要开放计算机的操作权限,这样就会让计算失去安全性。可见就已有的远程协助技术产品来完成远程协助工作,需要付出的额外庞大的人力资源与经济资源。
此外,已有的远程协助技术作为被控端的设置都较为复杂,除了对本地权限设置,有些产品还需要对前端的路由器或者上网设备做设置。例如,Microsoft提供的“远程桌面”工具,如果是想在广域网上使用时,除了设置本地的用户权限,还需要设置前端网络连接的路由器。这是一般用户无法实现的,不知道如何设置访问用户的权限信息,或者不知道如何设定前端路由器或者前端网络设备。
【发明内容】
本发明的目的在于克服了上述缺陷,提供一种针对于被控端为嵌入式操作***,提供通过配置路由器或者网络连接设备,可使嵌入式设备与其前端的路由器或者网络连接设备通信从而使其成为广域网上的可被服务的远程协助服务方法。
本发明的目的是这样实现的:一种针对嵌入式操作***的远程协助服务方法,其特征在于:它包括步骤
A)、初始化准备,对远端设备的网页浏览器属性进行代理服务器连接的相关信息的设置,用于与远端嵌入式设备所连接的路由器或者网络设备进行数据通信,作为远程协助服务配置的工具;对远程协助服务器进行功能状态的初始化,准备开启远程协助服务;
所述步骤A的初始化准备包括,
初始化远程协助服务的步骤,对远程协助服务器的服务状态进行初始化,将其服务状态初始化为就绪状态;当远端嵌入式设备与远程协助服务器的连接数超过最大值时,该状态就被修改为忙碌状态;初始化设备任务队列表、全局变量、标识符;
初始化网页浏览器的步骤,对浏览器的代理属性的IP端口、转发端口进行配置;
B)、开启监听网络端口,远程协助服务器对网络端口进行监听等待远端设备的远程协助连接请求;
所述步骤B中的网络端口包括,用于接收来自网页浏览器发送来的Http数据请求及与远端嵌入设备之间建立网络通信信道,协调控制网页浏览器发送的Http数据与远端嵌入设备回馈的Http数据转换;
所述步骤B的开启监听网络端口包括,
侦听网页代理服务端口的步骤,通过绑定本地第一端口TCP数据通信类型作为网页代理服务的通信端口,用于网页浏览器模块中的网页浏览器与远程协助服务器建立TCP的通信链路,实现二者之间的网络数据通信;
侦听远程协助服务端口的步骤,通过绑定本地第二端口TCP数据通信类型作为远程协助服务的通信端口,用于远端嵌入式设备与远程协助服务器建立TCP的请求通信链路,响应远端嵌入式设备的远程协助请求,添加设备基本状态信息并将其添加到设备任务队列表中,实现二者之间的简单命令的传送。
侦听反向主动连接通信端口的步骤,绑定本地第二端口TCP数据通信类型作为远程协助服务处理过程中反向主动连接的通信端口,用于远端嵌入式设备与远程协助服务器建立TCP的数据交换通信链路,实现二者之间远程协助过程中处理数据的交换与传送;
C)、设备自我状态侦测,远端设备对其路由器或网络连接设备的网关状态及信息进行侦测采集;
所述步骤C的设备自我状态侦测包括,
设备信息侦测的步骤,用于获取设备的序列编号,需要在其前端路由器上配置的服务端口号,路由器的用户名和密码;
网络信息侦测的步骤,设备通过检测设备网卡上的网络地址信息,判定当前设备所在的网络状态(局域网或者广域网),再通过HTTP通信协议,侦测其前端路由器的网关地址,路由器形型号;
初始化线程池的步骤,创建用于服务后期与远程协助服务器之间通信所用到的线程需求的线程池,用于任务分配使用,当有任务请求时,程序会从线程池中激活一线程用于任务处理,当任务结束后,再把该线程归还到线程池中;
D)、设备发起协助请求,远端设备将侦测采集信息形成数据包通过网络向远程协助服务器发起协助连接请求;
所述步骤D的设备发起协助请求包括,
建立TCP通信链路的步骤,设备向远程协助服务器的远程协助服务的通信端口发起TCP的数据连接请求,等待远程协助服务器响应后便建立起TCP的数据通信链路;
发送远程协助请求的步骤,当TCP通信链路建立完成后,设备会向远程发起远程协助请求,请求服务器对其进行远程协助,配置其前端路由器设备,同时,设备会后携带其设备信息,网络状态信息一起向远程协助服务器进行注册,等待远程协助的处理;
维护TCP通信链路的步骤,当远程协助服务器与设备之间的TCP通信链路建立完成后,远程协助服务器会间隔向设备发一次心跳数据包,以维护该TCP通信链路的有效性,同时,处理二者任意一端出现异常断开的情况;设备会间隔检测数据的接收,如果连续三次没有接收远程协助服务器发送来任何数据,那么,设备则认为该链路已经破坏或断开,设备关闭本端的网络连接与通信资源,重新发起协助请求;
E)、响应远程协助请求,远程协助服务器获取远程设备请求信息并将其添加到自身设备注册列表中,表明此时设备已经准备就绪,随后,远程协助服务器将该通信链路保留并维护、等待网页浏览器的请求数据,同时远程协助服务器根据设备注册的网络状态信息与网关信息激活远程协助事件;
所述步骤E的响应远程协助请求包括,
建立TCP通信链路的步骤,远程协助服务器在远程协助服务的通信端口接收到设备的TCP数据连接请求后,便响应其请求建立起TCP的数据通信链路;
接收设备的远程协助请求的步骤,在建立起的TCP数据通信链路上,服务器接收到设备的远程协助请求,同时收到包括设备信息与网络状态信息,服务器会将设备注册添加到设备任务队列表中,标识设备为就绪状态,准备处理;
维护TCP通信链路的步骤,当远程协助服务器与设备之间的TCP通信链路建立完成后,远程协助服务器会间隔向设备发一次心跳数据包,以维护该TCP通信链路的有效性,同时,处理二者任意一端出现异常断开的情况,当服务器在向远端设备发送心跳数据包时,发现远端设备已经断开通信链路或者通信链路已经破坏,那么,服务器会关闭本端的网络连接与通信资源,同时,清除设备在设备任务队列表中的信息。
F)、开启网页浏览器,远程协助服务器激活网页浏览器并连接远端设备网关,同时网页浏览器发送Http连接请求发送给远程协助服务器;
所述步骤F的开启网页浏览器包括,
建立TCP通信链路的步骤,当设备请求从设备任务队列表中选取处理时,便激活开启网页浏览器,同时,根据设备的网络信息中的网关信息,加裁到网页浏览器中,发起HTTP连接请求,同事网络浏览器向远程协助服务器的网页代理服务的通信端口发起TCP的数据连接请求并建立起TCP的数据通信链路;
发送HTTP请求数据的步骤,网页浏览器通过与远程协助服务器建立好的TCP数据通信链路,将加裁设备端路由器网关信息的HTTP信息发送给远程协助服务器;
接收HTTP回馈数据的步骤,当网页浏览器发送完HTTP信息后,开始等待接收HTTP回馈数据,直到接收HTTP回馈数据或者接收超时,网页浏览器关闭它与远程协助服务器之间的TCP数据通信链路;
G)、建立数据传输链路,远程协助服务器要求远端设备开启方向主动连接,远端设备向远程协助服务器发起反向主动连接请求,远程协助服务器相应该请求与远端设备建立连接;
所述步骤G的建立数据传输链路包括,
建立TCP数据传输通信链路的步骤,当远程协助服务器接收到网页浏览器的请求数据后,远程协助服务器会向远端嵌入式设备发出要求设备发起反向主动连接请求,让设备与远程协助服务器之间再建立数据传输链路,设备接收到远程协助服务器的反向主动连接请求后,将从线程池中激活一个线程来处理设备建立数据传输链路过程,设备会向远程协助服务器的反向主动连接的通信端口发起TCP的数据连接请求,等待远程协助服务器响应后便建立起TCP的数据传输通信链路;
接收远程协助服务器HTTP数据的步骤,当远程协助服务器与远端嵌入式设备之间已经建立起TCP数据传输链路后,远程协助服务器会把网页浏览器的HTTP数据发送给设备,设备会存储该数据信息,等待与路由建立好TCP的数据链路后再转发;
发送路由器回馈数据的步骤,当设备接收到路由器的HTTP回馈数据后,会把该回馈数据发送给远程协助服务器;
H)、转发请求数据,远程协助服务器将网页浏览器发送Http连接请求转发至远端设备;
所述步骤H的转发请求数据包括,
与路由器网关建立TCP数据通信链路的步骤,当设备接收到远程协助服务器发送来的HTTP数据请求后,解析该HTTP数据取出HTTP请求的目的地址,比较目的地址与设备前端路由器网关地址是否相同,若不同则丢弃该HTTP数据,关闭反向主动连接建立的数据通信链路,释放资源退出任务,将线程归还线程池;若相同,则设备将从线程池中激活一个线程来处理与路由器网关建立TCP数据通信链路过程,设备向路由器网关的端口发起TCP的数据连接请求,该路由器网关响应后,建立起TCP数据通信链路;
转发HTTP请求数据的步骤,当设备与路由器之间的TCP数据通信链路建立完成后,设备会将服务器发送来的HTTP数据请求进行解析,去掉其中含有代理地址的部分再转修改后的数据发给路由器;
接收回馈的HTTP请求数据的步骤,当设备把HTTP数据转发给路由器后,便开始等待路由的HTTP数据回馈,若与路由建立的TCP数据通信链路出现异常中断、关闭,则设备关闭反向主动连接建立的数据通信链路,释放资源退出任务,将线程归还线程池;
I)、设备反馈网关数据,远端设备连接到路由器或网络连接设备的网关,并把接收到的请求数据转发给路由器的网关,随后等待其反馈,设备接收到回馈信息后,再把回馈信息通信通过与远程协助服务器之间的通信链路回传给远程协助服务器;
J)、转发设备回馈数据,远程协助服务器收到来自远端设备网关Http数据后再吧该数据转发至网页浏览器;
K)、完成远程协助连接,远程协助服务器代理下完成网页浏览器与远端设备之间的数据链路连接,网页浏览器可显示、操作远端嵌入式设备前端路由器的网关,并透过远程协助服务器实现对远端嵌入式设备的网络可服务功能的协助配置、安装。
相比于常见的远程协助实现方法,本发明的有益效果在于通过利用HTTP协助代理服务技术及反向主动连接技术,使得远程协助服务器可通过网络数据传输与交换对远端嵌入式设备前端的路由器进行访问、配置,从而使得嵌入式设备成为可服务的网络端子设备,从而使得更多的嵌入式设备很容易地成为网络中可服务的网络端子设备。与通用的远程协助方法相比较能够大大地减少人力、财力的开销,同时减少用户在嵌入式设备的安装与使用中困惑与烦恼,推进、扩展了未来嵌入设备发展的市场与前景。
【附图说明】
下面结合附图详述本发明的具体结构
图1为本发明的***架构图
图2为本发明的方法流程图
图3为本发明步骤A的具体方法流程图
图4为本发明步骤B的具体方法流程图
图5为本发明步骤C的具体方法流程图
图6为本发明步骤D的具体方法流程图
图7为本发明步骤E的具体方法流程图
图8为本发明步骤F的具体方法流程图
图9为本发明步骤G的具体方法流程图
图10为本发明步骤H的具体方法流程图
【具体实施方式】
如图1所示为本发明远程服务方法基于的***架构图,其中远程协助服务的运营服务器及网页浏览器设置在本地网中,其远程服务程序运行在计算机操作***上,计算机连接于互联网并获得有效有广域网IP地址,而后需要对浏览器属性配置,即配置地址、本机IP端口、转发端口等信息。而远程协助被控端(即运行于嵌入式操作***的嵌入式设备),该操作***能提供网络连线,并能连接到广域网即可,无需做其它配置。
网页浏览器的功能是用于远程协助服务器配置远端嵌入式设备前端路由器或网络连接设备,是配置过程中数据发送与数据显示的载体。扮演的角色为远程协助服务过程中的任务执行者,实现工具。
远程协助服务器的功能是用于协调数据传输的过程,同时也是对请求信息与回馈信息的数据转发。扮演的角色为远程协助服务过程中的核心控制者、任务调度者。
嵌入式设备内会嵌入远程协助的被控程序,主要的功能是发起远程协助服务的请求,并做单一的数据转发。扮演的角色为远程协助服务过程中的任务发起者、数据转发器。
在嵌入式设备端局域网中还设有路由器/网络连接设备(网关),它是网络的接入设备,可以让连接在其下的设备与Internet(互联网)进行网络数据的通信。扮演的角色为远程协助服务过程中的任务的受控者。
本***实现的目的是通过嵌入式远程协助服务实现方法完成对远端的嵌入式设备的路由器或者网络连接设备的配置,让远端的嵌入式设备能成为Internet网络上的一个可服务设备。
参见图2,本发明针对嵌入式操作***的远程协助服务方法的具体实现步骤包括:
A)、初始化准备,对远端设备的网页浏览器属性进行代理服务器连接的相关信息的设置,用于与远端嵌入式设备所连接的路由器或者网络设备进行数据通信,作为远程协助服务配置的工具;对远程协助服务器进行功能状态的初始化,准备开启远程协助服务。如图3,它包括:
初始化远程协助服务的步骤,主要是初始化远程协助服务器的服务状态,(初始化为就绪状态,当远端嵌入式设备与远程协助服务器的连接数超过最大值时,该状态就被修改为忙碌状态。)初始化设备任务队列表、全局变量、标识符。
初始化网页浏览器服务的步骤,主要是对浏览器的代理属性进行配置。(浏览器属性→连接→局域网设置→LAN代理服务器:地址:本机IP端口:转发端口)。
B)、开启监听网络端口,远程协助服务器对网络端口进行监听等待远端设备的远程协助连接请求;网络端口包括,用于接收来自网页浏览器发送来的Http数据请求及与远端嵌入设备之间建立网络通信信道,协调控制网页浏览器发送的Http数据与远端嵌入设备回馈的Http数据转换。如图4,它包括:
侦听网页代理服务端口的步骤,绑定本地端口(8088)TCP数据通信类型作为网页代理服务的通信端口,用于网页浏览器模块中的网页浏览器与远程协助服务器建立TCP的通信链路,实现二者之间的网络数据通信。
侦听远程协助服务端口的步骤,绑定本地端口(8089)TCP数据通信类型作为远程协助服务的通信端口,用于远端嵌入式设备与远程协助服务器建立TCP的请求通信链路,响应远端嵌入式设备的远程协助请求,添加设备基本状态信息并将其添加到设备任务队列表中,实现二者之间的简单命令的传送。
侦听反向主动连接通信端口的步骤,绑定本地端口(8099)TCP数据通信类型作为远程协助服务处理过程中反向主动连接的通信端口,用于远端嵌入式设备与远程协助服务器建立TCP的数据交换通信链路,实现二者之间远程协助过程中处理数据的交换与传送。
C)、设备自我状态侦测,远端设备对其路由器或网络连接设备的网关状态及信息进行侦测采集。如图5,它包括:
设备信息侦测的步骤,获取设备的序列编号,需要在其前端路由器上配置的服务端口号,路由器的用户和密码。
网络信息侦测的步骤,设备通过检测设备网卡上的网络地址信息,判定当前设备所在的网络状态(局域网或者广域网),再通过HTTP通信协议,侦测其前端路由器的网关地址,路由器形型号。
初始化线程池的步骤,创建远端嵌入式设备端的线程池,因为在裁剪后的嵌入式Linux***下,***资源的使用以及创建和销毁所需的开销都很大,而且使用的内存空间也有限,所以,预先创建一线程池来服务后期与远程协助服务器之间通信所用到的大量线程需求。默认情况下线程池中开启30线程,用于任务分配使用,当有任务请求时,程序会从线程池中激活一线程用于任务处理,当任务结束后,再把该线程归还到线程池中。如果,在任务向线程池请求时,线程池发现已经没有多的空闲的线程分配时,线程池会动态地向创建10个新的线程加入线程池供任务处理使用。
D)、设备发起协助请求,远端设备将侦测采集信息形成数据包通过网络向远程协助服务器发起协助连接请求。如图6,它包括:
建立TCP通信链路的步骤,设备会向远程协助服务器的远程协助服务的通信端口(8089),发起TCP的数据连接请求,等待远程协助服务器响应后便建立起TCP的数据通信链路。
发送远程协助请求的步骤,等待TCP通信链路建立完成后,设备会向远程发起远程协助请求,请求服务器对其进行远程协助,配置其前端路由器设备,同时,设备会后携带其设备信息,网络状态信息一起向远程协助服务器进行注册,等待远程协助的处理。
维护TCP通信链路的步骤,当远程协助服务器与设备之间的TCP通信链路建立完成后,远程协助服务器会每间隔5秒向设备发一次心跳数据包,以维护该TCP通信链路的有效性,同时,处理二者任意一端出现异常断开的情况。设备会每5秒检测数据的接收,如果连续三次即15秒没有接收远程协助服务器发送来任何数据,那么,设备则认为该链路已经破坏或断开,设备关闭本端的网络连接与通信资源,重新发起协助请求。
E)、响应远程协助请求,远程协助服务器获取远程设备请求信息并将其添加到自身设备注册列表中,表明此时设备已经准备就绪,随后,远程协助服务器将该通信链路保留并维护、等待网页浏览器的请求数据,同时远程协助服务器根据设备注册的网络状态信息与网关信息激活远程协助事件。如图7,它包括:
建立TCP通信链路的步骤,远程协助服务器在远程协助服务的通信端口(8089),接收到设备的TCP数据连接请求后,便响应其请求建立起TCP的数据通信链路。
接收设备的远程协助请示:在建立起的TCP数据通信链路上,服务器可以接收到设备的远程协助请求,同时,包括设备信息与网络状态信息。服务器会将设备注册添加到设备任务队列表中,标识设备为就绪状态,准备处理。
维护TCP通信链路的步骤,当远程协助服务器与设备之间的TCP通信链路建立完成后,远程协助服务器会每间隔5秒向设备发一次心跳数据包,以维护该TCP通信链路的有效性,同时,处理二者任意一端出现异常断开的情况。如果,服务器在向远端设备发送心跳数据包时,发现远端设备已经断开通信链路或者通信链路已经破坏,那么,服务器会关闭本端的网络连接与通信资源,同时,清除设备在设备任务队列表中的信息。
F)、开启网页浏览器,远程协助服务器激活网页浏览器并连接远端设备网关,网页浏览器发送Http连接请求发送给远程协助服务器。如图8,它包括:
建立TCP通信链路的步骤,当设备请求从设备任务队列表中选取处理时,便激活开启网页浏览器,同时,会根据设备的网络信息中的网关信息,加裁到网页浏览器中,发起HTTP连接请求。由于,在初始化过程中已经配置了网页浏览器的代理属性,所以,网络浏览器会向远程协助服务器的网页代理服务的通信端口(8088),发起TCP的数据连接请求并建立起TCP的数据通信链路。
发送HTTP请求数据的步骤,网页浏览器通过与远程协助服务器建立好的TCP数据通信链路,将加裁设备端路由器网关信息的HTTP信息发送给远程协助服务器。
接收HTTP回馈数据的步骤,当网页浏览器发送完HTTP信息后,就开始等待接收HTTP回馈数据,直到接收HTTP回馈数据或者接收超时,网页浏览器才关闭它与远程协助服务器之间的TCP数据通信链路。
G)、建立数据传输链路,远程协助服务器要求远端设备开启方向主动连接,远端设备向远程协助服务器发起反向主动连接请求,远程协助服务器相应该请求与远端设备建立连接。如图9,它包括:
建立TCP数据传输通信链路的步骤,当远程协助服务器接收到网页浏览器的HTTP请求数据后,远程协助服务器会向远端嵌入式设备发出要求设备发起反向主动连接请求,让设备与远程协助服务器之间再建立数据传输链路。设备接收到远程协助服务器的反向主动连接请求后,将从线程池中激活一个线程来处理设备建立数据传输链路过程,设备会向远程协助服务器的反向主动连接的通信端口(8099),发起TCP的数据连接请求,等待远程协助服务器响应后便建立起TCP的数据传输通信链路。
接收远程协助服务器HTTP数据的步骤,当远程协助服务器与远端嵌入式设备之间已经建立起TCP数据传输链路后,远程协助服务器会把网页浏览器的HTTP数据发送给设备,设备会存储该数据信息,等待与路由建立好TCP的数据链路后再转发。
发送路由器回馈数据的步骤,当设备接收到路由器的HTTP回馈数据后,会把该回馈数据发送给远程协助服务器。
H)、转发请求数据,远程协助服务器将网页浏览器发送Http连接请求转发至远端设备。如图10,它包括:
与路由器网关建立TCP数据通信链路的步骤,当设备接收到远程协助服务器发送来的HTTP数据请求后,会对该HTTP数据进行解析,取出HTTP请求的目的地址,比较目的地址与设备前端路由器网关地址是否相同,如果,不同则丢弃该HTTP数据,关闭反向主动连接建立的数据通信链路,释放资源退出任务,将线程归还线程池。如果,相同,则设备将从线程池中激活一个线程来处理与路由器网关建立TCP数据通信链路过程,设备向路由器网关的80端口发起TCP的数据连接请求,该路由器网关响应后,建立起TCP数据通信链路。
转发HTTP请求数据的步骤,当设备与路由器之间的TCP数据通信链路建立完成后,设备会将服务器发送来的HTTP数据请求进行解析,去掉其中含有代理地址的部分再转修改后的数据发给路由器。
接收回馈的HTTP请求数据的步骤,当设备把HTTP数据转发给路由器后,便开始等待路由的HTTP数据回馈。如果,与路由建立的TCP数据通信链路出现异常中断,关闭,则设备关闭反向主动连接建立的数据通信链路,释放资源退出任务,将线程归还线程池。
I)、设备反馈网关数据,远端设备连接到路由器或网络连接设备的网关,并把接收到的请求数据转发给路由器的网关,随后等待其反馈,设备接收到回馈信息后,再把回馈信息通信通过与远程协助服务器之间的通信链路回传给远程协助服务器。
它包括,当设备在路由与设备之间的数据通信链中上接收到路由器的HTTP反馈数据后,设备通过远程协助服务器与设备之间建立的反向主动连接数据传输通信链路,把HTTP反馈数据发送给远程协助服务器。
J)、转发设备回馈数据,远程协助服务器收到来自远端设备网关Http数据后再吧该数据转发至网页浏览器;
它包括,远程协助服务器在远程协助服务器与设备之间建立的反向主动连接数据传输通信链路上,接收到设备发送的HTTP反馈数据后,远程协助服务器再通过与网页浏览建立的TCP数据通信链路将HTTP反馈数据转发给网页浏览器。
K)、完成远程协助连接,远程协助服务器代理下完成网页浏览器与远端设备之间的数据链路连接,网页浏览器可显示、操作远端嵌入式设备前端路由器的网关,并透过远程协助服务器实现对远端嵌入式设备的网络可服务功能的协助配置、安装。
它包括,当网页浏览器接收到远程协助服务器发送来的HTTP回馈数据后,网页浏览器就可以将回馈的数据信息进行显示,操作,配置,从而完成远程协助连接,关闭网页浏览器,关闭网络连接链路,清除设备任务队列表,释放资源,设备端销毁线程池。
关于实现技术的一些说明
1、Http代理服务
本地网中远程协助服务的运营服务器及网页浏览器设置在根据Http网络通信协议,开启Http的服务,实现对Http数据信息的接收、解析再转发至Http数据真正要到达的目的地。通过IP/TCP协议,利用Socket网络通信套接字,实现Http数据通信的一种技术方法。
在本发明方法中,远程协助服务器有用到Http代理服务技术,实现远程网络连接设备的配置。
2、线程池
线程池就是当用同步synchronized标记方法或代码块时,一个线程进入代码块执行,然后其余线程都要在池中等待。优点如下:
1、缩短使用程序的响应时间。因为在线程池中有线程的线程处于等待分配任务状态(只要没有超过线程池的最大上限),无需建立线程。
2、不必维护和维护生存周期短暂的线程,不用在建立时为其分配资源,在其执行完任务之后释放资源。
3、线程池会根据当前***特性对池内的线程实行优化处理
在本发明方法中,远端嵌入式设备的程序中有使用到线程池的技术,原因是为了减少嵌入式***的资源开销,以及程序运行的稳定性,同时,远程协助服务器与远端路由器/网络连接设备的网关通信,需要建立多条的网络连接,有些连接需要保持连接状态,也不能重用。
3、反向主动连接请求
在远程协助过程中,远程协助服务器在与远端设备进行Http数据通信时,需要建立多条的网络数据连接,有些连接需要保持连接状态,也不能重用,然后,远程协助服务器不能直接主动地向远端嵌入式设备发起连接,因为,远端嵌入式设备前端有路由器或者网络连接设备,路由器都有NAT功能,会阻止外来的主动连接请求,这样,远程协助服务器就不能与远端嵌入式设备建立连接了,此时,就需要反向主动连接请求,让远端嵌入式设备主动向远程协助设备发起新的网络连接,远程协助服务器位置广域网上,是可以与远端嵌入式设备建立连接,所以,远程协助服务器就能与远端嵌入式设备建立多条连接,完成远程协助的灵气传输。
综上所述,通过采用本发明远程协助方法利用HTTP协助代理服务技术及反向主动连接技术,使得远程协助服务器可通过网络数据传输与交换对远端嵌入式设备前端的路由器进行访问、配置,从而使得嵌入式设备成为可服务的网络端子设备,从而使得更多的嵌入式设备很容易地成为网络中可服务的网络端子设备。与通用的远程协助方法相比较具有以下优点:
1、不受设备操作***的平台限制,可以运行于各种嵌入式操作***。
2、使用简单,无需安装,无需配置,可独立运行,可嵌入使用。
3、资源消耗少,无需大量的内存资源,也均需高效能的CPU处理能力,只要有网络连接功能即可。
所带来的积极效果包括:
1、减少服务安装成本,减轻人力,物力的开销。
2、降低生产价值。
3、适用领域广泛。如:手机设备,家用设备,多媒体设备等等。
可见通过采用本发明方法,可让各种应用广泛的嵌入式设备的安装与使用不再专业化,繁杂化、不需要众多的工程人员东奔西跑,更不需要安装人员亲临现场,只需一台嵌入式远程协助服务器就能服务于千万设备,让用户不必为了安装设备而烦恼,让企业不必为了众多的安装工程人员导致生产成本的增加而操心。让嵌入式设备产品价格降低了,让产品使用的用户增多了,让企业,商家对产品的管理工作减少了,让产品所能适应的环境和经济市场增大了。让我们的服务更好,生活更加精彩。

Claims (9)

1.一种针对嵌入式操作***的远程协助服务方法,其特征在于:它包括步骤
A)、初始化准备,对远端设备的网页浏览器属性进行代理服务器连接的相关信息的设置,用于与远端嵌入式设备所连接的路由器或者网络设备进行数据通信,作为远程协助服务配置的工具;对远程协助服务器进行功能状态的初始化,准备开启远程协助服务;
B)、开启监听网络端口,远程协助服务器对网络端口进行监听等待远端设备的远程协助连接请求;
C)、设备自我状态侦测,远端设备对其路由器或网络连接设备的网关状态及信息进行侦测采集;
D)、设备发起协助请求,远端设备将侦测采集信息形成数据包通过网络向远程协助服务器发起协助连接请求;
E)、响应远程协助请求,远程协助服务器获取远程设备请求信息并将其添加到自身设备注册列表中,表明此时设备已经准备就绪,随后,远程协助服务器将该通信链路保留并维护、等待网页浏览器的请求数据,同时远程协助服务器根据设备注册的网络状态信息与网关信息激活远程协助事件;
F)、开启网页浏览器,远程协助服务器激活网页浏览器并连接远端设备网关,同时网页浏览器发送Http连接请求发送给远程协助服务器;
G)、建立数据传输链路,远程协助服务器要求远端设备开启方向主动连接,远端设备向远程协助服务器发起反向主动连接请求,远程协助服务器响应该请求与远端设备建立连接;
H)、转发请求数据,远程协助服务器将网页浏览器发送Http连接请求转发至远端设备;
I)、设备反馈网关数据,远端设备连接到路由器或网络连接设备的网关,并把接收到的请求数据转发给路由器的网关,随后等待其反馈,设备接收到回馈信息后,再把回馈信息通信通过与远程协助服务器之间的通信链路回传给远程协助服务器;
J)、转发设备回馈数据,远程协助服务器收到来自远端设备网关Http数据后再把该数据转发至网页浏览器;
K)、完成远程协助连接,远程协助服务器代理下完成网页浏览器与远端 设备之间的数据链路连接,网页浏览器可显示、操作远端嵌入式设备前端路由器的网关,并透过远程协助服务器实现对远端嵌入式设备的网络可服务功能的协助配置、安装。
2.如权利要求1所述的针对嵌入式操作***的远程协助服务方法,其特征在于:所述步骤B中的网络端口用于接收来自网页浏览器发送来的Http数据请求及与远端嵌入设备之间建立网络通信信道,协调控制网页浏览器发送的Http数据与远端嵌入设备回馈的Http数据转换。
3.如权利要求1所述的针对嵌入式操作***的远程协助服务方法,其特征在于:所述步骤A的初始化准备包括,
初始化远程协助服务的步骤,对远程协助服务器的服务状态进行初始化,将其服务状态初始化为就绪状态;当远端嵌入式设备与远程协助服务器的连接数超过最大值时,该状态就被修改为忙碌状态;初始化设备任务队列表、全局变量、标识符;
初始化网页浏览器的步骤,对浏览器的代理属性的IP端口、转发端口进行配置。
4.如权利要求1所述的针对嵌入式操作***的远程协助服务方法,其特征在于:所述步骤B的开启监听网络端口包括,
侦听网页代理服务端口的步骤,通过绑定本地第一端口TCP数据通信类型作为网页代理服务的通信端口,用于网页浏览器模块中的网页浏览器与远程协助服务器建立TCP的通信链路,实现二者之间的网络数据通信;
侦听远程协助服务端口的步骤,通过绑定本地第二端口TCP数据通信类型作为远程协助服务的通信端口,用于远端嵌入式设备与远程协助服务器建立TCP的请求通信链路,响应远端嵌入式设备的远程协助请求,添加设备基本状态信息并将其添加到设备任务队列表中,实现二者之间的简单命令的传送,
侦听反向主动连接通信端口的步骤,绑定本地第二端口TCP数据通信类型作为远程协助服务处理过程中反向主动连接的通信端口,用于远端嵌入式设备与远程协助服务器建立TCP的数据交换通信链路,实现二者之间远程协助过程中处理数据的交换与传送。
5.如权利要求1所述的针对嵌入式操作***的远程协助服务方法,其特征在于:所述步骤C的设备自我状态侦测包括, 
设备信息侦测的步骤,用于获取设备的序列编号,需要在其前端路由器上配置的服务端口号,路由器的用户名和密码;
网络信息侦测的步骤,设备通过检测设备网卡上的网络地址信息,判定当前设备所在的网络状态,再通过HTTP通信协议,侦测其前端路由器的网关地址,路由器形型号;
初始化线程池的步骤,创建用于服务后期与远程协助服务器之间通信所用到的线程需求的线程池,用于任务分配使用,当有任务请求时,程序会从线程池中激活一线程用于任务处理,当任务结束后,再把该线程归还到线程池中。
6.如权利要求1所述的针对嵌入式操作***的远程协助服务方法,其特征在于:
所述步骤D的设备发起协助请求包括,
建立TCP通信链路的步骤,设备向远程协助服务器的远程协助服务的通信端口发起TCP的数据连接请求,等待远程协助服务器响应后便建立起TCP的数据通信链路;
发送远程协助请求的步骤,当TCP通信链路建立完成后,设备会向远程协助服务器发起远程协助请求,请求服务器对其进行远程协助,配置其前端路由器设备,同时,设备会后携带其设备信息,网络状态信息一起向远程协助服务器进行注册,等待远程协助的处理;
维护TCP通信链路的步骤,当远程协助服务器与设备之间的TCP通信链路建立完成后,远程协助服务器会间隔向设备发一次心跳数据包,以维护该TCP通信链路的有效性,同时,处理二者任意一端出现异常断开的情况;设备会间隔检测数据的接收,如果连续三次没有接收远程协助服务器发送来任何数据,那么,设备则认为该链路已经破坏或断开,设备关闭本端的网络连接与通信资源,重新发起协助请求;
所述步骤E的响应远程协助请求包括,
建立TCP通信链路的步骤,远程协助服务器在远程协助服务的通信端口接收到设备的TCP数据连接请求后,便响应其请求建立起TCP的数据通信链路;
接收设备的远程协助请求的步骤,在建立起的TCP数据通信链路上,服务器接收到设备的远程协助请求,同时收到包括设备信息与网络状态信息, 服务器会将设备注册添加到设备任务队列表中,标识设备为就绪状态,准备处理;
维护TCP通信链路的步骤,当远程协助服务器与设备之间的TCP通信链路建立完成后,远程协助服务器会间隔向设备发一次心跳数据包,以维护该TCP通信链路的有效性,同时,处理二者任意一端出现异常断开的情况,当服务器在向远端设备发送心跳数据包时,发现远端设备已经断开通信链路或者通信链路已经破坏,那么,服务器会关闭本端的网络连接与通信资源,同时,清除设备在设备任务队列表中的信息。
7.如权利要求1所述的针对嵌入式操作***的远程协助服务方法,其特征在于:所述步骤F的开启网页浏览器包括,
建立TCP通信链路的步骤,当设备请求从设备任务队列表中选取处理时,便激活开启网页浏览器,同时,根据设备的网络信息中的网关信息,加载到网页浏览器中,发起HTTP连接请求,同时网络浏览器向远程协助服务器的网页代理服务的通信端口发起TCP的数据连接请求并建立起TCP的数据通信链路;
发送HTTP请求数据的步骤,网页浏览器通过与远程协助服务器建立好的TCP数据通信链路,将加载设备端路由器网关信息的HTTP信息发送给远程协助服务器;
接收HTTP回馈数据的步骤,当网页浏览器发送完HTTP信息后,开始等待接收HTTP回馈数据,直到接收HTTP回馈数据或者接收超时,网页浏览器关闭它与远程协助服务器之间的TCP数据通信链路。
8.如权利要求1所述的针对嵌入式操作***的远程协助服务方法,其特征在于:所述步骤G的建立数据传输链路包括,
建立TCP数据传输通信链路的步骤,当远程协助服务器接收到网页浏览器的请求数据后,远程协助服务器会向远端嵌入式设备发出要求设备发起反向主动连接请求,让设备与远程协助服务器之间再建立数据传输链路,设备接收到远程协助服务器的反向主动连接请求后,将从线程池中激活一个线程来处理设备建立数据传输链路过程,设备会向远程协助服务器的反向主动连接的通信端口发起TCP的数据连接请求,等待远程协助服务器响应后便建立起TCP的数据传输通信链路;
接收远程协助服务器HTTP数据的步骤,当远程协助服务器与远端嵌入 式设备之间已经建立起TCP数据传输链路后,远程协助服务器会把网页浏览器的HTTP数据发送给设备,设备会存储该数据信息,等待与路由建立好TCP的数据链路后再转发;
发送路由器回馈数据的步骤,当设备接收到路由器的HTTP回馈数据后,会把该回馈数据发送给远程协助服务器。
9.如权利要求1所述的针对嵌入式操作***的远程协助服务方法,其特征在于:所述步骤H的转发请求数据包括,
与路由器网关建立TCP数据通信链路的步骤,当设备接收到远程协助服务器发送来的HTTP数据请求后,解析该HTTP数据取出HTTP请求的目的地址,比较目的地址与设备前端路由器网关地址是否相同,若不同则丢弃该HTTP数据,关闭反向主动连接建立的数据通信链路,释放资源退出任务,将线程归还线程池;若相同,则设备将从线程池中激活一个线程来处理与路由器网关建立TCP数据通信链路过程,设备向路由器网关的端口发起TCP的数据连接请求,该路由器网关响应后,建立起TCP数据通信链路;
转发HTTP请求数据的步骤,当设备与路由器之间的TCP数据通信链路建立完成后,设备会将服务器发送来的HTTP数据请求进行解析,去掉其中含有代理地址的部分再转修改后的数据发给路由器;
接收回馈的HTTP请求数据的步骤,当设备把HTTP数据转发给路由器后,便开始等待路由的HTTP数据回馈,若与路由建立的TCP数据通信链路出现异常中断、关闭,则设备关闭反向主动连接建立的数据通信链路,释放资源退出任务,将线程归还线程池。 
CN 201010263466 2010-08-25 2010-08-25 针对嵌入式操作***的远程协助服务方法 Expired - Fee Related CN102377814B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010263466 CN102377814B (zh) 2010-08-25 2010-08-25 针对嵌入式操作***的远程协助服务方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010263466 CN102377814B (zh) 2010-08-25 2010-08-25 针对嵌入式操作***的远程协助服务方法

Publications (2)

Publication Number Publication Date
CN102377814A CN102377814A (zh) 2012-03-14
CN102377814B true CN102377814B (zh) 2013-05-22

Family

ID=45795769

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010263466 Expired - Fee Related CN102377814B (zh) 2010-08-25 2010-08-25 针对嵌入式操作***的远程协助服务方法

Country Status (1)

Country Link
CN (1) CN102377814B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102984233B (zh) * 2012-11-19 2016-03-30 北京奇虎科技有限公司 用于在远程协助中进行数据传输的装置和方法
CN103227979A (zh) * 2013-03-21 2013-07-31 天闻数媒科技(北京)有限公司 一种批量管理移动设备的方法及其***
CN104243210B (zh) * 2014-09-17 2018-01-05 湖北盛天网络技术股份有限公司 远程访问路由器管理页面的方法和***
CN104506567B (zh) * 2014-11-19 2017-09-29 北京天地互连信息技术有限公司 一种物联网网关与服务端的数据交换方法
CN105187526B (zh) * 2015-08-31 2018-06-08 国网山东省电力公司电力科学研究院 一种基于usb闪存驱动器的远程协助***及方法
CN106817379A (zh) * 2015-11-27 2017-06-09 谢成火 一种响应式反向远程拍摄方法、响应式反向远程拍摄服务装置
CN105407172B (zh) * 2015-12-15 2018-11-23 南京途牛科技有限公司 一种基于http协议的路由器远程管理***
CN105611597B (zh) * 2015-12-24 2022-08-26 武汉塔兰智能科技有限公司 一种移动自组网的网络***
CN106201491B (zh) * 2016-07-01 2020-02-07 北京奇虎科技有限公司 移动终端和移动终端远程协助过程控制方法、装置
CN106131173A (zh) * 2016-07-01 2016-11-16 北京奇虎科技有限公司 移动终端和移动终端远程协助与受助方法、装置
CN106375453B (zh) * 2016-09-05 2020-03-20 珠海市魅族科技有限公司 基于http连接的双向通讯设备、***和方法
CN107360095B (zh) * 2017-07-13 2020-06-23 惠州高盛达科技有限公司 基于客户端主机名称的端口转发在路由器中的实现方法
EP3512179B1 (en) 2018-01-15 2021-03-03 Carrier Corporation Cyber security framework for internet-connected embedded devices
CN109246120B (zh) * 2018-09-29 2021-04-27 中国船舶重工集团公司第七一九研究所 一种嵌入式设备的远程调试方法及其***
CN110049280B (zh) * 2019-03-14 2022-01-11 视联动力信息技术股份有限公司 监控数据的处理方法和装置
CN110811461B (zh) * 2019-10-30 2022-02-15 佛山市百斯特电器科技有限公司 一种清洗模式的确定方法及***
CN110830746A (zh) * 2019-11-15 2020-02-21 安徽埃克索医疗机器人有限公司 一种基于视频通话和增强现实技术远程手术协助***

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1671137A (zh) * 2004-03-16 2005-09-21 中兴通讯股份有限公司 基于超文本传输协议的网络从设备管理的方法及***

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9882989B2 (en) * 2007-01-22 2018-01-30 Control4 Corporation Systems and methods for providing remote assistance for controlling a site

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1671137A (zh) * 2004-03-16 2005-09-21 中兴通讯股份有限公司 基于超文本传输协议的网络从设备管理的方法及***

Also Published As

Publication number Publication date
CN102377814A (zh) 2012-03-14

Similar Documents

Publication Publication Date Title
CN102377814B (zh) 针对嵌入式操作***的远程协助服务方法
CN103220292B (zh) 跨安全区数据传输方法和***
CN104811371B (zh) 一种全新的即时通信***
CN106445705A (zh) 基于RabbitMQ和Socket.io的平台级联方法和***
CN103825881A (zh) 基于无线访问控制器ac实现wlan用户的重定向方法及装置
CN101291343B (zh) 一种基于透明代理设备的远程控制方法及其***
CN102946376B (zh) 一种异步通讯的实现方法
CN103368809A (zh) 一种互联网反向穿透隧道的实现方法
CN103166996B (zh) Http连接和https连接自适应方法、装置及***
CN105025044A (zh) 一种设备控制方法及***
CN108965367A (zh) 一种控制视联网服务器的方法和***
CN102724322A (zh) 一种实现远程操控的方法及装置
CN105282128A (zh) 一种基于长连接的双向调用方法及***
CN105490861A (zh) 网管设备管理***和方法
CN203135901U (zh) 加密机管理装置
CN103051724B (zh) 一种基于长连接的套接字同步方法
CN102917082B (zh) 穿透网络地址转换的消息推送方法及***
EP3096492B1 (en) Page push method and system
CN102984202B (zh) 一种穿越NAT设备实现Telnet网管的***与方法
CN102983988B (zh) 一种设备代理装置以及网络管理装置
CN104932452A (zh) 一种用于航空总线测试仪远程控制的方法及***
CN106789099A (zh) 基于pcie的高速隔离网络方法及终端
CN104410990B (zh) 实现接入认证服务器切换的方法和***
CN103701788B (zh) 一种跨平台软总线的通信装置及软总线
CN102984145B (zh) 与具有多个分机的通信终端通信的方法及通信设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130522

Termination date: 20150825

EXPY Termination of patent right or utility model