数据处理系统及装置的制造方法

文档序号:8322284阅读:288来源:国知局
数据处理系统及装置的制造方法
【技术领域】
[0001]本发明涉及数据处理系统及装置,更具体地,涉及基于浏览器/服务器架构和SSH(secure shell)协议的数据处理系统及装置。
【背景技术】
[0002]目前,随着计算机技术以及网络应用的日益广泛以及不同领域的业务种类的日益丰富,基于SSH协议的数据处理系统及装置变得越来越重要。
[0003]在现有的技术方案中,类Unix操作系统通常使用SSH协议作为安全通信协议。然而,现有的技术方案存在如下问题:难于集中式管理和分布式运行,并且不能方便地与B/S(浏览器/服务器)架构的应用程序相结合。
[0004]因此,存在如下需求:提供具有良好的易用性和适用性以及高的安全性的基于浏览器/服务器架构和SSH协议的数据处理系统及装置。

【发明内容】

[0005]为了解决上述现有技术方案所存在的问题,本发明提出了具有良好的易用性和适用性以及高的安全性的基于浏览器/服务器架构和SSH协议的数据处理系统及装置。
[0006]本发明的目的是通过以下技术方案实现的:
一种数据处理系统,所述数据处理系统包括:
浏览器,所述浏览器基于用户指令构造数据处理请求并将所述数据处理请求传送到客户端,其中,所述数据处理请求包含由待处理的至少一个命令组成的命令集;
客户端,所述客户端经由与目标主机的数据通信依次处理接收到的所述数据处理请求中的命令集中的每个命令,并基于处理结果构造与所述命令集相对应的结果集以供所述浏览器读取;
目标主机,所述目标主机协助所述客户端完成对所述命令集中的每个命令的处理; 其中,所述客户端基于SSH协议与所述目标主机进行数据通信。
[0007]在上面所公开的方案中,优选地,所述客户端在接收到来自所述浏览器的所述数据处理请求后生成与其相对应的会话实例,随后启动相关的工作进程以实现与所述目标主机的数据通信过程和会话管理过程。
[0008]在上面所公开的方案中,优选地,所述工作进程被启动后以同步调用的方式依次执行所述命令集中的每一个命令,并基于执行结果构造所述结果集,其中,与执行相同命令集中的每个命令相关的所有同步调用过程使用相同的会话标识。
[0009]在上面所公开的方案中,优选地,所述工作进程进一步执行如下命令处理过程:
(I)查询所述命令集以获取当前需要执行的命令;(2)将所述当前需要执行的命令进行编码转换后作为一个或多个读/写任务,并基于SSH协议与所述目标主机进行数据通信以执行所述一个或多个读/写任务;(3)确定SSH socket I/O端口的类型,并且如果SSH socketI/O端口是阻塞型的,则在写任务结束后执行读任务,而如果SSH socket I/O端口是非阻塞型的,则在写任务开始时启动读任务,其中,以如下方式执行读任务:通过定长轮询的方式检测所述目标主机返回的数据报文中是否出现命令界定符,并且如果出现命令界定符,则确认与执行该命令相关的同步调用过程结束,并且随后开始执行相关的控制过程;(4)在确认与执行该命令相关的同步调用过程结束后,将针对该命令的执行结果进行编码转换后写入所述结果集中;(5)查询所述命令集以获取下一条需要执行的命令,如果存在下一条需要执行的命令,则将其作为当前需要执行的命令并返回步骤(2),如果所述命令集中的所有命令均已被执行,则终止命令处理过程。
[0010]在上面所公开的方案中,优选地,在所述工作进程执行过程中,所述浏览器能够基于用户命令向所述客户端发送控制指令以修改所述会话实例的相关标志位的状态值,以便所述工作进程能够在所述读/写任务的间隙根据所述相关标志位的状态值执行相关的动作。
[0011]在上面所公开的方案中,优选地,所述定长轮询过程如下:以指定的长度对当前需要执行的命令及其执行结果的数据流进行分割,以隐式地将其分割成多个读/写任务,其中,以如下方式实现命令界定:在读任务中,通过判断命令界定符的存在来标记命令执行结果的结束。
[0012]在上面所公开的方案中,优选地,所述浏览器能够周期性地以异步调用的方式查询所述结果集,并将其显示给用户。
[0013]在上面所公开的方案中,优选地,所述客户端是B/S模式中的服务器,并且其中,所述浏览器和所述客户端之间以异步HTTP请求的方式进行通信。
[0014]在上面所公开的方案中,优选地,所述客户端在所述命令集中的命令均被执行完成后终止与其相对应的所述会话实例。
[0015]本发明的目的也可以通过以下技术方案实现:
一种基于SSH协议的客户端,所述客户端能够经由与目标主机的数据通信依次处理接收到的来自浏览器的数据处理请求中的命令集中的每个命令,并基于处理结果构造与所述命令集相对应的结果集以供所述浏览器读取,其中,所述客户端基于SSH协议与所述目标主机进行数据通信。
[0016]本发明所公开的数据处理系统及装置具有如下优点:(1)由于采用万维网浏览器作为人机交互界面,故具有良好的易用性和适用性;(2)由于客户端被作为浏览器和目标主机之间的中间部件,故其可以对命令集进行过滤、审查和预置,从而能够有效地防止非法命令以及人为错误对目标主机的影响,并且可以防止敏感端口(例如22端口)的暴露,由此显著地提高了数据处理系统的安全性。
【附图说明】
[0017]结合附图,本发明的技术特征以及优点将会被本领域技术人员更好地理解,其中:
图1是根据本发明的实施例的数据处理系统及装置的示意性结构图。
【具体实施方式】
[0018]图1是根据本发明的实施例的数据处理系统及装置的示意性结构图。如图1所示,本发明所公开的数据处理系统包括浏览器1、客户端2以及目标主机3。其中,所述浏览器I基于用户指令构造数据处理请求并将所述数据处理请求传送到客户端2,其中,所述数据处理请求包含由待处理的至少一个命令组成的命令集。所述客户端2经由与目标主机3的数据通信依次处理接收到的所述数据处理请求中的命令集中的每个命令,并基于处理结果构造与所述命令集相对应的结果集以供所述浏览器I读取。所述目标主机3协助所述客户端2完成对所述命令集中的每个命令的处理。其中,所述客户端2基于SSH协议与所述目标主机3进行数据通信(不例性地,SSH调用方式可以是ssh shell或ssh exec,并且socket连接方式可以是长连接或短连接)。
[0019]优选地,在本发明所公开的数据处理系统中,所述客户端2在接收到来自所述浏览器I的所述数据处理请求后生成与其相对应的会话实例,随后启动相关的工作进程以实现与所述目标主机3的数据通信过程和会话管理过程。
[0020]优选地,在本发明所公开的数据处理系统中,所述工作进程被启动后以同步调用的方式依次执行所述命令集中的每一个命令,并基于执行结果构造所述结果集,其中,与执行相同命令集中的每个命令相关的所有同步调用过程使用相同的会话标识(即与所述数据处理请求相对应的会话实例的标识)。
[0021]优选地,在本发明所公开的数据处理系统中,所述工作进程进一步执行如下命令处理过程:(1)查询所述命令集以获取当前需要执行的命令;(2)将所述当前需要执行的命令进行编码转换后作为一个或多个读/写任务,并基于SSH协议与所述目标主机进行数据通信以执行所述一个或多个读/写任务;(3)确定SSH socket I/O端口的类型,并且如果SSH socket I/O端口是阻塞型的,则在写任务结束后执行读任务,而如果SSH socket I/O端口是非阻塞型的,则在写任务开始时启动读任务,其中,以如下方式执行读任务:通过定长轮询的方式检测所述目标主机返回的数据报文中是否出现命令界定符,并且如果出现命令界定符,则确认与执行该命令相关的同步调用过程结束,并且随后开始执行相关的控制过程;(4)在确认与执行该命令相关的同步调用过程结束后,将针对该命令的执行结果进行编码转换后写入所述结果集中;(5)查询所述命令集以获取下一条需要执行的命令,如果存在下一条需要执行的命令,则将其作为当前需要执行的命令并返回步骤(2),如果所述命令集中的所有命令均已被执行,则终止命令处理过程。
[0022]优选地,在本发明所公开的数据处理系统中,在所述工作进程执行过程中,所述浏览器能够基于用户命令向所述客户端发送控制指令(诸如暂停指令、停止指令等等)以修改所述会话实例的相关标志位的状态值,以便所述工作进程能够在所述读/写任务的间隙根据所述相关标志位的状态值执行相关的动作(诸如等待、退出等等)。
[0023]优选地,在本发明所公开的数据处理系统中,所述定长轮询过程如下:以指定的长度对当前需要执行的命令及其执行结果的数据流进行分割,以隐式地将其分割成多个读/写任务,其中,以如下方式实现命令界定:在读任务中,通过判断命令界定符的存在来标记命令执行结果的结束(即一个完整的命令执行过程的结束)。
[0024]优选地,在本发明
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1