一种防火墙穿透方法

文档序号:7899157阅读:348来源:国知局
专利名称:一种防火墙穿透方法
技术领域
本发明提供一种防火墙穿透方法,针对机场网络的限制,利用代理技术,采用业务 代理的模式实现穿透机场网络防火墙,达到远程管理和控制自助柜机。
背景技术
近年来国内民航业自助值机服务得到了蓬勃的发展,自助值机服务是部署在自 助柜机上的应用,旅客可以自行办理值机业务。为了尽可能利用柜机的硬件资源,越来越 多的航空公司自助服务软件会运行在同一台柜机上,这就要求各个软件对硬件资源有效共 享,不能冲突;由于自助柜机一般都不需要人工干预,因此需要有便利的方法来远程管理 柜机的使用状态和升级部署。基于这些需要IATA(国际航协)提出了⑶SS(Common Use Self krvice,通用用户自助服务)平台,作为应用和硬件之间的中间件,以用于解决自助 柜机硬件共享以及软硬件管理方面的问题。同时在IATA的标准中,提出了使用KMS(Ki0Sk Management System柜机管理系统)通过 SMI (System Management Interface)接口来远程 监控和管理柜机及其应用,KMS可以是应用供应商提供也可以是柜机供应商提供。但是,IATA标准中SMI接口对柜机管理系统和⑶SS平台交互的端口进行了限制, 必须使用corba (Common Object Request Broker Architecture公共对象请求代理体系结 构)技术,在20001端口上进行通讯。由于机场的网络限制,有的时候这些端口不给开放, 或者只开放从机场内对机场外的有状态请求,而不允许从外部发起的请求,这就会导致柜 机管理系统和⑶SS柜机之间无法进行通讯。基于上述问题,本发明人提出了一种防火墙穿透方法。该方法是针对机场网络的 限制而提出的防火墙穿透方法,以解决符合IATA标准的远程管理柜机的需要。本发明的方 法利用 了 Agent (代理)技术,扩展 IATA 标准中的 SMI (System Management Interface)接 口,转换柜机和柜机管理系统之间的corta通讯为Agent到柜机管理系统的socket (套接 字,一种网络通讯技术)请求,穿透机场防火墙,同样的技术也应用在两个柜机管理系统之 间的通讯上,以穿透机场之间的防火墙。目前,国际上同类型的产品有IER,IBM, NCR等厂商提供的自助管理系统。其中大 部分不具有穿透防火墙的能力,有的虽然具备穿透能力,但是没有部署和分发能力,扩展性 比较差。

发明内容
基于上述问题,本发明人提出了一种防火墙穿透方法。该方法是针对机场网络的 限制而提出的防火墙穿透方法,以解决符合IATA标准的远程管理柜机的需要。本发明的方 法利用 了 Agent (代理)技术,扩展 IATA 标准中的 SMI (System Management Interface)接 口,转换柜机和柜机管理系统之间的corta通讯为Agent到柜机管理系统的socket请求, 穿透机场防火墙,同样的技术也应用在两个柜机管理系统之间的通讯上,以穿透机场之间 的防火墙。
本方法涉及到柜机管理系统,代理程序和⑶SS平台,是由这三个系统协同工作的 技术方案,把IATA标准结构的柜机管理系统和CUSS平台直接调用的两层关系(参考图 一),转为有中间代理程序的三层调用关系(参考图二)。本发明的防火墙穿透方法步骤如下步骤一转换IATA标准corta对象为普通的JAVA对象,转换corta调用为普通 socket 指令。步骤二 运行代理程序(Agent),该程序运行在自助柜机上,其中有一个Socket客
户端,用以连接KMS的socket服务端,有一个corta客户端,用来联接⑶SS平台的SMI接□。步骤三运行柜机管理系统,该系统有一个socket服务端,能够处理从代理程序 发来的socket请求。步骤四代理程序向柜机管理系统发送socket连接请求,柜机管理服务器验证 后,返回socket应答,双方的连接就通过了机场防火墙的验证。步骤五代理程序监测同柜机上的⑶SS平台是否启动,如果启动就通知柜机管理 系统,同时利用corta端口连接⑶SS平台。步骤六柜机管理系统向代理程序发送转换成socket指令的SMI命令。步骤七代理程序把socket命令转成corba的SMI命令,发送给⑶SS平台。步骤八代理程序把⑶SS平台返回的corta命令处理结果,转换成socket命令, 发送给柜机管理系统。步骤九柜机管理系统处理代理程序返回的调用结果。步骤十柜机管理系统也可以向代理程序发送其他类型的非⑶SS命令,以实现升 级和管理的其他功能。其中,在步骤二中,socket客户端持续监测指定IP和端口的socket服务端是否 启动,以判断柜机管理服务系统是否启动;corta客户端持续监测本机IP (127. 0. 0. 1)端口 20001端口是否启动,以判断⑶SS平台是否启动。其中,在步骤三中,根据步骤一中的socket通讯接口,柜机管理系统解析接口中 的内容并处理。对于扩展命令类型的指令,根据指令内容不同可以有应答也可以无应答,但 是对于login —定要有应答,这样才能保证socket连接穿透防火墙。对于SMI命令,严格 按照顺序调用。 其中,在步骤四中,代理程序的连接请求采用socket命令中的login方法,代理程 序发送的login命令中socket消息在消息头中包含柜机IP,组名,柜机名称,柜机登陆密码 的信息;柜机管理系统把这些信息保存在数据库中进行验证;一旦通过柜机管理系统的验 证,柜机管理系统返回登陆成功的应答。其中,在步骤五中,代理程序监测同柜机上的⑶SS平台是否启动,定时查询20001 端口是否开放,如果开放就启动corta连接请求。其中,在步骤六中,所发送的SMI命令按照⑶SS标准。其中,在步骤七中,代理程序把socket命令转成corba的SMI命令,所转换的SMI 命令和CUSS标准的对象类型相对应。其中,在步骤八中,代理程序所转换成的socket命令,和CUSS标准的对象类型相对应。其中,在步骤九中,柜机管理系统会收到指令的返回,按照步骤一的对应关系,确 定返回的具体方法,并根据参数类型和参数内容,解析返回的数据结构,并进行相应的处 理。具体逻辑如下SMI命令处理按照CUSS标准的规定,解析相关的数据信息,把平台和应用的状态 记录在柜机管理系统的数据库,然后根据标准的要求返回相应的应答,请参考CUSS标准;扩展的命令收到login方法请求需要验证和判断柜机是否合法,并返回响应;收 到getDirectory方法应答需要把数据保存到柜机管理系统的数据库,无需返回应答;收到 logout方法请求,需要变更该柜机的注册状态,无需返回应答。批处理命令收到批处理命令的响应,保存入数据库,无需反馈。其中,在步骤十中,柜机管理系统也可以向代理程序发送批处理命令,有代理程序 执行该批处理命令,由于批处理命令的内容由用户自定义,功能扩展性很大,用以用来实现 升级和管理等其他功能。


参照如下附图将更加易于理解本发明图1总体流程2所示为IATA标准的两层结构柜机管理系统和CUSS平台调用关系;图3所示为采用代理机制的三层结构柜机管理系统和CUSS平台调用关系;图4KMS和Agent通讯流程图
具体实施例方式本方法使用的各种技术比如socket通讯技术、corta通讯技术都是成熟技术, Agent和KMS都是使用JAVA开发,也属于成熟技术不再赘述。本方法涉及到的各个步骤,可 以按照以下方法实现。步骤一、转换IATA标准corta对象为普通的JAVA对象,转换corta调用为普通 socket 指令。虽然IATA CUSS标准对于SMI接口进行了详细的规范,包括level,components, generateEvent, queryEvent, registerEvent, waitEvent, suspend, resume, load, stop, suspendAll, resumeAll, stopALL等。但是所有的方法实际传送的内容都是字符串或者数 值类型的数据,因此首先设定一种JAVA对象,能够处理这些字符和数值信息。同时,所有的 corta接口也需要转换为普通socket命令,具体的方法根据通讯内容设计,目前柜机管理 系统和代理程序之间将会通过以下几类方法进行通讯扩展命令类型(CMD)是SMI接口的扩展,包括login(登陆),由Agent发起; getDirectory (获得柜机工作目录结构),由柜机管理系统发起;logout (退出登陆),由 Agent发起;ke印Alive (保持socket联通),由代理程序发起定时向柜机管理服务器发送。SMI 命令类型(INVOKE)包含所有的 SMI 标准接口 level、components、 generateEvent> queryEvent> registerEvent、waitEvent、suspend、resume> load、stop、 suspendAll、resumeAll、stopALL。该命令由代理程序发起,柜机管理服务器返回相应的应
批处理命令类型(BAT)由柜机管理系统发送给代理程序的命令,内容为将要在 柜机上运行的批处理。基于以上命令需求,把socket通讯数据结构设计如下表一
数椐类M功能描述headString卿、实’ IiKt丨l·:机的IP、川广名、細等typeString消息类型,可以足扩展命令、SMl命令、 IMT命令、UCl状态命令等asychronousTdString消息标识,/0来标识异步消总methodString ι,α方法名,参考及msgNumberInteger将会返Μ KMS消总总数msglndexInteger返丨I」丨KMS消息的索引,取值从1幵始typesStringt]参数类型argsObject[]泊总参数returnCodeIntegerreturnInfoS t r η gΠ Ν^ platStatusInteger ' τ状态码 0〒台正常;-1无法连接平台endFlagboolean消息是否已结束表一消息类型、方法、内容和使用说明,如下表二
权利要求
1.一种防火墙穿透方法,其特征在于该方法包括步骤如下步骤一转换IATA标准corta对象为普通的JAVA对象,转换corta调用为普通socket 指令;步骤二 运行代理程序,该程序运行在自助柜机上,其中有一个Socket客户端,用以连 接KMS的socket服务端,有一个corta客户端,用来联接⑶SS平台的SMI接口;步骤三运行柜机管理系统,该系统有一个socket服务端,能够处理从代理程序发来 的socket请求;步骤四所述代理程序向柜机管理系统发送socket连接请求,所述柜机管理服务器验 证后,返回socket应答,双方的连接就通过了机场防火墙的验证;步骤五所述代理程序监测同柜机上的CUSS平台是否启动,如果启动就通知所述柜机 管理系统,同时利用corta端口连接⑶SS平台;步骤六所述柜机管理系统向代理程序发送转换成socket指令的SMI命令; 步骤七所述代理程序把socket命令转成corba的SMI命令,发送给⑶SS平台; 步骤八所述代理程序把CUSS平台返回的corta命令处理结果,转换成socket命令, 发送给所述柜机管理系统;步骤九所述柜机管理系统处理所述代理程序返回的调用结果; 步骤十所述柜机管理系统也可以向所述代理程序发送其他类型的非CUSS命令,以实 现升级和管理的其他功能。其中,在步骤二中,socket客户端持续监测指定IP和端口的socket服务端是否启动, 以判断柜机管理服务系统是否启动;corta客户端持续监测本机IP(127. 0. 0. 1)端口 20001 端口是否启动,以判断CUSS平台是否启动。
2.根据权利要求1所述的防火墙穿透方法,其中,在步骤三中,根据步骤一中的socket 通讯接口,所述柜机管理系统解析接口中的内容并处理;对于扩展命令类型的指令,根据指 令内容不同可以有应答也可以无应答,但是对于login —定要有应答,以保证socket连接 穿透防火墙;对于SMI命令,按顺序调用。
3.根据权利要求1所述的防火墙穿透方法,其中,在步骤四中,所述代理程序的连接请 求采用socket命令中的login方法,所述代理程序发送的login命令中socket消息在消 息头中包含柜机IP,组名,柜机名称,柜机登陆密码的信息;所述柜机管理系统把这些信息 保存在数据库中进行验证;一旦通过所述柜机管理系统的验证,所述柜机管理系统返回登 陆成功的应答。
4.根据权利要求1所述的防火墙穿透方法,其中,在步骤五中,所述代理程序监测同柜 机上的⑶SS平台是否启动,定时查询20001端口是否开放,如果开放就启动corta连接请 求。
5.根据权利要求1所述的防火墙穿透方法,其中,在步骤六中,所发送的SMI命令按照 CUSS标准。
6.根据权利要求1所述的防火墙穿透方法,其中,在步骤七中,所述代理程序把socket 命令转成corba的SMI命令,所转换的SMI命令和CUSS标准的对象类型相对应。
7.根据权利要求1所述的防火墙穿透方法,其中,在步骤八中,所述代理程序所转换成 的socket命令,和⑶SS标准的对象类型相对应。
8.根据权利要求1所述的防火墙穿透方法,其中,在步骤九中,所述柜机管理系统会 收到指令的返回,按照步骤一的对应关系,确定返回的具体方法,并根据参数类型和参数内 容,解析返回的数据结构,并进行相应的处理;具体逻辑为SMI命令处理按照CUSS标准的规定,解析相关的数据信息,把平台和应用的状态记录 在柜机管理系统的数据库,然后根据标准的要求返回相应的应答;扩展的命令收到login方法请求需要验证和判断柜机是否合法,并返回响应;收到 getDirectory方法应答需要把数据保存到柜机管理系统的数据库,无需返回应答;收到 logout方法请求,需要变更该柜机的注册状态,无需返回应答;批处理命令收到批处理命令的响应,保存入数据库,无需反馈。
9.根据权利要求1所述的防火墙穿透方法,其中,在步骤十中,所述柜机管理系统也可 以向代理程序发送批处理命令,有所述代理程序执行该批处理命令,由于批处理命令的内 容由用户自定义,功能扩展性大,用以用来实现升级和管理等其他功能。
全文摘要
本发明提供一种防火墙穿透方法,针对机场网络的限制,利用代理技术,采用业务代理的模式实现穿透机场网络防火墙,达到远程管理和控制自助柜机。本发明的方法利用了Agent代理技术,扩展IATA标准中的SMI接口,转换柜机和柜机管理系统之间的corba通讯为Agent到柜机管理系统的socket请求,穿透机场防火墙,同样的技术也应用在两个柜机管理系统之间的通讯上,以穿透机场之间的防火墙。本方法涉及到柜机管理系统,代理程序和CUSS平台,是由这三个系统协同工作的技术方案,把IATA标准结构的柜机管理系统和CUSS平台直接调用的两层关系,转为有中间代理程序的三层调用关系。
文档编号H04L29/06GK102075532SQ201010624580
公开日2011年5月25日 申请日期2010年12月30日 优先权日2010年12月30日
发明者蒋立华 申请人:中国民航信息网络股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1