説明

データ転送装置、データ転送方法およびデータ転送のためのプログラム

【課題】データ転送装置において、データの方向性と帯域を考慮して通信パス設定を行う。
【解決手段】データ転送装置110に、データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶するデータ指向性情報記憶部111と、前記データ指向性情報から前記データ方向性を特定し、該特定した前記データ方向性における自装置の位置付けを判別する位置付け判別部112と、前記データ方向性に基づく送信方向の前記データ通信に使用する、所定の帯域の通信パスを、前記対向装置との間に確立する通信パス確立部113と、前記対向装置と前記データ通信を行うデータ通信部114と、前記データ方向性における自装置の位置付けがデータ送信側である場合、前記対向装置に送信するデータを記憶する送信バッファの使用状況を監視し、前記送信バッファの使用状況に応じて、前記通信パスの帯域を変更する帯域制御部115と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ転送装置、データ転送方法およびデータ転送のためのプログラムに関する。
【背景技術】
【0002】
従来、IP(Internet Protocol)技術を利用した次世代電話通信網であるNGN(Next Generation Network;次世代ネットワーク)が知られている。
【0003】
NGNへの接続インタフェースには、例えば、UNI(User Network Interface)、SNI(application Server Network Interface)およびNNI(Network Network Interface)などが提供されている。
【0004】
これらの接続インタフェースには、インターネットと異なり、SIP(Session Initiation Protocol)やSDP(Session Description Protocol)が標準プロトコルとして採用されている。
【0005】
例えば、SIPはIETF(Internet Engineering Task Force) RFC(Request For Comments) 3261で規定され、セッションの確立、更新および削除等を行う際に利用する通話制御のためのプロトコルである。また、SDPは、IETF RFC 3261に規定され、ストリーミングメディアなど、セッションの告知やセッションの招待などを必要とするマルチメディアのセッションを開始するために必要な情報を記述するプロトコルである。
【0006】
NGNには、SIP/SDPを利用した特有のデータ優先制御機能がある。この機能は、SIP/SDPを用いて、ルータ、サーバおよびクライアントが連携することにより実現される。
【0007】
上記技術に関連して、SIP機能を有するIMS/MMD非対応端末を、IMS/MMDネットワークに接続することができる代理接続方法、アダプタ及びプログラムについて知られている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2008−219436号公報
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかし、NGNの基本概念は電話網であることから、電話系サービスをベースとした優先制御しか利用できないという課題がある。
例えば、電話は双方向通信であるため、双方向のパスを張らなければならない。しかし、その通信路を用いてWeb上のコンテンツにアクセスする場合、どのような(方向/帯域)パスを張れば良いのかが明確に決められていない。さらにWeb上のコンテンツは音声通話とは異なり、アクセスするコンテンツ(静的、動画、スクリプトなど)に依存して通信帯域が異なる。NGNでは、上述したように、音声以外のアクセスにおいて、最適な帯域制御を実行する上で課題がある。
【0010】
本データ転送装置は、上述した問題に鑑みてなされたものであり、その解決しようとする課題は、高品質なデータ通信を行うデータ転送装置、データ転送方法およびデータ転送のためのプログラムを提供することである。
【課題を解決するための手段】
【0011】
本データ転送装置の1つの観点によれば、本データ転送装置は、ネットワークを介して接続する対向装置にデータを送信するデータ転送装置である。そして、本データ転送装置は、以下の構成要素を備える。
【0012】
データ指向性情報記憶部は、データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶する記憶部である。
位置付け判別部は、データを受信すると、前記データ指向性情報記憶部から前記データ指向性情報を読み出し、該データ指向性情報から前記データ方向性を特定し、該特定した前記データ方向性における自装置の位置付けを判別する。
通信パス確立部は、前記データ方向性に基づく送信方向の前記データ通信に使用する、所定の帯域の通信パスを、前記対向装置との間に確立する。
【0013】
データ通信部は、前記データ方向性に基づく送信方向の前記データ通信に前記通信パスを使用して、前記対向装置と前記データ通信を行う
帯域制御部は、前記データ方向性における自装置の位置付けがデータ送信側である場合、前記対向装置に送信するデータを一時的に記憶する送信バッファの使用状況を監視し、前記送信バッファの使用状況に応じて、前記通信パスの帯域を変更する。
【発明の効果】
【0014】
本データ転送装置によると、高品質なデータ通信を行うデータ転送装置、データ転送方法およびデータ転送のためのプログラムを提供することができる。
【図面の簡単な説明】
【0015】
【図1】第1の実施例に係るデータ転送装置を使用した通信システムの概要を示す図である。
【図2】第2の実施例に係るデータ転送装置を使用した通信システムの概要を示す図である。
【図3】第2の実施例に係るデータ転送装置の構成例を示す図である。
【図4】第2の実施例に係るデータ指向性管理テーブルの例を示す図である。
【図5】第2の実施例に係る利用帯域情報の例を示す図である。
【図6】第2の実施例に係るデータ転送装置の処理を示すフローチャートである。
【図7】第2の実施例に係るデータ転送装置の処理を示すフローチャートである。
【図8】第2の実施例に係る対向装置の処理を示すフローチャートである。
【図9】第2の実施例に係る対向装置の処理を示すフローチャートである。
【図10】第2の実施例に係るデータ転送装置の帯域変更処理を示すフローチャートである。
【図11】第2の実施例に係るデータ転送装置の帯域変更処理を示すフローチャートである。
【図12】第2の実施例に係る対向装置の帯域変更処理を示すフローチャートである。
【図13】第2の実施例に係るデータ転送装置の帯域変更処理を示すフローチャートである。
【図14】本実施例に係るデータ転送装置の具体的な構成例を示す図である。
【発明を実施するための形態】
【0016】
以下、本実施形態の一例について、図1〜図14に基づいて説明する。なお、以下に説明する実施形態はあくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図ではない。すなわち、本実施形態は、その趣旨を逸脱しない範囲で、各実施例の一部または全部を組み合わせるなど種々変形して実施することができる。
【実施例1】
【0017】
図1は、本実施例に係るデータ転送装置110および120を使用した通信システム100の概要を示す図である。
図1に示す通信システム100は、データ転送装置110および120と、ネットワーク130と、を備える。
【0018】
データ転送装置110と、データ転送装置110の対向装置であるデータ転送装置120と、は、ネットワーク130を介して互いに通信可能に接続している。また、データ転送装置110は、装置Aと互いに通信可能に接続している。同様に、データ転送装置120は、装置Bと互いに通信可能に接続している。
【0019】
そして、データ転送装置110は、装置Aから受信するデータをネットワーク130を介してデータ転送装置120に転送する。データ転送装置120は、データ転送装置110から受信するデータを装置Bに転送する。また、データ転送装置120は、装置Bから受信するデータをネットワーク130を介してデータ転送装置110に転送する。データ転送装置110は、データ転送装置120から受信するデータを装置Aに転送する。以上のようにして、装置Aと装置Bとの間でデータ通信を行うことができる。
【0020】
ここで、データ転送装置110は、データ指向性情報記憶部111と、位置付け判別部112と、通信パス確立部113と、データ通信部114と、帯域制御部115と、送信バッファ116と、を備える。
【0021】
データ指向性情報記憶部111は、データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶する記憶装置である。主な送信方向は、例えば、送信するデータ量を基準に決めることができる。この場合、データ量が多い、またはデータ量が多いと予想できる送信方向を、そのデータ通信におけるデータ方向性と定義することができる。データ方向性は、例えば、データ通信に使用するプロトコル毎に定義することができる。
【0022】
位置付け判別部112は、データを受信すると、データ指向性情報記憶部111からデータ指向性情報を読み出す。そして、位置付け判別部112は、読み出したデータ指向性情報からデータ方向性を特定し、特定したデータ方向性における自装置の位置付けを判別する。「位置付けを判別する」とは、データ方向性において、自装置が、「データ送信側」なのか、「データ受信側」なのか、を判別するということである。
【0023】
通信パス確立部113は、データ方向性に基づく送信方向のデータ通信に使用する、所定の帯域の通信パス131を、データ転送装置120との間に確立する。通信パス確立部113は、データ転送装置120とのネゴシエーションにより、通信パス131の帯域を決定してもよい。
【0024】
データ通信部114は、データ方向性に基づく送信方向のデータ通信に通信パス131を使用して、データ転送装置120とデータ通信を行う。
帯域制御部115は、データ方向性における自装置の位置付けが「データ送信側」である場合、データ転送装置120に送信するデータを一時的に記憶する送信バッファ116の使用状況を監視する。そして、帯域制御部115は、送信バッファ116の使用状況に応じて、通信パス131の帯域を変更する。例えば、帯域制御部115は、送信バッファ116の使用状況に応じて、通信パスの帯域を増加し、または、減少させる。
【0025】
送信バッファ116は、装置Aから受信したデータを一時的に記憶する記憶装置である。
データ転送装置120は、データ転送装置110の対向装置である。したがって、図1に示すデータ転送装置110の構成と同様の構成により実現することができる。
【0026】
ネットワーク130は、所定の帯域を持つ通信パス131を提供する通信網である。ネットワーク130は、データ転送装置110またはデータ転送装置120からの要求に応じて、通信パス131の帯域を変更することができる。ネットワーク130は、通信パスの確立に、例えば、SIP/SDPを利用することができる。
【0027】
装置Aは、データ転送装置110と直接続する装置であってもよいし、データ転送装置110と通信可能に接続するネットワークに含まれる任意の装置であってもよい。同様に、装置Bは、データ転送装置120と直接続する装置であってもよいし、データ転送装置120と通信可能に接続するネットワークに含まれる任意の装置であってもよい。
【0028】
以上の構成において、通信パス確立部113は、ネットワーク130を使用して、データ転送装置110−データ転送装置120間に所定の帯域の通信パス131を確立する。そして、帯域制御部115は、データ方向性における自装置の位置付けが「データ送信側」である場合、送信バッファ116の使用状況を監視し、送信バッファ116の使用状況に応じて、通信パス131の帯域を変更する。
【0029】
その結果、データ転送装置110は、データ転送装置110−データ転送装置120間のデータ通信で所定の帯域を保証することができる。すなわち、データ転送装置110−データ転送装置120間のデータ通信の通信品質を保証することができる。
【0030】
また、データ転送装置110は、データ通信量に応じて、通信パス131の帯域を動的に変更して、適切な帯域の通信パス131を確保することができる。
以上のように、データ転送装置110は、ネットワーク130を介して、対向装置であるデータ転送装置120と高品質なデータ通信を行うことができる。結果として、データ転送装置110は、装置A−装置B間で高品質なデータ通信を行うことができる。
【0031】
なお、以上に説明した位置付け判別部112、通信パス確立部113、データ通信部114および帯域制御部115は、データ転送装置110に備わるCPU(Central Processing Unit)に所定のプログラムを実行させることによって実現できる。その所定のプログラムは、データ転送装置110に備わる読取り可能かつ非一時的な(non−transitory)な記憶媒体に記憶し、データ転送装置110が記憶媒体から読み出すようにしてもよい。
【0032】
データ指向性情報記憶部111や送信バッファ116には、例えば、RAM(Random Access Memory)等の揮発性メモリを使用することができる。
【実施例2】
【0033】
図2は、本実施例に係るデータ転送装置211および221を使用した通信システム200の概要を示す図である。
図2に示す通信システム200は、ネットワーク210および220と、NGN230と、を備える。ネットワーク210とネットワーク220とは、NGN230を介して互いに通信可能に接続している。
【0034】
ネットワーク210は、企業Aが所有する、例えばWAN(Wide Area Network)などで構築されたネットワークである。ネットワーク210は、データ転送装置211を備える。
【0035】
データ転送装置211は、ネットワーク210内部の装置からのデータを、NGN230を介して、通信相手の装置を含むネットワーク220に備わるデータ転送装置221に転送する。また、データ転送装置211は、通信相手の装置を含むネットワーク220に備わるデータ転送装置221からのデータを受信すると、ネットワーク210内部の装置に転送する。
【0036】
ネットワーク220は、IDC(Internet Data Center)のネットワークである。ネットワーク220は、データ転送装置221を備える。
データ転送装置221は、ネットワーク220内部の装置からのデータを、NGN230を介して、通信相手の装置を含むネットワーク210に備わるデータ転送装置211に転送する。また、データ転送装置221は、通信相手の装置を含むネットワーク210に備わるデータ転送装置211からのデータを受信すると、ネットワーク220内部の装置に転送する。
【0037】
NGN230は、SIP/SDPを利用して電話サービスや映像通信サービスなどを提供するIPネットワークである。NGN230は、例えば、ITU−T(International Telecommunication Union Telecommunication standardization sector)の勧告にしたがうことができる。
【0038】
NGN230は、CSCF(Call Session Control Function)231と、RACF(Resource and Admission Control Function)232と、エッジルータ233および234と、を備える。
【0039】
CSCF231は、SIPによるセッション制御を行うセッション制御サーバである。RACF232は、CSCF231からの指示にしたがって、エッジルータ233および234を制御することにより、所望の帯域の通信パス235を提供する制御装置である。エッジルータ233および234は、RACF232からの指示にしたがって、NGN230に所望の帯域の通信パス235を提供する。
【0040】
端末211−サーバ222間でのデータ通信を考える。例えば、データ転送装置211は、ネットワーク220内の端末212からリクエストを受信すると、リクエストにより要求されたデータ通信についてのデータ方向性を判別する。そして、データ転送装置211は、データ方向性における自装置、すなわちデータ転送装置211の位置付けを判別する。
【0041】
ここで、データ方向性とは、データ通信において、データ転送量が多いデータ送信方向を示す情報である。本実施例に係るデータ方向性は、HTTPリクエストを送信するなどしてデータ通信を開始する「発信元」と、発信元の通信相手である「発信先」と、を用いて表わす。
【0042】
本実施例では、発信元から発信先にデータを送信するときの通信パスの帯域が、発信先から発信元にデータを送信するときの通信パスの帯域より大きい帯域を必要とする可能性が高いと予想できるときのデータ方向性を、「発信元→発信先」とする。
【0043】
発信先から発信元にデータを送信するときの通信パスの帯域が、発信元から発信先にデータを送信するときの帯域より大きい帯域を必要とする可能性が高いと予想できるときのデータ方向性を、「発信元←発信先」とする。
【0044】
発信元から発信先にデータを送信するときと、発信先から発信元にデータを送信するときと、の両方向の通信パスにおいて大きい帯域を必要とする可能性が高いと予想できるときのデータ方向性を、「発信元⇔発信先」とする。
【0045】
データ方向性は、プロトコルによって事前に予測できる。そこで、本実施例では、プロトコル毎に、データ方向性を定義したデータ指向性情報を使用する。データ指向性情報については、図5に具体例を示す。
【0046】
また、データ方向性における「位置付け」とは、データ方向性が示すデータ送信方向において、自装置が「データ送信側」なのか、「データ受信側」なのか、を示す情報である。
【0047】
例えば、データ方向性が「発信元→発信先」の場合を考える。
データ転送装置211は、発信元である端末212から直接データを受信するので、「発信元」側と考えられる。データ方向性が「発信元→発信先」の場合、「発信元」は「発信先」にデータを送信する側なので、データ方向性における位置付けは、「データ送信側」となる。
【0048】
データ転送装置221は、発信先であるサーバ222から直接データを受信するので、「発信先」側と考えられる。データ方向性が「発信元→発信先」の場合、「発信先」は「発信元」からデータを受信する側なので、データ方向性における位置付けは、「データ受信側」となる。
【0049】
また、データ方向性が「発信元←発信先」の場合を考える。データ転送装置211は、発信元である端末212から直接データを受信するので、「発信元」側と考えられる。データ方向性が「発信元←発信先」の場合、「発信元」は「発信先」からデータを受信する側なので、データ方向性における位置付けは、「データ受信側」となる。
【0050】
データ転送装置221は、発信先であるサーバ222から直接データを受信するので、「発信先」側と考えられる。データ方向性が「発信元←発信先」の場合、「発信先」は「発信元」にデータを送信する側なので、データ方向性における位置付けは、「データ送信側」となる。
【0051】
なお、データ方向性が「発信元⇔発信先」の場合、データ方向性における位置づけは「データ送信側」にも「データ受信側」にもなり得る。この場合のデータ方向性における位置付けを「双方向」とする。
【0052】
データ転送装置211は、SIP/SIPにしたがって、データ転送装置221とセッション制御通信を行い、データ転送装置211−データ転送装置221間に所望の帯域の通信パスを確保する。このとき、データ転送装置211とデータ転送装置221は、UNI(User Network Interface)、NGN230内のCSCF231を介して、SIPメッセージの授受を行う。
【0053】
CSCF231は、データ転送装置211からSIPメッセージを受信すると、SIPメッセージをデータ転送装置221に転送する。また、CSCF231は、受信したSIPメッセージに設定された帯域情報などを読み出す。そして、CSCF231は、SIPメッセージに設定された帯域情報に基づいて、データ転送装置211−データ転送装置221間のデータ通信に使用する通信パスに所定の帯域を割当てるようにRACF232に指示を出す。
【0054】
RACF232は、CSCF231から帯域割当て指示を受けると、エッジルータ233および234に帯域割当て指示を出す。RACF232は、CSCF231からの指示に応じて、優先制御などを含むSoS(Quality of Service)制御なども行う。
【0055】
エッジルータ233および234は、RACF232からの帯域割当て指示にしたがって、エッジルータ233−234間の通信パスの帯域確保や優先制御などを実際に行う。
エッジルータ233−234間に通信パス235が確立すると、データ転送装置211は、通信パス235を使用して、端末211から受信したデータをデータ転送装置221に転送する。また、データ転送装置211は、通信パス235を使用して、データ転送装置221からデータを受信する。そして、データ転送装置211は、受信したデータを端末211に転送する。
【0056】
また、データ方向性における位置付けが「データ送信側」である場合、データ転送装置211は、データ転送装置211にアロケートされた送信バッファの使用状況を監視する。そして、データ転送装置211は、送信バッファの使用状況に応じて、通信パスの帯域を変更する。
【0057】
同様に、エッジルータ233−234間に通信パス235が確立すると、データ転送装置221は、通信パス235を使用して、サーバ222から受信したデータをデータ転送装置211に転送する。また、データ転送装置221は、通信パス235を使用して、データ転送装置211からデータを受信する。そして、データ転送装置221は、受信したデータをサーバ222に転送する。
【0058】
また、データ方向性における位置付けが「データ送信側」である場合、データ転送装置221は、データ転送装置221にアロケートされた送信バッファの使用状況を監視する。そして、データ転送装置221は、送信バッファの使用状況に応じて、通信パスの帯域を変更する。
【0059】
なお、本実施例で説明したNGN230は、少なくともデータ送信時に使用する通信パスを確保し、通信パスの帯域を動的に変更できるネットワークの一例であって、図2に示したNGN230に限定する趣旨ではない。
【0060】
また、図2に示したネットワーク210や220は、単なる一例であって、ネットワーク210を、企業Aが所有するネットワークに限定する趣旨ではない。同様に、ネットワーク220を、IDCのネットワークに限定する趣旨ではない。
【0061】
図3は、本実施例に係るデータ転送装置211の構成例を示す図である。
データ転送装置211は、データ転送制御部310と、送信バッファ制御部320と、送信バッファ330と、受信バッファ340と、SIP/SDP送信部350と、データ指向性管理テーブル記憶部360と、利用帯域情報記憶部370と、を備える。
【0062】
データ転送制御部310は、NGN230を介して接続する対向装置であるデータ転送装置221とセッション制御通信を行って、所望の帯域の通信パス235を確立する。そして、データ転送制御部310は、確立した通信パス235を使用して、データ転送装置221とデータの授受を行う。
【0063】
データ転送制御部310は、指向性判断部311と、SIP/SDP制御部312と、を備える。
指向性判断部311は、データを受信すると、データ指向性管理テーブル記憶部360に記憶されているデータ指向性管理テーブル400から、データ通信に使用されているプロトコルに応じたデータ方向性を取得する。そして、指向性判断部311は、データ方向性における位置付けを判別する。
【0064】
データ方向性が「データ送信側」であると判断すると、指向性判断部311は、送信バッファ330を、後述のデータ転送装置211に備わるメモリ1402にアロケートする。また、データ方向性が「データ受信側」であると判断すると、指向性判断部311は、受信バッファ340をメモリ1402にアロケートする。
【0065】
また、指向性判断部311は、データ指向性管理テーブル記憶部360に記憶されているデータ指向性管理テーブル400から、データ方向性とともに、データ優先度を取得する。そして、指向性判断部311は、取得したデータ優先度をSIP/SDP制御部312に通知する。データ指向性管理テーブル400に固定帯域が設定されている場合、指向性判断部311は、固定帯域もSIP/SDP制御部312に通知する。
【0066】
SIP/SDP制御部312は、利用帯域情報記憶部370に記憶された利用帯域情報500から、利用可能な1または2以上の帯域を含む帯域リストを取得する。ただし、指向性判断部311から固定帯域が通知された場合、SIP/SDP制御部312は、通知された固定帯域を帯域情報として使用する。そして、SIP/SDP制御部312は、SDPにしたがって、帯域情報とデータ優先度に基づく転送品質クラスとを含むリクエストを作成する。そして、SIP/SDP制御部312は、作成したリクエストをSIP/SDP送信部350に出力する。
【0067】
送信バッファ制御部320は、送信バッファ330の使用状況を監視する。そして、送信バッファ330の負荷が一定以上になると、送信バッファ制御部320は、データ転送制御部310に対して、使用中の通信パス235の帯域を増加させるように指示する。また、送信バッファ330の負荷が一定以下になると、送信バッファ制御部320は、データ転送制御部310に対して、使用中の通信パス235の帯域を減少させるように指示する。
【0068】
送信バッファ330は、対向装置に対して送信するデータを一時的に記憶する。送信バッファ330へのアクセス制御には、キュー制御が使用されている。以下、このキュー制御に使用するキューを「送信バッファ・キュー」という。送信バッファ330の使用状況は、送信バッファ・キューの長さによって知ることができる。
【0069】
受信バッファ340は、NGN230を介して、対向装置であるデータ転送装置221から受信するデータを一時的に記憶する。SIP/SDP送信部350は、SIP/SDP制御部312で作成されたリクエストまたはレスポンスをNGN230を介して、対向装置であるデータ転送装置221に送信する。
【0070】
なお、図3には、データ転送装置211の構成例を示したが、データ転送装置221もデータ転送装置211と同じ構成で実現することができる。以下の説明では、データ転送装置221に備わるデータ転送制御部310、送信バッファ制御部320などを、データ転送制御部310’、送信バッファ制御部320’などと「’」を付して記載する。
【0071】
図4は、本実施例に係るデータ指向性管理テーブル400の例を示す図である。
図4に示すデータ指向性管理テーブル400は、プロトコル種別と、データ方向性と、データ優先度と、固定帯域と、を含む。
【0072】
プロトコル種別は、発信元−発信先間、本実施例では端末212−サーバ222間のデータ通信に使用されるプロトコルである。例えば、データのヘッダ等を参照することにより、プロトコル種別を判別することができる。
【0073】
データ方向性は、前述したように、データ通信において、データ転送量が多いデータ送信方向を示す情報である。
データ優先度は、本実施例で利用するSIP/SDPのセッション制御通信で、NGN230が提供するSoSに含まれる転送品質クラスを指定するために使用する情報である。本実施例では、データ方向性と一致するデータ転送方向のデータを優先する。
【0074】
例えば、端末211からサーバ222にHTTPリクエストが送信された場合、HTTPのデータ方向性は「発信元←発信先」なので、発信先であるサーバ222からのデータを優先する。
【0075】
固定帯域は、データ通信時に固定の帯域の通信パスを使用したい場合に設定される帯域情報である。
データ指向性管理テーブル400は、データ転送装置211とデータ転送装置221とに同一のものが備わる。本実施例では、データ転送装置211に備わるデータ指向性管理テーブルを「データ指向性管理テーブル400」と記載し、データ転送装置221に備わるデータ指向性管理テーブルを「データ指向性管理テーブル400’」と記載する。
【0076】
図5は、本実施例に係る利用帯域情報500の例を示す図である。図5に示す利用帯域情報500は、64Kbps、1Mbps、5Mbpsおよび10Mbpsの帯域が含まれる帯域リストである。
【0077】
以下の説明では、データ転送装置211に備わる利用帯域情報記憶部370に記憶されている利用帯域情報を「利用帯域情報500」と記載し、データ転送装置221に備わる利用帯域情報記憶部370’に記憶されている利用帯域情報を「利用帯域情報500’」と記載する。
【0078】
図6および図7は、本実施例に係るデータ転送装置211の処理を示すフローチャートである。
データ転送装置211は、端末211から、HTTPリクエストなどのリクエストを受信すると、以下の処理を開始する(ステップS600)。
【0079】
ステップS601において、データ転送制御部310は、データ転送装置211に備わるデータ指向性管理テーブル記憶部360に記憶されているデータ指向性管理テーブル400を参照する。そして、データ転送制御部310は、データ通信に使用するプロトコルを検索する。なお、データ通信に使用するプロトコルは、例えば、端末211から受信したリクエストのヘッダ等から判別することができる。
【0080】
データ通信に使用するプロトコルがデータ指向性管理テーブル400に設定されている場合(ステップS602 YES)、データ転送制御部310は、処理をステップS603に移行する。この場合、データ転送制御部310は、データ指向性管理テーブル400から、データ通信に使用するプロトコルのデータ優先度を取得する(ステップS603)。
【0081】
ステップS604において、データ転送制御部310は、データ指向性管理テーブル400から、データ通信に使用するプロトコルのデータ方向性を取得する。そして、データ転送制御部310は、データ指向性における位置付けを判別する(ステップS605)。
【0082】
データ指向性における位置付けが「データ送信側」または「双方向」の場合(ステップS605 YES)、データ転送制御部310は、処理をステップS606に移行する。この場合、データ転送制御部310は、データ指向性管理テーブル400から、データ通信に使用するプロトコルの固定帯域を参照する(ステップS606)。
【0083】
データ指向性管理テーブル400に固定帯域が設定されている場合、データ転送制御部310は、帯域決定が可能と判断し(ステップS607 YES)、処理をステップS608に移行する。この場合、データ転送制御部310は、データ指向性管理テーブル400から、データ通信に使用するプロトコルの固定帯域を取得する(ステップS608)。さらに、データ転送制御部310は、データ転送装置211に備わるメモリ1402に送信バッファ330をアロケートする(ステップS609)。
【0084】
一方、データ通信に使用するプロトコルがデータ指向性管理テーブル400に登録されていない場合(ステップS602 NO)、データ転送制御部310は、処理をステップS610に移行する。この場合、データ転送制御部310は、データ通信に使用するプロトコルのデータ優先度を、「双方向のデータ」に決定する(ステップS610)。さらに、データ転送制御部310は、データ通信に使用するプロトコルのデータ方向性を「発信元⇔発信先」に決定する(ステップS611)。そして、データ転送制御部310は、処理をステップS612に移行する。
【0085】
また、データ指向性における位置付けが「データ受信側」の場合も(ステップS605 NO)、データ転送制御部310は、ステップS612に移行する。データ指向性管理テーブル400に固定帯域が設定されていないため帯域決定が不可能と判断した場合も(ステップS607 NO)、データ転送制御部310は、ステップS612に移行する。
【0086】
ステップS612において、データ転送制御部310は、データ転送制御部310に備わる利用帯域情報記憶部370に記憶された利用帯域情報500を参照する。そして、ステップS613において、データ転送制御部310は、利用帯域情報500から、帯域リストを取得する。
【0087】
以上の処理が終了すると、データ転送制御部310は、処理をステップS614に移行する。そして、データ転送制御部310は、SDPにしたがってリクエストを作成する(ステップS614)。
【0088】
このとき、データ転送制御部310は、リクエストに、ステップS608で取得した固定帯域またはステップS613で取得した帯域リストを設定する。
また、データ転送制御部310は、リクエストに、ステップS603で取得したデータ優先度またはS610で決定したデータ優先度に応じて、NGN230が提供する転送品質クラスを設定する。
【0089】
データ優先度が「双方向のデータ」の場合、データ転送制御部310は、転送品質クラスを最優先クラスに設定する。ステップS608で取得した固定帯域またはステップS613で取得した帯域リストの帯域が64Kbps以下の場合、最優先クラスは以下のように設定することができる。
【0090】
media−type=audio a=sendrecv
また、ステップS608で取得した固定帯域またはステップS613で取得した帯域リストの帯域が64Kbpsより大きい場合、最優先クラスは以下のように設定することができる。
【0091】
media−type=video a=sendrecv
データ優先度が「発信元からのデータ」または「発信先からのデータ」の場合、データ転送制御部310は、転送品質クラスを高優先クラスに設定する。
【0092】
データ優先度が「発信元からのデータ」の場合、ステップS608で取得した固定帯域またはステップS613で取得した帯域リストの帯域が64Kbps以下のとき、高優先クラスは以下のように設定することができる。
【0093】
media−type=audio a=sendonly
また、データ優先度が「発信元からのデータ」の場合、ステップS608で取得した固定帯域またはステップS613で取得した帯域リストの帯域が64Kbpsより大きい場合、高優先クラスは以下のように設定することができる。
【0094】
media−type=video a=sendonly
また、データ優先度が「発信先からのデータ」の場合、ステップS608で取得した固定帯域またはステップS613で取得した帯域リストの帯域が64Kbps以下のとき、高優先クラスは以下のように設定することができる。
【0095】
media−type=audio a=recvonly
また、データ優先度が「発信先からのデータ」の場合、ステップS608で取得した固定帯域またはステップS613で取得した帯域リストの帯域が64Kbpsより大きい場合、高優先クラスは以下のように設定することができる。
【0096】
media−type=video a=recvonly
ステップS615において、SIP/SDP送信部350は、ステップS614で作成したリクエストをNGN230に送信する。
【0097】
NGN230では、データ転送装置211からリクエストを受信すると、CSCF231は、受信したリクエストに設定された宛先、本実施例ではデータ転送装置221に、リクエストを送信する。
【0098】
図6に示したリクエストに対するレスポンス、すなわち、図8で後述するレスポンスを受信すると、データ転送装置211のデータ転送制御部310は、以下の処理を開始する(ステップS700)。
【0099】
ステップS701において、データ転送装置211は、図6に示したステップS605で判別した、データ指向性における位置付けを確認する。データ方向性における位置付けが「データ受信側」の場合(ステップS702 YES)、データ転送制御部310は、処理をステップS703に移行する。この場合、データ転送制御部310は、受信したレスポンスに帯域が設定されているか否かを確認する(ステップS703)。
【0100】
受信したレスポンスに帯域が設定されている場合(ステップS704 YES)、レスポンスに設定されている帯域が利用可能な帯域か判別する(ステップS705)。例えば、レスポンスに設定されている帯域が、データ転送装置211に備わる利用帯域情報記憶部370に記憶された利用帯域情報500に設定されている場合、データ転送制御部310は、レスポンスに設定されている帯域が、利用可能な帯域と判別することができる。
【0101】
レスポンスに設定されている帯域が利用可能な帯域である場合(ステップS705 YES)、データ転送制御部310は、処理をステップS706に移行する。この場合、データ転送制御部310は、データ転送装置211に備わるメモリ1402に受信バッファ340をアロケートする(ステップS706)。
【0102】
受信したレスポンスに帯域が設定されていない場合(S704 NO、S708 NO)や、受信したレスポンスに設定されている帯域が利用可能でない場合(ステップS705 NO、S709 NO)、データ転送制御部310は、処理をステップS714に移行する。この場合、データ転送制御部310は、データ通信を切断する(ステップS714)。
【0103】
一方、ステップS702において、データ方向性における位置付けが「データ送信側」または「双方向」の場合(ステップS702 NO)、データ転送制御部310は、処理をステップS707に移行する。この場合、データ転送制御部310は、受信したレスポンスに帯域が設定されているか否かを確認する(ステップS707)。
【0104】
受信したレスポンスに帯域が設定されている場合(ステップS708 YES)、レスポンスに設定されている帯域が利用可能な帯域か判別する(ステップS709)。レスポンスに設定されている帯域が利用可能な帯域である場合(ステップS709 YES)、データ転送制御部310は、処理をステップS710に移行する。この場合、データ転送制御部310は、レスポンスに設定されている帯域を、レスポンスから取得する(ステップS710)。さらに、データ転送制御部310は、データ転送制御部310に備わるメモリ1402に送信バッファ330をアロケートする(ステップS711)。ただし、既に送信バッファ330がアロケートされている場合には、ステップS711の処理は行われない。
【0105】
以上の処理が終了すると、データ転送制御部310は、処理をステップS712に移行する。そして、データ転送制御部310は、SDPにしたがってリクエストを作成する(ステップS712)。このとき、データ転送制御部310は、リクエストに、ステップS710で取得した帯域を設定する。レスポンスに帯域リストが設定されていた場合、データ転送制御部310は、ステップS709の処理で利用可能な帯域と判断した帯域のうちから任意の1つを選択してリクエストに設定する。
【0106】
リクエストの作成が完了すると、SIP/SDP送信部350は、リクエストをNGN230に送信する(ステップS713)。
NGN230では、データ転送装置211からリクエストを受信すると、CSCF231が、受信したリクエストに設定された宛先、本実施例ではデータ転送装置221に、リクエストを送信する。
【0107】
図8および図9は、本実施例に係るデータ転送装置221の処理を示すフローチャートである。
図6に示したリクエストを受信すると、データ転送装置221は、以下の処理を開始する(ステップS800)。
【0108】
ステップS801において、データ転送制御部310’は、受信したリクエストに帯域が設定されているか否かを判別する。固定帯域または帯域リストが、受信したリクエストに設定されている場合(ステップS801 YES)、データ転送制御部310’は、処理をステップS809に移行する。
【0109】
また、ステップS801において、受信したリクエストに帯域が設定されていない場合(ステップS801 NO)、データ転送制御部310’は、処理をステップS802に移行する。この場合、データ転送制御部310’は、データ転送装置221に備わるデータ指向性管理テーブル記憶部360’に記憶されたデータ指向性管理テーブル400’を参照する。そして、データ転送制御部310’は、データ通信に使用するプロトコルを検索する(ステップS802)。
【0110】
データ通信に使用するプロトコルがデータ指向性管理テーブル400に設定されている場合(ステップS803 YES)、データ転送制御部310’は、処理をステップS804に移行する。この場合、データ転送制御部310’は、データ指向性管理テーブル400から、データ通信に使用するプロトコルの固定帯域を参照する(ステップS804)。
【0111】
データ指向性管理テーブル400に固定帯域が設定されている場合、データ転送制御部310’は、帯域決定が可能と判断し(ステップS805 YES)、処理をステップS806に移行する。この場合、データ転送制御部310’は、データ指向性管理テーブル400から、データ通信に使用するプロトコルの固定帯域を取得する(ステップS806)。そして、データ転送制御部310’は、処理をステップS809に移行する。
【0112】
一方、データ通信に使用するプロトコルがデータ指向性管理テーブル400に設定されていない場合(ステップS803 NO)、データ転送制御部310’は、処理をステップS807に移行する。また、データ指向性管理テーブル400に固定帯域が設定されていないので帯域決定が不可能と判断した場合も(ステップS805 NO)、データ転送制御部310’は、処理をステップS807に移行する。
【0113】
ステップS807において、データ転送制御部310’は、データ転送装置221に備わる利用帯域情報記憶部370’に記憶された利用帯域情報500’を参照する。そして、ステップS808において、データ転送制御部310’は、利用帯域情報500から、帯域リストを取得する。そして、データ転送制御部310’は、処理をステップS809に移行する。
【0114】
データ指向性における位置付けが「データ受信側」の場合(ステップS809 NO)、データ転送制御部310’は、処理をステップS811に移行する。また、データ指向性における位置付けが「データ送信側」または「双方向」の場合(ステップS809 YES)、データ転送制御部310’は、処理をステップS810に移行する。この場合、データ転送制御部310’は、データ転送装置221に備わるメモリ1402に送信バッファ330’をアロケートする(ステップS810)。なお、既に送信バッファ330がアロケートされている場合には、ステップS810の処理は行われない。
【0115】
ステップS811において、データ転送制御部310’は、SDPにしたがってレスポンスを作成する。このとき、データ転送制御部310’は、リクエストに設定されていた帯域、ステップS806で取得した固定帯域、または、ステップS808で取得した帯域リストを、レスポンスに設定する。レスポンスの作成が完了すると、SIP/SDP送信部350’は、レスポンスをNGN230に送信する(ステップS812)。
【0116】
NGN230では、データ転送装置221からレスポンスを受信すると、CSCF231が、受信したレスポンスに設定された宛先、本実施例ではデータ転送装置211に、レスポンスを送信する。
【0117】
図7に示したリクエストを受信すると、データ転送装置221は、以下の処理を開始する(ステップS900)。
ステップS901において、データ転送制御部310’は、受信したリクエストに帯域が設定されているか否かを判別する。受信したリクエストに帯域が設定されている場合(ステップS901 YES)、データ転送制御部310’は、受信したリクエストに設定されている帯域が利用可能な帯域か否かを判別する(ステップS902)。例えば、リクエストに設定されている帯域が、データ転送装置221に備わる利用帯域情報記憶部370’に記憶された利用帯域情報500’に設定されている場合、データ転送制御部310’は、リクエストに設定されている帯域が、利用可能な帯域と判別することができる。
【0118】
受信したリクエストに設定されている帯域が利用可能な帯域である場合(ステップS902 YES)、データ転送制御部310’は、データ方向性における位置付けが、「データ送信側」または「双方向」であるか否かを判別する(ステップS904)。
【0119】
データ方向性における位置付けが「データ送信側」または「双方向」である場合(ステップS904 YES)、データ転送制御部310’は、データ転送装置221に備わるメモリ1402に送信バッファ330’をアロケートする(ステップS905)。また、データ方向性が「データ受信側」の場合(ステップS904 NO)、データ転送制御部310’は、データ転送装置221に備わるメモリ1402に受信バッファ340’をアロケートする(ステップS906)。
【0120】
以上に説明した図6〜図9までの処理を含むセッション制御通信が完了すると、CSCF231は、データ転送装置211−データ転送装置221間に、指定の転送品質クラスの、ステップS713で指定された帯域を持つ通信パスが確立する。以後、データ転送装置211とデータ転送装置221は、通信パス235を使用してデータの授受を行う。したがって、端末212とサーバ222とは、データ転送装置211−データ転送装置221間に確立した通信パス235を介して、HTTPやFTPなどを利用したデータ通信を行うことが可能となる。
【0121】
図10〜図13は、本実施例に係る帯域変更処理を示すフローチャートである。
図10は、送信バッファの使用状況を監視する処理を示すフローチャートである。この送信バッファの使用状況を監視する処理は、データ転送装置211またはデータ転送装置221のうち、データ方向性における位置付けが「データ送信側」となる装置で行われる。なお、データ方向性における位置付けが「双方向」の場合であって、あらかじめ決められた固定帯域を使用しない場合には、データ転送装置211またはデータ転送装置221のうち都合のよい方が行えばよい。
【0122】
図10〜図13では、データ転送装置211の、データ方向性における位置付けが「データ送信側」である場合を例に説明する。
端末212から受信するコンテンツ情報などのデータは、データ転送装置211に備わる送信バッファ330に格納されてから、対向装置であるデータ転送装置221に送信される。データ転送装置211の送信バッファ制御部320は、端末212からデータを受信すると、送信バッファ・キューを参照する(S1000)。
【0123】
送信バッファ・キューの長さが閾値Th−a以上の場合(ステップS1001 YES)、送信バッファ制御部320は、図示しないが、送信バッファ・キューの長さが閾値Th−a以上となっている時間を計測するタイマAを設定する。ただし、既にタイマAが設定されている場合、送信バッファ制御部320は、タイマAを設定しない。そして、送信バッファ制御部320は、処理をステップS1002に移行する。
【0124】
ステップS1002において、送信バッファ制御部320は、タイマAから、送信バッファ・キューの長さが閾値Th−a以上となっている時間Taを取得する。そして、時間Taが閾値Xより大きい場合(ステップS1002 YES)、送信バッファ制御部320は、データ転送制御部310に対して、帯域増加処理を指示する(ステップS1003)。
【0125】
帯域増加処理が完了すると、送信バッファ制御部320は、処理をステップS1000に移行する。また、時間Taが閾値X以下の場合(ステップS1002 NO)、送信バッファ制御部320は、処理をステップS1000に移行する。
【0126】
一方、送信バッファ・キューの長さが閾値Th−a未満の場合(ステップS1001 NO)、送信バッファ制御部320は、タイマAをクリアする(ステップS1004)。
送信バッファ・キューの長さが閾値Th−b未満の場合(ステップS1005 YES)、送信バッファ制御部320は、図示しないが、送信バッファ・キューの長さが閾値Th−b未満となっている時間を計測するタイマBを設定する。ただし、既にタイマBが設定されている場合、送信バッファ制御部320は、タイマBを設定しない。そして、送信バッファ制御部320は、処理をステップS1006に移行する。
【0127】
ステップS1006において、送信バッファ制御部320は、タイマBから、送信バッファ・キューの長さが閾値Th−b未満となっている時間を取得する。
ステップS1005において、送信バッファ制御部320は、タイマBから、送信バッファ・キューの長さが閾値Th−b以上となっている時間Tbを取得する。そして、時間Tbが閾値Yより大きい場合(ステップS1006 YES)、送信バッファ制御部320は、データ転送制御部310に対して、帯域減少処理を指示する(ステップS1007)。
【0128】
帯域減少処理が完了すると、送信バッファ制御部320は、処理をステップS1000に移行する。また、時間Tbが閾値Y以下の場合(ステップS1006 NO)、送信バッファ制御部320は、処理をステップS1000に移行する。
【0129】
一方、送信バッファ・キューの長さが閾値Th−b以上の場合(ステップS1005 NO)、送信バッファ制御部320は、タイマBをクリアする(ステップS1008)。そして、送信バッファ制御部320は、処理をステップS1000に移行する。
【0130】
図11〜図13は、本実施例に係る帯域変更処理を示すフローチャートである。図11から順に説明する。
データ転送装置211の送信バッファ制御部320から帯域変更の指示、例えば、図10に示した帯域増加の指示(ステップS1003)や帯域減少の指示(ステップS1007)を受信すると、データ転送制御部310は、以下の処理を開始する(ステップS1100)。
【0131】
ステップS1101において、データ転送制御部310は、データ転送装置211に備わる利用帯域情報記憶部370に記憶されている利用帯域情報500を参照する。
受信した帯域変更の指示が帯域増加の指示である場合(ステップS1102 YES)、データ転送制御部310は、帯域増加が可能か否かを判別する(ステップS1103)。例えば、現在使用している通信パスの帯域より大きい帯域が、利用帯域情報500に設定されている場合、データ転送制御部310は、帯域増加が可能と判断することができる。帯域増加が可能と判断した場合(ステップS1103 YES)、データ転送制御部310は、処理をステップS1105に移行する。
【0132】
一方、受信した帯域変更の指示が帯域減少の指示である場合(ステップS1102 NO)、データ転送制御部310は、帯域減少が可能か否かを判別する(ステップS1104)。例えば、現在使用している通信パスの帯域より小さい帯域が、利用帯域情報500に設定されている場合、データ転送制御部310は、帯域減少が可能と判断することができる。帯域減少が可能と判断した場合(ステップS1104 YES)、データ転送制御部310は、処理をステップS1105に移行する。
【0133】
ステップS1105において、データ転送制御部310は、帯域リストを作成する。例えば、送信バッファ制御部320から帯域増加の指示を受信した場合、データ転送制御部310は、現在使用している通信パスの帯域より大きい帯域を、データ転送装置211に備わる利用帯域情報500から取得して帯域リストを作成する。また、送信バッファ制御部320から帯域減少の指示を受信した場合、データ転送制御部310は、現在使用している通信パスの帯域より小さい帯域を、データ転送装置211に備わる利用帯域情報500から取得して帯域リストを作成する。
【0134】
ステップS1106において、データ転送制御部310は、SDPにしたがってリクエストを作成する。このとき、データ転送制御部310は、リクエストに、ステップS1105で作成した帯域リストを設定する。リクエストの作成が完了すると、データ転送制御部310は、リクエストをNGN230に送信する(ステップS1107)。
【0135】
NGN230では、データ転送装置211からリクエストを受信すると、CSCF231は、受信したリクエストに設定された宛先、本実施例ではデータ転送装置221に、リクエストを送信する。
【0136】
帯域増加が不可能と判断した場合(ステップS1103 NO)、データ転送制御部310は、処理を終了する(ステップS1108)。同様に、帯域減少が不可能と判断した場合(ステップS1104 NO)、データ転送制御部310は、処理を終了する(ステップS1109)。
【0137】
図11に示したリクエストを受信すると、データ転送装置221は、以下の処理を開始する(ステップS1200)。
ステップS1201において、データ転送制御部310’は、受信したリクエストに帯域が設定されている否かを判別する。受信したリクエストに帯域が設定されている場合(ステップS1201 YES)、データ転送制御部310’は、リクエストに設定されている帯域が利用可能な帯域であるか否かを判別する。
【0138】
例えば、リクエストに設定されている帯域が、データ転送装置221の利用帯域情報記憶部370’に記憶された利用帯域情報500’に設定されていれば、データ転送制御部310’は、リクエストに設定されている帯域が利用可能な帯域であると判断することができる。
【0139】
リクエストに設定されていた帯域が利用可能な帯域である場合(ステップS1202 YES)、データ転送制御部310’は、リクエストに設定されていた帯域を、新たな帯域として選択する(ステップS1203)。リクエストに帯域リストが設定されていた場合、データ転送制御部310’は、ステップS1202の処理で利用可能な帯域と判断した帯域のうちから任意の1つを選択すればよい。
【0140】
一方、受信したリクエストに帯域が設定されていない場合(ステップS1201 NO)、データ転送制御部310’は、現在使用している帯域を選択する(ステップS1204)。同様に、リクエストに設定されていた帯域が利用可能な帯域でない場合(ステップS1202 NO)、データ転送制御部310’は、現在使用している帯域を選択する(ステップS1204)。
【0141】
ステップS1205において、データ転送制御部310’は、SDPにしたがってレスポンスを作成する。このとき、データ転送制御部310’は、レスポンスに、ステップS1203またはステップS1204で選択した帯域を設定する。レスポンスの作成が完了すると、データ転送制御部310’は、レスポンスをNGN230に送信する(ステップS1206)。
【0142】
NGN230では、データ転送装置221からレスポンスを受信すると、CSCF231は、受信したリレスポンスに設定された宛先、本実施例ではデータ転送装置211に、レスポンスを送信する。
【0143】
図13に示したレスポンスを受信すると、データ転送装置211は、以下の処理を開始する(ステップS1300)。
ステップS1301において、データ転送制御部310は、受信したレスポンスに、帯域が設定されているか否かを判別する。受信したレスポンスに帯域が設定されている場合(ステップS1301 YES)、データ転送制御部310は、レスポンスに設定された帯域が利用可能な帯域か否かを判別する(ステップS1302)。
【0144】
レスポンスに設定された帯域が利用可能な帯域の場合(ステップS1302 YES)、データ転送制御部310は、帯域変更処理を完了する(ステップS1303)。
以上に説明した図11〜図13までのセッション制御通信が完了すると、データ転送装置211−データ転送装置221間に、新たな帯域が割当てられた通信パス235が確立する。以後、データ転送装置211とデータ転送装置221は、新たに設定された帯域の通信パス235を使用してデータの授受を行う。
【0145】
受信したレスポンスに帯域が設定されていない場合(ステップS1301 NO)や、レスポンスに設定された帯域が利用可能な帯域でない場合(ステップS1302 NO)、データ転送制御部310は、処理を終了する(ステップS1304)。
【0146】
図14は、本実施例に係るデータ転送装置211の具体的な構成例を示す図である。なお、データ転送装置211とデータ転送装置221は、同じ構成の装置を用いることができるので、データ転送装置221の構成例は省略する。
【0147】
図14に示すデータ転送装置211は、CPU1401と、メモリ1402と、入力装置1403と、出力装置1404と、外部記録装置1405と、媒体駆動装置1406と、ネットワーク接続装置1408と、を備える。そして、これらの装置がバスに接続されて相互にデータの受け渡しが行える構成となっている。
【0148】
CPU1401は、周辺機器や各種ソフトウェアを実行する他に本実施例に係るデータ転送処理を実現するプログラムを実行する演算装置である。
メモリ1402は、プログラムを実行するために使用される揮発性の記憶装置である。メモリ1402には、例えば、RAM(Random Access Memory)などを使用することができる。
【0149】
入力装置1403は、外部からのデータ入力手段である。入力装置1403には、例えば、キーボードやマウスなどを使用することができる。
出力装置1404は、データ等を表示装置等に出力する装置である。なお、出力装置1404には、表示装置を含むこともできる。
【0150】
外部記録装置1405は、データ転送装置211が動作するために必要なプログラムやデータの他に本実施例に係るデータ転送処理を実現するプログラムを記録する不揮発性の記憶装置である。外部記憶装置1405には、例えば、磁気ディスク記憶装置などを使用することができる。
【0151】
媒体駆動装置1406は、メモリ1402や外部記録装置1405のデータを可搬記録媒体1407、例えば、フロッピイディスクやMOディスク、CD−RやDVD−Rなどに出力し、または可搬記録媒体1407からプログラムやデータ等を読み出す装置である。
【0152】
ネットワーク接続装置1408は、ネットワーク1409に接続する装置である。
なお、メモリ1402、外部記録装置1405および可搬記録媒体1407などの情報処理装置に読取り可能な記録媒体は、非一時的(non−transitory)な媒体である。
【0153】
以上に説明したように、本実施例に係るデータ転送装置211は、端末212からHTTPリクエストなどのリクエストを受信すると、そのデータ通信のデータ方向性を、データ指向性管理テーブル400に基づいて判別する。
【0154】
そして、データ転送装置211は、NGN230が提供するSoSを利用して、データ転送装置211−データ転送装置120間に、データ方向性と一致するデータ転送方向に、所定の帯域の通信パス235を確立する。
【0155】
その結果、データ転送装置211は、NGN230を利用した、音声通信以外の様々なデータ通信においても、所定の帯域の通信パス235を確保することができる。そのため、データ転送装置211は、NGN230を利用した、音声通信以外の様々なデータ通信においても、高品質なデータ通信を提供することができる。
【0156】
また、データ転送装置211は、データ方向性における自装置の位置付けが「データ送信側」である場合、データ転送装置211に備わる送信バッファ330の使用状況を監視する。そして、データ転送装置211は、送信バッファ330の使用状況に応じて、NGN230が提供するSoSを利用して、通信パス235の帯域を動的に増減する。
【0157】
その結果、データ転送装置211は、NGN230を利用した、音声通信以外の様々なデータ通信においても、通信パス235の帯域制御を行うことができる。例えば、データ転送装置211は、データの通信量に応じた適切な帯域に、通信パス235の帯域を調整することができる。これにより、データ転送装置211は、データ通信量に応じて、適切な帯域の通信パス235を確保することができる。データ転送装置211は、NGN230を用いたデータ通信を効率良く行うことができる。
【0158】
また、データ転送装置211は、データの通信量に応じて通信パス235の帯域を調整するので、データ転送装置211にデータが滞留してしまうことがないため、余分なバッファを確保する必要がない。そのため、データ転送装置211は、データ転送装置211に備わるメモリ等の資源を有効に使用することができる。
以上のように、本実施例に係るデータ転送装置211は、高品質なデータ通信を行うことができる。
【0159】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
ネットワークを介して接続する対向装置にデータを送信するデータ転送装置において、
データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶するデータ指向性情報記憶部と、
データを受信すると、前記データ指向性情報記憶部から前記データ指向性情報を読み出し、該データ指向性情報から前記データ方向性を特定し、該特定した前記データ方向性における自装置の位置付けを判別する位置付け判別部と、
前記データ方向性に基づく送信方向の前記データ通信に使用する、所定の帯域の通信パスを、前記対向装置との間に確立する通信パス確立部と、
前記データ方向性に基づく送信方向の前記データ通信に前記通信パスを使用して、前記対向装置と前記データ通信を行うデータ通信部と、
前記データ方向性における自装置の位置付けがデータ送信側である場合、前記対向装置に送信するデータを一時的に記憶する送信バッファの使用状況を監視し、前記送信バッファの使用状況に応じて、前記通信パスの帯域を変更する帯域制御部と、
を備えるデータ転送装置。
(付記2)
前記データ指向性情報には、データ通信に使用するプロトコル毎に前記データ方向性が定義されている、
ことを特徴とする付記1に記載のデータ転送装置。
(付記3)
前記データ方向性は、前記データ通信におけるデータの転送量で決まる、
ことを特徴とする付記1に記載のデータ転送装置。
(付記4)
前記データ方向性は、前記データ通信にけるデータの転送量がより大きくなる送信方向で定義される、
ことを特徴とする付記1に記載のデータ転送装置。
(付記5)
前記通信パス確立部は、前記自装置の使用可能帯域と前記対向装置の使用可能帯域とに基づいて前記所定の帯域を決定する、
ことを特徴とする付記1に記載のデータ転送装置。
(付記6)
前記帯域制御部は、前記送信バッファを管理する待ち行列の長さが第1の長さ以上の状態が続く時間が第1の閾値より大きくなると、前記所定の帯域を増加させる、
ことを特徴とする付記1に記載のデータ転送装置。
(付記7)
前記帯域制御部は、前記送信バッファを管理する待ち行列の長さが第2の長さ未満の状態が続く時間が第2の閾値より大きくなると、前記所定の帯域を減少させる、
ことを特徴とする付記1に記載のデータ転送装置。
(付記8)
前記ネットワークは、帯域要求を受けると、該要求に応じた帯域の通信パスを提供するNGN(Next Generation Network)である、
ことを特徴とする付記1に記載のデータ転送装置。
(付記9)
前記通信パス確立部は、前記NGNに対して、前記データ方向性と一致する転送品質クラスを指定する、
ことを特徴とする付記8に記載のデータ転送装置。
(付記10)
ネットワークを介して接続する対向装置にデータを送信するデータ転送方法において、
データを受信すると、データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶するデータ指向性情報記憶部から前記データ指向性情報を読み出し、該データ指向性情報から前記データ方向性を特定し、該特定した前記データ方向性における自装置の位置付けを判別し、
前記データ方向性に基づく送信方向の前記データ通信に使用する、所定の帯域の通信パスを、前記対向装置との間に確立し、
前記データ方向性に基づく送信方向の前記データ通信に前記通信パスを使用して、前記対向装置と前記データ通信をし、
前記データ方向性における自装置の位置付けがデータ送信側である場合、前記対向装置に送信するデータを一時的に記憶する送信バッファの使用状況を監視し、前記送信バッファの使用状況に応じて、前記通信パスの帯域を変更するデータ転送方法。
(付記11)
ネットワークを介して接続する対向装置にデータを送信するデータ転送をデータ転送装置に実行させるプログラムにおいて、
データを受信すると、データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶するデータ指向性情報記憶部から前記データ指向性情報を読み出し、該データ指向性情報から前記データ方向性を特定し、該特定した前記データ方向性における自装置の位置付けを判別する処理と、
前記データ方向性に基づく送信方向の前記データ通信に使用する、所定の帯域の通信パスを、前記対向装置との間に確立する処理と、
前記データ方向性に基づく送信方向の前記データ通信に前記通信パスを使用して、前記対向装置と前記データ通信をする処理と、
前記データ方向性における自装置の位置付けがデータ送信側である場合、前記対向装置に送信するデータを一時的に記憶する送信バッファの使用状況を監視し、前記送信バッファの使用状況に応じて、前記通信パスの帯域を変更する処理と、
を前記データ転送装置に実行させるプログラム。
【符号の説明】
【0160】
100 通信システム
110 データ転送装置
111 データ指向性情報記憶部
112 位置付け判別部
113 通信パス確立部
114 データ通信部
115 帯域制御部
116 送信バッファ
120 対向装置(データ転送装置)
130 ネットワーク
131 通信パス

【特許請求の範囲】
【請求項1】
ネットワークを介して接続する対向装置にデータを送信するデータ転送装置において、
データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶するデータ指向性情報記憶部と、
データを受信すると、前記データ指向性情報記憶部から前記データ指向性情報を読み出し、該データ指向性情報から前記データ方向性を特定し、該特定した前記データ方向性における自装置の位置付けを判別する位置付け判別部と、
前記データ方向性に基づく送信方向の前記データ通信に使用する、所定の帯域の通信パスを、前記対向装置との間に確立する通信パス確立部と、
前記データ方向性に基づく送信方向の前記データ通信に前記通信パスを使用して、前記対向装置と前記データ通信を行うデータ通信部と、
前記データ方向性における自装置の位置付けがデータ送信側である場合、前記対向装置に送信するデータを一時的に記憶する送信バッファの使用状況を監視し、前記送信バッファの使用状況に応じて、前記通信パスの帯域を変更する帯域制御部と、
を備えるデータ転送装置。
【請求項2】
前記データ指向性情報には、データ通信に使用するプロトコル毎に前記データ方向性が定義されている、
ことを特徴とする請求項1に記載のデータ転送装置。
【請求項3】
前記データ方向性は、前記データ通信におけるデータの転送量で決まる、
ことを特徴とする請求項1に記載のデータ転送装置。
【請求項4】
ネットワークを介して接続する対向装置にデータを送信するデータ転送方法において、
データを受信すると、データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶するデータ指向性情報記憶部から前記データ指向性情報を読み出し、該データ指向性情報から前記データ方向性を特定し、該特定した前記データ方向性における自装置の位置付けを判別し、
前記データ方向性に基づく送信方向の前記データ通信に使用する、所定の帯域の通信パスを、前記対向装置との間に確立し、
前記データ方向性に基づく送信方向の前記データ通信に前記通信パスを使用して、前記対向装置と前記データ通信をし、
前記データ方向性における自装置の位置付けがデータ送信側である場合、前記対向装置に送信するデータを一時的に記憶する送信バッファの使用状況を監視し、前記送信バッファの使用状況に応じて、前記通信パスの帯域を変更するデータ転送方法。
【請求項5】
ネットワークを介して接続する対向装置にデータを送信するデータ転送をデータ転送装置に実行させるプログラムにおいて、
データを受信すると、データ通信におけるデータの主な送信方向を示すデータ方向性を定義したデータ指向性情報を記憶するデータ指向性情報記憶部から前記データ指向性情報を読み出し、該データ指向性情報から前記データ方向性を特定し、該特定した前記データ方向性における自装置の位置付けを判別する処理と、
前記データ方向性に基づく送信方向の前記データ通信に使用する、所定の帯域の通信パスを、前記対向装置との間に確立する処理と、
前記データ方向性に基づく送信方向の前記データ通信に前記通信パスを使用して、前記対向装置と前記データ通信をする処理と、
前記データ方向性における自装置の位置付けがデータ送信側である場合、前記対向装置に送信するデータを一時的に記憶する送信バッファの使用状況を監視し、前記送信バッファの使用状況に応じて、前記通信パスの帯域を変更する処理と、
を前記データ転送装置に実行させるプログラム。

【図1】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2012−19340(P2012−19340A)
【公開日】平成24年1月26日(2012.1.26)
【国際特許分類】
【出願番号】特願2010−155022(P2010−155022)
【出願日】平成22年7月7日(2010.7.7)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】