(57)【要約】【課題】  データ通信に利用されている通信網の混み具合を悪化させることなく、その通信網における遅延を通信方向毎に正確に計測することを可能にする。【解決手段】  通信網を介して通信する受信装置と送信装置に、通信の開始に先立って、各々の内部時計の時刻合わせを行っておく。そして、送信装置は、受信装置へ送信するデータに上記時刻合わせ済みの内部時計により取得した送信時刻を表す時刻データを付加して送信する。一方、受信装置は、送信装置から送信されたデータを受信した場合に、その受信時刻を上記時刻合わせ済みの内部時計を用いて取得するとともに、その受信時刻とそのデータに付加されている時刻データの表す送信時刻との時間差を算出して上記通信網における下り方向の遅延を計測する。【選択図】  図１
2006237865.tif 000002
【特許請求の範囲】
【請求項１】
時計部と、
通信網を介して相手装置とのデータ通信を開始することに先立って、前記時計部により計時される時刻が所定の基準時刻に一致するように前記時計部の時刻合わせを行う時刻合わせ手段と、
前記通信網を介して前記相手装置へデータを送信する際に、前記時刻合わせ手段により時刻合わせ済みの前記時計部を用いてその送信時刻を取得しそのデータにその送信時刻を表す時刻データを付加して送信する送信手段と、
を有する通信装置。
【請求項２】
前記送信手段は、
所定の通信プロトコルにしたがって所定の送信速度でデータを送信し、
前記送信手段により送信されたデータが前記通信網を介して前記相手装置へ到達するまでに要した時間に応じた通知が前記相手装置から送信されてきた場合に、前記通信プロトコルと前記送信速度との少なくとも一方をその通知の内容に応じて切替える切替え手段をさらに有する
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
時計部と、
通信網を介して相手装置とのデータ通信を開始することに先立って、前記時計部により計時される時刻が所定の基準時刻に一致するように前記時計部の時刻合わせを行う時刻合わせ手段と、
前記通信網を介して前記相手装置から送信されてくるデータを受信する一方、その受信時刻を前記時刻合わせ手段により時刻合わせ済みの前記時計部を用いて取得する受信手段と、
前記受信手段により受信されたデータにその宛先に応じた第１の処理を施す一方、そのデータに時刻を表す時刻データが付加されていた場合には、その時刻データの表す時刻と前記受信時刻との時間差を算出し、その時間差に応じた第２の処理を実行する処理実行手段と、
を有する通信装置。
【請求項４】
前記第２の処理は、
前記時刻データの表す時刻と前記受信時刻との時間差を所定の閾値と比較し、その比較結果に応じて、前記相手装置へ所定の通知を送信する処理である
ことを特徴とする請求項３に記載の通信装置。
【請求項５】
前記処理実行手段により算出される前記時間差を記憶する記憶手段を備え、
前記第２の処理は、
新たに算出された時間差と前記記憶手段に記憶されている時間差との差を所定の閾値と比較し、その比較結果に応じて、前記相手装置へ所定の通知を送信する処理である
ことを特徴とする請求項３に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信網を介して行われるデータ通信に関し、特に、その通信網にかかっている負荷を検出する技術に関する。
【背景技術】
【０００２】
通信網に接続されているコンピュータ装置などの通信装置間で行われるデータ通信においては、その通信網にかかっている負荷（例えば、その通信網の混み具合）を、送信装置などデータの送り手側の通信装置に検出させることができると便利である。その理由は、以下の通りである。
受信装置などデータの受け手側の通信装置と送信装置の間に介在する通信網にかかっている負荷が高い状況下で、データの送信をそのまま継続させてしまうと、その通信網に輻輳を生じさせ、輻輳によるデータの消失を発生させてしまう虞がある。これに対して、通信網にかかっている負荷を送信装置に検出させることができたならば、検出された負荷の度合いに応じてデータの送信速度を切替えるなど、その負荷が高くなりすぎることを回避しつつ確実なデータ通信を行うこと（すなわち、データをその宛先へ確実に送り届けること）が可能になるからである。
【０００３】
通信網にかかっている負荷を検出することを可能にする技術については、従来より種々提案されており、その一例としては、ｐｉｎｇ（Packet INternet Groper）パケットの折り返しに要する時間を計測することによって上記通信網にかかっている負荷を検出する技術が挙げられる（例えば、特許文献１）。より詳細に説明すると、特許文献１には、送信装置にｐｉｎｇパケットを送信させるとともに、そのｐｉｎｇパケットに対する応答がその通信相手である受信装置から返信されてくるまでに要した時間を計測させることが開示されている。一般に、通信網にかかっている負荷が高いほど、上記時間は長くなるため、上記時間を計測することによって、その通信網にかかっている負荷を検出することが可能になる。
【特許文献１】特開平８−２９８５２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示された技術を用いた場合に計測される時間は、送信装置から送信されたｐｉｎｇパケットが受信装置へ到達するまでに要した時間と、そのｐｉｎｇパケットに対する応答が受信装置から送信されてから送信装置へ到達するまでに要した時間との合計値である。このため、特許文献１に開示された技術では、送信装置から受信装置へ向かう方向（以下、下り方向）の通信に要する時間（以下、「遅延」ともいう）と、その逆方向（以下、上り方向）の遅延とをそれぞれ正確に計測することはできない。このように、通信方向毎の遅延を正確に計測することができないと、例えば、下り方向の遅延のみが大きい場合やその逆の場合など遅延に偏りがある場合に、その偏りに応じて適切な対処を行うことができなくなってしまう。また、ｐｉｎｇパケットの送受信により通信網の混み具合を悪化させ、輻輳を生じさせてしまう虞もある。
本発明は、上記課題に鑑みて為されたものであり、データ通信に利用されている通信網の混み具合を悪化させることなく、その通信網における遅延を通信方向毎に正確に検出することを可能にする技術を提供することを目的としている。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明は、時計部と、通信網を介して相手装置とのデータ通信を開始することに先立って、前記時計部により計時される時刻が所定の基準時刻に一致するように前記時計部の時刻合わせを行う時刻合わせ手段と、前記通信網を介して前記相手装置へデータを送信する際に、前記時刻合わせ手段により時刻合わせ済みの前記時計部を用いてその送信時刻を取得しそのデータにその送信時刻を表す時刻データを付加して送信する送信手段と、を有する通信装置を提供する。
このような通信装置によれば、通信網を介して相手装置へデータを送信することに先立って、上記の如き時計部の時刻合わせが行われる一方、時刻合わせ済みの時計部により取得された送信時刻を表す時刻データを付加したデータがその相手装置へ送信される。このため、上記相手装置が、本通信装置との通信を開始することに先立ってその内部時計により取得される時刻が上記基準時刻に一致するようにその内部時計の時刻合わせを行う通信装置であれば、本通信装置から送信されたデータを受信した場合にその受信時刻を上記時刻合わせ済みの内部時計を用いて取得し、その受信時刻と上記データに付加されている時刻データの表す時刻との時間差を算出することによって、上記通信網における下り方向の遅延を正確に計測することが可能になる。
また、上記相手装置が、本通信装置から送信されたデータを受信した場合にその旨を表す応答を返信する場合には、以下に述べるようにして、上記通信網における下り方向および上り方向の遅延を本通信装置に正確に計測させることが可能になる。すなわち、上記応答に、上記下り方向の遅延を表す遅延データとその送信時刻を表す時刻データを付加して上記相手装置に送信させる。このようにすると、本通信装置は、その応答を受信した場合に、その受信時刻を上記時刻合わせ済みの時計部を用いて取得し、その応答に付加されている時刻データの表す時刻との時間差を算出することで、上記通信網における上り方向の遅延を正確に計測することができる。なお、上記応答に付加されている遅延データを参照することによって、上記通信網における下り方向の遅延を正確に計測することができることは言うまでもない。
【０００６】
より好ましい態様においては、前記送信手段は、所定の通信プロトコルにしたがって所定の送信速度でデータを送信し、前記送信手段により送信されたデータが前記通信網を介して前記相手装置へ到達するまでに要した時間に応じた通知が前記相手装置から送信されてきた場合に、前記通信プロトコルと前記送信速度との少なくとも一方をその通知の内容に応じて切替える切替え手段をさらに有することを特徴とする。このような態様にあっては、上記相手装置から送られてくる通知の内容（例えば、上記通信網における下り方向の遅延）に応じて通信プロトコルと送信速度との少なくとも一方が切替えられ、上記通信網にかかっている負荷の度合いに適した通信プロトコルまたは送信速度でデータを送信することが可能になる。
【０００７】
また、上記課題を解決するために、本発明は、時計部と、通信網を介して相手装置とのデータ通信を開始することに先立って、前記時計部により計時される時刻が所定の基準時刻に一致するように前記時計部の時刻合わせを行う時刻合わせ手段と、前記通信網を介して前記相手装置から送信されてくるデータを受信する一方、その受信時刻を前記時刻合わせ手段により時刻合わせ済みの前記時計部を用いて取得する受信手段と、前記受信手段により受信されたデータにその宛先に応じた第１の処理を施す一方、そのデータに時刻を表す時刻データが付加されていた場合には、その時刻データの表す時刻と前記受信時刻との時間差を算出し、その時間差に応じた第２の処理を実行する処理実行手段と、を有する通信装置を提供する。
このような通信装置によれば、通信網を介して相手装置とのデータ通信を開始することに先立って、上記の如き時計部の時刻合わせが行われる一方、通信網を介して相手装置から送信されてきたデータを受信した場合に、その時刻合わせ済みの時計部を用いてその受信時刻が取得される。そして、そのデータの宛先に応じた第１の処理が実行される一方、そのデータに時刻を表す時刻データが付加されていた場合には、上記受信時刻とその付加データの表す時刻との時間差が算出され、その時間差に応じた第２の処理が実行される。このような態様にあっては、上記相手装置が、本通信装置との通信を開始することに先立って、その内部時計により計時される時刻が上記基準時刻に一致するようにその内部時計の時刻合わせを行い、本通信装置へ宛ててデータを送信する際にその時刻合わせ済みの内部時計を用いてその送信時刻を取得しその送信時刻を表す時刻データを付加して送信する通信装置であれば、その時刻データの表す時刻と上記受信時刻との差を算出することによって、上記通信網における下り方向の遅延が正確に計測され、その計測結果に応じた第２の処理が実行される。
【０００８】
より好ましい態様においては、前記第２の処理は、前記時刻データの表す時刻と前記受信時刻との時間差を所定の閾値と比較し、その比較結果に応じて、前記相手装置へ所定の通知を送信する処理であることを特徴とする。このような態様にあっては、上記時間差（すなわち、上記通信網における下り方向の遅延）が所定の閾値を超えたこと（或いは、下回ったこと）を相手装置へ通知することが可能になる。また、上記時間差を上記通知に書き込んで送信するようにすれば、上記通信網における下り方向の遅延の正確な値を上記相手装置へ通知することが可能になる。さらに、上記通知にその送信時刻を表す時刻データを付加して送信すれば、上記通信網における上り方向の遅延を上記相手装置に正確に計測させることも可能になる。
また、別の好ましい態様においては、前記処理実行手段により算出される前記時間差を記憶する記憶手段を備え、前記第２の処理は、新たに算出された時間差と前記記憶手段に記憶されている時間差との差を所定の閾値と比較し、その比較結果に応じて、前記相手装置へ所定の通知を送信する処理であるとしても良い。
【発明の効果】
【０００９】
本発明によれば、データ通信に利用されている通信網における遅延を通信方向毎に正確に計測することが可能になる、といった効果を奏する。また、本発明によれば、データとともにｐｉｎｇパケットのような遅延検出専用のパケットが通信網に流れることがないため、通信網の混み具合を悪化させることがないといった効果も奏する。
【発明を実施するための最良の形態】
【００１０】
以下、本発明を実施する際の最良の形態について説明する。
（構成）
図１は、本発明に係る通信装置の１実施形態である中継装置を含んでいる通信システム１０の全体構成の１例を示すブロック図である。図１の通信システム１０は、例えば、商社や金融機関、メーカなどの企業内で利用されている社内コンピュータシステムであり、拠点サーバ１００と支店サーバ３００とを含んでいる。図１では、それぞれ１つの拠点サーバと支店サーバが例示されているが、複数の拠点サーバが通信システム１０に含まれているとしても良く、複数の支店サーバが通信システム１０に含まれているとしても勿論良い。
図１において、拠点サーバ１００は、上記企業の本店内に配設されているＬＡＮ（Local Area Network：図示省略）に接続されているコンピュータ装置であり、支店サーバ３００は、上記企業の支店内に配設されているＬＡＮ（図示省略）に接続されているコンピュータ装置である。なお、以下では、本店内に配設されているＬＡＮを「本店内ＬＡＮ」と称し、支店内に配設されているＬＡＮを「支店内ＬＡＮ」と称する。また、詳細な図示は省略したが、上記本店内ＬＡＮや上記支店内ＬＡＮには、それぞれ、タイムサーバと呼ばれるコンピュータ装置が接続されている。タイムサーバとは、所定の基準時刻（例えば、日本標準時など）に同期した時刻を表す時刻データを、そのＬＡＮに接続されている他のコンピュータ装置へＮＴＰ（Network Time Protocol）などの所定の通信プロトコルにしたがって送信するものであり、その時刻データを受取った上記他のコンピュータ装置は、その時刻データを用いて自装置の内部時計を上記基準時刻に同期させて時刻合わせを行うことができる。以下では、本店内ＬＡＮに接続されているタイムサーバを「本店内タイムサーバ」と称し、支店内ＬＡＮに接続されているタイムサーバを「支店内タイムサーバ」と称する。これらタイムサーバは、自装置が接続されているＬＡＮに接続されている他のコンピュータ装置へ上記時刻データを定期的に送信するようになっている。
【００１１】
図１の拠点サーバ１００や支店サーバ３００は、上記各ＬＡＮを介して通信網２００に接続されている。より詳細に説明すると、拠点サーバ１００が接続されている本店内ＬＡＮは、中継装置４００Ａを介して通信網２００に接続されており、支店サーバ３００が接続されている支店内ＬＡＮは、中継装置４００Ｂを介して通信網２００に接続されている。そして、拠点サーバ１００と支店サーバ３００とは、例えばＯＳＩ（Open System Interconnection）参照モデルにて規定されたプロトコル階層毎に所定の通信プロトコルを利用して上記各ＬＡＮや通信網２００を介してデータ通信を行うことが可能になっており、その第３層（ネットワーク層）の通信プロトコルとしてＩＰ（Internet Protocol）を利用するようになっている。図１の通信網２００は、例えばインターネットであり、上記ＩＰにしたがって行われるデータ通信を仲介するデータ通信用の通信網として機能するものである。なお、本実施形態では、通信網２００がインターネットである場合について説明するが、ＷＡＮ（Wide Area Network）や専用線などであっても良いことは勿論である。要は、拠点サーバ１００と支店サーバ３００との間でＩＰにしたがって行われるデータ通信を仲介する通信網であれば、どのような通信網であっても良い。また、本実施形態では、第３層の通信プロトコルとしてＩＰを利用する場合について説明するが、例えばＩＰＸ（Internetwork Packet eXchange）など他の通信プロトコルを利用しても良いことは勿論である。また、本実施形態では、特に言及しなかったが、上記第３層よりも上位の通信プロトコルとして、例えばＴＣＰ（Transmission Control Protocol）やＵＤＰ（User Datagram Protocol）などを利用することができることについては言うまでもない。
【００１２】
図１の中継装置４００Ａと４００Ｂとは、例えばルータであり、上記所定の通信プロトコルにしたがって行われるデータ通信を中継するデータ中継機能を備えている。具体的には、中継装置４００Ａや４００Ｂは、通信網２００から送られてくるデータを受信し、そのデータを自装置に接続されているＬＡＮへ送出する一方、自装置に接続されているＬＡＮから送られてくるデータを受信し、そのデータを通信網２００へ送出することができる。なお、本実施形態では、中継装置４００Ａや４００Ｂがルータである場合について説明するが、ゲートウェイであっても良いことは勿論である。また、以下では、中継装置４００Ａと４００Ｂとを区別する必要がない場合には、単に「中継装置４００」と表記する。
【００１３】
さて、図１に示す通信システム１０においては、支店サーバ３００は、所定のデータ（例えば、その支店サーバ３００が設置されている支店の売上を表す売上データ）を所定の日時毎に拠点サーバ１００へ送信する送信装置として機能するものである。一方、拠点サーバ１００は、支店サーバ３００から送信されてくるデータを受信して記憶する受信装置として機能するものである。この拠点サーバ１００と支店サーバ３００とについては、ＩＰにしたがって通信する従来の受信装置や送信装置と何ら変わるところがないため、その構成や機能についての詳細な説明は省略する。これに対して、図１の中継装置４００は、上述したデータ中継機能の他に、本発明に係る通信装置に特有な機能を備えている。以下では、中継装置４００を中心に説明する。
【００１４】
図２は、中継装置４００のハードウェア構成の一例を示すブロック図である。
図２に示すように、中継装置４００は、制御部４１０と、第１通信部４２０と、第２通信部４３０と、時計部４４０と、記憶部４５０と、これら構成要素間のデータ授受を仲介するバス４６０と、を有している。なお、中継装置４００Ａと４００Ｂの各構成要素を区別する必要がある場合には、夫々、以下のように表記する。すなわち、中継装置４００Ａの構成要素については、制御部４１０Ａ、第１通信部４２０Ａ、第２通信部４３０Ａ、時計部４４０Ａ、記憶部４５０Ａおよびバス４６０Ａ、と表記する。一方、中継装置４００Ｂの構成要素については、制御部４１０Ｂ、第１通信部４２０Ｂ、第２通信部４３０Ｂ、時計部４４０Ｂ、記憶部４５０Ｂおよびバス４６０Ｂ、と表記する。
【００１５】
制御部４１０は、例えばＣＰＵ（Central Processing Unit）であり、記憶部４５０に格納されているソフトウェアにしたがって中継装置４００の各部を中枢的に制御するものである。第１通信部４２０は、通信網２００に接続されており、通信網２００を介して送信されてくるデータを受信し制御部４１０へ引渡す一方、制御部４１０から引渡されたデータを通信網２００へ送出するものである。第２通信部４３０は、中継装置４００Ａと４００Ｂとでその接続先が異なっている。具体的には、第２通信部４３０Ａは、前述した本店内ＬＡＮに接続されており、第２通信部４３０Ｂは、前述した支店内ＬＡＮに接続されている。この第２通信部４３０は、制御部４１０から引渡されたデータを上記各ＬＡＮへ送出する一方、そのＬＡＮを介して送信されてくるデータを受信し制御部４１０へ引渡すものである。
【００１６】
時計部４４０は、図示せぬクロックジェネレータから供給されるクロックに同期して作動するリアルタイムクロックであり、予め定められた時刻からの経過時間を計測するとともに、その計測結果を時刻に変換してその時刻を表す時刻データを制御部４１０へ供給する機能を備えている。また、この時計部４４０は、制御部４１０から時刻データが供給された場合に、その時刻データの表す時刻を上記予め定められた時刻として記憶する機能（すなわち、その時刻データを用いて時刻の起算点を変更する機能）を備えている。
【００１７】
記憶部４５０は、図２に示すように、揮発性記憶部４５１と不揮発性記憶部４５２とを含んでいる。なお、記憶部４５０Ａと４５０Ｂの各構成要素を区別する必要がある場合には、以下のように表記する。すなわち、記憶部４５０Ａの構成要素については、「揮発性記憶部４５１Ａ」および「不揮発性記憶部４５２Ａ」と表記し、記憶部４５０Ｂの構成要素については、「揮発性記憶部４５１Ｂ」および「不揮発性記憶部４５２Ｂ」と表記する。
【００１８】
揮発性記憶部４５１は、例えばＲＡＭ（Random Access Memory）であり、各種ソフトウェアにしたがって作動している制御部４１０によってワークエリアとして利用される。一方、不揮発性記憶部４５２は、例えばＲＯＭ（Read Only Memory）やハードディスであり、各種ソフトウェアを格納しておくためのものである。以下、不揮発性記憶部４５２Ａや４５２Ｂに格納されているソフトウェアについて説明する。
【００１９】
不揮発性記憶部４５２Ａには、ＯＳ（Operating System）を制御部４１０Ａに実現させるためのＯＳソフトウェアと、データ受信ソフトウェアとが格納されている。ここで、データ受信ソフトウェアとは、一般的なデータ中継機能の他に、本発明に係る通信装置に特有な機能を制御部４１０Ａに付与するためのソフトウェアであり、特に、データの受け手側の通信装置に特有な機能を付与するためのソフトウェアである。一方、不揮発性記憶部４５２Ｂには、上記ＯＳソフトウェアと、データ送信ソフトウェアとが格納されている。ここで、データ送信ソフトウェアとは、一般的なデータ中継機能の他に、本発明に係る通信装置に特有な機能を制御部４１０Ｂに付与するためのソフトウェアであり、特に、データの送り手側の通信装置に特有な機能を付与するためのソフトウェアである。
【００２０】
本実施形態において、不揮発性記憶部４５２Ａと４５２Ｂに格納されているソフトウェアが異なっている理由は、以下の通りである。図１に示す通信システム１０においては、支店サーバ３００から拠点サーバ１００へのデータの送信が行われる一方、拠点サーバ１００から支店サーバ３００へのデータの送信は行われない。このため、図１に示す通信システム１０においては、支店サーバ３００と通信網２００との間に介在する中継装置４００Ｂは、常に、データの送り手側の通信装置として機能する一方、拠点サーバ１００と通信網２００との間に介在する中継装置４００Ａは、常に、データの受け手側の通信装置として機能するからである。したがって、データの送り手側の通信装置として機能するとともに、データの受け手側の通信装置としても機能する中継装置については、上記データ送信ソフトウェアと上記データ受信ソフトウェアとの両者をその不揮発性記憶部に書き込んでおくとしても良く、また、上記データ送信ソフトウェアの役割と上記データ受信ソフトウェアの役割とを兼ね備えたソフトウェアを不揮発性記憶部に格納しておくとしても勿論良い。
【００２１】
次いで、不揮発性記憶部４５２に格納されている各種ソフトウェアを実行することによって制御部４１０に付与される機能について説明する。中継装置４００の電源（図示省略）が投入されると、制御部４１０は、まず、ＯＳソフトウェアを不揮発性記憶部４５２から読み出し、これを実行する。このＯＳソフトウェアにしたがって作動している制御部４１０には、中継装置４００の各部を制御する機能、他のソフトウェアを不揮発性記憶部４５２から読み出して実行する機能などが付与される。そして、制御部４１０は、ＯＳソフトウェアの実行を完了すると、即座に、上記データ受信ソフトウェアやデータ送信ソフトウェアを不揮発性記憶部４５２から読み出し、これを実行する。より詳細に説明すると、制御部４１０Ａは、データ受信ソフトウェアを不揮発性記憶部４５２Ａから読み出し、これを実行する。一方、制御部４１０Ｂは、データ送信ソフトウェアを不揮発性記憶部４５２Ｂから読み出し、これを実行する。これらソフトウェアにしたがって作動している制御部４１０Ａや４１０Ｂには、本発明に係る通信装置に特有な機能が付与される。
【００２２】
より詳細に説明すると、データ受信ソフトウェアにしたがって作動している制御部４１０Ａには、以下に述べる３つの機能が付与される。
第１に、本店内ＬＡＮを介して本店内タイムサーバから時刻データが送信されてきた場合に、その時刻データを受信し時計部４４０Ａへ供給することによって、時計部４４０Ａの時刻合わせを行う時刻合わせ機能である。前述したように、上記本店内タイムサーバは定期的に時刻データを送信するのであるから、本実施形態においては、定期的に時計部４４０Ａの時刻合わせが行われ、その時刻合わせが行われた後は、時計部４４０Ａにより取得される時刻は上記基準時刻に同期することになる。加えて、本実施形態では、支店サーバ３００が売上データの送信を開始する日時よりも前の時刻に上記時刻データの送信が行われるように本店内タイムサーバの設定が為されており、上記売上データが送信されてくること（すなわち、通信網２００を介した通信を開始すること）に先立って上記時刻合わせが必ず実行されるようになっている。
第２に、相手装置から送信されたデータを第１通信部４２０Ａを用いて受信する一方、そのデータを受信した時刻（以下、受信時刻）を上記時刻合わせ済みの時計部４４０Ａを用いて取得するデータ受信機能である。そして、第３に、第１通信部４２０Ａを用いて相手装置から受信したデータにその宛先に応じた第１の処理を施す一方、そのデータに時刻を表す時刻データが付加されている場合に、その時刻データの表す時刻と上記受信時刻との時間差を算出して、その時間差に応じた第２の処理を実行する処理実行機能である。本実施形態では、相手装置から受信したデータをその宛先へ転送するデータ中継処理が上記第１の処理として上記処理実行機能により実行される一方、上記時間差が所定の閾値（例えば、５０ミリ秒）を超えている場合に、その時間差を相手装置へ通知する処理が上記第２の処理として上記処理実行機能により実行される。
詳細については後述するが、本実施形態においては、中継装置４００Ａの通信相手である中継装置４００Ｂは、データを送信する際にそのデータを送信時刻を時計部４４０Ｂにより取得しその送信時刻を表す時刻データを付加して送信するのであるが、そのデータの送信に先立って時計部４４０Ｂにより取得される時刻が上記基準時刻に一致するように時計部４４０Ｂの時刻合わせを行うように構成されている。このため、上記処理実行機能にて算出される上記時間差は通信網２００における下り方向の遅延を正確に表すことになる。また、本実施形態においては、不揮発性記憶部４５２Ａには、上記閾値を表す閾値データが予め格納されており、制御部４１０Ａは、上記遅延がその閾値データの表す閾値を超えている場合に、その遅延を表すデータ（以下、遅延データ）を書き込んだ通信メッセージ（以下、遅延通知メッセージ）を第１通信部４２０Ａを用いて相手装置へ送信する。なお、本実施形態では、データ受信ソフトウェアと閾値データとが別個に不揮発性記憶部４５２Ａに格納されている場合について説明した、閾値データをデータ受信ソフトウェアに埋め込んでおくとしても勿論良い。また、本実施形態では、下り方向に通信の遅延についての閾値を表す閾値データが予め不揮発性記憶部４５２Ａに格納されている場合について説明したが、相手装置から送信された閾値データを用いて上記遅延通知メッセージを相手装置へ送信する必要があるか否かを判定するようにしても良い。具体的には、相手装置から受信したデータに上記時刻データの他に上記閾値データが付加されていた場合には、その閾値データを用いて上記判定を行うようにしても良い。
【００２３】
一方、データ送信ソフトウェアにしたがって作動している制御部４１０Ｂには、以下に述べる３つの機能が付与される。
第１に、支店内ＬＡＮを介して支店内タイムサーバから時刻データが送信されてきた場合に、その時刻データを受信し時計部４４０Ｂへ供給することによって、時計部４４０Ｂの時刻合わせを行う時刻合わせ機能である。本実施形態では、支店内タイムサーバについても、上記本店内タイムサーバと同様に、支店サーバ３００が売上データの送信を開始する日時よりも前の時刻に上記時刻データの送信を行うように設定が為されており、上記売上データの送信に先立って上記時刻合わせが必ず実行されるようになっている。
第２に、相手装置へデータを送信する際に、時刻合わせ済みの時計部４４０Ｂを用いてその送信時刻を取得し、そのデータにその送信時刻を表す時刻データを付加した後に、第１通信部４２０Ｂを用いて所定の通信プロトコルにしたがって所定の送信速度（例えば、１０Ｍｂｐｓ）で送信するデータ送信機能である。本実施形態においては、上記所定の送信速度を表す送信速度データが予め不揮発性記憶部４５２Ｂに格納されており、制御部４１０Ｂは、上記時刻データを付加したデータを、この送信速度データの表す送信速度で送信する。なお、上記時刻データの他に、前述した遅延通知メッセージを送信する必要があるか否かを相手装置に判定させる際に用いる閾値を表す閾値データを付加して送信するようにしても良い。また、このように閾値データを付加して送信する際には、相手装置へ送信するデータの種類毎に異なる閾値を表す閾値データを付加して送信するとしても勿論良い。
そして、第３に、通信網２００における下り方向の遅延を表す遅延データが書き込まれた遅延通知メッセージを第１通信部４２０Ｂにより受信した場合に、その遅延データの表す遅延の度合いに応じて、相手装置へデータを送信する際の送信速度を切替える送信速度切替え機能である。本実施形態では、図３に示す送信速度テーブルが不揮発性記憶部４５２Ｂに予め格納されており、制御部４１０Ｂは、この送信速度テーブルの格納内容を参照して送信速度の切替えを行う。具体的には、上記送信速度テーブルには、図３に示すように、遅延の度合いを表すデータ毎に夫々異なる送信速度を表す送信速度データが格納されており、制御部４１０Ｂは、上記遅延通知メッセージを解析して得られた遅延データの表す遅延の値に該当する送信速度データを送信速度テーブルから読み出し、その送信速度データの表す送信速度に切替える。なお、本実施形態において、通信網２００における下り方向の遅延が５０ミリ秒以下である場合についてのデータは送信速度テーブル（図３参照）に格納されていないが、その理由は、上記遅延が５０ミリ秒以下である場合には中継装置４００Ａから遅延通知メッセージが送信されてくることはなく、送信速度の切替えを行う必要がないからである。また、本実施形態では、データ送信ソフトウェアと送信速度テーブルとが別個に不揮発性記憶部４５２Ｂに格納されている場合について説明したが、上記データ送信ソフトウェアに送信速度テーブルを埋め込んでおくとしても勿論良い。
【００２４】
以上に説明したように、本実施形態に係る中継装置４００のハードウェア構成は、一般的なコンピュータ装置のハードウェア構成と同一であり、本発明に係る通信装置に特有な機能はソフトウェアモジュールで実現されている。なお、本実施形態では、本発明に係る通信装置に特有な機能を制御部４１０に付与するためのデータ送信ソフトウェアやデータ受信ソフトウェアをＯＳソフトウェアとは個別に不揮発性記憶部４５２に書き込んでおく場合について説明したが、上記データ送信ソフトウェアやデータ受信ソフトウェアの役割とＯＳソフトウェアの役割との両者を兼ね備えたファームウェアを不揮発性記憶部４５２に書き込んでおくとしても勿論良い。
また、本実施形態では、本発明に係る通信装置に特有な機能をソフトウェアモジュールで実現する場合について説明したが、これら各機能をハードウェアモジュールで実現するとしても良いことは勿論である。具体的には、時計部と、上記時刻合わせ機能を担っている時刻合わせ手段と、上記データ受信機能を担っている受信手段と、上記処理実行機能を担っている処理実行手段と、を組み合わせて中継装置４００Ａを構成するとしても勿論良い。また、時計部と、上記時刻合わせ機能を担っている時刻合わせ手段と、上記データ送信機能を担っているデータ送信手段と、上記送信速度切替え機能を担っている切替え手段とを組み合わせて中継装置４００Ｂを構成するとして勿論良い。
【００２５】
（動作）
次いで、本実施形態に係る中継装置４００が行う動作のうち、その特徴を顕著に示す動作について図面を参照しつつ説明する。なお、以下に説明する動作例では、制御部４１０Ａは上述したデータ受信ソフトウェアにしたがって作動しており、制御部４１０Ｂは上述したデータ送信ソフトウェアにしたがって作動しているものとする。
【００２６】
まず、制御部４１０Ａおよび４１０Ｂが上記各ソフトウェアにしったがって行う時刻合わせ動作について図４を参照しつ説明する。なお、以下に説明する動作例では、制御部４１０Ａと４１０Ｂとを区別する必要がない場合には、「制御部４１０」と表記する。第２通信部４３０Ａと４３０Ｂについても、この両者を区別する必要がない場合には、「第２通信部４３０」と表記し、時計部４４０Ａと４４０Ｂについても、この両者を区別する必要がない場合には、「時計部４４０」と表記する。
【００２７】
前述したように、本店内タイムサーバと支店内タイムサーバとは、前述した基準時刻に同期した時刻を表す時刻データを自装置が接続されているＬＡＮへ接続されているコンピュータ装置へ定期的に送信する。その結果、本店内タイムサーバから送信された時刻データは本店内ＬＡＮを介して中継装置４００Ａへ到達し、支店内タイムサーバから送信された時刻データは支店内ＬＡＮを介して中継装置４００Ｂへ到達する。このようにして各タイムサーバから時刻データが送信されてくると、制御部４１０Ａと４１０Ｂとは、夫々独立に図４に示す時刻合わせ動作を実行する。
【００２８】
図４に示すように、制御部４１０は、第２通信部４３０を介して上記時刻データを受信すると（ステップＳＡ１）、その時刻データを時計部４４０へ供給しその時刻合わせを行う（ステップＳＡ２）。その結果、時計部４４０Ａにより取得される時刻と時計部４４０Ｂにより取得される時刻とは、何れも上記基準時刻に一致することになり、両者の同期が完了する。つまり、上記時刻合わせ動作が完了した以降は、時計部４４０Ａと時計部４４０Ｂとに同時に時刻を取得させると同一の時刻が取得されることになる。前述したように、本実施形態では、支店サーバ３００からの売上データの送信が開始される日時よりも前の時刻に時刻データを送信するように支店内タイムサーバおよび本店内タイムサーバの設定が為されている。このため、支店サーバ３００が売上データの送信を開始する時点では、上記時刻合わせが完了していることになる。
【００２９】
次いで、上記時刻合わせ動作により時計部４４０の時刻合わせを行った後に、その時刻合わせ済みの時計部４４０Ａを利用して制御部４１０Ａが行う遅延通知動作と、その時刻合わせ済みの時計部４４０Ｂを利用して制御部４１０Ｂが行う送信速度切替え動作とについて図面を参照しつつ説明する。
【００３０】
中継装置４００Ａおよび４００Ｂにて上述した時刻合わせ動作が実行された後、所定の日時に至ると、店サーバ３００は、拠点サーバ１００へ宛てて売上データの送信を開始する。より詳細に説明すると、支店サーバ３００は、上記売上データを所定のデータサイズに分割するとともに、その各々に上記所定の通信プロトコルにて規定されたヘッダを付加してパケット（以下、データパケット）を生成し、それらデータパケットを中継装置４００Ｂへ順次送信する。これらデータパケットに含まれている上記ヘッダには、その送信先を表す通信アドレス（すなわち、拠点サーバ１００のＩＰアドレス）とその送信元を表す通信アドレス（すなわち、支店サーバ３００のＩＰアドレス）とが書き込まれている。
【００３１】
このようにして支店サーバ３００から送信されたデータパケットを第２通信部４３０Ｂを介して受取った制御部４１０Ｂは、そのデータパケットを揮発性記憶部４５１Ｂへ書き込み蓄積する一方、このようにして蓄積したデータパケットを図６に示すフローチャートにしたがって送信する。図５は、制御部４１０Ｂが行う送信速度切替え動作の流れを示すフローチャートである。図５に示すように、制御部４１０Ｂは、揮発性記憶部４５１Ｂに蓄積されているデータパケットをその受信順に読み出し、そのデータパケットに、時計部４４０Ｂにより取得した時刻（すなわち、そのデータパケットの送信時刻）を表す時刻データを付加して第１通信部４２０Ｂにより相手装置へ送信する（ステップＳＢ１）。
【００３２】
以上のようにして中継装置４００Ｂから送信されたデータパケットは、通信網２００を介して中継装置４００Ａへ到達する。図６は、相手装置から送信されたデータパケットを受信した場合に、制御部４１０Ａが行う遅延通知動作の流れを示すフローチャートである。図６に示すように、制御部４１０Ａは、通信網２００を介して送信されてくるデータパケットを第１通信部４２０Ａにより受信し、そのデータパケットの受信時刻を時計部４４０Ａにより取得する（ステップＳＣ１）。
【００３３】
次いで、制御部４１０Ａは、ステップＳＣ１にて受信したデータパケットに時刻を表す時刻データが付加されているか否かを判定し（ステップＳＣ２）、その判定結果が“Ｎｏ”である場合には、そのデータパケットをその宛先である拠点サーバ１００へ転送する（ステップＳＣ７）。逆に、ステップＳＣ２の判定結果が“Ｙｅｓ”である場合には、制御部４１０Ａは、以下に述べるステップＳＣ３以降の処理を実行する。本動作例においては、中継装置４００Ｂから送信されたデータパケットにはその送信時刻を表す時刻データが付加されているから、上記ステップＳＣ２の判定結果は“Ｙｅｓ”になり、制御部４１０Ａは、ステップＳＣ３の処理を実行する。
【００３４】
ステップＳＣ２の判定結果が“Ｙｅｓ”である場合に後続して実行されるステップＳＣ３においては、制御部４１０Ａは、上記ステップＳＣ１にて受信したデータパケットに付加されている時刻データを読み取り、そのデータパケットの送信時刻を取得する。そして、制御部４１０Ａは、ステップＳＣ１にて取得した受信時刻と、ステップＳＣ３にて取得した送信時刻との時間差を算出して通信網２００における遅延を計測する（ステップＳＣ４）。
【００３５】
ここで注目すべき点は、本実施形態においては、中継装置４００Ｂからデータパケットの送信が開始されることに先立って、時計部４４０Ｂと時計部４４０Ａとの時刻合わせが行われている点である。このような時刻合わせが為されているため、上記受信時刻と上記送信時刻との時間差は、データパケットが通信網２００を通過する際に要した正確な時間を表している。つまり、本実施形態においては、中継装置４００Ｂから中継装置４００Ａへデータを送信する方向（すなわち、下り方向）の遅延を正確に計測することが可能になる。なお、以下では、上記受信時刻と送信時刻との時間差が７５ミリ秒である場合について説明する。
【００３６】
次いで、制御部４１０Ａは、ステップＳＣ４にて計測した遅延を相手装置へ通知する必要があるか否かを判定する（ステップＳＣ５）。具体的には、制御部４１０Ｂは、上記ステップＳＣ４にて計測した遅延（すなわち、受信時刻と送信時刻との時間差）が不揮発性記憶部４５２Ａに格納されている閾値データの表す値よりも大きい場合には、その遅延を相手装置へ通知する必要があると判定する。前述したように、本実施形態では、上記閾値データの表す値は５０ミリ秒であり、ステップＳＣ４にて計測された遅延は７５ミリ秒であるから、上記ステップＳＣ５の判定結果は“Ｙｅｓ”になる。
【００３７】
ステップＳＣ５の判定結果が“Ｙｅｓ”である場合には、制御部４１０Ａは、上記ステップＳＣ４にて計測した遅延の値（すなわち、７５ミリ秒）を表す遅延データを書き込んだ遅延通知メッセージを第１通信部４２０Ａを用いて相手装置へ送信（ステップＳＣ６）した後に、前述したステップＳＣ７の処理を実行する。なお、ステップＳＣ５の判定結果が“Ｎｏ”である場合には、制御部４１０Ａは、上記ステップＳＣ６の処理を実行することなく、前述したステップＳＣ７の処理を実行する。以降、制御部４１０Ａは、相手装置から送信されたデータパケットを全て受信したか否かを判定し（ステップＳＣ８）、その判定結果が“Ｙｅｓ”になるまで上記ステップＳＣ１以降の処理を繰り返し実行する。
【００３８】
前述したように、本動作例では、ステップＳＣ６の判定結果は“Ｙｅｓ”になるため、上記ステップＳＣ７の処理が実行され、遅延通知メッセージが送信されることになる。このようにして中継装置４００Ａから送信された遅延通知メッセージは、通信網２００を介して中継装置４００Ｂへ到達する。以下、この遅延通知メッセージを受信した場合に制御部４１０Ｂが行う動作について図５に戻って説明する。
【００３９】
図５に示すように、制御部４１０Ｂは、上記遅延通知メッセージを受信すると（ステップＳＢ２：Ｙｅｓ）、その遅延通知メッセージに書き込まれている遅延データの表す遅延の度合いに応じてデータパケットの送信速度を切替え（ステップＳＢ３）、以降、制御部４１０Ｂは、相手装置へ送信するべきデータパケットを全て送信したか否かを判定し（ステップＳＢ４）、その判定結果が“Ｙｅｓ”になるまで、前述したステップＳＢ１以降の処理を繰り返し実行する。
前述したように、本実施形態では、制御部４１０Ｂは、上記遅延データの表す遅延の値に対応付けて前述した送信速度テーブル（図３参照）に書き込まれている送信速度データを読み出し、その送信速度データの表す送信速度に切替える。本動作例では、上記遅延通知メッセージに書き込まれている遅延データの表す値は７５ミリ秒であるから、送信速度は１０Ｍｂｐｓから２Ｍｂｐｓへ切替えられることになる。
【００４０】
以上に説明したように、本実施形態に係る中継装置４００によれば、通信網２００における下り方向の遅延が正確に計測されるとともに、通信網２００へ送り出されるデータパケットの送信速度がその遅延の度合いに応じて切替えられることになる。その結果、通信網２００における下り方向の通信が混み合っている場合（すなわち、下り方向の遅延が大きい場合）には、その下り方向の通信の速度を低下させその混み具合を緩和させることが可能になる、といった効果を奏する。また、以上に説明したように、本実施形態では、データパケットの他に、ｐｉｎｇパケットなどの遅延検出専用のパケットが通信網２００を流れることはないため、通信網２００の混み具合を悪化させることもない。
【００４１】
（変形）
以上、本発明の１実施形態について説明したが、係る実施形態を以下に述べるように変形しても良いことは勿論である。
（１）上述した実施形態では、不揮発性記憶部４５２Ａには、閾値データが予め格納されており、一方、不揮発性記憶部４５２Ｂには、送信速度テーブル（図３参照）が予め格納されている場合について説明した。しかしながら、上記閾値データや上記送信速度テーブルの格納内容を、システム管理者（通信システム１０の運用管理を行うユーザ）の所望に応じて書き換えるデータ書換え手段を中継装置４００に設けておくとしても勿論良い。
【００４２】
（２）上述した実施形態では、制御部４１０Ａに付与される処理実行機能により実行される第２の処理が、通信網２００における下り方向の遅延が所定の閾値を越えた場合に、その遅延を相手装置へ通知する処理である場合について説明した。しかしながら、上記第２の処理は、相手装置から受信したデータを拠点サーバ１００へ転送する際の転送速度を上記遅延の度合いに応じて切替える処理であっても良く、また、前述した第１の処理（すなわち、データ中継処理）を制御部４１０に実行させるために割り当てるリソース（例えば、揮発性記憶部４５１Ａの割り当て量や、制御部４１０の利用率）を切替える処理であっても良い。要は、通信網２００における遅延の度合いに応じて予め定められた処理であれば何れであっても良い。
【００４３】
（３）上述した実施形態では、通信網２００における下り方向の遅延が所定の閾値を超えた場合に、その遅延を中継装置４００Ａから中継装置４００Ｂへ通知する場合について説明したが、上記遅延が所定の閾値を下回った場合に、その遅延を中継装置４００Ａから中継装置４００Ｂへ通知し、データを送信する際の送信速度をその通知に応じて中継装置４００Ｂに引き上げさせるようにしても勿論良い。このようにすると、通信網２００にかかっている負荷が小さい場合には、データの送信速度を引き上げて効率的にデータ通信を行うことが可能になる。
また、上記遅延の履歴を中継装置４００Ａに記憶させるとともに、その履歴を解析して遅延の変化を中継装置４００Ａに計測させ、その変化が所定の閾値を超えた場合に、その旨を中継装置４００Ａに通知させるようにしても勿論良い。このようにすると、計測された遅延そのものは小さくとも、急激に遅延が大きくなることが予測される場合に、その変化を加味した遅延データを相手装置へ送信し、事前に送信速度を下げさせておくことが可能になるといった効果を奏する。このようなことは、計測された遅延の値をその変化に応じて所定量だけ増加させた値を表す遅延データを送信させるようにすることで実現することができる。また、計測された遅延の値とその変化を表す値の両者を遅延データとして送信させるようにしても勿論良い。また、遅延データを送信するか否かを中継装置４００Ａに判定させる際に、計測された遅延とその遅延について予め定められた第１の閾値との比較と、その変化とその変化について予め定められた第２の閾値との比較と、を組み合わせて上記判定を行わせるようにしても良い。具体的には、計測された遅延が上記第１の閾値未満であり、かつ、遅延の変化が上記第２の閾値未満である場合には、遅延データの送信を行わず、その他の場合は、遅延データの送信を行わせるようにすれば良い。
【００４４】
（４）上述した実施形態では、通信網２００における遅延の度合いに応じて、データの送信速度を中継装置４００Ｂに切替えさせる場合について説明した。しかしながら、通信網２００における遅延の度合いに応じて、データを送信する際に利用する上位層の通信プロトコルを中継装置４００Ｂに切替えさせるようにしても良い。例えば、通信網２００における遅延が大きい（すなわち、通信網２００にかかっている負荷が高い）場合には、ＴＣＰを利用し、逆に、通信網２００における遅延が小さい（すなわち、通信網２００にかかっている負荷が小さい）場合には、ＵＤＰを利用するとしても良い。このようにすると、以下に述べるような効果を奏する。
【００４５】
ＴＣＰにおいては、送信装置から送信されたデータを受信した場合に、次に受信するべきデータを表す応答メッセージ（以下、確認応答）をその送信装置へ返信すべきことが受信装置について規定されている。加えて、ＴＣＰにおいては、データを送信してから所定のタイムアウト時間が経過しても、そのデータに対する確認応答が送信されてこない場合には、そのデータの再送信を行うべきことが送信装置について規定されている。このように、ＴＣＰは、データを確実に送り届けることに重点を置いた通信プロトコルである。一般に、通信網にかかっている負荷が高い場合には、その通信網内でデータが消失してしまう可能性が高くなってしまう。このようにデータの消失が発生する虞がある場合であっても、ＴＣＰを用いてデータを送信するようにすれば、そのデータを確実に受信装置へ送り届けることが可能になる。なお、データを送信する際に利用する通信プロトコルとしてＴＣＰを用いる場合には、通信網２００における遅延の度合いに応じて上記タイムアウト時間を適宜変更するようにしても良い。
一方、ＵＤＰは、上述の如き確認応答によるデータの送達確認を行わない通信プロトコルであり、データの送信効率に重点を置いた通信プロトコルである。通信網にかかっている負荷が低く、上記データの消失が発生する虞がない状況下では、ＵＤＰを用いてデータ通信を行うことで、その通信効率を向上させることができる。
このように、通信網にかかっている負荷の度合いに応じて、データ通信に利用する上位層の通信プロトコルを切替えるようにすることで、その時点の通信網の状態に好適な通信プロトコルを用いて通信を行うことが可能になる。
【００４６】
（５）上述した実施形態では、通信網２００を介して送信されてきた遅延データの表す遅延の度合いに応じて、データの送信速度を中継装置４００Ｂに切替えさせる場合について説明した。しかしながら、通信網２００を介して遅延データが送信されてきた場合に、その遅延データを第２通信部４３０Ｂを用いて支店サーバ３００（中継装置４００Ｂを介してデータを送信する送信装置）へ転送し、その支店サーバ３００にデータの送信速度を切替えさせるとしても良い。また、中継装置４００Ｂを介さずに支店サーバ３００を通信網２００へ接続するとともに、この支店サーバ３００に前述したデータ送信ソフトウェアを記憶させておき、前述した時刻合わせ動作と送信速度切替え動作とを支店サーバ３００に行わせるようにしても良い。つまり、本発明の適用対象は、送信装置と通信網との間に介在する中継装置に限定されるものではなく、データの送信元である送信装置であっても良い。要は、データの送り手側の通信装置であれば、何れであっても良い。
【００４７】
（６）上述した実施形態では、通信網２００における下り方向の遅延を中継装置４００Ａに計測させ、その計測結果を相手装置へ通知させる場合について説明した。しかしながら、通信網２００における下り方向の遅延の計測とその計測結果の通知とを拠点サーバ１００に行わせるようにしても勿論良い。このようなことは、中継装置４００Ａを介さずに拠点サーバ１００を通信網２００へ接続しておくとともに、この拠点サーバ１００に前述したデータ受信ソフトウェアを記憶させておき、前述した時刻合わせ動作と遅延通知動作とを拠点サーバ１００に行わせるようにすることで実現可能である。つまり、本発明の適用対象は、受信装置とデータ通信用の通信網との間に介在する中継装置に限定されるものではなく、データの宛先である受信装置であっても良い。要は、データの受け手側の通信装置であれば、何れであっても良い。
【００４８】
（７）上述した実施形態では、本店および支店内のＬＡＮに接続されているタイムサーバから供給される時刻データを用いて時計部４４０の時刻合わせを行う場合について説明したが、係るタイムサーバを通信網２００に１つだけ接続しておき、このタイムサーバから供給される時刻データを用いて時計部４４０の時刻合わせを行うようにしても勿論良い。また、上述した実施形態では、時計部４４０の時刻合わせを行う際に、タイムサーバから供給される時刻データを用いる場合について説明したが、ＧＰＳ（Global Positioning System）衛星から供給される時刻データまたは所定の基準局から発信される電波に畳重されている時刻データを用いて時計部４４０の時刻合わせを行うようにしても勿論良い。このようなことは、本発明に係る通信装置に、ＧＰＳ受信機や上記電波を受信するための受信機を設けておくことにより実現される。
また、上述した実施形態では時計部４４０Ｂと時計部４４０Ａとの時刻合わせを夫々独立に実行する場合について説明したが、両者の時刻合わせを連動させるようにしても勿論良い。例えば、支店サーバ３００から送信された売上データを受信した場合に、その売上データを送信することに先立って制御部４１０Ｂに時計部４４０Ｂの時刻合わせ実行させるとともにその時刻合わせが完了した後に、時計部４４０Ａの時刻合わせの実行を要求する旨の通信メッセージ（以下、時刻合わせ要求メッセージ）を相手装置（すなわち、中継装置４００Ａ）へ送信させ、その通信メッセージを受信した場合に制御部４１０Ａに本店内タイムサーバから時刻データを取得させて時計部４４０Ａの時刻合わせ行うようにすれば良い。また、このような態様にあっては、上述の如き基準時刻を用いることなく（すなわち、タイムサーバなどを用いることなく）、時計部４４０Ａと４４０Ｂとを同期させることが可能である。すなわち、中継装置４００Ａと４００Ｂとをデータ通信用の通信網（すなわち、通信網２００）とは異なる他の通信網にも接続しておき、この他の通信網を介して前述した時刻合わせ要求メッセージを送受信させるようにする。そして、このような態様においては、中継装置４００Ｂに、時計部４４０Ｂにより取得された時刻を書き込んだ時刻合わせ要求メッセージを送信させて、相手装置の時計部（すなわち、時計部４４０Ａ）を自装置の時計部に同期させて時刻合わせを行うようにしても良い。何故ならば、上記他の通信網はデータ通信に用いられることがない為、ほとんど負荷がかからず、上記他の通信網における遅延を無視することができるからである。なお、本変形例では、時計部４４０Ｂの時刻合わせを行った場合に、時計部４４０Ａの時刻合わせを要求する旨の時刻合わせ要求メッセージを制御部４１０Ｂに送信させる場合について説明したが、逆に、時計部４４０Ａの時刻合わせを行った場合に、時計部４４０Ｂの時刻合わせを要求する旨の時刻合わせ要求メッセージを制御部４１０Ａに送信させるとしても勿論良い。
【００４９】
（８）上述した実施形態では、中継装置４００の不揮発性記憶部４５２に、本発明に係る通信装置に特有な機能をその中継装置４００の制御部４１０に実現させるソフトウェアが予め書き込まれている場合について説明した。しかしながら、これらソフトウェアを、例えばＣＤ−ＲＯＭ（Compact Disc-Read Only Memory）やＤＶＤ（Digital Versatile Disk）などのコンピュータ装置読み取り可能な記録媒体に記録して配布し、その記録媒体を用いて一般的なコンピュータ装置に上記ソフトウェアをインストールするとしても良い。
【図面の簡単な説明】
【００５０】
【図１】本発明の１実施形態に係る中継装置４００を含んでいる通信システム１０の構成例を示すブロック図である。
【図２】同中継装置４００のハードウェア構成の一例を示す図である。
【図３】同不揮発性記憶部４５２Ｂに格納されている送信速度テーブルの一例を示す図である。
【図４】同制御部４１０Ｂがデータ送信ソフトウェアにしたがって行う時刻合わせ動作の流れを示すフローチャートである。
【図５】同制御部４１０Ｂがデータ送信ソフトウェアにしたがって行う送信速度切替え動作の流れを示すフローチャートである。
【図６】同制御部４１０Ａがデータ受信ソフトウェアにしたがって行う遅延通知動作の流れを示すフローチャートである。
【符号の説明】
【００５１】
１０…通信システム、１００…拠点サーバ、２００…通信網、３００…支店サーバ、４００，４００Ａ，４００Ｂ…中継装置、４１０…制御部、４２０…第１通信部、４３０…第２通信部、４４０…時計部、４５０…記憶部、４５１…揮発性記憶部、４５２…不揮発性記憶部、４６０…バス。
【図１】
2006237865.tif 000003
【図２】
2006237865.tif 000004
【図３】
2006237865.tif 000005
【図４】
2006237865.tif 000006
【図５】
2006237865.tif 000007
【図６】
2006237865.tif 000008