ネットワークシステム、及び通信装置
【課題】 全ユーザにパケットの受付順で網から送出する事を保証する等時性保証網において、あるユーザのセッションで再送が起きても、その影響を減少させ当初の送受信タイミングに近づける機能を実現する。
【解決手段】 事業者ネットワーク2のエッジの通信装置10が、各ユーザの加入者端末100のセッションを識別し、順序情報付与機能20で、付与する時刻情報を保存・管理する。この時、パケット再送が発生すると、再送する現在時刻に基づく順序情報ではなく、パケットにもともと付与していた過去の時刻に基づく順序情報を付与してパケットを再送信する。
【解決手段】 事業者ネットワーク2のエッジの通信装置10が、各ユーザの加入者端末100のセッションを識別し、順序情報付与機能20で、付与する時刻情報を保存・管理する。この時、パケット再送が発生すると、再送する現在時刻に基づく順序情報ではなく、パケットにもともと付与していた過去の時刻に基づく順序情報を付与してパケットを再送信する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パケットの網への入出順序を保証するネットワークシステム、及び通信装置に関するものである。
【背景技術】
【0002】
現在の通信事業者が提供する通信サービスでは、地理的に離れた複数ユーザが同じ宛先へと送出するパケットの通信事業者の網に入る順番と宛先で網から出ていく順番は、ユーザと宛先間またはユーザ間の物理的な距離などの違いにより発生する伝送遅延が異なるので必ずしも等しくない。
【0003】
そのため、処理結果が処理を実行する順序により決まるトランザクション(例えば、ネットワークを介した株・通貨の売買などの電子商取引)の場合、利害関係のあるユーザ間で伝送遅延による僅かな時間差でも有利/不利の関係が生まれてしまい、提供するサービスに対する公平性が維持できない。
【0004】
つまり、処理要求がネットワークを介して転送され処理される場合、ネットワークへ送出された処理要求は処理を実行するサーバまでの物理的距離などに応じた伝送遅延を伴い当該サーバへ転送され受付処理される。つまり、処理要求の受付処理が行われる順序は、処理要求の送出順序だけでなく、通信に伴う伝送遅延時間にも依存してしまう。この改善策として、ユーザからの処理要求にタイムスタンプを付与して、トランザクションを処理するサーバで順序を並べ替える方法がある。
【0005】
特許文献1は、ユーザの利用する端末間で時刻同期をして、端末が送出するユーザの処理要求にタイムスタンプを付与する機能を持ち、トランザクションを処理するサーバは要求の受信順ではなく、処理要求に付与されたタイムスタンプに基づいて要求の順序を並び替え、処理要求の送出順に処理を行うことを実現している。具体的には、次の内容が開示されている。
【0006】
クライアントマシンは、タイムサーバから定期的に絶対時刻を受信し、受信した絶対時刻を用いてクライアントマシンのタイマの時刻補正を行う。各クライアントマシンは、サーバマシンに対して各種サービスの提供を受けるためのサービスデータ要求とタイマの時刻データ(絶対時刻)とをインタネット経由で送出する。サーバマシンの制御部は、記憶装置に順次記憶するサービスデータ要求を、サービスデータ要求に付与されている時刻データ(絶対時刻)に基づいて、絶対時刻が早い順にソートするよう制御する。また、サーバマシンは、各クライアントマシンからのサービスデータ要求が、制御部に到着してからの時間を計時するためのタイマを備える。各クライアントマシンとサーバマシンとの間の伝送時間のうち最大の伝送時間を最大遅延時間とし、サーバマシンは、サーバマシンの備えるタイマを用いて、サービスデータ要求を最大遅延時間分は記憶装置に保持してからサービス要求データの処理を実行する。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平11−259386号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかし、特許文献1では、タイムスタンプを扱う機能は、クライアントマシンで動作するサービス要求プログラム、およびサーバマシンで動作するサービス処理プログラムで実現されている。これは当該機能を、サーバが提供するサービスの一部として、およびクライアントマシンのサービスを利用する機能の一部として、個々のサービス毎に作成し組み込む必要がある。つまり、当該機能を予め具備するサービスだけに利用が限定されてしまう。そのため、当該機能を利用したいサービス提供者またはユーザは、サービス毎に当該機能を具備する専用サービスを構築する必要がある。また、特許文献1では、タイムスタンプを扱う機能は、クライアントマシン、すなわち、端末等のユーザがアクセスできる場所で動作しているので、悪意あるユーザにより、ユーザ間の公平性を担保するために利用するタイムスタンプ情報が詐称される危険がある。
【0009】
本発明の目的は、悪意あるユーザによる詐称を防止し、地理的に離れた複数ユーザに等時性が保証されたサービスを提供するネットワークシステム、及び通信装置を提供することにある。
【0010】
また、本発明の目的は、再送の起きたユーザのセッションが他ユーザのセッションに対して不利な状況が継続するのを是正するネットワークシステム、及び通信装置を提供することにある。
【課題を解決するための手段】
【0011】
上記の目的を達成するため、本発明においては、複数の通信装置を接続する網を備えるネットワークシステムであって、網の外部からパケットを受信する通信装置は、他の通信装置と時刻同期の取れた順序情報をパケットに付与し、パケットを網の外部に送出する通信装置は、パケットに付与された順序情報に基づきパケットを整列して送出を行い、網の外部からパケットを受信する通信装置は、パケットの再送が発生する場合、当該パケットに先に付与した過去の時刻に基づく順序情報を付与して当該パケットの再送信を行うネットワークシステムを提供する。
【0012】
また、上記の目的を達成するため、本発明においては、網内で相互に接続される通信装置であって、網の外部からパケットを受信し、他の通信装置と時刻同期の取れた順序情報をパケットに付与する入力処理部と、他の通信装置がパケットに付与した順序情報に基づき、パケットを整列して網の外部に送出する出力処理部を備え、入力処理部は、パケットの再送が発生する場合、当該パケットに先に付与した過去の時刻に基づく順序情報を付与する通信装置を提供する。
【発明の効果】
【0013】
網に接続する全ユーザに等時性を提供することができ、サービス提供者またはユーザは、所望のサービスを変更することなく、ユーザ間の時間的公平性を担保できる。
【0014】
さらに、悪意あるユ−ザによる時刻情報詐称などを困難にする機能に対して、ユーザ端末やサーバが備えるパケットの再送機能が動作しても、等時性の保証を維持できるように当該サービスを拡張することができる。
【図面の簡単な説明】
【0015】
【図1】第1の実施例に係る、機器の管理責任範囲と機能配置位置の関係を説明するための図である。
【図2】第1の実施例に係る、通信装置の内部構造に一例を示す図である。
【図3】第1の実施例に係る、入力処理部におけるパケット転送の処理フローの一例を示す図である。
【図4】第1の実施例に係る、出力処理部におけるパケット転送の処理フローの一例を示す図である。
【図5】第1の実施例に係る、順序情報付与の処理フローの一例を示す図である。
【図6】第1の実施例に係る、順序情報無効化の処理フローの一例を示す図である。
【図7】第1の実施例に係る、パケット整列および順序情報無効化の処理フローの実施例。
【図8A】第1の実施例に係る、網が等時性を提供する適用例のタイミングチャート図である。
【図8B】第1の実施例に係る、網が等時性を提供する適用例の、再送に関する機能が無い場合のタイミングチャート図である。
【図8C】第1の実施例に係る、網が等時性を提供する適用例の、再送に関する機能が有る場合のタイミングチャート図である。
【図9】第1の実施例に係る、通信装置で扱う各遅延時間を算出するための伝送遅延の測定区間を示す図である。
【図10】第1の実施例に係る、通信装置で扱うパケットを構成する各フィールドのレイアウトの一例を示す図である。
【図11】第1の実施例に係る、通信装置が再送パケットを識別するために保持する情報の一構成例を示す図である。
【図12】第1の実施例に係る、通信装置で再送パケット識別の処理フローの一例を示す図である。
【発明を実施するための形態】
【0016】
以下、図面に従い本発明の実施形態を順次説明する。
【実施例1】
【0017】
図1は第1の実施例における機器の管理責任範囲と機能配置位置の関係を説明するための図である。同図において、1が加入者の管理責任範囲、2が通信事業者の管理責任範囲、3がPOI(Point of Interface)を示している。このPOI3が、加入者の管理責任範囲1と通信事業者の管理責任範囲2に分割される網における管理責任分界境界を示す。本明細書において、この通信事業者の管理責任範囲2内の網を、事業者ネットワークと呼ぶ場合がある。
【0018】
同図に示すように、本実施例のネットワークシステムは、加入者端末100、加入者端末から利用するサービスを提供する宛先サーバ200、通信事業者が通信サービスを提供するために利用する通信装置10から構成される。本実施例の構成は、ホームゲートウェイなどの加入者宅内に設置される通信事業者が管理する通信装置、またはMPLS−TP(Multi Protocol Label Switching−Transport Profile)装置など通信事業者の局舎内に設置される通信事業者が管理する通信装置に適用される。
【0019】
上述した特許文献1では、当該特許技術が適用されるのが加入者の管理するクライアントマシンおよびサービス提供者の管理するサーバマシンであり、ネットワーク機能を提供する通信事業者は関与しない。一方、本実施例の通信装置の構成が適用されるのは通信事業者の管理する通信装置である。加入者およびサービス提供者は、通信事業者の提供する事業者ネットワーク内の等時性を保証する通信サービスを利用するだけで、自身の通信装置などになんら機能を追加・実行する必要がない点に特徴がある。
【0020】
図1において、加入者端末100は、通信事業者の通信装置10を介し、通信事業者の提供する通信サービスを利用して宛先サーバ200と通信することにより、加入者は宛先サーバ200が提供するサービスを利用する。なお、通信事業者の管理責任範囲2、即ち事業者ネットワーク2内の全ての通信装置10は、それらを管理する通信事業者の管理者端末210により、制御信号220等を用いて制御される。
【0021】
加入者端末100が接続される通信事業者の通信装置10は、事業者ネットワーク2内で加入者から受付けるパケットに付与するためのユニークな識別子として時刻を使用する。そのため、通信装置10はGPS(Global Positioning System)などの時刻取得機能、またはIEEE1588v2やNTP(Network Time Protocol)などの時刻同期機能を利用して網内の通信装置と時刻同期を実現する機能を具備する。
【0022】
加入者端末100が接続される通信事業者の通信装置10は、加入者から受信するパケットに対して網の受付け順を示す順序情報付与機能20を具備する。順序情報には、通信装置10が保持し、他の通信装置10と時刻同期している時計から取得した時刻情報を含む。
【0023】
この通信装置10の順序情報付与機能20は、加入者端末100と宛先サーバ200との間の通信において何らかの障害により、加入者端末100がパケットを再送した場合は、再送パケットを受信した時刻の時刻情報ではなく、加入者端末100から再送パケットに対応する当初のパケットを受信した時に付与した過去の順序情報を再び付与する機能を具備する。更に、順序情報付与機能20は、当該加入者端末100の送信するパケットに対しては、通信事業者が設定したルールに基づき、再送後の一定期間だけ当該順序情報を付与し続ける。この一定期間経過後、通信装置10は装置内に保持している該当順序情報を削除する機能を具備する。
【0024】
また、高速なネットワーク・インターフェースを持つ通信装置では、通信装置が保有する時計が示す同一時刻内に複数のパケットを加入者から受付けることが想定される。このようなパケットに対して受付け順序で整列するとき参考情報として参照できるように、上述した順序情報を、時刻情報と付加情報とでも構成できる。この付加情報はシーケンス番号 (i.e.0、1、2...)、同一時刻内の該当ポートでの累積受信バイト数 (e.g.0、64、128、...)、ハードウェア(HW)のクロックカウント値、装置毎に設定される任意の整数値などが適用できる。
【0025】
シーケンス番号は、同一装置内の順序を識別するための最も単純な仕組みである。累積受信バイト数は、ネットワーク・インターフェースにワイヤレートでパケットが入力された場合に、時計の最小刻み間の相対的な位置を示せる。HWのクロックカウントは、時計の最小刻みより細かいHWクロック値を用いるので、累積受信バイト数を適用した場合より細かい粒度の相対位置を示すことが出来る。任意の整数値は、各通信装置に事前に優先順位を割り当てる効果がある。この場合、任意の整数値とシーケンス番号を組み合わせることにより、任意の整数値で通信装置間での順序を決め、シーケンス番号で各通信装置内の順序を決めることが可能になる。特に同一通信装置で網が構成されている場合、各通信装置が同一周波数で動作していると仮定できるので、複数送信元から送信された複数の同一時刻を示す順序情報を持つパケットを整列する際に、付加情報としてHWクロック値を用いることにより実装が容易で高い精度を実現できる。
【0026】
本実施例における加入者端末100が接続される通信事業者の通信装置10は、事前に指定された任意の時間だけ、加入者から受信するパケットを網内に送出することを遅延する機能を具備する。当該遅延機能により、本来、宛先サーバ200が接続される通信事業者のサービス提供者側の通信装置10での遅延時間を、加入者側の通信装置内で消費することになる。ここで、多数の加入者端末と通信する宛先サーバに接続するサービス提供者側の通信装置10は、網の伝送遅延から求められる適切な待ち時間の間に、加入者端末から受信することが想定される全パケットを一時的に待機させるバッファが必要になる。しかし、加入者側の通信装置の当該遅延機能により、このサービス提供者側の通信装置での適切な待ち時間が短縮できるので、当該通信装置が持つべきバッファ量を削減することが可能になる。
【0027】
また、加入者端末100が接続される通信事業者の加入者側の通信装置10は、加入者から受信するパケットに既に順序番号などの情報(事業者ネットワークで付与される順序情報と区別するため「既存順序情報」と呼ぶ)が付与されていた場合、既存順序情報を無効化する機能を具備する。この事業者ネットワークの入側の通信装置10における無効化機能は、既存順序情報が持つ無効フラグ・フィールドにビットをセット、既存順序情報とは無関係に追加的に網独自の順序情報の付与、既存順序情報が過去の時刻情報を保有していれば順序詐称の可能性があるのでパケット自体の廃棄、既存順序情報が未来の時刻を示していれば網の出側で指定時刻までの送出保留機能への指示と判断し入側ではそのまま透過、既存順序情報を詐称防止のため無条件に現在値で更新、または、既存順序情報の値に関係なく詐称防止のため無条件にパケットを廃棄などの実現方法が考えられる。
【0028】
一方、宛先サーバ200が接続される通信事業者の通信装置10は、同一の宛先へ送出するパケットを事前に設定された任意の時間だけ送出を遅延させ、網の入側の通信装置10の順序情報付与機能20でパケットに付与された順序情報でパケットを整列してから、宛先へ送出するパケット整列送出機能30を具備する。このとき、順序情報内の時刻情報は網がパケットを受付けた時刻を示すので、出側の通信装置10では、当該時刻が最も古いパケットから順に送出する。順序情報によるパケット整列送出機能30は、パケットの受付け順序に従い、受付けたタイミングで該当パケットを宛先へ送出する。
【0029】
また、本実施例においては、宛先サーバ200が接続される通信事業者の通信装置10は、宛先サーバ200に送出するパケットに付与された順序情報の示す時刻が、現在時刻から事前に設定された任意の時間だけ遡った時刻より、さらに過去の時刻が付与されていた場合、当該パケットが再送パケット、または再送発生以降に加入者端末100から送出され、過去の順序情報が付与されたと判断し、当該通信装置での整列処理をスキップして、宛先サーバ200へ送出する機能を具備する。
【0030】
更に、宛先サーバ200が接続される通信事業者の通信装置10のパケット整列送出機能30は、順序情報によるパケット整列送出機能30で順序情報の前後関係を判断する機能を具備する。順序情報の前後関係は、順序情報内の時刻情報の前後関係により決定する。また、順序情報の前後関係は、同一時刻内に複数パケットを受け付けることを考慮して、時刻情報と付加情報により前後関係を判断できる。この付加情報は、パケット内の優先順位を示すフィールドの値、前記のシーケンス番号など、またはその両方である。パケット内の優先順位を示すフィールドを参照することにより、網の受付け順序だけでなく加入者または通信事業者の付与する優先順位に従い整列順序を制御することが可能になる。パケット内の優先順位を示すフィールドは、MPLSのTC(Traffic Class)フィールド、VLAN(Virtual LAN)タグのCoS(Class of Service)フィールド、IP(Internet Protocol)パケット内のToS(Type of Service)フィールドなどである。
【0031】
宛先サーバ200が接続される通信事業者の通信装置10のパケット整列送信機能30は、パケットに付与された順序情報によりパケットを整列しようとするが、複数のパケットが全く同じ順序情報を保持している場合に、それらの中から先に送出するパケットを選択する機能を具備する。順序情報が完全に一致した場合の順序決定方法は、パケットの整列を行う通信装置10の受信パケットを保持する受信キューなどのバッファ内の並び順に従う方法や、ランダムな選択方法がある。このランダムな選択方法として、乱数を受信キュー内のエントリを指すインデックスとして利用して選択することなどが挙げられる。
【0032】
上述の通り、宛先サーバ200が接続される通信事業者の通信装置10は、網の外部に送出するパケットを、順序情報内の時刻情報が示す時刻までパケットの送出を遅延するパケット整列送出機能を具備する。当該機能により網から指定時間に情報を宛先へ配信することが可能になる。
【0033】
宛先サーバ200が接続される通信事業者の通信装置10は、網から宛先サーバ200へ送出するパケットに対して、網で付与した順序情報を無効化して、網の入側で通信装置10により無効化された順序情報があれば有効化して、網が受付けたパケットの状態を復元する機能を具備する。
【0034】
図2は、図1に示した本実施例における事業者ネットワーク2内の通信装置10の内部構造の一例を示す。同図に示す通信装置10は、装置全体を管理するノード管理部2000、複数のネットワーク・インターフェース610−1〜610−n、およびネットワーク・インターフェースを相互接続するためのスイッチ部2100から構成される。なお、図1に支援した管理者端末210が図示されているが、先に説明した通り、通信装置10の外に位置することは言うまでもない。
【0035】
各ネットワーク・インターフェース610−1〜610−nは、パケット送受信ポート601−1〜601−n、各パケット送受信ポートに対応するスイッチ部へのインターフェース602−1〜602−n、パケット送受信部を介して受信したパケットを処理する入力処理部1010、パケット送受信部を介してパケットの送信処理を行う出力処理部1020、および入力処理部1010および出力処理部1020を制御するネットワーク・インターフェース(Network Interface:NIF)管理部1000で構成される。ネットワーク・インターフェース610−1〜610−nの各々は、通常のコンピュータ構成を備えており、処理部である少なくとも一個のCPU(Central Processing Unit)と、記憶部であるメモリ、及び上述したパケット送受信ポート601−1〜601−n、インターフェース602−1〜602−n等から構成され、CPUとメモリを用いたプログラム実行により、入力処理部1010、出力処理部1020、NIF管理部1000の後で説明する各種の機能を実現することができる。
【0036】
一方、ノード管理部2000は、図2の通信装置10の管理者に対して管理用インターフェースを提供して、当該装置への各種設定/操作を可能にする。ノード管理部2000は、同様に処理部と記憶装置を保持しており、通信装置の初期化に必要な初期設定の情報を保持できる。ノード管理部2000は当該装置の初期化時に、記憶装置に格納されている初期設定情報、またはノード管理部2000が持つデフォルト値で、通信装置内の各機能の初期化を行う。管理者端末210を用いて、管理者により装置のノード管理部2000に対して行われた設定や操作は、装置に装備されているネットワーク・インターフェース610―1〜610−nうち適切なNIF管理部1000に適宜反映される。
【0037】
このように、ノード管理部2000は管理者に対して、各ネットワーク・インターフェース610―1〜610−nで保持するパラメータを設定することを可能にする。ノード管理部2000から各ネットワーク・インターフェース610―1〜610−nに設定する主なパラメータには次のようなものがある。
【0038】
・順序情報無効化部F130で加入者からのパケットに順序情報が既に付与されていた場合の挙動(無効化フラグの設定後透過、パケット廃棄などを選択)、
・パケット整列部F210で整列のためにパケットの送出の遅延時間、
・順序情報無効化部F220で順序情報を取り除かずに宛先への送出を可能にするための無効化機能の有効/無効、
・順序情報保管部F140でUDP通信のパケットに対して保存するパケットの識別方法(SHA値、MD5値、イーサフレームのFCS値などを選択)、
・順序情報保管部F140で保管しているパケットの情報の削除方法(指定した経過時間後、送達確認パケット受信時、再送後の送信パケット数などを選択)。
【0039】
図2に示すように、本実施例の通信装置10を構成する入力処理部1010は、遅延挿入部F100、順序情報付与部F110、再送パケット識別部F120、順序情報無効化部F130、順序情報保管部F140、および、順序情報生成部F150を具備する。上述の通り、これらの各機能は、入力処理部1010を構成するCPU等の処理部がプログラム処理によって実現できる。
【0040】
これらの機能ブロックF100〜F150は、図1に記した加入者100から受信するパケットに対して網の受付け順を示す順序番号付与機能20を構成する。遅延挿入部F100は、事前に指定された任意の時間だけ加入者から受信するパケットを網内に送出することを遅延する機能である。順序情報付与部F110は、網内で加入者から受付けるパケットに受付け順序を示すユニークな識別子として時刻を使用した順序情報を付与する機能である。この付与の方法は先に説明し亜通りである。ただし、この順序情報付与部F110は、再送パケット識別部F120で再送パケットと判断し、整列処理バイパスフラグがオンに設定された期間は、順序情報保管部F140で管理する順序情報の中から当該パケットに対応する順序情報を取得し付与する。
【0041】
再送パケット識別部F120は加入者から受信したパケットが再送パケットか否かを判断し、再送パケットなら整列処理バイパスフラグをオンに設定する機能である。順序情報無効化部F130は、加入者から受信するパケットに既に順序番号が付与されていた場合、それを無効化する機能である。順序情報生成部F150は、加入者から受付けるパケットに受付け順序を示すユニークな識別子として時刻を使用した順序情報を生成する機能である。また、順序情報生成部F150は、同一時刻に複数パケットを受付けた場合にも、後でそれらの順序を判断するための付加情報を加えて順序情報を生成する機能を備える。
【0042】
本実施例の通信装置10を構成する出力処理部1020は、さらに送達確認識別部F200、パケット整列部F210、および、順序情報無効化部F220を具備する。上述の通り、これらの機能は、入力処理部1010を構成するCPU等の処理部がプログラム処理によって実現できる。これらの機能は、図1に記した順序情報によるパケット整列送出機能30を構成する。送達確認識別部F200は、受信したパケットが正しく宛先で受信されたことを示す送達確認パケットか否かを判断し、送達確認パケットであれば、入力処理部1010の順序情報保管部F140に通知する。順序情報保管部F140では、送達確認識別部F200からの通知を、自身の管理する順序情報を削除する条件の一つに利用できる。
【0043】
パケット整列部F210は、パケットに付与されている順序情報の示す時刻を参照して、現在時刻から事前に設定された時間だけ遡った時刻以前に付与された順序情報の場合、本パケット整列部F210での整列処理はスキップされる。それ以外の場合、同一の宛先へ送出するパケットを事前に設定された任意の時間だけ送出を遅延させ、パケットに付与された順序情報でパケットを整列してから、宛先へ送出する。順序情報内の時刻情報は網がパケットを受付けた時刻を示すので、当該時刻が最も古いパケットから順に送出する。さらに当該機能はパケットの受付け順序に従い、受付けたタイミングで該当パケットを宛先へ送出する。順序情報無効化部F210は、網で付与した順序情報を無効化して、網の入側で通信装置により無効化された順序情報があれば有効化して、網が受付けたパケットの状態を復元する機能である。
【0044】
上述した通り、通信装置10を構成するNIF管理部1000およびノード管理部2000はそれぞれ時刻管理部F300を具備する。本実施例における時刻管理部F300は、等時性を保証する通信装置間、すなわち通信事業者の管理責任範囲の通信装置間で同期した時刻を管理する機構を実現する。
【0045】
まず、ノード管理部2000が同期した時刻を取得する。例えば、接続されたGPSデバイスから時刻を取得、IEEE1588で隣接する通信装置間で時刻を同期、またはNTPサーバからの同期した時刻を取得する等である。
【0046】
時刻を取得後、ノード管理部の時刻管理部F300が、各ネットワーク・インターフェース610―1〜610−nのNIF管理部1000の時刻管理部F300に、取得した当該時刻を配信する。各ネットワーク・インターフェース610―1〜610−nの入力処理部F1010および出力処理部1020が時刻情報を利用する場合、当該ネットワーク・インターフェース610―1〜610−nのNIF管理部1000の時刻管理部F300の時刻を参照する。
【0047】
図3は、図2に示した本実施例の通信装置10の入力処理部1010におけるパケット転送の処理フローの実施例を示す(S100)。
まず、入力処理部1010においてパケットIFからパケットを受信する(S110)。入力処理部1010は、記憶部に予め記憶されているテーブル情報や受信パケットのIP送信元アドレス等を参照することにより、受信したパケットの入力ポートが加入者側なのか通信時事業者網なのか判断する(S120)。受信パケットの入力ポートが加入者側の場合、IP受信元アドレス等を参照し、受信パケットの送出先ポートが加入者側なのか通信事業者網側なのか判断する(S130)。
【0048】
受信パケットの入力ポートが加入者側で、送出先ポートが通信事業者網側の場合、当該パケットに順序情報が既に付与されているか判断する(S140)。既に順序情報が付与されている場合、順序情報無効化部F120は、順序情報無効化処理(S150)を実施する。その後、順序情報付与部F110は、順序情報生成部F150が生成した、網独自の順序情報を当該パケットに付与する(S160)。そして、再送パケット識別部F120で、当該パケットが再送パケットか否か、および同一セッションか否かを判断する(S170)。
【0049】
S160とS170をこのように別々の機能ブロックF110、F120として実現し、S170の機能を無効化/有効化を選択可能にすることで、再送パケットに対する特別な処理の無効化/有効化が簡単に切替えることが可能になる。一方、S160とS170の機能を統合することにより順序情報の付与機能を1つに統合することが可能になり、少ないCPU処理量、ソースコード量、メモリ消費量等の資源で実現することが可能になる。
【0050】
図12に示すように、この具体的な統合方法の一例は、再送パケット識別S170内の分岐処理であるセッション識別S172で、処理S174へ移行する直前に、S160で実施している処理を挿入することで実現する。なお、分岐処理S172で処理S173への分岐時の処理には変更ない。
【0051】
図12の再送パケット識別の処理フロー(S170)において、受信パケットの当該パケットを特定するための情報をパケットから抽出する(S171)。次に、当該パケットから抽出した情報を、順序情報保管部F140が保持する情報の中から検索する(S172)。同一セッション情報が登録済みの場合、当該パケットを再送パケットまたは再送パケットに続くパケットと判断して、新たな登録は行わず、今回付与された順序情報の変わりに、既に登録されていた順序情報を代わりに当該パケットへ付与する(S173)。同一セッション情報が未登録の場合、パケットから抽出した情報と当該パケットに付与された順序情報と対応付けて登録・保管する(S174)。
【0052】
図3に戻り、さらに、事前に該当する宛先に対して遅延時間が指定されている場合、当該パケットの転送処理を指定時間だけ遅延する(S180)。
【0053】
本実施例を適用した場合、後述するようにパケットの出力処理を行う通信装置10内で、複数の通信路から送られてきたパケットをバッファなどに一時保存した後に整列処理を行う。しかし、出力処理を行う宛先に対する通信路の数が多数ある場合や、出力処理を行う宛先に対する通信路間の伝送遅延の差が大きい場合には、整列処理のために多量のパケットを一時保存するためのバッファを具備する必要がある。
【0054】
そこで、入力処理を行う通信装置10で一定時間パケットの転送処理を遅延させる(S180)こと、つまり当該通信装置内にもバッファを具備させパケットを一時保存して転送処理を遅延させることにより、出力側の通信装置10で用意する必要のあるバッファ量を削減することが可能になる。これは多対1のような通信が1箇所に集まるような形態の網を構成するとき特に有効である。入力処理部1010からスイッチ部2100へパケットを転送するため宛先応じたSW IF602−1〜602−nへ当該パケットを送出する(S190)。以上で、当該転送処理を終了する(S199)。
【0055】
図4は、図2に記した本実施例の通信装置10の内部構造を構成する出力処理部1020におけるパケット転送の処理フローの一例を示す(S200)。出力処理部1020においてSW IF602−1〜602−nからパケットを受信する(S210)。受信したパケットの入力ポートが加入者側なのか通信時事業者網なのか判断する(S220)。受信パケットの入力ポートが通信事業者網側の場合、受信パケットの送出先ポートが加入者側なのか通信事業者網側なのか判断する(S230)。受信パケットが送達確認か否かを判断し、送達確認の場合、順序情報保管部F140に通知する(S240)。受信パケットの入力ポートが通信事業者網側で、送出先ポートが加入者側の場合、パケット整列部F210、順序情報無効化部F220が、パケット整列および順序情報無効化処理を行う(S250)。パケットに通信装置10での受付時刻を示す順序情報が付与された場合、出力処理部1020で当該パケットを処理する時刻は整列処理後なので条件式(1)を満たす。
【0056】
t+Dmax≦tn………………………………………………………(1)
ここで、tはパケットの受付時刻、Dmaxは当該パケットの宛先と送信元を結ぶ複数の通信路の伝送遅延の最大値、tnは現在時刻。
【0057】
一方、パケットに通信装置10での受付時刻ではなく、受付時刻より未来を示す時刻を付与することができる。この場合、条件式(1)を満たさず現在時刻との差分Δtを式(2)で求めることができる。
【0058】
Δt=(t+Dmax)−tn…………………………………………(2)
この場合、当該時刻(t+Dmax)までのΔt時間だけパケットの転送処理を遅延する(S260)。この機能により、通信装置10が指定した時間に加入者へパケットを送信することが可能になり、複数の加入者に対して同一情報を同一時刻に配信するような公平な通信を実現可能になる。出力処理部1020から網へパケットを転送するため宛先応じたパケットIF601−1〜601−nへ当該パケットを送出する(S270)。当該転送処理を終了する(S280)。
【0059】
図5は、本実施例における通信装置10で付与する順序情報付与の処理フローの一例を示す(S160)。通信装置10が保有する時計から現在の時刻情報を取得して、順序情報を構成する(S161)。先に述べたように、このとき同一時刻に複数パケットの受付を許容するため付加情報と合わせて順序情報を構成できる。S161で生成した順序情報を独自に決めたパケット位置に挿入して当該順序情報を有効化する(S162)。順序情報付与の処理を終了する(S163)。
【0060】
図6は、本実施例における順序情報無効化の処理フローの一例を示す(S150)。パケットに既に付与されている順序情報に対して、前記無効化手法を適用して無効化する(S151)。順序情報無効化の処理を終了する(S152)。
【0061】
図7は、本実施例におけるパケット整列および順序情報無効化の処理フローの一例を示す(S250)。パケットに付与されている順序情報が示す時刻がT、宛先の通信装置におけるパケット受信時の時刻がTr、送信元の通信装置と宛先の通信装置間の伝送遅延がΔtの時、Tが(Tr−Δt)よりさらに過去の時刻を示している場合、当該パケットを再送のため過去の順序情報が付与されているとみなしてパケットの整列処理S252をスキップし無効化処理S253へ移行する(S251)。本処理により宛先の通信装置で整列のために常に一定時間待たなければならない処理をスキップすることが可能になるので、再送パケットを他の通常パケットよりいち早く宛先へ送出することが可能になり、再送により発生した遅延時間を縮小することが可能になる。事前に設定された時間内に受信した全パケットをパケットに付与されている順序情報に従い網の受付け順に整列する(252)。網独自に付与した順序情報を無効化し、S150で無効化した順序情報があれば有効化しパケットを復元する(S253)。パケット整列および順序情報無効化の処理を終了する(S254)。
【0062】
図8Aは、本実施例を適用したネットワークシステムがユーザに等時性を提供するタイミングチャートの一例を示す。図8Aではユーザ#1(N1)、ユーザ#2(N2)、およびユーザ#3(N3)が、通信装置A(E1)、通信装置B(E2)、通信装置C(E3)、および通信装置Z(E4)で構成されるネットワークシステムを介して、宛先サーバ(N4)の提供するサービスの利用例として、各ユーザが送出したパケットがネットワークシステムを介してどのようなタイミングで宛先サーバ(N4)に到達するかを示している。
【0063】
ここでは、ユーザ#1(N1)とユーザ#2(N2)が同時刻(T1およびT2)に宛先サーバ(N4)に向けてパケットを送出する。つづいて、ユーザ#3(N3)が時刻T3に宛先サーバ(N4)に向けてパケットを送出する。このとき、T1およびT2とT3の時刻には時間差(D1)がある。ユーザ#1(N1)、ユーザ#2(N2)、およびユーザ#3(N3)の送出したパケットは通信装置A(E1)、通信装置B(E2)、通信装置C(E3)にそれぞれ時刻T4、T5、T6に到着する。各装置はパケットの宛先である宛先サーバ(N4)に隣接する通信装置Z(E4)に受信したパケットを転送する。
【0064】
通信装置Z(E4)では、ユーザ#1(N1)、ユーザ#2(N2)、およびユーザ#3(N3)の送出したパケットをそれぞれ時刻T9、T7、T8に受信する。通信装置Z(E4)は、宛先サーバ(N4)宛のパケットを網の受付け時刻から送信元毎に事前に設定された網の遅延時間経過後に宛先へ送出する。通信装置Z(E4)は各パケットの受信後、ユーザ#1(N1)が送出したパケットはD4時間後の時刻T10、ユーザ#2(N2)が送出したパケットはD5時間後の時刻T10、そしてユーザ#3(N3)が送出したパケットはD6時間後の時刻T11に宛先サーバ(N4)へそれぞれ送出する。
【0065】
このように、本実施例を適用したネットワークシステムでは、各ユーザがパケットを送出した時刻に差(D1)があったとしても、ネットワークシステムを構成する各通信装置にパケットが到着した時刻差(D2)を基に宛先サーバ(N4)へ送出するパケットの時刻差(D3)を再現する。
【0066】
図8Bは、本実施例を適用したネットワークシステムがユーザに等時性を提供する環境において再送発生時に、本実施例で述べた再送に関する機能がない場合のタイミングチャートの一例を比較のために示す。この例では、ユーザは宛先サーバから送達確認パケット(Ai_nj)の受信後に次のパケットを送出するものとする。このときユーザ#1(N1)およびユーザ#2(N2)がそれぞれ宛先サーバ(N3)へ3つのパケット(P1_n1、P2_n1、P3_n1、およびP1_n2、P2_n2、P3_n2)を送信する。P1_n1およびP1_n2は宛先サーバでは時間差(D1)で受信される。
【0067】
P2_n1は宛先サーバに到達する前に何らかの障害で紛失する。そのためユーザ#1はP2_n1を再送する。その結果、P2_n1およびP2_n2は宛先サーバでは時間差(D2)で受信される。以降、ユーザ#1とユーザ#2が宛先サーバと送受信するパケットの間には再送によって生じた時間差が固定化してしまう。
【0068】
図8Cは、本実施例を適用したネットワークシステムがユーザに等時性を提供する環境において再送発生時に、本実施例で述べた再送に関する機能がある場合のタイミングチャートの一例を示す。この例では、ユーザは宛先サーバから送達確認パケット(Ai_nj)の受信後に次のパケットを送出するものとする。このときユーザ#1(N1)およびユーザ#2(N2)がそれぞれ宛先サーバ(N3)へ3つのパケット(P1_n1、P2_n1、P3_n1、およびP1_n2、P2_n2、P3_n2)を送信する。P1_n1およびP1_n2は宛先サーバでは時間差(D1)で受信される。
【0069】
P2_n1は宛先サーバに到達する前に何らかの障害で紛失する。そのためユーザ#1はP2_n1を再送する。しかし、宛先サーバに隣接する通信装置Aが再送パケットと認識し、もともとのパケットに付与した過去の時刻情報に基づく順序情報をパケットに付与し、通信装置Zが当該パケットを再送パケットと認識し整列のための待合せなく即座に宛先サーバへ送出する。その結果、P2_n1とP2_n2は宛先サーバでは時間差(D4)は図8Bの時間差(D2)よりも縮小する。さらにP3_n1においても通信装置Aおよび通信装置Zでの再送パケットに対する処理は継続され、宛先サーバにおけるP3_n1とP3_n2の時間差(D5)はさらに縮小する。これにより、これまで再送によりユーザ#1とユーザ#2の送受信するパケット間に生じた時間差が固定化することなく、時間の経過と共に縮小させることが可能になる。
【0070】
図9は、本実施例の通信装置で扱う各種遅延時間を算出するために扱う通信装置間の伝送遅延の測定区間を示す。サーバ203が提供するサービスを加入者がクライアント端末101および102で利用する場合、通信事業者はこの区間で通信ができるように通信装置11−13間、および通信装置12−13間に通信路を設定する。この際、通信事業者は管理端末を介して通信装置が提供する網の運用管理のための試験機能を利用して、対象となる通信経路の伝送遅延の測定を行う。図9では、通信装置11−13間の伝送遅延がd1、通信装置12−13間の伝送遅延がd2である例を示す。ここで、通信装置13に設定する各通信装置11と通信装置12から送出されるパケットに対する遅延時間の算出方法を説明する。
【0071】
d2>d1の場合、通信装置11から送出されるパケットに対する通信装置13で挿入される遅延時間D1は下式(3)で算出する。
【0072】
D1=d2−d1…………………………………………………………(3)
通信装置12から送出されるパケットに対する通信装置13で挿入される遅延時間D2は下式(4)で算出する。
【0073】
D2=0 ∵d2>d1…………………………………………………(4)
また、このとき対象とする通信路の遅延時間で最も大きいものを最大遅延時間Dmaxとする。したがって、この例では通信装置13では通信装置11が送出したパケット遅延時間D1後に宛先へ転送する。また、通信装置12が送出したパケット遅延時間D2後、つまりパケット受信直後に宛先へ転送する。ただし、通信装置が宛先へパケットを転送するのは、転送するパケットの順序情報内の時刻情報tiが次の条件式(5)を満たす場合である。
【0074】
ti+Di≧tn+Dmax……………………………………………(5)
このとき、Diは該当する送信元iに対して挿入される遅延時間。tnは現在時刻。
【0075】
この条件式(5)を満たさない場合、つまり、パケットに付与された時刻情報が未来の時刻を指定している場合、該当するパケットは条件式(5)が満たされるまで、当該通信装置内のバッファに格納され、宛先への転送が遅延される。通信装置が転送するパケットに対して順序情報内に未来の時刻情報を付与することにより、通信装置は伝送遅延にとらわれず指定した時刻にパケットを宛先へ配信することが可能になる。これは、サービスを提供するサーバから同時に当該サービスの利用者に対して情報を公平に配信することを可能にする。
【0076】
図10は、本実施例における通信装置で扱うパケットを構成する各フィールドのレイアウトを、イーサネット(登録商標)のフレームを例として用いて示す。標準的なイーサネットフレームL10は、同図の上段に示すように、宛先アドレスL11、送信元アドレスL12、タイプ値L13、ペイロードL14から構成される。加入者からイーサネットフレームL10を受付けると通信装置10は、受付けたパケットの送信元アドレスL12とタイプ値L13の間に新しいタイプ値L21と順序情報L22を挿入した、同図中段に示すパケットL20を構成して網内を転送する。
【0077】
加入者から受付けたパケットに既に順序情報が付与されていた場合、新しいタイプ値L21と当該順序情報L22との間に新しい順序情報を挿入する。つまり、順序情報を保持するパケットは、保持する順序情報の数に係わらず、順序情報の保有を示す新しいタイプ値L21のフィールドは常に1つである。新しいタイプ値L21は、タイプ値を管理するIANA(The Internet Assigned Numbers Authority)に申請したユニークな値を使用する。
【0078】
同図下段に示すように、順序情報L22は、無効化フラグL221、最終順序情報フラグL222、時刻情報L223、および付加情報L224で構成される。無効化フラグL221は、当該順序情報が網内を参照されるべきか、参照されるべきでないかを示す。このフラグがセットされると通信装置は送信順序を決定する際に当該順序情報を参照しない。最終順序情報フラグL222は、通信装置が参照する最後の順序情報に当該フラグが設定される。パケット内に順序情報L22を付与するとき、最初に付与された順序情報に当該フラグが設定される。既に順序情報が付与されたパケットに、新たに順序情報L22を挿入する場合、挿入する順序情報の最終順序情報フラグL222は設定しない。時刻情報L223は、通信装置がパケットを受付けた時刻、または当該パケットの配信時刻を示す未来の時刻を示す。付加情報L224は、同一時刻に受付けたパケットの順序を識別するため通信装置で付与されるHWクロックカウント等の情報である。
【0079】
通信装置10は、加入者からパケットL10を受付けると、順序情報を付与したパケットL20を構成して宛先に向けて転送する。当該パケットが網内を転送され通信事業者の網から出る際に、通信装置はパケットを受付けたときに付与した順序情報を取り除き、受付けたときのパケットL10を復元し送出する。このように網の出側で加入者からのパケットL10を復元するので、等時性を提供する網を利用しても、加入者はこれまで利用してきたサービスを何も変更することなく利用し続けることが可能である。加入者から順序情報が付与されたパケットL20を受付けると、当該順序情報の無効化フラグを設定して、新たに順序情報を挿入する。当該パケットが網内を転送され通信事業者の網から出る際に、通信装置はパケットを受付けたときに付与した順序情報を取り除き、受付けたときに既に付与されていた順序情報に対して設定した無効化フラグを解除してパケットL20を復元し送出する。
【0080】
したがって、加入者が網内で使用する順序情報と同じフォーマットの順序情報を用いて通信を行っても、網の提供する等時性保証機能には影響なく当該パケットを透過的に転送することが可能である。また、加入者またはサーバで順序情報を利用した処理を行う場合、通信事業者が該当する通信装置を設定することにより、本来網出口で取り除かれる順序情報を、取り除かずにそのまま転送することを選択することが可能である。これにより、詐称の可能性のある加入者が付与した順序情報ではなく、詐称することが不可能な通信事業者により付与された順序情報を網の外側でも参照可能になるので、サービスを提供するサーバなどで信頼性の高い順序情報を用いた付加的なサービスを提供することを可能にする。さらに再送時に再送時の現在時刻ではなく、もともと付与していた過去の時刻に基づく順序情報が付与されている場合も、当該順序情報を取り除かずにそのまま転送することを選択することが可能である。
【0081】
なお、加入者から受付けるパケットがMPLSフレームの場合、通信装置が付与する順序情報L22はMPLSラベルとMPLSにより運ばれるペイロードの間に挿入される。通信装置では、加入者から受付けるパケットがMPLSフレームの場合でも、順序情報は前記イーサネットの場合と同様に処理される。
【0082】
図11は、通信装置10が再送パケットを識別するために保持する情報の構成例を示す。IPプロトコルを利用する例では、パケットを特定する情報L15は、IP情報L16、IPパケットが運ぶ上位プロトコル情報L17、該当パケットに当初付与した順序情報L18、そして、当該エントリの削除トリガL19から構成される。このエントリ削除トリガL19は通信事業者が利用状況に応じて設定できる。
【0083】
このエントリ削除のために指定できる条件のオプションには、管理者の設定した一定時間経過後(タイマ)、管理者が設定した送信バイト数に達したとき、管理者が設定した送信パケット総数に達したとき、前記タイマまたは前記送信バイト数に達したとき、前記タイマまたは前記送信パケット総数に達したとき、同一宛先サーバに対する他ユーザの総セッションの平均送信バイト数に達したとき、同一宛先サーバに対する他ユーザの総セッションの平均送信パケット総数に達したとき、TCPのACKパケット受信時などの送達確認受信時が利用できる。
【0084】
管理者の設定した一定時間経過後(タイマ)の条件は再送により発生する遅延時間が事前または運用中に観測して把握できる場合、通信事業者の網の出側で短縮できる遅延時間から、該当セッションに古い順序情報を付与すべき適切な期間を指定できる。管理者が設定した送信バイト数に達したとき、および管理者が設定した送信パケット総数に達したときの条件は、再送により発生する遅延時間が事前または運用中に影響のある送信バイト数または送信パケット総数を把握できる場合、該当セッションに古い順序情報を付与すべき適切な期間を指定できる。前記タイマまたは前記送信バイト数に達したとき、および前記タイマまたは前記送信パケット総数に達したときの条件は、前記タイマだけの利用または前記送信バイトもしくは前期送信パケット総数を単独で適用した場合より、2つの閾値を用いる事で該当セッションに古い順序情報を付与すべき適切な期間をより高い精度で指定できる。
【0085】
同一宛先サーバに対する他ユーザの総セッションの平均送信バイト数に達したとき、および同一宛先サーバに対する他ユーザの総セッションの平均送信パケット総数に達したときの条件は、再送の起きたユーザのセッションだけではなく、他ユーザのセッションの状況を踏まえ判断できるので、該当セッションに古い順序情報を付与すべき適切な期間を最も正確に指定することが出来る。送達確認受信時の条件は再送パケットのみに古い順序情報を付与することを指定できる。
【0086】
図11に示すように、IP情報L16は、送信元IPアドレス、宛先IPアドレス、およびIPパケットのヘッダ内に保持するプロトコル識別子で構成される。
【0087】
IP情報L16の一例であるTCP情報は、送信元ポート番号、宛先ポート番号、およびシーケンス番号で構成される。TCP/IP利用時に、セッションを識別するためには前記IP情報とTCP情報の送信元ポート番号および宛先ポート番号の一致により、同一セッションと判断できる。再送時の同一パケットを識別するためには前記IP情報とTCP情報の全ての一致により判断できる。
【0088】
UIP情報L16の他の例であるDP情報は、送信元ポート番号、宛先ポート番号、およびシグネチャで構成される。UDP/IP利用時には、パケットを特定するための情報がUDPヘッダには含まれないので、パケットを特定するための補助的な情報としてのシグネチャとして、UDPパケットに対するMD5、SHA等のハッシュ値、UDPパケット長、イーサフレームのFCS値、イーサフレームに対するハッシュ値、UDPパケットの全内容などが利用できる。UDPパケットに対するハッシュ値、およびイーサフレームに対するハッシュ値は、ハッシュ値として管理することにより保持する情報量を減らすことが出来るので、少ないメモリ量で実現できる。UDPのパケット長、およびイーサフレームのFCS値は、前記ハッシュを用いる手法と比べ新たに演算を行う必要がないので処理の負荷が軽い。また、ハッシュ適用時と同様に保持する情報量を減らすことが出来るので、少ないメモリ量で実現できる。UDPパケットの全内容は、保持する情報量が増えるが、前期のほか保守方に比べ誤りなくパケットを特定できる利点がある。
【0089】
以上、本発明の一実施例を図面に従い説明したが、本発明は上述した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されものではない。また、実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0090】
更に、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により専用ハードウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD(Digital Versatile Disc)等の記録媒体におくことができるし、必要に応じてネットワーク等を介してダウンロード、インストロールすることも可能であることは言うまでもない。
【符号の説明】
【0091】
1:加入者の管理責任範囲
2:通信事業者の管理責任範囲(事業者ネットワーク)
3:POI(Point of Interface)
10:通信事業者の管理する通信装置
20:順序情報付与機能
30:パケット整列送出機能
100:加入者端末
200:サービスを提供する宛先サーバ
210:管理者端末
600−1...600−n:パケット送受信ポート
602−1...602−n:スイッチ部へのインターフェース
610−1...610−n:ネットワーク・インターフェース
1000:ネットワーク・インターフェースの管理部
1010:入力処理部
1020:出力処理部
2000:ノード管理部
2100:スイッチ部
N1、N2、N3:ユーザ#1、#2、#3
N4:宛先サーバ
E1、E2、E3、E4:通信装置A、B、C、Z
T1、T2、T3:ユーザ#1、#2、#3のパケット送出時刻
T4、T5、T6:通信装置A、B、Cのパケット受信時刻
T7、T8、T9:通信装置Zが通信装置B、C、Aからのパケット受信時刻
T10:宛先サーバへ通信装置Aおよび通信装置Bからのパケットの送出時刻
T11:宛先サーバへ通信装置Cからのパケットの送出時刻
T12:ユーザ#1およびユーザ#2からのパケットの受信時刻
T13:ユーザ#3からのパケットの受信時刻
D1:ユーザ#1およびユーザ#2のパケット送出時刻とユーザ#3のパケット送出時刻の時間差
D2:通信装置Aおよび通信装置Bのパケット受信時刻と通信装置Cのパケット受信時刻の時間差
D3:通信装置Zで通信装置Aおよび通信装置Bからのパケットと通信装置Cからのパケットの送出時刻の時間差
D4:通信装置Aからのパケットに対する挿入する遅延時間
D5:通信装置Bからのパケットに対する挿入する遅延時間
D6:通信装置Cからのパケットに対する挿入する遅延時間
【技術分野】
【0001】
本発明は、パケットの網への入出順序を保証するネットワークシステム、及び通信装置に関するものである。
【背景技術】
【0002】
現在の通信事業者が提供する通信サービスでは、地理的に離れた複数ユーザが同じ宛先へと送出するパケットの通信事業者の網に入る順番と宛先で網から出ていく順番は、ユーザと宛先間またはユーザ間の物理的な距離などの違いにより発生する伝送遅延が異なるので必ずしも等しくない。
【0003】
そのため、処理結果が処理を実行する順序により決まるトランザクション(例えば、ネットワークを介した株・通貨の売買などの電子商取引)の場合、利害関係のあるユーザ間で伝送遅延による僅かな時間差でも有利/不利の関係が生まれてしまい、提供するサービスに対する公平性が維持できない。
【0004】
つまり、処理要求がネットワークを介して転送され処理される場合、ネットワークへ送出された処理要求は処理を実行するサーバまでの物理的距離などに応じた伝送遅延を伴い当該サーバへ転送され受付処理される。つまり、処理要求の受付処理が行われる順序は、処理要求の送出順序だけでなく、通信に伴う伝送遅延時間にも依存してしまう。この改善策として、ユーザからの処理要求にタイムスタンプを付与して、トランザクションを処理するサーバで順序を並べ替える方法がある。
【0005】
特許文献1は、ユーザの利用する端末間で時刻同期をして、端末が送出するユーザの処理要求にタイムスタンプを付与する機能を持ち、トランザクションを処理するサーバは要求の受信順ではなく、処理要求に付与されたタイムスタンプに基づいて要求の順序を並び替え、処理要求の送出順に処理を行うことを実現している。具体的には、次の内容が開示されている。
【0006】
クライアントマシンは、タイムサーバから定期的に絶対時刻を受信し、受信した絶対時刻を用いてクライアントマシンのタイマの時刻補正を行う。各クライアントマシンは、サーバマシンに対して各種サービスの提供を受けるためのサービスデータ要求とタイマの時刻データ(絶対時刻)とをインタネット経由で送出する。サーバマシンの制御部は、記憶装置に順次記憶するサービスデータ要求を、サービスデータ要求に付与されている時刻データ(絶対時刻)に基づいて、絶対時刻が早い順にソートするよう制御する。また、サーバマシンは、各クライアントマシンからのサービスデータ要求が、制御部に到着してからの時間を計時するためのタイマを備える。各クライアントマシンとサーバマシンとの間の伝送時間のうち最大の伝送時間を最大遅延時間とし、サーバマシンは、サーバマシンの備えるタイマを用いて、サービスデータ要求を最大遅延時間分は記憶装置に保持してからサービス要求データの処理を実行する。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開平11−259386号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかし、特許文献1では、タイムスタンプを扱う機能は、クライアントマシンで動作するサービス要求プログラム、およびサーバマシンで動作するサービス処理プログラムで実現されている。これは当該機能を、サーバが提供するサービスの一部として、およびクライアントマシンのサービスを利用する機能の一部として、個々のサービス毎に作成し組み込む必要がある。つまり、当該機能を予め具備するサービスだけに利用が限定されてしまう。そのため、当該機能を利用したいサービス提供者またはユーザは、サービス毎に当該機能を具備する専用サービスを構築する必要がある。また、特許文献1では、タイムスタンプを扱う機能は、クライアントマシン、すなわち、端末等のユーザがアクセスできる場所で動作しているので、悪意あるユーザにより、ユーザ間の公平性を担保するために利用するタイムスタンプ情報が詐称される危険がある。
【0009】
本発明の目的は、悪意あるユーザによる詐称を防止し、地理的に離れた複数ユーザに等時性が保証されたサービスを提供するネットワークシステム、及び通信装置を提供することにある。
【0010】
また、本発明の目的は、再送の起きたユーザのセッションが他ユーザのセッションに対して不利な状況が継続するのを是正するネットワークシステム、及び通信装置を提供することにある。
【課題を解決するための手段】
【0011】
上記の目的を達成するため、本発明においては、複数の通信装置を接続する網を備えるネットワークシステムであって、網の外部からパケットを受信する通信装置は、他の通信装置と時刻同期の取れた順序情報をパケットに付与し、パケットを網の外部に送出する通信装置は、パケットに付与された順序情報に基づきパケットを整列して送出を行い、網の外部からパケットを受信する通信装置は、パケットの再送が発生する場合、当該パケットに先に付与した過去の時刻に基づく順序情報を付与して当該パケットの再送信を行うネットワークシステムを提供する。
【0012】
また、上記の目的を達成するため、本発明においては、網内で相互に接続される通信装置であって、網の外部からパケットを受信し、他の通信装置と時刻同期の取れた順序情報をパケットに付与する入力処理部と、他の通信装置がパケットに付与した順序情報に基づき、パケットを整列して網の外部に送出する出力処理部を備え、入力処理部は、パケットの再送が発生する場合、当該パケットに先に付与した過去の時刻に基づく順序情報を付与する通信装置を提供する。
【発明の効果】
【0013】
網に接続する全ユーザに等時性を提供することができ、サービス提供者またはユーザは、所望のサービスを変更することなく、ユーザ間の時間的公平性を担保できる。
【0014】
さらに、悪意あるユ−ザによる時刻情報詐称などを困難にする機能に対して、ユーザ端末やサーバが備えるパケットの再送機能が動作しても、等時性の保証を維持できるように当該サービスを拡張することができる。
【図面の簡単な説明】
【0015】
【図1】第1の実施例に係る、機器の管理責任範囲と機能配置位置の関係を説明するための図である。
【図2】第1の実施例に係る、通信装置の内部構造に一例を示す図である。
【図3】第1の実施例に係る、入力処理部におけるパケット転送の処理フローの一例を示す図である。
【図4】第1の実施例に係る、出力処理部におけるパケット転送の処理フローの一例を示す図である。
【図5】第1の実施例に係る、順序情報付与の処理フローの一例を示す図である。
【図6】第1の実施例に係る、順序情報無効化の処理フローの一例を示す図である。
【図7】第1の実施例に係る、パケット整列および順序情報無効化の処理フローの実施例。
【図8A】第1の実施例に係る、網が等時性を提供する適用例のタイミングチャート図である。
【図8B】第1の実施例に係る、網が等時性を提供する適用例の、再送に関する機能が無い場合のタイミングチャート図である。
【図8C】第1の実施例に係る、網が等時性を提供する適用例の、再送に関する機能が有る場合のタイミングチャート図である。
【図9】第1の実施例に係る、通信装置で扱う各遅延時間を算出するための伝送遅延の測定区間を示す図である。
【図10】第1の実施例に係る、通信装置で扱うパケットを構成する各フィールドのレイアウトの一例を示す図である。
【図11】第1の実施例に係る、通信装置が再送パケットを識別するために保持する情報の一構成例を示す図である。
【図12】第1の実施例に係る、通信装置で再送パケット識別の処理フローの一例を示す図である。
【発明を実施するための形態】
【0016】
以下、図面に従い本発明の実施形態を順次説明する。
【実施例1】
【0017】
図1は第1の実施例における機器の管理責任範囲と機能配置位置の関係を説明するための図である。同図において、1が加入者の管理責任範囲、2が通信事業者の管理責任範囲、3がPOI(Point of Interface)を示している。このPOI3が、加入者の管理責任範囲1と通信事業者の管理責任範囲2に分割される網における管理責任分界境界を示す。本明細書において、この通信事業者の管理責任範囲2内の網を、事業者ネットワークと呼ぶ場合がある。
【0018】
同図に示すように、本実施例のネットワークシステムは、加入者端末100、加入者端末から利用するサービスを提供する宛先サーバ200、通信事業者が通信サービスを提供するために利用する通信装置10から構成される。本実施例の構成は、ホームゲートウェイなどの加入者宅内に設置される通信事業者が管理する通信装置、またはMPLS−TP(Multi Protocol Label Switching−Transport Profile)装置など通信事業者の局舎内に設置される通信事業者が管理する通信装置に適用される。
【0019】
上述した特許文献1では、当該特許技術が適用されるのが加入者の管理するクライアントマシンおよびサービス提供者の管理するサーバマシンであり、ネットワーク機能を提供する通信事業者は関与しない。一方、本実施例の通信装置の構成が適用されるのは通信事業者の管理する通信装置である。加入者およびサービス提供者は、通信事業者の提供する事業者ネットワーク内の等時性を保証する通信サービスを利用するだけで、自身の通信装置などになんら機能を追加・実行する必要がない点に特徴がある。
【0020】
図1において、加入者端末100は、通信事業者の通信装置10を介し、通信事業者の提供する通信サービスを利用して宛先サーバ200と通信することにより、加入者は宛先サーバ200が提供するサービスを利用する。なお、通信事業者の管理責任範囲2、即ち事業者ネットワーク2内の全ての通信装置10は、それらを管理する通信事業者の管理者端末210により、制御信号220等を用いて制御される。
【0021】
加入者端末100が接続される通信事業者の通信装置10は、事業者ネットワーク2内で加入者から受付けるパケットに付与するためのユニークな識別子として時刻を使用する。そのため、通信装置10はGPS(Global Positioning System)などの時刻取得機能、またはIEEE1588v2やNTP(Network Time Protocol)などの時刻同期機能を利用して網内の通信装置と時刻同期を実現する機能を具備する。
【0022】
加入者端末100が接続される通信事業者の通信装置10は、加入者から受信するパケットに対して網の受付け順を示す順序情報付与機能20を具備する。順序情報には、通信装置10が保持し、他の通信装置10と時刻同期している時計から取得した時刻情報を含む。
【0023】
この通信装置10の順序情報付与機能20は、加入者端末100と宛先サーバ200との間の通信において何らかの障害により、加入者端末100がパケットを再送した場合は、再送パケットを受信した時刻の時刻情報ではなく、加入者端末100から再送パケットに対応する当初のパケットを受信した時に付与した過去の順序情報を再び付与する機能を具備する。更に、順序情報付与機能20は、当該加入者端末100の送信するパケットに対しては、通信事業者が設定したルールに基づき、再送後の一定期間だけ当該順序情報を付与し続ける。この一定期間経過後、通信装置10は装置内に保持している該当順序情報を削除する機能を具備する。
【0024】
また、高速なネットワーク・インターフェースを持つ通信装置では、通信装置が保有する時計が示す同一時刻内に複数のパケットを加入者から受付けることが想定される。このようなパケットに対して受付け順序で整列するとき参考情報として参照できるように、上述した順序情報を、時刻情報と付加情報とでも構成できる。この付加情報はシーケンス番号 (i.e.0、1、2...)、同一時刻内の該当ポートでの累積受信バイト数 (e.g.0、64、128、...)、ハードウェア(HW)のクロックカウント値、装置毎に設定される任意の整数値などが適用できる。
【0025】
シーケンス番号は、同一装置内の順序を識別するための最も単純な仕組みである。累積受信バイト数は、ネットワーク・インターフェースにワイヤレートでパケットが入力された場合に、時計の最小刻み間の相対的な位置を示せる。HWのクロックカウントは、時計の最小刻みより細かいHWクロック値を用いるので、累積受信バイト数を適用した場合より細かい粒度の相対位置を示すことが出来る。任意の整数値は、各通信装置に事前に優先順位を割り当てる効果がある。この場合、任意の整数値とシーケンス番号を組み合わせることにより、任意の整数値で通信装置間での順序を決め、シーケンス番号で各通信装置内の順序を決めることが可能になる。特に同一通信装置で網が構成されている場合、各通信装置が同一周波数で動作していると仮定できるので、複数送信元から送信された複数の同一時刻を示す順序情報を持つパケットを整列する際に、付加情報としてHWクロック値を用いることにより実装が容易で高い精度を実現できる。
【0026】
本実施例における加入者端末100が接続される通信事業者の通信装置10は、事前に指定された任意の時間だけ、加入者から受信するパケットを網内に送出することを遅延する機能を具備する。当該遅延機能により、本来、宛先サーバ200が接続される通信事業者のサービス提供者側の通信装置10での遅延時間を、加入者側の通信装置内で消費することになる。ここで、多数の加入者端末と通信する宛先サーバに接続するサービス提供者側の通信装置10は、網の伝送遅延から求められる適切な待ち時間の間に、加入者端末から受信することが想定される全パケットを一時的に待機させるバッファが必要になる。しかし、加入者側の通信装置の当該遅延機能により、このサービス提供者側の通信装置での適切な待ち時間が短縮できるので、当該通信装置が持つべきバッファ量を削減することが可能になる。
【0027】
また、加入者端末100が接続される通信事業者の加入者側の通信装置10は、加入者から受信するパケットに既に順序番号などの情報(事業者ネットワークで付与される順序情報と区別するため「既存順序情報」と呼ぶ)が付与されていた場合、既存順序情報を無効化する機能を具備する。この事業者ネットワークの入側の通信装置10における無効化機能は、既存順序情報が持つ無効フラグ・フィールドにビットをセット、既存順序情報とは無関係に追加的に網独自の順序情報の付与、既存順序情報が過去の時刻情報を保有していれば順序詐称の可能性があるのでパケット自体の廃棄、既存順序情報が未来の時刻を示していれば網の出側で指定時刻までの送出保留機能への指示と判断し入側ではそのまま透過、既存順序情報を詐称防止のため無条件に現在値で更新、または、既存順序情報の値に関係なく詐称防止のため無条件にパケットを廃棄などの実現方法が考えられる。
【0028】
一方、宛先サーバ200が接続される通信事業者の通信装置10は、同一の宛先へ送出するパケットを事前に設定された任意の時間だけ送出を遅延させ、網の入側の通信装置10の順序情報付与機能20でパケットに付与された順序情報でパケットを整列してから、宛先へ送出するパケット整列送出機能30を具備する。このとき、順序情報内の時刻情報は網がパケットを受付けた時刻を示すので、出側の通信装置10では、当該時刻が最も古いパケットから順に送出する。順序情報によるパケット整列送出機能30は、パケットの受付け順序に従い、受付けたタイミングで該当パケットを宛先へ送出する。
【0029】
また、本実施例においては、宛先サーバ200が接続される通信事業者の通信装置10は、宛先サーバ200に送出するパケットに付与された順序情報の示す時刻が、現在時刻から事前に設定された任意の時間だけ遡った時刻より、さらに過去の時刻が付与されていた場合、当該パケットが再送パケット、または再送発生以降に加入者端末100から送出され、過去の順序情報が付与されたと判断し、当該通信装置での整列処理をスキップして、宛先サーバ200へ送出する機能を具備する。
【0030】
更に、宛先サーバ200が接続される通信事業者の通信装置10のパケット整列送出機能30は、順序情報によるパケット整列送出機能30で順序情報の前後関係を判断する機能を具備する。順序情報の前後関係は、順序情報内の時刻情報の前後関係により決定する。また、順序情報の前後関係は、同一時刻内に複数パケットを受け付けることを考慮して、時刻情報と付加情報により前後関係を判断できる。この付加情報は、パケット内の優先順位を示すフィールドの値、前記のシーケンス番号など、またはその両方である。パケット内の優先順位を示すフィールドを参照することにより、網の受付け順序だけでなく加入者または通信事業者の付与する優先順位に従い整列順序を制御することが可能になる。パケット内の優先順位を示すフィールドは、MPLSのTC(Traffic Class)フィールド、VLAN(Virtual LAN)タグのCoS(Class of Service)フィールド、IP(Internet Protocol)パケット内のToS(Type of Service)フィールドなどである。
【0031】
宛先サーバ200が接続される通信事業者の通信装置10のパケット整列送信機能30は、パケットに付与された順序情報によりパケットを整列しようとするが、複数のパケットが全く同じ順序情報を保持している場合に、それらの中から先に送出するパケットを選択する機能を具備する。順序情報が完全に一致した場合の順序決定方法は、パケットの整列を行う通信装置10の受信パケットを保持する受信キューなどのバッファ内の並び順に従う方法や、ランダムな選択方法がある。このランダムな選択方法として、乱数を受信キュー内のエントリを指すインデックスとして利用して選択することなどが挙げられる。
【0032】
上述の通り、宛先サーバ200が接続される通信事業者の通信装置10は、網の外部に送出するパケットを、順序情報内の時刻情報が示す時刻までパケットの送出を遅延するパケット整列送出機能を具備する。当該機能により網から指定時間に情報を宛先へ配信することが可能になる。
【0033】
宛先サーバ200が接続される通信事業者の通信装置10は、網から宛先サーバ200へ送出するパケットに対して、網で付与した順序情報を無効化して、網の入側で通信装置10により無効化された順序情報があれば有効化して、網が受付けたパケットの状態を復元する機能を具備する。
【0034】
図2は、図1に示した本実施例における事業者ネットワーク2内の通信装置10の内部構造の一例を示す。同図に示す通信装置10は、装置全体を管理するノード管理部2000、複数のネットワーク・インターフェース610−1〜610−n、およびネットワーク・インターフェースを相互接続するためのスイッチ部2100から構成される。なお、図1に支援した管理者端末210が図示されているが、先に説明した通り、通信装置10の外に位置することは言うまでもない。
【0035】
各ネットワーク・インターフェース610−1〜610−nは、パケット送受信ポート601−1〜601−n、各パケット送受信ポートに対応するスイッチ部へのインターフェース602−1〜602−n、パケット送受信部を介して受信したパケットを処理する入力処理部1010、パケット送受信部を介してパケットの送信処理を行う出力処理部1020、および入力処理部1010および出力処理部1020を制御するネットワーク・インターフェース(Network Interface:NIF)管理部1000で構成される。ネットワーク・インターフェース610−1〜610−nの各々は、通常のコンピュータ構成を備えており、処理部である少なくとも一個のCPU(Central Processing Unit)と、記憶部であるメモリ、及び上述したパケット送受信ポート601−1〜601−n、インターフェース602−1〜602−n等から構成され、CPUとメモリを用いたプログラム実行により、入力処理部1010、出力処理部1020、NIF管理部1000の後で説明する各種の機能を実現することができる。
【0036】
一方、ノード管理部2000は、図2の通信装置10の管理者に対して管理用インターフェースを提供して、当該装置への各種設定/操作を可能にする。ノード管理部2000は、同様に処理部と記憶装置を保持しており、通信装置の初期化に必要な初期設定の情報を保持できる。ノード管理部2000は当該装置の初期化時に、記憶装置に格納されている初期設定情報、またはノード管理部2000が持つデフォルト値で、通信装置内の各機能の初期化を行う。管理者端末210を用いて、管理者により装置のノード管理部2000に対して行われた設定や操作は、装置に装備されているネットワーク・インターフェース610―1〜610−nうち適切なNIF管理部1000に適宜反映される。
【0037】
このように、ノード管理部2000は管理者に対して、各ネットワーク・インターフェース610―1〜610−nで保持するパラメータを設定することを可能にする。ノード管理部2000から各ネットワーク・インターフェース610―1〜610−nに設定する主なパラメータには次のようなものがある。
【0038】
・順序情報無効化部F130で加入者からのパケットに順序情報が既に付与されていた場合の挙動(無効化フラグの設定後透過、パケット廃棄などを選択)、
・パケット整列部F210で整列のためにパケットの送出の遅延時間、
・順序情報無効化部F220で順序情報を取り除かずに宛先への送出を可能にするための無効化機能の有効/無効、
・順序情報保管部F140でUDP通信のパケットに対して保存するパケットの識別方法(SHA値、MD5値、イーサフレームのFCS値などを選択)、
・順序情報保管部F140で保管しているパケットの情報の削除方法(指定した経過時間後、送達確認パケット受信時、再送後の送信パケット数などを選択)。
【0039】
図2に示すように、本実施例の通信装置10を構成する入力処理部1010は、遅延挿入部F100、順序情報付与部F110、再送パケット識別部F120、順序情報無効化部F130、順序情報保管部F140、および、順序情報生成部F150を具備する。上述の通り、これらの各機能は、入力処理部1010を構成するCPU等の処理部がプログラム処理によって実現できる。
【0040】
これらの機能ブロックF100〜F150は、図1に記した加入者100から受信するパケットに対して網の受付け順を示す順序番号付与機能20を構成する。遅延挿入部F100は、事前に指定された任意の時間だけ加入者から受信するパケットを網内に送出することを遅延する機能である。順序情報付与部F110は、網内で加入者から受付けるパケットに受付け順序を示すユニークな識別子として時刻を使用した順序情報を付与する機能である。この付与の方法は先に説明し亜通りである。ただし、この順序情報付与部F110は、再送パケット識別部F120で再送パケットと判断し、整列処理バイパスフラグがオンに設定された期間は、順序情報保管部F140で管理する順序情報の中から当該パケットに対応する順序情報を取得し付与する。
【0041】
再送パケット識別部F120は加入者から受信したパケットが再送パケットか否かを判断し、再送パケットなら整列処理バイパスフラグをオンに設定する機能である。順序情報無効化部F130は、加入者から受信するパケットに既に順序番号が付与されていた場合、それを無効化する機能である。順序情報生成部F150は、加入者から受付けるパケットに受付け順序を示すユニークな識別子として時刻を使用した順序情報を生成する機能である。また、順序情報生成部F150は、同一時刻に複数パケットを受付けた場合にも、後でそれらの順序を判断するための付加情報を加えて順序情報を生成する機能を備える。
【0042】
本実施例の通信装置10を構成する出力処理部1020は、さらに送達確認識別部F200、パケット整列部F210、および、順序情報無効化部F220を具備する。上述の通り、これらの機能は、入力処理部1010を構成するCPU等の処理部がプログラム処理によって実現できる。これらの機能は、図1に記した順序情報によるパケット整列送出機能30を構成する。送達確認識別部F200は、受信したパケットが正しく宛先で受信されたことを示す送達確認パケットか否かを判断し、送達確認パケットであれば、入力処理部1010の順序情報保管部F140に通知する。順序情報保管部F140では、送達確認識別部F200からの通知を、自身の管理する順序情報を削除する条件の一つに利用できる。
【0043】
パケット整列部F210は、パケットに付与されている順序情報の示す時刻を参照して、現在時刻から事前に設定された時間だけ遡った時刻以前に付与された順序情報の場合、本パケット整列部F210での整列処理はスキップされる。それ以外の場合、同一の宛先へ送出するパケットを事前に設定された任意の時間だけ送出を遅延させ、パケットに付与された順序情報でパケットを整列してから、宛先へ送出する。順序情報内の時刻情報は網がパケットを受付けた時刻を示すので、当該時刻が最も古いパケットから順に送出する。さらに当該機能はパケットの受付け順序に従い、受付けたタイミングで該当パケットを宛先へ送出する。順序情報無効化部F210は、網で付与した順序情報を無効化して、網の入側で通信装置により無効化された順序情報があれば有効化して、網が受付けたパケットの状態を復元する機能である。
【0044】
上述した通り、通信装置10を構成するNIF管理部1000およびノード管理部2000はそれぞれ時刻管理部F300を具備する。本実施例における時刻管理部F300は、等時性を保証する通信装置間、すなわち通信事業者の管理責任範囲の通信装置間で同期した時刻を管理する機構を実現する。
【0045】
まず、ノード管理部2000が同期した時刻を取得する。例えば、接続されたGPSデバイスから時刻を取得、IEEE1588で隣接する通信装置間で時刻を同期、またはNTPサーバからの同期した時刻を取得する等である。
【0046】
時刻を取得後、ノード管理部の時刻管理部F300が、各ネットワーク・インターフェース610―1〜610−nのNIF管理部1000の時刻管理部F300に、取得した当該時刻を配信する。各ネットワーク・インターフェース610―1〜610−nの入力処理部F1010および出力処理部1020が時刻情報を利用する場合、当該ネットワーク・インターフェース610―1〜610−nのNIF管理部1000の時刻管理部F300の時刻を参照する。
【0047】
図3は、図2に示した本実施例の通信装置10の入力処理部1010におけるパケット転送の処理フローの実施例を示す(S100)。
まず、入力処理部1010においてパケットIFからパケットを受信する(S110)。入力処理部1010は、記憶部に予め記憶されているテーブル情報や受信パケットのIP送信元アドレス等を参照することにより、受信したパケットの入力ポートが加入者側なのか通信時事業者網なのか判断する(S120)。受信パケットの入力ポートが加入者側の場合、IP受信元アドレス等を参照し、受信パケットの送出先ポートが加入者側なのか通信事業者網側なのか判断する(S130)。
【0048】
受信パケットの入力ポートが加入者側で、送出先ポートが通信事業者網側の場合、当該パケットに順序情報が既に付与されているか判断する(S140)。既に順序情報が付与されている場合、順序情報無効化部F120は、順序情報無効化処理(S150)を実施する。その後、順序情報付与部F110は、順序情報生成部F150が生成した、網独自の順序情報を当該パケットに付与する(S160)。そして、再送パケット識別部F120で、当該パケットが再送パケットか否か、および同一セッションか否かを判断する(S170)。
【0049】
S160とS170をこのように別々の機能ブロックF110、F120として実現し、S170の機能を無効化/有効化を選択可能にすることで、再送パケットに対する特別な処理の無効化/有効化が簡単に切替えることが可能になる。一方、S160とS170の機能を統合することにより順序情報の付与機能を1つに統合することが可能になり、少ないCPU処理量、ソースコード量、メモリ消費量等の資源で実現することが可能になる。
【0050】
図12に示すように、この具体的な統合方法の一例は、再送パケット識別S170内の分岐処理であるセッション識別S172で、処理S174へ移行する直前に、S160で実施している処理を挿入することで実現する。なお、分岐処理S172で処理S173への分岐時の処理には変更ない。
【0051】
図12の再送パケット識別の処理フロー(S170)において、受信パケットの当該パケットを特定するための情報をパケットから抽出する(S171)。次に、当該パケットから抽出した情報を、順序情報保管部F140が保持する情報の中から検索する(S172)。同一セッション情報が登録済みの場合、当該パケットを再送パケットまたは再送パケットに続くパケットと判断して、新たな登録は行わず、今回付与された順序情報の変わりに、既に登録されていた順序情報を代わりに当該パケットへ付与する(S173)。同一セッション情報が未登録の場合、パケットから抽出した情報と当該パケットに付与された順序情報と対応付けて登録・保管する(S174)。
【0052】
図3に戻り、さらに、事前に該当する宛先に対して遅延時間が指定されている場合、当該パケットの転送処理を指定時間だけ遅延する(S180)。
【0053】
本実施例を適用した場合、後述するようにパケットの出力処理を行う通信装置10内で、複数の通信路から送られてきたパケットをバッファなどに一時保存した後に整列処理を行う。しかし、出力処理を行う宛先に対する通信路の数が多数ある場合や、出力処理を行う宛先に対する通信路間の伝送遅延の差が大きい場合には、整列処理のために多量のパケットを一時保存するためのバッファを具備する必要がある。
【0054】
そこで、入力処理を行う通信装置10で一定時間パケットの転送処理を遅延させる(S180)こと、つまり当該通信装置内にもバッファを具備させパケットを一時保存して転送処理を遅延させることにより、出力側の通信装置10で用意する必要のあるバッファ量を削減することが可能になる。これは多対1のような通信が1箇所に集まるような形態の網を構成するとき特に有効である。入力処理部1010からスイッチ部2100へパケットを転送するため宛先応じたSW IF602−1〜602−nへ当該パケットを送出する(S190)。以上で、当該転送処理を終了する(S199)。
【0055】
図4は、図2に記した本実施例の通信装置10の内部構造を構成する出力処理部1020におけるパケット転送の処理フローの一例を示す(S200)。出力処理部1020においてSW IF602−1〜602−nからパケットを受信する(S210)。受信したパケットの入力ポートが加入者側なのか通信時事業者網なのか判断する(S220)。受信パケットの入力ポートが通信事業者網側の場合、受信パケットの送出先ポートが加入者側なのか通信事業者網側なのか判断する(S230)。受信パケットが送達確認か否かを判断し、送達確認の場合、順序情報保管部F140に通知する(S240)。受信パケットの入力ポートが通信事業者網側で、送出先ポートが加入者側の場合、パケット整列部F210、順序情報無効化部F220が、パケット整列および順序情報無効化処理を行う(S250)。パケットに通信装置10での受付時刻を示す順序情報が付与された場合、出力処理部1020で当該パケットを処理する時刻は整列処理後なので条件式(1)を満たす。
【0056】
t+Dmax≦tn………………………………………………………(1)
ここで、tはパケットの受付時刻、Dmaxは当該パケットの宛先と送信元を結ぶ複数の通信路の伝送遅延の最大値、tnは現在時刻。
【0057】
一方、パケットに通信装置10での受付時刻ではなく、受付時刻より未来を示す時刻を付与することができる。この場合、条件式(1)を満たさず現在時刻との差分Δtを式(2)で求めることができる。
【0058】
Δt=(t+Dmax)−tn…………………………………………(2)
この場合、当該時刻(t+Dmax)までのΔt時間だけパケットの転送処理を遅延する(S260)。この機能により、通信装置10が指定した時間に加入者へパケットを送信することが可能になり、複数の加入者に対して同一情報を同一時刻に配信するような公平な通信を実現可能になる。出力処理部1020から網へパケットを転送するため宛先応じたパケットIF601−1〜601−nへ当該パケットを送出する(S270)。当該転送処理を終了する(S280)。
【0059】
図5は、本実施例における通信装置10で付与する順序情報付与の処理フローの一例を示す(S160)。通信装置10が保有する時計から現在の時刻情報を取得して、順序情報を構成する(S161)。先に述べたように、このとき同一時刻に複数パケットの受付を許容するため付加情報と合わせて順序情報を構成できる。S161で生成した順序情報を独自に決めたパケット位置に挿入して当該順序情報を有効化する(S162)。順序情報付与の処理を終了する(S163)。
【0060】
図6は、本実施例における順序情報無効化の処理フローの一例を示す(S150)。パケットに既に付与されている順序情報に対して、前記無効化手法を適用して無効化する(S151)。順序情報無効化の処理を終了する(S152)。
【0061】
図7は、本実施例におけるパケット整列および順序情報無効化の処理フローの一例を示す(S250)。パケットに付与されている順序情報が示す時刻がT、宛先の通信装置におけるパケット受信時の時刻がTr、送信元の通信装置と宛先の通信装置間の伝送遅延がΔtの時、Tが(Tr−Δt)よりさらに過去の時刻を示している場合、当該パケットを再送のため過去の順序情報が付与されているとみなしてパケットの整列処理S252をスキップし無効化処理S253へ移行する(S251)。本処理により宛先の通信装置で整列のために常に一定時間待たなければならない処理をスキップすることが可能になるので、再送パケットを他の通常パケットよりいち早く宛先へ送出することが可能になり、再送により発生した遅延時間を縮小することが可能になる。事前に設定された時間内に受信した全パケットをパケットに付与されている順序情報に従い網の受付け順に整列する(252)。網独自に付与した順序情報を無効化し、S150で無効化した順序情報があれば有効化しパケットを復元する(S253)。パケット整列および順序情報無効化の処理を終了する(S254)。
【0062】
図8Aは、本実施例を適用したネットワークシステムがユーザに等時性を提供するタイミングチャートの一例を示す。図8Aではユーザ#1(N1)、ユーザ#2(N2)、およびユーザ#3(N3)が、通信装置A(E1)、通信装置B(E2)、通信装置C(E3)、および通信装置Z(E4)で構成されるネットワークシステムを介して、宛先サーバ(N4)の提供するサービスの利用例として、各ユーザが送出したパケットがネットワークシステムを介してどのようなタイミングで宛先サーバ(N4)に到達するかを示している。
【0063】
ここでは、ユーザ#1(N1)とユーザ#2(N2)が同時刻(T1およびT2)に宛先サーバ(N4)に向けてパケットを送出する。つづいて、ユーザ#3(N3)が時刻T3に宛先サーバ(N4)に向けてパケットを送出する。このとき、T1およびT2とT3の時刻には時間差(D1)がある。ユーザ#1(N1)、ユーザ#2(N2)、およびユーザ#3(N3)の送出したパケットは通信装置A(E1)、通信装置B(E2)、通信装置C(E3)にそれぞれ時刻T4、T5、T6に到着する。各装置はパケットの宛先である宛先サーバ(N4)に隣接する通信装置Z(E4)に受信したパケットを転送する。
【0064】
通信装置Z(E4)では、ユーザ#1(N1)、ユーザ#2(N2)、およびユーザ#3(N3)の送出したパケットをそれぞれ時刻T9、T7、T8に受信する。通信装置Z(E4)は、宛先サーバ(N4)宛のパケットを網の受付け時刻から送信元毎に事前に設定された網の遅延時間経過後に宛先へ送出する。通信装置Z(E4)は各パケットの受信後、ユーザ#1(N1)が送出したパケットはD4時間後の時刻T10、ユーザ#2(N2)が送出したパケットはD5時間後の時刻T10、そしてユーザ#3(N3)が送出したパケットはD6時間後の時刻T11に宛先サーバ(N4)へそれぞれ送出する。
【0065】
このように、本実施例を適用したネットワークシステムでは、各ユーザがパケットを送出した時刻に差(D1)があったとしても、ネットワークシステムを構成する各通信装置にパケットが到着した時刻差(D2)を基に宛先サーバ(N4)へ送出するパケットの時刻差(D3)を再現する。
【0066】
図8Bは、本実施例を適用したネットワークシステムがユーザに等時性を提供する環境において再送発生時に、本実施例で述べた再送に関する機能がない場合のタイミングチャートの一例を比較のために示す。この例では、ユーザは宛先サーバから送達確認パケット(Ai_nj)の受信後に次のパケットを送出するものとする。このときユーザ#1(N1)およびユーザ#2(N2)がそれぞれ宛先サーバ(N3)へ3つのパケット(P1_n1、P2_n1、P3_n1、およびP1_n2、P2_n2、P3_n2)を送信する。P1_n1およびP1_n2は宛先サーバでは時間差(D1)で受信される。
【0067】
P2_n1は宛先サーバに到達する前に何らかの障害で紛失する。そのためユーザ#1はP2_n1を再送する。その結果、P2_n1およびP2_n2は宛先サーバでは時間差(D2)で受信される。以降、ユーザ#1とユーザ#2が宛先サーバと送受信するパケットの間には再送によって生じた時間差が固定化してしまう。
【0068】
図8Cは、本実施例を適用したネットワークシステムがユーザに等時性を提供する環境において再送発生時に、本実施例で述べた再送に関する機能がある場合のタイミングチャートの一例を示す。この例では、ユーザは宛先サーバから送達確認パケット(Ai_nj)の受信後に次のパケットを送出するものとする。このときユーザ#1(N1)およびユーザ#2(N2)がそれぞれ宛先サーバ(N3)へ3つのパケット(P1_n1、P2_n1、P3_n1、およびP1_n2、P2_n2、P3_n2)を送信する。P1_n1およびP1_n2は宛先サーバでは時間差(D1)で受信される。
【0069】
P2_n1は宛先サーバに到達する前に何らかの障害で紛失する。そのためユーザ#1はP2_n1を再送する。しかし、宛先サーバに隣接する通信装置Aが再送パケットと認識し、もともとのパケットに付与した過去の時刻情報に基づく順序情報をパケットに付与し、通信装置Zが当該パケットを再送パケットと認識し整列のための待合せなく即座に宛先サーバへ送出する。その結果、P2_n1とP2_n2は宛先サーバでは時間差(D4)は図8Bの時間差(D2)よりも縮小する。さらにP3_n1においても通信装置Aおよび通信装置Zでの再送パケットに対する処理は継続され、宛先サーバにおけるP3_n1とP3_n2の時間差(D5)はさらに縮小する。これにより、これまで再送によりユーザ#1とユーザ#2の送受信するパケット間に生じた時間差が固定化することなく、時間の経過と共に縮小させることが可能になる。
【0070】
図9は、本実施例の通信装置で扱う各種遅延時間を算出するために扱う通信装置間の伝送遅延の測定区間を示す。サーバ203が提供するサービスを加入者がクライアント端末101および102で利用する場合、通信事業者はこの区間で通信ができるように通信装置11−13間、および通信装置12−13間に通信路を設定する。この際、通信事業者は管理端末を介して通信装置が提供する網の運用管理のための試験機能を利用して、対象となる通信経路の伝送遅延の測定を行う。図9では、通信装置11−13間の伝送遅延がd1、通信装置12−13間の伝送遅延がd2である例を示す。ここで、通信装置13に設定する各通信装置11と通信装置12から送出されるパケットに対する遅延時間の算出方法を説明する。
【0071】
d2>d1の場合、通信装置11から送出されるパケットに対する通信装置13で挿入される遅延時間D1は下式(3)で算出する。
【0072】
D1=d2−d1…………………………………………………………(3)
通信装置12から送出されるパケットに対する通信装置13で挿入される遅延時間D2は下式(4)で算出する。
【0073】
D2=0 ∵d2>d1…………………………………………………(4)
また、このとき対象とする通信路の遅延時間で最も大きいものを最大遅延時間Dmaxとする。したがって、この例では通信装置13では通信装置11が送出したパケット遅延時間D1後に宛先へ転送する。また、通信装置12が送出したパケット遅延時間D2後、つまりパケット受信直後に宛先へ転送する。ただし、通信装置が宛先へパケットを転送するのは、転送するパケットの順序情報内の時刻情報tiが次の条件式(5)を満たす場合である。
【0074】
ti+Di≧tn+Dmax……………………………………………(5)
このとき、Diは該当する送信元iに対して挿入される遅延時間。tnは現在時刻。
【0075】
この条件式(5)を満たさない場合、つまり、パケットに付与された時刻情報が未来の時刻を指定している場合、該当するパケットは条件式(5)が満たされるまで、当該通信装置内のバッファに格納され、宛先への転送が遅延される。通信装置が転送するパケットに対して順序情報内に未来の時刻情報を付与することにより、通信装置は伝送遅延にとらわれず指定した時刻にパケットを宛先へ配信することが可能になる。これは、サービスを提供するサーバから同時に当該サービスの利用者に対して情報を公平に配信することを可能にする。
【0076】
図10は、本実施例における通信装置で扱うパケットを構成する各フィールドのレイアウトを、イーサネット(登録商標)のフレームを例として用いて示す。標準的なイーサネットフレームL10は、同図の上段に示すように、宛先アドレスL11、送信元アドレスL12、タイプ値L13、ペイロードL14から構成される。加入者からイーサネットフレームL10を受付けると通信装置10は、受付けたパケットの送信元アドレスL12とタイプ値L13の間に新しいタイプ値L21と順序情報L22を挿入した、同図中段に示すパケットL20を構成して網内を転送する。
【0077】
加入者から受付けたパケットに既に順序情報が付与されていた場合、新しいタイプ値L21と当該順序情報L22との間に新しい順序情報を挿入する。つまり、順序情報を保持するパケットは、保持する順序情報の数に係わらず、順序情報の保有を示す新しいタイプ値L21のフィールドは常に1つである。新しいタイプ値L21は、タイプ値を管理するIANA(The Internet Assigned Numbers Authority)に申請したユニークな値を使用する。
【0078】
同図下段に示すように、順序情報L22は、無効化フラグL221、最終順序情報フラグL222、時刻情報L223、および付加情報L224で構成される。無効化フラグL221は、当該順序情報が網内を参照されるべきか、参照されるべきでないかを示す。このフラグがセットされると通信装置は送信順序を決定する際に当該順序情報を参照しない。最終順序情報フラグL222は、通信装置が参照する最後の順序情報に当該フラグが設定される。パケット内に順序情報L22を付与するとき、最初に付与された順序情報に当該フラグが設定される。既に順序情報が付与されたパケットに、新たに順序情報L22を挿入する場合、挿入する順序情報の最終順序情報フラグL222は設定しない。時刻情報L223は、通信装置がパケットを受付けた時刻、または当該パケットの配信時刻を示す未来の時刻を示す。付加情報L224は、同一時刻に受付けたパケットの順序を識別するため通信装置で付与されるHWクロックカウント等の情報である。
【0079】
通信装置10は、加入者からパケットL10を受付けると、順序情報を付与したパケットL20を構成して宛先に向けて転送する。当該パケットが網内を転送され通信事業者の網から出る際に、通信装置はパケットを受付けたときに付与した順序情報を取り除き、受付けたときのパケットL10を復元し送出する。このように網の出側で加入者からのパケットL10を復元するので、等時性を提供する網を利用しても、加入者はこれまで利用してきたサービスを何も変更することなく利用し続けることが可能である。加入者から順序情報が付与されたパケットL20を受付けると、当該順序情報の無効化フラグを設定して、新たに順序情報を挿入する。当該パケットが網内を転送され通信事業者の網から出る際に、通信装置はパケットを受付けたときに付与した順序情報を取り除き、受付けたときに既に付与されていた順序情報に対して設定した無効化フラグを解除してパケットL20を復元し送出する。
【0080】
したがって、加入者が網内で使用する順序情報と同じフォーマットの順序情報を用いて通信を行っても、網の提供する等時性保証機能には影響なく当該パケットを透過的に転送することが可能である。また、加入者またはサーバで順序情報を利用した処理を行う場合、通信事業者が該当する通信装置を設定することにより、本来網出口で取り除かれる順序情報を、取り除かずにそのまま転送することを選択することが可能である。これにより、詐称の可能性のある加入者が付与した順序情報ではなく、詐称することが不可能な通信事業者により付与された順序情報を網の外側でも参照可能になるので、サービスを提供するサーバなどで信頼性の高い順序情報を用いた付加的なサービスを提供することを可能にする。さらに再送時に再送時の現在時刻ではなく、もともと付与していた過去の時刻に基づく順序情報が付与されている場合も、当該順序情報を取り除かずにそのまま転送することを選択することが可能である。
【0081】
なお、加入者から受付けるパケットがMPLSフレームの場合、通信装置が付与する順序情報L22はMPLSラベルとMPLSにより運ばれるペイロードの間に挿入される。通信装置では、加入者から受付けるパケットがMPLSフレームの場合でも、順序情報は前記イーサネットの場合と同様に処理される。
【0082】
図11は、通信装置10が再送パケットを識別するために保持する情報の構成例を示す。IPプロトコルを利用する例では、パケットを特定する情報L15は、IP情報L16、IPパケットが運ぶ上位プロトコル情報L17、該当パケットに当初付与した順序情報L18、そして、当該エントリの削除トリガL19から構成される。このエントリ削除トリガL19は通信事業者が利用状況に応じて設定できる。
【0083】
このエントリ削除のために指定できる条件のオプションには、管理者の設定した一定時間経過後(タイマ)、管理者が設定した送信バイト数に達したとき、管理者が設定した送信パケット総数に達したとき、前記タイマまたは前記送信バイト数に達したとき、前記タイマまたは前記送信パケット総数に達したとき、同一宛先サーバに対する他ユーザの総セッションの平均送信バイト数に達したとき、同一宛先サーバに対する他ユーザの総セッションの平均送信パケット総数に達したとき、TCPのACKパケット受信時などの送達確認受信時が利用できる。
【0084】
管理者の設定した一定時間経過後(タイマ)の条件は再送により発生する遅延時間が事前または運用中に観測して把握できる場合、通信事業者の網の出側で短縮できる遅延時間から、該当セッションに古い順序情報を付与すべき適切な期間を指定できる。管理者が設定した送信バイト数に達したとき、および管理者が設定した送信パケット総数に達したときの条件は、再送により発生する遅延時間が事前または運用中に影響のある送信バイト数または送信パケット総数を把握できる場合、該当セッションに古い順序情報を付与すべき適切な期間を指定できる。前記タイマまたは前記送信バイト数に達したとき、および前記タイマまたは前記送信パケット総数に達したときの条件は、前記タイマだけの利用または前記送信バイトもしくは前期送信パケット総数を単独で適用した場合より、2つの閾値を用いる事で該当セッションに古い順序情報を付与すべき適切な期間をより高い精度で指定できる。
【0085】
同一宛先サーバに対する他ユーザの総セッションの平均送信バイト数に達したとき、および同一宛先サーバに対する他ユーザの総セッションの平均送信パケット総数に達したときの条件は、再送の起きたユーザのセッションだけではなく、他ユーザのセッションの状況を踏まえ判断できるので、該当セッションに古い順序情報を付与すべき適切な期間を最も正確に指定することが出来る。送達確認受信時の条件は再送パケットのみに古い順序情報を付与することを指定できる。
【0086】
図11に示すように、IP情報L16は、送信元IPアドレス、宛先IPアドレス、およびIPパケットのヘッダ内に保持するプロトコル識別子で構成される。
【0087】
IP情報L16の一例であるTCP情報は、送信元ポート番号、宛先ポート番号、およびシーケンス番号で構成される。TCP/IP利用時に、セッションを識別するためには前記IP情報とTCP情報の送信元ポート番号および宛先ポート番号の一致により、同一セッションと判断できる。再送時の同一パケットを識別するためには前記IP情報とTCP情報の全ての一致により判断できる。
【0088】
UIP情報L16の他の例であるDP情報は、送信元ポート番号、宛先ポート番号、およびシグネチャで構成される。UDP/IP利用時には、パケットを特定するための情報がUDPヘッダには含まれないので、パケットを特定するための補助的な情報としてのシグネチャとして、UDPパケットに対するMD5、SHA等のハッシュ値、UDPパケット長、イーサフレームのFCS値、イーサフレームに対するハッシュ値、UDPパケットの全内容などが利用できる。UDPパケットに対するハッシュ値、およびイーサフレームに対するハッシュ値は、ハッシュ値として管理することにより保持する情報量を減らすことが出来るので、少ないメモリ量で実現できる。UDPのパケット長、およびイーサフレームのFCS値は、前記ハッシュを用いる手法と比べ新たに演算を行う必要がないので処理の負荷が軽い。また、ハッシュ適用時と同様に保持する情報量を減らすことが出来るので、少ないメモリ量で実現できる。UDPパケットの全内容は、保持する情報量が増えるが、前期のほか保守方に比べ誤りなくパケットを特定できる利点がある。
【0089】
以上、本発明の一実施例を図面に従い説明したが、本発明は上述した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されものではない。また、実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【0090】
更に、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により専用ハードウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD(Digital Versatile Disc)等の記録媒体におくことができるし、必要に応じてネットワーク等を介してダウンロード、インストロールすることも可能であることは言うまでもない。
【符号の説明】
【0091】
1:加入者の管理責任範囲
2:通信事業者の管理責任範囲(事業者ネットワーク)
3:POI(Point of Interface)
10:通信事業者の管理する通信装置
20:順序情報付与機能
30:パケット整列送出機能
100:加入者端末
200:サービスを提供する宛先サーバ
210:管理者端末
600−1...600−n:パケット送受信ポート
602−1...602−n:スイッチ部へのインターフェース
610−1...610−n:ネットワーク・インターフェース
1000:ネットワーク・インターフェースの管理部
1010:入力処理部
1020:出力処理部
2000:ノード管理部
2100:スイッチ部
N1、N2、N3:ユーザ#1、#2、#3
N4:宛先サーバ
E1、E2、E3、E4:通信装置A、B、C、Z
T1、T2、T3:ユーザ#1、#2、#3のパケット送出時刻
T4、T5、T6:通信装置A、B、Cのパケット受信時刻
T7、T8、T9:通信装置Zが通信装置B、C、Aからのパケット受信時刻
T10:宛先サーバへ通信装置Aおよび通信装置Bからのパケットの送出時刻
T11:宛先サーバへ通信装置Cからのパケットの送出時刻
T12:ユーザ#1およびユーザ#2からのパケットの受信時刻
T13:ユーザ#3からのパケットの受信時刻
D1:ユーザ#1およびユーザ#2のパケット送出時刻とユーザ#3のパケット送出時刻の時間差
D2:通信装置Aおよび通信装置Bのパケット受信時刻と通信装置Cのパケット受信時刻の時間差
D3:通信装置Zで通信装置Aおよび通信装置Bからのパケットと通信装置Cからのパケットの送出時刻の時間差
D4:通信装置Aからのパケットに対する挿入する遅延時間
D5:通信装置Bからのパケットに対する挿入する遅延時間
D6:通信装置Cからのパケットに対する挿入する遅延時間
【特許請求の範囲】
【請求項1】
複数の通信装置を接続する網を備えるネットワークシステムであって、
前記網の外部からパケットを受信する前記通信装置は、他の前記通信装置と時刻同期の取れた順序情報を前記パケットに付与し、
前記パケットを前記網の外部に送出する前記通信装置は、前記パケットに付与された前記順序情報に基づき前記パケットを整列して送出を行い、
前記網の外部からパケットを受信する前記通信装置は、前記パケットの再送が発生する場合、当該パケットに先に付与した過去の時刻に基づく順序情報を付与して当該パケットの再送信を行う
ことを特徴とするネットワークシステム。
【請求項2】
請求項1記載のネットワークシステムであって、
前記パケットを前記網の外部に送出する前記通信装置は、網外へ前記パケットを転送するとき、当該パケットに、予め設定し所定時間よりも過去の時刻に基づく順序情報が付与されていた場合、当該順序情報による整列処理をバイパスして、当該パケットを送出する
ことを特徴とするネットワークシステム。
【請求項3】
請求項1記載のネットワークシステムであって、
前記パケットを前記網の外部に送出する前記通信装置は、前記網の外部に前記パケットを転送するとき、当該パケットに、予め設定した所定時間よりも過去の時刻に基づく順序情報が付与されていた場合に、前記順序情報による整列処理をバイパスして、当該パケットを送出する際に、当該パケットに付与されている前記順序情報を無効化することなく送出するか否かが選択可能である
ことを特徴とするネットワークシステム。
【請求項4】
請求項1記載のネットワークシステムであって、
前記網の外部からパケットを受信する前記通信装置は、前記パケットに既存順序情報が付与されていれば無効化して転送する
ことを特徴とするネットワークシステム。
【請求項5】
請求項1記載のネットワークシステムであって、
前記パケットを前記網の外部に送出する前記通信装置は、前記網の外部からパケットを受信する前記通信装置で付与した前記順序情報を無効化して送出する
ことを特徴とするネットワークシステム。
【請求項6】
請求項1記載のネットワークシステムであって、
前記網の外部からパケットを受信した前記通信装置は、
前記パケットに対して、当該パケットの宛先に応じて、所定の時間だけ遅延してから前記網に送出する
ことを特徴とするネットワークシステム。
【請求項7】
請求項1記載のネットワークシステムであって、
前記網の外部からパケットを受信した前記通信装置は、
前記順序情報として、前記パケットを受信した時刻に基づく時刻情報と、付加情報を付与する
ことを特徴とするネットワークシステム。
【請求項8】
網内で相互に接続される通信装置であって、
前記網の外部からパケットを受信し、他の通信装置と時刻同期の取れた順序情報を前記パケットに付与する入力処理部と、
他の前記通信装置が前記パケットに付与した前記順序情報に基づき、前記パケットを整列して前記網の外部に送出する出力処理部を備え、
前記入力処理部は、前記パケットの再送が発生する場合、当該パケットに先に付与した過去の時刻に基づく順序情報を付与する
ことを特徴とする通信装置。
【請求項9】
請求項8記載の通信装置であって、
前記入力処理部は、加入者から受信した前記パケットに対して、当該加入者のセッションを識別するための情報を抽出し、当該パケットに付与した前記順序情報と対応付けて保持する順序情報保管部を備える
ことを特徴とする通信装置。
【請求項10】
請求項9記載の通信装置であって、
前記入力処理部は、受信した前記パケットの前記加入者のセッションを識別するための情報で前記順序情報保管部を検索し、前記順序情報保管部に保持された、過去の時刻に基づく前記順序情報が得られた場合、当該順序情報を前記パケットに付与する
ことを特徴とする通信装置。
【請求項11】
請求項9記載の通信装置であって、
前記入力処理部の前記順序情報保管部は、前記加入者のセッションを識別するための情報を、事前に設定した所定条件に従い削除する
ことを特徴とする通信装置。
【請求項12】
請求項8記載の通信装置であって、
前記入力処理部は、 前記網の外部から受信した前記パケットに既存順序情報が付与されていれば、当該既存順序情報を無効化して前記網内へ転送する
ことを特徴とする通信装置。
【請求項13】
請求項8記載の通信装置であって、
前記入力処理部は、前記網の外部から受信した前記パケットに対して、当該パケットの宛先に応じて、所定の時間だけ遅延してから前記網内に転送する
ことを特徴とする通信装置。
【請求項14】
請求項8記載の通信装置であって、
前記入力処理部は、前記順序情報として、前記パケットを受信した時刻に基づく時刻情報を用いる
ことを特徴とする通信装置。
【請求項15】
請求項8記載の通信装置であって、
前記入力処理部は、 前記順序情報として、前記時刻情報に加え、同一時刻に受信する複数の前記パケットの前後関係を識別するための付加情報を用いる
ことを特徴とする通信装置。
【請求項1】
複数の通信装置を接続する網を備えるネットワークシステムであって、
前記網の外部からパケットを受信する前記通信装置は、他の前記通信装置と時刻同期の取れた順序情報を前記パケットに付与し、
前記パケットを前記網の外部に送出する前記通信装置は、前記パケットに付与された前記順序情報に基づき前記パケットを整列して送出を行い、
前記網の外部からパケットを受信する前記通信装置は、前記パケットの再送が発生する場合、当該パケットに先に付与した過去の時刻に基づく順序情報を付与して当該パケットの再送信を行う
ことを特徴とするネットワークシステム。
【請求項2】
請求項1記載のネットワークシステムであって、
前記パケットを前記網の外部に送出する前記通信装置は、網外へ前記パケットを転送するとき、当該パケットに、予め設定し所定時間よりも過去の時刻に基づく順序情報が付与されていた場合、当該順序情報による整列処理をバイパスして、当該パケットを送出する
ことを特徴とするネットワークシステム。
【請求項3】
請求項1記載のネットワークシステムであって、
前記パケットを前記網の外部に送出する前記通信装置は、前記網の外部に前記パケットを転送するとき、当該パケットに、予め設定した所定時間よりも過去の時刻に基づく順序情報が付与されていた場合に、前記順序情報による整列処理をバイパスして、当該パケットを送出する際に、当該パケットに付与されている前記順序情報を無効化することなく送出するか否かが選択可能である
ことを特徴とするネットワークシステム。
【請求項4】
請求項1記載のネットワークシステムであって、
前記網の外部からパケットを受信する前記通信装置は、前記パケットに既存順序情報が付与されていれば無効化して転送する
ことを特徴とするネットワークシステム。
【請求項5】
請求項1記載のネットワークシステムであって、
前記パケットを前記網の外部に送出する前記通信装置は、前記網の外部からパケットを受信する前記通信装置で付与した前記順序情報を無効化して送出する
ことを特徴とするネットワークシステム。
【請求項6】
請求項1記載のネットワークシステムであって、
前記網の外部からパケットを受信した前記通信装置は、
前記パケットに対して、当該パケットの宛先に応じて、所定の時間だけ遅延してから前記網に送出する
ことを特徴とするネットワークシステム。
【請求項7】
請求項1記載のネットワークシステムであって、
前記網の外部からパケットを受信した前記通信装置は、
前記順序情報として、前記パケットを受信した時刻に基づく時刻情報と、付加情報を付与する
ことを特徴とするネットワークシステム。
【請求項8】
網内で相互に接続される通信装置であって、
前記網の外部からパケットを受信し、他の通信装置と時刻同期の取れた順序情報を前記パケットに付与する入力処理部と、
他の前記通信装置が前記パケットに付与した前記順序情報に基づき、前記パケットを整列して前記網の外部に送出する出力処理部を備え、
前記入力処理部は、前記パケットの再送が発生する場合、当該パケットに先に付与した過去の時刻に基づく順序情報を付与する
ことを特徴とする通信装置。
【請求項9】
請求項8記載の通信装置であって、
前記入力処理部は、加入者から受信した前記パケットに対して、当該加入者のセッションを識別するための情報を抽出し、当該パケットに付与した前記順序情報と対応付けて保持する順序情報保管部を備える
ことを特徴とする通信装置。
【請求項10】
請求項9記載の通信装置であって、
前記入力処理部は、受信した前記パケットの前記加入者のセッションを識別するための情報で前記順序情報保管部を検索し、前記順序情報保管部に保持された、過去の時刻に基づく前記順序情報が得られた場合、当該順序情報を前記パケットに付与する
ことを特徴とする通信装置。
【請求項11】
請求項9記載の通信装置であって、
前記入力処理部の前記順序情報保管部は、前記加入者のセッションを識別するための情報を、事前に設定した所定条件に従い削除する
ことを特徴とする通信装置。
【請求項12】
請求項8記載の通信装置であって、
前記入力処理部は、 前記網の外部から受信した前記パケットに既存順序情報が付与されていれば、当該既存順序情報を無効化して前記網内へ転送する
ことを特徴とする通信装置。
【請求項13】
請求項8記載の通信装置であって、
前記入力処理部は、前記網の外部から受信した前記パケットに対して、当該パケットの宛先に応じて、所定の時間だけ遅延してから前記網内に転送する
ことを特徴とする通信装置。
【請求項14】
請求項8記載の通信装置であって、
前記入力処理部は、前記順序情報として、前記パケットを受信した時刻に基づく時刻情報を用いる
ことを特徴とする通信装置。
【請求項15】
請求項8記載の通信装置であって、
前記入力処理部は、 前記順序情報として、前記時刻情報に加え、同一時刻に受信する複数の前記パケットの前後関係を識別するための付加情報を用いる
ことを特徴とする通信装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8A】
【図8B】
【図8C】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8A】
【図8B】
【図8C】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2013−106216(P2013−106216A)
【公開日】平成25年5月30日(2013.5.30)
【国際特許分類】
【出願番号】特願2011−249200(P2011−249200)
【出願日】平成23年11月15日(2011.11.15)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成25年5月30日(2013.5.30)
【国際特許分類】
【出願日】平成23年11月15日(2011.11.15)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]