一种分布式路由器系统的操作控制方法

文档序号:7661562阅读:90来源:国知局
专利名称:一种分布式路由器系统的操作控制方法
技术领域
本发明涉及分布式路由器系统的操作控制方法,尤其是涉及分布式路由器 系统中对各个子系统的集中操作控制的处理方法。
背景技术
在目前的分布式路由器系统中,主要通过管理口的诊断命令或者登录到线 卡终端下的方式执行相关命令对分布式路由器系统中的各个子系统进行操作控 制。管理口的诊断命令是指在路由器的诊断模式下,通过诊断命令的方式来操 作控制各线卡上的表项内容或状态等,该方法需要对每一条诊断命令在主控板 上进行解析,并将解析后的内容以消息的形式分发到各线卡的主设备上,在线 卡的主设备上执行相应的诊断命令函数,并将诊断结果以字符串的形式存储下 来,通过消息返回给主控板,主控板再将结果打印出来。若上述诊断命令是针对线卡从设备的,则上述执行过程需要作如下修改 在线卡主设备收到在主控板上解析的命令消息后,主设备通过内部总线(例如 PCI总线)访问从设备的内存,将需要诊断的表项的内容以字符串的形式存储下 来,并通过消息返回给主控板,而且对于从设备上无法通过内部总线访问的表 项需要通过主设备解析该命令,然后向从设备发送相应的消息,从设备执行后 也将诊断结果以字符串的形式存储下来,通过主设备以消息的形式返回给主控 板。若采用登录到线卡终端的方式,尤其是需要登录到线卡从设备,为了确保 客户端跟从设备之间能正常通信,需要搭建控制环境,添加路由器等。
上述通过管理口的诊断命令或者登陆到线卡终端进行线卡诊断的操作方式都有其缺点(1) 采用管理口的诊断命令模式,对于每条诊断命令都需要在主控板上、 线卡的主设备上分别进行解析和处理,且每一条命令函数线卡终端下显示的语 句都需要修改为保存在内存中,以备返回主控板进行显示,在这种模式下,不 仅代码运算量加大而且代码的相似性非常高,还需要对所有的诊断函数提供管 理口的诊断命令,由于实际情况的限制,实现起来非常困难。(2) 对于采用管理口的诊断命令模式执行从设备的相关诊断,需要将诊断 命令所涉及的从设备上的表项所处内存作为主设备能通过内部总线访问到的空 间,这种模式下,不但对硬件设计有一定要求,且还需要能事先确认各从设备 上的表项所处内存的偏移地址,尤其是在满足后者的要求时,在具体实现时是 非常繁瑣的。(3) 采用登陆到线卡终端模式,要求客户端能与各个线卡的主设备或从设 备进行正常通信,尤其需要客户端跟从设备能够正常通讯,且如果要同时在多 个主/从设备上进行操作,必须要求各线卡的主/从设备都有独立的IP地址,这对 开发环境提出更高的要求,且在该模式下,连接的用户个数限制为1个用户, 因此在多个用户需要操作控制时,比如进行定位或诊断表项,多个用户不能同 时使用。综上所述,为了提高分布式路由器系统的操作控制性能,目前迫切需要解 决现有技术中存在的在管理口的诊断命令模式下和登陆到线卡终端模式下进行 分布式路由器系统的操作控制存在的问题。发明内容本发明的目的在于提供一种分布式路由器系统的操作控制方法,用以克服 现有技术中分布式路由器操作系统的操作控制过程中存在的问题。 为了实现上述发明目的,本发明具体是这样实现的
一种分布式路由器系统中的操作控制方法,包括如下步骤步骤l,在管理口下设置一个共用的操作控制命令,将操作控制命令通过管 理口发送至对应的线卡主i殳备;步骤2,线卡主设备执行操作控制命令,判断是对主设备还是对从设备进行 操作控制,若是对主设备进行操作控制,则转入步骤3,否则是对从设备进行操 作控制,则转入步骤4;步骤3,主设备执行命令,并将执行结果通过管理口发送至主控板进行显示;步骤4,从设备通过接收主设备通过内部总线发送的操作控制命令,执行命 令,并将执行结果通过线卡主设备送至主控板进行显示。所述的分布式路由器系统中的操作控制方法中,所述线卡主设备或线卡从 设备在接收到操作控制命令后,首先判断是否创建内存文件设备,若未创建, 则创建内存文件设备,若已创建,则打开内存文件设备,并定向到文件头部, 将内存文件设备的buffer清零。所述的分布式路由器系统中的操作控制方法中,所述步骤2中的线卡主设 备执行操作控制命令之前,先对线卡进行认证,具体是这样实现的,主控板通过管理口向线卡输入认证命令和密码,线卡主设备判断输入的密 码与事先设置的密码是否一致,若一致,则认为认证成功,执行操作控制命令,否则不一致,则不执行操作控制命令。所述的分布式路由器系统中的操作控制方法中,在对线卡进行认证成功后, 通过在管理口设置的操作控制命令对设置的密码给予修改。所述的分布式路由器系统中的操作控制方法,所述主设备将执行结果反馈 至主控板进行显示后,通过集中操作控制命令设置logout命令,取消认证。所述的分布式路由器系统中的操作控制方法中,所述步骤2中,通过控制命令指定受控线卡终端的线卡号以此确定是对主 设备还是从设备进行操作控制。所述的分布式路由器系统中的操作控制方法中,所述步骤3中的线卡主设
备在执行操作控制命令前,对操作控制命令进行过滤。所述的分布式路由器系统中的操作控制方法,所述线卡主设备或从设备执行命令,具体包括如下步骤步骤31,判断命令是否为空,若是,则输出结果为空,否则,转入步骤32;步骤32,保存执行任务的输入和输出设备,重定向执行任务的输入和输出 设备的Fd,将输入设备的Fd设为无效,输出设备的Fd定向至已创建的内存文 件设备;步骤33,调用函数执行命令;步骤34,恢复执行任务的输入和输出设备。所述的分布式路由器系统中的操作控制方法中,所述内存文件设备的buffer用于存储执行结果,将存储的执行结果通过线 卡主设备发至主控板显示;所述存储的执行结果不应超出buffer-6K字节。 所述的分布式路由器系统中的操作控制方法中,所述步骤32中,重定向输入和输出设备的Fd为全局的输入和输出设备。 所述的分布式路由器系统中的操作控制方法中,若操作控制命令为无限循 环执行的命令,则将该控制命令设置默认的重复次数。 在所述的分布式路由器系统中的操作控制方法中, 所述步骤3中,线卡主设备的执行结果通过管理口发送至主控板; 所述步骤4中,线卡从设备通过其与线卡主设备之间的统一接口接收主设 备通过内部总线发送的操作控制命令,或者发送执行结果至线卡主设备。本发明方法通过提供能对路由器各个子系统方便的操作控制及显示操作控 制结果的通用的管理口,实现能方便对各个子系统进行诊断、定位等集中操作 控制,减少了对硬件环境的过分依赖,且代码实现简洁,简化了命令函数的编 写,方便移植,尤其对于线卡从设备,勿需搭建复杂的硬件环境来登录到从设 备的终端进行操作控制,提高了诊断效率,给分布式路由器系统的开发与维护 带来了极大的方便。


图1为分布式路由器系统采用本发明所述方法的具体控制流程; 图2为在线卡主设备上实现集中操作控制的流程; 图3为在线卡从设备上实现集中操作控制的流程; 图4为在线卡主/从设备上执行命令的流程图。
具体实施方式
本发明的基本思想是将现有技术中的管理口诊断命令模式与登陆到线卡终 端模式结合,通过主控板的管理口上设置的共用的操作控制命令调用任意一块 线卡终端下的任何命令进行操作控制,并将操作控制结果通过管理口发送至主 控板上显示出来。在分布式路由器系统中,通过主控板上的控制台集中操作控 制所有设备,包括线卡的主设备和从设备,当各个线卡终端收到主控板上的操 作控制命令后,将运行结果通过管理口反馈至主控板的控制台。对于线卡从设 备,由于其没有链路能直接跟主控板进行通信,需要经过主设备将操作控制消 息从线卡主设备上发送到线卡从设备,线卡从设备通过主设备反馈运行结果到 主控板,从而实现了集中操作控制,不需要分别登陆到各线卡的控制端口后才 能进行操作控制。本发明方法主要包括如下步骤步骤l,在管理口上设置共用的操作控制命令,将要执行的操作控制函数及 其参数以消息的形式发送到对应的线卡主设备,且对所有的操作控制消息都采 用统一的消息号,以侵_操作;步骤2,线卡主设备根据操作控制命令判断是对线卡主设备还是线卡从设备 进行操作控制,若是对线卡主设备进行操作控制,则转入步骤3,否则是对线卡 从设备进行操作控制,则转入步骤4;
步骤3,将线卡主设备执行任务的输入和输出设备重定向到内存文件设备, 执行相应的操作控制消息,恢复执行任务的输入和输出设备,将内存文件设备中的操作控制结果通过管理口发送至主控板,以便在控制台上显示;步骤4,线卡主设备通过内部总线将相关的操作控制命令发送到从设备,如 通过PCI共享内存的方式,将从设备执行任务的输入和输出设备重定向到内存 文件设备,执行相应的操作控制消息,恢复执行任务的输入和输出设备,将内 存文件设备中的操作控制结果通过主从通讯接口至线卡主设备,线卡主设备通 过管理口将操作控制结果发给主控板,以便在控制台上显示。所述执行任务的输入和输出设备是指主设备或从设备上的集中操作控制命 令执行任务的输入和输出设备;所述重定向具体包括过程如下先保存原来的输入和输出设备,然后将输 入设备的Fd设为无效,输出设备的Fd指向一个内存文件设备,这样执行控制 命令过程中所有的输出都输出到该内存文件设备中,在执行命令之后恢复原来 的输入和输出设备。以下结合附图及实例,将对本发明所述方法进行较为详细的说明,应当理 解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。的,例如釆用shell任务来完成。本发明方法在执行过程中,与其他对线卡终端 的操作控制并不影响,例如在本发明方法执行过程中可以同时进行直接登录到 各个线卡控制端上的操作控制,后者也是通过终端shell任务来进行操作的,二 者之间并不影响。如图1所示,本发明方法实现集中操作控制的流程,需要说明的是,该集 中操作控制的实现,需要保证主控板与各个线卡主设备之间的通讯正常,并需 要保证各线卡主设备与从设备之间的通讯正常;在系统启动后,主控板与各线卡通讯,提供一个将控制命令分发到各线卡 的共用的管理口 ,并通过控制命令指定受控线卡终端的线卡号以此确定是对主
设备还是从设备进行操作控制;同时,主控板也需要通过共用的管理口返回控 制,将原来能在各自控制端口上所显示的操作控制结果集中在在主控板的控制 台上显示。为防止用户误操作集中操作控制命令而出现异常现象,进行集中操作控制 的第一步是进行认证,所述认证是针对各个线卡单独进行的。主控板通过共用 的管理口向线卡输入认证命令,并同时输入密码,线卡主设备判断输入的密码 与事先设置的密码是否一致,若一致,则认为认证成功,线卡主设备方可执行 集中操作控制命令,否则不一致,则不执行集中操作控制命令,等待下次线卡 主设备执行集中操作控制命令执行时的重新认证。在通过认证之后,可以通过集中操作控制命令对密码进行修改。另外,在 对线卡进行认证时,是有时间限制的,在一定时间内,若认证不成功,则流程 结束,不再执行集中操作控制命令,当再次执行集中操作控制命令时,需要重 新对线卡进行认证。同时在对线卡终端的集中操作控制完成后,通过集中操作 控制命令设置logout命令,取消认证,当再次进行集中操作控制时,需要重新 认证。通过上述保护机制可以较好的确认开发人员使用集中操作控制功能的安 全性。如图2所示为在线卡主设备上实现集中操作控制的流程,具体描述如下步骤S201,检查内存文件设备是否已创建,如果未创建,则创建内存文件 设备,并打开内存文件设备并定向到文件头部,再将内存文件设备的buffer清 零;该内存文件设备作为后续执行集中操作控制命令时用于存储输出结果的内 存,因此执行命令输出的结果不应该超出该内存文件设备buffer的大小-6K字节。步骤S202 ,检查是否经过认证,经过认证后方可执行集中操作控制命令; 认证功能采取了超时检查,如在30分钟内没有执行集中操作控制命令,则认为 认证不成功,需要重新认证才能执行集中操作控制命令。步骤S203 ,过滤集中操作控制命令,对于影响系统稳定性的误操作控制命 令进行过滤,并给出相应的提示,通过提供的转换操作接口可以实现对应的操
作控制命令。例如,对于修改地址的命令m,在被修改的地址不可更改或为代码段时,会引起系统的崩溃。对于该命令,首先并釆用mm命令的执行替代该命令原有 执行步骤;该m命令则增加地址的范围检测,如果为合法地址则能改写,否则 只给出正常范围的提示,而不修改该地址内容。步骤S204 ,对集中操作控制命令及参数构建命令行,并对某些转义字符进 行处理。例如,"",分别转换成V',和\",以避免对lkup命令不能正确解析。步骤S205 ,执行集中操作控制命令,首先判断该集中操作控制命令是对主 设备还是对从设备的操作控制,如果是对主设备的操作控制则执行命令;如果 是对从设备的操作控制则主设备通过主从通讯的接口将要执行的命令发消息给 从设备,然后执行命令。板与线卡主设备之间的管理口发至主控板以便进行显示。如果确认是对从设备的操作控制,主设备通过统一的接口发送消息给从设 备;从设备在首次执行集中操作控制命令之前也需要先创建一内存文件设备, 其作用跟主设备创建的内存文件设备一样,用来存储输出内容,在执行命令之 后,再通过统一的接口将内存文件设备中的输出内容发送给主设备,主设备将 输出内容以消息的形式通过其与主控板之间的管理口发至主控板以便进行显 示。线卡主设备通过统一接口与从设备之间进行通讯,即通过一个主从通讯接 口将主控板上过来的操作控制从设备的命令发送到从设备上;同时线卡主设备 也需要通过主从通讯接口取得从设备上的操作控制结果后,再通过线卡主设备 与主控板之间的管理口发送给主控板以便进行显示。如图3所示在线卡从设备上实现集中操作控制的流程,其主要处理步骤如下S301,检查内存文件设备是否已创建,若是,则转入S302,否则,则创建
内存文件设备;5302, 打开内存文件设备;5303, 执行集中操作控制命令; S304,将执行结果返回给主设备;S305,主设备将执行结果反馈给主控板以便进行显示。 如图4所示,上述步骤S205中的执行命令,具体包括如下步骤5401, 执行集中操作控制命令,判断命令是否为空,若是,则输出结果为 空,否则,转入S402;5402, 重定向执行任务的输入和输出设备的Fd,重定向之前先保存该任务 的输入和输出设备,然后将输出设备定向为S201中所创建的内存文件设备,这 样就能将输出的结果写入到内存文件设备中;5403, 调用内核函数执行命令;S404,恢复执行任务的输入和输出设备; S405,将执行结果输出反馈给主控板。线卡从设备在收到主设备过来的控制命令后的处理过程,跟主设备收到主 控板过来的控制命令消息后的处理过程类似。上述将输出的结果写入到内存文件设备中,是指各个设备在操作过程中将 所有的打印信息写入内存文件设备中,之后将打印结果通过主设备与主控板间 的管理口发送至主控板以便显示。由于路由器上各子系统的线卡终端下有些操作控制信息是根据实际情况而 实时变化的,如收发报的内容打印,并不是执行某条命令之后能立即打印的, 对于这种情况可通过集中操作控制命令提供的监控功能给予解决。通过操作控 制命令可以将特定线卡的主或从设备上在一定的时间内打印的消息都写入到内 存文件设备中,然后将打印结果通过主设备与主控板间的管理口发送至主控板 显示出来。上述实现对线卡终端下打印信息的监控,可利用重定向输入和输出设备的Fd来实现,即将输入和输出设备的Fd重定向为全局的输入和输出设备,而非如 前所述的普通集中操作控制命令执行时重定向的执行任务的输入和输出设备。对于某些默认为无限循环执行的操作控制命令,例如ping命令,当其参数 重复次数为0时一直进行ping操作,若要停止ping操作是通过快捷键来终止, 而这些快捷键在管理口中也有其特定的意义。对于这种情况,如不特殊对待, 一旦在集中操作控制下执行了该命令,集中操作控制将陷入死循环而不能正常 退出。因此需要对这些命令特殊处理,即,选取一个默认重复次数,而不是采 用原来的默认无限循环。本发明方法通过共用管理口将主控板上的操作控制命令传输到对应的各个 子系统,并通过管理口反馈执行结果,从而实现主控板对各个子系统进行集中 控制操作,可以用于大部分的分布式系统中,通过上述方法,极大的方便了分 布式系统的控制与操作。应当指出的是,本发明方法对本领域普通技术人员来说,可以根据本发明 的技术方案及其有益效果进行改变或替换,而所有这些改变或替换都应属于本 发明的权利要求的保护范围。
权利要求
1、一种分布式路由器系统中的操作控制方法,其特征在于,包括如下步骤步骤1,在管理口下设置一个共用的操作控制命令,将操作控制命令通过管理口发送至对应的线卡主设备;步骤2,线卡主设备执行操作控制命令,判断是对主设备还是对从设备进行操作控制,若是对主设备进行操作控制,则转入步骤3,否则是对从设备进行操作控制,则转入步骤4;步骤3,主设备执行命令,并将执行结果通过管理口发送至主控板进行显示;步骤4,从设备通过接收主设备通过内部总线发送的操作控制命令,执行命令,并将执行结果通过线卡主设备送至主控板进行显示。
2、如权利要求1所述的分布式路由器系统中的操作控制方法,其特征在于,所述线卡主设备或线卡从设备在接收到操作控制命令后,首先判断是否创 建内存文件设备,若未创建,则创建内存文件设备,若已创建,则打开内存文 件设备,并定向到文件头部,将内存文件设备的buffer清零。
3、 如权利要求1或2所述的分布式路由器系统中的操作控制方法,其特征 在于,所述步骤2中的线卡主设备执行操作控制命令之前,先对线卡进行认证, 具体是这样实现的,主控板通过管理口向线卡输入认证命令和密码,线卡主设备判断输入的密 码与事先设置的密码是否一致,若一致,则认为认证成功,执行操作控制命令,否则不一致,则不执行操作控制命令。
4、 如权利要求3所述的分布式路由器系统中的操作控制方法,其特征在于, 在对线卡进行认证成功后,通过在管理口设置的操作控制命令对设置的密码给予修改。
5、 如权利要求3所述的分布式路由器系统中的操作控制方法,其特征在于, 所述主设备将执行结果反馈至主控板进行显示后,通过操作控制命令设置logout命令,耳又消认证。
6、 如权利要求1所述的分布式路由器系统中的操作控制方法,其特征在于, 所述步骤2中,通过控制命令指定受控线卡终端的线卡号以此确定是对主设备还是从设备进行操作控制。
7、 如权利要求1或2所述的分布式路由器系统中的操作控制方法,其特征 在于,所述步骤3中的线卡主设备在执行操作控制命令前,对操作控制命令进行 过滤。
8、 如权利要求2所述的分布式路由器系统中的操作控制方法,其特征在于, 所述线卡主设备或从设备执行命令,具体包括如下步骤步骤31,判断命令是否为空,若是,则输出结果为空,否则,转入步骤32;步骤32,保存执行任务的输入和输出设备,重定向执行任务的输入和输出 设备的Fd,将输入设备的Fd设为无效,输出设备的Fd定向至已创建的内存文 件设备;步骤33,调用函数执行命令;步骤34,恢复执行任务的输入和输出设备。
9、 如权利要求2或8所述的分布式路由器系统中的操作控制方法,其特征 在于,所述内存文件设备的buffer用于存储执行结果,将存储的执行结果通过线 卡主设备发至主控板显示;所述存储的执行结果不应超出buffer-6K字节。
10、 如权利要求8所述的分布式路由器系统中的操作控制方法,其特征在于,所述步骤32中,重定向输入和输出设备的Fd为全局的输入和输出设备。
11、 如权利要求8所述的分布式路由器系统中的操作控制方法,其特征在于,若操作控制命令为无限循环执行的命令,则将该操作控制命令设置默认的 重复次数。
12、 如权利要求1所述的分布式路由器系统中的操作控制方法,其特征在于,所述步骤3中,线卡主设备的执行结果通过管理口发送至主控板; 所述步骤4中,线卡从设备通过其与线卡主设备之间的统一接口接收主设 备通过内部总线发送的操作控制命令,或者发送执行结果至线卡主设备。
全文摘要
一种分布式路由器系统中的操作控制方法包括,在管理口下设置一个共用的操作控制命令,将操作控制命令通过管理口发送至对应的线卡主设备;线卡主设备执行操作控制命令,判断是对主设备还是对从设备进行操作控制,若是对主设备进行操作控制,主设备执行命令,并将执行结果通过管理口发送至主控板进行显示;否则是对从设备进行操作控制,从设备通过接收主设备通过内部总线发送的操作控制命令,执行命令,并将执行结果通过线卡主设备送至主控板进行显示。本发明能方便对各个路由器子系统进行诊断、定位等集中操作控制,减少了对硬件环境的过分依赖,且代码实现简洁,简化了命令函数的编写,方便移植,提高了诊断效率。
文档编号H04L12/04GK101119320SQ20071015229
公开日2008年2月6日 申请日期2007年9月24日 优先权日2007年9月24日
发明者张艳梅 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1