JP2009071411A - データの転送方法、装置、プログラム - Google Patents

データの転送方法、装置、プログラム Download PDF

Info

Publication number
JP2009071411A
JP2009071411A JP2007235237A JP2007235237A JP2009071411A JP 2009071411 A JP2009071411 A JP 2009071411A JP 2007235237 A JP2007235237 A JP 2007235237A JP 2007235237 A JP2007235237 A JP 2007235237A JP 2009071411 A JP2009071411 A JP 2009071411A
Authority
JP
Japan
Prior art keywords
field
identifier
control packet
transmission
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007235237A
Other languages
English (en)
Other versions
JP4988487B2 (ja
Inventor
Yasushi Tsukamoto
泰史 塚本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2007235237A priority Critical patent/JP4988487B2/ja
Priority to US12/198,339 priority patent/US7876773B2/en
Priority to CN2008102151693A priority patent/CN101388846B/zh
Publication of JP2009071411A publication Critical patent/JP2009071411A/ja
Application granted granted Critical
Publication of JP4988487B2 publication Critical patent/JP4988487B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/15Flow control; Congestion control in relation to multipoint traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】複数の送信装置からの同一ネットワークへのデータ転送による輻輳と、それに起因するデータ・ロスを回避し、効率的にデータ転送するための方法、送信装置等を提供する。
【解決手段】複数の送信装置のうちの第1送信装置がネットワークにデータ・パケットを送信する方法であって、(1)複数の送信装置のうちの第2送信装置が送信した制御パケットを受信するステップと、(2)受信した制御パケットが、第1送信装置にデータ・パケットの送信を認めることを示しているか判断するステップであって、示している判断したことに応答してデータ・パケットを送信し、示していないと判断したことに応答して更なる制御パケットを受信するステップと、(3)送信が完了したことを条件に、複数の送信装置から所定の規則で選択した1つの送信装置を、次にデータ・パケットの送信を認める送信装置として示した、新たな制御パケットを送信するステップとを有する。
【選択図】図5

Description

本発明は、ネットワークにおけるデータの転送方法に関するものである。 本発明は特に、複数の送信装置から同一のネットワーク回線を経由してデータを転送する際のデータの輻輳を抑えるための転送方法およびその装置に関するものである。
ネットワーク・プロトコル(即ち、OSI参照モデルのネットワーク層のプロトコル)としてIP(Internet Protocol)を用いたネットワークのことを一般にIPネットワークと呼んでおり、インターネットやLAN(Local Area Network)等もその一種であることは周知である。
このIPネットワークを利用したデータ転送技術により、IPパケット(IPネットワークにおけるデータ転送の単位となるパケット)を使用した、IP電話やテレビ会議システム等の各種リアルタイム・アプリケーションが実現している。これらリアルタイム・アプリケーションは、音声や画像等のデータのストリーム形式でのリアルタイム配信技術により可能となるもので、これらリアルタイム配信技術としては、VoIP(Voice over IP)、Realストリーミング(商標)、QuickTimeストリーミング(商標)等が存在する。いずれのリアルタイム配信技術においても、同一ネットワーク当たりの転送ストリームの許容数をできる限り多くすることが求められている。
これらのリアルタイム配信技術では、その転送プロトコル(即ち、OSI参照モデルのトランスポート層のプロトコル)として、TCP(Transmission Control Protocol)ではなく、より高い転送速度を期待できるUDP(User Datagram Protocol)を用いることが多い。
UDPは、TCPと比べるとデータ転送速度は高いが、送達確認などを行わない無手順方式のプロトコルで、再送制御も定められていない。このため、転送中のパケット紛失やデータ誤り等の検出、およびそのための対応手段は、より上位層であるアプリケーション等で行うほかは無く、UDP自身によってはカバーされない。
このため、UDPは、転送の途中で多少のデータ・ロスがあっても問題が少ない音声や画像のストリーム形式での配信に主に用いられるのであるが、データ・ロスがあまりに多くなると無視し得なくなり転送の信頼性の低下を招く。よって、UDPを用いたデータ転送では、でき得る限りデータ・ロスを少なくすることが求められることになる。
ところで、一般に通信ネットワークにおいては、1回で(即ち、1つのパケットで)転送できるデータの最大値が決められており、これをMTU(Maximum Transmission Unit)と呼んでいる。このMTUは、送信装置が各データ転送の接続ごとにその値を設定することができる。例えば送信装置が受信装置より大きなデータ転送許容値を持っていたとしても受信装置のデータ転送許容値で制限を受けるため、この送信装置から受信装置へのデータ転送の接続において設定できる最大のMTU値は受信装置のデータ転送許容値ということになる。
リアルタイム・アプリケーションにおけるデータ転送の対象となるデータは、PCMサンプリング・データや動画画像のデータのような総計サイズの大きいものがほとんどで、このサイズは、その転送において設定され得るMTU値をはるかに超えるものである。よって、リアルタイム・アプリケーションにおいてUDPを用いてデータ転送をする場合、転送対象のデータを複数のUDPパケットに分割するだけでなく、各UDPパケットをその転送において設定されたMTUサイズの複数の小パケット(以後、フラグメント・パケットと呼ぶ)にさらに分割して、それらのフラグメント・パケットを順次転送しなければならない。
通常この各UDPパケットからMTUサイズの複数のフラグメント・パケットへの分割は、送信装置上で、OS(オペレーティング・システム)、ネットワーク・カード・ドライバを経てネットワーク・カード上のインターフェース・ロジックによりハードウェア的に行われる。また、1つのUDPパケット分に相当する全てのフラグメント・パケットを集中して連続転送するいわゆるバースト転送が行われ、高効率にフラグメント・パケットの転送を行なうことを可能としている。
フラグメント・パケットのバースト転送では、送信装置から連続して転送されるデータによって瞬間的にネットワーク回線が占有される。この場合、単一の送信装置と受信装置間での通信だけであれば問題は発生しない。しかし、送信装置と受信装置の複数のペアが同一のネットワーク回線を使用する場合、ある送信装置からのフラグメント・パケットの送出タイミングが他の送信装置からのタイミングと同調してネットワーク回線の占有期間が重複した場合に、回線の奪い合い状態が発生し、いわゆる輻輳(Convergence)を引き起こす。
図1は、IPネットワークに接続された複数の送信装置のそれぞれからデータ・パケットのバースト転送が定期的に行われる環境を示したものである。送信装置A 102から受信装置A 112に転送されるデータと、送信装置B 104から受信装置B 114に転送されるデータとは、共に同一のいくつかの中継用のHUB 122、124等を経由して同一のIPネットワーク回線 132を使って転送される。
また、図2は、図1に示したデータ転送環境において、送信装置A 102と送信装置B 104のそれぞれからバースト転送のために送信されるデータに係るデータ・レート(単位時間当たりのデータ量)が時間と共に変化する様子を示したものである。
図2では、送信装置Aからのバースト転送と送信装置Bからのバースト転送との重複期間 202、204がある。この重複期間では、IPネットワーク回線 132に流入するフラグメント・パケットが一定期間に集中し、そのネットワーク回線の単位時間当たりの転送許容量(ネットワーク帯域とも言う)を超えることになるので、何れかの送信装置から流入して来た方のフラグメント・パケットは各HUB等において待ち行列(キュー、バッファ)に入れられて処理待ち状態となる。
しかし、各中継ルーターにおける待ち行列には容量に限りがあるため、パケットが入りきらない場合は転送待ちパケットのいくつかは廃棄され、データ・ロスが発生する。一般にバースト転送においては、1つのフラグメント・パケットのロスが発生すると、そのバースト転送に係る全てのフラグメント・パケットをロスしたものとみなされるので、実際に廃棄されたフラグメント・パケット以上の大量のデータ・ロスを発生させる結果となる。
図2に示す例の場合は、送信装置Aからと送信装置Bからの両データ転送の合算データ量の平均は、IPネットワーク回線 132の単位時間当たりの転送許容量以下であるのは明らかなのにも関わらず、互いのバースト転送の重複期間では、単一の送信装置から転送される場合と比較して大量のデータ・ロスが発生するという理不尽な結果を招く。
このような輻輳によるデータ・ロスの問題を解決するためには、次に述べる2つの方法が考えられる。
先ず1つの方法は、1つのUDPパケットがフラグメント化されないように、各UDPパケットをその転送において設定されたMTUサイズ以下のサイズとするものである。
この方法を用いれば、各UDPパケットのサイズが細分化されることで、データ・ロス発生時に廃棄されるデータ量を最小限に抑制することができる。
しかし、UDPパケットを複数のフラグメント・パケットに分割するのが通常はハードウェア的に高速に行われるのと異なり、転送対象のデータを分割してUDPパケットを生成するのはCPUによりソフトウェア的に行なわれるので、MTUサイズ以下の多数のUDPパケットを生成するにはCPUがより多くの時間を必要とする。同時に受信装置側でもUDPパケットの受信処理により多くの時間が必要となる。
また、この方法は、多数に分割したUDPパケットをバースト転送等で高効率に転送するものではないので、フラグメント・パケットをバースト転送する場合のような十分なパフォーマンスが得られない。
今1つの方法は、その転送におけるMTUサイズを大きな値に設定して、1つのUDPパケットをフラグメント化しなくても良いようにするものである。例えば、通常1500バイトに設定されるMTUサイズを9000バイトに変更することで、フラグメント化を防ぐことが可能となり、大きなサイズのUDPパケットをそのまま転送することができる。
しかしながら、この方法は、ネットワーク回線がギガビット・イーサーネットでサポートされているような高転送効率の物理的規格を持ったものである場合にのみ有効であり、また、中継用のHUB等の途中の経路機器の全てがこの大きなサイズのパケット転送に対応している必要があり、適用できる構成がかなり限定的となる。
また、特開2005−268914号公報には、データを任意のタイミングで送出することで送信レートを確保することができるデータ生成装置において、そのデータ生成装置の上流に当たる転送装置からのフロー制御(データ送信可/不可の制御)がある場合に、そのフロー制御の状況に応じて、そのデータ生成装置内において、次に転送装置に送信するデータの送出タイミングを調整することで、一定のデータ送出レートを確保することができる手段等についての発明が記載されている。
しかしこの発明は、各データ生成装置の上流に当たる転送装置からのフロー制御があることを前提としたもの、即ち、フロー制御がデータ生成装置の外部から行われた場合において、各データ生成装置の内部での今後のデータ送出タイミングの調整(即ち、スピードアップ)を行うことで問題解決を図る方法について言及したものである。
よってこの発明は、このようなフロー制御を行なってくれるスーパーバイザー的な転送装置が無く、複数の送信装置が直接IPネットワークに接続されているような図1に示すような環境下において、各送信装置からの転送データの輻輳が起こったことにより発生するデータ・ロス等の問題点を解決できるというものではない。
特開2005−268914号公報
そこで本発明は、データ転送のためのネットワークにおいて、複数の送信装置から同一のネットワーク回線を経由してデータを転送する際に、データの輻輳が起こって大量のデータ・ロスが発生することを回避し、そのネットワーク回線のネットワーク帯域の範囲内で効率的に各データを転送するための方法およびその送信装置を提供することをその目的とする。
上記課題を解決するために、本発明の第1の側面においては、ネットワークに接続された複数の送信装置のうちの1つの送信装置が、対応する受信装置に対して、当該ネットワークを介して1群のデータ・パケットの送信を行なう方法であって、(1)当該送信装置が、前記複数の送信装置のうちの1つから前記ネットワークにブロードキャスト送信される制御パケットであって、前記複数の送信装置の何れか1つを示す識別子を格納した第1フィールドと、前記複数の送信装置の全てまたは一部の送信装置に係る識別子グループを格納した第2フィールドとを含む制御パケットを待って、それを受信するステップと、 (2)当該送信装置が、前記制御パケットを受信したことに応答して、前記制御パケットにおける前記第1フィールドに当該送信装置を示す識別子が格納されているか判断し、(a) 格納されていないと判断する場合は、更なる制御パケットを対象として、前記受信するステップに戻り、(b) 格納されていると判断する場合は、当該送信装置からの1群のデータ・パケットの送信が可能になるのを待って、前記対応する受信装置に向けて当該1群のデータ・パケットを送信するステップを実行する、ステップと、 (3)当該送信装置が、前記1群のデータ・パケットの送信が完了したことに応答して、前記第2フィールドに格納された前記識別子グループの中から1つの識別子を所定の基準に従って選択するステップと、 (4)当該送信装置が、前記選択したことに応答して、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記選択された識別子を格納し、当該第2フィールドには前記識別子グループを格納した、第1の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップと、 (5)当該送信装置が、前記第1の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップとを有する方法を提供する。
また、本発明の第2の側面においては、第1の側面における方法において、(6)当該送信装置が、前記受信するステップの後、前記ブロードキャスト送信するステップの開始までの間に、更なる制御パケットを受信した場合に、前記第1の新たな制御パケットをブロードキャスト送信せず、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記選択された識別子を格納し、当該第2フィールドには前記更なる制御パケットにおける第2フィールドに格納された識別子グループを格納した、第2の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップと、 (7)当該送信装置が、前記第2の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップとをさらに有する方法を提供する。
さらに、本発明の第3の側面においては、第2の側面における方法において、(8)当該送信装置が、前記制御パケットを受信したことに応答して、前記第1フィールドに当該送信装置を示す識別子が格納されているか判断する前に、前記第2フィールドに格納された識別子グループに当該送信装置を示す識別子が含まれるか判断し、(a) 含まれると判断する場合は、前記第1フィールドに当該送信装置を示す識別子が格納されているか判断する前記ステップを実行し、(b) 含まれないと判断する場合は、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記制御パケットにおける前記第1フィールドに格納された前記識別子を格納し、当該第2フィールドには前記識別子グループに当該送信装置の識別子を加えた更新識別子グループを格納した、第3の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップを実行する、ステップと、 (9)当該送信装置が、前記第3の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップとをさらに有する方法を提供する。
以上、本発明の概要を、ネットワークに接続された送信装置がデータ・パケットの転送を行なう方法として説明したが、本発明はまた、これらの方法を実施することのできる装置(即ち、送信装置)としても捉えることができる。
さらに本発明は、当該送信装置の記憶装置等に格納され、当該送信装置にこれらの方法を実行させることができるプログラム(コンピュータ・プログラム、ソフトウェアと呼ぶこともある)としても捉えることができる。
尚、上記発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの構成要素のコンビネーションまたはサブコンビネーションもまた発明となり得ることに留意されたい。
本発明によれば、ネットワークに接続された複数の送信装置からデータ転送を行う場合において、各送信装置におけるデータ送出のタイミングを調整することで、各送信装置からの転送データの重複による輻輳を回避し、各送信装置からの転送データのロスを防ぐことができる。
また、本発明によれば、データ送出のタイミングを調整するためのスーパバイザー的な特別な装置を必要とすることなく、各送信装置間での制御情報のやり取りのみによって、各送信装置が主体的判断でデータ送出のタイミングを調整することができる。
以下、添付図面を参照して、本発明を実施するための最良の形態(以下、実施形態)について詳細に説明する。 なお、実施形態の説明の全体を通じて同じ要素には同じ番号を付している。
図3は、図1に示したIPネットワーク 132上で複数の送信装置のそれぞれから、対応する各受信装置に対してデータ・パケットのバースト転送が定期的に行われるシステム環境において本発明を実施するのに好適な送信装置 300の詳細なハードウェア構成の典型的な例を示した図である。
送信装置 300の全体の制御は、プロセッサ 302(中央処理装置、CPU、メイン・プロセッサ等と呼ぶこともある。)によって司られる。その直近にメモリ・コントローラ・ブリッジ 304(メモリ・ブリッジ、第1のブリッジ、ノース・ブリッジ等と呼ぶこともある。)が接続され、当該メモリ・コントローラ・ブリッジ 304にはメイン・メモリ 306(メモリ、主記憶等と呼ぶこともある。)およびグラフィックス・コントローラ 308が直接接続され、グラフィックス・コントローラ 308の先にはディスプレイ 310(ディスプレイ装置、表示装置と呼ぶこともある。)が接続される。
メモリ・コントローラ・ブリッジ 304からはまた、PCIローカル・バス 312等のバスを介して、I/Oコントローラ・ブリッジ 314(I/Oブリッジ、第2のブリッジ、サウス・ブリッジ等と呼ぶこともある。)が接続される。
当該I/Oコントローラ・ブリッジ 314にはストレージ・コントローラ 316(IDEコントローラ、SCSIコントローラ、等)を介してハードディスク・ドライブ 318(HDD、ハードディスク、ハードディスク・ストレージ、固定記憶装置等と呼ぶこともある。)、DVD 320等の大容量記憶装置が接続され、ここに本発明を実施させるのに必要なオペレーティング・システム 322、およびオペレーティング・システムと協働してプロセッサ等に命令を与えて本発明を実施させるための、アプリケーション・ソフトウェア 232等のコンピュータ・プログラムを記憶する事ができる。 これらコンピュータ・プログラムはメイン・メモリ 306にロードされることによって実行される。また、これらコンピュータ・プログラムは圧縮し、また複数に分割して複数の媒体に記録することもできる。
I/Oコントローラ・ブリッジ 314にはまた、キーボード/マウス・コントローラ 324が接続され、キーボード 326やマウス 328のような入力デバイスからの入力を受ける。
I/Oコントローラ・ブリッジ 314にはこの他に、各種の外部入出力インターフェース330、332が接続される。
外部入出力インターフェース 332は、ネットワーク・アダプタであり、本発明に係るデータ・パケットを転送するIPネットワーク 340に接続され、転送すべきデータ・パケット(即ち、UDPパケット)を更にフラグメント・パケットに分割したり、分割されたフラグメント・パケットをIPネットワーク 340にバースト転送で送出する機能を持つ。
外部入出力インターフェース 330は、外部ソース信号入力アダプタであり、本発明に係る方法に従ってIPネットワーク 340に転送されるべきデータのソースとなるビデオ信号等を、送信装置 300の外部の装置(例えば、ビデオカメラ、ビデオ録画再生機等)から受信して、送信装置 300の内部で処理できるディジタル信号に変換する等の機能を持つ。
尚、大容量記憶装置に記憶され、その全体的な動作を司るオペレーティング・システム 322としては、マイクロソフト・コーポレーションが提供するWindows(登録商標)オペレーティング・システム、アップル・コンピュータ・インコーポレイテッドが提供するMacOS(商標)、X Window Systemを備えるUNIX(登録商標)系システムといった、GUI(Graphical User Interface)をサポートするオペレーティング・システムを採用することができる。 UNIX(登録商標)系システムには、例えば、インターナショナル・ビジネス・マシーンズ・コーポレーションが提供するAIX(商標)あるいはLinux(商標)等がある。
以上のように、本発明を実施するのに好適な送信装置 300は、サーバ・コンピュータやクライアント・コンピュータ等を構成するような一般的なPCアーキテクチャに基づいた装置によって実現することができる。ただし、図3に示した送信装置 300を構成する各コンポーネントは例示であり、その全てのコンポーネントが本発明の必須構成要素となるわけではない。
また、送信装置として本発明の実施をすることができる同等の機能を有するものであれば、必ずしも一般的なPCアーキテクチャに基づいたものでなくてもよく、専用のハードウェア装置で構成する等、種々の変更形態による実施が可能であることは勿論である。それらの変更は、当然に本発明の思想に包含される概念である。
以上のシステム環境の下で、本発明の実施形態について以下に説明する。
先ず、本発明の第1の実施形態について説明する。
図4は、本発明の第1の実施形態に基づいて、IPネットワークに接続された複数の送信装置からデータ・パケットのバースト転送が行なわれる概念を表す図である。また、図5は、各送信装置における本発明の第1の実施形態に係る処理手順の流れを示す図である。
各送信装置において転送すべきデータはまずUDPパケット単位に分けられ、各UDPパケットは更に、MTUサイズの複数のフラグメント・パケットに分割され、1つのUDPパケットに係る1群のフラグメント・パケットは、送信装置からバースト転送で連続して一度に送られる。各送信装置は、このバースト転送を、各UDPパケット分に相当する数の1群のフラグメント・パケット毎に繰り返し行なう。
図4は、IPネットワーク 400に接続された送信装置A 402と送信装置B 404の2台だけが、実際にデータ・パケットをバースト転送する装置として稼動していることを表している。本発明は、これら送信装置A 402と送信装置B 404のそれぞれにおいて実施可能である。即ち、たとえ物理的にIPネットワーク 400に接続されている他の送信装置がある場合でも、その送信装置が実際にデータ・パケットをバースト転送する装置として稼動していない場合は、その送信装置においては本発明を実施しない。
各送信装置を含む、IPネットワーク 400に接続された全ての装置には、そのネットワーク内で一意に定まるID(識別子とも呼ぶ)が割り振られる。 このIDとして典型的なものにIPアドレスがあるが、対象とするネットワーク内で一意に定まるIDであればどんな形態のIDでも適用可能である。以後の説明では、各IDは10進数の数字で表すものとする。図4の例では、送信装置A 402のIDは「1」、送信装置B 404のIDは「2」である。
IPネットワーク 400には、送信装置A 402または送信装置B 404の何れかから、データ・パケットの各バースト転送の開始タイミングを調整するための制御パケット 420がブロードキャスト送信される。即ち、制御パケット 420は、IPネットワーク 400に接続された何れの装置も受信できるブロードキャスト・アドレスを宛先アドレスとしてIPネットワーク 400に送出される。
図6は、IPネットワーク 400にブロードキャスト送信される制御パケット 420のフォーマットの例を示したものである。制御パケット 420は少なくとも第1フィールドと第2フィールドの2つの情報フィールドを備える。
第1フィールドには、IPネットワーク 400に接続されたいずれかの送信装置に割り振られた1つのIDが格納され、第2フィールドには、IPネットワーク 400に接続された1つまたは複数の送信装置のそれぞれに割り振られたIDからなるIDグループが格納される。
以下、図5に示した処理手順に従って、本発明の第1の実施形態に基づいて送信装置A 402および送信装置B 404のそれぞれがデータ・パケットのバースト転送を行なう動作について説明する。
送信装置Aにおいて、先ず、IPネットワーク 400にブロードキャスト送信される制御パケットが受信可能になるまで待ち(ステップS500)、受信可能になったら当該制御パケットを受信する(ステップS502)。
次に、受信した制御パケットについて、その第1フィールドをチェックして、第1フィールドが示す値が、送信装置A自身のID(即ち、「1」)であるかどうか判断する(ステップS504)。
この第1フィールドは、データ・パケットのバースト転送をこの次に行なわせたい送信装置を指し示すものとして意味付けられる。そうすると、第1フィールドが示す値が、送信装置A自身のIDでない場合は、送信装置Aは、受信した制御パケットによって、今回はデータ・パケットのバースト転送をすることができないと指示を受けたことになるので、そのまま何もしないで、更なる制御パケットが受信可能になるのを待つステップに戻る(ステップS500)。
逆に、第1フィールドが示す値が、送信装置A自身のIDである場合は、送信装置Aは、受信した制御パケットによって、今回はデータ・パケットのバースト転送をすることができるとの指示を受けたことになる。よって次に、送信装置Aにおいて実際にデータ・パケットの1回分のバースト転送が可能になるのを待つ(ステップS506)。バースト転送をする準備が整って、転送が可能になったら、実際にその1回分のバースト転送を行なう(ステップS508)。
1回分のバースト転送が完了したら、データ・パケットのバースト転送を次に行なわせたい送信装置を決めるために、受信した制御パケットの第2フィールドに格納されたIDグループの中から、送信装置AのIDの次に位置するIDを選択する。送信装置AのIDが当該IDグループの最後部に位置する場合は、ラウンドロビン的に最初に戻り、当該IDグループの最初に位置するIDを選択する(ステップS510)。IDの選択のしかたは、この他の方法を採ることもできる。このようにして選択されたIDに係る送信装置が、バースト転送を次に行なわせたい送信装置である。
なお、何らかの理由で場合によっては、送信装置Aにおいて、1回分のバースト転送がなかなか可能にならないことがある。このような場合に、いつまでもバースト転送が可能になるのを待っていたのでは、処理がこのステップで滞ってしまい、IPネットワーク 400に接続された送信装置全体のデータ転送効率を下げることになって好ましくない。よって、このような事態を避けるため、バースト転送が可能になるのを待ち始めてから所定の時間が経過しても依然バースト転送が可能になら無い場合には、タイムアウト処理としてバースト転送をスキップして、バースト転送を次に行なわせたい送信装置を選択するステップに進めるようにすることができる(ステップS530)。
前記選択をした後、送信装置Aは、自ら前記の制御パケットのフォーマットに則って作成した第1の新たな制御パケットをIPネットワーク 400にブロードキャスト送信する。この第1の新たな制御パケットの第1フィールドには、前記選択されたIDを格納し、第2フィールドには、前記受信した制御パケットの第2フィールドに示されたIDグループと同一の内容を格納する(ステップS512)。
この第1の新たな制御パケットをブロードキャスト送信した後、送信装置Aは、更なる制御パケットが受信可能になるのを待つステップに戻る(ステップS500)。
送信装置Bについても、これと全く同様の処理手順が実行される。
図7は、図4に示したデータ転送環境において、本発明の第1の実施形態に基づいて、送信装置Aおよび送信装置Bのそれぞれが図5に示した処理手順を実行した結果、各送信装置が連携して、それぞれのバースト転送がどのようなタイミングで行なわれるかを表したものである。
送信装置Aによる1回分のバースト転送 702が終了すると、第1フィールドに送信装置BのIDである「2」を示して新たな制御パケット 722がIPネットワークにブロードキャスト送信される。
この制御パケット 722は、ブロードキャスト・アドレスを宛先として送信されるので送信装置Aと送信装置Bの何れも受信することができる。送信装置Aは、受信した制御パケット 722の第1フィールドが、自己のIDである「1」でないため、何もせずにすぐに別の制御パケットの受信を待つステップに戻る。
しかし、送信装置Bのほうは、受信した制御パケット 722の第1フィールドが、自己のIDである「2」を示すため、データ・パケットのバースト転送をするための一連の処理を実行する。
送信装置Bによる1回分のバースト転送 712が終了すると、第2フィールドのIDグループ「1,2」の中から、ラウンドロビン的順序で、第1フィールドが示す「2」の次である「1」が選択され、この「1」を第1フィールドに示して新たな制御パケット 724がIPネットワークにブロードキャスト送信される。
今度は、この制御パケット 724を受信した送信装置Bは、その第1フィールドが、自己のIDである「2」でないため、何もせずにすぐに別の制御パケットの受信を待つステップに戻り、逆に、同じく制御パケット 724を受信した送信装置Aは、その第1フィールドが、自己のIDである「1」を示すため、データ・パケットのバースト転送をするための一連の処理を実行する。
送信装置Aによる1回分のバースト転送 704が終了すると、第2フィールドのIDグループ「1,2」の中から、ラウンドロビン的順序で、第1フィールドが示す「1」の次である「2」が選択され、この「2」を第1フィールドに示して新たな制御パケット 726がIPネットワークにブロードキャスト送信される。
以下、同様の動作が繰り返される。
これにより、送信装置Aからのバースト転送と送信装置Bからのバースト転送は互いに重複することなく行うことができる。
次に、本発明の第2の実施形態について説明する。
前記の第1の実施形態において、制御パケットを受信(ステップS502)してから、新たな制御パケットのブロードキャスト送信を開始するまでの間に、もし更なる制御パケットを受信していた場合は(ステップS522)、前記第1の新たな制御パケットをブロードキャスト送信することはせず、代わりに、この受信した更なる制御パケットの第2フィールドの内容を反映させた、第2の新たな制御パケットをブロードキャスト送信する。
即ち、この第2の新たな制御パケットの第1フィールドには、前記の選択されたIDを格納し、第2フィールドには、前記の受信した更なる制御パケットの第2フィールドに示されたIDグループと同一の内容を格納する(ステップS524)。
これは、受信した制御パケットについての一連の処理が完了しない間に、何れかの送信装置から別の制御パケットがブロードキャスト送信され、それを受信してしまう場合に対処した実施形態であり、後述の第3の実施形態を行なう上での前提となるものである。
次に、本発明の第3の実施形態について説明する。
図8は、本発明の第3の実施形態に基づいて、IPネットワークに接続された複数の送信装置からのデータ・パケットのバースト転送が行なわれる概念を表す図である。また、図9は、各送信装置における本発明の第3の実施形態に係る処理手順の流れを示す図である。
図8は、IPネットワーク 400に接続された送信装置A 402と送信装置B 412の2台だけが、実際にデータ・パケットをバースト転送する装置として稼動していたところへ、新たに送信装置C 802が受信装置C 812へデータ・パケットをバースト転送 820する装置として稼動を開始したことを表している。本発明の第3の実施形態は、このように新たに稼動を開始した送信装置C 802に対しても適用することができるものである。
図8において、送信装置C 812のIDは「3」であるものとする。
以下、図9に示した処理手順に従って、本発明の第3の実施形態に基づいて送信装置C 812における動作について説明する。
先ず、第1の実施形態の場合と同様に、IPネットワーク 400にブロードキャスト送信される制御パケットが受信可能になるまで待ち(ステップS500)、受信可能になったら当該制御パケットを受信する(ステップS502)。
次に、受信した制御パケットについて、その第1フィールドをチェックするより前に、第2フィールドをチェックして、第2フィールドが示すIDグループの中に、送信装置C自身のID(即ち、「3」)が含まれるかどうか判断する(ステップS902)。
この第2フィールドは、データ・パケットのバースト転送を行う送信装置として現在稼動しているものからなるグループを表すものとして意味付けられる。そうすると、第2フィールドが示すIDグループの中に、送信装置C自身のIDが含まれる場合は、制御パケットをブロードキャスト送信する他の送信装置から、送信装置Cもバースト転送を行う送信装置として現在稼動していると認識されていることを意味するので、その後の動作は、第1の実施形態の場合と同様になる。即ち、この場合は、次に第1フィールドをチェックして、第1フィールドが示す値が、送信装置C自身のIDであるかどうか判断する(ステップS504)。
逆に、第2フィールドが示すIDグループの中に、送信装置C自身のIDが含まれない場合は、送信装置Cは、データ・パケットをバースト転送する装置として稼動を開始したばかりであるため、他の送信装置から、送信装置Cがバースト転送を行う送信装置として稼動していると未だ認識されていないことを意味する。よってこの場合、今後ブロードキャスト送信する制御パケットにおける第2フィールドで示される、バースト転送を行う送信装置として稼動する送信装置のグループの情報を更新しなければならない。即ち、第2フィールドが示すIDグループに、送信装置C自身のIDを加えて、当該IDグループを更新する(ステップS904)。
次に送信装置Cは、この更新したIDグループに基づいて自ら作成した第3の新たな制御パケットをIPネットワーク 400にブロードキャスト送信する。この第3の新たな制御パケットの第1フィールドには、受信した制御パケットの第1フィールドに示されたIDと同一の内容を格納し、第2フィールドには、前記更新したIDグループを格納する(ステップS906)。
この第3の新たな制御パケットのブロードキャスト送信により、他の送信装置が当該制御パケットを受信したとき、その第2フィールドをチェックすることで、バースト転送を行う送信装置として稼動する送信装置のグループに送信装置Cも加わっていることを認識することができる。
この第3の新たな制御パケットをブロードキャスト送信した後、送信装置Cは、更なる制御パケットが受信可能になるのを待つステップに戻る(ステップS500)。
なお、バースト転送を行う送信装置として既に稼動している送信装置AおよびBについては、図9に示した処理手順が実行される場合、第2フィールドが示すIDグループの中に、自身の送信装置のIDが必ず含まれるので、その後の動作は、第1の実施形態の場合と同様になる。
図10は、図8に示した、バースト転送を行なう送信装置として送信装置Cが新たに稼動する状況下において、本発明の第3の実施形態に基づいて、送信装置A〜Cのそれぞれが図9に示した処理手順を実行した結果、各送信装置が連携して、それぞれのバースト転送がどのようなタイミングで行なわれるかを表したものである。
送信装置Aから、第1フィールドに送信装置BのIDである「2」を示して新たな制御パケット 1002がIPネットワークにブロードキャスト送信される。制御パケット 1002を受信した送信装置Bは、その第1フィールドが、自己のIDである「2」を示すため、データ・パケットのバースト転送をするための一連の処理を実行する。
一方、送信装置Bからのバースト転送 1052が行なわれている最中である時刻 1070に、送信装置Cが、バースト転送を行なう送信装置として稼動を開始する。
送信装置Bによる1回分のバースト転送 1052が終了すると、第1フィールドが示すIDを「1」に変更して新たな制御パケット 1004がIPネットワークにブロードキャスト送信される。
この制御パケット 1004は送信装置AおよびBによって受信されるが、同時に、新たに図9に示した動作手順の実行を開始した送信装置Cによっても受信される。
制御パケット 1004を受信した送信装置Cは、その第2フィールドに自身のIDである「3」が含まれていないと判断するので、第2フィールドに「3」を加えて更新し、新たな制御パケット 1006をIPネットワークにブロードキャスト送信する。
制御パケット 1004を受信した送信装置Aは、その第1フィールドが、自己のIDである「1」を示すため、データ・パケットのバースト転送をするための一連の処理を実行する。通常であれば、バースト転送を終了した後、第1フィールドが示すIDを「2」に変更して新たな制御パケットをブロードキャスト送信することになる。しかし今回は、新たな制御パケットのブロードキャスト送信を行なう前に、送信装置Cによってブロードキャスト送信された制御パケット 1006を、更なる制御パケットとして受信している。よって、当該第3の実施形態に包含される前記の第2の実施形態の処理手順(即ち、ステップS524)に従って、受信した制御パケット 1006の第2フィールドが示す内容に基づいて、第2フィールドに示すIDグループを「1、2、3」と更新して、新たな制御パケット 1008をIPネットワークにブロードキャスト送信する。
制御パケット 1008を受信した送信装置Bは、その第1フィールドが、自己のIDである「2」を示すため、データ・パケットのバースト転送をするための一連の処理を実行する。1回分のバースト転送 1056が終了すると、送信装置Cの稼動によって更新された第2フィールドのIDグループ「1、2、3」の中から、ラウンドロビン的順序で、第1フィールドが示す「2」の次である「3」が選択され、この「3」を第1フィールドに示して新たな制御パケット 1010がIPネットワークにブロードキャスト送信される。
制御パケット 1010は送信装置A〜Cの何れもが受信するが、送信装置Cのみが、その第1フィールドが自己のIDである「3」を示すため、データ・パケットのバースト転送をするための一連の処理を実行する。
以後は、当該第3の実施形態が包含する前記の第1の実施形態と同様の処理手順に従って、送信装置A==>>送信装置B==>>送信装置C==>>送信装置A==>>・・・・の順でサイクリックにバースト転送が繰り返され、これにより、送信装置A、B、Cからのそれぞれのバースト転送を互いに重複することなく行うことができる。
即ち、当初は、送信装置A==>>送信装置B==>>送信装置A==>>・・・・の順でバースト転送が繰り返されていたところ、本発明の第3の実施形態に従えば、途中から新たに稼動を開始した送信装置Cがこれに割り込む形でサイクリック・ループがスムーズに更新される。
以上、本発明の第3の実施形態は、1つの送信装置が、バースト転送を行なう送信装置として新たに稼動する場合について対処するものである。この第3の実施形態の拡張形態である第4の実施形態によって、これまでバースト転送を行なう送信装置として稼動していたある送信装置が、バースト転送の繰り返しを終了して稼動を停止する場合に対処することができる。
第1の実施形態または第3の実施形態においては、実施対象の送信装置は、受信した制御パケットの第1フィールドをチェックして、第1フィールドが示す値が、当該送信装置自身のIDであるか判断する(ステップS504)。
第4の実施形態では、この第1フィールドが示す値が、当該送信装置自身のIDであると判断した場合に、バースト転送が可能になるのを待つ処理を開始する前に、当該送信装置が既に、当該送信装置で予定されていた全てのバースト転送を終了しているかどうか判断する(ステップS912)。
この、全てのバースト転送を終了しているかどうかの判断は、例えば、当該送信装置が予め所定の回数分のバースト転送を行うようにプログラミングすることで容易に実施することができる。また、当該送信装置のユーザによるコマンドにより、あるいは外部装置からの入力により、データ・パケットのバースト転送を終了する旨の指示を与える(即ち、当該送信装置内のあるステータスまたはフラグの値が変わる)場合は、その指示を当該送信装置のプログラムが(正確には、そのプログラムによって実行させられるCPU等が)モニターすることで実施することができる。
当該送信装置が、全てのバースト転送を終了していると判断した場合は、データ・パケットのバースト転送を次に行なわせたい送信装置を決めるために、受信した制御パケットの第2フィールドが示すIDグループの中から、ラウンドロビン的順序で当該送信装置自身のIDの次に位置するIDを選択する。(ステップS914)。
当該送信装置が、全てのバースト転送を終了していると判断した場合は、その送信装置を、バースト転送をサイクリックに行わせるグループに加えておく必要性はなくなる。よって、受信した制御パケットの第2フィールドが示すIDグループから当該送信装置自身のIDを取り除いてIDグループを更新し、この更新したIDグループに基づいて自ら作成した第4の新たな制御パケットをIPネットワーク 400にブロードキャスト送信する。即ち、この第4の新たな制御パケットの第1フィールドには、前記選択されたIDを格納し、第2フィールドには、前記更新したIDグループを格納する(ステップS916)。
この第4の新たな制御パケットのブロードキャスト送信により、他の送信装置が当該制御パケットを受信したとき、その第2フィールドをチェックすることで、バースト転送を行う送信装置として稼動する送信装置のグループから送信装置Cが外れたことを認識することができる。
この第4の新たな制御パケットをブロードキャスト送信した後、当該送信装置における、本発明の第4の実施形態に係る処理手順は終了する。
最後に、本発明の第5の実施形態について説明する。
図11は、各送信装置における本発明の第5の実施形態に係る処理手順の流れを示す図である。
以上の第1ないし4の実施形態においては、制御パケットが定期的にブロードキャスト送信されている状況を仮定したものである。しかし、一番最初に1つの送信装置が、バースト転送を行なう送信装置として稼動を開始する場合は、それまでにこのIPネットワークに制御パケットをブロードキャスト送信するものがいない。よって、制御パケットを待ち始めてから所定の時間内に制御パケットを受信しない場合は、タイムアウト処理として、制御パケットを待つのをやめ、データ・パケットのバースト転送をするための一連の処理を実行する。即ち、当該送信装置からのバースト転送が可能になるのを待ち(ステップ1102)、バースト転送が可能になったら、実際にその1回分のバースト転送を行なう(ステップS1104)。
バースト転送が終了した後、当該送信装置は、自ら作成した第5の新たな制御パケットを、最初に送信する制御パケットとしてIPネットワーク 400にブロードキャスト送信する。当該送信装置のみが、IPネットワーク 400にバースト転送を行う装置として稼動しているので、この第5の新たな制御パケットの第1フィールドには、当該送信装置自身のIDを格納し、第2フィールドには、自身のIDのみからなるIDグループ(要素が1つだけのグループ)を格納する(ステップS1108)。
この第5の新たな制御パケットをブロードキャスト送信した後、当該送信装置は、更なる制御パケットが受信可能になるのを待つステップに戻る(ステップS500)。
ブロードキャスト送信されたこの第5の新たな制御パケットは、当該送信装置自身によって受信される。この場合、制御パケットの第1フィールドには自身のIDが示されているため、データ・パケットのバースト転送をするための一連の処理が実行される。
バースト転送が終了した後、第2フィールドが示すIDグループの中から1つのIDが選択される。しかし当該IDグループは自身のIDのみからなるものなので、結局再び、自身のIDが選択される(ステップS510)。よって、第1フィールドを自身のIDとし、第2フィールドを自身のIDのみからなるIDグループとして、再び新たな制御パケットがブロードキャスト送信される(ステップS512)。
このようにして、当該送信装置は、自分自身が送信する制御パケットに従って、バースト転送を繰り返すことができる。ここに、新たな送信装置が、バースト転送を行う装置として稼動を始めた場合は、前記第4の実施形態に基づいて、バースト転送をサイクリックに行うグループにこの新たな送信装置を割り込ませることができ、以後はこれら2つの送信装置間でバースト転送を交互に繰り返すことができる。
以上、本発明の第1ないし第5の実施形態に基づく処理手順について説明したが、これらの処理は、送信装置が備えるいくつかの機能ブロックの組み合わせによって実施することができる。よって、本発明の技術分野に係る当業者であれば、前記各処理手順を実行することができるいくつかの機能ブロックを備える装置(送信装置全体またはその一部)として本発明を捉えることができる。
図12は、本発明の実施をすることができる、複数の機能ブロックからなる装置の一例を示したものである。装置 1200は、図3の送信装置 300の一部と捉えることもできるし、送信装置 300の全体と考えることもできる。典型的には、装置 1200は、送信装置 300の中の外部入出力インターフェース 332を構成するネットワーク・アダプタ等の装置とすることができる。
装置 1200は、受信部 1202、第1判断部 1204、データ・パケット送信部 1206、選択部 1208、および制御パケット送信部 1210を少なくとも備えた装置として構成することができる。
受信部 1202は、IPネットワーク 400にブロードキャスト送信される制御パケットを待って、これを受信する機能を有する。前記のように、この制御パケットは、少なくとも第1フィールドと第2フィールドの2つの情報フィールドを備える。第1フィールドには、IPネットワーク 400に接続されたいずれかの送信装置に割り振られた1つのIDが格納され、第2フィールドには、IPネットワーク 400に接続された1つまたは複数の送信装置のそれぞれに割り振られたIDからなるIDグループが格納される。
第1判断部 1204は、受信部 1202により受信された制御パケット 1230における第1フィールドの内容 1220と、送信装置 300を示すID 1224とを比較して、第1フィールドに送信装置 300を示すIDが格納されているか判断する。
データ・パケット送信部 1206は、第1フィールドに送信装置 300を示すIDが格納されているとの判断 1240に応答して、送信装置 300から、対応する受信装置に向けてデータ・パケット 1234をバースト転送する。
選択部 1208は、データ・パケット送信部 1206において1回分のバースト転送が完了したこと 1242に応答して、受信部 1202により受信された制御パケット 1230における第2フィールドの内容 1222であるIDグループを参照して、そのグループの中から1つのIDを、ラウンドロビン等の所定の基準に従って選択する。
制御パケット送信部 1210は、第1フィールドおよび第2フィールドを少なくとも含む第1の新たな制御パケット 1232を生成し、IPネットワーク 400にブロードキャスト送信する。その第1フィールドには、選択部 1208が選択したID 1244を格納する。その第2フィールドには、受信部 1202が受信した制御パケットのうち最も直近に受信された制御パケットにおける第2フィールドの内容 1222であるIDグループを参照して、その同じIDグループを格納する。
装置 1200はまた、第2判断部 1212をさらに備えた装置として構成することもできる。
この第2判断部 1212は、受信部 1202により受信された制御パケット 1230における第2フィールドの内容 1220であるIDグループと、送信装置 300を示すIDとを比較して、第2フィールドに格納されたIDグループに送信装置 300を示すIDが含まれるか判断する。
この場合、第1判断部 1204は、第2判断部 1212が、第2フィールドに格納されたIDグループに送信装置 300を示すIDが含まれると判断した場合 1246にのみ、第1フィールドに送信装置 300を示すIDが格納されているか判断する。
また、制御パケット送信部 1210は、第2判断部 1212が、第2フィールドに格納されたIDグループに送信装置 300を示すIDが含まれないと判断した場合 1248は、前記の第1の新たな制御パケットはブロードキャスト送信せず、代わりに、第1フィールドおよび第2フィールドを少なくとも含む第2の新たな制御パケット 1232を生成し、IPネットワーク 400にブロードキャスト送信する。その第1フィールドには、受信部 1202が受信した制御パケット 1230の第1フィールドの内容 1220であるIDを参照して、その同じIDを格納し、その第2フィールドには、受信部 1202が受信した制御パケット 1230の第2フィールドの内容 1222であるIDグループに、送信装置 300のID 1224を加えて更新したIDグループを格納する。
さらにまた、本発明の第1ないし第5の実施形態に基づく処理手順は、図3の送信装置 300のハード・ディスク・ドライブ 318等に記憶されたアプリケーション・ソフトウェア324またはオペレーティング・システム322等のコンピュータ・プログラムが、送信装置 300に含まれるプロセッサ302等の各種コンポーネントに実行させることができる。即ち、本発明を、これらの処理手順を送信装置 300に実行させるようなコンピュータ・プログラムとして捉えることが可能である。
以上、本発明をいくつかの実施形態を用いて説明したが、本発明はさらに多くの異なる態様で実施することが可能であり、上記実施形態は特許請求の範囲にかかる発明を限定するものではない。 即ち、上記実施形態に多様な変更または改良を加えることが可能であることが当業者に明らかである。
またその様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
さらに、上記実施形態の中で説明されている特徴の組み合わせの全てが、発明の解決手段に必須とは限らないことにも留意されたい。
同一ネットワーク上で複数の送信装置から複数の転送ストリームが定期的にバースト転送される環境を示す。 図1のデータ転送環境において、各送信装置から転送されるデータのデータ・レートの変化を示す。 本発明を実施するのに好適な送信装置の詳細なハードウェア構成の典型的な例を示す。 本発明の第1および第2の実施形態に基づいて、IPネットワークに接続された複数の送信装置からのデータ・パケットのバースト転送が行なわれる概念を表す。 各送信装置における本発明の第1および第2の実施形態に係る処理手順の流れを示す。 IPネットワークにブロードキャスト送信される制御パケットのフォーマットの例を示す。 本発明の第1の実施形態に基づいて、各送信装置が連携して、それぞれのバースト転送がどのようなタイミングで行なわれるかを表す。 本発明の第3および第4の実施形態に基づいて、IPネットワークに接続された複数の送信装置からのデータ・パケットのバースト転送が行なわれる概念を表す。 各送信装置における本発明の第3および第4の実施形態に係る処理手順の流れを示す。 本発明の第3の実施形態に基づいて、各送信装置が連携して、それぞれのバースト転送がどのようなタイミングで行なわれるかを表す。 各送信装置における本発明の第5の実施形態に係る処理手順の流れを示す。 本発明の実施をすることができる、複数の機能ブロックからなる装置の一例を示す。

Claims (15)

  1. ネットワークに接続された複数の送信装置のうちの1つの送信装置が、対応する受信装置に対して、当該ネットワークを介して1群のデータ・パケットの送信を行なう方法であって、
    当該送信装置が、前記複数の送信装置のうちの1つから前記ネットワークにブロードキャスト送信される制御パケットであって、前記複数の送信装置の何れか1つを示す識別子を格納した第1フィールドと、前記複数の送信装置の全てまたは一部の送信装置に係る識別子グループを格納した第2フィールドとを含む制御パケットを待って、それを受信するステップと、
    当該送信装置が、前記制御パケットを受信したことに応答して、前記制御パケットにおける前記第1フィールドに当該送信装置を示す識別子が格納されているか判断し、
    (a) 格納されていないと判断する場合は、更なる制御パケットを対象として、前記受信するステップに戻り、
    (b) 格納されていると判断する場合は、当該送信装置からの1群のデータ・パケットの送信が可能になるのを待って、前記対応する受信装置に向けて当該1群のデータ・パケットを送信するステップを実行する、
    ステップと、
    当該送信装置が、前記1群のデータ・パケットの送信が完了したことに応答して、前記第2フィールドに格納された前記識別子グループの中から1つの識別子を所定の基準に従って選択するステップと、
    当該送信装置が、前記選択したことに応答して、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記選択された識別子を格納し、当該第2フィールドには前記識別子グループを格納した、第1の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップと、
    当該送信装置が、前記第1の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップと
    を有する方法。
  2. 当該送信装置が、前記受信するステップの後、前記ブロードキャスト送信するステップの開始までの間に、更なる制御パケットを受信した場合に、前記第1の新たな制御パケットをブロードキャスト送信せず、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記選択された識別子を格納し、当該第2フィールドには前記更なる制御パケットにおける第2フィールドに格納された識別子グループを格納した、第2の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップと、
    当該送信装置が、前記第2の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップと
    をさらに有する、請求項1に記載の方法。
  3. 当該送信装置が、前記制御パケットを受信したことに応答して、前記第1フィールドに当該送信装置を示す識別子が格納されているか判断する前に、前記第2フィールドに格納された識別子グループに当該送信装置を示す識別子が含まれるか判断し、
    (a) 含まれると判断する場合は、前記第1フィールドに当該送信装置を示す識別子が格納されているか判断する前記ステップを実行し、
    (b) 含まれないと判断する場合は、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記制御パケットにおける前記第1フィールドに格納された前記識別子を格納し、当該第2フィールドには前記識別子グループに当該送信装置の識別子を加えた更新識別子グループを格納した、第3の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップを実行する、
    ステップと、
    当該送信装置が、前記第3の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップと
    をさらに有する、請求項2に記載の方法。
  4. 1群のデータ・パケットを送信する前記ステップは、送信が可能になるのを待ち始めてから所定の時間内に送信が可能にならない場合に、前記選択するステップを実行する、
    請求項1または3に記載の方法。
  5. 受信した前記制御パケットにおける前記第1フィールドに当該送信装置を示す識別子が格納されていると判断する場合に、前記1群のデータ・パケットの送信が可能になるのを待つ前に、当該送信装置からいかなる1群のデータ・パケットをも以後送信しないかどうかを当該送信装置が判断し、
    (a) 以後送信すると判断する場合は、1群のデータ・パケットの送信が可能になるのを待って、当該送信装置に対応する受信装置に向けて当該1群のデータ・パケットを送信する前記ステップを実行し、
    (b) 以後送信しないと判断する場合は、前記第2フィールドに格納された前記識別子グループの中から1つの識別子を所定の基準に従って選択するステップを実行する、
    ステップと、
    当該送信装置が、前記選択したことに応答して、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記選択された識別子を格納し、当該第2フィールドには前記識別子グループから当該送信装置の識別子を除いた更新識別子グループを格納した、第4の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップと
    をさらに有する、請求項3に記載の方法。
  6. 前記受信するステップは、制御パケットを待ち始めてから所定の時間内に制御パケットを受信しない場合に、当該送信装置からの1群のデータ・パケットの送信が可能になるのを待って、前記対応する受信装置に向けて当該1群のデータ・パケットを送信するステップを含み、
    当該送信装置が、前記送信が完了したことに応答して、第1フィールドおよび第2フィールドを含み、当該第1フィールドには当該送信装置の識別子を格納し、当該第2フィールドには当該送信装置の識別子のみからなる識別子グループを格納した、第5の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップと、
    当該送信装置が、前記第5の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップと
    をさらに有する、請求項1または3に記載の方法。
  7. 1つの送信装置を所定の基準に従って選択する前記ステップは、
    当該送信装置に係る識別子が前記識別子グループの最後部に位置しない場合は、前記識別子グループの中で次に位置する識別子を選択し、
    当該送信装置に係る識別子が前記識別子グループの最後部に位置する場合は、前記識別子グループの最初に位置する識別子を選択する、
    請求項1または3に記載の方法。
  8. 前記識別子のそれぞれは、前記ネットワークにおいて前記複数の送信装置の間で一意に割り当てられる、請求項1または3に記載の方法。
  9. 前記ネットワークはIPネットワークであり、
    前記1群のデータ・パケットの送信は、当該1群のデータ・パケットのバースト転送を含み、
    前記識別子は、前記IPネットワークに接続された各送信装置に割り当てられたIPアドレスを含む、
    請求項8に記載の方法。
  10. ネットワークに接続された複数の送信装置のうちの第1送信装置が、当該ネットワークにおいてデータ・パケットを送信する方法であって、
    前記複数の送信装置のうちの第2送信装置が送信した制御パケットを受信するステップと、
    受信した前記制御パケットが、前記第1送信装置にデータ・パケットの送信を認めることを示しているか判断し、
    (a) 示していると判断したことに応答して、データ・パケットを送信し、
    (b) 示していないと判断したことに応答して、更なる制御パケットを受信する、
    ステップと、
    前記データ・パケットの送信が完了したことを条件に、前記複数の送信装置から所定の規則で選択した1つの送信装置を、次にデータ・パケットの送信を認める送信装置として示した、新たな制御パケットを送信するステップと
    を有する方法。
  11. ネットワークに接続された複数の送信装置のうちの1つであり、対応する受信装置に対して当該ネットワークを介して1群のデータ・パケットの送信を行なう送信装置であって、
    前記ネットワークにブロードキャスト送信される制御パケットであって、前記複数の送信装置の何れか1つを示す識別子を格納した第1フィールドと、前記複数の送信装置の全てまたは一部の送信装置に係る識別子グループを格納した第2フィールドとを含む制御パケットを待って、それを受信する、受信部と、
    前記受信部により受信された前記制御パケットにおける前記第1フィールドと、当該送信装置を示す識別子とを比較して、前記第1フィールドに当該送信装置を示す識別子が格納されているか判断する、第1判断部と、
    前記第1フィールドに当該送信装置を示す識別子が格納されているとの判断に応答して、当該送信装置から、前記対応する受信装置に向けて1群のデータ・パケットを送信する、データ・パケット送信部と、
    前記1群のデータ・パケットの送信が完了したことに応答して、前記制御パケットにおける前記第2フィールドに格納された前記識別子グループの中から1つの識別子を所定の基準に従って選択する、選択部と、
    第1フィールドおよび第2フィールドを含み、当該第1フィールドには、前記選択部により選択された識別子を格納し、当該第2フィールドには、前記受信部により最も直近に受信された制御パケットにおける第2フィールドに格納された識別子グループを格納した、第1の新たな制御パケットを、前記ネットワークにブロードキャスト送信する、制御パケット送信部と
    を備える送信装置。
  12. 前記受信部により受信された前記制御パケットにおける前記第2フィールドと、当該送信装置を示す識別子とを比較して、前記第2フィールドに格納された前記識別子グループに当該送信装置を示す識別子が含まれるか判断する、第2判断部をさらに備え、
    前記第1判断部は、前記第2判断部が、前記第2フィールドに格納された前記識別子グループに当該送信装置を示す識別子が含まれると判断した場合にのみ、前記第1フィールドに当該送信装置を示す識別子が格納されているか判断し、
    前記制御パケット送信部は、前記第2判断部が、前記第2フィールドに格納された前記識別子グループに当該送信装置を示す識別子が含まれないと判断した場合は、前記第1の新たな制御パケットをブロードキャスト送信せず、第1フィールドおよび第2フィールドを含み、当該第1フィールドには、前記受信部により受信された前記制御パケットにおける前記第1フィールドに格納された前記識別子を格納し、当該第2フィールドには、前記受信部により受信された前記制御パケットにおける前記第2フィールドに格納された前記識別子グループに当該送信装置の識別子を加えた更新識別子グループを格納した、第2の新たな制御パケットを、前記ネットワークにブロードキャスト送信する、
    請求項11に記載の送信装置。
  13. ネットワークに接続された複数の送信装置のうちの1つの送信装置が、対応する受信装置に対して、当該ネットワークを介して1群のデータ・パケットの送信を行なうための、当該送信装置に記憶されたプログラムであって、
    前記複数の送信装置のうちの1つから前記ネットワークにブロードキャスト送信される制御パケットであって、前記複数の送信装置の何れか1つを示す識別子を格納した第1フィールドと、前記複数の送信装置の全てまたは一部の送信装置に係る識別子グループを格納した第2フィールドとを含む、制御パケットを待って、それを受信するステップと、
    前記制御パケットを受信したことに応答して、前記制御パケットにおける前記第1フィールドに当該送信装置を示す識別子が格納されているか判断し、
    (a) 格納されていないと判断する場合は、更なる制御パケットを対象として、前記受信するステップに戻り、
    (b) 格納されていると判断する場合は、当該送信装置からの1群のデータ・パケットの送信が可能になるのを待って、前記対応する受信装置に向けて当該1群のデータ・パケットを送信するステップを実行する、
    ステップと、
    前記1群のデータ・パケットの送信が完了したことに応答して、前記制御パケットにおける前記第2フィールドに格納された前記識別子グループの中から1つの識別子を所定の基準に従って選択するステップと、
    前記選択したことに応答して、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記選択された識別子を格納し、当該第2フィールドには前記識別子グループを格納した、第1の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップと、
    前記第1の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップと
    を当該送信装置に実行させるためのプログラム。
  14. 前記受信するステップの後、前記ブロードキャスト送信するステップの開始までの間に、更なる制御パケットを受信した場合に、前記第1の新たな制御パケットをブロードキャスト送信せず、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記選択された識別子を格納し、当該第2フィールドには前記更なる制御パケットにおける第2フィールドに格納された識別子グループを格納した、第2の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップと、
    前記第2の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップと
    を当該送信装置にさらに実行させるための、請求項13に記載のプログラム。
  15. 前記制御パケットを受信したことに応答して、前記第1フィールドに当該送信装置を示す識別子が格納されているか判断する前に、前記第2フィールドに格納された識別子グループに当該送信装置を示す識別子が含まれるか判断し、
    (a) 含まれると判断する場合は、前記第1フィールドに当該送信装置を示す識別子が格納されているか判断する前記ステップを実行し、
    (b) 含まれないと判断する場合は、第1フィールドおよび第2フィールドを含み、当該第1フィールドには前記制御パケットにおける前記第1フィールドに格納された前記識別子を格納し、当該第2フィールドには前記識別子グループに当該送信装置の識別子を加えた更新識別子グループを格納した、第3の新たな制御パケットを、前記ネットワークにブロードキャスト送信するステップを実行する、
    ステップと、
    前記第3の新たな制御パケットのブロードキャスト送信が完了した後、前記受信するステップに戻るステップと
    を当該送信装置にさらに実行させるための、請求項14に記載のプログラム。
JP2007235237A 2007-09-11 2007-09-11 データの転送方法、装置、プログラム Expired - Fee Related JP4988487B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2007235237A JP4988487B2 (ja) 2007-09-11 2007-09-11 データの転送方法、装置、プログラム
US12/198,339 US7876773B2 (en) 2007-09-11 2008-08-26 Method, apparatus and program for transferring data
CN2008102151693A CN101388846B (zh) 2007-09-11 2008-09-10 用于传输数据的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007235237A JP4988487B2 (ja) 2007-09-11 2007-09-11 データの転送方法、装置、プログラム

Publications (2)

Publication Number Publication Date
JP2009071411A true JP2009071411A (ja) 2009-04-02
JP4988487B2 JP4988487B2 (ja) 2012-08-01

Family

ID=40431758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007235237A Expired - Fee Related JP4988487B2 (ja) 2007-09-11 2007-09-11 データの転送方法、装置、プログラム

Country Status (3)

Country Link
US (1) US7876773B2 (ja)
JP (1) JP4988487B2 (ja)
CN (1) CN101388846B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105743556B (zh) 2009-11-24 2019-03-22 韩国电子通信研究院 用于在无线通信系统中接收数据的方法和装置
CN102771059B (zh) 2009-11-24 2016-07-06 韩国电子通信研究院 用于在基于多用户的无线通信系统中传送帧的方法
US8861495B2 (en) 2009-11-24 2014-10-14 Electronics And Telecommunications Research Institute Method for protecting data in a MU-MIMO based wireless communication system
CN103023669B (zh) * 2012-12-28 2015-04-15 中国航空工业集团公司第六三一研究所 基于交换网络的一种广播调度方法
US20140307562A1 (en) * 2013-04-11 2014-10-16 IPLight Ltd. Packet loss counter
US10812601B2 (en) * 2017-03-07 2020-10-20 Flash Networks Ltd. Method and system for signaling and radio connection optimization over a cellular network
US10447765B2 (en) * 2017-07-13 2019-10-15 International Business Machines Corporation Shared memory device
US20190036772A1 (en) * 2017-12-28 2019-01-31 Intel Corporation Intelligent wireless configuration for iot devices

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0250541A (ja) * 1988-08-11 1990-02-20 Omron Tateisi Electron Co バス型lan
JPH06120955A (ja) * 1992-10-01 1994-04-28 Matsushita Electric Works Ltd トークンバスにおけるメディアアクセス制御方式
JPH11284650A (ja) * 1998-03-31 1999-10-15 Mitsubishi Electric Corp ネットワーク通信方式
JP2001075904A (ja) * 1999-09-03 2001-03-23 Hitachi Ltd 通信装置及び通信システム
JP2003087258A (ja) * 2001-09-12 2003-03-20 Fuji Electric Co Ltd ノード離脱管理方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI94700C (fi) * 1994-01-21 1995-10-10 Nokia Telecommunications Oy Matkaviestinjärjestelmän verkkoelementti ja menetelmä pakettimuotoista datasiirtoa varten matkaviestinjärjestelmässä
US5680397A (en) * 1995-03-13 1997-10-21 International Business Machines Corporation Multi-port LAN switch for a token-ring network
US6028837A (en) * 1996-08-27 2000-02-22 National Semiconductor Corporation Ether ring architecture for local area networks
US6987764B2 (en) * 2001-11-05 2006-01-17 Qualcomm, Incorporated Method and apparatus for selecting a packet data serving node for multi-cast/broadcast services
JP4219835B2 (ja) 2004-03-16 2009-02-04 富士通株式会社 データ生成装置及びデータ送出方法
US20090098898A1 (en) * 2007-09-24 2009-04-16 Patterson Wade C Systems and methods for communicating panic messages in wireless communication networks

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0250541A (ja) * 1988-08-11 1990-02-20 Omron Tateisi Electron Co バス型lan
JPH06120955A (ja) * 1992-10-01 1994-04-28 Matsushita Electric Works Ltd トークンバスにおけるメディアアクセス制御方式
JPH11284650A (ja) * 1998-03-31 1999-10-15 Mitsubishi Electric Corp ネットワーク通信方式
JP2001075904A (ja) * 1999-09-03 2001-03-23 Hitachi Ltd 通信装置及び通信システム
JP2003087258A (ja) * 2001-09-12 2003-03-20 Fuji Electric Co Ltd ノード離脱管理方法

Also Published As

Publication number Publication date
CN101388846A (zh) 2009-03-18
JP4988487B2 (ja) 2012-08-01
US20090067438A1 (en) 2009-03-12
US7876773B2 (en) 2011-01-25
CN101388846B (zh) 2011-05-11

Similar Documents

Publication Publication Date Title
JP4988487B2 (ja) データの転送方法、装置、プログラム
US8898311B2 (en) Data communication method and information processing device
WO2019033857A1 (zh) 报文控制方法及网络装置
US6108713A (en) Media access control architectures and network management systems
US6085248A (en) Media access control transmitter and parallel network management system
US8170023B2 (en) System and method for a software-based TCP/IP offload engine for implementing efficient digital media streaming over internet protocol networks
US20060203730A1 (en) Method and system for reducing end station latency in response to network congestion
US20080291937A1 (en) Transmission control protocol queue sorting
WO2018113373A1 (zh) 一种数据传输方法及装置
US20150271231A1 (en) Transport accelerator implementing enhanced signaling
CN106105141A (zh) 实现扩展传输控制功能的传输加速器
JP2005142965A (ja) 通信装置、通信方法、通信プログラム、および通信プログラムを記録した記録媒体
US8862768B2 (en) Method and system for packetizing data for servicing traffic end-to-end
JP2009515489A (ja) 無線ネットワークにおいてシステム情報メッセージを断片化する方法および装置
JP2024109848A (ja) クライアント、サーバ、受信方法及び送信方法
US8838782B2 (en) Network protocol processing system and network protocol processing method
WO2024098815A1 (zh) 一种数据传输处理方法、装置、存储介质及电子装置
WO2009093473A1 (ja) 中継装置、端末、優先通信制御方法、プログラム及び記録媒体
US11245546B2 (en) Methods and systems for transmitting and receiving data packets through a bonded connection
US10893234B2 (en) System and method of dynamic playback variation for multimedia communication
JP6129526B2 (ja) 通信装置、通信方法およびプログラム
JP5592301B2 (ja) クライアント装置、通信システム、生存確認方法、及びプログラム
JP2011019150A (ja) 通信装置および通信装置における回線速度切り替え方法
JP5047099B2 (ja) データ通信システム、データ通信方法およびデータ通信システムを構成する情報処理装置
US9743037B2 (en) Method for transmitting device indicator data in network-based AV system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120223

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120410

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120426

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees