WO2012132100A1 - ネットワークシステム、処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法 - Google Patents

ネットワークシステム、処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法 Download PDF

Info

Publication number
WO2012132100A1
WO2012132100A1 PCT/JP2011/076621 JP2011076621W WO2012132100A1 WO 2012132100 A1 WO2012132100 A1 WO 2012132100A1 JP 2011076621 W JP2011076621 W JP 2011076621W WO 2012132100 A1 WO2012132100 A1 WO 2012132100A1
Authority
WO
WIPO (PCT)
Prior art keywords
processing
processing program
program
terminal
processing terminal
Prior art date
Application number
PCT/JP2011/076621
Other languages
English (en)
French (fr)
Inventor
小田利彦
押山浩之
Original Assignee
オムロン株式会社
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 オムロン株式会社 filed Critical オムロン株式会社
Priority to JP2013507049A priority Critical patent/JPWO2012132100A1/ja
Publication of WO2012132100A1 publication Critical patent/WO2012132100A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Definitions

  • the present invention relates to a network system in which a plurality of processing terminals are connected so as to be able to communicate with each other, and each processing terminal selectively uses a processing program installed in an arbitrary processing terminal including its own terminal.
  • the present invention relates to a processing terminal, a processing program dynamic selection program, and a processing program dynamic selection method.
  • a network device that performs TCP / IP communication holds a routing table in order to perform communication using IP packets. In this routing table, an IP address, a subnet mask, a default gateway, an interface, and the like are set. The network device refers to the routing table and determines a transmission destination (communication partner terminal) to transmit the packet.
  • a distributed object system such as CORBA (Common Object Request Request Broker Architecture) that dynamically selects a processing program (subroutine program or the like) for performing one process via a network and executes it remotely.
  • the processing terminal manages the logical name of the processing program and the physical location information of the processing terminal on which the processing program is installed in a table.
  • the processing terminal has a function (broker) for acquiring physical information for accessing the processing program by referring to the table when executing an arbitrary processing program.
  • Patent Document 1 based on information on communication charges and communication quality for systems that connect home appliances over a network and transmit images, movies, music, etc.
  • Patent Document 2 There is also a system (see Patent Document 2) that selects an optimal communication service according to a user's request.
  • a network system in which a plurality of processing terminals equipped with processing programs are connected so that they can communicate with each other has a processing program that can perform specific processing in order to ensure redundancy and improve reliability in case of failure.
  • the user when each processing terminal performs a specific process, the user performs this specific process in consideration of the reliability of the processing result, the processing speed, the cost (usage fee) required to execute the process, and the like.
  • the processing program to be executed is selected. For this reason, the work burden on the user side is large, and a selection mistake for selecting a processing program that does not meet the needs may occur.
  • An object of the present invention is to provide a network system, a processing terminal, a processing program dynamic selection program, which can sufficiently reduce a user's work load and prevent occurrence of a selection error for selecting a processing program that does not meet the user's needs, And a processing program dynamic selection method.
  • the network system of the present invention is configured as follows in order to solve the above-described problems and achieve the object.
  • This network system connects a plurality of processing terminals so that they can communicate with each other.
  • Each processing terminal can selectively use a processing program installed in an arbitrary processing terminal (including its own terminal).
  • the processing terminal stores the routing table in the storage unit.
  • the routing table for each available processing program, an item to be executed by the processing program, a processing terminal on which the processing program is mounted, and an evaluation value relating to the attribute of the processing program are associated with each other. It is registered.
  • the attributes of the processing program include, for example, the reliability of the processing result, the fee for using the processing program (utilization fee), the execution time of the processing program (communication time + processing time), and the like.
  • the selection unit refers to the routing table stored in the storage unit and selects a processing program to be used based on the registered evaluation value of the attribute. For example, if the user inputs to specify an attribute used for selecting a processing program, the selection unit selects the processing program based on the evaluation value of the input attribute.
  • the storage unit stores a priority order table in which priorities are designated in advance for attributes used for selecting a processing program, and refers to the priority order table to select a processing program.
  • the priority order table may be configured to be arbitrarily changed by the user.
  • the request unit requests execution processing for the processing program selected by the selection unit.
  • the work burden on the user can be sufficiently reduced. Further, it is possible to prevent a processing program that does not meet the user's needs from being selected due to a user's selection mistake.
  • FIG. 1 is a schematic diagram showing a network system. It is the schematic which shows the hierarchical structure of an information processing terminal. It is a figure which shows a routing table. It is a figure which shows a priority table. It is a flowchart which shows the selection process of the processing program in an information processing terminal.
  • FIG. 1 is a schematic diagram showing a network system according to an embodiment of the present invention.
  • FIG. 1 shows five information processing terminals 1 (1A to 1E).
  • the information processing terminals 1A, 1C, 1D, and 1E are connected by a LAN using Ethernet (registered trademark) and can communicate with each other. Further, the information processing terminal 1A and the information processing terminal 1B are communicably connected via RS232C.
  • the information processing terminal 1A is equipped with a processing program X.
  • the information processing terminal 1B is equipped with a processing program Z.
  • the information processing terminal 1C is equipped with a processing program X and a processing program Y.
  • the information processing terminal 1D is equipped with a processing program X and a processing program Z.
  • the information processing terminal 1C is equipped with a processing program Y and a processing program Z.
  • FIG. 2 is a schematic diagram showing the hierarchical structure of the information processing terminal.
  • the information processing terminal 1 includes an operating system layer 10 (hereinafter referred to as an OS layer 10), a communication virtualization layer 11, an application layer 14, a driver layer 15, and a hardware layer 16. .
  • the OS layer 10 is a layer that executes the OS of the information processing terminal 1.
  • the OS is stored in a storage medium such as a hard disk (not shown).
  • the OS layer 10 executes the OS read from the storage medium.
  • the communication virtualization layer 11 is located above the OS layer 10.
  • the application layer 14 is a hierarchy positioned above the communication virtualization layer 11.
  • the application layer 14 is a layer in which an application program and a subroutine program used when executing the application program are located.
  • the application program and the subroutine program are stored in a storage medium such as a hard disk (not shown) like the OS.
  • This application program and subroutine program correspond to the processing program referred to in the present invention.
  • application programs and subroutine programs located in the application layer 14 are collectively referred to as processing programs.
  • the communication virtualization layer 11 considers the extensibility of this network system so that any program located in the application layer 14 can use this other program without knowing the communication procedure with the other program. It is a hierarchy provided in.
  • the communication virtualization layer 11 plays a role in virtualizing communication procedures by absorbing differences in implementation methods such as serial communication and network communication in communication between programs. Therefore, the communication virtualization layer 11 executes a communication virtualization program that provides an interface that can transparently handle various communication methods to the application layer 14 that is the upper layer.
  • This communication virtualization program is also stored in a storage medium such as a hard disk (not shown) in the same manner as the OS, application program, and subroutine program.
  • the communication virtualization layer 11 uses a routing table 12 and a priority table 13 stored in a storage medium such as a hard disk (not shown) when executing the communication virtualization program.
  • FIG. 3 is a diagram showing a routing table.
  • FIG. 4 is a diagram illustrating a priority table.
  • the routing table 12 is not the same for all the information processing terminals 1 but is different for each information processing terminal 1.
  • FIG. 3 is an example of the routing table 12 included in the information processing terminal 1A shown in FIG.
  • the routing table 12 is a table in which a processing name, a communication method, an IP address / port number, a maximum communication time, a maximum processing time, a usage fee, and a reliability are associated with each processing program that can be used by the information processing terminal 1. .
  • Process name is the name of the process executed by the processing program. Processing programs having the same processing name have the same processing contents to be executed, but are not necessarily the same program. That is, the processing program may have different specifications even if the processing name is the same.
  • the communication method is a communication method when using the processing program.
  • the IP address / port number indicates the position of the processing program on the network.
  • the maximum communication time is the maximum communication time required on the communication path from transmission of a request to the processing program to reception of a response from the processing program.
  • the maximum processing time is the maximum time taken from the start to completion of the processing program.
  • the maximum execution time is the maximum time required for using the processing program.
  • the usage fee is an amount charged for one use of the processing program.
  • the reliability is the reliability with respect to the processing result of the processing program. Here, the reliability decreases in the order of rank A, rank B, and rank C. That is, rank A has the highest reliability and rank C has the lowest reliability. The reliability is due to the difference in the specifications of the processing program.
  • the above-mentioned maximum communication time, maximum processing time, usage fee, and reliability are items related to the attributes of the processing program referred to in the present invention.
  • the priority table is a table in which priorities are registered for the maximum execution time (maximum communication time + maximum processing time), the usage fee, and the reliability, which are attributes of the processing program, when the processing program is selected.
  • FIG. 4 is an example of a setting in which the priority is lowered in the order of maximum execution time, reliability, and usage fee. That is, the priority table shown in FIG. 4 is an example in which the priority of the maximum execution time is the highest and the priority of the usage fee is the lowest.
  • the driver layer 15 is a layer in which a communication driver that controls network communication such as UDP and TCP and a communication driver that controls serial communication such as RS-232C are located.
  • the driver layer 15 is positioned below the OS layer 10 as shown in FIG.
  • the hardware layer 16 is a hierarchy in which hardware such as a CPU, a memory (RAM), a communication control device that performs communication, and an input / output device that performs input / output are located.
  • the hardware layer 16 is located below the driver layer 15.
  • FIG. 5 is a flowchart showing processing program selection processing in the information processing terminal.
  • the processing program selection process will be described with reference to the operation of the information processing terminal 1A shown in FIG. This process is executed by the communication virtualization program in the communication virtualization layer 11.
  • the information processing terminal 1 confirms whether or not a processing program request is generated (s1). For example, the information processing terminal 1 generates a request for a subroutine program (processing program) in an application program being executed.
  • the information processing terminal 1 When the information processing terminal 1 confirms that the request for the processing program has occurred in s1, the information processing terminal 1 refers to the routing table 12 of the terminal itself and extracts all the corresponding processing programs (s2). Specifically, the information processing terminal 1 searches the routing table 12 using the process name as a key, and extracts all the process programs having the corresponding process name. For example, when a request for the processing program Z occurs, the information processing terminal 1A shown in FIG. 1 searches the routing table 12 using the processing name (processing Z) as a key, and the processing program Z of the information processing terminal 1B, the information processing terminal The 1D processing program Z and the processing program Z of the information processing terminal 1E are extracted.
  • the information processing terminal 1 refers to the priority table 13 and reads the attribute having the highest registered priority (s3).
  • the priority order table 13 shown in FIG. 4 the maximum execution time is read in s3.
  • the information processing terminal 1 narrows down the processing program to be used based on the read attribute (s4). For example, the information processing terminal 1A extracts the processing program Z of the information processing terminal 1B, the processing program Z of the information processing terminal 1D, and the processing program Z of the information processing terminal 1E as described above in s2. The maximum execution time is calculated for each processing program. In the example shown in FIG.
  • the maximum execution time of the processing program Z of the information processing terminal 1B, the processing program Z of the information processing terminal 1D, and the processing program Z of the information processing terminal 1E is Maximum execution time of the processing program Z of the information processing terminal 1B: 101 ms (1 + 100) Maximum execution time of the processing program Z of the information processing terminal 1D: 52 ms (2 + 50) Maximum execution time of the processing program Z of the information processing terminal 1E: 52 ms (2 + 50) become.
  • the processing program Z of the information processing terminal 1D and the processing program Z of the information processing terminal 1E, which have a maximum execution time of 52 ms, are narrowed down.
  • the information processing terminal 1 determines whether there is one processing program or a plurality of processing programs narrowed down in s4 (s5). In the above example, since there are two narrowed processing programs Z, it is determined whether there are any attributes (other attributes) that are not used for narrowing down the processing programs (s6). If there is an attribute that is not used for narrowing down the processing program, the information processing terminal 1 reads the attribute with the highest priority from the unused attributes from the priority table 13 (s7), and returns to s4. Repeat the above process.
  • the information processing terminal 1A narrows down the processing program Z of the information processing terminal 1D and the processing program Z of the information processing terminal 1E with the reliability read in s7.
  • the routing table 12 shown in FIG. Reliability of processing program Z of information processing terminal 1D: B Reliability of processing program Z of information processing terminal 1E: A Therefore, in this narrowing down by the reliability, the processing program Z of the information processing terminal 1E with higher reliability is narrowed down.
  • the information processing terminal 1 determines in s5 that there is only one processing program, the information processing terminal 1 selects this processing program (s8).
  • the information processing terminal 1 determines that there is no attribute that is not used for narrowing down the processing program in s6, the information processing terminal 1 randomly selects one processing program from the plurality of processing programs narrowed down at that time ( s9).
  • the information processing terminal 1 issues an execution request to the processing program selected in s8 or s9 (s10).
  • the information processing terminal 1 reads the communication method and IP address / port number with the selected processing program from the routing table 12 in the communication virtualization layer 11, and transmits an execution request for the selected processing program.
  • the information processing terminal 1 When the information processing terminal 1 receives a processing result as a response to the execution request to the selected processing program in s10 (s11), the information processing terminal 1 ends this processing.
  • the processing result received in s11 is passed to the application program or the like that requested the current processing program.
  • this network system automatically selects a processing program to be used based on the priority order of attributes registered in the priority order table 13 by the information processing terminal 1. Therefore, the work burden on the user can be sufficiently reduced. Further, it is possible to prevent a processing program that does not meet the user's needs from being selected due to a user's selection mistake.
  • the priority table 13 may be configured so that the user can freely change the setting.
  • the information processing terminal 1A shown in FIG. 1 be a settlement machine that accepts a ticket from a railroad user and settles a fare.
  • the above processing program Z is a fare calculation program for calculating a fare based on the boarding station and the getting-off station.
  • the information processing terminal 1A which is a settlement machine, is equipped with an application program that executes a settlement process and a processing program Z that is a fare calculation program (subroutine program) that this application program uses at the time of execution.
  • the processing program Z installed in the information processing terminal 1A cannot be executed due to some abnormality.
  • the information processing terminal 1B on which the processing program Z is installed is a payment machine installed side by side on the information processing terminal 1A.
  • the information processing terminal 1D on which the processing program Z is installed is an automatic ticket gate that is installed at a ticket gate of a station and performs ticket gate processing on a user.
  • the information processing terminal 1E on which the processing program Z is installed is a station server that manages devices such as a payment machine, an automatic ticket gate, and a ticket vending machine installed at a station.
  • the information processing terminal 1C not equipped with the processing program Z is a ticket vending machine that issues a ticket such as a ticket.
  • the information processing terminal 1A which is a payment machine, is in a situation where the processing program Z related to the fare calculation cannot be executed due to some abnormality, but continues to provide the payment processing service to the user without stopping the device body. ing. That is, the information processing terminal 1A continues to operate the device main body even though the processing program Z cannot be executed.
  • the information processing terminal 1A When the information processing terminal 1A receives a ticket from a user and starts the checkout process, a request for a fare calculation program (processing program Z) is generated, and the communication virtualization layer 11 performs the process shown in FIG. A fare calculation program installed in the information processing terminal 1E is selected. Then, the information processing terminal 1A makes an execution request to the fare calculation program installed in the selected information processing terminal 1E, and receives the processing result.
  • processing program Z processing program
  • the information processing terminal 1A uses the processing result of the fare calculation program installed in the information processing terminal 1E to complete the settlement process (application program) being executed.
  • the settlement machine (information processing terminal 1A) is a settlement processing service for the user without stopping the device body even if the installed fare calculation program cannot be used due to some abnormality.
  • the processing program to be dynamically used is selected using the routing table 12 and the priority order table 13, the processing program Z cannot be executed due to some abnormality by setting the priority order table 13 in advance. Even if the station clerk who is the user does not correspond to the settlement machine (information processing terminal 1A), the processing program that meets the user's needs can be automatically selected.
  • the network system of the present invention is not limited to the station service system described above, and can be applied to other systems.
  • Information processing terminal 10 OS layer (operating system layer) DESCRIPTION OF SYMBOLS 11 ... Communication virtualization layer 12 ... Routing table 13 ... Priority order table 14 ... Application layer 15 ... Driver layer 16 ... Hardware layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

ユーザの作業負担を十分に低減し、且つ、ユーザのニーズにあわない処理プログラムを選択する選択ミスの発生を防止する。 複数の情報処理端末(1)を相互に通信可能に接続している。各情報処理端末(1)は、任意の処理端末(自端末を含む)に搭載されている処理プログラムX、Y、Zを選択的に利用することができる。情報処理端末(1)は、処理プログラム毎に、実行処理する項目と、その処理プログラムが搭載されている処理端末(1)と、その処理プログラムの属性にかかる評価値と、が対応づけたルーティングテーブル(12)を記憶する。情報処理端末(1)は、任意の項目にかかる実行処理を行うとき、ルーティングテーブル(12)を参照し、登録されている属性の評価値に基づいて利用する処理プログラムを選択する。そして、選択した処理プログラムに対して実行処理を要求する。

Description

ネットワークシステム、処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法
 この発明は、複数の処理端末を相互に通信可能に接続し、各処理端末が自端末を含む任意の処理端末に搭載されている処理プログラムを選択的に利用するネットワークシステム、このネットワークシステムにかかる処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法に関する。
 従来、複数の処理端末(ネットワーク機器)を相互に通信可能に接続したネットワークシステムがある。処理端末間の通信は、TCP/IP等の公知のプロトコルで行われる。TCP/IP通信を行うネットワーク機器は、IPパケットによる通信を行うために、ルーティング表を保持している。このルーティング表は、IPアドレス、サブネットマスク、デフォルトゲートウエイ、インターフェイス等を設定している。ネットワーク機器は、このルーティング表を参照して、パケットを送信する送信先(通信相手端末)を決定する。
 また、一つの処理を行う処理プログラム(サブルーチンプログラム等)を、ネットワークを介して動的に選択し、遠隔実行するCORBA(Common Object Request Broker Architecture)等の分散オブジェクトシステムがある。この分散オブジェクトシステムでは、処理端末が、処理プログラムの論理的な名前と、この処理プログラムが搭載されている処理端末の物理的な位置情報とをテーブルで管理する。処理端末は、任意の処理プログラムを実行するとき、上記テーブルを参照して、この処理プログラムにアクセスするための物理的な情報を取得する機能(ブローカ)を有している。
 また、家電機器同士をネットワークで接続し、画像や動画、音楽などを相互に伝送できるシステム(特許文献1参照)や、インターネット、VPN,双方向TV等の通信料金、通信品質の情報に基づき、利用者の要求によって最適な通信サービスを選択するシステム(特許文献2参照)もある。
特開2009-81661号公報 特開2003-69638号公報
 しかしながら、処理プログラムを搭載した複数の処理端末を相互に通信可能に接続したネットワークシステムは、障害に備えた冗長性の確保や、信頼性の向上を図るために、特定の処理が行える処理プログラムを複数種類存在させることがある。このようなネットワークシステムは、各処理端末が特定の処理を行う場合、ユーザが処理結果の信頼度、処理速度、処理の実行にかかるコスト(利用料金)等を考慮して、この特定の処理を行わせる処理プログラムを選択している。このため、ユーザ側の作業負担が大きいとともに、ニーズにあわない処理プログラムを選択する選択ミスが発生することがあった。
 この発明の目的は、ユーザの作業負担を十分に低減し、且つ、ユーザのニーズにあわない処理プログラムを選択する選択ミスの発生が防止できる、ネットワークシステム、処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法を提供することにある。
 この発明のネットワークシステムは、上記課題を解決し、その目的を達するために以下のように構成している。
 このネットワークシステムは、複数の処理端末を相互に通信可能に接続している。各処理端末は、任意の処理端末(自端末を含む)に搭載されている処理プログラムを選択的に利用することができる。
 処理端末は、ルーティングテーブルを記憶部に記憶する。ルーティングテーブルには、利用可能な処理プログラム毎に、その処理プログラムが実行処理する項目と、その処理プログラムが搭載されている処理端末と、その処理プログラムの属性にかかる評価値と、が対応づけて登録されている。ルーティングテーブルに登録されている処理プログラムの属性は、1つであってもよいし、複数であってもよい。また、処理プログラムの属性は、例えば処理結果の信頼度、処理プログラムの利用にかかる料金(利用料金)、処理プログラムの実行時間(通信時間+処理時間)等である。
 処理端末が任意の項目にかかる実行処理を行うとき、選択部が、記憶部に記憶しているルーティングテーブルを参照し、登録されている属性の評価値に基づいて利用する処理プログラムを選択する。例えば、ユーザが処理プログラムの選択に用いる属性を指定する入力を行う構成であれば、選択部が入力された属性の評価値に基づいて、処理プログラムを選択する。また、記憶部が、予め処理プログラムの選択に用いる属性について優先順位を指定した優先順位テーブルを記憶しておき、この優先順位テーブルを参照し、処理プログラムを選択する。また、この優先順位テーブルは、ユーザが任意に変更できる構成とすればよい。
 要求部は、選択部が選択した処理プログラムに対して実行処理を要求する。
 したがって、ユーザの作業負担を十分に低減し、且つ、ユーザのニーズにあわない処理プログラムが選択ミスによって選択されるのを防止できる。
 この発明によれば、ユーザの作業負担を十分に低減することができる。また、ユーザのニーズにあわない処理プログラムが、ユーザの選択ミスによって選択されるのを防止できる。
ネットワークシステムを示す概略図である。 情報処理端末の階層構造を示す概略図である。 ルーティングテーブルを示す図である。 優先順位テーブルを示す図である。 情報処理端末における処理プログラムの選択処理を示すフローチャートである。
 以下、この発明の実施形態について説明する。
 図1は、この発明の実施形態であるネットワークシステムを示す概略図である。図1は、5台の情報処理端末1(1A~1E)を示している。情報処理端末1A、1C、1D、1Eは、イーサネット(登録商標)によるLANで接続しており、相互に通信できる。また、情報処理端末1Aと、情報処理端末1Bとは、RS232Cにより、通信可能に接続している。
 図1に示す例では、情報処理端末1Aは、処理プログラムXを搭載している。情報処理端末1Bは、処理プログラムZを搭載している。情報処理端末1Cは、処理プログラムX、および処理プログラムYを搭載している。情報処理端末1Dは、処理プログラムX、および処理プログラムZを搭載している。情報処理端末1Cは、処理プログラムY、および処理プログラムZを搭載している。
 図2は、情報処理端末の階層構造を示す概略図である。情報処理端末1は、オペレーティングシステム層10(以下、OS層10と言う。)と、通信仮想化層11と、アプリケーション層14と、ドライバ層15と、ハードウェア層16と、を有している。
 OS層10は、情報処理端末1のOSを実行する階層である。OSは、ハードディスク(不図示)等の記憶媒体に記憶している。OS層10は、記憶媒体から読み出したOSを実行する。
 通信仮想化層11は、OS層10の上位に位置する。アプリケーション層14は、この通信仮想化層11の上位に位置する階層である。アプリケーション層14は、アプリケーションプログラムや、このアプリケーションプログラムの実行時に使用するサブルーチンプログラム等が位置する階層である。アプリケーションプログラムや、サブルーチンプログラムは、OSと同様に、ハードディスク(不図示)等の記憶媒体に記憶している。このアプリケーションプログラムや、サブルーチンプログラムが、この発明で言う処理プログラムに相当する。以下、アプリケーション層14に位置するアプリケーションプログラムや、サブルーチンプログラム等を総称して処理プログラムと言う。
 通信仮想化層11は、このネットワークシステムの拡張性を考え、アプリケーション層14に位置する任意のプログラムが、他のプログラムとの通信手順を知らなくても、この他のプログラムを利用可能にするために設けた階層である。通信仮想化層11は、プログラム間の通信において、シリアル通信やネットワーク通信などの実装方式の違いを吸収して通信手順を仮想化するための役割を果たす。このため、通信仮想化層11は、様々な通信方式を透過的に扱えるインターフェイスを上位層であるアプリケーション層14に提供する通信仮想化プログラムを実行する。この通信仮想化プログラムも、OS、アプリケーションプログラム、サブルーチンプログラムと同様に、ハードディスク(不図示)等の記憶媒体に記憶している。
 また、この通信仮想化層11は、通信仮想化プログラムの実行に際して、ハードディスク(不図示)等の記憶媒体に記憶している、ルーティングテーブル12、および優先順位テーブル13を使用する。
 図3は、ルーティングテーブルを示す図である。図4は、優先順位テーブルを示す図である。ルーティングテーブル12は、全ての情報処理端末1で同じではなく、情報処理端末1毎に異なる。図3は、図1に示す情報処理端末1Aが有するルーティングテーブル12の例である。ルーティングテーブル12は、情報処理端末1が利用できる処理プログラム毎に、処理名、通信方式、IPアドレス/ポート番号、最大通信時間、最大処理時間、利用料金、および信頼度を対応づけたテーブルである。
 処理名は、処理プログラムが実行する処理の名前である。処理名が同じである処理プログラムは、実行する処理の内容については同じであるが、同一のプログラムであるとは限らない。すなわち、処理プログラムは、処理名が同じであっても、そのスペックが異なる場合がある。通信方式は、その処理プログラムを利用するときの通信方式である。IPアドレス/ポート番号は、その処理プログラムのネットワーク上の位置を示す。
 また、最大通信時間は、その処理プログラムに対する要求の送信から、当該処理プログラムからの応答を受信するまでにかかる通信経路上で要する通信時間の最大時間である。最大処理時間は、その処理プログラムの実行開始から完了までにかかる最大時間である。最大通信時間と最大処理時間との和が、最大実行時間(=最大通信時間+最大処理時間)である。最大実行時間は、その処理プログラムの利用に要する最大時間である。利用料金は、その処理プログラムの1回の利用に対して課金される金額である。信頼度は、その処理プログラムの処理結果に対する信頼度である。ここでは、ランクA、ランクB、ランクCの順に信頼度が低くなる。すなわち、ランクAが最も信頼度が高く、ランクCが最も信頼度が低い。信頼度は、処理プログラムのスペックの違いによるものである。
 上述した、最大通信時間、最大処理時間、利用料金、および信頼度が、この発明で言う処理プログラムの属性にかかる項目である。
 また、優先順位テーブルは、処理プログラムを選択するときに、処理プログラムの属性である最大実行時間(最大通信時間+最大処理時間)、利用料金、および信頼度について、優先順位を登録したテーブルである。図4は、優先順位を、最大実行時間、信頼度、利用料金の順に低くなる設定の例である。すなわち、図4に示す優先順位テーブルは、最大実行時間の優先順位を最も高く、利用料金の優先順位を最も低くした例である。
 ドライバ層15は、UDPやTCP等のネットワーク通信を制御する通信ドライバや、RS-232C等のシリアル通信を制御する通信ドライバが位置する階層である。ドライバ層15は、図2に示すように、OS層10の下位に位置する。
 ハードウェア層16は、CPU、メモリ(RAM)、通信を実行する通信制御装置、入出力を行う入出力装置等のハードウェアが位置する階層である。ハードウェア層16は、ドライバ層15の下位に位置する。
 次に、情報処理端末1における処理プログラムの選択にかかる動作について説明する。図5は、情報処理端末における処理プログラムの選択処理を示すフローチャートである。ここでは、図1に示す情報処理端末1Aの動作を例示しながら、この処理プログラムの選択処理について説明する。この処理は、通信仮想化層11における通信仮想化プログラムが実行する。
 なお、ここで説明する各種プログラムの動作は、そのプログラム自体が実際に動作するわけではなく、そのプログラムを実行している情報処理端末1の動作である。
 情報処理端末1は、処理プログラムの要求が発生するかどうかを確認している(s1)。情報処理端末1は、例えば、実行しているアプリケーションプログラムにおいて、サブルーチンプログラム(処理プログラム)の要求が発生する。
 情報処理端末1は、s1で処理プログラムの要求が発生したことを確認すると、自端末のルーティングテーブル12を参照して、該当する処理プログラムを全て抽出する(s2)。具体的には、情報処理端末1は、処理名をキーにして、ルーティングテーブル12を検索し、該当する処理名の処理プログラムを全て抽出する。例えば、図1に示す情報処理端末1Aは、処理プログラムZの要求が発生すると、処理名(処理Z)をキーにしてルーティングテーブル12を検索し、情報処理端末1Bの処理プログラムZ、情報処理端末1Dの処理プログラムZ、および、情報処理端末1Eの処理プログラムZを抽出する。
 情報処理端末1は、優先順位テーブル13を参照し、登録されている優先順位が最大である属性を読み出す(s3)。図4に示す優先順位テーブル13の場合、s3で最大実行時間を読み出す。
 情報処理端末1は、読み出した属性に基づき、利用する処理プログラムの絞り込みを行う(s4)。例えば、情報処理端末1Aは、s2で、上述したように、情報処理端末1Bの処理プログラムZ、情報処理端末1Dの処理プログラムZ、および、情報処理端末1Eの処理プログラムZを抽出している場合、処理プログラム毎に最大実行時間を算出する。図3に示す例では、情報処理端末1Bの処理プログラムZ、情報処理端末1Dの処理プログラムZ、および、情報処理端末1Eの処理プログラムZの最大実行時間は、
 情報処理端末1Bの処理プログラムZの最大実行時間:101ms(1+100)
 情報処理端末1Dの処理プログラムZの最大実行時間:52ms(2+50)
 情報処理端末1Eの処理プログラムZの最大実行時間:52ms(2+50)
になる。この場合、s4では、最大実行時間が52msである、情報処理端末1Dの処理プログラムZ、および、情報処理端末1Eの処理プログラムZに絞り込む。
 情報処理端末1は、s4で絞り込んだ処理プログラムが1つであるか、複数であるかを判定する(s5)。上記の例では、絞り込んだ処理プログラムZが2つであるので、処理プログラムの絞り込みに使用していない属性(他の属性)があるかどうかを判定する(s6)。情報処理端末1は、処理プログラムの絞り込みに使用していない属性があれば、使用していない属性の中で、優先順位が最も高い属性を優先順位テーブル13から読み出し(s7)、s4に戻って上記処理を繰り返す。
 情報処理端末1Aは、例えば、s7で読み出した信頼度で、情報処理端末1Dの処理プログラムZ、および、情報処理端末1Eの処理プログラムZに対する絞り込みを行う。図3に示すルーティングテーブル12の場合、
 情報処理端末1Dの処理プログラムZの信頼度:B
 情報処理端末1Eの処理プログラムZの信頼度:A
であるので、この信頼度による絞り込みでは、より信頼度が高い、情報処理端末1Eの処理プログラムZに絞り込む。
 情報処理端末1は、s5で、絞り込んだ処理プログラムが1つであると判定すると、この処理プログラムを選択する(s8)。
 また、情報処理端末1は、s6で処理プログラムの絞り込みに使用していない属性がないと判定すると、その時点で絞り込んでいる複数の処理プログラムの中から、ランダムに1つの処理プログラムを選択する(s9)。
 情報処理端末1は、s8、またはs9で選択した処理プログラムに対して実行要求を行う(s10)。s10では、情報処理端末1は、通信仮想化層11において、選択した処理プログラムとの通信方式やIPアドレス/ポート番号をルーティングテーブル12から読み出し、この選択した処理プログラムに対する実行要求を送信する。
 情報処理端末1は、s10にかかる、選択した処理プログラムへの実行要求に対する、応答である処理結果を受信すると(s11)、本処理を終了する。s11で受信した処理結果は、今回の処理プログラムの要求を行ったアプリケーションプログラム等に渡される。
 このように、このネットワークシステムは、情報処理端末1が優先順位テーブル13に登録している属性の優先順位に基づいて、利用する処理プログラムを自動的に選択する。したがって、ユーザの作業負担を十分に低減することができる。また、ユーザのニーズにあわない処理プログラムが、ユーザの選択ミスによって選択されるのを防止できる。
 また、優先順位テーブル13については、ユーザが自由に設定変更できる構成にすればよい。
 ここで、上記のネットワークシステムを駅務システムに適用した場合の例について説明する。例えば、図1に示す情報処理端末1Aを、鉄道利用者から乗車券を受け付けて、運賃を精算する精算機とする。また、上述の処理プログラムZを、乗車駅と、降車駅とに基づいて運賃を計算する運賃計算プログラムであるとする。図1では示していないが、精算機である情報処理端末1Aには、精算処理を実行するアプリケーションプログラムや、このアプリケーションプログラムが実行時に利用する運賃計算プログラム(サブルーチンプログラム)である処理プログラムZが搭載されている。ここでは、情報処理端末1Aに搭載されている処理プログラムZが何らかの異常が原因で実行できない状況にあるとする。
 また、処理プログラムZが搭載されている情報処理端末1Bは、情報処理端末1Aに並べて設置されている精算機とする。また、処理プログラムZが搭載されている情報処理端末1Dは、駅の改札口に設置され、利用者に対して改札処理を行う自動改札機であるとする。さらに、処理プログラムZが搭載されている情報処理端末1Eは、駅に設置されている精算機、自動改札機、券売機等の機器を管理する駅サーバとする。
 なお、処理プログラムZが搭載されていない情報処理端末1Cは、例えばキップ等の乗車券を発券する券売機である。
 精算機である情報処理端末1Aは、何らかの異常が原因で運賃計算にかかる処理プログラムZが実行できない状況であるが、機器本体を停止せず、利用者に対して精算処理サービスの提供を継続している。すなわち、情報処理端末1Aは、処理プログラムZが実行できないにもかかわらず、機器本体の稼働を継続している。
 情報処理端末1Aは、利用者から乗車券を受け付け、精算処理を開始すると、運賃計算プログラム(処理プログラムZ)の要求が発生し、通信仮想化層11で上述した図5に示す処理を行い、情報処理端末1Eに搭載されている運賃計算プログラムを選択する。そして、情報処理端末1Aは、選択した情報処理端末1Eに搭載されている運賃計算プログラムに対して実行要求を行い、その処理結果を受信する。
 また、情報処理端末1Aは、情報処理端末1Eに搭載されている運賃計算プログラムの処理結果を用いて、実行している精算処理(アプリケーションプログラム)を完了する。
 このように、精算機(情報処理端末1A)は、何らかの異常が原因で、搭載されている運賃計算プログラムが利用できない状況になっても、機器本体を停止することなく、利用者に対する精算処理サービスの提供を継続する。したがって、精算機(情報処理端末1A)の稼働率の低下が抑えられるとともに、精算機の停止にともなう利用者に対するサービスの低下も抑えられる。
 また、ルーティングテーブル12、および優先順位テーブル13を用いて、動的に利用する処理プログラムを選択するので、優先順位テーブル13を予め設定しておくことにより、処理プログラムZが何らかの異常で実行できない状況になった精算機(情報処理端末1A)に対して、ユーザである駅係員が対応しなくても、ユーザのニーズにあった処理プログラムを自動的に選択させることができる。
 なお、この発明のネットワークシステムは、上述の駅務システムに限らず、他のシステムにも適用できる。
 1(1A~1E)…情報処理端末
 10…OS層(オペレーティングシステム層)
 11…通信仮想化層
 12…ルーティングテーブル
 13…優先順位テーブル
 14…アプリケーション層
 15…ドライバ層
 16…ハードウェア層

Claims (9)

  1.  複数の処理端末を相互に通信可能に接続し、前記処理端末が任意の処理端末に搭載されている処理プログラムを選択的に利用するネットワークシステムにおいて、
     前記処理端末は、
      利用可能な前記処理プログラムについて、その処理プログラムが実行処理する項目と、その処理プログラムが搭載されている前記処理端末と、その処理プログラムの属性にかかる評価値と、を対応づけて登録したルーティングテーブルを記憶する記憶部と、
      任意の項目にかかる実行処理を行うとき、前記記憶部が記憶するルーティングテーブルを参照し、登録されている属性の評価値に基づいて利用する処理プログラムを選択する選択部と、
      前記選択部が選択した処理プログラムに対して実行処理を要求する要求部と、を備えている、
     ネットワークシステム。
  2.  前記ルーティングテーブルは、複数種類の属性について、それぞれ評価値を対応づけて登録している、請求項1に記載のネットワークシステム。
  3.  前記処理端末は、
      前記記憶部が、前記処理プログラムの複数種類の属性について、優先順位を登録する優先順位テーブルを記憶し、
      前記選択部が、前記優先順位テーブルに登録されている属性の優先順位、および前記ルーティングテーブルに登録されている属性別の評価値に基づいて利用する処理プログラムを選択する、
     請求項2に記載のネットワークシステム。
  4.  前記処理プログラムの属性の1つは、その処理プログラムの実行処理にかかる料金である、請求項1~3のいずれかに記載のネットワークシステム。
  5.  前記処理プログラムの属性の1つは、その処理プログラムの実行処理結果にかかる信頼度である、請求項1~3のいずれかに記載のネットワークシステム。
  6.  前記処理端末は、駅に設置され、駅務処理を行う駅務機器である、請求項1~5のいずれかに記載のネットワークシステム。
  7.  通信可能に接続されている他の処理端末に搭載されている処理プログラムを選択的に利用する処理端末において、
     利用可能な前記処理プログラムについて、その処理プログラムが実行処理する項目と、その処理プログラムが搭載されている前記処理端末と、その処理プログラムの属性にかかる評価値と、を対応づけて登録したルーティングテーブルを記憶する記憶部と、
     任意の項目にかかる実行処理を行うとき、前記記憶部が記憶するルーティングテーブルを参照し、登録されている属性の評価値に基づいて利用する処理プログラムを選択する選択部と、
     前記選択部が選択した処理プログラムに対して実行処理を要求する要求部と、を備えている、処理端末。
  8.  通信可能に接続されている他の処理端末に搭載されている処理プログラムを選択的に利用する処理端末の制御部に、
     任意の項目にかかる実行処理を行うとき、利用可能な前記処理プログラムについて、記憶部が記憶する、その処理プログラムが実行処理する項目と、その処理プログラムが搭載されている前記処理端末と、その処理プログラムの属性にかかる評価値と、を対応づけて登録したルーティングテーブルを参照し、登録されている属性の評価値に基づいて利用する処理プログラムを選択する選択ステップと、
     前記選択ステップで選択した処理プログラムに対して実行処理を要求する要求ステップと、を実行させる処理プログラム動的選択プログラム。
  9.  通信可能に接続されている他の処理端末に搭載されている処理プログラムを選択的に利用する処理端末が、
     任意の項目にかかる実行処理を行うとき、利用可能な前記処理プログラムについて、記憶部が記憶する、その処理プログラムが実行処理する項目と、その処理プログラムが搭載されている前記処理端末と、その処理プログラムの属性にかかる評価値と、を対応づけて登録したルーティングテーブルを参照し、登録されている属性の評価値に基づいて利用する処理プログラムを選択する選択ステップと、
     前記選択ステップで選択した処理プログラムに対して実行処理を要求する要求ステップと、を実行する処理プログラム動的選択方法。
PCT/JP2011/076621 2011-03-29 2011-11-18 ネットワークシステム、処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法 WO2012132100A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013507049A JPWO2012132100A1 (ja) 2011-03-29 2011-11-18 ネットワークシステム、処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-071702 2011-03-29
JP2011071702 2011-03-29

Publications (1)

Publication Number Publication Date
WO2012132100A1 true WO2012132100A1 (ja) 2012-10-04

Family

ID=46929899

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/076621 WO2012132100A1 (ja) 2011-03-29 2011-11-18 ネットワークシステム、処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法

Country Status (2)

Country Link
JP (1) JPWO2012132100A1 (ja)
WO (1) WO2012132100A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023042564A1 (ja) * 2021-09-16 2023-03-23 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報管理装置、情報管理システム及び方法、及び情報管理プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005174087A (ja) * 2003-12-12 2005-06-30 Nomura Research Institute Ltd 分散処理システム
JP2005234637A (ja) * 2004-02-17 2005-09-02 Hitachi Ltd 計算機リソース管理方法及び実施装置並びに処理プログラム
JP2006268166A (ja) * 2005-03-22 2006-10-05 Fuji Xerox Co Ltd 情報処理装置、方法、及びプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007156736A (ja) * 2005-12-02 2007-06-21 Canon Inc 情報処理装置及び連携処理方法
JP5264127B2 (ja) * 2007-09-10 2013-08-14 キヤノン株式会社 通信装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005174087A (ja) * 2003-12-12 2005-06-30 Nomura Research Institute Ltd 分散処理システム
JP2005234637A (ja) * 2004-02-17 2005-09-02 Hitachi Ltd 計算機リソース管理方法及び実施装置並びに処理プログラム
JP2006268166A (ja) * 2005-03-22 2006-10-05 Fuji Xerox Co Ltd 情報処理装置、方法、及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023042564A1 (ja) * 2021-09-16 2023-03-23 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報管理装置、情報管理システム及び方法、及び情報管理プログラム

Also Published As

Publication number Publication date
JPWO2012132100A1 (ja) 2014-07-24

Similar Documents

Publication Publication Date Title
AU2020239763B2 (en) Virtual network, hot swapping, hot scaling, and disaster recovery for containers
CN107078969B (zh) 实现负载均衡的计算机设备、系统和方法
US9948600B2 (en) Client-driven load balancing of dynamic IP address allocation
US9152293B2 (en) Server IP addressing in a computing-on-demand system
US9003411B2 (en) Automated provisioning and configuration of virtual and physical servers
US7826359B2 (en) Method and system for load balancing using queued packet information
US20190020561A1 (en) Systems and methods for management of cloud exchanges
US10855682B2 (en) Virtual address for controller in a controller cluster
CN101656732A (zh) 路径控制系统
US10050859B2 (en) Apparatus for processing network packet using service function chaining and method for controlling the same
JP5757325B2 (ja) 仮想デスクトップシステム、ネットワーク処理装置、管理方法、及び管理プログラム
US20130268619A1 (en) Server including switch circuitry
CN105556929A (zh) 在云计算系统中运行应用的网络元件和方法
WO2016048390A1 (en) Link aggregation configuration for a node in a software-defined network
JP2012533129A (ja) 仮想ネットワークの高性能で自動化された管理方法及びシステム
US7974220B2 (en) System and method for overlaying a hierarchical network design on a full mesh network
WO2017127225A1 (en) Virtual network, hot swapping, hot scaling, and disaster recovery for containers
JP4619943B2 (ja) パケット通信方法、パケット通信システム
WO2012132100A1 (ja) ネットワークシステム、処理端末、処理プログラム動的選択プログラム、および処理プログラム動的選択方法
US20230209404A1 (en) Method for accessing gateway and apparatus
US20150138979A1 (en) Network management control device, network management control system, and network management control method
JP2005258632A (ja) ネットワークストレージ装置の導通確認方法およびホスト計算機
WO2021258861A1 (zh) 一种作业处理方法以及相关设备
JP5686184B2 (ja) ネットワークシステム、処理端末、待ち時間設定プログラム、および、待ち時間設定方法
JP2016046737A (ja) サービスチェイニングシステム、サービスチェイニングポリシ制御装置、及びサービスチェイニング方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11862278

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013507049

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11862278

Country of ref document: EP

Kind code of ref document: A1