(57)【要約】【課題】通信網を介した各種サービスの提供をユーザが手軽に実現できるようにする。【解決手段】第１および第２の通信網間のデータ通信を中継する中継手段と、データを書き換え可能に記憶する記憶手段であって、前記第１および第２の通信網の少なくとも一方を介したデータ通信により所定の通信サービスを実現するアプリケーションプログラムと当該アプリケーションプログラムの実行過程で呼び出されるサブプログラムの集合体であるサブプログラムライブラリとを記憶した記憶手段と、前記アプリケーションプログラムを実行するプログラム実行手段とを有することを特徴とする中継装置、を提供する。【選択図】図６
2018160281.tif 000002
【特許請求の範囲】
【請求項１】
第１および第２の通信網間のデータ通信を中継する中継手段と、
データを書き換え可能に記憶する記憶手段であって、前記第１および第２の通信網の少なくとも一方を介したデータ通信により所定の通信サービスを実現するアプリケーションプログラムと当該アプリケーションプログラムの実行過程で呼び出されるサブプログラムの集合体であるサブプログラムライブラリとを記憶した記憶手段と、
前記アプリケーションプログラムを実行するプログラム実行手段と、
を有することを特徴とする中継装置。
【請求項２】
前記サブプログラムは、多様な種類のアプリケーションプログラムにおいて共通して実行される処理をプログラム実行手段に実行させるプログラムであることを特徴とする請求項１に記載の中継装置。
【請求項３】
前記サブプログラムライブラリには、通信機器に特有なサブプログラムが含まれていることを特徴とする請求項１または請求項２に記載の中継装置。
【請求項４】
前記通信機器に特有なサブプログラムは、
前記中継装置において前記第１通信網に接続されている通信インタフェース部または前記第２通信網に説即されている通信インタフェース部のＩＰアドレスの取得または変更を行うサブプログラム、または、
前記中継装置に接続している通信端末のＭＡＣアドレス一覧を取得するサブプログラムであること特徴とする請求項３に記載の中継装置。
【請求項５】
前記中継手段によるデータ通信の中継と前記通信サービスとには各々優先順位が定められており、
前記中継手段によるデータ通信の中継と前記プログラム実行手段による前記アプリケーションプログラムの実行の一方の実行中に他方の実行が発生した場合には、優先順位の高い方の実行が完了するまで他方の実行を見合わせる
ことを特徴とする請求項１〜４の何れか１項に記載の中継装置。
【請求項６】
前記第１の通信網と前記第２の通信網の少なくとも一方は、無線通信網であることを特徴とする請求項１〜５の何れか１項に記載の中継装置。
【請求項７】
前記記憶手段へアプリケーションプログラムをインストール可能であることを特徴とする請求項１〜６の何れか１項に記載の中継装置。
【請求項８】
前記記憶手段に記憶されているアプリケーションプログラムを差し替え可能であることを特徴とする請求項１〜７の何れか１項に記載の中継装置。
【請求項９】
第１および第２の通信網に接続された中継装置に、前記第１および第２の通信網間のデータ通信を中継させる中継ステップと、
データを書き換え可能に記憶する記憶手段であって、前記第１および第２の通信網の少なくとも一方を介したデータ通信により所定の通信サービスを実現するアプリケーションプログラムと当該アプリケーションプログラムの実行過程で呼び出されるサブプログラムの集合体であるサブプログラムライブラリとを記憶した記憶手段に記憶された前記アプリケーションプログラムを前記中継装置に実行させるプログラム実行ステップと、
を含むことを特徴とする方法。
【請求項１０】
コンピュータを第１および第２の通信網に接続された中継装置として機能させるプログラムであって、
前記コンピュータに、
第１および第２の通信網間のデータ通信を中継する中継ステップと、
データを書き換え可能に記憶する記憶手段であって、前記第１および第２の通信網の少なくとも一方を介したデータ通信により所定の通信サービスを実現するアプリケーションプログラムと当該アプリケーションプログラムの実行過程で呼び出されるサブプログラムの集合体であるサブプログラムライブラリとを記憶した記憶手段に記憶された前記アプリケーションプログラムを実行するプログラム実行ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、通信網を介した各種サービスの提供を支援する技術に関する。
【背景技術】
【０００２】
近年では、電子メールサービスやファイル共有サービスなど通信網を介したデータ通信により実現される各種サービスの利用が可能となっている。また、企業等においてはこの種のサービスを従業者に提供し、業務効率を向上させることも一般に行われている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−２５４４３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
この種のサービスの提供を行うには、そのサービスを実現するアプリケーションプログラム（すなわち、そのサービスを実現するデータ通信をコンピュータに実行させるプログラム）を実行するコンピュータ（以下、サーバ装置）を、ルータなどの中継装置を介して通信網に接続しておく必要がある。また、提供するサービスの内容によって通信網における盗聴に充分に注意を払うなど、セキュリティの確保に充分に留意する必要がある。このため、個人や中小企業などの資力の乏しい者にとっては、アプリケーションプログラムを実行するサーバ装置を別途用意したり、セキュリティ確保に充分な注意を払うために専門技術者を雇ったりすることが難しい場合が多く、通信網を介した各種サービスの提供を手軽に行えないといった問題があった。
【０００５】
特許文献１には、アプリケーションプログラムが予め組み込まれた通信機器の発明が開示されているが、特許文献１に開示の通信機器ではユーザがアプリケーションプログラムの追加や削除、変更等を自由に行うことはできない。このため、特許文献１に開示の通信機器を用いたとしても、ユーザが所望のサービスを自由に提供できる訳ではない。
【０００６】
本発明は以上に説明した課題に鑑みて為されたものであり、通信網を介した各種サービスをユーザが自由かつ手軽に提供できるようにする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本発明は、第１および第２の通信網間のデータ通信を中継する中継手段と、データを書き換え可能に記憶する記憶手段であって、前記第１および第２の通信網の少なくとも一方を介したデータ通信により所定の通信サービスを実現するアプリケーションプログラムと当該アプリケーションプログラムの実行過程で呼び出されるサブプログラムの集合体であるサブプログラムライブラリとを記憶した記憶手段と、前記アプリケーションプログラムを実行するプログラム実行手段と、を有することを特徴とする中継装置、を提供する。
【０００８】
このような中継装置によれば、アプリケーションプログラムを実行するためのサーバ装置を別途用意する必要はない。また、本発明では、中継装置においてアプリケーションプログラムが実行されるため、盗聴の心配がなく、セキュリティ確保に特段の配慮を払う必要もない。これに加えて、本発明によれば、サーバ装置に割り振る通信アドレスを確保する必要がなく、通信アドレスを節約することができるといった効果もある。特に、上記通信アドレスがＩＰｖ４（Internet Protocol
version 4）のＩＰ（Internet Protocol）アドレスである場合には、その枯渇が大きな問題となっているため、サーバ装置に割り振るＩＰアドレスを節約できることのメリットは大きい。また、本発明によれば、従来の通信システムにおいて通信網を介して行われていた中継装置−サーバ間のデータ通信は中継装置内の内部バスを介した通信に置き換えられるため、上記通信網におけるトラヒックを軽減できるといった効果も期待される。そして、本発明の中継装置においては、引用文献１に開示の通信機器とは異なり、記憶手段に記憶させるアプリケーションプログラムをユーザの所望に応じて自由に書き換えることができる。また、上記サブプログラムライブラリとして、多様な種類のアプリケーションプログラムにおいて共通して実行される処理をプログラム実行手段に実行させるサブプログラムの集合体を用意しておき、その呼び出し仕様をＡＰＩ（Application Program Interface）として公開しておけば、当該サブプログラムをユーザが逐一作成する手間を省くことができる。このため、本発明によれば、通信網を介した各種サービスの提供をユーザが自由かつ手軽に実現できるようになる。
【０００９】
より好ましい態様においては、前記プログラム実行手段は、前記アプリケーションプログラムの実行過程で呼び出されるサブプログラムが前記中継手段によるデータ通信の中継に支障を生じさせる特定の処理を含むプログラムである場合には、前記中継手段によりデータ通信を中継中であるか否かを判定し、中継中である場合にはそのデータ通信が完了するまで前記特定の処理の実行を見合わせることを特徴とする。このような態様によれば、プログラム実行手段に実行させるアプリケーションプログラムに、中継手段によるデータ通信の中継に支障を生じさせる特定の処理が含まれていたとしても、中継手段によるデータ通信の中継中あれば、そのデータ通信が完了するまで当該特定の処理の実行は見合わせられる。ここで、中継手段によるデータ通信の中継に支障を生じさせる特定の処理の具体例としては、そのデータ通信の中継の際に使用されるパラメータ（例えば、当該中継装置の通信アドレスなど）を書き換える処理や中継装置を再起動する処理が挙げられる。このため、本発明によれば、ユーザが特段の注意を払わなくても、当該特定の処理の実行に起因する不具合（中継中のデータ通信の途絶など）の発生を回避することが可能になる。
【００１０】
さらに別の好ましい態様においては、前記中継手段によるデータ通信の中継と前記プログラム実行手段にアプリケーションプログラムを実行させることで実現される通信サービスには各々優先順位が定められており、前記データ通信の中継と前記通信サービスとが競合した場合には、優先順位の高い方が完了するまで他方の実行を見合わせることを特徴とする。このような態様によれば、中継手段によるデータ通信の中継とアプリケーションプログラムの実行により実現されるサービスのうち優先順位の高い方が他方によって阻害されることを防止することができる。なお、さらに好ましい態様においては、前記中継手段によるデータ通信の中継と前記プログラム実行手段にアプリケーションプログラムを実行させることで実現される通信サービスの各々の優先順位を時刻毎に定めておくとともに、現在時刻を取得する時刻取得手段（例えば、リアルタイムクロックやＧＰＳ受信機）を上記中継装置に設け、当該時刻取得手段により取得された時刻に応じた優先順位を用いて上記競合回避を実現するようにしても良い。
【００１１】
また、上記課題を解決するための別の態様としては、第１および第２の通信網間のデータ通信を中継する中継ステップと、前記第１および第２の通信網の少なくとも一方を介したデータ通信により所定の通信サービスを実現するアプリケーションプログラムと当該アプリケーションプログラムの実行過程で呼び出されるサブプログラムの集合体であるサブプログラムライブラリとが予め記憶された記憶手段から前記アプリケーションプログラムを読み出して実行するプログラム実行ステップを、前記第１および第２の通信網に接続された中継装置の制御部に並列に実行させる方法が考えられる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態の中継装置１０を含む通信システムの構成例を示すブロック図である。
【図２】同中継装置１０の構成例を示すブロック図である。
【図３】同中継装置１０の制御部１１０により実現される機能を説明するための機能ブロック図である。
【図４】同中継装置１０の動作例を説明するための図である。
【図５】同中継装置１０の他の動作例を説明するための図である。
【図６】データ通信の中継に支障を生じさせる処理を含むＡＰＩの実行過程を説明するための図である。
【発明を実施するための形態】
【００１３】
以下図面を参照しつつ本発明の実施形態を説明する。
（Ａ：構成）
図１は、本発明の一実施形態の中継装置１０を含む通信システムの構成例を示す図である。この通信システムは、小売店などの店舗内に敷設された店舗内無線ＬＡＮ（Local Area Network）を含んでいる。この店舗内無線ＬＡＮは中継装置１０を介してインターネット２０に接続されている。中継装置１０は無線ＬＡＮルータであり、無線端末３０を収容する。無線端末３０は上記店舗の従業者の使用するタブレット端末である。図１では、無線端末３０が１つだけ例示されているが、複数の無線端末３０が上記店舗内無線ＬＡＮに含まれていても良い。図１では、詳細な図示を省略したが、店舗内無線ＬＡＮには無線端末３０に対してＩＰアドレスの割り当てを行うためのＤＨＣＰ（Dynamic
Host Configuration Protocol）サーバが含まれている。このＤＨＣＰサーバには、ＩＰアドレスの割り当てを受けた無線端末３０のＭＡＣ（Media Access Control）アドレスに対応付けて、その無線端末３０に割り当てたＩＰアドレスが記憶されている。
【００１４】
中継装置１０は、一般的な無線ＬＡＮルータとして機能するとともに、所謂データベースサーバとして機能する。より詳細に説明すると、図１の中継装置１０の記憶部には、上記店舗において販売される各種商品の情報（商品を一意に示す商品識別子（例えば、商品の名称や型番を表す文字列等）や商品の仕様を説明した説明文の文字列、価格など：以下、商品情報）を記憶したデータベース（以下、商品データベース：図１では図示略）が格納されている。インターネット２０には商品の製造・販売元等によって運営される製造・販売元データベース４０が接続されている。製造・販売元データベース４０にはその運営元の製造・販売する商品についての最新の商品情報が格納されている。中継装置１０は、製造・販売元データベース４０にアクセスし、商品データベースの格納内容を最新の状態に更新（すなわち、新たな商品情報の追加等）するとともに、更新後の商品データベースの格納内容を無線端末３０に送信し、ローカル商品データベースとして記憶させる。無線端末３０のユーザ（すなわち、上記店舗の従業者）は、ローカル商品データベースの格納内容を参照することで、各種商品の仕様等を顧客に対して迅速かつ手軽に説明することができる。つまり、図１に示す店舗内無線ＬＡＮは、最新の商品情報を各従業者に共有させる情報共有サービスを実現するためのものである。
【００１５】
従来、このような情報共有サービスを実現するには、データベースサーバとして機能するサーバ装置を中継装置１０とは別個に店舗内無線ＬＡＮに設けて置くことが一般的であった。これに対して、本実施形態では、中継装置１０にデータベースサーバの役割を兼ねさせている点に特徴がある。以下、本実施形態の特徴を顕著に示す中継装置１０を中心に説明する。
【００１６】
図２は、中継装置１０の構成例を示すブロック図である。
図２に示すように中継装置１０は、制御部１１０、第１通信インターフェース（以下、「Ｉ／Ｆ」と略記）部１２０、第２通信Ｉ／Ｆ部１３０、記憶部１４０、およびこれら構成要素間のデータ授受を仲介するバス１５０を有している。
【００１７】
制御部１１０は例えばＣＰＵ（Central Processing Unit）である。制御部１１０は記憶部１４０に記憶されている各種プログラムを実行することで中継装置１０の制御中枢として機能する。第１通信Ｉ／Ｆ部１２０は無線通信Ｉ／Ｆであり、無線端末３０との間に無線通信リンクを確立し、無線通信リンクの確立先の無線端末を収容する。第１通信Ｉ／Ｆ部１２０は無線区間を介して無線端末３０から送信されてくるパケットを受信して制御部１１０へ引き渡す一方、制御部１１０から与えられるパケットを無線区間へと送出する。第２通信Ｉ／Ｆ部１３０は例えばＮＩＣ（Network Interface Card）であり、インターネット２０に接続されている。第２通信Ｉ／Ｆ部１３０は、インターネット２０から送信されてくるパケットを受信して制御部１１０に引き渡す一方、制御部１１０から引き渡されたパケットをインターネット２０へ送出する。
【００１８】
記憶部１４０は、図２に示すように、揮発性記憶部１４２と、不揮発性記憶部１４４とを含んでいる。揮発性記憶部１４２は例えばＲＡＭ（Random Access Memory）である。この揮発性記憶部１４２は、各種プログラムを実行する際のワークエリアとして制御部１１０によって利用される。一方、不揮発性記憶部１４４は、データの書き換えが可能な不揮発性メモリである。本実施形態では、不揮発性記憶部１４４としてフラッシュメモリが用いられている。
【００１９】
不揮発性記憶部１４４には、前述した商品データベースが格納されている。また、不揮発性記憶部１４４には、中継装置１０の機能（すなわち、無線ＬＡＮルータ機能および上記情報共有サービスにおけるデータベースサーバ機能）を実現するための各種プログラムが記憶されている。不揮発性記憶部１４４に記憶されているプログラムの具体例としては、ＯＳ（Operating System）プログラム、中継制御プログラム、データベースサーバプログラムおよびＡＰＩライブラリが挙げられる。
【００２０】
ＯＳプログラムは、所謂マルチタスクＯＳを制御部１１０に実現させるプログラムである。本実施形態では、ＯＳプログラムとしてＬｉｎｕｘ（登録商標）が用いられているが、マルチタスクＯＳを制御部１１０に実現させるものであれば、Ｌｉｎｕｘ（登録商標）に限定されるものではない。制御部１１０は、中継装置１０の電源（図示略）投入を契機として、ＯＳプログラムを不揮発性記憶部１４４から揮発性記憶部１４２に読み出し、その実行を開始する。ＯＳプログラムにしたがって作動し、ＯＳを実現している状態の制御部１１０は、予め定められたスケジュールにしたがって、或いは外部から与えられる指示に応じて、記憶手段（本実施形態では、不揮発性記憶部１４４）に記憶されている他のプログラムを実行するプログラム実行手段（図３参照）として機能する。ＯＳを実現している状態の制御部１１０は、複数のプログラムを並列に実行することができる。本実施形態では、ＯＳの実現後、即座に、中継制御プログラムとデータベースサーバプログラムとを不揮発性記憶部１４４から揮発性記憶部１４２に読み出して実行するように予めスケジューリングが為されている。
【００２１】
中継制御プログラムは、第１通信Ｉ／Ｆ部１２０または第２通信Ｉ／Ｆ部１３０の一方を介して受信したパケットを他方へと転送する中継制御処理を制御部１１０に実行させるプログラムである。中継制御プログラムにしたがって作動している制御部１１０は、第１の通信網（本実施形態では、店舗内無線ＬＡＮ）および第２の通信網（本実施形態では、インターネット２０）間のデータ通信を中継する中継手段（図３参照）として機能する。なお、中継制御プログラムにしたがって制御部１１０が実行する中継処理ついては一般的な無線ＬＡＮルータにおけるものと特段に変わるところはないため、詳細な説明を省略する。データベースサーバプログラムは、製造・販売元データベース４０の格納内容を参照して商品データベースの格納内容を最新の状態に更新するとともに、各無線端末３０のローカル商品データベースの格納内容を最新の状態に更新する処理を制御部１１０に実行させるアプリケーションプログラムである。制御部１１０がデータベースサーバプログラムにしたがって実行する処理の詳細については重複を避けるため、動作例において明らかにする。本実施形態では、中継手段（図３参照）によるデータ通信の中継とプログラム実行手段（図３参照）によるアプリケーションプログラム（本実施形態では、データベースサーバプログラム）の実行とが並列に実行される。
【００２２】
ＡＰＩライブラリは、アプリケーションプログラムの種類を問わずに共通して利用される可能性の高い各種サブプログラムの集合体（すなわち、サブプログラムライブラリ）である。ＡＰＩとは、本来、これらサブプログラムを呼び出す際の書式のことを意味するが、本明細書では慣習にしたがい、これらサブプログラムそのものについてもＡＰＩと称する。本実施形態のＡＰＩライブラリに含まれるＡＰＩの一例としては、ハードウェア（本実施形態では、中継装置１０）の機器情報やハードウェアの周囲の環境情報を取得するＡＰＩ、ハードウェアの動作設定の変更を行うためのＡＰＩが挙げられる。具体的には、制御部１１０（すなわち、ＣＰＵ）の使用率や揮発性記憶部１４２（すなわち、メモリ）の使用率を取得するＡＰＩ、中継装置１０の筐体内の温度を計測するＡＰＩ、ランニングｃｏｎｆｉｇの読み出し更新および保存を行うＡＰＩ、動作ログを読み出すＡＰＩ、中継装置１０を再起動させるＡＰＩなどが挙げられる。
【００２３】
また、ＡＰＩライブラリには、そのインストール先のハードウェアならではのＡＰＩが含まれている。すなわち、本実施形態のＡＰＩライブラリには、通信機器ならではＡＰＩが含まれている。通信機器ならではのＡＰＩの具体例としては、中継装置１０に接続している無線端末３０のＭＡＣアドレス一覧を取得するＡＰＩ（以下、ＭＡＣアドレスリスト取得ＡＰＩ）、第１通信Ｉ／Ｆ部１２０或いは第２通信Ｉ／Ｆ部１３０のＩＰアドレスを取得・変更するＡＰＩが挙げられる。本実施形態では、これら各種のＡＰＩが予めＡＰＩライブラリとして用意され、各ＡＰＩの呼び出し仕様が公開されている。このため、アプリケーションプログラムの作成の際には各ＡＰＩを呼び出すためのコードを上記仕様にしたがってコーディングしておけば良く、これらＡＰＩにより実現される処理の手順を逐一コーディングする必要はない。このため、アプリケーションプログラムの作成の手間が軽減される。
以上が中継装置１０の構成である。
【００２４】
（Ｂ：動作）
次いで、データベースサーバプログラムにしたがって制御部１１０が実行する動作について図４を参照しつつ説明する。データベースサーバプログラムにしたがって作動している制御部１１０は、まず、インターネット２０を介して製造・販売元データベース４０と通信し、最新のデータをダウンロードして商品データベースの格納内容を更新する（図４：ステップＳＡ１００）。ここで、最新のデータであるか否かの判定については、データ毎にそのデータのバージョン（版数）を示すバージョン情報を対応付けて製造・販売元データベース４０に格納しておき、商品データベースに格納されているものより新しいバージョンを示すバージョン情報を対応付けられているデータを最新のデータと判定するようにすれば良い。なお、製造・販売元データベース４０に最新のデータが格納されていない場合には、ステップＳＡ１００以降の処理をスキップしても良い。
【００２５】
次いで、制御部１１０は、自装置に接続している無線端末３０のＩＰアドレスを取得する（図４：ステップＳＡ１１０）。より詳細に説明すると、制御部１１０は、自装置に接続している無線端末３０のＭＡＣアドレスの一覧を前述したＭＡＣアドレスリスト取得ＡＰＩを用いて取得する。そして、制御部１１０は、このようにして取得した各ＭＡＣアドレスに対応するＩＰアドレスを店舗内無線ＬＡＮのＤＨＣＰサーバ（図示略）より取得する。なお、ＩＰアドレスを取得できない無線端末３０があった場合には、当該無線端末３０のＭＡＣアドレスを宛先としてスリープ解除信号を送信し、当該無線端末３０によるＩＰアドレスの取得を待って再度ＤＨＣＰサーバへの問い合わせを行う。
【００２６】
次いで、制御部１１０は、ステップＳＡ１１０にて取得した各ＩＰアドレスを宛先として商品データベースの格納内容を店舗内無線ＬＡＮ経由で送信し、当該ＩＰアドレスの示す無線端末３０に対してローカル商品データベースの更新を指示する（ステップＳＡ１２０）。なお、商品データベースの格納内容の送信に先立って各無線端末３０にローカル商品データベースに格納されているデータのバージョンを問い合わせ、最新のバージョンのローカル商品データベースを有している無線端末３０に対しては商品データベースの格納内容の送信を省略しても勿論良い。以上に説明する動作が為される結果、中継装置１０の商品データベースの格納内容と各無線端末３０のローカル商品データベースの格納内容とが最新の状態に一括更新される。
【００２７】
本実施形態によれば、店舗の開店時刻前の所定の時刻に中継装置１０の電源を投入し、閉店時刻後に中継装置１０の電源を切断するようにすれば、営業時間中は常に最新の商品情報を上記店舗の従業者に共有させることが可能となる。なお、上記所定の時刻にデータベースサーバプログラムが実行されるようにスケジューリングを行っておけば、中継装置１０の電源を常時投入しておいたとしても同様の効果が得られる。
【００２８】
本実施形態では、データベースサーバとして機能するサーバ装置を店舗内無線ＬＡＮに別途設けることなく、商品データベースの格納内容と各無線端末３０のローカル商品データベースの格納内容とを最新の状態に一括更新し、各従業者に最新の商品情報を共有させることが可能になる。このようにデータベースサーバとして機能するサーバ装置を別途用意する必要がないため、上記店舗の経営者が個人または中小企業などの資力の乏しい者であっても、商品情報についての情報共有サービスを手軽に実現することが可能になる。また、本実施形態では、中継装置１０における商品データベースの格納先の記憶装置としてフラッシュメモリが用いられており、この点にも本実施形態の特徴の１つがある。従来のサーバ装置では、この種の記憶装置としてハードディスクドライブが用いられることが一般的であったが、ハードディスドライブに関してはモータなどの機構部の故障に充分に注意を払わなければならない（例えば、ハードディスクドライブの格納内容を定期的に他の記録媒体に記録する等）という欠点があった。これに対して、フラッシュメモリはモータなどの機構部を有していないため、上記のような注意を払う必要はない。この点から見ても、本実施形態によれば、商品情報についての情報共有サービスを手軽に実現することが可能になる。なお、本実施形態では、店舗内無線ＬＡＮの敷設された店舗の従業者を対象として情報共有サービスを行う場合について説明したが、上記店舗の来店者に対しても情報共有サービスを提供するようにしても良い。また、本実施形態では商品情報の共有を実現する場合について説明したが、他の種類の情報の共有に本発明を適用しても良いことは言うまでもない。
【００２９】
前述したように、中継装置１０をデータベースサーバとして機能させるアプリケーションプログラムであるデータベースサーバプログラムは不揮発性記憶部１４４に記憶されており、不揮発性記憶部１４４はデータの書き換えが可能な不揮発性メモリである。このため、本実施形態では、不揮発性記憶部１４４に記憶されているアプリケーションプログラムを差し替えることで、中継装置１０に他の通信サービスを提供させることが可能である。例えば、不揮発性記憶部１４４に記憶されているデータベースサーバプログラムを、図５に示すファイル共有処理を制御部１１０に実行させるファイル共有サーバプログラムに差し替えることで、中継装置１０をファイル共有サーバとして機能させることができる。なお、中継装置１０にインストールする各種アプリケーションプログラムについては、中継装置１０の製造元或いは当該製造元よる許諾を受けたサードパーティにインターネット２０経由で適宜配布させるようにすれば良い。
【００３０】
図５は、ファイル共有処理の流れを示すフローチャートである。ファイル共有サーバプログラムにしたがって作動している制御部１１０は、図５に示すように、無線端末３０からのファイルへのアクセス要求を待ち受けている（ステップＳＢ１００）。制御部１１０は、店舗内無線ＬＡＮ経由でアクセス要求を受信する（ステップＳＢ１００：Ｙｅｓ）と当該無線端末３０が属するネットワークアドレスを特定する（ステップＳＢ１１０）。このネットワークアドレスの特定についても、予めＡＰＩを用意しておけば良い。なお、アクセス要求の送信元となる端末を収容する通信網が本実施形態におけるもののように無線ＬＡＮである場合には、ネットワークアドレスの代わりにＳＳＩＤを用いても良い。ネットワークアドレスの代わりにＳＳＩＤを用いる場合には、例えば上記店舗の従業者にはスタッフ用ＳＳＩＤを割り当てておき、来客にはスタッフ用ＳＳＩＤとは異なるゲスト用ＳＳＩＤを割り当てておけば良い。
【００３１】
制御部１１０は、ステップＳＢ１１０にて特定したネットワークアドレスがゲスト用のアドレスであるか否かを判定し（ステップＳＢ１２０）、その判定結果がＮｏであればアクセス要求を受け入れ、ステップＳＢ１３０以降の処理を実行する。逆に、ゲスト用のアドレスであれば（ステップＳＢ１２０：Ｙｅｓ）、制御部１１０はアクセス要求を破棄し（ステップＳＢ１５０）、ステップＳＢ１００以降の処理を繰り返す。
【００３２】
ステップＳＢ１２０の判定結果がＮｏである場合に実行されるステップＳＢ１３０では、制御部１１０は、アクセス要求によるアクセス先のファイルをそのアクセス要求の送信元の無線端末３０へ送信し、当該ファイルの内容を表示させる。なお、アクセス要求によるアクセス先のファイルが自身の公開ディレクトリに格納されていない場合には、制御部１１０は当該ファイルをインターネット２０経由で取得し、上記公開ディレクトリへ格納した後にアクセス要求の送信元への転送を行う。このようにして公開ディレクトリに格納したファイルについては、制御部１１０は、上記アクセス要求の送信元との通信セッションの切断を契機として公開ディレクトリから削除する。以降、制御部１１０は、ファイル共有サービスの終了を指示されたか否かを判定し（ステップＳＢ１４０）、その判定結果がＮｏであればステップＳＢ１００以降の処理を繰り返す。これにより、ファイル共有サービスが実現される。
【００３３】
前述したように、データベースサーバプログラムやファイル共有サーバプログラムなどのアプリケーションプログラムの実行過程では、各種のＡＰＩの呼び出しが行われるのであるが、これらＡＰＩの中には、中継手段によるデータ通信の中継中に実行されるとそのデータ通信の中継に支障を生じさせる特定の処理を含むものがある。具体的には、中継装置１０の再起動をするＡＰＩや、データ通信の中継の際に使用されるパラメータを書き換えるＡＰＩである。本実施形態では、これらデータ通信に支障を生じさせる特定の処理を実行するＡＰＩについては、データ通信の中継中に呼び出されたとしても、そのデータ通信が完了するまでその処理の実行を見合わせるように構成されており、この点にも本実施形態の特徴の一つがある。
【００３４】
例えば、図６は、自装置を再起動するＡＰＩにしたがって制御部１１０が実行する処理の流れを示すフローチャートである。このＡＰＩがアプリケーションプログラムから呼び出されると、制御部１１０は、まず、データ通信を中継中であるか否かを判定する（ステップＳＣ１００）。ここで、データ通信を中継中であるか否かの判定については、既存の技術を用いれば良く、また、当該判定処理をＡＰＩ化しておいても良い。ステップＳＣ１００の判定結果が“Ｙｅｓ”であれば、制御部１１０は所定時間（例えば、１秒など）のスリープ（ステップＳＣ１１０）を行った後に再度ステップＳＣ１００以降の処理を実行する。逆に、ステップＳＣ１００の判定結果が“Ｎｏ”であれば、制御部１１０は、自装置の再起動を行う（ステップＳＣ１２０）。なお、中継手段によるデータ通信の中継の際に使用されるパラメータを書き換えるＡＰＩについても同様の流れ（ステップＳＣ１２０にてパラメータの更新を行う）で良いが、この場合はパラメータの更新に先立って中継制御プロセスを一旦休眠させ、パラメータ更新後に再開させるようにすることが好ましい。パラメータの更新中に新たなデータ通信の中継が開始されることを回避するためである。
【００３５】
このように、本実施形態では、データ通信に支障を生じさせる特定の処理を実行するＡＰＩについては、データ通信の中継中に呼び出されたとしても、そのデータ通信が完了するまでその処理の実行を見合わせるように構成されているため、中継装置１０のユーザは、中継装置１０にインストールしようとするアプリケーションプログラムがこれらＡＰＩを呼び出すものであるか否か（すなわち、アプリケーションプログラムの実行過程で中継装置１０の再起動等を発生させるプログラムであるか否か）に配慮する必要はない。このため、本実施形態によれば、通信網を介した各種サービスをユーザが手軽に実現することが可能になる。
【００３６】
（Ｃ：変形）
以上本発明の一実施形態について説明したが、この実施形態に以下の変形を加えても勿論良い。
（１）上記実施形態では、データ通信の中継に支障を生じさせる特定の処理の一例として、中継装置１０を再起動する処理、および通信アドレス等の通信パラメータの書き換えを発生させる処理を挙げた。これらの他にも、第１通信Ｉ／Ｆ部１２０或いは第２通信Ｉ／Ｆ部１３０の起動／停止、ルーティング情報の更新、ＶｏＩＰパラメータの更新や暗号化アルゴリズムの更新を行う場合には、同様の不具合が発生し得るため、中継中のデータ通信が完了するまでこれらの処理の実行を見合わせるようにすることが好ましい。また、制御部１１０に複数種のアプリケーションプログラムを並列に実行させる場合には、システム時刻を参照するアプリケーションプログラムの実行中にシステム時刻を更新するアプリケーションプログラムが実行される場合や、不揮発性記憶部１４４へのデータの書き込みを行うアプリケーションプログラムの実行中に中継装置１０の再起動を行うアプリケーションプログラムが実行される場合などに同様の不具合が生じ得る。このため、アプリケーションプログラム間でも同様の調停（他のアプリケーションプログラムが実行中であればシステム時刻の更新を見合わせるなど）を行うようにしても良い。
【００３７】
（２）中継手段によるデータ通信の中継とプログラム実行手段にアプリケーションプログラムを実行させることで実現される通信サービスの各々に予め優先順位を定めておき、データ通信の中継と通信サービスとが競合した場合には、優先順位の高い方が完了するまで他方の実行を見合わせるようにしても良い。例えば、アプリケーションプログラムにより実現される通信サービスがリアルタイム性の要求されるものでないならば、中継制御の優先順位を高くしておくことで、データ通信の閑散期にアプリケーションプログラムが集中的に実行されるようにすることができ、アプリケーションプログラムの実行による中継制御への影響を最小限に抑えることが可能になる。また、店舗の営業時間内は通信サービスの優先順位を中継制御の優先順位よりも高く設定しておき、営業時間外では逆に設定するなど時刻毎に上記優先順位を定めておけば、よりきめ細やかな優先制御を実現することが可能になる。
【００３８】
（３）上記実施形態では不揮発性記憶部１４４をフラッシュメモリにより構成する場合について説明したが、ハードディスクドライブにより構成しても勿論良い。また、不揮発性記憶部１４４を、データの書き換えが可能な不揮発性メモリ（例えば、フラッシュメモリ）とデータの書き換えができない不揮発性メモリ（例えば、ＲＯＭ）により構成し、アプリケーションプログラムなどユーザが自由に更新できることが好ましいプログラムを前者に記憶させ、ＯＳプログラムや中継制御プログラムなど更新の必要性の低いプログラムを後者に記憶させるようにして良い。要は、アプリケーションプログラムが、データの書き換えが可能な記憶部に記憶されている態様であれば良い。
【００３９】
（４）上記実施形態では、ＡＰＩライブラリを予め用意しておくことで、アプリケーションプログラムの開発に要する手間を軽減する場合について説明したが、ＡＰＩライブラリの実装を省略しても勿論良い。ただし、この場合、データ通信に支障を生じさせる特定の処理を含むアプリケーションプログラムについては、当該特定の処理の実行に先立って、中継手段によりデータ通信を中継中であるか否かを判定し、中継中であればそのデータ通信が完了するまで当該特定の処理の実行を見合わせるように作成されていることが好ましい。
【００４０】
（５）上記実施形態では、データ通信を中継する中継手段とアプリケーションプログラムを実行するプログラム実行手段とをソフトウェアモジュールにより実現する場合について説明したが、中継手段をプログラム実行手段とは別個独立のハードウェアモジュール（ＡＳＩＣなど）により実現しても勿論良い。また、上記実施形態では有線通信網と無線通信網に接続される無線ＬＡＮルータへの本発明の適用例を説明したが、２つの無線通信網に接続される無線ルータや２つの有線通信網に有線接続されるルータに本発明を適用しても良い。また、本発明の適用対象となる中継装置は、ルータ（すなわち、ＯＳＩ参照モデルの第３層においてデータ通信を中継する中継装置）に限定されるものではなく、スイッチングハブ（ＯＳＩ参照モデルの第２層においてデータ通信を中継する中継装置）やゲートウェイ（ＯＳＩ参照モデルの第４層以上の階層においてデータ通信を中継する中継装置）、無線アクセスポイント装置などのブリッジに本発明を適用しても良い。
【００４１】
（６）上記実施形態では、制御部１１０にアプリケーションプログラムを実行させることで実現されるサービスの一例として、データベース等の一括更新による情報共有サービス、およびファイル共有サービスを説明したが、これらに限られるものではなく、例えば、電子メールサービス（すなわち、中継装置１０をメールサーバとして機能させる）であっても良い。要は、インターネット２０と店舗内無線ＬＡＮの少なくとも一方を介したデータ通信により実現されるサービスであれば良い。なお、インターネット２０と店舗内無線ＬＡＮの少なくとも一方を介したデータ通信により実現されるサービスを制御部１１０に実現させるプログラムの他に（或いは、当該プログラムに代えて）、中継装置１０の設定情報ファイルを書き換えるためのテキストエディッタや、住所録管理プログラムを、制御部１１０に実行させるアプリケーションプログラムとして不揮発性記憶部１４４に記憶させておいても良い。
【符号の説明】
【００４２】
１０…中継装置、１１０…制御部、１２０…第１通信Ｉ／Ｆ部、１３０…第２通信Ｉ／Ｆ部、１４０…記憶部、１４２…揮発性記憶部、１４４…不揮発性記憶部、２０…インターネット、３０…無線端末、４０…製造・販売元データベース。
【図１】
2018160281.tif 000003
【図２】
2018160281.tif 000004
【図３】
2018160281.tif 000005
【図４】
2018160281.tif 000006
【図５】
2018160281.tif 000007
【図６】
2018160281.tif 000008