JP5144589B2 - Command input device, command input system, command input method and command input program - Google Patents
Command input device, command input system, command input method and command input program Download PDFInfo
- Publication number
- JP5144589B2 JP5144589B2 JP2009119323A JP2009119323A JP5144589B2 JP 5144589 B2 JP5144589 B2 JP 5144589B2 JP 2009119323 A JP2009119323 A JP 2009119323A JP 2009119323 A JP2009119323 A JP 2009119323A JP 5144589 B2 JP5144589 B2 JP 5144589B2
- Authority
- JP
- Japan
- Prior art keywords
- command
- session
- input
- queue
- network device
- 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.)
- Active
Links
Images
Description
本発明は、IP(Internet Protocol)網を構成する装置へのコマンド投入技術に関する。 The present invention relates to a command input technology to devices constituting an IP (Internet Protocol) network.
通信インフラの拡大に伴って、ネットワークを構成する装置(例えば、ルータ等のネットワーク装置)の数が増加している。加入者に対する新規サービスの設定や解除は、ネットワーク装置にコマンドを投入することによって実施されており、サービスの多様化や加入者の増大はコマンド投入の機会を増やす要因となっている。また、通信インフラの品質維持に関わる装置管理もコマンド投入により実施されており、円滑なネットワーク管理のためにコマンドの投入の効率化の重要性が高まっている。ここで、サービスに関する内容を各ネットワーク装置に設定する技術としてサービスアクティベーションがある。近年、このサービスアクティベーションにおいて、設定内容のうち、サービスに依存する部分をモジュールごとに切り出し、モジュールの入れ替えにより各種サービスに柔軟に対応する技術が提案されている(非特許文献1参照)。 With the expansion of communication infrastructure, the number of devices (for example, network devices such as routers) constituting a network is increasing. Setting and cancellation of new services for subscribers are performed by inputting commands to the network device, and diversification of services and increase in subscribers are factors that increase opportunities for inputting commands. In addition, device management related to maintaining the quality of communication infrastructure is performed by inputting commands, and the importance of increasing the efficiency of inputting commands is increasing for smooth network management. Here, there is a service activation as a technique for setting contents related to a service in each network device. In recent years, in this service activation, a technique has been proposed in which a part depending on a service among setting contents is cut out for each module and various services are flexibly handled by replacing the modules (see Non-Patent Document 1).
しかし、非特許文献1に記載の技術では、システムが、ネットワーク装置に1コマンドずつTelnetセッションを確立して投入する方式がとられている。この方式では、ネットワーク装置に複数のコマンドを一度に投入することによるコマンドの競合の問題(複数のコマンド同士が干渉する問題)は発生しないが、コマンドの投入効率は必ずしもよくないという問題がある。また、非特許文献1に記載の技術において、システムは、コマンドの投入先のネットワーク装置をランダムに選択するので、ネットワーク装置間で投入されるコマンド数に偏りが生じるおそれもある。さらに、システムがコマンド投入のたびにTelnetセッションを確立していると、システムは、投入対象のコマンドを受け付けてから、実際にそのネットワーク装置にコマンドが投入されるまでの待ち時間の予測ができない。よって、コマンド投入後、ネットワーク装置からの反応が無い場合に、システムは、ネットワーク装置に問題があるのかコマンド投入に時間がかかっているだけなのかを判断しにくいという問題がある。そこで、本発明は、コマンド投入装置が、各ネットワーク装置へ、効率よく平等にコマンドを投入しつつ、コマンドが投入されるまでの最大待ち時間の予測を容易にすることを目的とする。 However, the technique described in Non-Patent Document 1 employs a method in which the system establishes and enters a Telnet session for each command to the network device. Although this method does not cause a command contention problem (problem in which a plurality of commands interfere with each other) caused by inputting a plurality of commands to the network device at the same time, there is a problem that command input efficiency is not always good. Further, in the technique described in Non-Patent Document 1, since the system randomly selects a network device to which a command is input, the number of commands input between the network devices may be biased. Further, if the system establishes a Telnet session each time a command is input, the system cannot predict the waiting time until the command is actually input to the network device after receiving the input target command. Therefore, when there is no response from the network device after the command is input, there is a problem that the system cannot easily determine whether there is a problem with the network device or whether it takes time to input the command. Accordingly, an object of the present invention is to facilitate the prediction of the maximum waiting time until a command is input while the command input device inputs commands to each network device efficiently and equally.
前記した課題を解決するため、本発明は、通信網に設置される1以上のネットワーク装置(ルータ等)へのコマンドを投入するコマンド投入装置が、外部装置から、ネットワーク装置へ投入する一連のコマンド群をその投入順に受け付ける。そして、このコマンド投入装置のキューイング部は、入力されたコマンド群について、キュー部にそのコマンド群の投入先のネットワーク装置ごとに3段階(3つのフェーズ)のキューを形成する。まず、キューイング部は、コマンドの投入先のネットワーク装置ごとに、(1)第1フェーズのキューにおいて、コマンドの優先度ごとのキューに分けて蓄積する。そして、(2)第2フェーズとして、第3フェーズの各ネットワーク装置に関するキューのコマンドが空になると、この第1フェーズのキューのうち、優先度の高いキューから優先的に所定数(N個)のコマンドをシフトする。つまり、キューイング部は、優先度の高いコマンド(例えば、緊急コマンド等)から先に、そのコマンドの投入順に所定数分のコマンドをシフトする。これにより、コマンド群がネットワーク装置に投入されるとき、優先度の高いコマンドから先にネットワーク装置に投入されるようになる。なお、キューイング部が、第1フェーズのキューのコマンド群をシフトするとき、この第1フェーズのキューのコマンド群がN個未満であるとき、このすべてのコマンド群をシフトする。 In order to solve the above-described problems, the present invention provides a series of commands that a command input device that inputs a command to one or more network devices (routers or the like) installed in a communication network inputs from an external device to the network device. Groups are accepted in their order of entry. The queuing unit of the command input device forms a queue of three stages (three phases) in the queue unit for each input network device of the command group for the input command group. First, the queuing unit stores (1) a queue for each command priority in a first-phase queue for each network device to which a command is input. (2) As the second phase, when the queue commands related to the network devices in the third phase are emptied, a predetermined number (N) of the queues in the first phase is preferentially selected from the queues with higher priority. Shift the command. That is, the queuing unit shifts a predetermined number of commands in the order in which the commands are input, starting with a command having a high priority (for example, an emergency command). As a result, when a command group is input to the network device, a command having a higher priority is input to the network device first. When the queuing unit shifts the command group of the first phase queue, when there are less than N command groups in the first phase queue, all the command groups are shifted.
次に、コマンド投入装置のキューイング部は、(3)第3フェーズとして、第2フェーズのキューからシフトしたコマンドを設定系コマンドと、非設定系コマンドとに分け、それぞれのキューに蓄積する。このように、コマンド群を設定系コマンドのキューと、非設定系コマンドのキューとに分けることにより、同じネットワーク装置に複数のセッションを確立してコマンド群を投入するとき、コマンドの種類を考慮したセッション制御を行いやすくなる。また、キューイング部は、第2フェーズにおいて、第3フェーズの各ネットワーク装置に関するキューが空になってから、所定数(N個)のコマンド群をシフトする。また、連続して投入できるコマンド数の最大値が所定数(N個)になるので、このコマンド群が投入されるまでの最大待ち時間が予測しやすくなる。さらに、コマンド投入装置は、都度セッションを確立することなく最大N個連続してコマンドを投入することになるので、効率よくコマンド投入を行うことができる。また、コマンド投入装置が1つのセッションを長時間占有しにくくなり、ネットワーク装置間でコマンド投入数に偏りができにくくなる。 Next, the queuing unit of the command input device (3) divides the command shifted from the queue of the second phase into a setting command and a non-setting command as the third phase, and accumulates them in the respective queues. In this way, by dividing the command group into a queue for setting commands and a queue for non-setting commands, when establishing a plurality of sessions on the same network device and entering the command group, the type of command is considered. Easy session control. In the second phase, the queuing unit shifts a predetermined number (N) of command groups after the queue for each network device in the third phase becomes empty. In addition, since the maximum number of commands that can be continuously input is a predetermined number (N), it is easy to predict the maximum waiting time until this command group is input. Further, since the command input device inputs commands at a maximum of N consecutive times without establishing a session each time, the command input can be performed efficiently. In addition, it becomes difficult for the command input device to occupy one session for a long time, and it is difficult to bias the number of command inputs among network devices.
なお、ネットワーク装置にコマンド群が投入されるまでのコマンド投入装置の最大待ち時間は、以下のようにして予測できる。このコマンド投入装置において、例えば、1つのネットワーク装置に関する第3フェーズのキューがそれぞれ2つ(設定系コマンドのキューが1つ、非設定系コマンドのキューが1つ)のとき、ネットワーク装置にN個目のコマンドが投入され終わるまでの最大時間、つまり、N+1個目のコマンドが投入されるまでの最大待ち時間は以下のようにして予測できる。まず、1度にシフトされる最大コマンド数は、Nがすべてのネットワーク装置で同じ数のとき、以下の式(1)により計算できる。
シフトコマンド数(Cn)=ネットワーク装置数×N個…式(1)
The maximum waiting time of the command input device until the command group is input to the network device can be predicted as follows. In this command input device, for example, when there are two third-phase queues for one network device (one set command queue and one non-set command queue), the network device has N queues. The maximum time until the eye command is input, that is, the maximum waiting time until the (N + 1) th command is input can be predicted as follows. First, the maximum number of commands shifted at a time can be calculated by the following equation (1) when N is the same number in all network devices.
Number of shift commands (Cn) = number of network devices × N ... Equation (1)
次に、第3フェーズでは各ネットワーク装置において2つのキューに分かれることから、各ネットワーク装置でN個のコマンドを処理するためのセッション接続回数は、最大2回となる。つまり、シフトされたN個のコマンドを処理する際のセッション接続回数(Sn)は、以下の式(2)により計算できる。
セッション接続回数(Sn)=ネットワーク装置数×2…式(2)
Next, since each network device is divided into two queues in the third phase, the maximum number of session connections for processing N commands in each network device is two. That is, the number of session connections (Sn) when processing N shifted commands can be calculated by the following equation (2).
Number of session connections (Sn) = number of network devices × 2 Equation (2)
ここで、コマンド1つあたりの処理時間(Ct)と、1セッションの接続処理時間(St)が分かっており、かつ、セッションリソース数(最大設セッションリソース数)が、このコマンド投入装置に接続されるネットワーク装置の数よりも少ない場合、N+1個目のコマンドが投入されるまでの最大待ち時間は、以下の式(3)により計算できる。
なお、セッションリソース数(最大セッションリソース数)がネットワーク装置の数よりも多い場合には、以下の式(4)により計算できる。
この後、コマンド投入装置のセッション制御部は、セッション管理部からの指示に基づきネットワーク装置との間でのセッションの確立および切断を行い、コマンドの投入を行う。つまり、セッション管理部は、セッションが確立中か否かおよび当該セッションによるコマンド処理中か否かを示すセッション状態とを示したセッション管理情報を参照して、設定系コマンドキューまたは非設定系コマンドキューに蓄積されたコマンド群の中から、セッション確立中のネットワーク装置へのコマンド群をコマンド群として選択する。このとき、セッション確立中のネットワーク装置へのコマンド群の中に、(1)当該ネットワーク装置に連続投入可能なコマンド群があれば、このコマンド群を優先的に選択し、このコマンド投入装置に設定された各ネットワーク装置とのセッション数の合計値の最大値を超えない範囲で、当該ネットワーク装置との間に新たなセッションを確立し、この選択したコマンド群をネットワーク装置に投入するようセッション制御部へ指示する。また、(2)当該ネットワークに連続投入可能なコマンド群がなければ、コマンド群の中からランダムにコマンド群を選択し、この選択したコマンド群をネットワーク装置に投入するようセッション制御部へ指示する。これにより、コマンド投入装置は、ネットワーク装置に一連のコマンド群をまとめて投入することができる。また、設定系コマンドと非設定系コマンド等、連続投入が可能なコマンド群について、複数のセッションを用いてネットワーク装置に並列に投入する。よって、効率よくコマンドを投入することができる。 Thereafter, the session control unit of the command input device establishes and disconnects a session with the network device based on an instruction from the session management unit, and inputs the command. That is, the session management unit refers to the session management information indicating whether the session is being established and the session status indicating whether the command is being processed by the session, and sets the command queue or the non-configuration command queue. The command group to the network device in which the session is being established is selected as the command group from the command group stored in the command group. At this time, if there is a command group that can be continuously input to the network device in the command group to the network device that is establishing a session, this command group is preferentially selected and set in this command input device. A session control unit that establishes a new session with the network device within a range not exceeding the maximum value of the total number of sessions with each network device and inputs the selected command group to the network device. To instruct. Also, (2) if there is no command group that can be continuously input to the network, a command group is randomly selected from the command group, and the session control unit is instructed to input the selected command group to the network device. Thereby, the command input device can input a series of command groups to the network device collectively. Also, a command group that can be continuously input, such as a setting command and a non-setting command, is input to the network device in parallel using a plurality of sessions. Therefore, commands can be input efficiently.
また、本発明のコマンド投入装置は、キュー部の設定系コマンドキューおよび非設定系コマンドキューのいずれのコマンド群の中にも、コマンド群の中に、セッション確立中のネットワーク装置へのコマンド群がなかった場合、セッション制御部へ、確立されたセッションの中から、コマンド処理を終了しているセッションを切断するよう指示する。そして、このコマンド群の中から、ランダムにコマンド群を選択し、この選択したコマンド群の投入先となるネットワーク装置との間に新たなセッションを確立し、選択したコマンド群を、この確立したセッションを用いて投入するよう指示する。これにより、コマンド投入装置は、限られたセッションリソースを有効活用してコマンド群の投入を行うことができる。 In addition, the command input device of the present invention includes a command group for a network device that is establishing a session in the command group in any of the command group of the setting command queue and the non-setting command queue of the queue unit. If not, the session control unit is instructed to disconnect the session that has finished command processing from the established sessions. Then, a command group is randomly selected from the command group, a new session is established with the network device to which the selected command group is input, and the selected command group is set to the established session. To inject using As a result, the command input device can input a command group by effectively utilizing the limited session resource.
また、本発明のコマンド投入装置は、非設定系コマンドのコマンド群を投入するために、コマンド群の投入先のネットワーク装置との間に新たなセッションの確立を指示するとき、このネットワーク装置との間で確立されるセッション数が、自身のコマンド投入装置に設定された各ネットワーク装置とのセッション数の合計値の最大値(最大セッション数)を超えず、かつ、当該ネットワーク装置に関する第3フェーズにおけるキュー数を超えない数とするようにする。このようにすることで、複数のセッションを用いてネットワーク装置に非設定系コマンドを並列に投入するとき、用いるセッション数を、最大セッション数を越えず、かつ、当該ネットワーク装置に関する第3フェーズにおけるキュー数以下とすることができる。 Further, the command input device of the present invention, when instructing the establishment of a new session with the network device to which the command group is input in order to input the command group of the non-setting system command, The number of sessions established between the network devices does not exceed the maximum value (maximum number of sessions) of the total number of sessions with each network device set in its own command input device, and in the third phase for the network device. Make sure that the number does not exceed the number of queues. In this way, when a non-setting command is input in parallel to a network device using a plurality of sessions, the number of sessions to be used does not exceed the maximum number of sessions, and the queue in the third phase relating to the network device It can be less than a few.
また、本発明のコマンド投入システムは、コマンド投入装置と、このコマンド投入装置からのコマンドの投入を受け付けるネットワーク装置を複数含む。このようにすることで、前記したコマンド投入装置を含むシステムを実現することができる。 The command input system of the present invention includes a command input device and a plurality of network devices that accept input of commands from the command input device. In this way, a system including the command input device described above can be realized.
また、本発明のコマンド投入プログラムは、請求項5に記載のコマンド投入方法を、コンピュータであるコマンド投入装置に実行させる。よって、一般的なコンピュータに請求項5に記載のコマンド投入方法を実行させることができる。 A command input program according to the present invention causes a command input device, which is a computer, to execute the command input method according to claim 5. Therefore, the command input method according to claim 5 can be executed by a general computer.
本発明によれば、コマンド投入装置が、各ネットワーク装置へ、効率よく平等にコマンドを投入しつつ、コマンドが投入されるまでの最大待ち時間を容易に予測できる。 According to the present invention, the command input device can easily predict the maximum waiting time until the command is input while inputting the command to each network device efficiently and equally.
以下、本発明を実施するための形態(以下、実施の形態とする)について説明する。
まず、本実施の形態のコマンド投入装置が扱うコマンドについて説明する。コマンド投入装置が扱うコマンドは、大きく設定系コマンドと非設定系コマンドとに分けられる。なお、ここでは、コマンドの投入対象のネットワーク装置は、ルータである場合を例に説明するが、それ以外のネットワーク装置であってもよい。
Hereinafter, modes for carrying out the present invention (hereinafter referred to as embodiments) will be described.
First, commands handled by the command input device of this embodiment will be described. Commands handled by the command input device are roughly classified into setting commands and non-setting commands. Here, a case where the command input network device is a router will be described as an example, but other network devices may be used.
設定系コマンドは、例えば、Cisco(登録商標)ルータのコマンドで、Configurationモードで設定する「password」や「ip address」等、ルータ(ネットワーク装置)の設定そのものに変更を加えるコマンドである。この設定系コマンドは、同じルータに同時(または、ほぼ同時)に複数投入した場合、相互の干渉するおそれがあるため、排他的に実行する必要がある。つまり、ルータにおいて、1つのコマンドの実行が完了してから、次のコマンドを実行する必要がある。また、この設定系コマンドは、他の設定系コマンドと順番が前後してしまうと、想定した実行結果と異なる結果となる場合がある。そのため、コマンド投入装置がルータへ設定系コマンドを投入する際には、投入順序を守る必要がある。 The setting command is a command of a Cisco (registered trademark) router, for example, and is a command for changing the setting of the router (network device) itself such as “password” and “ip address” set in the Configuration mode. If a plurality of these setting commands are input simultaneously (or almost simultaneously) to the same router, there is a possibility of mutual interference, so it is necessary to execute them exclusively. That is, it is necessary to execute the next command after the execution of one command is completed in the router. In addition, if the order of this setting command is different from that of other setting commands, the result may differ from the assumed execution result. Therefore, when the command input device inputs setting commands to the router, it is necessary to observe the input order.
非設定系コマンドは、「show」や「ping」といった参照コマンド等、ルータそのものにに変更を加えないコマンドである。この非設定系コマンドは、他の設定系コマンドと同時に実行しても影響を与えない。 Non-configuration commands are commands that do not change the router itself, such as reference commands such as “show” and “ping”. This non-setting command has no effect even when executed simultaneously with other setting commands.
なお、この設定系コマンドおよび非設定系コマンドはそれぞれ、そのコマンドの優先度によっても分類される。ここでは説明を簡単にするため、優先度の概念を単純化し、緊急コマンドと通常コマンドの2種類のコマンドとに分類する。 Each of the setting command and the non-setting command is also classified according to the priority of the command. Here, for simplicity of explanation, the concept of priority is simplified and classified into two types of commands, emergency commands and normal commands.
通常コマンドは、基本的にコマンドファイルに示される順に投入される。しかし、ネットワーク内のルータに障害が起こった場合、これらのコマンドよりも試験用コマンド(例えば、「ping」や「traceroot」等)を優先的に投入し、速やかにルータの障害箇所の特定を行わなくてはならない。このようなコマンドを緊急コマンドと呼び、通常コマンドよりも優先的にルータへ投入する。また、この通常コマンドと緊急コマンドについても、それぞれ設定系コマンドと非設定系コマンドの種別を持ち、緊急コマンドであっても、このコマンドが設定系コマンドであれば、同じルータに複数のコマンドを投入すると問題が生じる。従って、複数の緊急コマンドが同じルータに投入される場合でも、コマンド間の順序性が保持されなければならない。なお、各コマンドが通常コマンドか緊急コマンドかは、ネットワークの管理者等がコマンドファイル等に設定する。 Normal commands are basically entered in the order shown in the command file. However, if a failure occurs in a router in the network, a test command (for example, “ping” or “traceroot”) is given priority over these commands, and the failure location of the router is quickly identified. Must-have. Such a command is called an emergency command, and is given to the router with priority over the normal command. The normal command and emergency command also have a set command and a non-set command type, respectively. If this command is a set command, multiple commands are input to the same router. Then problems arise. Therefore, even when a plurality of emergency commands are input to the same router, the order between the commands must be maintained. Whether each command is a normal command or an emergency command is set in a command file or the like by a network administrator or the like.
以上の特性をまとめると、コマンド投入装置において遵守すべきコマンドの順序は表1に示すようになる。なお、この表1における「先」とは、入力順が先のコマンドという意味であり、「後」とは、入力順が後のコマンドという意味である。また、ここでの「先」と「後」とは、必ずしも明確な時間差がある場合のみならず、ほぼ同時の場合を含む。 To summarize the above characteristics, the command order to be observed in the command input device is as shown in Table 1. In Table 1, “destination” means a command in which the input order is first, and “after” means a command in which the input order is later. Further, “first” and “after” here include not only a case where there is a clear time difference but also a case where they are almost simultaneous.
例えば、表1に示すように、先のコマンドが緊急コマンドであるとき、後のコマンドが緊急コマンドであろうと、通常コマンドであろうと、先のコマンドが優先される。また、先のコマンドが通常コマンドであるとき、後のコマンドが通常コマンドであれば、この先のコマンドが優先されるが、後のコマンドが緊急コマンドであるときは、後のコマンドが優先される。例えば、先のコマンドが設定系コマンドで通常コマンドであり、後のコマンドが設定系コマンドで緊急コマンドであれば、後のコマンドの方が優先される。また、先のコマンドが非設定系の通常コマンドであるとき、後のコマンドが非設定系の緊急コマンドであれば、後のコマンドの方が優先される。
ここで、本実施の形態のコマンド投入装置の処理概要を図1を用いて説明する。なお、コマンド投入装置と、コマンド投入対象であるルータ(ネットワーク装置)20それぞれとの間で確立するセッション数の最大値(セッションリソース)は予め決められているものとする。 Here, an outline of processing of the command input device of the present embodiment will be described with reference to FIG. It is assumed that the maximum value (session resource) of the number of sessions established between the command input device and each router (network device) 20 that is a command input target is determined in advance.
本実施の形態のコマンド投入装置は、キュー部122において、ルータ20へ投入する一連のコマンド群に対し、以下に示す3つのフェーズからなるキューイングを行う。そして、フェーズ3の各キューから選択したコマンド群を、このコマンド群の投入先のルータ20との間に確立されたセッションまたは新たに確立したセッションを用いて投入する。
In the command input device of the present embodiment, the queue unit 122 performs queuing including the following three phases for a series of commands input to the
<フェーズ1(第1のフェーズ)>
コマンド投入装置は、コマンドファイル(コマンド群)を受信すると、このコマンド群を、投入先のルータ20(例えば、ルータ20A,20B,20C)ごとに分ける。そして、この分けたコマンド群を、緊急コマンドと通常コマンドとに分ける。そして、緊急コマンドを緊急コマンドキューとして蓄積し、通常コマンドを通常コマンドキューとして蓄積する。このような処理を、コマンド群の投入先のルータ20ごとに行う。
<Phase 1 (first phase)>
When the command input device receives the command file (command group), the command input device divides this command group for each of the input destination routers 20 (for example,
<フェーズ2(第2のフェーズ)>
次に、コマンド投入装置は、フェーズ3(詳細は後記)のすべてのルータ20に対するキューのコマンドが無くなったとき、フェーズ2のキュー(バッファキュー)に、フェーズ1のキューのコマンドを所定数(N個)シフトする。ここで、シフトするコマンドは、緊急コマンドキュー(優先度の高いキュー)から優先的に選ぶ。なお、フェーズ1の緊急コマンドキューのコマンドがN個未満の場合、緊急コマンドキューのコマンドをすべてシフトし、不足分については通常コマンドキューからシフトする。このようにしてフェーズ1のコマンド群をシフトすることで、ルータ20へのコマンドについて、通常コマンドよりも緊急コマンドの方が先に投入されるようなキューイングを実現できる。また、コマンド投入装置は、フェーズ3のすべてのルータ20に対するコマンドが無くなってから、次のN個のコマンドをシフトするので、各ルータ20間で投入コマンド数に偏りが生じにくくなる。なお、コマンド投入装置がシフトするコマンド数は、コマンドの投入先の各ルータ20ごとに異なる数であってもよい。
<Phase 2 (second phase)>
Next, when there are no queue commands for all
<フェーズ3(第3のフェーズ)>
コマンド投入装置は、フェーズ2のN個のコマンドのうち、設定系コマンドを設定系コマンドキューに蓄積し、非設定系コマンドを1以上の非設定系コマンドキューに蓄積する。
<Phase 3 (third phase)>
The command input device accumulates the setting system command in the setting system command queue and stores the non-configuration system command in one or more non-configuration system command queues among the N commands of Phase 2.
その後、コマンド投入装置のセッション制御部125は、この設定系コマンドキューまたは非設定系コマンドキューに溜まったコマンド群を投入コマンド候補群としてシフトし、このシフトしたコマンド群の中から、各ルータ20とのセッション状態を見て、1つのコマンド群を選択する。そして、このコマンド群を、ルータ20へ投入する。このようにすることで、コマンド投入装置は、できるだけ連続でルータ20へコマンドを投入することができる。また、コマンド投入装置は、最大N個ずつコマンドをシフトしてルータ20へ投入することが分かっているので、コマンド投入の最大待ち時間が予測しやすくなる。なお、このフェーズ3の設定系コマンドキューは1つのルータ20あたり、1つとする。これは、当該ルータ20との間にセッションを確立する場合において、このフェーズ3の設定系コマンドを複数のセッションを用いて投入すると競合が発生するからである。
Thereafter, the
なお、このときセッション制御部125は、ルータ20とのセッション状態(セッション確立中、セッション切断中、コマンド処理中、コマンド処理完了)を参照して、連続投入できるコマンド群(つまり、競合しない投入コマンド候補群)があれば、優先的にそのコマンド群を選択する。例えば、ルータ20とのセッションを確立中であり、かつ、設定系コマンドを処理中であれば、非設定系コマンドを選択する。このようにすることで、同じルータ20内に連続して複数のコマンドを投入する場合でも、そのルータ20内でコマンドの競合を起こさないようにできる。
At this time, the
また、このとき、(1)セッション制御部125は、ルータ20との間にセッションリソースがあり、かつ、次の投入コマンドが、この投入コマンドの対象装置(ルータ20)へ投入中のコマンドと競合しなければ、対象装置(ルータ20)に新たなセッションを確立し、コマンドを投入する。ここで、セッション制御部125は、(2)すべてのセッションリソースが接続中であれば、いずれかのルータ20へのコマンド投入が終了するまで待ってそのセッションを切断する。そして、その後、(1)の処理を実行する。つまり、セッション制御部125は、新たなセッションを確立するためのセッションリソースが無ければ、コマンド投入終了後、セッションの切断を行い、セッションリソースを確保し、新たなセッションを確立できるようにする。このようにすることで、コマンド投入装置は、同じルータ20に対し、複数のセッションを確立して並列にコマンドを投入することが可能となる。これにより、コマンド投入装置は、効率よくコマンド投入を行うことができる。なお、(1)において、セッション制御部125がルータ20との間に新たなセッションを確立するとき、コマンド投入装置の確立するセッションの合計数が、最大セッション数を超えず、かつ、そのルータ20に確立可能なセッション数(並列度)を超えないようにする。
At this time, (1) the
<構成>
次に、図2を用いて、本実施の形態のコマンド投入システムの構成例を説明する。コマンド投入システムは、ルータ(装置)20へのコマンド群を示したコマンドファイルを出力する上位システム30(30A,30B,30C)と、この上位システム30からのコマンドファイルを受信し、ルータ20へコマンド群を投入するコマンド投入装置10と、このコマンド群の投入先の装置であるルータ20(20A,20B,20C)とを含んで構成される。なお、この上位システム(外部装置)30は、例えば、コマンド投入装置10へコマンドファイルを出力するコンピュータにより実現される。また、ルータ20は、IP網等の通信網に設置されるルータである。ここでは、コマンド投入装置10は、既にセッション制御部125により、ルータ20(20A〜20C)との間にセッションを確立しているものとする。そして、各セッションがどのルータ20と確立されているか、そのセッションが確立中か切断中か、接続先のルータ20において、コマンド処理が完了しているか否か等をセッション管理情報131に記録しているものとする。
<Configuration>
Next, a configuration example of the command input system according to the present embodiment will be described with reference to FIG. The command input system receives a command file from the host system 30 (30A, 30B, 30C) that outputs a command file indicating a command group to the router (device) 20 and the command system to the
このようなコマンド投入装置10の構成を詳細に説明する。コマンド投入装置10は、入力部11、処理部12、記憶部13および出力部14に分けられる。
The configuration of the command input device 10 will be described in detail. The command input device 10 is divided into an input unit 11, a processing unit 12, a
入力部11は、上位システム30から、1以上のコマンドをファイル形式で受け付ける。処理部12は、このコマンド投入装置10全体の制御を司り、主にキュー部122におけるキューイング、ルータ20とのセッション制御を行う。記憶部13は、このセッションの選択時に参照されるセッション管理情報131を記憶する。出力部14は、ルータ20へコマンドを出力する。
The input unit 11 receives one or more commands from the
入力部11および出力部14は、外部装置(上位システム30やルータ20)との間でデータの入出力を行うための入出力インタフェースや通信インタフェースから構成される。また、処理部12は、このコマンド投入装置10が備えるCPU(Central Processing Unit)によるプログラム実行処理や、専用回路等により実現される。さらに、記憶部13は、RAM(Random Access Memory)、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等の記憶媒体から構成される。なお、コマンド投入装置10をプログラム実行処理により実現する場合、記憶部13には、このコマンド投入装置10の機能を実現するためのコマンド投入プログラムが記憶される。
The input unit 11 and the
ここで、コマンド投入装置10が受け付けるコマンドファイルを説明する。図3は、図3に示すように、コマンドファイルは、コマンドの投入先であるルータ20のルータID(例えば、IP(Internet Protocol)アドレス)と、コマンド種別、1以上のコマンドが含まれる。ここでのコマンド種別は、2つ示され(コマンド種別1,2)、例えば、そのコマンドが、緊急コマンドか、通常コマンドかというコマンド種別1と、設定系コマンドか、非設定系コマンドかというコマンド種別2とが示される。例えば、図3に示すコマンドファイルは、IPアドレス「10.10.10.11」のルータ20に対し、「aaaaaaaaa」と「bbbbbbbbb」というコマンドを投入し、これらのコマンドのコマンド種別はいずれも「緊急(緊急コマンド)」で「設定系(設定系コマンド)」であることを示す。なお、このコマンドファイルに示されるコマンドは、例えば、CLI(Command line interface)コマンド等である。なお、このコマンドファイルに示されるコマンド群は、ルータ20へのコマンド投入順に並べられているものとする。
Here, a command file received by the command input device 10 will be described. In FIG. 3, as shown in FIG. 3, the command file includes a router ID (for example, IP (Internet Protocol) address) of the
図2の入力部11は、上位システム30からこのコマンドファイルの入力を受け付けると、処理部12へ出力する。
The input unit 11 of FIG. 2 outputs the command file to the processing unit 12 when receiving the input of the command file from the
処理部12は、キューイング部121と、キュー部122と、セッション管理部124と、セッション制御部125とを含んで構成される。
The processing unit 12 includes a
キューイング部121は、入力部11経由で入力されたコマンドファイルに含まれるコマンド群を、このコマンド群の投入先のルータ20ごとに分ける。そして、このルータ20ごとに分けられたコマンド群について、その種別(緊急コマンドか通常コマンドか)を判断し、緊急コマンドについては、キュー部122の緊急コマンドキューとして蓄積し、通常コマンドについては、キュー部122の通常コマンドキューとして蓄積する(フェーズ1)。次に、キューイング部121は、キュー部122のすべてのルータ20に関するフェーズ3のキューが空になったとき、フェーズ1のキューのうち、優先度の高いキュー(緊急コマンドキュー)から優先的に、当該ルータ20へのコマンドを所定数(N個)バッファキューにシフトする(フェーズ2)。そして、このバッファキューへシフトしたコマンドのうち設定系コマンドを設定系コマンドキューに蓄積し、非設定系コマンドを非設定系コマンドキューに蓄積する(フェーズ3)。
The queuing
キュー部122は、ルータ20へのコマンドの緊急コマンドキューおよび通常コマンドキューに分けて蓄積する領域(フェーズ1のキューの領域)、フェーズ1のキューからシフトしたコマンドをN個蓄積するバッファキューの領域(フェーズ2のキューの領域)、フェーズ2のキューからシフトしたコマンド群のうち、設定系コマンドを蓄積する設定系コマンドキューの領域および非設定系コマンドを蓄積する非設定系コマンドキューの領域(フェーズ3のキューの領域)とを備える。また、このキュー部122は、例えば、このコマンド投入装置10の備えるRAM等の半導体メモリ上に形成される。
The queue unit 122 divides and accumulates an emergency command queue for commands to the
セッション管理部124は、セッション管理情報131に示されるセッション状態を参照して、キュー部122の設定系コマンドキューまたは非設定系コマンドキューのコマンド群の中から、当該ルータ20とセッション確立中のコマンド群を、ルータ20への投入コマンド候補群として選択する。ここで、セッション確立中のルータ20へのコマンド群の中に、(1)このルータ20に連続投入可能なコマンド群があれば、このコマンド群を優先的に選択し、このコマンド投入装置10の最大セッション数を超えない範囲で、当該ルータ20との間に新たなセッションを確立するようセッション制御部125に指示する。なお、ここで、同じルータ20に確立可能なセッション数は、このコマンド投入装置10の最大セッション数を超えず、キュー部122のフェーズ3のキューの数(並列度)を超えないようにする。また、セッション管理部124は、(2)ルータ20に連続投入可能なコマンド群がなければ、コマンド群の中からランダムに選択し、セッション制御部125に、この選択したコマンド群を、このコマンド群の投入先であるルータ20に投入するよう指示する。さらに、キュー部122の設定系コマンドキューおよび非設定系コマンドキューのいずれのコマンド群の中にも、セッション確立中のルータ20へのコマンド群がなかった場合、セッション管理部124は、確立済みのセッションの中から、コマンド処理を終了しているセッションを切断し、キュー部122の設定系コマンドキューまたは非設定系コマンドキューのいずれかのコマンド群の中から、ランダムにコマンド群を選択する。そして、選択したこのコマンド群の投入先となるルータ20との間に新たなセッションを確立し、選択したコマンド群を、この確立したセッションを用いて投入するようセッション制御部125へ指示する。
The
また、セッション管理部124は、セッション制御部125からルータ20との間に確立されたセッションの状態を示すセッション状態情報を受信し、セッション管理情報131に記録する。そして、このセッション管理情報131を参照して、セッション制御部125に対し、コマンド投入に用いるセッションの振り分けや、セッションの確立および切断を指示する。なお、このセッション管理部124は、各ルータ20との間で確立中のセッション数の合計値を、予め設定された最大セッション数(セッションリソース数)以下とし、かつ、そのルータ20の並列度(そのルータ20に関するフェーズ3のキュー数)以下とするようにする。このセッション管理部124が記録するセッション管理情報131の詳細は、図4を用いて後記する。
In addition, the
セッション制御部125は、セッション管理部124からの指示に基づきルータ20との間でセッションの確立および切断や、確立されたセッションを用いたコマンド投入を行う。また、セッションの確立や切断、コマンド投入を行ったとき、または、そのコマンド投入後、投入先のルータ20においてコマンド処理が完了したとき、その状態をセッション状態情報としてセッション管理部124へ出力する。
The
記憶部13は、セッション管理情報131を記憶する。このセッション管理情報131は、ルータ20との間に確立されたセッションの状態を示す情報である。図4は、図1のセッション管理情報を例示した図である。図4に示すようにセッション管理情報131は、セッションIDごとに、そのセッションにより接続されるルータ20のルータID、投入コマンドのコマンド種別、セッション状態、セッション接続時間等が記録される。例えば、図4に示すセッション管理情報131では、セッションID「10010011001」のセッションが、ルータID「10.10.10.11」のルータ20との間で確立されたセッションであり、このルータ20には、「設定系(設定系コマンド))」が投入され、このコマンドによる「処理中(コマンド処理中)」であり、セッションの接続時間は「30(s)」であることを示す。なお、このセッション管理情報131は、ルータ20との間に確立中の合計セッション数、このコマンド投入装置10が確立する最大セッション数の情報もさらに含む。このセッション管理情報131は、セッション管理部124がコマンド投入に用いるセッションを選択するときに参照される。
The
図2の出力部14は、セッション制御部125から出力されたコマンドをルータ20へ投入する。
The
<処理手順>
次に、図1および図2を参照しつつ、図5を用いてコマンド投入装置10の処理手順を説明する。ここでは、コマンド投入装置10が、各ルータ20との間で既に最大セッション数以下のセッションを確立し、その確立されたセッションの状態をセッション管理情報131に記録しているものとする。
<Processing procedure>
Next, the processing procedure of the command input device 10 will be described with reference to FIGS. 1 and 2 and FIG. Here, it is assumed that the command input device 10 has already established a session equal to or less than the maximum number of sessions with each
まず、図2のコマンド投入装置10の入力部11は、上位システム30からコマンドファイルの入力を受け付ける(S11)。そして、入力部11は、このコマンドファイルを、キューイング部121へ出力する。次に、キューイング部121は、コマンドファイルに含まれるコマンド群を、このコマンド群の投入先であるルータ20ごとに分類し(S12)、キュー部122へ出力する(S13)。
First, the input unit 11 of the command input device 10 in FIG. 2 receives an input of a command file from the host system 30 (S11). Then, the input unit 11 outputs this command file to the
そして、キューイング部121は、キュー部122においてキューイングを行う(S14)。このときのキューイングの詳細は、図6を用いて後記する。
Then, the queuing
ここで、セッション管理部124は、セッション管理情報131に示される各ルータ20とのセッション状態を参照して、キュー部122のフェーズ3の設定系コマンドキューおよび非設定系コマンドキュー(図1参照)のいずれかのコマンド群の中に、セッション確立中のルータ20へのコマンド群があるか否かを判断する(S15)。
Here, the
ここで、セッション管理部124は、キュー部122の設定系コマンドキューおよび非設定系コマンドキューのいずれかのコマンド群の中に、セッション確立中のルータ20へのコマンド群があると判断したとき(S15のYes)、S16へ進む。そして、セッション管理部124は、このセッション確立中のルータ20へのコマンド群の中に、このルータ20へ連続投入可能なコマンド群があるか否かを判断する(S16)。つまり、セッション管理部124は、セッション確立中のルータ20へのコマンド群のうち、連続してそのルータ20へ投入すると競合してしまうコマンド群があるか否かを判断する。例えば、ルータ20において、設定系コマンドの処理中である場合、このルータ20に設定系コマンドのコマンド群を投入すると競合してしまう。よって、このようなコマンド群は、このルータ20に連続投入できないコマンド群と判断する(S16のNo)。そして、S19へ進む。S19については後記する。一方、このルータ20に非設定系コマンドのコマンド群を投入する場合、競合しないので、このルータ20に連続投入できるコマンド群と判断する(S16のYes)。
Here, when the
セッション管理部124が、このセッション確立中のルータ20へのコマンド群の中に、このルータ20へ連続投入可能なコマンド群がある判断したとき(S16のYes)、このコマンド群を選択する(S17)。ここでは、設定系コマンドキューまたは非設定系コマンドキューに蓄積されたコマンド群すべてを選択するものとする。そして、セッション管理部124は、この選択した投入コマンドを、このコマンド群の投入先であるルータ20との間で確立されたセッションまたは新たに確立したセッションを用いて投入するよう、セッション制御部125に指示する(S18)。これを受けてセッション制御部125、このコマンド群を、指示されたセッションを用いて、ルータ20へ投入する。その後、セッション管理部124は、セッション管理情報131を更新する(S25)。なお、S18において、セッション管理部124は、このコマンド投入装置10と各ルータ20との間に確立されるセッション数の合計が、最大セッション数を超えず、かつ、当該ルータ20に確立されるセッション数が、このルータ20に対するキュー部122のフェーズ3のキューの数を超えないようにする。例えば、コマンド投入装置10の最大セッション数が「4」の場合、このルータ20に対し新たなセッションを確立しても、各ルータ20との間に確立されたセッション数の合計値が「4」を超えないようにする。また、キュー部121のフェーズ3において、当該ルータ20に対するキューが、設定系コマンドキューと非設定系コマンドキューそれぞれ1つずつである場合、そのルータ20との間に確立するセッション数は「2」を超えないようにする。
When the
一方、S16において、セッション管理部124が、セッション確立中のルータ20へのコマンド群の中に、このルータ20へ連続投入可能なコマンド群がないと判断したとき(S16のNo)、セッション確立中のルータ20へのコマンド群の中から、ランダムにコマンド群を選択する(S19)。そして、セッション管理部124は、この選択したコマンド群を、このコマンド群の投入先のルータ20でのコマンド処理終了後、投入するようセッション制御部125に指示する(S20)、そして、S25へ進む。
On the other hand, in S16, when the
また、前記したS15において、セッション管理部124は、キュー部122の設定系コマンドキューにも、非設定系コマンドキューにも、セッション確立中のルータ20へのコマンド群がないと判断したとき(S15のNo)、以下の処理を行う。すなわち、まず、セッション管理部124は、セッション管理情報131を参照して、このコマンド投入装置10に許可されたすべてのセッションリソース(最大セッション数)を利用中か否かを判断する(S21)。ここで、すべてのセッションリソースを利用中であれば(S21のYes)、セッション管理部124は、各ルータ20との間で確立されたセッションの中から、コマンド処理を終了しているルータ20とのセッションを切断するようセッション制御部125に指示する(S22)。これを受けて、セッション制御部125は、コマンド処理を終了しているルータ20とのセッションを切断する。そして、S23へ進む。
In S15 described above, the
一方、セッション管理部124は、セッション管理情報131を参照して、セッションリソースに余剰があれば(S21のNo)、S22をスキップして、S23へ進む。つまり、まだ各ルータ20との間に確立されたセッション数の合計が、最大セッション数を超えていなければ、S23へ進む。
On the other hand, the
S23において、セッション管理部124は、キュー部122のフェーズ3のキュー(設定系コマンドキューおよび非設定系コマンドキュー)からランダムにコマンド群を選択する(S23)。そして、この選択したコマンド群の投入先となるルータ20との間に新たなセッションを確立し、選択した投入コマンド群を、この確立したセッションを用いて投入するようセッション制御部125に指示する(S24)。これを受けてセッション制御部125は、ルータ20との間に新たなセッションを確立し、選択したコマンド群を、この確立したセッションを用いて投入する。そして、S25へ進む。
In S23, the
このようにすることで、コマンド投入装置10は、各ルータ20に対しできるだけ連続してコマンドを投入することができる。また、そのルータ20に対し、連続投入可能な場合において、セッションリソースに余裕があれば、このルータ20に複数(前記した例では、設定系コマンド用に1本、非設定系コマンド用に1本)のセッションを確立して、並列にコマンド投入を行う。これにより、ルータ20へのコマンド投入を効率的に行うことができる。
In this way, the command input device 10 can input commands to each
次に、図1,2を参照しつつ、図6を用いて、図5のS14のキューイングを説明する。まず、図2のコマンド投入装置10のキューイング部121は、入力されたコマンド群の投入先のルータ20ごとに、このコマンド群を緊急コマンドと、通常コマンドとに分け、それぞれのキューに蓄積する(S61)。つまり、キューイング部121は、フェーズ1(図1参照)として、各ルータ20ごとに、コマンド群のうち緊急コマンドを緊急コマンドキューに蓄積し、通常コマンドを通常コマンドキューに蓄積する。
Next, the queuing in S14 of FIG. 5 will be described with reference to FIGS. First, the queuing
そして、キューイング部121は、フェーズ3(図1の設定系コマンドキューおよび非設定系コマンドキュー)におけるすべてのルータ20に対するキューが空になったとき(S62のYes)、緊急コマンドキューおよび通常コマンドキューから、N個のコマンドをバッファキューにシフトする。このとき、キューイング部121は、緊急コマンドキューにコマンドが蓄積されていれば、この緊急コマンドキューのコマンドから優先的にシフトする(S63)。なお、緊急コマンドキューおよび通常コマンドキューに蓄積されいてるコマンド数がN個未満のときは、そのすべてのコマンドをシフトする。また、フェーズ3のいずれかのルータ20に対するキューに、コマンドが蓄積されている段階では(S62のNo)、S63へ進まない。
When the queues for all the
次に、キューイング部121は、フェーズ2のバッファキュー(図1参照)に溜まっているコマンド群を設定系コマンドと、非設定系コマンドとに分け、それぞれのキューにシフトする(S64)。つまり、設定系コマンドについては設定系コマンドキューに蓄積し、非設定系コマンドについては非設定系コマンドキューに蓄積する。
Next, the queuing
このようにすることで、コマンド投入装置10は各ルータ20へ最大N個ずつ連続でコマンドを投入するので、コマンド投入の最大待ち時間を予測しやすくなる。
By doing in this way, the command input device 10 continuously inputs a maximum of N commands to each
<具体例>
次に、コマンド投入装置10によるコマンド投入処理の具体例を説明する。図7は、図1のコマンド投入装置によるコマンド投入処理の例を示した図である。
<Specific example>
Next, a specific example of command input processing by the command input device 10 will be described. FIG. 7 is a diagram showing an example of command input processing by the command input device of FIG.
なお、ここでは、図2のコマンド投入装置10が3つのルータ20(20A〜20C)との間に最大4本のセッション数を確立してルータ20へコマンドを投入する場合を例に説明する。ここでは、コマンド投入装置10は、ルータ20AへコマンドA1,A2,A3,A4を投入し、ルータ20BへコマンドB1,B2,B3を投入し、ルータ20CへコマンドC1,C2,C3を投入するものとする。このうち、コマンドA1,A3,B1,B3,C1,C2は設定系コマンドであり、コマンドA2,A4,B2,C3は非設定系コマンドである。ここで、キューイング部121は、フェーズ3における各ルータ20(ルータ20A〜20C)の時刻t1〜t3におけるコマンド群のキューは、図7に示すような状態であるものとして説明する。
Here, an example will be described in which the command input device 10 in FIG. 2 establishes a maximum number of four sessions with the three routers 20 (20A to 20C) and inputs commands to the
まず、コマンド投入装置10は、上位システム30からコマンドファイルの入力を受け付ける。そして、キューイング部121はこのコマンドファイルに含まれるコマンド群を分類して、キュー部122へ格納する。そして、このコマンドの投入先のルータIDをセッション管理部124が読み出す。そして、セッション管理部124は、セッション管理情報131を参照して、この投入先のルータ20との間に確立されたセッションがないと判断したとき、セッション制御部125に、このルータ20との間にセッションを確立するよう指示する。ここでは、各コマンドの投入先であるルータ20A〜20Cとの間のセッションは未確立なので、セッション管理部124は、セッション制御部125に、コマンドA1を投入するためのルータ20AとのセッションA、コマンドB1を投入するためのルータ20BとのセッションB、コマンドC1を投入するためのルータ20CとのセッションC、コマンドA2を投入するためのルータ20AとのセッションDを確立するよう指示する。なお、前記したとおり、最大セッション数は4本なので、5本目のセッションの確立要求は行わない。
First, the command input device 10 receives an input of a command file from the
コマンド投入装置10のセッション制御部125は、このようなセッション確立要求をルータ20A,20B,20Cに対し行う。そして、セッション制御部125は、このルータ20A,20B,20Cからセッション確立の応答を受信すると、セッション制御部125は、確立したセッションを用いて、ルータ20A〜20Cに対し、コマンドA1,B1,C1,A2の投入を行う。なお、コマンドA2は、非設定系コマンドなので、ルータ20Aにおいて設定系コマンドを投入中でも競合しない。よって、コマンド投入装置10はこのコマンドA2を連続して投入する。この段階でキュー部122のフェーズ3(t1)のキューが空になるので、キューイング部121は次のN個のコマンド(フェーズ3(t2))をシフトする。この後、ルータ20A〜20Cは、コマンド投入が完了すると(またはこのコマンドによる設定処理が終了すると)その旨を伝えるメッセージを、コマンド投入装置10へ通知する。
The
次に、コマンド投入装置10はフェーズ3(t2)のコマンドC2を、ルータ20Cに投入し、コマンドB2を、ルータ20Bに投入する。この段階でフェーズ3(t2)のキューが空になるので、キューイング部121は、次のN個のコマンドを(フェーズ3(t3))をシフトする。その後、ルータ20C,20Bはコマンド投入が完了すると(または、このコマンドによる設定処理が終了すると)その旨を伝えるメッセージを、コマンド投入装置10へ通知する。続いて、コマンド投入装置10は、コマンドA3,A4をルータ20Aに投入する。ルータ20Aはコマンド投入が完了すると(または、このコマンドによる設定処理が終了すると)その旨を伝えるメッセージを、コマンド投入装置10へ通知する。
Next, the command input device 10 inputs the command C2 of phase 3 (t2) to the router 20C and inputs the command B2 to the
次に、コマンド投入装置10はルータ20B,20Cからの完了メッセージを受信すると、フェーズ3(t3)の残りのコマンド(コマンドC3,B3)を、ルータ20C、ルータ20Bへ投入する。そして、コマンド投入が完了すると、ルータ20C,20Bは(または、このコマンドによる設定処理が終了すると)その旨を伝えるメッセージを、コマンド投入装置10へ通知する。
Next, when receiving a completion message from the
このように、コマンド投入装置10は、最大N個のコマンド群を連続して各ルータ20へ投入する。また、コマンド投入装置10は、1つのルータ20に対し、複数のセッションを確立可能であれば、複数のセッションを確立してコマンドを投入するので効率よくコマンドを投入することができる。さらに、このコマンド投入装置10が投入するコマンド数の最大値はN個なので、コマンド群が投入されるまでの最大待ち時間を容易に予測できる。
In this way, the command input device 10 inputs a maximum of N command groups to each
なお、前記した実施の形態において、コマンド投入装置10のキュー部122におけるルータ20ごとのフェーズ3の非設定系コマンドキューの数は、オペレータ等が任意の数を設定可能である。例えば、コマンド投入装置10は、入力された設定情報をもとに、ルータ20Aに関するフェーズ3の非設定系コマンドキューの数を「1」とし、ルータ20Bに関するフェーズ3の非設定系コマンドキューの数を「3」とすると、このコマンド投入装置10は、ルータ20Aに対して最大2本のセッションを用いてコマンド投入を行い、ルータ20Bに対して最大4本のセッションを用いてコマンド投入を行う。このようにすることで、コマンド投入装置10のオペレータは、例えば、非設定系コマンドの投入数が多いと予測されるルータ20Bには確立可能な最大セッション数(並列度)を多く設定できるので、より効率的なコマンド投入を実現できる。
In the above-described embodiment, an operator or the like can set an arbitrary number of phase 3 non-setting system command queues for each
10 コマンド投入装置
11 入力部
12 処理部
13 記憶部
14 出力部
20(20A,20B,20C) ルータ
30 上位システム
121 キューイング部
122 キュー部
124 セッション管理部
125 セッション制御部
131 セッション管理情報
DESCRIPTION OF SYMBOLS 10 Command input device 11 Input part 12
Claims (6)
外部装置から、前記ネットワーク装置へ投入する一連のコマンド群をその投入順に受け付ける入力部と、
前記入力されたコマンド群を、そのコマンド群の投入先のネットワーク装置ごとに、(1)そのネットワーク装置へコマンドを投入するときの優先度ごとのキューに分けて蓄積する第1フェーズのキューの領域、(2)前記第1フェーズのキューからシフトしたコマンドを所定数蓄積する第2フェーズのキューの領域、(3)前記第2フェーズのキューのコマンドのうち、設定系コマンドを蓄積する設定系コマンドキューの領域および非設定系コマンドを蓄積する1以上の非設定系コマンドキューの領域を有する第3フェーズのキューの領域を備えるキュー部と、
前記受け付けた一連のコマンド群を、前記ネットワーク装置ごとに、そのネットワーク装置に対するコマンドの優先度ごとのキューに分けて前記第1フェーズのキューに格納し、すべてのネットワーク装置に関する前記第3フェーズのキューが空になったとき、前記第1フェーズのキューのうち、優先度の高いキューから優先的に、当該ネットワーク装置へのコマンドを所定数シフトし、このシフトしたコマンドのうち前記設定系コマンドを前記設定系コマンドキューに蓄積し、前記非設定系コマンドを1以上の前記非設定系コマンドキューに蓄積するキューイング部と、
前記ネットワーク装置との間に確立されたセッションの識別情報と、前記セッションにより接続されるネットワーク装置の識別情報と、前記セッションが確立中か否かおよび当該セッションによるコマンド処理中か否かを示すセッション状態とを示したセッション管理情報を記憶する記憶部と、
セッション制御部により通知された前記ネットワーク装置のセッション状態に基づき前記セッション管理情報を更新し、前記セッション管理情報に示されるセッション状態を参照して、前記キュー部の設定系コマンドキューおよび非設定系コマンドキューに蓄積されたコマンド群の中からセッション確立中のネットワーク装置へのコマンド群を選択するセッション管理部と、
前記ネットワーク装置との間でのセッションの確立および切断を行い、前記セッション管理部により選択されたコマンド群を、このコマンド群の投入先となるネットワーク装置との間で確立されたセッションを用いて投入し、前記ネットワーク装置のセッション状態を前記セッション管理部へ通知するセッション制御部とを備え、
前記セッション管理部は、前記セッション管理情報に示されるセッション状態を参照して、前記セッション確立中のネットワーク装置へのコマンド群の中に、
(1)当該ネットワーク装置に連続投入可能なコマンド群があれば、このコマンド群を優先的に選択し、このコマンド投入装置に設定された各ネットワーク装置とのセッション数の合計値の最大値を超えない範囲で、当該ネットワーク装置との間に新たなセッションを確立し、
(2)当該ネットワーク装置に連続投入可能なコマンド群がなければ、前記コマンド群の中からランダムを選択し、
前記選択したコマンド群を投入するよう前記セッション制御部へ指示することを特徴とするコマンド投入装置。 A command input device for inputting commands to one or more network devices installed in a communication network,
An input unit that receives a series of commands to be input from the external device to the network device in the input order;
The first-phase queue area for storing the input command group for each network device to which the command group is input (1) by dividing the command group into queues for each priority when the command is input to the network device (2) a second-phase queue area that accumulates a predetermined number of commands shifted from the first-phase queue; and (3) a setting-related command that accumulates setting-related commands among the commands in the second-phase queue. A queue unit comprising a third phase queue area having a queue area and one or more non-setting command queue areas for accumulating non-setting system commands;
The received series of commands is divided into queues for each priority level of commands for the network device and stored in the first phase queue, and the third phase queue for all network devices is stored. Of the first phase, the command to the network device is preferentially shifted from the queue with the higher priority among the queues of the first phase, and the setting-related command among the shifted commands is A queuing unit that accumulates in a setting command queue and accumulates the non-setting command in one or more non-setting command queues;
Session identification information established with the network device, identification information of a network device connected by the session, a session indicating whether the session is being established and whether a command is being processed by the session A storage unit for storing session management information indicating a state;
Update the session management information based on the session status of the network device notified by the session control unit, refer to the session status indicated in the session management information, and set command queue and non-set command of the queue unit A session management unit for selecting a command group to the network device in session establishment from the command group accumulated in the queue;
Establishes and disconnects a session with the network device, and inputs the command group selected by the session management unit using a session established with the network device to which the command group is input And a session control unit for notifying the session management unit of the session state of the network device,
The session management unit refers to the session state indicated in the session management information, and in the command group to the network device during the session establishment,
(1) If there is a command group that can be continuously input to the network device, this command group is preferentially selected and exceeds the maximum value of the total number of sessions with each network device set in the command input device. Establish a new session with the network device,
(2) If there is no command group that can be continuously input to the network device, select random from the command group,
A command input device that instructs the session control unit to input the selected command group.
前記キュー部の設定系コマンドキューおよび非設定系コマンドキューのいずれのコマンド群の中にも、セッション確立中のネットワーク装置へのコマンド群がなかった場合、
前記セッション制御部へ、前記確立されたセッションの中から、前記コマンド処理を終了しているセッションを切断し、
前記キュー部の設定系コマンドキューまたは非設定系コマンドキューのいずれかのコマンド群の中から、ランダムに選択したコマンド群について、このコマンド群の投入先となるネットワーク装置との間に新たなセッションを確立し、前記選択したコマンド群を、この確立したセッションを用いて投入するよう前記セッション制御部へ指示することを特徴とする請求項1に記載のコマンド投入装置。 The session management unit
If there is no command group to the network device in session establishment in any command group of the setting command queue and non-setting command queue of the queue unit,
Disconnecting the session that has finished the command processing from the established sessions to the session control unit,
For a command group randomly selected from the command group of the setting command queue or the non-setting command queue of the queue unit, a new session is established with the network device that is the input destination of this command group. The command input device according to claim 1, wherein the command input device is configured to instruct the session control unit to input the selected command group using the established session.
前記コマンド群を投入するために、このコマンド群の投入先のネットワーク装置との間に新たなセッションの確立を指示するとき、当該ネットワーク装置との間で確立されるセッションの合計値が、自身のコマンド投入装置に設定された各ネットワーク装置とのセッション数の合計値の最大値を超えず、かつ、前記第3フェーズにおける当該ネットワーク装置に関するキュー数を超えない数とすることを特徴とする請求項1または請求項2に記載のコマンド投入装置。 The session management unit
In order to input the command group, when instructing the establishment of a new session with the network device to which the command group is input, the total value of the sessions established with the network device is The number of queues for the network device in the third phase does not exceed the maximum value of the total number of sessions with each network device set in the command input device, and does not exceed the queue number for the network device in the third phase. The command input device according to claim 1 or 2.
外部装置から、前記ネットワーク装置へ投入する一連のコマンド群をその投入順に受け付けるステップと、
前記受け付けた一連のコマンド群を、前記ネットワーク装置ごとに、そのネットワーク装置に対するコマンドの優先度ごとのキューに分けて前記第1フェーズのキューに格納し、すべてのネットワーク装置に関する前記第3フェーズのキューが空になったとき、前記第1フェーズのキューのうち、優先度の高いキューから優先的に、当該ネットワーク装置へのコマンドを所定数シフトし、このシフトしたコマンドのうち前記設定系コマンドを前記設定系コマンドキューに蓄積し、前記非設定系コマンドを1以上の前記非設定系コマンドキューに蓄積するステップと、
前記セッション管理情報に示されるセッション状態を参照して、前記キュー部の設定系コマンドキューおよび非設定系コマンドキューに蓄積されたコマンド群の中からセッション確立中のネットワーク装置へのコマンド群を選択するステップと、
前記選択されたコマンド群を、このコマンド群の投入先となるネットワーク装置との間で確立されたセッションを用いて投入し、前記ネットワーク装置のセッション管理情報を更新するステップとを実行し、
前記セッション確立中のネットワーク装置へのコマンド群を選択するステップにおいて、前記コマンド投入装置は、
前記セッション管理情報に示されるセッション状態を参照して、前記セッション確立中のネットワーク装置へのコマンド群の中に、
(1)当該ネットワーク装置に連続投入可能なコマンド群があれば、このコマンド群を優先的に選択し、このコマンド投入装置に設定された各ネットワーク装置とのセッション数の合計値の最大値を超えない範囲で、当該ネットワーク装置との間に新たなセッションを確立し、
(2)当該ネットワーク装置に連続投入可能なコマンド群がなければ、前記コマンド群の中からランダムを選択することを特徴とするコマンド投入方法。 Identification information of a session established between one or more network devices installed in a communication network and its command input device, identification information of a network device connected by the session, and whether the session is being established And a storage unit for storing session management information indicating a session state indicating whether or not a command is being processed by the session, and an input command group for each network device to which the command group is input (1 ) A first-phase queue area that accumulates and accumulates in priority queues when commands are input to the network device, and (2) a second phase that accumulates a predetermined number of commands shifted from the first-phase queue. (3) Among the queue commands of the second phase, a setting for storing setting commands. A queue section having a third phase queue area having a system command queue area and one or more non-setting system command queue areas for storing non-setting system commands, and inputting a command to each of the network devices. The command input device is
Receiving a series of commands to be input from an external device to the network device in the order of input;
The received series of commands is divided into queues for each priority level of commands for the network device and stored in the first phase queue, and the third phase queue for all network devices is stored. Of the first phase, the command to the network device is preferentially shifted from the queue with the higher priority among the queues of the first phase, and the setting-related command among the shifted commands is Accumulating in a setting command queue and storing the non-setting command in one or more non-setting command queues;
With reference to the session state indicated in the session management information, a command group to the network device that is establishing a session is selected from the command groups stored in the setting command queue and the non-setting command queue of the queue unit. Steps,
Executing the selected command group using a session established with a network device that is a destination of the command group, and updating session management information of the network device;
In the step of selecting a command group to the network device during the session establishment, the command input device is:
With reference to the session state indicated in the session management information, in the command group to the network device during the session establishment,
(1) If there is a command group that can be continuously input to the network device, this command group is preferentially selected and exceeds the maximum value of the total number of sessions with each network device set in the command input device. Establish a new session with the network device,
(2) A command input method characterized in that if there is no command group that can be continuously input to the network device, random is selected from the command group.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009119323A JP5144589B2 (en) | 2009-05-15 | 2009-05-15 | Command input device, command input system, command input method and command input program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009119323A JP5144589B2 (en) | 2009-05-15 | 2009-05-15 | Command input device, command input system, command input method and command input program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2010267165A JP2010267165A (en) | 2010-11-25 |
| JP5144589B2 true JP5144589B2 (en) | 2013-02-13 |
Family
ID=43364066
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2009119323A Active JP5144589B2 (en) | 2009-05-15 | 2009-05-15 | Command input device, command input system, command input method and command input program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5144589B2 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPWO2024042590A1 (en) * | 2022-08-22 | 2024-02-29 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63174154A (en) * | 1987-01-14 | 1988-07-18 | Nec Corp | Control system for transaction processing |
| JP5118577B2 (en) * | 2008-08-15 | 2013-01-16 | 日本電信電話株式会社 | Command input device, command input system, command input method and program thereof |
-
2009
- 2009-05-15 JP JP2009119323A patent/JP5144589B2/en active Active
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPWO2024042590A1 (en) * | 2022-08-22 | 2024-02-29 | ||
| JP7754331B2 (en) | 2022-08-22 | 2025-10-15 | Ntt株式会社 | Configuration input device, configuration input method, and configuration input program |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2010267165A (en) | 2010-11-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6920533B2 (en) | Data flow transmission | |
| US10893111B1 (en) | Developing and implementing migration sequences in data communication networks | |
| CN101741894A (en) | A distributed system upgrade method, upgrade scheduling node and system | |
| MX2011006536A (en) | NETWORK NODE AND METHOD TO CONTROL RESOURCES IN A COMMUNICATIONS NETWORK. | |
| EP1786234A2 (en) | Wireless network control method and device as well as mobile communication system | |
| EP3148125A1 (en) | Setting method, server device and service chain system | |
| JP5459208B2 (en) | Group conference system, conference server, session switching control method, session switching control program | |
| JP6493563B2 (en) | Group reconfiguration according to the switching schedule between multiple P2P groups | |
| CN101938524A (en) | A method and system for processing P2P services | |
| JP5144589B2 (en) | Command input device, command input system, command input method and command input program | |
| JP5118577B2 (en) | Command input device, command input system, command input method and program thereof | |
| CN102932249A (en) | Method and device for transmitting virtual router redundancy protocol (VRRP) message | |
| JP2013186644A (en) | Service order system, service order device, service order method and service order program | |
| JP5513999B2 (en) | Order placing device, order placing method and program thereof | |
| RU2522995C2 (en) | Method and apparatus for creating peer-to-peer group in peer-to-peer application and method of using peer-to-peer group | |
| WO2016202104A1 (en) | Method and apparatus for service control in optical communications network | |
| JP4700662B2 (en) | Rerouting method, rerouting program and routing device | |
| JP5149932B2 (en) | Order placing device, order placing method and program thereof | |
| EP1289208B1 (en) | A method of controlling data routing on a network | |
| JP2011010225A (en) | Information processing apparatus and program for the same, and method for processing content data in information processing apparatus | |
| JP4809824B2 (en) | BGP session design method, session design apparatus, and BGP session design program | |
| CN101313539B (en) | Sub-routing method and device | |
| CN101764737B (en) | Route aging method, device and router based on border gateway protocol | |
| US12238006B1 (en) | Self-healing SD-WAN controllers and networks | |
| JP5476415B2 (en) | Network fault monitoring apparatus and network fault monitoring method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100901 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110819 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121120 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121122 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151130 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5144589 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |