JP5958626B2 - Communication control device and program - Google Patents
Communication control device and program Download PDFInfo
- Publication number
- JP5958626B2 JP5958626B2 JP2015172000A JP2015172000A JP5958626B2 JP 5958626 B2 JP5958626 B2 JP 5958626B2 JP 2015172000 A JP2015172000 A JP 2015172000A JP 2015172000 A JP2015172000 A JP 2015172000A JP 5958626 B2 JP5958626 B2 JP 5958626B2
- Authority
- JP
- Japan
- Prior art keywords
- function
- communication
- script
- communication control
- function expansion
- 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
Landscapes
- Stored Programmes (AREA)
Description
本発明は、コンピュータが組み込まれた電子機器に関し、特に、そのコンピュータによって実現される機能の拡張を行う技術に関する。 The present invention relates to an electronic device in which a computer is incorporated, and more particularly, to a technique for expanding functions realized by the computer.
携帯電話機や所謂IT家電のように、予め組み込まれたコンピュータによる作動制御によって高機能を実現する電子機器が普及している。この種の電子機器においては、ファームウェアと呼ばれるプログラムをそのコンピュータに実行させることにより、その電子機器固有の機能(携帯電話機であれば通話や電子メールの送受信などの通信機能、電子炊飯器であれば、炊き上がり時刻を設定させる機能やその時刻にご飯が炊き上がるように火加減を調整しつつ炊飯する機能)が実現される。ファームウェアは、例えばROM(Read Only Memory)などの不揮発性メモリに書き込まれた状態で電子機器に組み込まれることが多い。 2. Description of the Related Art Electronic devices that realize high functions through operation control by a computer incorporated in advance, such as mobile phones and so-called IT home appliances, have become popular. In this type of electronic device, by causing the computer to execute a program called firmware, functions unique to the electronic device (communication functions such as call and e-mail transmission / reception for mobile phones, , The function of setting the cooking time and the function of cooking while adjusting the heating so that the rice is cooked at that time) are realized. Firmware is often incorporated into electronic devices in a state of being written in a nonvolatile memory such as a ROM (Read Only Memory).
ところで、この種の電子機器は、新型のものであるほど高機能であることが多く、既存の電子機器の利用者のなかには利用中の電子機器に最新のものと同様な機能を付与するといった機能拡張を行うことを望んでいるものもいる。前述したように、この種の電子機器の機能はファームウェアによって実現されているのであるから、機能拡張を行うにはファームウェアの更新が必要となる。しかし、ファームウェアは、不揮発性メモリに書き込まれた状態で電子機器に組み込まれるため、その更新には電子機器を分解して元々組み込まれていた不揮発性メモリを新たなファームウェアが書き込まれたものに差換えるといった作業が必要となり、容易ではない。 By the way, this type of electronic device is often more sophisticated as it is newer, and among the users of existing electronic devices, a function that gives the same function as the latest to the electronic device being used. Some want to expand. As described above, since the functions of this type of electronic device are realized by firmware, the firmware needs to be updated in order to expand the functions. However, since the firmware is incorporated into the electronic device in a state written in the nonvolatile memory, the update is performed by disassembling the electronic device and replacing the originally incorporated nonvolatile memory with the new firmware written. It is not easy to change the work.
近年では、ファームウェアにバグなどの不具合があった場合にその不具合を簡便に是正することができるようにするため、フラッシュメモリなどの書き換え可能な不揮発性メモリにファームウェアを書き込んで電子機器に組み込み、外部のコンピュータからそのファームウェアを書き換えることができるようにしたものもある。このようにファームウェアの書き換えが可能な電子機器においては、ファームウェアを更新することで機能拡張することができる。しかし、利用者の所望する機能を付加するようなファームウェアが電子機器の開発元から提供されているとは限らず、所望する機能を付加するようなファームウェアが提供されていない場合にはその作成を電子機器の開発元に依頼しなければならない。電子機器の利用者がファームウェアを改造することは不可能だからである。しかし、このような依頼が電子機器の開発元に受け入れられるとは限らず、依頼が受け入れられない場合には、結局、電子機器に所望の機能を付加することはできない。このように、ファームウェアの書き換えが容易な構成となっている電子機器であっても、所望の機能を新たに付加するような機能拡張を常に行うことができるとは限らない。 In recent years, if there is a bug or other problem in the firmware, the firmware can be written in a rewritable non-volatile memory such as a flash memory and embedded in an electronic device, so that it can be corrected easily. Some of them can be rewritten from their computers. In such an electronic device in which firmware can be rewritten, the function can be expanded by updating the firmware. However, the firmware that adds the function desired by the user is not necessarily provided by the developer of the electronic device, and if the firmware that adds the desired function is not provided, create it. You have to ask the electronic device developer. This is because it is impossible for users of electronic devices to modify the firmware. However, such a request is not always accepted by the developer of the electronic device. If the request is not accepted, a desired function cannot be added to the electronic device after all. As described above, even in an electronic device having a configuration in which firmware can be easily rewritten, it is not always possible to perform function expansion to newly add a desired function.
本発明は上記課題に鑑みて為されたものであり、予め組み込まれたコンピュータをファームウェアにしたがって作動させることにより固有の機能を実現する電子機器において、ファームウェアを更新することなく簡便に機能拡張を行えるようにする技術を提供することを目的とする。 The present invention has been made in view of the above problems, and in an electronic device that realizes a unique function by operating a computer incorporated in advance according to firmware, the function can be easily expanded without updating the firmware. It aims at providing the technique which makes it do.
上記課題を解決するために、本発明は、ファームウェアにしたがって処理を実行し、当該電子機器固有の機能を実現するファームウェア実行手段と、当該電子機器に付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、前記新たな機能を実現するスクリプト実行手段とを有することを特徴とする電子機器、を提供する。このような電子機器においては、新たに付与する機能に応じた機能拡張用スクリプトを作成し、その機能拡張用スクリプトを当該電子機器に記憶させてその実行を行わせることで、ファームウェアの更新を行うことなく電子機器の機能拡張を行うことが可能になる。なお、特許文献1に開示された技術は、フラッシュメモリなどの書き換え可能な不揮発性メモリに書き込まれているデータやプログラムの書き換えを支援し電子機器の保守作業を容易にする技術であって、電子機器に任意の機能を付与する機能拡張を実現する技術ではない。 In order to solve the above-described problems, the present invention executes a process according to firmware and implements firmware execution means for realizing a function specific to the electronic device, and a processing procedure for realizing a new function to be given to the electronic device. There is provided an electronic apparatus characterized by having a script execution means for reading and executing a function expansion script described using a predetermined script language and realizing the new function. In such an electronic device, a function expansion script corresponding to a newly added function is created, and the firmware is updated by storing the function expansion script in the electronic device and executing the script. It is possible to expand the functions of electronic devices without any problems. The technique disclosed in Patent Document 1 is a technique that supports rewriting of data and programs written in a rewritable nonvolatile memory such as a flash memory and facilitates maintenance work of electronic equipment. It is not a technology that realizes function expansion that gives an arbitrary function to a device.
このような電子機器の具体例としては、以下の構成の通信制御装置が挙げられる。すなわち、互いに異なる2つの通信網に接続され、それら2つの通信網の一方から他方へと送信されるデータの転送制御をファームウェアにしたがって実行する通信制御手段と当該通信制御装置に付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、当該通信制御装置の持つ機能を拡張する(或いは新たな通信関連の機能を実現する)スクリプト実行手段とを有する構成の通信制御装置である。 As a specific example of such an electronic device, a communication control device having the following configuration can be given. That is, a new function that is connected to two different communication networks and executes transfer control of data transmitted from one of the two communication networks to the other according to the firmware and the communication control device A script for extending a function of the communication control device (or realizing a new communication-related function) by reading and executing a function expansion script in which a processing procedure for realizing the process is described using a predetermined script language A communication control device having an execution unit.
また、このような通信制御装置の他の構成例としては、第1の通信網に接続される第1の通信インタフェースと、前記第1の通信網とは異なる第2の通信網に接続される第2の通信インタフェースと、前記第1および第2の通信網の何れか一方から他方へと送信されるデータの転送制御処理をファームウェアにしたがって実行するとともに、当該通信制御装置に付与する新たな機能を実現するための処理手順を所定のスクリプト言語を用いて記述した機能拡張用スクリプトを読み込んで実行し、当該通信制御装置の持つ機能を拡張する(或いは新たな通信関連の機能を実現する)スクリプト実行処理を実行する制御部とを有することを特徴とする構成が考えられる。そして、このような構成の通信制御装置においては、データの転送制御処理とスクリプト実行処理の両者が一つの制御部で実行されるため、スクリプト実行処理の処理負荷が高くなりすぎるとデータの転送制御処理の実行に支障が生じる虞があり、特に、上記新たな機能が常駐型のものである場合にはその虞は顕著になる。そこで、機能拡張用スクリプトの実行により常駐型の機能が新たに付与される場合には、前記スクリプト実行処理による処理負荷が所定の閾値を上回らないようにその実行を制限する処理を上記制御部に実行させるようにしても良い。 As another example of the configuration of such a communication control device, the first communication interface connected to the first communication network and the second communication network different from the first communication network are connected. The second communication interface and a new function to be given to the communication control device while executing transfer control processing of data transmitted from one of the first and second communication networks to the other according to the firmware A script for extending a function of the communication control device (or realizing a new communication-related function) by reading and executing a function expansion script in which a processing procedure for realizing the process is described using a predetermined script language A configuration including a control unit that executes an execution process is conceivable. In the communication control device having such a configuration, since both the data transfer control process and the script execution process are executed by one control unit, if the processing load of the script execution process becomes too high, the data transfer control There is a possibility that the execution of the process may be hindered. In particular, when the new function is a resident type, the possibility becomes remarkable. Therefore, when a resident function is newly added by executing the function expansion script, the control unit is configured to restrict the execution so that the processing load of the script execution process does not exceed a predetermined threshold. You may make it perform.
以下、図面を参照しつつ本発明の一実施形態について説明する。
図1は、本発明に係る電子機器の一実施形態である通信制御装置10を含む通信システム1の構成例を示すブロック図である。この通信システム1は、例えば企業における社内情報システムを為すものである。この通信システム1は、上記企業の本社内に敷設された本社側LAN(Local Area Network)と、同企業の支店に敷設された支店側LANと、をインターネットなどの広域網に接続して構成されている。より詳細に説明すると、図1に示すように、本社側LANは、例えばルータなどの通信制御装置を介して広域網に接続されており、支店側LANは、通信制御装置10およびゲートウェイ装置GWを介して広域網に接続されている。図1のゲートウェイ装置GWは、インターネット側から支店側LANへの不正アクセスや、逆に支店側LANのPCからインターネットへのアクセス制限を実現するための関門中継装置である。図1では詳細な図示は省略したが、本社側LANとインターネットとを接続する通信制御装置とインターネットとの間にも同様のゲートウェイ装置が設けられている。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram illustrating a configuration example of a communication system 1 including a
通信制御装置10は、例えばルータであり、支店側LANに接続されている通信装置(例えば、パーソナルコンピュータ:図1では「PC」と表記)と、インターネットに接続されている他の通信装置(例えば、WWWサーバ装置)或いは本社側LANに接続されているPCとの間でTCP/IP(Transport Control Protocol/Internet Protocol)に従って送受信されるデータの転送制御を行う電子機器である。通信制御装置10には、予めコンピュータ(CPU:Central Processing Unit)が組み込まれており、このコンピュータをファームウェアにしたがって作動させることによって上記転送制御が実現される。この通信制御装置10は、上記ファームウェアの更新を行うことなく、新たな機能を付加することができるように(すなわち、機能拡張を行えるように)構成されている点に特徴がある。
以下、通信制御装置10を中心に説明する。
The
Hereinafter, the
図2は、通信制御装置10の構成例を示すブロック図である。図2に示すように通信制御装置10は、制御部100、第1通信インタフェース(以下、「I/F」)部110、第2通信I/F部120、外部機器I/F部130、記憶部140、および、これら構成要素間のデータ授受を仲介するバス150を含んでいる。
FIG. 2 is a block diagram illustrating a configuration example of the
制御部100は、CPU(すなわち、通信制御装置10に組み込まれているコンピュータ)である。この制御部100は、記憶部140(より正確には、記憶部140に含まれている不揮発性記憶部144)に格納されているファームウェアを実行することにより、通信制御装置10の制御中枢として機能する。詳細については後述するが、本実施形態では、通信制御装置10のファームウェアとして通信制御プログラム144aが不揮発性記憶部144に予め格納されている。
The
第1通信I/F部110は、NIC(Network Interface Card)であり、図1の支店側LANに接続されている。第1通信I/F部110は、支店側LANから送信されてくるパケットを受信して制御部100へ引渡す一方、制御部100から引渡されるパケットを支店側LANへと送出する。第2通信I/F部120も第1通信I/F部110と同様にNICであり、専用線(図示略)等を介してゲートウェイ装置GWに接続されている。この第2通信I/F部120は、ゲートウェイ装置GWから送信されてくるパケットを受信して制御部100へ引渡す一方、制御部100から受け取ったパケットをゲートウェイ装置GWへと送信する。
The first communication I /
外部機器I/F部130は、USB等の外部記憶媒体やシリアルコンソールなどの外部機器との間で所定のプロトコル(USBやRS−232C)にしたがってデータの授受を行うためのものである。例えば、外部機器としてUSBメモリを用いる場合には、USBインタフェースで外部機器I/F部130を構成すれば良く、外部機器としてシリアルコンソールを用いる場合には、RS−232Cインタフェースなどのシリアルインタフェースで外部機器I/F部130を構成すれば良い。外部機器I/F部130は、この外部機器I/F部130に接続される外部機器から通信制御装置10に対して各種指示やデータを与えるためのものである。
The external device I /
記憶部140は、図2に示すように揮発性記憶部142と不揮発性記憶部144を含んでいる。揮発性記憶部142は、例えばRAM(Random Access Memory)であり、各種プログラムを実行する際のワークエリアとして制御部100によって利用される。一方、不揮発性記憶部144は、ハードディスクやフラッシュメモリである。図2に示すように不揮発性記憶部144には、通信制御装置10のファームウェアである通信制御プログラム144aの他に、スクリプト実行プログラム144b、設定ファイル144c、および機能拡張用スクリプト144dが格納されている。
As shown in FIG. 2, the
通信制御プログラム144aは、支店側LANと本社側LANとの間にIP−secトンネルを確立する処理や、このIP−secトンネルを介したパケットの転送制御処理を制御部100に実行させるプログラムである。これらの処理は、設定ファイル144cに書き込まれた各種設定値にしたがって実行される。この設定ファイル144cには、デフォルトゲートウェイ(本実施形態では、ゲートウェイ装置GW)の通信アドレスやIP−secトンネルの確立先の通信アドレスなどが予め書き込まれている。
The
スクリプト実行プログラム144bは、所定のスクリプト言語(本実施形態では、Lua)で記述された命令群であるスクリプトを実行するスクリプト実行処理を制御部100に実行させるためのプログラムである。本実施形態では、スクリプト言語としてLuaが採用されているため、上記スクリプト実行処理は、処理対象のスクリプトをバイトコードと呼ばれる中間コードに変換する処理と、そのバイトコードをLuaVMにより実行する処理とを含んでいる。換言すれば、スクリプト実行プログラム144bは、上記バイトコードへの変換を行うルーチンとLuaVMとして機能するルーチンとを含んでいる。そして、本実施形態では、通信制御装置10に付与する新たな機能を実現するための処理手順を上記スクリプト言語で記述したスクリプト(以下、機能拡張用スクリプト)を上記スクリプト実行処理により実行することで、当該新たな機能が通信制御装置10に付与されるのである。
The
通信制御装置10に対する機能拡張用スクリプトの与え方の具体的な態様としては、種々の態様が考えられる。例えば、外部機器I/F部130に接続されているシリアルコンソールを介して機能拡張用スクリプトを構成する命令群の各々をコマンドライン入力する態様や、上記命令群を記述したテキストファイルを予め作成しておき、このテキストファイルを機能拡張用スクリプトとして入力する態様が考えられる。なお、テキストファイルとして作成された機能拡張用スクリプトを通信制御装置10に与える具体的な手法としては、USBメモリ等の外部記憶媒体を利用した手法が考えられる。具体的には、テキストファイルとして作成した機能拡張用スクリプトをUSBメモリに格納しておき、このUSBメモリを通信制御装置10の外部機器I/F部130に装着する。そして、通信制御装置10の制御部100には、外部機器I/F部130を介してUSBメモリから上記テキストファイルを読み出して記憶(或いは、実行)する処理を行わせるのである。
Various modes are conceivable as specific modes of giving the function expansion script to the
本実施形態では、テキストファイルとして与えられた機能拡張用スクリプトが不揮発性記憶部144に予め格納されており(図2に示す機能拡張用スクリプト144d)、制御部100は、外部機器I/F部130に接続されているシリアルコンソールからスクリプト実行指示が与えられたことを契機として、スクリプト実行処理による機能拡張用スクリプト144dの実行が開始され、新たな機能が通信制御装置10に付与される。このように機能拡張用スクリプトを利用して機能拡張を実現したのは、ファームウェア(通信制御プログラム144a)の改造を通信制御装置10の利用者が行うことは不可能であり、ファームウェアの改造を行うことなく機能拡張を実現するためである。また、本実施形態にて機能拡張用スクリプトを記述するスクリプト言語としてLuaを採用したのは、perlなどの他のスクリプト言語に比較してスクリプト実行処理の処理負荷が低い(スクリプト実行プログラム144bの実行に要するメモリ量が少ないなど)といった特徴を有しており、電子機器への組み込みに好適だからである。
In the present embodiment, a function expansion script given as a text file is stored in advance in the nonvolatile storage unit 144 (function expansion script 144d shown in FIG. 2), and the
ここで、機能拡張用スクリプトの実行により通信制御装置10に付与される新たな機能としては、常駐型の機能(当該機能を実現する処理手順に無限ループが含まれており、割り込み処理等により実行停止が指示されるまで処理を継続する機能)と、ターンアラウンド型の機能(処理結果の記憶や出力で処理を終了する機能)とが考えられる。例えば、ターンアラウンド型の機能の一例としては、設定ファイル144cの設定内容や通信制御装置10の稼動ログファイルを所定の出力先(外部機器I/F部130に接続されたシリアルコンソールやUSBメモリ)に出力する機能が挙げられる。このような機能を付与することで、通信制御装置10に対する動作設定の設定内容や稼動ログのレポート出力が可能となり、通信制御装置10の運用管理がし易くなる、といった利点がある。
Here, as a new function given to the
これに対して、常駐型の機能の一例としては、図3に示すフローチャートで処理手順が示される通信状態監視機能が上げられる。この通信状態監視機能は、一定の時間間隔(本実施形態では、600秒)でゲートウェイ装置GWとの間の通信状態を監視し、その監視結果に応じたQoS(Quality of Service:例えば、IP−secトンネルを介したパケットの送受信が優先されるようにする制御)の開始(或いは停止)およびその監視結果を所定の宛先に通知する機能である。図3に示すように、この通信状態監視機能は、所定回数だけpingパケットをゲートウェイ装置GWへ送信する処理(ステップSA100)、これらpingパケットに対する応答パケットの受信数から算出されるパケットロス率に応じてQoSの開始および停止を制御する処理(ステップSA110、SA120、SA150およびSA160)、その監視結果を示すデータを所定の宛先へ電子メール等で通知する処理(ステップSA130)、および、600秒間の休眠を行う処理(ステップSA140)、を順次実行することで実現される。 On the other hand, as an example of the resident function, there is a communication state monitoring function whose processing procedure is shown in the flowchart shown in FIG. This communication state monitoring function monitors the communication state with the gateway device GW at a constant time interval (600 seconds in the present embodiment), and QoS (Quality of Service: for example, IP-) according to the monitoring result. This is a function for notifying the predetermined destination of the start (or stop) of the control for giving priority to the packet transmission / reception via the sec tunnel and the monitoring result. As shown in FIG. 3, the communication state monitoring function performs processing for transmitting a ping packet to the gateway device GW a predetermined number of times (step SA100), and according to the packet loss rate calculated from the number of response packets received in response to these ping packets. Processing for controlling QoS start and stop (steps SA110, SA120, SA150 and SA160), processing for notifying data indicating the monitoring result to a predetermined destination by e-mail (step SA130), and sleep for 600 seconds This is realized by sequentially executing the processing (step SA140).
上記通信状態監視機能を通信制御装置10に新たに付与することを所望する場合には、図3のフローチャートに示す処理手順をLuaにより記述して機能拡張用スクリプトを生成し、この機能拡張用スクリプトをスクリプト実行処理により実行する処理を通信制御装置10の制御部100に実行させるようにすれば良い。なお、pingパケットをゲートウェイ装置GWへ送信する際には、ゲートウェイ装置GWの通信アドレスが必要となるのであるが、ゲートウェイ装置GWの通信アドレスのように通信制御装置毎に異なり得る値については、環境変数として通信制御装置10に設定しておき、その環境変数をgetenvコマンドにより取得するようにすれば良い。このようにすることで、1つの機能拡張用スクリプトを複数の通信制御装置で共通して使用することが可能になり、利便性が向上するからである。
When it is desired to newly give the communication state monitoring function to the
このように、本実施形態では、通信制御装置10に対して新たに付与することを所望する機能における処理手順を所定のスクリプト言語で記述した機能拡張用スクリプトを作成し、この機能拡張用スクリプトをスクリプト実行処理により実行することで、ファームウェア(すなわち、通信制御プログラム144a)を更新することなく、通信制御装置10の機能拡張を行うことが可能になる。また、ファームウェアの更新による機能拡張の場合は、一旦、通信制御装置を停止させてファームウェアの更新を行った後に通信制御装置を再起動する必要があったが、本実施形態では、機能拡張用スクリプトの実行を開始させるだけで機能拡張を実現できるため、通信制御装置を稼動させたまま機能拡張を行うことが可能になる。
As described above, in the present embodiment, a function expansion script is created in which a processing procedure in a function desired to be newly given to the
以上本発明の一実施形態について説明したが、この実施形態を以下のように変形しても勿論良い。
(1)上述した実施形態では、通信制御装置10の機能を拡張するためのスクリプトの記述言語としてLuaを用いたが、制御部100の処理能力や記憶部140の記憶容量に余裕がある場合には、Perlなどの他のスクリプト言語を用いても勿論良い。
Although one embodiment of the present invention has been described above, this embodiment may of course be modified as follows.
(1) In the above-described embodiment, Lua is used as the script description language for extending the function of the
(2)上述した実施形態では、互いに異なる2つの通信網に接続され、一方の通信網から他方の通信網へと送信されたデータの転送制御を行う通信制御装置に本発明を適用し、特定の通信装置(上記実施形態では、ゲートウェイ装置GW)へのアクセス状況を監視し、アクセス状況を示すメールを所定の宛先へ定期的に転送する常駐型の新規機能を追加する場合について説明した。上記実施形態では、通信制御処理と新規機能を実現するためのスクリプト実行処理は共に制御部100によって実行されるため、スクリプト実行処理の処理負荷が高すぎると通信制御処理に支障が生じ、パケットロスが発生するなどの不具合が生じる虞がある。そこで、新たに追加される機能が常駐型のものである場合には、スクリプト実行処理による処理負荷が所定の閾値を上回らないようにその実行を制限する処理を制御部100に実行させるようにしても良い。また、通信制御処理の実行状況(すなわち、通信制御処理の実行に要している処理負荷の高さ)に応じて上記閾値を動的に更新しても良い。例えば、通信制御処理の実行に要している処理負荷が高いほど上記閾値を小さくする(例えば、上記閾値を環境変数として設定しておき、通信制御処理の処理負荷に応じてその環境変数を更新する)のである。さらに、上記のような不具合が発生しないようにするため、ファームウェアを実行する手段とスクリプト実行処理を実行する手段とを各々別個に設けても良い。
(2) In the above-described embodiment, the present invention is applied to a communication control device that is connected to two different communication networks and controls transfer of data transmitted from one communication network to the other communication network. The case has been described where the access status to the communication device (in the above embodiment, the gateway device GW) is monitored, and a new resident function is added to periodically transfer a mail indicating the access status to a predetermined destination. In the above embodiment, both the communication control process and the script execution process for realizing the new function are executed by the
(3)上述した実施形態では、外部機器I/F部130に接続されたシリアルコンソールから与えられる指示に応じて機能拡張用スクリプト144dの実行を開始する場合について説明した。しかし、例えば支店側LANなどの通信網経由で与えられる指示(例えば、telnetを利用した通信により与えられる指示)に応じてスクリプトの実行開始および実行終了を制御しても良い。また、通信制御装置10の操作部に設けられている操作子のうちの特定のもの(以下、スクリプトボタン)に予め機能拡張用スクリプトを対応づけておき、そのスクリプトボタンが押下されたことを契機としてそのスクリプトボタンに対応付けられているスクリプトの実行を開始(或いは、実行中のスクリプトを停止)させても良い。また、所定の時刻になったらスクリプトの実行を開始(或いは、停止)させるようなスケジュール設定を行えるようにしても良い。
(3) In the above-described embodiment, the case where the execution of the function expansion script 144d is started in accordance with an instruction given from the serial console connected to the external device I /
(4)上述した実施形態では、通信制御装置10に付与する新たな機能における処理手順の全てを機能拡張用スクリプト144dにて規定した。しかし、所定の通信装置へpingを送信する機能を実現するスクリプトや所定の宛先へ電子メールを送信する機能など通信制御装置での利用頻度が高いと考えられる機能を関数化してライブラリを作成し、これらライブラリに含まれている関数を呼び出すためのインタフェース(所謂API:Application ProgrammingInterface)を用意しておいても良い。このようなライブラリの提供、およびAPIの公開を行うことで、所定の通信装置へpingを送信する機能を実現するためのスクリプトを逐一作成する必要がなくなり、機能拡張用スクリプトの作成が容易になる。なお、上記各関数についてはスクリプト言語でその処理手順を記述しても良く、また、C言語や機械語などでその処理手順を記述しても良い。また、上記のようなライブラリおよびAPIを作成する場合には、様々な種類の電子機器で使用されると考えられる関数のライブラリおよびAPI(共通ライブラリ)と、電子機器の機種毎に固有のライブラリおよびAPI(以下、機種固有ライブラリ)とに分けて提供および公開を行っても良い。
(4) In the embodiment described above, the processing procedure for the new function to be given to the
(5)上述した実施形態では、通信制御装置10の特徴を顕著に示す通信制御処理およびスクリプト実行処理をソフトウェアで実現した。しかし、通信制御処理を実行する通信制御手段とスクリプト実行処理を実行するスクリプト実行手段の各々を電子回路などのハードウェアで実現し、これら各手段と、第1通信I/F部110と、第2通信I/F部120とを組み合わせて通信制御装置を構成しても勿論良い。また、上述した実施形態では、スクリプト実行プログラム144bが通信制御装置10の不揮発性記憶部144に予め格納されていたが、CD−ROM(Compact Disk-Read Only Memory)などのコンピュータ読み取り可能な記録媒体に上記スクリプト実行プログラム144bを書き込んで配布しても良く、また、インターネットなどの電気通信回線経由のダウンロードにより上記スクリプト実行プログラム144bを配布しても良い。また、上述した実施形態では、通信制御処理を実現するファームウェア(通信制御プログラム144a)とスクリプト実行処理を実現するスクリプト実行プログラム144bとを各々別個のプログラムとして構成したが、両者を1つのプログラムにまとめても勿論良い。
(5) In the above-described embodiment, the communication control process and the script execution process that clearly show the characteristics of the
(6)上述した実施形態では、通信制御装置への本発明の適用例を説明したが、例えば携帯電話機や所謂IT家電への適用が可能であることは言うまでも無い。要は、予め組み込まれたコンピュータをファームウェアにしたがって作動させることにより固有の機能を実現する電子機器であれば、本発明を適用することによりファームウェアの更新を行うことなく機能拡張をすることが可能になるのである。 (6) Although the application example of the present invention to the communication control device has been described in the above-described embodiment, it goes without saying that the present invention can be applied to, for example, a mobile phone or a so-called IT home appliance. In short, if the electronic device realizes a unique function by operating a pre-installed computer according to the firmware, it is possible to expand the function without updating the firmware by applying the present invention. It becomes.
1…通信システム、10…通信制御装置、100…制御部、110…第1通信I/F部、120…第2通信I/F部、130…外部機器I/F部、140…記憶部、142…揮発性記憶部、144…不揮発性記憶部、144a…通信制御プログラム、144b…スクリプト実行プログラム、144c…設定ファイル、144d…機能拡張用スクリプト、150…バス。 DESCRIPTION OF SYMBOLS 1 ... Communication system, 10 ... Communication control apparatus, 100 ... Control part, 110 ... 1st communication I / F part, 120 ... 2nd communication I / F part, 130 ... External apparatus I / F part, 140 ... Memory | storage part, 142: volatile storage unit, 144: nonvolatile storage unit, 144a: communication control program, 144b: script execution program, 144c: setting file, 144d: script for function expansion, 150: bus.
Claims (13)
前記第1の通信網とは異なる第2の通信網に接続される第2の通信インタフェースと、
前記第1および第2の通信網の何れか一方から他方へと送信されるデータの転送制御をファームウェアにしたがって実行するデータ転送制御手段と、
関数のライブラリと該ライブラリに含まれる関数を呼び出すためのアプリケーションプログラミングインタフェースとを用いて作成された機能拡張用スクリプトを読み込んで実行し、当該通信制御装置の持つ機能を拡張するスクリプト実行処理を実行する制御部と、
を有することを特徴とする通信制御装置。 A first communication interface connected to the first communication network;
A second communication interface connected to a second communication network different from the first communication network;
Data transfer control means for executing transfer control of data transmitted from any one of the first and second communication networks to the other according to the firmware;
A function expansion script created using a function library and an application programming interface for calling a function included in the library is read and executed, and a script execution process for extending the function of the communication control device is executed. A control unit;
A communication control device comprising:
前記第1の通信網とは異なる第2の通信網に接続される第2の通信インタフェースと、
前記第1および第2の通信網の何れか一方から他方へと送信されるデータの転送制御をファームウェアにしたがって実行するデータ転送制御手段と、
関数のライブラリと該ライブラリに含まれる関数を呼び出すためのアプリケーションプログラミングインタフェースとを用いて作成された機能拡張用スクリプトを読み込んで実行し、新な通信関連の機能を実現するスクリプト実行処理を実行する制御部と、
ことを特徴とする通信制御装置。 A first communication interface connected to the first communication network;
A second communication interface connected to a second communication network different from the first communication network;
Data transfer control means for executing transfer control of data transmitted from any one of the first and second communication networks to the other according to the firmware;
Control that executes a script execution process that implements a new communication-related function by reading and executing a function expansion script created using a function library and an application programming interface for calling a function included in the library And
A communication control device.
ことを特徴とする請求項1〜3の何れか1項に記載の通信制御装置。 The communication control apparatus according to claim 1, wherein transfer control by the data transfer control unit is executed in parallel with execution of script execution processing by the control unit.
ことを特徴とする請求項1〜4の何れか1項に記載の通信制御装置。 The library of functions is divided into a common library used in common by a plurality of types of communication control devices and a unique library for each model of the communication control device. The communication control device according to 1.
互いに異なる2つの通信網の一方から他方へと送信されるデータを受信し、その転送制御をファームウェアにしたがって実行するデータ転送制御手段と、
関数のライブラリと該ライブラリに含まれる関数を呼び出すためのアプリケーションプログラミングインタフェースとを用いて作成された機能拡張用スクリプトを読み込んで実行し、当該コンピュータの持つ機能を拡張するスクリプト実行手段と、
として機能させることを特徴とするプログラム。 Computer
Data transfer control means for receiving data transmitted from one of the two different communication networks to the other and executing the transfer control according to the firmware;
Script execution means for reading and executing a function expansion script created using a function library and an application programming interface for calling a function included in the library, and extending the function of the computer;
A program characterized by functioning as
互いに異なる2つの通信網の一方から他方へと送信されるデータを受信し、その転送制御をファームウェアにしたがって実行するデータ転送制御手段と、
関数のライブラリと該ライブラリに含まれる関数を呼び出すためのアプリケーションプログラミングインタフェースとを用いて作成された機能拡張用スクリプトを読み込んで実行し、新たな通信関連の機能を実現するスクリプト実行手段と、
として機能させることを特徴とするプログラム。 Computer
Data transfer control means for receiving data transmitted from one of the two different communication networks to the other and executing the transfer control according to the firmware;
Script execution means for reading and executing a function expansion script created using a function library and an application programming interface for calling a function included in the library, and realizing a new communication-related function;
A program characterized by functioning as
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015172000A JP5958626B2 (en) | 2015-09-01 | 2015-09-01 | Communication control device and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015172000A JP5958626B2 (en) | 2015-09-01 | 2015-09-01 | Communication control device and program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014000273A Division JP5835362B2 (en) | 2014-01-06 | 2014-01-06 | Communication control device and program |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016123444A Division JP6233460B2 (en) | 2016-06-22 | 2016-06-22 | Communication control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016026343A JP2016026343A (en) | 2016-02-12 |
JP5958626B2 true JP5958626B2 (en) | 2016-08-02 |
Family
ID=55303621
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015172000A Active JP5958626B2 (en) | 2015-09-01 | 2015-09-01 | Communication control device and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5958626B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6233460B2 (en) * | 2016-06-22 | 2017-11-22 | ヤマハ株式会社 | Communication control device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0954732A (en) * | 1995-08-11 | 1997-02-25 | Kokusai Denshin Denwa Co Ltd <Kdd> | Mhs function highly advancing method |
-
2015
- 2015-09-01 JP JP2015172000A patent/JP5958626B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2016026343A (en) | 2016-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10802906B2 (en) | Monitoring method and apparatus of server, and storage medium | |
EP3197094B1 (en) | Software upgrading method and device | |
JP4414305B2 (en) | Relay device, relay device restart method, and relay device software program | |
JP2005517311A (en) | Home networking communication apparatus and method | |
JP6862191B2 (en) | Information processing device, its control method, and program | |
JP2011048702A (en) | Electronic apparatus, communication control apparatus and program | |
JP5958626B2 (en) | Communication control device and program | |
JP6233460B2 (en) | Communication control device | |
JP5835362B2 (en) | Communication control device and program | |
JP6064720B2 (en) | Electronic device and script generation device | |
JP6021853B2 (en) | Network configuration information providing apparatus, network configuration information providing method, and program | |
JP2005228200A (en) | Electronic device | |
JP5880701B2 (en) | Communication system, communication control method, communication relay system, and communication relay control method | |
CN111615819B (en) | Method and device for transmitting data | |
JP2006019808A (en) | Relaying apparatus and priority control method for relaying apparatus | |
WO2022172331A1 (en) | Setting change device, setting change method, and program | |
JP2007228461A (en) | Radio communication system | |
JP6096700B2 (en) | API providing system | |
JP6562468B2 (en) | Setting information updating system, setting information automatic updating method, and setting information automatic updating program | |
JP2009075669A (en) | Server device, program for the same, and data transmission/reception method | |
JP6767947B2 (en) | Line switching method | |
JP6877194B2 (en) | Power management device setting / status information display device and power management device setting / status information display method | |
JP6515761B2 (en) | Relay apparatus, relay method, and relay program | |
JP2017046200A (en) | Communication control device and transmission system | |
JP2024018734A (en) | Communication processing device and communication method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160519 |
|
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: 20160524 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160606 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5958626 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |