JP4246743B2 - マルチキャストパケット処理装置及びその方法 - Google Patents

マルチキャストパケット処理装置及びその方法 Download PDF

Info

Publication number
JP4246743B2
JP4246743B2 JP2006018985A JP2006018985A JP4246743B2 JP 4246743 B2 JP4246743 B2 JP 4246743B2 JP 2006018985 A JP2006018985 A JP 2006018985A JP 2006018985 A JP2006018985 A JP 2006018985A JP 4246743 B2 JP4246743 B2 JP 4246743B2
Authority
JP
Japan
Prior art keywords
packet
multicast
unit
tunnel
qos
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.)
Expired - Fee Related
Application number
JP2006018985A
Other languages
English (en)
Other versions
JP2006217596A (ja
Inventor
ボン−チョル、キム
ヨン−セク、パク
秉 昌 姜
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2006217596A publication Critical patent/JP2006217596A/ja
Application granted granted Critical
Publication of JP4246743B2 publication Critical patent/JP4246743B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61GTRANSPORT, PERSONAL CONVEYANCES, OR ACCOMMODATION SPECIALLY ADAPTED FOR PATIENTS OR DISABLED PERSONS; OPERATING TABLES OR CHAIRS; CHAIRS FOR DENTISTRY; FUNERAL DEVICES
    • A61G7/00Beds specially adapted for nursing; Devices for lifting patients or disabled persons
    • A61G7/002Beds specially adapted for nursing; Devices for lifting patients or disabled persons having adjustable mattress frame
    • A61G7/015Beds specially adapted for nursing; Devices for lifting patients or disabled persons having adjustable mattress frame divided into different adjustable sections, e.g. for Gatch position
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/20Support for services
    • H04L49/201Multicast operation; Broadcast operation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61GTRANSPORT, PERSONAL CONVEYANCES, OR ACCOMMODATION SPECIALLY ADAPTED FOR PATIENTS OR DISABLED PERSONS; OPERATING TABLES OR CHAIRS; CHAIRS FOR DENTISTRY; FUNERAL DEVICES
    • A61G7/00Beds specially adapted for nursing; Devices for lifting patients or disabled persons
    • A61G7/02Beds specially adapted for nursing; Devices for lifting patients or disabled persons with toilet conveniences, or specially adapted for use with toilets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Nursing (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、マルチキャストパケット処理に関し、より詳細には、通信装置においてマルチキャストフォワーディング機能とパケット複製機能とを二元化することによって、処理過程を単純化することができると共に、処理速度を向上させることのできるマルチキャストパケット処理装置及びその方法に関する。
送信者及び受信者を伴うインターネットの伝送方式は、伝送ユニキャスト(unicast)、マルチキャスト(multicast)、及びブロードキャスト(broadcast)に分類することができる。
ユニキャスト伝送方式は、単一の送信者が別の単一の受信者に対してデータを伝送する方式であって、一般的なインターネットアプリケーションプログラムは、全てユニキャスト伝送方式を用いている。
ブロードキャスト伝送方式は、単一の送信者が、同じサブネットワーク上の全ての受信者に対してデータを伝送する方式である。一方、マルチキャスト伝送方式は、単一の送信者が少なくとも1以上の受信者に対してデータを伝送する方式であり、インターネット画像会議などに使用されている。グループ通信のために多数の受信者に対して同じデータを伝送しようとする場合、ユニキャスト伝送方式では伝送しようとするデータパケットを個々の受信者に対して多数回の伝送を行わなくてはならないし、同じパケットの重複伝送により、ネットワーク効率が低下する。そして受信者数が増加するに伴って、このような問題はより一層大きくなる。
そしてマルチキャスト伝送方式を支援する場合、送信者が多数の受信者に一度にメッセージを伝送するためには、伝送するデータを複製する過程が必要である。
即ち、データの重複伝送によりネットワーク資源を浪費する傾向にある。
ネットワークにおいてルーティングを行うルータ装置(単に、「ルータ」と呼ぶ)は、データプレーン(Data Plane)、制御プレーン(Control Plane)及び管理プレーン(Management Plane)に分類される。これらの各機能は、ネットワークプロセッサー及びホストプロセッサーに搭載されて動作する。
前記ネットワークプロセッサーで動作するデータプレーンは、パケットフォワーディング機能及び単純フォワーディングよりも複雑な処理を要求するパケットを、ホストプロセッサーに伝送する機能を担当する。
ホストプロセッサーで動作する制御プレーン及び管理プレーンは、ルーティングプロトコルメッセージプロセシングによるルーティングテーブルの構成及び、運営者による管理機能を担当する。
ネットワークプロセッサーにおける従来のマルチキャストパケット処理過程を説明すると、一般的に、受信されたマルチキャストパケットのソースアドレス及びグループアドレスを用いてマルチキャストフォワーディングテーブルのルックアップ過程によって得られた出力インタフェースOIF(Output Interface)の個数の分だけ、新しいパケットディスクリプタとこれに対応する1つのパケットバッファを、全てのOIFリストが共有する。そのため、パケットのペイロードを例外的に変更させて処理するには、その処理過程が非常に複雑である。また、トンネリングのためにパケット送信部においてIPv4ヘッダー情報をパケットにカプセル化/脱カプセル化するには、追加的な処理過程が必要となり、パケット送信部の性能に対して大きな影響を及ぼす。QoSやトンネルのような例外的な処理を実行するためには、プロセスパイプライン上の他の機能に影響を与えるため、一般的なフォワーディングの実行における種々の問題点の原因となり得る。
本発明は、前述のような問題点を解決するためになされたものであり、その目的は、マルチキャストパケット処理装置の内部処理をフォワーディング部及びパケット複製部に二元化することによって、フォワーディング及びパケット送信部の処理時間の遅延を最小化することのできるマルチキャストパケットフォワーディング装置及びその方法を提供することにある。
前記目的を達成するために、本発明の一態様に係るマルチキャストパケット処理装置は、ルータのマルチキャストパケット処理装置において、ユニキャストパケットまたはマルチキャストパケットを受信するパケット受信部と、前記パケット受信部に受信されたパケットがユニキャストパケットである場合には、パケットを最終目的地にフォワーディングするユニキャストフォワーダーと、受信されたパケットがマルチキャストパケットである場合には、パケットを各出力インタフェースにマルチキャスティングするマルチキャストフォワーダーと、を備えたフォワーディング部と、前記マルチキャストフォワーダーから出力されるマルチキャストパケットを必要な数だけ複製してユニキャストパケット化するパケット複製部と、前記パケット複製部によりユニキャスト化したパケットを前記フォワーディング部に再進入させるパケット分配部と、前記フォワーディング部を介して出力されるパケット及び複製されたパケットをスケジューリング政策(ポリシー)に応じたポートスケジューリングを行ってデキュー(de-queuing)するスケジューラと、を含み、前記フォワーディング部は、前記パケット受信部から受信されたオリジナルマルチキャストパケットのQoS(Quality of Service)支援可否、すなわちQoSのイネーブル/ディセイブルによってイングレス(Ingress)QoS機能を実行するか否かを決定することを特徴とする。
また、本発明の他の態様に係るマルチキャストパケット処理方法は、ルータを提供する段階と、受信されたパケットの種類がユニキャストパケットであるか、又はマルチキャストパケットであるかを判断する段階と、前記受信されたパケットがユニキャストパケットである場合には、前記受信されたパケットを該当目的地に送信する段階と、前記受信パケットがマルチキャストパケットである場合、前記受信されたパケットを多数のユニキャストパケットに変換する段階と、前記ユニキャストパケットに変換する段階において、ユニキャストパケット化したパケットを前記ルータに再進入させる段階と、を含むことを特徴とする。
また、本発明のさらに他の態様に係るマルチキャストパケット処理方法は、ルータを提供する段階と、受信されたパケットの種類がユニキャストパケットであるか、又はマルチキャストパケットであるかを判断する段階と、前記受信されたパケットがマルチキャストパケットである場合には、前記受信されたパケットを多数のユニキャストパケットに変換する段階と、前記ユニキャストパケットに変換する段階において、ユニキャストパケット化したパケットを前記ルータに再伝送する段階と、を含み、マルチキャストQoS(Quality of Service)及び、設定トンネリングの処理のために、フォワーディング部にパケットを再進入させることによって、フォワーディング部内の処理部を再使用する段階と、パケット複製部で新しいディスクリプタを生成したり、フォワーディング部への再進入させる際、常にパケットの処理順序を出力インタフェースリストの順序に従うようにする段階と、をさらに含むことを特徴とする。
本発明によれば、マルチキャスト処理時、既存のパケット送信部が行ったパケットの重複伝送方式を、マルチキャストフォワーダー及びマルチキャストパケット複製部にその機能を分散配置させることによって、マルチキャストパケットに対する例外処理によって発生したフォワーディング部及びパケット送信部におけるプロセシングパイプラインの中断や遮断(Blocking)現象を無くし、遅延(Delay)及び遅延ばらつき(Jitter)を最小化することによって、全般的なマルチキャストフォワーディング性能を向上させることができる。
また、複製マルチキャストパケットを出力インタフェース(OIF)の数だけ生成してユニキャストパケット化し、OIFリストの順序を維持しながらフォワーディング部に再進入させることによって、各出力ポートのマルチキャストQoSや設定トンネルを一層効果的に支援することができる。
以下、本発明の属する分野における通常の知識を有する者が、本発明を容易に実施可能なように、添付図面を参照しながら本発明に係る好適な実施形態について詳細に説明する。
図1は、本発明の第1実施形態に係るマルチキャストパケット伝送装置を示す構成図であり、IPv6マルチキャストパケットについて重点的に説明するための図である。
なお、図1中に記載した◎は、キュー(queue)を意味する。キューは、一般的に行われている手法で動作するので、ここではその詳しい説明を省略する。
図1に示すように、ルータ装置内のパケットフォワーディングの機能を担当するネットワークプロセッサー100は、パケットを受信するパケット受信部110と、受信したパケットの種類に応じてユニキャストフォワーダー(122,127)及びマルチキャストフォワーダー(128)に該当パケットを伝送するフォワーディング部120と、前記フォワーディング部120を介して出力されるパケットを格納するために各出力ポート毎に設けられたキューにて、スケジューリング政策(ポリシー)に応じたポートスケジューリングを行うことによってパケットをデキューするスケジューラ130と、前記フォワーディング部120のマルチキャストフォワーダーから出力されるパケットを複製し、複製されたパケットをフォワーディング部120に再進入させるために、フォワーディング部120がパケットを受信するためのキューに分配伝送するパケット複製/パケット分配部140と、スケジューラ130によりデキューされたパケットのルーティング情報をマルチキャストレイヤ2テーブル160を参照して獲得し、獲得した情報に含まれる目的地アドレスに対してパケットを送信するパケット送信部150と、を含む。なお、本実施形態では、パケット複製/パケット分配部140を一つの構成で示しているが、パケット複製部及びパケット分配部を別個の構成とすることもできる。
前記フォワーディング部120は、パケット受信部110及びパケット複製/パケット分配部140からのパケットを、それぞれのキューを介して受信することができ、このとき、キュー間におけるデキューの手法には、一般的にラウンドロビン方式が使用される。各キューにて管理されるエンキューされたパケットの有無(存在)に応じて、エンプティ(empty)キューに対してはそのラウンドをスキップさせ(飛び超え)、エンプティでないキューからパケットをデキューする。
前記フォワーディング部120は、パケット受信部110及びパケット複製/パケット分配部140からのパケットを受信し、受信ポートのQoS支援の可否、すなわちQoSイネーブル/ディセイブル(Enable/Disable)フラグ(flag)の設定に従い、パケットのQoSがイネーブルであれば(つまりフラグが有効状態に設定されていれば)イングレスQoS121によりイングレス処理を行い、反対にディセイブルであれば(つまりフラグが無効状態に設定されていれば)イングレスQoS121をバイパス(bypass)させる。そして、パケットの種類(ユニキャストまたはマルチキャスト)に基づいて、そのパケットの伝送先を設定する。すなわち、IPv6パケットであって、且つユニキャストパケットである場合には、IPv6ユニキャストフォワーダー127に伝送し、IPv6パケットであって、且つマルチキャストパケットである場合には、IPv6マルチキャストフォワーダー128に伝送し、IPv4パケットであって、且つユニキャストパケットである場合には、IPv4ユニキャストフォワーダー122に伝送する。
一方、IPv6−IPv4−IPv6形態で構成された網において、IPv4を介在させて2つのIPv6装置間での通信を支援するためには、トンネリングの手法が必要である。従って、各網間におけるトンネリング設定のために運営者がトンネリングパラメータ値を設定するための設定トンネル(configured tunnel)機能を提供する。このとき、設定したトンネルの始端側に位置する場合には、トンネル情報テーブル125を参照してIPv6パケットにIPv4ヘッダーを付加するカプセル化をカプセル化部124にて行う。また、設定したトンネルの終端側に位置する場合には、トンネルを通過したパケットのIPv4ヘッダーを除去する脱カプセル化を脱カプセル化部123にて行うことにより、IPv6パケットに復元する。
入力されたパケットがIPv6ユニキャストパケットである場合には、IPv6ユニキャストフォワーダー127は、ルックアップテーブル(図示せず)を参照して設定トンネルなのか否かを判断し、設定トンネルである場合には、カプセル化部124に伝送してIPv4ヘッダーのカプセル化を行う。
一方、マルチキャストパケットである場合には、MFCE(Multicast Forwarding Cache Entry)テーブル129のマルチキャスト出力インタフェース(OIF:Output Interface)の中の一部が設定トンネルに設定されていれば、IPv6マルチキャストフォワーダー128は、設定トンネルに設定されたOIFのエントリーに該当するパケットをカプセル化124に伝送して、IPv4ヘッダーのカプセル化を行うようにする。
そして、パケットの処理が完了し、スケジューラ130に対してパケットを伝送する前に、該当パケットのQoSフラグがイネーブルならばイーグレスQoS126によりイーグレス処理を実行し、該当パケットのQoSフラグがディセイブルであればイーグレス(Egress)QoS126をバイパスさせる。
以下、前述の構成によるパケットの処理動作を説明する。
まず、パケット受信部110に受信されたオリジナルマルチキャストパケットに対して、受信ポートのQoS支援可否、すなわちパケットのQoSフラグがイネーブルであるか又はディセイブルであるかにより、イングレス(Ingress)QoS121によるイングレスQoS処理が実行される。
このとき、IPv6マルチキャストQoSを支援するためには、ソースアドレス、グループアドレスなどの情報がQoS等級規則によって登録されていなければならない。
一方、パケットは、IPヘッダーの検証(Validation)を実行する過程の重複を防止し、PIM(Protocol Independent Multicast)レジスタ(register)パケットの処理のために、IPv6ユニキャストフォワーダー127を経由される。
一般的に、PIMレジスタパケットは、カプセル化されてラングデビュポイントに送るメッセージである。このとき、PIMタイプは、“1”に設定され、PIMヘッダー以後のデータ領域にオリジナルマルチキャストパケットを載せてラングデビュポイントに伝送される。
本発明では、PIMレジスタパケットがユニキャストパケットであるから、IPv6ユニキャストフォワーダー127がまずレジスタパケットであることを判断し、そしてマルチキャストに関連したパケットであるので、IPv6マルチキャストに伝送して、後続の処理が行われるようにする。
したがって、IPv6ユニキャストフォワーダー127では、PIMレジスタパケット、又はIPv6マルチキャストパケットであると判断すると、パケットをIPv6マルチキャストフォワーダー128に伝送する。
以下、マルチキャストフォワーダーが行う機能を説明する。
第1に、PIM(Protocol Independent Multicast)レジスタパケットに対して脱カプセル化(Decapsulation)を行う機能を有する。
第2に、ソースアドレス及びグループアドレスを用いてMFT(Multicast Forwarding Table)のルックアップ(Lookup)を行う機能を有する。
第3に、MFCE(Multicast Forwarding Cache Entry)に格納された入力インタフェース(Incoming Interface)の情報に基づいてRPF(Reverse Path Forwarding)の妥当性検証(Validation)を行う機能を有する。
以上の過程が正常的に行われると、出力インタフェース(OIF)及び例外(Exception)を確認し、パケットの複製が必要だと判断される場合(例えば、例外パケットとOIFの数の合計が2以上である場合)にのみ、出力インタフェースリストをパケット複製/パケット分配部140に伝送する。
例外パケットとOIFの数の合計が2以上である場合にパケットを複製する理由は、次の通りである。
ルータがソース専用ルータとして動作する場合、PIMレジスタパケットをカプセル化する過程及びマルチキャストフォワーディングする過程を共に行わなければならない場合がたびたび発生するが、この場合、PIMレジスタカプセル化は、上位アプリケーションで行われるので、例外パケットとして処理して、上位階層にフォワーディングし、他の出力インタフェースのみに対して一般的なフォワーディング過程を行ってもよいからである。
一方、パケットの複製が不要な場合(例外パケットとOIF個数の合計が1である場合)には、パケット複製/パケット分配部140を経由せずに、QoSフラグの状態(イネーブル又はディセイブル)及び出力ポートの種類に応じてトンネル処理部またはイーグレスQoS126にパケット情報を伝送し、次の過程が行われるようにする。
マルチキャストパケット複製/パケット分配部140は、IPv6マルチキャストフォワーダー128から受信されたOIFリスト情報に基づいて複数のOIFの個数だけ新しいチャイルドパケットディスクリプタ(Child Packet Descriptor)を生成し、パケット受信部110から受信されたオリジナルマルチキャストパケットの情報を含んでいるペアラントパケットディスクリプタ(Parent Packet Descriptor)からパケットサイズ、オフセット(offset)などのパケット情報を複製する。
そして、ペアラントパケットディスクリプタは、複製されたチャイルドパケットディスクリプタの個数を管理するためのレファレンスカウント(Reference Count)を維持し、レファレンスカウントは、パケット複製/パケット分配部140によりOIFの個数に初期に設定される。
ペアラントパケットディスクリプタは、元々受信されたオリジナルマルチキャストパケットの格納場所とサイズ情報、そして複製されたパケットの全体数をレファレンスカウントというフィールドに格納する。
その他、各チャイルドパケットディスクリプタは、OIFリスト内の各々の出力ポートに該当する出力ポート情報とQoSイネーブル/ディセイブルフラグの状態、インタフェース種類に基づいて決定される次の処理過程情報を格納する。すなわち、一般的なOIFの場合、マルチキャストレイヤ2テーブル160のインデックス情報を格納し、OIFが設定トンネルに設定された場合に、脱カプセル化すべきIPv4ヘッダー情報が格納されているトンネル情報テーブル125のインデックスを格納し、複製されたマルチキャストパケットであることを表示するために、別のフラグを設定し、後続の過程を効果的に行うことができるようにする。
前記チャイルドパケットディスクリプタは、パケットが1つ複製される毎に、ペアラントパケットディスクリプタからオリジナルマルチキャストパケットの格納場所とサイズ情報、そしてペアラントパケットディスクリプタのポインタなどを複製して格納する。
そして、複製されたパケットが伝送される毎に、チャイルドパケットディスクリプタをフリー(free)にし、ペアラントパケットディスクリプタのレファレンスカウントを1ずつ減少させる。仮に、ペアラントパケットディスクリプタのレファレンスカウントが「0」になれば(複製された全てのパケットが伝送されることを意味する)、ペアラントパケットディスクリプタもまたフリー(free)となり、再使用が可能となる。
一方、パケット複製/パケット分配部140は、チャイルドパケットディスクリプタを1つ生成する毎に、ペアラントパケットディスクリプタ内に存在するパケット情報のみを複製し、実際(actual)パケットバッファに格納されたペイロード自体の複製作業は行わない。その代わりに、チャイルドパケットディスクリプタは、ペアラントディスクリプタ(Parent Descriptor)のポインタを維持することによって、ペアラントパケットバッファ(Parent Packet Buffer)内に格納されたパケット情報及びペイロード部分に対するアクセスを行うことができる。
また、チャイルドパケットディスクリプタは、1:1で対応するチャイルドパケットバッファ(Child Packet Buffer)を有しており、ここには、設定トンネルである場合に、脱カプセル化すべきIPv4ヘッダーが別途に格納される。
これは、複数のOIFにより共有されるペアラントパケットバッファ(Parent Packet Buffer)の情報の変化を無くすためである。
また、前記パケット複製/パケット分配部140は、各OIFに該当するQoSイネーブル/ディセイブルフラグの状態及びインタフェース種類に基づき、複製されたマルチキャストパケットを再進入させるべきか、あるいは直ちに送信すべきかを判断する。
QoSがイネーブルまたはインタフェース種類が設定トンネルである場合にのみ、フォワーディング部120にパケットを再進入させてトンネル情報を脱カプセル化するか、イーグレスQoS機能を行うようにする。
QoSがディセイブル状態であって、且つインタフェースの種類が一般的なインタフェースである場合、フォワーディング部120において追加的な処理を行う過程が不要なので、この場合にはスケジューラ130にパケットを伝送し、伝送されたパケットは、スケジューリングに従う順序によりパケット送信部150に伝送される。
特に、パケット複製/パケット分配部140では、遅延のバラツキを最小化し、パケットの分配処理を保障するために、常にMFCEテーブル129上のOIFリストの順序を維持しながら、新しいディスクリプタを生成し、フォワーディング部120に再進入させる。
パケット複製/パケット分配部140から再拒絶(Re-injected)され、ユニキャスト化されたマルチキャストパケットは、パケット複製/パケット分配部140にて設定されたパケットディスクリプタタイプ(Packet Descriptor Type)のフィールドを確認し、イングレス処理過程を行うことなく、IPv6マルチキャストフォワーダー128に伝送される。
IPv6マルチキャストフォワーダー128は、受信されたパケットがパケット複製/パケット分配部140から受信された複製パケットであることを別途に設定されたフラグから認識することができ、これより、次のようなイーグレス処理過程を行う準備をする。
仮に、出力ポートが設定トンネルインタフェースである場合は、設定トンネルカプセル化部124に伝送され、これを受信した設定トンネルカプセル化124は、パケット複製/パケット分配部140によりチャイルドディスクリプタ(Child Descriptor)に格納されたトンネルテーブル識別子を用いて別途のルックアップ(Lookup)過程を行うことなく、IPv4カプセル化を行う。その後、イーグレスQoS126のイネーブル/ディセイブル可否に応じて、ユニキャストパケット(Unicast Packet)と同様の方式でイーグレスQoS126を介してスケジューラ130によりスケジューリングされた順序に従ってパケット送信部150に伝送される。
出力ポートが設定トンネルでない場合には、IPv6マルチキャストフォワーダー128によりQoSイネーブル/ディセイブル可否が決定され、ユニキャストパケットと同様の方式でイーグレスQoS126による処理を経てパケット送信部150に伝送される。
パケット送信部150は、複製されたマルチキャストパケットを送信した後、チャイルドパケットディスクリプタをフリー(Free)して再使用することができるようにする。このとき、常にペアラントパケットディスクリプタに格納されたレファレンスカウントを1ずつ減少させる。そしてペアラントパケットディスクリプタのレファレンスカウント値が0になった時点で、すなわち伝送されずに残っているチャイルドパケットディスクリプタがなくなったときに、ペアラントパケットディスクリプタもフリー(Free)される。
図2は、本発明の第2実施形態に係るマルチキャストパケット伝送装置を示す構成図である。また、図2は、パケットの種類がIPv4マルチキャストパケットである場合の処理過程を含む構成を説明するための図である。
図2は、図1の全ての過程と同様であるが、IPv4パケットの場合に、IPv4マルチキャストフォワーダー128に伝送して処理する過程が異なる。したがって、全体動作が図1と同様なので、重複する動作説明を省略する。
図3は、本実施形態を具現するためのマルチキャストパケットルックアップテーブルを示す図である。
図3を参照すると、各MFCEが初期構成されるとき、OIFリスト情報に基づいて各出力ポートのMTU情報、インタフェース種類(設定トンネルインタフェースまたはノーマルインタフェース)情報、イーグレスQoSのイネーブル/ディセイブル情報及び、送信時に脱カプセル化されるべきL2ヘッダー情報を予め構成し、マルチキャスト用L2テーブル識別子(ID)を格納することによって、マルチキャストパケット処理のために他の別途の資料構造をアクセスするオーバーヘッドを低減する。
該当出力ポートが設定トンネルである場合にも、既に設定されたトンネリング情報を予め把握し、脱カプセル化されるべきIPv4ヘッダー情報が格納されたトンネルテーブルIDをMFCE内に格納することによって、以後にパケット複製部から再進入された複製マルチキャストパケットに対するカプセル化を行う際に別途のルックアップ過程を経由せずに、設定トンネルカプセル化部により速かにIPv4ヘッダーのカプセル化過程を行うことができる。
また、パケット複製部により複製されて、既にユニキャストパケット化したマルチキャストパケットに対して、IPv6マルチキャストQoS機能を支援するために、特別に既存のユニキャストQoSを修正することなく、利用可能である。
すなわち、IPv6マルチキャストパケットのためのパケット分類エントリー(entry)の追加の分だけでマルチキャストQoS支援が可能である。
以上において説明した本発明は、本発明が属する技術の分野における通常の知識を有する者であれば、本発明の技術的思想を逸脱しない範囲内で、様々な置換、変形及び変更が可能であるので、上述した実施形態及び添付図面の記載に限定されるものではない。
本発明の第1実施形態に係るマルチキャストパケット伝送装置を示す構成図である。 本発明の第2実施形態に係るマルチキャストパケット伝送装置を示す構成図である。 本発明の実施形態に従うマルチキャストパケットルックアップテーブルを示す図である。
符号の説明
100 ネットワークプロセッサー
110 パケット受信部
120 フォワーディング部
121 イングレス(Ingress) QoS
122 IPv4ユニキャストフォワーダー
123 設定トンネル脱カプセル化
124 設定トンネルカプセル化
125 トンネル情報テーブル
126 イーグレス(Egress) QoS
127 IPv6ユニキャストフォワーダー
128 IPv6マルチキャストフォワーダー
129 MFCE(Multicast Forwarding Cache Entry)テーブル
130 スケジューラ
140 パケット複製/パケット分配部
150 パケット送信部
160 マルチキャストレイヤ2(第2階層)テーブル

Claims (22)

  1. ルータのマルチキャストパケット処理装置において、
    ユニキャストパケットまたはマルチキャストパケットを受信するパケット受信部と、
    前記パケット受信部に受信されたパケットがユニキャストパケットである場合には、パケットを最終目的地にフォワーディングするユニキャストフォワーダーと、受信されたパケットがマルチキャストパケットである場合には、パケットを各出力インタフェースにマルチキャスティングするマルチキャストフォワーダーと、を備えたフォワーディング部と、
    前記マルチキャストフォワーダーから出力されるマルチキャストパケットを必要な数だけ複製してユニキャストパケット化するパケット複製部と、
    前記パケット複製部によりユニキャスト化したパケットを前記フォワーディング部に再進入させるパケット分配部と、
    前記フォワーディング部を介して出力されるパケット及び複製されたパケットをスケジューリング政策(ポリシー)に応じたポートスケジューリングを行ってデキュー(de-queuing)するスケジューラと、を含み、
    前記フォワーディング部は、前記パケット受信部から受信されたオリジナルマルチキャストパケットのQoS(Quality of Service)支援可否、すなわちQoSのイネーブル/ディセイブルによってイングレス(Ingress)QoS機能を実行するか否かを決定することを特徴とするマルチキャストパケット処理装置。
  2. 前記フォワーディング部は、IPv4網を通過させるためにIPv4ヘッダーのカプセル化が必要なパケットに対して、設定トンネル(configured tunnel)カプセル化の機能を支援することを特徴とする請求項1に記載のマルチキャストパケット処理装置。
  3. 設定トンネルの始端では、トンネル情報テーブルを参照してIPv6パケットにIPv4ヘッダーを付加するカプセル化を行うことを特徴とする請求項に記載のマルチキャストパケット処理装置。
  4. 設定トンネルの終端では、トンネルを通過したパケットのIPv4ヘッダーを除去する脱カプセル化を行い、IPv6パケットに復元することを特徴とする請求項に記載のマルチキャストパケット処理装置。
  5. 入力されるパケットがIPv6ユニキャストパケットである場合には、IPv6ユニキャストフォワーダーがルックアップテーブルを参照して設定トンネルなのか否かを判断し、設定トンネルであると判断されれば、設定トンネルカプセル化の機能を行って、IPv4ヘッダーのカプセル化が行われることを特徴とする請求項に記載のマルチキャストパケット処理装置。
  6. 入力されるパケットがマルチキャストパケットである場合には、MFCE(Multicast Forwarding Cache Entry)テーブルのマルチキャスト出力インタフェースの中に設定トンネルが設定されているものがあれば、IPv6マルチキャストフォワーダーが設定トンネルに設定された出力インタフェース(OIF:Output Interface)エントリーに該当するパケットを設定トンネルカプセル化部に伝送してIPv4ヘッダーのカプセル化を行うことを特徴とする請求項に記載のマルチキャストパケット処理装置。
  7. 前記パケット複製部は、前記フォワーディング部から出力された出力インタフェースリスト情報に基づいてパケットを何回複製すべきかを決定することを特徴とする請求項1に記載のマルチキャストパケット処理装置。
  8. 前記パケット複製部は、パケットの複製が不要な場合(例外(Exception)パケットと出力インタフェースの数の合計が1である場合)、パケット複製部を経由せずに、QoS(Quality of Service)イネーブル/ディセイブルフラグ及び出力ポートの種類に応じて設定トンネルカプセル化部またはイーグレス(Egress)QoSに対してパケット情報を伝送することを特徴とする請求項に記載のマルチキャストパケット処理装置。
  9. 前記パケット複製部は、前記フォワーディング部から伝送された出力インタフェースリスト情報に基づいて複数の出力インタフェースの数だけ新しいチャイルドパケットディスクリプタ(Child Packet Descriptor)を生成し、前記パケット受信部から受信されたオリジナルマルチキャストパケットの情報を含んでいるペアラントパケットディスクリプタ(Parent Packet Descriptor)からパケットサイズ及びオフセット(offset)情報を含むパケット情報を複製することを特徴とする請求項に記載のマルチキャストパケット処理装置。
  10. 前記ペアラントパケットディスクリプタは、複製されたチャイルドパケットディスクリプタの数を管理するために、レファレンスカウントを維持し、該レファレンスカウントは、パケット複製部によって出力インタフェースの数に初期設定されることを特徴とする請求項に記載のマルチキャストパケット処理装置。
  11. 前記パケット複製部は、出力インタフェースリスト内の各々の出力ポートに該当する出力ポート情報、QoS(Quality of Service)イネーブル/ディセイブルフラグ、及び各チャイルドパケットディスクリプタのインタフェース種類により決定される処理過程情報を格納することを特徴とする請求項10に記載のマルチキャストパケット処理装置。
  12. 前記パケット複製部は、チャイルドパケットディスクリプタを1つ生成する毎に、ペアラントパケットディスクリプタ内に存在するパケット情報だけを複製し、実際(actual)パケットバッファに配列されたペイロード自体の複製は行わないことを特徴とする請求項に記載のマルチキャストパケット処理装置。
  13. 前記パケット複製部は、各出力インタフェースに対応するQoS(Quality of Service)イネーブル/ディセイブルフラグ及びインタフェース種類に基づいて、複製されたマルチキャストパケットをフォワーディング部に再伝送させるか、又は、パケット送信部を介して直ちに送信すべきかを判断することを特徴とする請求項12に記載のマルチキャストパケット処理装置。
  14. 前記パケット複製部は、QoS(Quality of Service)イネーブル/ディセイブルフラグがイネーブルであるか、あるいはインタフェースの種類が設定トンネルである場合にのみ、マルチキャストパケットをフォワーディング部に再進入させて、該当パケットにトンネル情報をカプセル化又はイーグレスQoSの機能を実行することを特徴とする請求項13に記載のマルチキャストパケット処理装置。
  15. ルータを提供する段階と、
    受信されたパケットの種類がユニキャストパケットであるか、又はマルチキャストパケットであるかを判断する段階と、
    前記受信されたパケットがマルチキャストパケットである場合には、前記受信されたパケットを多数のユニキャストパケットに変換する段階と、
    前記ユニキャストパケットに変換する段階において、ユニキャストパケット化したパケットを前記ルータに再伝送する段階と、を含み、
    マルチキャストQoS(Quality of Service)及び、設定トンネリングの処理のために、フォワーディング部にパケットを再進入させることによって、フォワーディング部内の処理部を再使用する段階と、
    パケット複製部で新しいディスクリプタを生成したり、フォワーディング部への再進入させる際、常にパケットの処理順序を出力インタフェースリストの順序に従うようにする段階と、をさらに含むことを特徴とするマルチキャストパケット処理方法。
  16. 新しいパケットディスクリプタレジスタに、必要なオリジナルパケットディスクリプタアドレスを格納する段階と、
    オリジナルパケットディスクリプタに出力インタフェースリストの数を格納する段階と、
    出力ポートのインタフェース種類及び、QoS(Quality of Service)イネーブル/ディセイブル情報を用いて次の過程を行う処理部を決定する段階と、をさらに含むことを特徴とする請求項15に記載のマルチキャストパケット処理方法。
  17. パケット複製部から受信された再拒絶(Re-Injected)されたマルチキャストパケットに対して、パケットディスクリプタの種類に従い、別途のイングレス処理過程無しにマルチキャストフォワーダーを経てイーグレス処理を行う段階をさらに含むことを特徴とする請求項15に記載のマルチキャストパケット処理方法。
  18. 出力ポートが設定トンネルである場合には、再拒絶されたマルチキャストパケットを受信したマルチキャストフォワーダーが、パケットをトンネルカプセル化部に伝送し、パケットディスクリプタに格納されたトンネルテーブル識別子を用いて特別なルックアップ過程を行わずに、複製のパケットディスクリプタに対応するパケットバッファに格納することによって、出力インタフェースリスト間に共有されるオリジナルパケットペイロード部分の変更を削除する段階をさらに含むことを特徴とする請求項15に記載のマルチキャストパケット処理方法。
  19. パケット送信部の出力ポートが設定トンネルである場合、マルチキャストレイヤ2ヘッダー情報と、写本のパケットバッファ(duplicated packet buffer)に格納されたトンネルヘッダー情報と、オリジナルパケットバッファに格納されたペイロード部分を再組立する過程を経てパケットを伝送する段階を含むことを特徴とする請求項15に記載のマルチキャストパケット処理方法。
  20. パケット送信部は、複製パケットディスクリプタがフリー(Free)となる毎に、レファレンスカウント(Reference Count)を1ずつ減少させ、0になった時点でオリジナルパケットディスクリプタをフリー(Free)とする段階を含むことを特徴とする請求項15に記載のマルチキャストパケット処理方法。
  21. 出力ポート別のMTU(Maximum Transmission Unit)、インタフェース種類、QoS(Quality of Service)イネーブル/ディセイブル情報、マルチキャストレイヤ2テーブル識別子及びトンネルテーブル識別子を予め格納し、別途の資料構造をアクセスしなくても、次の処理段階を決定できるようにしたことを特徴とする請求項15に記載のマルチキャストパケット処理方法。
  22. 入力されるパケットがIPv6ユニキャストパケットである場合には、IPv6ユニキャストフォワーダーがルックアップテーブルを参照して設定トンネルであるか否かを判断し、設定トンネルであると判断すれば、設定トンネルカプセル化を行うことを特徴とする請求項21に記載のマルチキャストパケット処理方法。
JP2006018985A 2005-01-31 2006-01-27 マルチキャストパケット処理装置及びその方法 Expired - Fee Related JP4246743B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20050008783A KR100582732B1 (ko) 2005-01-31 2005-01-31 멀티캐스트 패킷 포워딩 장치 및 그 방법

Publications (2)

Publication Number Publication Date
JP2006217596A JP2006217596A (ja) 2006-08-17
JP4246743B2 true JP4246743B2 (ja) 2009-04-02

Family

ID=36756488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006018985A Expired - Fee Related JP4246743B2 (ja) 2005-01-31 2006-01-27 マルチキャストパケット処理装置及びその方法

Country Status (3)

Country Link
US (1) US7643507B2 (ja)
JP (1) JP4246743B2 (ja)
KR (1) KR100582732B1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8194660B2 (en) * 2004-09-09 2012-06-05 Amx Llc System, method, and computer-readable medium for dynamic device discovery for servers binding to multiple masters
WO2007066814A1 (ja) * 2005-12-09 2007-06-14 Nec Corporation フレーム処理方法及びフレーム処理装置
KR101301188B1 (ko) 2007-01-02 2013-08-29 삼성전자주식회사 모바일 IPv6 네트워크 시스템 및 그 시스템의 패킷포워딩 방법
WO2008100909A2 (en) * 2007-02-12 2008-08-21 Iskoot, Inc. Methods and systems for performing authentication and authorization in a user-device environment
GB2448347A (en) * 2007-04-12 2008-10-15 Xancom Ltd Converting Multicast packets into Unicast packets within a network device.
US8144579B2 (en) * 2007-06-29 2012-03-27 Intel Corporation Wireless performance improvement via client-free forward error correction
US7822051B1 (en) * 2007-10-24 2010-10-26 Ethernity Networks Ltd. Method and system for transmitting packets
WO2009086529A1 (en) * 2007-12-29 2009-07-09 Brigitte Bernadette Birze System, method, and computer-readable medium for dynamic device discovery for servers binding to multiple masters
US8165122B2 (en) * 2009-05-26 2012-04-24 Alcatel Lucent System and method for converting unicast client requests into multicast client requests
JP5069332B2 (ja) * 2010-04-30 2012-11-07 株式会社バッファロー 通信装置、通信システム、変換方法、及びそのプログラム
US10002033B2 (en) * 2012-02-07 2018-06-19 Microsoft Technology Licensing, Llc Efficiently receiving messages across a large number of messaging entities
US9408044B2 (en) * 2012-04-30 2016-08-02 Aruba Networks, Inc. Video multicast optimization
EP2741452A1 (en) * 2012-12-10 2014-06-11 Robert Bosch Gmbh Method for data transmission among ECUs and/or measuring devices
US9419895B2 (en) * 2013-02-25 2016-08-16 Brocade Communications Systems, Inc. Techniques for customizing forwarding decisions via a hardware lookup result
CN103475588A (zh) * 2013-09-10 2013-12-25 神州数码网络(北京)有限公司 Oam报文的发送处理方法和装置、接收处理方法和装置
WO2016122562A1 (en) * 2015-01-30 2016-08-04 Hewlett Packard Enterprise Development Lp Replicating network communications
CN107800549B (zh) * 2016-08-30 2020-01-03 新华三技术有限公司 基于交换设备的端口实现多租户设备环境mdc的方法和装置
KR102435428B1 (ko) 2017-09-27 2022-08-24 삼성전자주식회사 무선 통신 시스템에서 패킷을 전송하기 위한 방법 및 장치

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2610859B2 (ja) 1987-03-03 1997-05-14 富士通株式会社 自己ルーチング交換機
JPH0234060A (ja) 1988-07-25 1990-02-05 Fujitsu Ltd 非同期転送モード交換分配接続方式
US5477541A (en) * 1989-09-29 1995-12-19 White; Richard E. Addressing technique for storing and referencing packet data
JPH03186036A (ja) 1989-12-15 1991-08-14 Mitsubishi Electric Corp 同報通信方式
US5268900A (en) * 1991-07-05 1993-12-07 Codex Corporation Device and method for implementing queueing disciplines at high speeds
JPH05199257A (ja) 1992-01-21 1993-08-06 Matsushita Electric Ind Co Ltd セルスイッチ
US5402415A (en) * 1993-04-22 1995-03-28 Washington University Multicast virtual circuit switch using cell recycling
JPH07143137A (ja) 1993-11-17 1995-06-02 Toshiba Corp 交換システム
US5633865A (en) * 1995-03-31 1997-05-27 Netvantage Apparatus for selectively transferring data packets between local area networks
JP3067085B2 (ja) 1995-05-29 2000-07-17 日本電信電話株式会社 Atmスイッチ
US5636210A (en) * 1995-08-02 1997-06-03 Agrawal; Jagannath P. Asynchronous transfer mode packet switch
US5909438A (en) 1996-09-18 1999-06-01 Cascade Communications Corp. Logical multicast from a switch configured for spatial multicast
JP2000115178A (ja) 1998-10-01 2000-04-21 Mitsubishi Electric Corp セル同報装置
JP2000183908A (ja) 1998-12-17 2000-06-30 Oki Electric Ind Co Ltd マルチキャスト装置
US6788681B1 (en) * 1999-03-16 2004-09-07 Nortel Networks Limited Virtual private networks and methods for their operation
US6775280B1 (en) * 1999-04-29 2004-08-10 Cisco Technology, Inc. Methods and apparatus for routing packets using policy and network efficiency information
JP3250546B2 (ja) 1999-06-07 2002-01-28 日本電気株式会社 パケット交換装置及びそれに用いるマルチキャスト制御方法並びにその制御プログラムを記録した記録媒体
ES2288905T3 (es) * 2000-07-27 2008-02-01 Roke Manor Research Limited Mejoras en o relativas a dispositivos de conmutacion.
JP3739260B2 (ja) * 2000-08-24 2006-01-25 株式会社日立製作所 情報配信システムおよびゲートウェイ装置
JP2002077168A (ja) 2000-08-31 2002-03-15 Mitsubishi Electric Corp Atmスイッチ
JP2002111716A (ja) 2000-10-04 2002-04-12 Nec Corp パケットスイッチ及びそれに用いるマルチキャスト制御方式
WO2002069575A1 (en) * 2001-02-28 2002-09-06 Gotham Networks, Inc. Methods and apparatus for network routing device
US20040006641A1 (en) * 2002-07-02 2004-01-08 Nischal Abrol Use of multi-format encapsulated internet protocol messages in a wireless telephony network

Also Published As

Publication number Publication date
KR100582732B1 (ko) 2006-05-22
JP2006217596A (ja) 2006-08-17
US7643507B2 (en) 2010-01-05
US20060171407A1 (en) 2006-08-03

Similar Documents

Publication Publication Date Title
JP4246743B2 (ja) マルチキャストパケット処理装置及びその方法
JP4898781B2 (ja) オペレーティング・システム・パーティションのためのネットワーク通信
Duros et al. A link-layer tunneling mechanism for unidirectional links
US9319347B1 (en) Deadlock-resistant fabric tree replication in a network device
JP5760083B2 (ja) プライマリマルチキャストツリーからスタンバイマルチキャストツリーに高速に切り換えるための方法および装置
US20070183415A1 (en) Method and system for internal data loop back in a high data rate switch
CN110505147B (zh) 分组片段转发方法和网络设备
WO2019134383A1 (zh) 控制网络拥塞的方法、接入设备和计算机可读存储介质
WO2006081454A2 (en) Layered multicast and fair bandwidth allocation and packet prioritization
US8855118B2 (en) Source discovery for non-flooding multicast using openflow
US11777846B2 (en) Ultra reliable segment routing
JP6627964B2 (ja) Sdnベースのarp実装方法および装置
CN112134776B (zh) 生成组播转发表项的方法和接入网关
WO2022117018A1 (zh) 报文传输的方法和装置
WO2012146139A1 (zh) 一种报文的过滤方法和接入设备
CN101867518A (zh) 二层交换设备用报文转发处理方法、处理装置和设备
JP2011114391A (ja) パケット処理装置及びネットワークシステム
JP4011528B2 (ja) ネットワーク仮想化システム
US20050141502A1 (en) Method and apparatus to provide multicast support on a network device
JP2006087014A (ja) レイヤ2スイッチ
JP2010278585A (ja) サーバ装置、伝送システム及びそれらに用いるgreカプセル化転送方法
Rosen Linux Kernel Networking
US20240305494A1 (en) Efficient programming of multicast routes in forwarding hardware
WO2022242775A1 (zh) 一种报文处理的方法、系统和网络设备
JP2008067149A (ja) ネットワークインターフェース装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080303

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080527

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080826

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: 20081216

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: 20090108

R150 Certificate of patent or registration of utility model

Ref document number: 4246743

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120116

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees