JP3696166B2 - Node device and packet transfer method - Google Patents

Node device and packet transfer method Download PDF

Info

Publication number
JP3696166B2
JP3696166B2 JP2002064717A JP2002064717A JP3696166B2 JP 3696166 B2 JP3696166 B2 JP 3696166B2 JP 2002064717 A JP2002064717 A JP 2002064717A JP 2002064717 A JP2002064717 A JP 2002064717A JP 3696166 B2 JP3696166 B2 JP 3696166B2
Authority
JP
Japan
Prior art keywords
packet
node
virtual connection
received
transfer
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
JP2002064717A
Other languages
Japanese (ja)
Other versions
JP2002314605A (en
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2002064717A priority Critical patent/JP3696166B2/en
Publication of JP2002314605A publication Critical patent/JP2002314605A/en
Application granted granted Critical
Publication of JP3696166B2 publication Critical patent/JP3696166B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、仮想コネクション型ネットワークを接続するルータ装置、ルータ装置を介して異なる論理ネットワークにマルチキャストパケットを転送する方法に関する。
【0002】
【従来の技術】
ルータ装置は、論理ネットワークを接続する際に用いられるもので、一方の論理ネットワークから他方の論理ネットワークにパケットを転送する役割を果たす。パケットには、転送すべき通信情報データに加えて、その送信元および最終宛先のネットワーク層アドレスが記載されており、ルータ装置では、そのアドレス情報を用いて、パケットの出力インターフェイスおよび次の転送ノードを決定している。
【0003】
このルータ装置は、1つの発信元から1つの最終宛先にパケットを転送するユニキャスト通信のみでなく、1つの発信元から多数の最終宛先にパケットを送信するマルチキャスト通信も行うことができる。
【0004】
さて、近年、音声や画像をパケットを用いて転送する試みが行われている。現状では、音声画像のデータと他のデータがルータで同様に送られるため、音声がとぎれとぎれになったり、映像が乱れたりしている。そこで、ルータで資源予約を行い、音声画像の転送を優先的に行うことで、聞きやすい音声と見やすい画像になる。ここでは、音声画像を例に取ったが、優先的に流したいデータの場合は、資源予約することにより、メリットがある。
【0005】
このようにルータ装置で資源予約をするためには、ルータ装置間で資源予約の情報をやり取りする必要があり、そのプロトコルとして、RSVP(Resource ReSerVation Protocol)が開発されている。このプロトコルは、ユニキャストとマルチキャストの両方に対応している。
【0006】
RSVPでは、データを受信している下流側のノードから情報の発信元である上流ノードへ資源予約を行う。具体的には、情報の発信元からデータの宛先と同じ宛先に向かってPATHメッセージを送出し、情報がどの経路を通っているかを経路上のルータに記憶させる。PATHメッセージには、資源予約すべきデータのフローを特定する識別子と、PATHメッセージを送出するノードのIPアドレスが書かれている。
【0007】
データの受信ノードは、PATHメッセージを受信すると、PATHメッセージを送信した上流ノードにRESVメッセージを送出することで、資源予約の意思を表示する。RESVメッセージには、資源予約すべきデータのフローを特定する識別子と、受信ノードが要求するQOS(サービス品質)が書かれている。
【0008】
このRESVメッセージを受信したルータは、資源予約するだけの能力がネットワークレイヤ(IP)処理部にある場合は、ネットワークレイヤのスケジューリングを行って、RESVを上流に転送する。資源予約が出来ない場合は、RESV Errorを下流のノードに送信する。これを繰り返すことにより、上流ノードまで資源予約が出来る。
【0009】
論理ネットワークを構成するLAN(Local Area Network)が仮想コネクション型ネットワークにより実現され、ある受信ノードの要求に基づいてマルチキャスト通信で資源予約する時は、1つのマルチキャストアドレスに対して資源予約した1つのポイントマルチポイントコネクションと、資源予約していないベストエフォート用のポイントマルチポイントコネクションを作ることにより、LAN内での資源予約を実現している。
【0010】
例えば、送信ノードSから受信ノードH1,H2,H3,H4へ宛先アドレスGのマルチキャストパケットを送信する場合で、H1,H2がQOSを要求していて、H3,H4がQOSを要求していない場合は、SからH1,H2への宛先アドレスG用のポイント−マルチポイントVCと、SからH3,H4への宛先アドレスG用のポイント−マルチポイントVCとを設定する。
【0011】
【発明が解決しようとする課題】
本発明の第1及び第2の発明は、通常のルータと同じパケット単位で転送する動作を行う他に、ルータ内部にスイッチ機能を持つものに関する。これは、ネットワークレイヤでのパケット転送のみでなく、スイッチ機能を用いて入力仮想コネクションと出力仮想コネクションとの直結を行うことにより、ネットワークレイヤより下位のレイヤで転送を行うことができるルータである。
【0012】
本発明の第1の発明は、マルチキャストパケットの転送を直結で実現している場合に、直結した仮想コネクションにしかパケットが流れないために、マルチキャストグループに参加しているが直結していない受信者にパケットが届かなくなってしまうという問題を解決することを目的とする。
【0013】
本発明の第2の発明は、マルチキャストパケットの転送を直結で実現することができる場合に、複数の仮想コネクションから同一のパケットが到着することがあっても、不都合なくパケット転送動作が行えるようにすることを目的とする。
【0014】
【課題を解決するための手段】
本発明の第1の発明は、少なくとも一つの仮想コネクション型ネットワークと接続し、第1のノードから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノードへ転送するノード装置において、前記第1のノードからパケットを受信可能な第1の仮想コネクションと、前記第2のノードへパケットを送信可能な第2の仮想コネクションとの対応関係を記憶することのできる記憶手段と、前記第1のノードから受信したパケットにネットワークレイヤレベルの転送処理を施すことにより次段ノードを決定し、この処理の施されたパケットを、決定された次段ノードへ転送する第1の転送手段と、前記第1の仮想コネクションにて受信された、マルチキャスト通信における複数の宛先ノードのいずれかへ向かうパケットを、前記記憶手段に前記対応関係が記憶されている場合に該対応関係に従って、前記第1の転送手段のネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送する第2の転送手段と、前記第2の転送手段による転送を行うことにより、前記複数の第2のノードのうち前記特定のノード以外のノードへ、前記宛先ノードへ向かうパケットのうち少なくとも一部が転送されなくなると判断される場合に、前記第1の仮想コネクションにて受信されたパケットを複製して前記第1の転送手段へ渡す手段とを具備したことを特徴とする。
【0015】
この第1の発明によれば、パケットを第2の転送手段(対応関係の記憶、すなわち直結)により転送している場合は、何もしなければそのパケットに対する第1の転送手段(ネットワークレイヤレベルの転送処理)による次段ノードの決定と転送は行われないが、必要なときにはパケットを複製して、一方は直結転送するとともに、他方は第1の転送手段へ渡すことにより、直結していない受信者を含むマルチキャストグループに参加している全てのノードでパケットを受信することができる。
【0016】
本発明の第1の発明の一つのパケット転送方法として、マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノードから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する複数の第2のノードへ転送する際に、前記第1のノードからパケットを受信可能な第1の仮想コネクションと、前記複数の第2のノードのうちの特定のノードへパケットを送信可能な第2の仮想コネクションとの対応関係を記憶し、前記第1の仮想コネクションにて受信されたパケットを記憶された前記対応関係に従ってネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送するとともに、このネットワークレイヤレベルの転送処理の一部又は全部を行わない転送に起因して前記複数の第2のノードのうち前記特定のノード以外のノードへ前記宛先ノードへ向かうパケットのうち少なくとも一部が転送されなくなると判断される場合には、前記第1の仮想コネクションにて受信されたパケットを複製してネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを前記特定のノード以外のノードへ送信するものがある。
【0017】
本発明の第1の発明の別のパケット転送方法として、マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノードから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノードへ転送する際に、前記第1のノードからの第1及び第3の仮想コネクションにて、前記宛先ノードへ向かうパケットのうち少なくとも一部を重複して受信し、前記第1の仮想コネクションにて受信されたパケットのうち前記重複するパケットを選択して廃棄し、前記第2の仮想コネクションと、前記第2のノードへパケットを送信可能な第3の仮想コネクションとの対応関係を記憶することにより、前記第3の仮想コネクションにて受信されたパケットをこの記憶された対応関係に従ってネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送している場合に、前記第3の仮想コネクションにて受信されたパケットを複製してネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを少なくとも前記第2のノードへ第2の仮想コネクション以外の仮想コネクションを用いて送信するものがある。
【0018】
本発明の第2の発明は、少なくとも一つの仮想コネクション型ネットワークと接続し、第1のノードから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノードへ転送するノード装置において、前記第1のノードからパケットを受信可能な第1の仮想コネクションと、前記第2のノードへパケットを送信可能な第2の仮想コネクションとの対応関係を記憶することのできる記憶手段と、前記第1のノードから受信したパケットにネットワークレイヤレベルの転送処理を施すことにより次段ノードを決定し、この処理の施されたパケットを、決定された次段ノードへ転送する第1の転送手段と、前記第1の仮想コネクションにて受信されたパケットを、前記記憶手段に前記対応関係が記憶されている場合に該対応関係に従って、ネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送する第2の転送手段と、前記第1の仮想コネクション以外の第3の仮想コネクションにて、前記第1のノードから前記第1の仮想コネクションにて受信されたのと同じパケットを重複して受信した場合に、前記第3の仮想コネクションにて受信されたパケットのうち前記重複したパケットを選択して前記第1の転送手段による転送より前に廃棄する廃棄手段とを具備したことを特徴とする。
【0019】
この第2の発明によれば、ノードは、そこに到着するパケットを第2の転送手段(対応関係の記憶、すなわち直結)により転送することが可能な第1の仮想コネクションと、それとは別の第3の仮想コネクションとから、同一パケットを二重に受信することがあるが、直結用ではない第3の仮想コネクションにて受信した重複パケットを選択して廃棄することにより、重複パケットを更に複数の仮想コネクションにて次段ノードへ送信してしまうことを防ぐことができる。
【0020】
上述した本発明の第1の発明の別のパケット転送方法は、本発明の第2の発明をも利用するものである。
【0021】
また、本発明の第2の発明の別のパケット転送方法には、マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノードから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノードへ転送する際に、前記第1のノードからの第1及び第3の仮想コネクションにて、前記宛先ノードへ向かうパケットのうち少なくとも一部を重複して受信し、前記第3の仮想コネクションと、前記第2のノードへパケットを送信可能な第2の仮想コネクションとの対応関係を記憶することにより、前記第3の仮想コネクションにて受信されたパケットをこの記憶された対応関係に従ってネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送している場合に、前記第1の仮想コネクションにて受信されたパケットにネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを少なくとも前記第2のノードへ第2の仮想コネクション以外の仮想コネクションを用いて送信し、一方、前記第3の仮想コネクションにて受信されたパケットにネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送していない場合に、前記第1の仮想コネクションにて受信されたパケットのうち前記重複するパケットを選択して廃棄するものがある。
【0022】
すなわち、上述した本発明の第1の発明の別のパケット転送方法は、廃棄は必ず行って必要であれば複製する方法であり、本発明の第2の発明の別のパケット転送方法は、第1の転送手段による次段ノードの決定と転送が必要でない場合のみ廃棄する方法である。
【0023】
【発明の実施の形態】
まずはじめに、この発明における用語の定義を行う。
【0024】
「ホスト」とは、パケットを送受信し、パケットの転送を行わない装置である。「ルータ」とは、パケットを送受信し、パケットの転送を行う装置である。「ノード」とは、ホストとルータの両方を指す。
【0025】
「仮想コネクション型ネットワークに接続するノード」とは、仮想コネクション識別子の付与されたパケットを転送可能なインターフェースを有するノードである。例えば、ATM(Asynchronous Transfer Mode)などの仮想コネクションを設定できる場合であって、論理ネットワーク内に1つ以上のスイッチがあるときだけでなく、論理ネットワークがスイッチを含まないポイント−ポイントの物理リンクである場合も含む。
【0026】
「ポイント−マルチポイントVC」とは、送信者から1つのパケットを送出すると複数の受信者への同一のパケットが到着する仮想コネクションを指す。受信者が1つのノードの場合は、ポイント−ポイントVCと同様になるが、この場合もポイント−マルチポイントコネクションに含まれるとする。
【0027】
「宛先アドレス」とは、宛先ネットワーク層アドレスのことを指し、ユニキャストアドレスのみではなくマルチキャストのグループアドレスも含む。
【0028】
「フロー」とは、ある情報により特定されたパケット群、例えば少なくとも特定の宛先アドレスのパケット群を指す。宛先アドレスに加えて、トランスポート層の宛先ポート番号を使って特定することも出来る。さらに送信者アドレスを用いてもよい。トランスポート層の宛先ポート番号とは、宛先ノードにおける特定のアプリケーションを意味しているので、これと同様の意味がある識別子によりフローを特定することも出来る。IPv6(Internet Protocol Version 6)では、宛先アドレスの代わりに特定のFlow IDを含むパケット群を指すこともできる。
【0029】
「サービス品質要求が異なるパケットを転送すべき仮想コネクション」は、パケットを転送する仮想コネクションの帯域等が異なる場合や、その仮想コネクションに対して自ノードもしくは相手側のノードで資源予約を行なうか否かやその度合い、また、自ルータもしくは相手側のルータでネットワーク層より下位のレイヤでのスイッチング機能を利用した仮想コネクションの直結を行っているか否かが異なる場合を含む。なお、サービス品質の要求が無いものと有るものも、サービス品質の要求が異なると言う。
【0030】
「あるノードから他の複数のノードへの仮想コネクション」は、あるノードから他の複数のノードへのポイント−マルチポイントVCでも、あるノードから他の複数のそれぞれのノードへのポイント−ポイントVCの集合であってもよい。また、一部のノードへのポイント−マルチポイントVCとその他のノードへのポイント−ポイントVCの集合とを合わせたものでもよい。あるノードからマルチキャストサーバへのポイント−ポイントVCとマルチキャストサーバから複数のノードへの上記VCでもよい。
【0031】
(参考実施形態1)
本実施形態では、サービス品質要求が異なるマルチキャストパケット転送を実現する方法であって、各ノードがマルチキャストパケットを重複無く受信できる方法を述べる。
【0032】
(具体例1)
図1は、この実施の形態で説明するネットワーク構成を示している。ネットワークを構成しているノードとしては、マルチキャストパケットの送信ホスト(S)とパケットを転送するルータ(R1,R2,R3)、受信ホスト(H1,H2,...,H7)がある。送信ホストSの出力I/Fは1つであり、aと名付ける。R3の出力I/Fは3つであり、それぞれ、a,b,cとする。
【0033】
この構成では、送信ホスト(S)からルータ(R1)を経由して受信ホスト(H1)のようにルータの前後はホストが接続されているが、送信ホスト(S),ルータ,ルータ(R1),ルータ,受信ホスト(H1)の順番のようにルータ(R1)の前後にルータが接続されていても同様に動作する。
【0034】
それぞれのノードは少なくとも1つ以上のサブネット(論理ネットワーク)に属している。サブネットとは、ルータを介さずに直接通信できる範囲である。サブネット外への通信はルータによるパケット転送が必要である。
【0035】
図1の構成で同一サブネットに属しているノードは、以下の通りである。(S,R1,R2,R3)の組は、サブネットAに属している。(R1,H1,H2)の組は、サブネットBに属している。(R2,H3)の組は、サブネットCに属している。(R3,H4,H5)の組は、サブネットDに属している。(R3,H6,H7)の組は、サブネットEに属している。サブネット内は、お互いに仮想コネクション型ネットワークで接続されている。
【0036】
上記の構成の時に、送信者アドレスSで宛先アドレスGのマルチキャストパケットの転送方法を示す。宛先アドレスGのグループに属しているノードは、H1,H3,H4,H5,H7とする。
【0037】
サービス品質がベストエフォートのみの場合は、図1のように仮想コネクションが設定されている。送信ホストSから宛先アドレスGのマルチキャストパケットを送出するとVC0を通してR1,R2,R3に配送される。このパケットを受信したR1は、H1にパケットを配送し、R2はH3にパケットを配送し、R3はVC2でH4,H5に配送し、VC4でH7にパケットを配送する。
【0038】
この図では、ポイントマルチポイントVCを用いてマルチキャストパケットを転送しているが、マルチキャストサーバを使用してもよい。以下の例でも、マルチポイント−ポイントVCを使用しているところでは、マルチキャストサーバを使用することが出来る。マルチキャストサーバは、ポイント−ポイントVC受信したパケットをポイント−マルチポイントVCに流すことでマルチキャストを実現するものである。
【0039】
さて、図1のような状態から、H5が宛先アドレスG,宛先ポート番号1のパケットのサービス品質を要求したことを考える。サービス品質の要求は、RSVP(Resource ReSerVation Protocol)などの資源予約プロトコルを用いて伝えることが出来る。サービス品質要求プロトコルとしては、RSVPではなくともサービス品質要求を隣接ノードに通知する方法があればそれを使用することが出来る。
【0040】
RSVPでH5からサービス品質を要求されたR3は、図2のように宛先グループアドレスG,宛先ポート番号1のパケットを転送するポイントマルチポイントVC(VC3)を同一サブネット(サブネットD)内でグループGに参加しているノードに設定する。このVC3は、宛先アドレスGで宛先ポート番号1であるパケットを転送するために使用する。今まで、全ての宛先アドレスGのパケットを転送していたVC2は、VC3に流す宛先アドレスG,宛先ポート番号1のパケットを除く宛先アドレスGのパケットを流す。
【0041】
R3はサービス品質要求をSに転送して、SからもVC1をVC3と同様に設定する。Sでは、VC1で転送するパケットはVC3と同様であり、VC0で転送するパケットはVC2と同様になる。サービス品質要求の転送方法は、RSVPを利用したときは、このように下流から上流に転送されるが、他の方法を用いるときには、異なる転送が行われる可能性がある。しかし、どのような転送方法を取ったとしても最終的には、図2のようなVCの設定が行われる。
【0042】
要するに、サービス品質を要求されたフローに関して同一サブネット内の受信者の全てをリーフとする新たなポイントマルチポイントVCを設定する。このコネクション内にサービス品質を要求されたフローを流し、今まであったベストエフォート用のVCにはサービス品質を要求されたフローを流さないように設定する。
【0043】
なお、図中の点線で示したVCは、実線で示したVCとは、そこに転送すべきパケットのサービス品質要求が異なるものである。
【0044】
R3の出力I/F(c)からは、サービス品質を要求されていないので、ベストエフォートのVC(VC4)で宛先アドレスGの全てのパケットを転送する。以下では、送信ノード(S)におけるVC0とVC1へのマルチキャストパケットの転送方法の具体例とルータ(R3)におけるVC2,VC3,VC4へのマルチキャストパケットの転送方法の具体例を示す。
【0045】
送信ノードSは、図3で示す構成である。パケットは、出力処理部(11)で図5に示すフローチャートに従ってネットワークI/F(13)を経由して送出される。出力処理部(11)では、経路表(12)を参照する。以下の説明では、経路表(12)の具体例として図6を使用する。この経路表は、マルチキャストルーティングプロトコルかサービス品質が要求されたときに設定される。ネットワーク層処理部(10)は、出力処理部(11)と経路表(12)を合わせたものである。
【0046】
マルチキャストパケット(送信者S,宛先G,宛先ポート1)(以下では、(S,G,1)と表現する)を転送する手順を示す。パケットの(送信者,宛先,宛先ポート)の組をキーとして経路表(a)を検索し、出力VCポインタを得る(S1)。
【0047】
検索では、送信者と宛先アドレスは、一致する必要があるが、宛先ポートに関しては、同一の宛先ポートが存在する場合は、そのエントリを返し、同一の宛先ポートが存在しないが、宛先ポートが指定されていないエントリがある場合は、そのエントリを返す。この検索方法を以下ではベストマッチの検索方法と呼ぶことにする。図6では、宛先ポートが指定されていないものを”−”で示している。図6では、(S,G,1)のエントリが出力VCポインタ2を示しているので、検索結果としてこれを返す。
【0048】
次に、出力VCポインタをキーにして経路表(b)を検索し、出力I/Fと出力VCを得てそこにパケットを出力する(S2)。出力ポインタが2であるので図6の経路表(b)のアドレス2の出力I/F=a,出力VC=VC1となっているので出力I/F=aで出力VC=VC1としてパケットを送出する。次へのポインタを調べると何も指されていないので(S3 No)これで処理を終わる。
【0049】
今度は送信するパケットが送信者S,宛先G,宛先ポート2の場合を考える。図5のフローチャートに従って、パケットの経路表(a)を検索する。図6の経路表には、(S,G,2)の組に完全に合致するものはない。(S,G)の組で宛先ポートが指定されていないエントリ(S,G,−)があるので、この出力VCポインタである1を返す。
【0050】
次に、経路表(b)のアドレス1に書かれている出力I/F=a,出力VC=VC0にパケットを送出する。次へのポインタはどこも指されていないので、これで、パケットの送出を終了する。
【0051】
次にルータ3(R3)でのパケット転送方法の具体例を示す。
【0052】
図4はルータの構成図である。ネットワークI/F(24)から入力されたパケットは、入力処理部(21)で入力処理を行った後、出力処理部(22)で経路表(23)を参照しながらネットワークI/F(24)を経由してネットワークに送出される。出力処理部(22)の動作は、図5に示すフローチャートに従って送出される。この動作は、送信ノード(S)と同様である。ネットワーク層処理部(20)は、入力処理部(21)と出力処理部(22)と経路表(23)からなる。R3での経路表は、図7の様になっているとする。
【0053】
送信者Sからマルチキャストパケット(送信者S,宛先G,宛先ポート1)を受信した場合は、R3はパケットを転送するために(S,G,1)をキーとして経路表(a)を検索する(S1)。これに完全に合致するもの(S,G,1)があるのでこのエントリの出力VCポインタである3を返す。経路表(b)のアドレス3より出力I/F=b,出力VC=VC3にこのパケットを転送する(S2)。
【0054】
次のポインタが4を示している(S3 Yes)ので、そのポインタを出力VCポインタだとして(S4)、経路表(b)のアドレス4のエントリである出力I/F=c,出力VC=VC4にパケットを転送する。次へのポインタがないので、これで処理を終了する。
【0055】
送信者Sからマルチキャストパケット(送信者S,宛先G,宛先ポート2)を受信した場合は、R3はパケットを転送するために(S,G,2)をキーとして経路表(a)を検索する。検索結果は、(S,G,−)のエントリと合致するので、出力VCポインタ=1が返される。経路表(b)のアドレス1より、出力I/F=b,出力VC=VC2にパケットを送出する。次のポインタが2を指しているので、経路表(b)のアドレス2のエントリである出力I/F=c,出力VC=VC4にパケットを送出する。次へのポインタがないので、これで処理を終了する。
【0056】
ここでは、R3についてのみ説明したが、R1およびR2でも同様の動作を行う。すなわち、R1、2の下流からは、サービス品質を要求されていないので、ベストエフォートのVCで宛先アドレスGの全てのパケット(VC0で来たパケットとVC1で来たパケット)を転送する。
【0057】
本例の特徴をまとめると、次のようになる。マルチキャスト通信における複数の宛先ノード(H1,H3,H4,H5,H7)へ向けてパケット転送を行うために、第1のノード(SもしくはR3)から複数の第2のノード(R1,R2,R3もしくはH4,H5)への仮想コネクションが複数(VC0とVC1、もしくは、VC2とVC3)設定されている。
【0058】
そして、前記第1のノードは、第2のノードそれぞれが前記複数の仮想コネクションにて前記宛先ノードへ向かうパケットを重複せずに受信するよう、前記宛先ノードへ向かうパケットのうち特定のサービス品質を提供すべきフローに属するパケット(S,G,1)を前記複数の仮想コネクションのうちの一部のコネクション(VC1もしくはVC3)にて、前記宛先ノードへ向かうパケットのうち前記フローに属するパケット以外のパケットを前記複数の仮想コネクションのうちの他のコネクション(VC0もしくはVC2)にて転送する。なお、前記「特定のサービス品質を提供するべきフロー」は、単に「特定のフロー」であっても良い。
【0059】
前記特定のサービス品質を提供すべきフローに属するパケットを転送する仮想コネクション(VC1もしくはVC3)は、前記複数の宛先ノードのうちの少なくとも一つ(例えばH5)により該フロー(S,G,1)に関し特定のサービス品質が要求された場合に設定されたものである。
【0060】
なお、この仮想コネクションの設定は、前記第1のノードが、特定のプロトコルのパケット(第2のノードへのパケットでも第2のノードからのパケットでも良い)を検出した場合に、前記複数の宛先ノードのうちの少なくとも一つ(例えばH5)には他の宛先ノードとは別の仮想コネクションでそのパケットを転送するように予め取り決めがなされているならば、設定するというようにしても良い。この場合も、当該別の仮想コネクションは、サービス品質要求の異なるパケットを転送すべきものとなる。また、当該宛先ノード(H5)は、そのフローに関し特定のサービス品質を要求していることになる。
【0061】
前記第2のノード(R3)は、該第2のノードの下流に前記フローに関し特定のサービス品質を要求した宛先ノードが存在しない論理ネットワーク(サブネットE)に対しては、前記第1のノードから受信した前記マルチキャスト通信の宛先ノードへ向かうパケットのうち前記フローに属するパケットとそれ以外のパケット(S,G,−)を、次段ノードへの同一の仮想コネクション(VC4)にて転送する。
【0062】
(具体例2)
本具体例では、QOS要求したノードに対して新たなVCを設定し、そのVCでQOSを要求されたフローを転送するとともにQOS要求をしていないノードにも新たなVCを設定し、そのVCでQOSを要求されたフローを転送することでマルチキャストパケットを転送する。
【0063】
図8は、H5が(S,G,1)のパケットのQOS要求を行い、R3を通してSにその要求が到着した後のVCの設定図である。VC2,VC5が(S,G,1)のパケットを転送するVCである。VC1,VC4は、QOS要求をしていないノードに対して(S,G,1)のパケットを転送するためのVCである。VC0,VC3は(S,G,1)以外のパケットで宛先アドレスGのパケットを転送するVCである。VC6が宛先アドレスGのパケットを転送するVCである。
【0064】
上記のような設定を行うことにより、同一パケットが重複しないでかつグループに参加している全てのノードにパケットを配送することが出来る。
【0065】
パケットの転送方法は、具体例1であげた図5のフローチャートと同様である。Sの経路表は図9であり、R3の経路表は図10の様になる。SとR3の動作は、具体例1と同様であるのでここでは省略する。
【0066】
本例の特徴をまとめると、次のようになる。マルチキャスト通信における複数の宛先ノード(H1,H3,H4,H5,H7)へ向けてパケット転送を行うために、第1のノード(SもしくはR3)から複数の第2のノード(R1,R2,R3もしくはH4,H5)の少なくとも一つへの仮想コネクションが複数(VC0とVC1とVC2、もしくは、VC3とVC4とVC5)設定されている。VC2やVC5に転送すべきパケットのサービス品質要求は、VC0やVC3、VC1やVC4のそれとは異なることになる。
【0067】
そして、前記第1のノードは、第2のノードそれぞれが前記複数の仮想コネクションの少なくとも一つにて前記宛先ノードへ向かうパケットを重複せずに受信するよう、前記宛先ノードへ向かうパケットのうち特定のサービス品質を提供すべきフローに属するパケット(S,G,1)を、前記複数の仮想コネクションのうちの一部のコネクション(VC1とVC2、もしくは、VC4とVC5)にて、前記宛先ノードへ向かうパケットのうち前記フローに属するパケット以外のパケットを、前記複数の仮想コネクションのうちの他のコネクション(VC0もしくはVC3)にて転送する。
【0068】
その他の特徴については、上記具体例1と同様であるので説明を省略する。
【0069】
(具体例3)
本具体例では、QOSを要求したノードに新たなVCを2本設定し、ベストエフォートのVCのリーフから取り除く。新たに設定したVCの1本はQOS要求されたフローを転送し、もう1本はそれ以外のパケットを転送する。
【0070】
図11では、H5が(S,G,1)のパケットのQOS要求を行い、R3を通してSにその要求が到着した後のVCの設定図である。新たなVCとしてVC1,VC4がQOS要求されていないパケット用であり、VC2,VC5はQOS要求されたパケットを転送する。ベストエフォートのVC0からは、R3への枝を削除し、VC3からは、H4への枝を削除する。
【0071】
パケットの転送方法は、具体例1であげた図5のフローチャートと同様である。Sの経路表は図12であり、R3の経路表は図13の様になる。SとR3の動作は、具体例1と同様であるのでここでは省略する。
【0072】
本例の特徴をまとめると、次のようになる。マルチキャスト通信における複数の宛先ノード(H1,H3,H4,H5,H7)へ向けてパケット転送を行うために、第1のノード(SもしくはR3)から複数の第2のノード(R1,R2,R3もしくはH4,H5)のうち特定のノード(R3もしくはH5)への複数の第1の仮想コネクション(VC1とVC2、もしくは、VC4とVC5)と、前記特定のノード以外の第2のノードへの第2の仮想コネクション(VC0もしくはVC3)が設定されている。VC2やVC5に転送されるパケットのサービス品質要求は、VC0やVC3、VC1やVC4のそれとは異なることになる。
【0073】
そして、前記第1のノードは、第2のノードそれぞれが前記複数の仮想コネクションの少なくとも一つにて前記宛先ノードへ向かうパケットを重複せずに受信するよう、前記宛先ノードへ向かうパケットのうち特定のサービス品質を提供すべきフローに属するパケット(S,G,1)を、前記複数の第1の仮想コネクションのうちの一部のコネクション(VC2もしくはVC5)及び前記第2の仮想コネクション(VC0もしくはVC3)にて、前記宛先ノードへ向かうパケットのうち前記フローに属するパケット以外のパケットを、前記複数の第1の仮想コネクションのうちの他のコネクション(VC1もしくはVC4)及び前記第2の仮想コネクション(VC0もしくはVC3)にて転送する。つまり、VC0とVC3には(S,G,−)が流れる。
【0074】
(S,G,1)に関し特定のサービス品質を要求した宛先ノード(H5)もしくはそこへ向かうパケットが経由するノード(R3)が上記特定のノードとなる。その他の特徴については、上記具体例1と同様であるので説明を省略する。
【0075】
本実施形態の効果は、重複したパケットの送信を行わないようにするため、ネットワーク資源が有効に利用できることである。
【0076】
(参考実施形態2)
本実施形態では、サービス品質の異なるマルチキャストパケット転送を実現する方法であって、各ノードはマルチキャストパケットを重複して受信するが、支障無く動作できる方法を述べる。
【0077】
サービス品質がベストエフォートのみの場合は、参考実施形態1の場合と同様に図1のようにVCが設定されている。
【0078】
ここで、受信ホストH5が送信者S,宛先アドレスG,宛先ポート1のマルチキャストパケット(以下では、(S,G,1)のパケットと言う)に対してサービス品質を要求した場合を考える。H5はR3にRSVPを使ってサービス品質を要求することを伝えるとする。R3はサービス品質を満足するポイントマルチポイントVCであるVC3を図14のように設定し、このVCで(S,G,1)のパケットを送信する。R3は、VC3で(S,G,1)パケットを送信することをH5に伝える。R3は、VC2で今までと同様に宛先アドレスGのパケットを送信しているので、H5ではVC2とVC3の両方から(S,G,1)のパケットを受信する。そこで、VC2から来た(S,G,1)のパケットを廃棄することで2重にパケットを処理することを防ぐ。
【0079】
R3は、送信者Sにサービス要求を行い、VC3と同様にVC1を設定する。SからR3へVC3に流すパケット(S,G,1)を通知して、R3では、VC0から来た(S,G,1)のパケットを廃棄することでパケットを2重に転送するのを防ぐ。
【0080】
以下では、(S,G,1)のパケットを送信する場合のS,R3,H5の動作と、(S,G,2)のパケットを送信する場合のS,R3,H5の動作を示す。
【0081】
送信ホストSの構成は、図3と同様であるが、出力処理部(11)の出力手順が図15のフローチャートに従う。また、Sの経路表は、図16で示す。
【0082】
R3のルータの構成は、図17の様になる。参考実施形態1の場合のルータとほぼ同じであるので異なるところだけ説明する。入力処理部(21)から参照するパケット廃棄表(25)が増えている。出力処理部(22)での送信手順は図15のフローチャートに従う。R3の経路表は図18に、廃棄パケット表は図19に示す。
【0083】
受信ホストH5の構成は、図20であり、ネットワークI/F(34)から入力されたパケットは、入力処理部(31)において、パケット廃棄表(35)を参照することにより、重複していれば廃棄される。廃棄パケット表として図19を持つ。
【0084】
Sが(S,G,1)のパケットを送信するときには、最初に図16の経路表(a)の先頭にポインタをセットする(図15 S21)。次にそのポインタで示されるエントリから(S,G,1)をキーとして経路表(a)を検索する(S22)。つまり、送信者と宛先アドレスが合致しているものを検索し、その中で宛先ポートが合致しているものも検索する。本実施形態ではベストマッチでない検索方法を使う。
【0085】
経路表(a)の1行目から比較し、(S,G,−)のエントリにマッチしていることがわかるので、出力VCポインタ=1を返す。出力ポインタで示された出力VCにパケットを送出する(S23)ので、経路表(b)のアドレス1に示された出力I/F=a,出力VC=VC0にパケットを出力する。経路表(b)の次のポインタがないのでこれでS23の処理は終了する。
【0086】
ポインタを経路表(a)の次のエントリである2行目に移し(S24)、経路表を検索する(S22)。経路表(a)の2行目から検索すると(S,G,1)がマッチするので出力ポインタ2を返す。経路表(b)のアドレス2の出力I/F=a,出力VC=VC1に(S,G,1)のパケットを出力する(S23)。次へのポインタはないので、次の処理に移る。ポインタを経路表の3行目に移し(S24)、S22で全てのエントリを検索終了したことがわかるので、これで処理を終わる。
【0087】
R3は、VC0とVC1から(S,G,1)のパケットを受信する。受信パケットは、ネットワークI/Fから受信した仮想コネクション識別子とともにネットワーク層処理部に渡される。パケットを受信すると図19のパケット廃棄表を検索して廃棄すべきパケットかをチェックする。
【0088】
受信パケットの(送信者アドレス、宛先アドレス、宛先ポート)が、パケット廃棄表に書かれている場合は、この表の入力I/F,入力VCから来たパケットのみを通し、その(送信者アドレス、宛先アドレス、宛先ポート)を持つパケットであってその他のVCから来たパケットは廃棄する。
【0089】
VC0とVC1から受信した(S,G,1)のパケットは、パケット廃棄表に書かれているので、入力I/F=a,入力VC=VC1から受信したパケットのみを通す。VC0から来た(S,G,1)のパケットは廃棄する。VC1から来たパケットに対して以下のパケット転送処理を行う。
【0090】
なお、パケット廃棄表のこのエントリは、SからVC1に(S,G,1)のパケットを流すことを通知されたときに、記入する。
【0091】
パケット転送は、Sと同様に図15のフローチャートに従って行う。経路表は、図18に示す。ポインタを経路表(a)の先頭に移し(S21)、経路表(a)の1行目が(S,G,1)にマッチするか確かめる。1行目は、(S,G,−)なので、マッチする(S22)。出力VCポインタ1を返す。経路表(b)のアドレス1の出力I/F=b,出力VC=VC2に(S,G,1)のパケットを送信する。
【0092】
次のポインタが2を指しているので、経路表(b)のアドレス2の出力I/F=c,出力VC=VC4へも(S,G,1)のパケットを送信する(S23)。次へのポインタがないので、これでこの処理は、終了する。
【0093】
次に、経路表(a)のポインタを2行目に移し(S24)、(S,G,1)にマッチするエントリがあるか確かめる。(S,G,1)のエントリがあるので出力VCポインタ3を返す(S22)。経路表(b)のアドレス3の出力I/F=b,出力VC=VC3に(S,G,1)のパケットを送信する(S23)。次へのポインタがないので、これでこの処理は、終了する。
【0094】
経路表(a)のポインタを3行目に移し(S24)、経路表(a)の全てを検索したことがわかるので、パケット転送処理を終了する。
【0095】
H5は、VC2とVC3から(S,G,1)のパケットを受信する。R3と同様にパケット廃棄表を見てパケットを廃棄するか決定する。VC2から来た(S,G,1)のパケットは廃棄され、VC3から来た(S,G,1)のパケットは廃棄されない。これにより、重複したパケットを両方とも処理してしまうことが無くなる。
【0096】
さて、(S,G,2)のパケットの転送手順を以下に述べる。Sでは、(S,G,2)をキーに経路表(a)を検索する。(S,G,−)のエントリがマッチするので、出力VCポインタ1を返す。経路表(b)のアドレス1の出力I/F=a,出力VC=VC0にパケットを出力する。次へのポインタが無いのでこの処理は終了する。次に、経路表(a)の次のエントリから(S,G,2)をキーに検索すると該当するエントリが無いので転送の処理を終了する。
【0097】
R3でも、上記と同様に行い、パケット廃棄表でパケットを廃棄するか決定し、(S,G,2)のパケットは廃棄しないことがわかるので、出力I/F=b,出力VC=VC2と出力I/F=c,出力VC=VC4にパケットを出力する。
【0098】
なお、本実施形態のパケットの出力処理は、後述する実施形態1の具体例2の方法でも実現できる。具体的には、送信手順として図5のフローチャート(ベストマッチの検索法)を使い、IP経路表(b)のアドレス1の次ポインタを3にし、アドレス3に出力I/F=a,出力VC=VC1,次ポインタ=Xを追加すればよい。
【0099】
本実施形態の効果は、サービス品質がベストエフォートのみの状態(図1)から、サービス品質の要求に対応した仮想コネクションが設定された状態(図14)になるまでの設定手順が少なくてすむことである。また、パケットの送信者からサービス品質を要求したノードへの仮想コネクションを設定するだけなので、設定するVC数が少なくてすむ。
【0100】
本実施形態の特徴をまとめると、次のようになる。マルチキャスト通信における複数の宛先ノード(H1,H3,H4,H5,H7)へ向けてパケット転送を行うために、第1のノード(SもしくはR3)から複数の第2のノード(R1,R2,R3もしくはH4,H5)への第1の仮想コネクション(VC0もしくはVC2)と、第1のノードから前記複数の第2のノードのうち少なくとも特定のノード(R3もしくはH5)への第2の仮想コネクション(VC1もしくはVC3)とが設定されており、これらの仮想コネクションは転送すべきパケットのサービス品質要求が異なる。
【0101】
そして、前記第2のノードそれぞれが、前記宛先ノードへ向かうパケット(S,G,−)を前記第1の仮想コネクションにて受信するとともに、少なくとも前記特定のノードは、前記宛先ノードへ向かうパケットのうち特定のサービス品質を提供すべきフローに属するパケット(S,G,1)を前記第1の仮想コネクションに加えて前記第2の仮想コネクションにても受信するよう、前記第1のノードからパケットを転送する。
【0102】
さらに、前記特定のノード(R3もしくはH5)は、前記第1の仮想コネクション(VC0もしくはVC2)にて受信されたパケット(S,G,−)のうち前記フローに属するパケット(S,G,1)を選択して廃棄する。
【0103】
前記第2の仮想コネクション(VC1もしくはVC3)は、前記複数の宛先ノードのうちの少なくとも一つ(例えばH5)により前記フローに関し特定のサービス品質が要求された場合に設定されたものである。また、前記特定のノードは、該サービス品質を要求した宛先ノードへ向けて転送されるべきパケットが経由するノード(R3)もしくは該宛先ノード(H5)である。
【0104】
前記特定のノード(R3もしくはH5)は、前記フローに属するパケットを重複して受信すると、パケット廃棄表を用いることにより、前記第2の仮想コネクションにて受信されるべきパケットの属するフローを判別して、前記第1の仮想コネクションにて受信されたパケットのうち、判別されたフローに属するパケットを選択して廃棄し、廃棄されなかったパケット(VC1もしくはVC3で受信した(S,G,1)と、VC0もしくはVC2で受信した(S,G,−)のうち(S,G,1)を除いたもの)に、次段ノードへの転送のためのもしくは上位レイヤのアプリケーションへ上げるためのネットワークレイヤ処理を施す。
【0105】
前記特定のノードがまだ宛先ノードでなければ(R3)、前記ネットワークレイヤ処理を施したパケットが前記宛先ノードへ向かうべきパケットであって前記特定のサービス品質を提供すべきフローには属さないならば、VC2へ転送し、前記ネットワークレイヤ処理を施したパケットが前記宛先ノードへ向かうべきパケットであって前記フローに属するならば、VC2及びVC3へ転送する。つまり、VC2にはVC0で受信された(S,G,−)のうち(S,G,1)を除いたものとVC1で受信された(S,G,1)とが、前記フロー専用のVC3には同じく前記フロー専用のVC1で受信された(S,G,1)が流れる。
【0106】
なお、VC1やVC3を特定のノード以外の第2のノードのへも設定して動作しても構わない。このときは、この仮想コネクションが設定されたその他の第2のノード(R1,R2もしくはH4)も上記特定のノードと同様に動作する。そして、そのノードより下流には、特定のサービス品質を提供すべきフロー専用の仮想コネクションが存在しないのであれば、廃棄されなかったパケットを下流側に存在する同一の仮想コネクションにて転送すれば良い。
【0107】
また、参考実施形態2におけるルータは次のようなものとすることもできる。そのルータとは、前記フロー専用のVCにて送信されるパケットに対し、パケットの最終宛先アドレスから出力先とすべきVCを決定するネットワークレイヤレベルのルーティングテーブル参照処理は行わず、ATMレベルのルーティングテーブルを参照することにより、出力先とすべきVCを決定するものである。
【0108】
ATMレベルのテーブルには、VC1からのパケットは次段ノードへの前記フロー専用のVCであるVC3に転送すべきことを記入しておく。このため、VC1からのパケットはVC2へは転送されず、VC3へのみ転送される。VC1のパケットに対しては、出力VCを決定する処理以外のネットワークレイヤレベルの処理は行う。
【0109】
ネットワークレイヤレベルのテーブルには、宛先アドレスGのパケットはVC2へ転送するように記入しておく。このため、VC0からのパケットはVC3へは転送されず、VC2へのみ転送される。
【0110】
このようにすれば、パケットの廃棄をしなくとも、ルータがVC2及びVC3へ、(S,G,1)のパケットを2つずつ転送してしまうことを防ぐことができる。但し、この場合も、宛先ノードは、VC2から来た(S,G,1)を廃棄する。
【0111】
その他、参考実施形態1で述べたような種々の変形実施も可能である。
【0112】
(実施形態1)
本実施形態では、CSR(Cell Switch Router)の技術を用いて、サービス品質の異なるマルチキャストパケット転送を実現する方法を述べる。
【0113】
CSRは、通常のルータと同じIPパケット単位で転送する動作を行う他に、ルータ内部にATMスイッチ機能を持つことにより、より高速なATMセル単位の転送を行うことができるルータである。
【0114】
図21を使って、CSRの簡単な動作を説明する。X.1からCSRを通してY.1にパケットを転送する場合を考える。通常と同じIPパケット転送の動作を行うためには、X.1からCSRに色々な宛先のパケットを転送するために設定されているATMコネクションでパケットを送信する。ここでは、このATMコネクションをデフォルトVC(Virtual Connection)と呼ぶ。CSRでは、IPパケットの宛先を見て次に配送するノードを決定する。ここでは、次のノードは、Y.1になるので、デフォルトVCにパケットを送出することによりY.1へとパケットが転送される。
【0115】
次に、ATMセル転送の動作を説明する。Y.1へのパケット転送専用のX.1からCSRへのATMコネクションとCSRからY.1へのATMコネクションとが設定されているとする。ここでは、このATMコネクションを専用VCと呼ぶ。さらに、これら2つの専用VCをCSR内のATMスイッチ機能でATMセル単位で転送できるように設定しておく。すなわち、X.1からCSRへの専用VCのCSRの受信ポートでのVPI/VCIと、CSRからY.1への専用VCのCSRの送信ポートでのVPI/VCIとの対応関係を、ATMレベルのルーティングテーブルとして記憶しておく。このような設定を行うことで、二つの論理ネットワーク(IP Subnet)に属する専用VCを直結するバイパスパイプが形成されたことになる。
【0116】
X.1からY.1へのパケット転送を行うには、X.1からY.1用の専用VCにパケットを送信することにより、X.1からCSRに送られ、CSRでATMレベルのルーティングテーブルを参照することによりATMセルのままCSRからY.1への専用VCに転送されて、その専用VCでY.1へ送られる。
【0117】
なお、ここでは、専用VCにて送信されるパケットをATMセル単位で転送することを、専用VCの直結として説明したが、専用VCにて送信されるパケットをAAL(ATM Adaptation Layer)フレーム単位で転送することで、専用VCの直結としても良い。この場合も、上記のATMレベルのルーティングテーブルを参照することにより、AALフレーム転送が行える。以上の場合はいずれも、ネットワークレイヤ(例えばIP)レベルの解析処理を行わずに、パケットが転送されることになる。
【0118】
また、専用VCにて送信されるパケットに対し、パケットの最終宛先アドレスから出力先とすべきVCを決定するネットワークレイヤレベルのルーティングテーブル参照処理は行わず、その他のネットワークレイヤレベルの処理(IPの場合はTTL(Time To Live)を減らす処理やチェックサム計算等)は行って、次段ノードへの専用VCに転送することを、上記専用VCの直結としても良い。この場合も、上記のATMレベルのルーティングテーブルを参照することにより、出力先とすべきVCが決定でき、パケット転送が行える。この場合は、ネットワークレイヤレベルの処理を一部だけ行って、パケットが転送されることになる。
【0119】
本発明は、CSRの動作が以上に説明したいずれのものであっても、適用可能である。
【0120】
図22にCSRの構成図の一例を示す。301は、ネットワークレイヤレベルの処理を行うIP処理部であり、302は、ATMセルからAALフレームに変換するAAL処理部であり、303は、セル転送を行うATMスイッチである。このATMスイッチは、入力セルをコピーして複数の出力I/Fに出力することが出来る。
【0121】
IP処理部(301)とAAL処理部(302)と入力VC−フロー対応表(311)と管理部(309)をまとめて、上位層処理部(310)とする。IP処理部(301)には、入力処理部(307)と出力処理部(306)とIP経路表(304)があり、ATMスイッチ(303)には、ATM経路表(305)がある。入力VC−フロー対応表(311)は、あるVCから入力させるフローを記憶する。管理部(309)は、入力VC−フロー対応表に従って、IP経路表とATM経路表を参照又は書き込む。
【0122】
上記構成では、IP処理部として記述したが、ネットワーク層処理としてIPのみでなく他のネットワーク層でも同様に行うことが出来る。以下の説明では、ネットワーク層がIPである場合で説明する。
【0123】
(具体例1)
(参考実施形態1)の様にCSRで同一のパケットを複数受信しない場合のCSRの動作を説明する。CSRでは、入力VCと出力VCを直結すると直結したVCにしかパケットが流れない。これでは、マルチキャストに参加しているが直結していない受信者にパケットが届かなくなる。この具体例では、CSRで受信した同一のパケットを重複しないように下流に流しながら、上記の問題を解決する方法を述べる。
【0124】
図1のルータ(R3)がCSRである場合を取り上げる。図23は、R3を中心に置いた図である。
【0125】
CSRには、サブネットAからVC0,VC1,VC2の3つのVCを通してパケットが到着する。これらのVCには以下のパケットが流れるように設定されているとする。VC1は、送信者アドレスS,宛先アドレスG1,宛先ポート1のパケットが流れる。VC0は、送信者アドレスS,宛先アドレスG1のパケットで宛先ポート1を除くパケットが流れる。VC2は、送信者アドレスS,宛先アドレスG2のパケットが流れる。以下では、送信者アドレスS,宛先アドレスG1,宛先ポート1の組を(S,G1,1)のように表す。
【0126】
宛先アドレスG1とG2に参加しているノードは、サブネットDとサブネットEに存在するとする。これは、サブネットAから受け取ったパケットをサブネットDとサブネットEに送出しなければならないことを意味する。サブネットDの参加者は宛先アドレスG1、宛先ポート1のフローに対して特定のサービス品質を要求しており、サブネットEの参加者は、そのフローに対する要求をしていないものとする。
【0127】
VC0で到着したATMセルは、上位層処理部に渡され、セルからパケットに組み立て出力I/Fを決める。そのパケットをセルに直して、VC3とVC6に送出する。VC1で到着したセルは、VC4に直結転送されるとともに上位層処理部に渡され、VC6に送信される。VC2で受信したセルは、VC5とVC7に直結転送される。
【0128】
ここで重要なのは、受信したパケットの受信者の1部にしか直結していない場合にATMスイッチでセルをコピーして上位層処理部に転送することである。これにより直結していない参加者にパケットを送信できるようにする。
【0129】
上記の動作をフローチャート(図24,図25)と図22の304のIP経路表(図27)と図22の305のATM経路表(図26)を用いて説明する。
【0130】
VC0から(S,G1,2)のパケットがATMセルで到着した場合は、ATMスイッチにおいて、図24のフローチャートに従ってセルを出力する。まず、入力I/Fと入力VCをキーにして図26のATM経路表(a)を検索する(S41)。
【0131】
VC0は入力I/F=a,入力VC=VC0であるので、出力VCポインタは1である。出力VCポインタからATM経路表(b)のアドレス1のエントリを見る。これは出力I/F=上位層となっているので、上位層処理部にセルを渡す(S42)。ATM経路表(b)の次ポインタが無い(S43 No)のでこれで処理を終わる。
【0132】
上位層処理部に渡ったセルは、複数のセルを集めてパケットを組み立て、そのパケットを図25のフローチャートに従って転送する。
【0133】
(S,G1,2)のパケットが到着したので図27のIP経路表(a)を(S,G1,2)をキーとしてベストマッチで検索を行う(S45)。(S,G1,−)のエントリにマッチし、出力VCポインタが1であることがわかる。出力VCポインタが1であるのでIP経路表(b)のアドレス1の出力I/F=b,出力VC=VC3,直結=no,次ポインタ=2がわかる。
【0134】
直結=noなので(S46 No)出力I/F=b,出力VC=VC3にパケットを送出する(S47)。次ポインタ=2である(S48)のでIP経路表(b)のアドレス2を見て(S49)同様なことを行う。出力I/F=c,出力VC=VC6にパケットを送出する(S47)。次ポインタ=Xなのでパケットの転送処理を終了する。
【0135】
次に、VC1に(S,G1,1)のパケットが転送された場合を説明する。ATMスイッチでの転送方法と上位層処理部での転送方法は上記VC0の場合と同様であるので簡単に説明する。VC1からセルが到着するとATMスイッチでATM転送表を参照し、出力I/F=b,出力VC=VC4と上位層にパケットを送信する。ここで、直結していない参加者にパケットが届かなくなることがないように、直結転送されるセルをコピーして上位層に渡していることになる。
【0136】
上位層処理部では、(S,G1,1)をキーにIP経路表(a)をベストマッチで検索すると出力ポインタ=3であり、IP経路表(b)から出力I/F=b,出力VC=VC4,次ポインタ=4,直結=yesであることがわかる。
【0137】
直結=yesであるので(S46 Yes)、このVCには出力せずに、次のポインタを試す(S48)。次は、出力I/F=c,出力VC=VC6,直結=noであることがわかるので、出力I/F=c,出力VC=VC6にパケットを送出する。これで直結していない参加者(VC6に対応)にも(S,G1,1)のパケットが届くことになる。
【0138】
VC2で来たセルは、ATM転送表から出力I/F=b,出力VC=VC5と出力I/F=c,出力VC=VC7に出力する。上位層処理部にはパケットが到着しないので上位層処理部でのパケット転送はない。送信者アドレスS,宛先アドレスG2のパケットについては、直結していない参加ノードが存在しないので、上位層にパケットを渡すためのセルをコピーは必要ないのである。
【0139】
上記の方法を用いることにより、マルチキャストパケットを送出する時直結を行ってもグループ参加者の全てにパケットが送信できるようになる。
【0140】
上記方法を実行する場合は、ATMスイッチでセルをコピーして上位層処理部に渡すかどうかを決定する必要がある。これは、図22の管理部309が、図27のIP経路表(304)と図28の入力VCとフローの対応表(311)を参照することにより決定し、ATM経路表(305)を設定する。
【0141】
入力VCとフローの対応表から入力VCで流れるフローがわかる。そのフローをIP経路表で検索してその出力VCの全てが直結されていないとき、または、全てが直結されているときは、ATMスイッチで上位層処理部にセルをコピーする必要はない。出力VCの一部が直結されていてその他が直結されていないときにはATMスイッチで上位層処理部にセルをコピーする必要がある。この判断に基づいてATM経路表を設定する。具体的には以下のようにする。
【0142】
VC1は(S,G1,1)のパケットが流れることが図28から分かる。(S,G1,1)をキーに図27を検索し、経路表(b)を見ると直結しているVCが1つ(VC4)と直結していないVCが1つ(VC6)あるので、VC1に関してはATMスイッチで上位層処理部にセルをコピーして渡す必要がある。
VC2は、(S,G2,−)のパケットが流れることが図28から分かり、これをキーに図27を検索すると、2本のVC(VC5,VC7)とも直結しているので上位層処理部にセルをコピーして渡す必要がないことが分かる。
【0143】
このように得られた情報により、図26のATM経路表を設定する。ATM経路表は、VC0がデフォルトVCであるので、ただ上位層に渡すようになっており、VC1はVC4と直結するようにその対応関係が記憶され、VC2はVC5およびVC7と直結するようにその対応関係が記憶されている。ここで、VC1については、上位層にセルをコピーして渡す必要があることがあることがわかると、VC4の次ポインタを設定し、次ポインタの示すエントリに上位層を書き込む。
【0144】
なお、図23において、図示されないサブネットFにも宛先アドレスG2に参加しているノードがあり、そこへのVC8はVC2と直結されていないものである場合は、同様にしてVC2からのセルをコピーして上位層に渡すことにより、VC8へも(S,G2,−)のパケットが届くことになる。
【0145】
本例の特徴をまとめると、次のようになる。マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノード(サブネットA)から受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する複数の第2のノード(サブネットD及びE)へ転送する際に、前記第1のノードからパケットを受信可能な第1の仮想コネクション(VC1)と、前記複数の第2のノードのうちの特定のノード(サブネットD)へパケットを送信可能な第2の仮想コネクション(VC4)との対応関係を記憶し、この対応関係に従って直結転送するとともに、この直結転送に起因して前記複数の第2のノードのうち前記特定のノード以外のノード(サブネットE)へ前記宛先ノードへ向かうパケットのうち少なくとも一部が転送されなくなると判断される場合には、前記第1の仮想コネクション(VC1)にて受信されたパケットを複製してネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを前記特定のノード以外のノード(サブネットE)へ送信する。
【0146】
より具体的には、前記第1の仮想コネクション(VC1)にて受信すべきパケットの属するフロー(S,G1,1)に対応して、前記第1の仮想コネクションとの対応関係が記憶されている前記第2の仮想コネクション(VC4)の他に、前記第1の仮想コネクションとの対応関係が記憶されていない第3の仮想コネクション(VC6)が記憶されている場合に、上記転送されなくなるとの判断を行う。
【0147】
一方、前記第1の仮想コネクション(VC2)にて受信すべきパケットの属するフロー(S,G2,−)に対応して、前記第1の仮想コネクションとの対応関係が記憶されている前記第2の仮想コネクション(VC5及びVC7)の他に、前記第1の仮想コネクションとの対応関係が記憶されていない第3の仮想コネクションが存在しない場合には、転送されなくなるとは判断しない。
【0148】
(具体例2)
(参考実施形態2)の様にCSRで同一のパケットを複数受信する場合に、CSRで入力パケットの重複をなくし、全ての受信者にパケットを転送する方法を述べる。
【0149】
CSRの構成図を図29で示す。図22で示したCSRの構成図とほぼ同じであるので、異なる点だけ説明する。IP処理部(301)には、パケット廃棄表(308)が追加されている。入力処理部(307)でパケット廃棄表を見ることで重複しているパケットの処理を行わないようにすることができる。
【0150】
図30を使ってCSRの動作を説明する。図30は、図1のルータ(R3)がCSRである場合を示しており、R3を中心に置いたVCの設定図である。ATMスイッチからサブネットAへのI/Fはaと呼び、サブネットDへのI/Fはb,サブネットCへのI/Fはcとする。ATMスイッチから上位層処理部へのI/Fは”上位層”と呼ぶことにする。
【0151】
R3のATM経路表は図31に示し、IP経路表は図32に、パケット廃棄表は図33に示す。
【0152】
VC0(デフォルトVC)からは、宛先アドレスGのパケットが転送され、VC1(専用VC)からは、(S,G,1)のパケットが転送されるとする。
【0153】
VC0から(S,G,1)のパケットのセルが到着したとする。このセルは、ATMスイッチが図31のATM経路表を参照し図24のフローチャートに従って動作することにより、上位層へVC0で渡され、上位層処理部でパケットの組み直される。上位層処理部の入力処理部(307)で図33のパケット廃棄表を参照し、(S,G,1)のパケットを廃棄するべきかを確かめる。パケット廃棄表には、(S,G,1)のパケットであって入力VCがVC1以外のものは廃棄するように書かれているので、パケットを廃棄して終了する。
【0154】
次に、VC0から(S,G,2)のパケットのセルが到着したとする。このセルも上記と同様に上位層処理部に渡され、入力処理部でパケット廃棄表を確かめる。パケット廃棄表には、(S,G,2)のエントリはないのでパケットは廃棄しない。
【0155】
このパケットを出力するため、図32のIP経路表を参照して出力処理部でパケットの出力処理を行う。この出力の処理は、図5で示したフローチャートに従う。IP経路表をベストマッチで検索して出力I/F=”上位層”,出力VC=VC2とVC4に出力すれば良いことがわかる。
【0156】
このVCにパケットからセルに分解して出力すると、ATMスイッチが図31のATM経路表を参照し図24のフローチャートに従って動作することにより、VC2のセルは出力I/F=b,出力VC=VC2で出力し、VC4のセルは出力I/F=c,出力VC=VC4で出力する。
【0157】
一方、VC1から(S,G,1)のパケットのセルが到着したとする。このセルは、ATMスイッチが図31のATM経路表を参照し、図24のフローチャートに従って動作することにより、VC3に転送されるとともにATMスイッチで複製され上位層処理部に渡される。
【0158】
その後、入力処理部で(S,G,1)をキーにパケット廃棄表を検索する。検索されたエントリには、入力VC=VC1以外は廃棄するように書かれているので、このパケットは廃棄しない。そして、このパケットをIP経路表に従って、出力処理部で出力する。出力の方法は、上記で説明したVC0からパケットが入力された場合と同様であるので、説明は省略する。
【0159】
この具体例では、専用VC(VC1)から来たセルを直結転送している場合は、これを下流の専用VC(VC3)に直結転送するとともに、ATMスイッチで複製して上位層に渡す。専用VC(VC1)から来たセルを直結転送していない場合には、これを通常通り上位層に渡す(これは図31及び32とは異なるATM及びIP経路表によりVC2,VC3,VC4に転送されることになる)。つまり、この具体例では、直結転送しているか否かに関わらす、専用VCから来たセルはATMスイッチから上位層に渡される。
【0160】
パケット廃棄表の設定は、VC1を流れるパケットが(S,G,1)であることをSから通知されたときに、図29の管理部309で、図33の入力VC−フロー対応表(311)を記入するとともに、パケット廃棄表(308)に、VC1以外からの(S,G,1)のパケットを廃棄するように記入する。
【0161】
また、管理部309は、後述する実施形態4のような直結管理表(図29の入力VC−フロー対応表311はその一部を構成するものである)を用いて、直結転送するか否かを切り替える場合のATM及びIP経路表の変更をも行っている。
【0162】
なお、本実施形態のパケット出力処理は、前述した参考実施形態2の方法でも実現できる。具体的には、出力処理を図15のフローチャート(ベストマッチではない検索法)で行い、IP経路表として図32(a)に(S,G,1)のパケットの出力VCポインタを3とし、図32(b)のアドレス3に出力I/F=”上位層”,出力VC=VC4,次ポインタ=Xを追加すればよい。
【0163】
本例の特徴をまとめると、次のようになる。マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノード(サブネットA)から受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノード(サブネットD)へ転送する際に、前記第1のノードからの第1及び第2の仮想コネクション(VC0及びVC1)にて、前記宛先ノードへ向かうパケットのうち少なくとも一部を重複して受信し、前記第1の仮想コネクション(VC0)にて受信されたパケットのうち前記重複するパケットを選択して廃棄し、前記第2の仮想コネクション(VC1)と前記第2のノードへパケットを送信可能な第3の仮想コネクション(VC3)との対応関係を記憶することにより、この対応関係に従って直結転送をしている場合には、前記第2の仮想コネクション(VC1)にて受信されたパケットを複製してネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを少なくとも前記第2のノードへ第3の仮想コネクション以外の仮想コネクション(VC2)を用いて送信する。一方、上記直結転送をしていない場合には、パケットの複製は行わない。
【0164】
(具体例3)
(参考実施形態2)の様にCSRで同一のパケットを複数受信する場合に、CSRで入力パケットの重複をなくし、全ての受信者にパケットを転送する別の方法を述べる。
【0165】
CSRに入力される専用VCが直結している場合は、入力側でパケットを廃棄し、専用VCが直結していない場合は、その専用VCに流れるフローと同じものをデフォルトVCから受信したならばそのパケットを廃棄する。
【0166】
専用VCが直結している場合を、図34で説明する。入力処理は上記具体例2と同様であり、出力処理は、図25のフローチャートに従いベストマッチの検索で行われる。この場合のIP経路表とパケット廃棄表と入力VC−フロー対応表を図35に示す。入力VC−フロー対応表からVC1は直結していることがわかるので、パケット廃棄表には何も書かれていない。これにより入力されたパケットは廃棄されることはない。入力されたパケットは、図25のフローチャートにしたがってVC2とVC4に送出される。
【0167】
次に専用VCが直結していない場合を図36で説明する。この場合のIP経路表とパケット廃棄表と入力VC−フロー対応表を図37に示す。入力VC−フロー対応表からVC1は直結していないことがわかるので、パケット廃棄表に(S,G,1)のパケットであって専用VCであるVC1から来たもの以外は廃棄するように記入する。これにより、(S,G,1)のパケットは、VC0から来た場合は廃棄され、VC1から来た場合に出力処理される。出力の処理は、上記の同様に図25のフローチャートに従う。(S,G,2)のパケットは、VC2,VC4に出力され、(S,G,1)のパケットは、VC2,VC3,VC4に出力される。
【0168】
上記の入力VC−フロー対応表は、上流ノードがあるVCに流すフローを通知してきたときに、入力VC及びフローが記入され、直結を行ったときや直結をやめたときに、対応するエントリの直結フィールドが記入される。パケット廃棄表は、入力VC−フロー対応表の直結フィールドがyesからnoに、あるいはその逆に変更されたことが分かったときに、図29の管理部が変更する。
【0169】
また、図29の管理部は、後述する実施形態4のような直結管理表(入力VC−フロー対応表はその一部である)を用いて、直結転送するか否かを切り替える場合のATM及びIP経路表の変更をも行っている。なお、図35及び37には図示していないが、ATM経路表も、直結していないときには、VC0から来たセルもVC1から来たセルも上位層へ転送するように設定され、直結しているときには、VC0から来たセルは上位層へ、VC1から来たセルはVC3へ転送するように設定が変更される。
【0170】
本例の特徴をまとめると、次のようになる。マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノード(サブネットA)から受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノード(サブネットD)へ転送する際に、前記第1のノードからの第1及び第2の仮想コネクション(VC0及びVC1)にて、前記宛先ノードへ向かうパケットのうち少なくとも一部を重複して受信し、前記第2の仮想コネクション(VC1)と前記第2のノードへパケットを送信可能な第3の仮想コネクション(VC3)との対応関係を記憶することにより、この対応関係に従って直結転送をしている場合には、前記第1の仮想コネクション(VC0)にて受信されたパケットにネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを少なくとも前記第2のノードへ第3の仮想コネクション以外の仮想コネクション(VC2)を用いて送信する。一方、上記直結転送をしていない場合には、前記第1の仮想コネクション(VC0)にて受信されたパケットのうち前記重複するパケットを選択して廃棄する。
【0171】
なお、本実施形態においては、直結された仮想コネクションに流れるパケットは、マルチキャスト通信における複数の宛先ノード行きの全パケットであってもよいし、そのうちの特定のサービス品質を提供すべきフローに属するパケットであってもよい。後者の場合は、転送されなくなると判断され複製されるパケットもしくは重複するパケットは、複数の宛先ノード行きのうち特定のサービス品質を提供すべきフローに属するパケットとなり、複数の宛先ノード行きのうちのそれ以外のパケットは、直結されない仮想コネクションを用いて転送されることになる。
【0172】
後者の場合、直結可能な仮想コネクションに特定のサービス品質を提供すべきフローに属するパケットを送信し、直結されない仮想コネクションに複数の宛先ノード行きのパケットのうちのそれ以外を送信する方法(具体例1に対応)と、直結可能な仮想コネクションに特定のサービス品質を提供すべきフローに属するパケットを送信し、直結されない仮想コネクションに複数の宛先ノード行きの全パケットを送信する方法(具体例2及び3に対応)があるが、本発明ははいずれにも適用可能である。
【0173】
また、マルチキャスト通信の複数の宛先ノードのうち少なくとも一つによる要求に対応して直結可能な仮想コネクションを設定する場合、この要求を行った宛先ノードへのパケットが経由するノード間にのみ直結可能な仮想コネクションを設定する方法と、要求を行った宛先ノードへのパケットが経由するノードが一つでも存在する出力インタフェースには、その出力インタフェースの次段ノードの全てに直結可能な仮想コネクションを設定する方法があるが、本発明ははいずれにも適用可能である。
【0174】
【発明の効果】
本発明の第1の発明によれば、直結していない受信者を含むマルチキャストグループに参加している全てのノードで、受信すべき全てのパケットを受信することができる。また、第2の発明によれば、これに加えて、重複パケットを更に複数の仮想コネクションにて次段ノードへ送信してしまうことを防ぐことができる。
【図面の簡単な説明】
【図1】 ネットワーク構成図。
【図2】 参考実施形態1、具体例1のネットワーク構成図。
【図3】 送信ホストの構成図。
【図4】 参考実施形態1のルータの構成図。
【図5】 ネットワーク層処理部におけるパケットの出力処理手順の例を示すフローチャート。
【図6】 参考実施形態1、具体例1の送信ホストの経路表の一例を示す図。
【図7】 参考実施形態1、具体例1のルータの経路表の一例を示す図。
【図8】 参考実施形態1、具体例2のネットワーク構成図。
【図9】 参考実施形態1、具体例2の送信ホストの経路表の一例を示す図。
【図10】 参考実施形態1、具体例2のルータの経路表の一例を示す図。
【図11】 参考実施形態1、具体例3のネットワーク構成図。
【図12】 参考実施形態1、具体例3の送信ホストの経路表の一例を示す図。
【図13】 参考実施形態1、具体例3のルータの経路表の一例を示す図。
【図14】 参考実施形態2のネットワーク構成図。
【図15】 ネットワーク層処理部におけるパケットの出力処理手順の別の例を示すフローチャート。
【図16】 参考実施形態2の送信ホストの経路表の一例を示す図。
【図17】 参考実施形態2のルータの構成図。
【図18】 参考実施形態2のルータの経路表の一例を示す図。
【図19】 参考実施形態2のパケット廃棄表の一例を示す図。
【図20】 参考実施形態2の受信ホストの構成図。
【図21】 CSRの動作を説明する図。
【図22】 実施形態1、具体例1のCSRの構成図。
【図23】 実施形態1、具体例1のCSR内のVC設定図。
【図24】 実施形態1のATMスイッチの動作を示すフローチャート。
【図25】 実施形態1、具体例1及び3のIP処理部の動作を示すフローチャート。
【図26】 実施形態1、具体例1のATM経路表の一例を示す図。
【図27】 実施形態1、具体例1のIP経路表の一例を示す図。
【図28】 実施形態1、具体例1の入力VC−フロー対応表の一例を示す図。
【図29】 実施形態1、具体例2及び3のCSRの構成図。
【図30】 実施形態1、具体例2のCSR内のVC設定図。
【図31】 実施形態1、具体例2のATM経路表の一例を示す図。
【図32】 実施形態1、具体例2のIP経路表の一例を示す図。
【図33】 実施形態1、具体例2のパケット廃棄表及び入力VC−フロー対応表の一例を示す図。
【図34】 実施形態1、具体例3のCSR内のある状態のVC設定図。
【図35】 実施形態1、具体例3のIP経路表、パケット廃棄表、及び入力VC−フロー対応表のある状態の例を示す図。
【図36】 実施形態1、具体例3ののCSR内の別の状態のVC設定図。
【図37】 実施形態1、具体例3のIP経路表、パケット廃棄表、及び入力VC−フロー対応表の別の状態の例を示す図。
【符号の説明】
10、20、30…ネットワーク層処理部
11、22…出力処理部
12、23、306…経路表
13、24、34…ネットワークI/F
21、31、307…入力処理部
25、35、308…パケット廃棄表
310…上位層処理部
301…IP処理部
302…AAL処理部
303…ATMスイッチ
304…IP経路表
305…ATM経路表
309…管理部
311…入力VC−フロー対応表
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a router device connecting virtual connection type networks, and a method for transferring multicast packets to different logical networks via the router device.
[0002]
[Prior art]
The router device is used when connecting logical networks, and plays a role of transferring packets from one logical network to the other logical network. In the packet, in addition to the communication information data to be transferred, the network layer address of the transmission source and the final destination is described. The router device uses the address information to output the packet output interface and the next transfer node. Is determined.
[0003]
This router apparatus can perform not only unicast communication for transferring packets from one source to one final destination, but also multicast communication for transmitting packets from one source to many final destinations.
[0004]
In recent years, attempts have been made to transfer voice and images using packets. At present, since the audio image data and other data are similarly sent by the router, the audio is interrupted and the video is disturbed. Therefore, by making resource reservations in the router and preferentially transferring audio images, it becomes easy to hear and easy to view images. Here, an audio image is taken as an example, but in the case of data to be preferentially flowed, there is a merit by reserving resources.
[0005]
In order to make resource reservations in such a router device, it is necessary to exchange resource reservation information between router devices, and RSVP (Resource ReServer Protocol) has been developed as a protocol. This protocol supports both unicast and multicast.
[0006]
In RSVP, resource reservation is performed from a downstream node receiving data to an upstream node that is a source of information. Specifically, a PATH message is sent from the information source to the same destination as the data destination, and the route on which the information passes is stored in the router on the route. In the PATH message, an identifier for specifying a flow of data to be reserved for resources and an IP address of a node that transmits the PATH message are written.
[0007]
When the data receiving node receives the PATH message, it sends a RESV message to the upstream node that has transmitted the PATH message, thereby indicating the intention of resource reservation. In the RESV message, an identifier for specifying a flow of data to be reserved for resources and a QOS (Quality of Service) requested by the receiving node are written.
[0008]
If the network layer (IP) processing unit has the capability to reserve resources, the router that has received this RESV message performs network layer scheduling and transfers the RESV upstream. If the resource reservation cannot be made, the RESV Error is transmitted to the downstream node. By repeating this, resource reservation can be made up to the upstream node.
[0009]
When a local area network (LAN) that configures a logical network is realized by a virtual connection type network and resource reservation is made by multicast communication based on a request of a certain receiving node, one point where resource reservation is made for one multicast address Resource reservation within a LAN is realized by creating a multipoint connection and a point multipoint connection for best effort that does not reserve resources.
[0010]
For example, when a multicast packet having a destination address G is transmitted from the transmission node S to the reception nodes H1, H2, H3, and H4, H1 and H2 request QOS, and H3 and H4 do not request QOS Sets point-multipoint VC for destination address G from S to H1, H2 and point-multipoint VC for destination address G from S to H3, H4.
[0011]
[Problems to be solved by the invention]
The first and second inventions of the present invention relate to a router having a switch function in addition to performing the same packet unit transfer operation as a normal router. This is not only a packet transfer at the network layer, but also a router that can perform a transfer at a lower layer than the network layer by directly connecting an input virtual connection and an output virtual connection using a switch function.
[0012]
In the first aspect of the present invention, when the multicast packet transfer is realized by direct connection, since the packet flows only through the directly connected virtual connection, the recipient who is joined to the multicast group but not directly connected The purpose is to solve the problem that packets are not delivered to.
[0013]
According to the second aspect of the present invention, when multicast packet transfer can be realized by direct connection, even if the same packet may arrive from a plurality of virtual connections, the packet transfer operation can be performed without any inconvenience. The purpose is to do.
[0014]
[Means for Solving the Problems]
The first invention of the present invention is a node that connects to at least one virtual connection network and forwards a packet received from the first node to a second node belonging to a logical network different from the first node. A storage unit capable of storing a correspondence relationship between a first virtual connection capable of receiving a packet from the first node and a second virtual connection capable of transmitting the packet to the second node in the apparatus; The first transfer for determining the next node by performing a network layer level transfer process on the packet received from the first node and transferring the packet subjected to the process to the determined next node. And one of a plurality of destination nodes in multicast communication received by the first virtual connection The second virtual connection without performing part or all of the network layer level transfer processing of the first transfer means according to the correspondence relation when the correspondence relation is stored in the storage means By performing the transfer by the second transfer means for transferring at the second transfer means, To a node other than the specific node among the plurality of second nodes, Of the packets going to the destination node At least partly transferred And a means for copying a packet received through the first virtual connection and transferring it to the first transfer means when it is determined that the packet will not be received.
[0015]
According to the first invention, when the packet is transferred by the second transfer means (corresponding relationship storage, that is, directly connected), if nothing is done, the first transfer means for the packet (at the network layer level) The next node is not determined and transferred by the transfer process), but when necessary, the packet is copied, one is directly transferred, and the other is passed to the first transfer means so that reception is not directly connected. Packets can be received by all nodes participating in the multicast group including the user.
[0016]
As one packet transfer method according to the first aspect of the present invention, a packet received from a first node is different from the first node in order to perform packet transfer toward a plurality of destination nodes in multicast communication. When transferring to a plurality of second nodes belonging to a logical network, a first virtual connection capable of receiving a packet from the first node and a packet to a specific node among the plurality of second nodes The correspondence relationship with the second virtual connection that can be transmitted is stored, and the packet received at the first virtual connection is not subjected to part or all of the transfer processing at the network layer level in accordance with the stored correspondence relationship. To the second virtual connection, and part or all of the transfer processing at the network layer level is not performed. When it is determined that at least a part of a packet destined for the destination node is not transferred to a node other than the specific node among the plurality of second nodes due to the transfer, the first virtual There is a type in which a packet received by a connection is duplicated, a transfer process at a network layer level is performed, and the packet subjected to this process is transmitted to a node other than the specific node.
[0017]
As another packet transfer method of the first invention of the present invention, a packet received from the first node is different from the first node in order to perform packet transfer toward a plurality of destination nodes in multicast communication. When transferring to a second node belonging to a logical network, the first and the first node from the first node Third In the virtual connection, at least a part of the packets destined for the destination node is received in duplicate, the duplicate packet among the packets received in the first virtual connection is selected and discarded, By storing the correspondence between the virtual connection of 2 and the third virtual connection capable of transmitting a packet to the second node, Third The packet received by the virtual connection is not subjected to a part or all of the network layer level transfer process according to the stored correspondence relationship. Second When transferring with a virtual connection, Third The packet received by the virtual connection is duplicated to perform a transfer process at the network layer level, and the packet subjected to this process is sent to at least the second node. Second Some send using virtual connections other than virtual connections.
[0018]
A second invention of the present invention is a node that connects to at least one virtual connection network and forwards a packet received from the first node to a second node belonging to a logical network different from the first node. A storage unit capable of storing a correspondence relationship between a first virtual connection capable of receiving a packet from the first node and a second virtual connection capable of transmitting the packet to the second node in the apparatus; The first transfer for determining the next node by performing a network layer level transfer process on the packet received from the first node and transferring the packet subjected to the process to the determined next node. And the packet received by the first virtual connection when the correspondence is stored in the storage means. In accordance with the relation, the second transfer means for transferring by the second virtual connection without performing part or all of the transfer processing at the network layer level, and the third virtual connection other than the first virtual connection. When the same packet received by the first virtual connection from the first node is duplicated, the duplicate packet among the packets received by the third virtual connection is received. And a discarding unit for selecting and discarding before the transfer by the first transfer unit.
[0019]
According to the second aspect of the invention, the node has a first virtual connection capable of transferring a packet arriving there by the second transfer means (memory of correspondence, ie, direct connection), and a separate virtual connection. The same packet may be received twice from the third virtual connection, but by selecting and discarding the duplicate packet received in the third virtual connection that is not for direct connection, a plurality of duplicate packets can be obtained. Can be prevented from being transmitted to the next node in the virtual connection.
[0020]
Another packet transfer method of the first invention of the present invention described above also uses the second invention of the present invention.
[0021]
According to another packet transfer method of the second invention of the present invention, a packet received from a first node is transmitted to the first node in order to perform packet transfer toward a plurality of destination nodes in multicast communication. When transferring to a second node belonging to a different logical network from the first node Third In a virtual connection, at least a part of the packet destined for the destination node is received in duplicate, Third Can send packets to the virtual connection and the second node Second By storing the correspondence with the virtual connection, Third The packet received by the virtual connection is not subjected to a part or all of the network layer level transfer process according to the stored correspondence relationship. Second When forwarding through a virtual connection, the packet received through the first virtual connection is subjected to a network layer level forwarding process, and the packet subjected to this process is sent to at least the second node. Second Send using a virtual connection other than the virtual connection, on the other hand, Said Third Without performing part or all of the transfer processing at the network layer level on the packet received in the virtual connection Second With virtual connection Forward If there is no packet, there is a packet that selects and discards the duplicate packet among the packets received by the first virtual connection.
[0022]
That is, the above-described another packet transfer method of the first invention of the present invention is a method of always performing discarding and copying if necessary, and the second packet transfer method of the second invention of the present invention is This is a method of discarding only when it is not necessary to determine and transfer the next-stage node by one transfer means.
[0023]
DETAILED DESCRIPTION OF THE INVENTION
First, terms in the present invention are defined.
[0024]
A “host” is a device that transmits and receives packets and does not transfer packets. A “router” is a device that transmits and receives packets and forwards the packets. “Node” refers to both hosts and routers.
[0025]
A “node connected to a virtual connection type network” is a node having an interface capable of transferring a packet to which a virtual connection identifier is assigned. For example, when a virtual connection such as ATM (Asynchronous Transfer Mode) can be set, not only when there is one or more switches in the logical network, but also in a point-to-point physical link where the logical network does not include a switch. Including some cases.
[0026]
“Point-multipoint VC” refers to a virtual connection in which, when one packet is sent from a sender, the same packet arrives at a plurality of recipients. When the recipient is one node, it is the same as the point-point VC, but this case is also included in the point-multipoint connection.
[0027]
“Destination address” refers to a destination network layer address, and includes not only a unicast address but also a multicast group address.
[0028]
“Flow” refers to a packet group specified by certain information, for example, a packet group of at least a specific destination address. In addition to the destination address, the destination port number of the transport layer can be used for identification. Further, a sender address may be used. Since the transport layer destination port number means a specific application in the destination node, the flow can also be specified by an identifier having the same meaning. In IPv6 (Internet Protocol Version 6), a packet group including a specific Flow ID instead of a destination address can also be indicated.
[0029]
“Virtual connection to which packets with different quality of service requests should be transferred” indicates whether the bandwidth of the virtual connection to which the packet is transferred is different or whether the resource reservation is made in the own node or the partner node for the virtual connection. It includes the case where it differs depending on whether the direct connection of the virtual connection using the switching function in the lower layer than the network layer is performed in the own router or the other router. It should be noted that a service quality requirement is different from a service quality requirement that does not exist.
[0030]
The “virtual connection from one node to other nodes” is a point-point VC from one node to each of a plurality of other nodes even in a point-multipoint VC from one node to other nodes. It may be a set. Further, a point-multipoint VC to some nodes and a set of point-point VCs to other nodes may be combined. The point-to-point VC from a certain node to the multicast server and the VC from the multicast server to a plurality of nodes may be used.
[0031]
(Reference Embodiment 1)
In the present embodiment, a method for realizing multicast packet transfer with different service quality requirements, in which each node can receive multicast packets without duplication, will be described.
[0032]
(Specific example 1)
FIG. 1 shows a network configuration described in this embodiment. As nodes constituting the network, there are a multicast packet transmission host (S), a router (R1, R2, R3) for forwarding the packet, and a reception host (H1, H2,..., H7). The transmission host S has one output I / F and is named a. R3 has three output I / Fs, which are a, b, and c, respectively.
[0033]
In this configuration, hosts are connected before and after the router from the sending host (S) via the router (R1) like the receiving host (H1), but the sending host (S), router, router (R1) The router operates in the same manner even if the router is connected before and after the router (R1) as in the order of the router and the receiving host (H1).
[0034]
Each node belongs to at least one subnet (logical network). A subnet is a range in which direct communication can be performed without going through a router. Communication outside the subnet requires packet transfer by a router.
[0035]
The nodes belonging to the same subnet in the configuration of FIG. 1 are as follows. The group (S, R1, R2, R3) belongs to the subnet A. The group (R1, H1, H2) belongs to the subnet B. The group (R2, H3) belongs to the subnet C. The group (R3, H4, H5) belongs to the subnet D. The group (R3, H6, H7) belongs to the subnet E. The subnets are connected to each other via a virtual connection network.
[0036]
A method for transferring a multicast packet having a sender address S and a destination address G in the above configuration will be described. The nodes belonging to the group of the destination address G are H1, H3, H4, H5 and H7.
[0037]
When the service quality is only best effort, a virtual connection is set as shown in FIG. When the multicast packet of the destination address G is sent from the transmission host S, it is delivered to R1, R2, and R3 through VC0. Receiving this packet, R1 delivers the packet to H1, R2 delivers the packet to H3, R3 delivers it to H4 and H5 with VC2, and delivers the packet to H7 with VC4.
[0038]
In this figure, the multicast packet is transferred using the point multipoint VC, but a multicast server may be used. Also in the following example, a multicast server can be used where a multipoint-point VC is used. The multicast server realizes multicast by flowing a packet received by the point-point VC to the point-multipoint VC.
[0039]
Now, consider that H5 has requested the quality of service of the packet with destination address G and destination port number 1 from the state shown in FIG. A request for quality of service can be transmitted using a resource reservation protocol such as RSVP (Resource ReServation Protocol). As a service quality request protocol, if there is a method of notifying an adjacent node of a service quality request, it is possible to use it even if it is not RSVP.
[0040]
R3 requested the quality of service from H5 by RSVP sends a point multipoint VC (VC3) for transferring a packet of destination group address G and destination port number 1 to group G in the same subnet (subnet D) as shown in FIG. Set to nodes participating in. This VC3 is used to transfer a packet having a destination port number 1 with a destination address G. The VC 2 that has forwarded all the packets of the destination address G until now flows the packets of the destination address G excluding the packets of the destination address G and the destination port number 1 to be sent to the VC 3.
[0041]
R3 forwards the service quality request to S and sets VC1 from S as well as VC3. In S, the packet transferred by VC1 is the same as VC3, and the packet transferred by VC0 is the same as VC2. When the RSVP is used, the service quality request transfer method is transferred from the downstream to the upstream as described above. However, when another method is used, a different transfer may be performed. However, no matter what transfer method is used, the VC is finally set as shown in FIG.
[0042]
In short, a new point multipoint VC is set with all recipients in the same subnet as the leaf for the flow for which quality of service is required. A flow requiring a service quality is made to flow in this connection, and the best effort VC that has been used so far is set not to flow a flow requiring a service quality.
[0043]
Note that the VC indicated by the dotted line in the figure differs from the VC indicated by the solid line in that the service quality requirement of the packet to be transferred to the VC is different.
[0044]
Since the service quality is not required from the output I / F (c) of R3, all packets of the destination address G are transferred by the best effort VC (VC4). In the following, a specific example of a method for transferring multicast packets to VC0 and VC1 in the transmission node (S) and a specific example of a method for transferring multicast packets to VC2, VC3, and VC4 in the router (R3) will be shown.
[0045]
The transmission node S has the configuration shown in FIG. The packet is sent out via the network I / F (13) by the output processing unit (11) according to the flowchart shown in FIG. The output processing unit (11) refers to the route table (12). In the following description, FIG. 6 is used as a specific example of the route table (12). This routing table is set when a multicast routing protocol or quality of service is requested. The network layer processing unit (10) is a combination of the output processing unit (11) and the routing table (12).
[0046]
A procedure for transferring a multicast packet (sender S, destination G, destination port 1) (hereinafter, expressed as (S, G, 1)) is shown. The routing table (a) is searched by using the packet (sender, destination, destination port) as a key, and an output VC pointer is obtained (S1).
[0047]
In the search, the sender and the destination address must match, but for the destination port, if the same destination port exists, the entry is returned and the same destination port does not exist, but the destination port is specified. If there is an entry that has not been made, return that entry. Hereinafter, this search method is referred to as a best match search method. In FIG. 6, “−” indicates that the destination port is not designated. In FIG. 6, since the entry (S, G, 1) indicates the output VC pointer 2, this is returned as a search result.
[0048]
Next, the routing table (b) is searched using the output VC pointer as a key, the output I / F and the output VC are obtained, and the packet is output there (S2). Since the output pointer is 2, the output I / F at address 2 in the routing table (b) in FIG. 6 is a and the output VC is VC1, so the packet is transmitted with the output I / F = a and the output VC = VC1. To do. When the next pointer is examined, nothing is pointed (S3 No).
[0049]
Now consider the case where the packets to be transmitted are the sender S, the destination G, and the destination port 2. The packet routing table (a) is searched according to the flowchart of FIG. None of the routing tables in FIG. 6 perfectly match the (S, G, 2) pair. Since there is an entry (S, G,-) in which the destination port is not specified in the pair (S, G), 1 is returned as this output VC pointer.
[0050]
Next, the packet is transmitted to the output I / F = a and the output VC = VC0 written in the address 1 of the routing table (b). Since the next pointer is not pointed anywhere, this completes the packet transmission.
[0051]
Next, a specific example of the packet transfer method in the router 3 (R3) will be shown.
[0052]
FIG. 4 is a configuration diagram of the router. The packet input from the network I / F (24) is subjected to input processing by the input processing unit (21), and then the network I / F (24) while referring to the route table (23) by the output processing unit (22). ) To be sent to the network. The operation of the output processing unit (22) is sent out according to the flowchart shown in FIG. This operation is the same as that of the transmission node (S). The network layer processing unit (20) includes an input processing unit (21), an output processing unit (22), and a route table (23). Assume that the route table in R3 is as shown in FIG.
[0053]
When a multicast packet (sender S, destination G, destination port 1) is received from the sender S, R3 searches the routing table (a) using (S, G, 1) as a key to forward the packet. (S1). Since there is a complete match (S, G, 1), the output VC pointer 3 of this entry is returned. This packet is transferred from the address 3 of the routing table (b) to the output I / F = b and the output VC = VC3 (S2).
[0054]
Since the next pointer indicates 4 (S3 Yes), assuming that the pointer is an output VC pointer (S4), an output I / F = c, which is an entry of address 4 in the path table (b), and output VC = VC4 Forward the packet to Since there is no next pointer, the process ends.
[0055]
When a multicast packet (sender S, destination G, destination port 2) is received from the sender S, R3 searches the routing table (a) using (S, G, 2) as a key to forward the packet. . Since the search result matches the entry (S, G,-), the output VC pointer = 1 is returned. From address 1 in the routing table (b), a packet is sent to output I / F = b and output VC = VC2. Since the next pointer points to 2, the packet is sent to the output I / F = c and the output VC = VC4 which are entries of the address 2 in the routing table (b). Since there is no next pointer, the process ends.
[0056]
Although only R3 has been described here, the same operation is performed in R1 and R2. That is, since the quality of service is not required from downstream of R1 and R2, all the packets of the destination address G (the packet that came in VC0 and the packet that came in VC1) are transferred by the best effort VC.
[0057]
The characteristics of this example are summarized as follows. In order to perform packet transfer toward a plurality of destination nodes (H1, H3, H4, H5, H7) in multicast communication, a plurality of second nodes (R1, R2, R3) are transmitted from the first node (S or R3). Alternatively, a plurality of virtual connections (VC0 and VC1, or VC2 and VC3) to H4 and H5) are set.
[0058]
Then, the first node has a specific quality of service among packets destined for the destination node so that each second node receives the packets destined for the destination node through the plurality of virtual connections without duplication. Packets (S, G, 1) belonging to a flow to be provided are packets other than those belonging to the flow among packets destined for the destination node in some of the plurality of virtual connections (VC1 or VC3). The packet is transferred through another connection (VC0 or VC2) of the plurality of virtual connections. The “flow to provide a specific service quality” may simply be a “specific flow”.
[0059]
A virtual connection (VC1 or VC3) for transferring a packet belonging to the flow that should provide the specific quality of service is sent to the flow (S, G, 1) by at least one of the plurality of destination nodes (for example, H5). Is set when a specific quality of service is required.
[0060]
The virtual connection is set when the first node detects a packet of a specific protocol (a packet to the second node or a packet from the second node). At least one of the nodes (for example, H5) may be set if it is determined in advance that the packet is transferred through a virtual connection different from that of the other destination node. In this case as well, the other virtual connection should transfer packets having different service quality requirements. In addition, the destination node (H5) is requesting a specific quality of service for the flow.
[0061]
The second node (R3) is connected to the logical network (subnet E) that does not have a destination node that requests a specific quality of service for the flow downstream from the second node. Of the packets destined for the destination node of the multicast communication, the packets belonging to the flow and the other packets (S, G,-) are transferred by the same virtual connection (VC4) to the next node.
[0062]
(Specific example 2)
In this specific example, a new VC is set for the node that requested the QOS, the flow for which the QOS is requested is transferred by the VC, and a new VC is set for the node that has not requested the QOS, and the VC The multicast packet is transferred by transferring the flow for which QOS is requested.
[0063]
FIG. 8 is a VC setting diagram after H5 makes a QOS request for a packet of (S, G, 1) and the request arrives at S through R3. VC2 and VC5 are VCs that transfer (S, G, 1) packets. VC1 and VC4 are VCs for transferring a packet of (S, G, 1) to a node that has not made a QOS request. VC0 and VC3 are VCs that transfer a packet of the destination address G with a packet other than (S, G, 1). The VC 6 is a VC that transfers the packet of the destination address G.
[0064]
By performing the setting as described above, it is possible to deliver the packet to all nodes participating in the group without overlapping the same packet.
[0065]
The packet transfer method is the same as that shown in the flowchart of FIG. The route table for S is FIG. 9, and the route table for R3 is as shown in FIG. Since the operations of S and R3 are the same as in the first specific example, they are omitted here.
[0066]
The characteristics of this example are summarized as follows. In order to perform packet transfer toward a plurality of destination nodes (H1, H3, H4, H5, H7) in multicast communication, a plurality of second nodes (R1, R2, R3) are transmitted from the first node (S or R3). Alternatively, a plurality of virtual connections (VC0 and VC1 and VC2 or VC3 and VC4 and VC5) to at least one of H4 and H5) are set. The service quality requirement of the packet to be transferred to VC2 or VC5 is different from that of VC0 or VC3, VC1 or VC4.
[0067]
Then, the first node specifies the packets destined for the destination node so that each second node receives the packets destined for the destination node in at least one of the plurality of virtual connections without duplication. Packets (S, G, 1) belonging to a flow that should provide the service quality to the destination node through some of the plurality of virtual connections (VC1 and VC2 or VC4 and VC5) Packets other than those belonging to the flow among the outgoing packets are transferred through another connection (VC0 or VC3) of the plurality of virtual connections.
[0068]
Other features are the same as those in the first specific example, and the description thereof is omitted.
[0069]
(Specific example 3)
In this specific example, two new VCs are set in the node that requested the QOS and removed from the leaf of the best effort VC. One of the newly set VCs transfers the flow requested by the QOS, and the other transfers other packets.
[0070]
FIG. 11 is a VC setting diagram after H5 makes a QOS request for a packet of (S, G, 1) and the request arrives at S through R3. As new VCs, VC1 and VC4 are for packets that are not requested for QOS, and VC2 and VC5 transfer packets for which QOS is requested. The branch to R3 is deleted from the best effort VC0, and the branch to H4 is deleted from VC3.
[0071]
The packet transfer method is the same as that shown in the flowchart of FIG. The route table of S is FIG. 12, and the route table of R3 is as shown in FIG. Since the operations of S and R3 are the same as in the first specific example, they are omitted here.
[0072]
The characteristics of this example are summarized as follows. In order to perform packet transfer toward a plurality of destination nodes (H1, H3, H4, H5, H7) in multicast communication, a plurality of second nodes (R1, R2, R3) are transmitted from the first node (S or R3). Or a plurality of first virtual connections (VC1 and VC2 or VC4 and VC5) to a specific node (R3 or H5) of H4 and H5) and a second node other than the specific node. 2 virtual connections (VC0 or VC3) are set. The quality of service requirements of packets transferred to VC2 and VC5 are different from those of VC0 and VC3, VC1 and VC4.
[0073]
Then, the first node specifies the packets destined for the destination node so that each second node receives the packets destined for the destination node in at least one of the plurality of virtual connections without duplication. Packets (S, G, 1) belonging to a flow to provide the service quality of a part of the plurality of first virtual connections (VC2 or VC5) and the second virtual connection (VC0 or VC0) VC3), packets other than those belonging to the flow among packets destined for the destination node are transferred to other connections (VC1 or VC4) of the plurality of first virtual connections and the second virtual connection ( Transfer with VC0 or VC3). That is, (S, G,-) flows through VC0 and VC3.
[0074]
The destination node (H5) that has requested a specific quality of service with respect to (S, G, 1) or the node (R3) through which a packet destined for it is the specific node. Other features are the same as those in the first specific example, and the description thereof is omitted.
[0075]
The effect of this embodiment is that network resources can be used effectively in order not to transmit duplicate packets.
[0076]
(Reference embodiment 2)
In this embodiment, a method for realizing multicast packet transfer with different service qualities, in which each node receives a multicast packet redundantly, will be described.
[0077]
When the service quality is only the best effort, the VC is set as shown in FIG. 1 as in the case of the first embodiment.
[0078]
Consider a case where the receiving host H5 requests quality of service for a multicast packet (hereinafter referred to as a packet of (S, G, 1)) of the sender S, the destination address G, and the destination port 1. Assume that H5 informs R3 that RSVP is used to request quality of service. R3 sets VC3, which is a point multipoint VC that satisfies service quality, as shown in FIG. 14, and transmits a packet of (S, G, 1) using this VC. R3 tells H5 to send (S, G, 1) packet on VC3. Since R3 transmits the packet of the destination address G in VC2 as before, H5 receives the packet (S, G, 1) from both VC2 and VC3. Therefore, double processing of the packet is prevented by discarding the packet (S, G, 1) coming from VC2.
[0079]
R3 makes a service request to the sender S and sets VC1 in the same manner as VC3. A packet (S, G, 1) to be sent to VC3 from S to R3 is notified, and in R3, the packet of (S, G, 1) coming from VC0 is discarded to transfer the packet twice. prevent.
[0080]
Hereinafter, operations of S, R3, and H5 when transmitting a packet of (S, G, 1) and operations of S, R3, and H5 when transmitting a packet of (S, G, 2) are shown.
[0081]
The configuration of the transmission host S is the same as in FIG. 3, but the output procedure of the output processing unit (11) follows the flowchart of FIG. Further, the route table of S is shown in FIG.
[0082]
The configuration of the R3 router is as shown in FIG. Since it is almost the same as the router in the first embodiment, only the differences will be described. The packet discard table (25) referred to from the input processing unit (21) is increasing. The transmission procedure in the output processing unit (22) follows the flowchart of FIG. The route table for R3 is shown in FIG. 18, and the discarded packet table is shown in FIG.
[0083]
The configuration of the receiving host H5 is shown in FIG. 20, and packets input from the network I / F (34) can be duplicated by referring to the packet discard table (35) in the input processing unit (31). Discarded. FIG. 19 is provided as a discard packet table.
[0084]
When S transmits a packet of (S, G, 1), a pointer is first set at the head of the routing table (a) in FIG. 16 (S21 in FIG. 15). Next, the routing table (a) is searched from the entry indicated by the pointer using (S, G, 1) as a key (S22). That is, a search is made for a match between the sender and the destination address, and a search is also made for a match with the destination port. In this embodiment, a search method that is not the best match is used.
[0085]
Comparison is made from the first row of the routing table (a), and it is found that the entry matches (S, G,-), so that the output VC pointer = 1 is returned. Since the packet is transmitted to the output VC indicated by the output pointer (S23), the packet is output to the output I / F = a and the output VC = VC0 indicated by the address 1 in the path table (b). Since there is no next pointer in the routing table (b), the processing in S23 is completed.
[0086]
The pointer is moved to the second line, which is the next entry in the routing table (a) (S24), and the routing table is searched (S22). When a search is made from the second row of the routing table (a), (S, G, 1) matches, so an output pointer 2 is returned. The packet (S, G, 1) is output to the output I / F = a and the output VC = VC1 at address 2 in the routing table (b) (S23). Since there is no next pointer, the process proceeds to the next process. The pointer is moved to the third line of the route table (S24), and it is found that all entries have been searched in S22.
[0087]
R3 receives (S, G, 1) packets from VC0 and VC1. The received packet is transferred to the network layer processing unit together with the virtual connection identifier received from the network I / F. When a packet is received, the packet discard table in FIG. 19 is searched to check whether the packet should be discarded.
[0088]
When the (sender address, destination address, destination port) of the received packet is written in the packet discard table, only packets coming from the input I / F and input VC of this table are passed through, and the (sender address) , Destination address, destination port) and packets coming from other VCs are discarded.
[0089]
Since the packet (S, G, 1) received from VC0 and VC1 is written in the packet discard table, only the packet received from input I / F = a and input VC = VC1 is passed. The packet (S, G, 1) coming from VC0 is discarded. The following packet transfer processing is performed on the packet coming from VC1.
[0090]
This entry in the packet discard table is filled in when it is notified from S that the packet of (S, G, 1) is sent to VC1.
[0091]
The packet transfer is performed according to the flowchart of FIG. The route table is shown in FIG. The pointer is moved to the head of the routing table (a) (S21), and it is confirmed whether the first row of the routing table (a) matches (S, G, 1). Since the first line is (S, G,-), it matches (S22). Returns the output VC pointer 1. The packet (S, G, 1) is transmitted to the output I / F = b and the output VC = VC2 at the address 1 in the routing table (b).
[0092]
Since the next pointer points to 2, the packet (S, G, 1) is also transmitted to the output I / F = c and output VC = VC4 of address 2 in the routing table (b) (S23). Since there is no next pointer, the process is finished.
[0093]
Next, the pointer of the routing table (a) is moved to the second line (S24), and it is confirmed whether there is an entry matching (S, G, 1). Since there is an entry of (S, G, 1), the output VC pointer 3 is returned (S22). The packet (S, G, 1) is transmitted to the output I / F = b and the output VC = VC3 at address 3 in the routing table (b) (S23). Since there is no next pointer, the process is finished.
[0094]
The pointer of the routing table (a) is moved to the third line (S24), and it is found that all of the routing table (a) has been searched, so the packet transfer processing is terminated.
[0095]
H5 receives (S, G, 1) packets from VC2 and VC3. Similarly to R3, it is determined whether to discard the packet by looking at the packet discard table. The packet (S, G, 1) coming from VC2 is discarded, and the packet (S, G, 1) coming from VC3 is not discarded. This eliminates the processing of both duplicate packets.
[0096]
Now, the packet transfer procedure of (S, G, 2) will be described below. In S, the routing table (a) is searched using (S, G, 2) as a key. Since the entry of (S, G,-) matches, the output VC pointer 1 is returned. The packet is output to the output I / F = a and the output VC = VC0 of the address 1 in the routing table (b). Since there is no next pointer, this process ends. Next, when searching from the next entry in the routing table (a) using (S, G, 2) as a key, there is no corresponding entry, and the transfer process is terminated.
[0097]
Even in R3, it is performed in the same manner as described above, and it is determined whether or not to discard the packet in the packet discard table, and it is understood that the packet of (S, G, 2) is not discarded. The packet is output to output I / F = c and output VC = VC4.
[0098]
Note that the packet output processing of this embodiment can also be realized by the method of specific example 2 of embodiment 1 described later. Specifically, the flow chart of FIG. 5 (best match search method) is used as the transmission procedure, the next pointer of address 1 in the IP routing table (b) is set to 3, output I / F = a, output VC at address 3 = VC1, next pointer = X may be added.
[0099]
The effect of this embodiment is that the setting procedure from the state where the service quality is only the best effort (FIG. 1) to the state where the virtual connection corresponding to the service quality request is set (FIG. 14) can be reduced. It is. In addition, since only a virtual connection from the packet sender to the node that requested the service quality is set, the number of VCs to be set can be reduced.
[0100]
The characteristics of the present embodiment are summarized as follows. In order to perform packet transfer toward a plurality of destination nodes (H1, H3, H4, H5, H7) in multicast communication, a plurality of second nodes (R1, R2, R3) are transmitted from the first node (S or R3). Alternatively, a first virtual connection (VC0 or VC2) to H4, H5) and a second virtual connection (R3 or H5) from the first node to at least a specific node (R3 or H5) among the plurality of second nodes VC1 or VC3), and these virtual connections have different service quality requirements for packets to be transferred.
[0101]
Each of the second nodes receives the packet (S, G, −) destined for the destination node through the first virtual connection, and at least the specific node transmits a packet destined for the destination node. A packet from the first node so that a packet (S, G, 1) belonging to a flow that should provide a specific quality of service is received in the second virtual connection in addition to the first virtual connection. Forward.
[0102]
Further, the specific node (R3 or H5) is configured such that the packet (S, G, 1) belonging to the flow among the packets (S, G,-) received by the first virtual connection (VC0 or VC2). ) To discard.
[0103]
The second virtual connection (VC1 or VC3) is set when a specific quality of service is requested for the flow by at least one of the plurality of destination nodes (for example, H5). Further, the specific node is the node (R3) or the destination node (H5) through which a packet to be transferred to the destination node that has requested the quality of service passes.
[0104]
When the specific node (R3 or H5) receives a duplicate packet belonging to the flow, the specific node (R3 or H5) determines the flow to which the packet to be received in the second virtual connection belongs by using a packet discard table. Of the packets received in the first virtual connection, the packet belonging to the determined flow is selected and discarded, and the packet that has not been discarded (received by VC1 or VC3 (S, G, 1)) And (S, G,-) except for (S, G, 1) received by VC0 or VC2 for transferring to the next node or raising to a higher layer application Apply layer processing.
[0105]
If the specific node is not yet the destination node (R3), and if the packet subjected to the network layer processing is a packet to be directed to the destination node and does not belong to the flow to be provided with the specific quality of service If the packet subjected to the network layer processing is a packet to be sent to the destination node and belongs to the flow, the packet is transferred to VC2 and VC3. That is, in VC2, (S, G, 1) out of (S, G,-) received by VC0 and (S, G, 1) received by VC1 are exclusive to the flow. Similarly, (S, G, 1) received by VC1 dedicated to the flow flows through VC3.
[0106]
The operation may be performed with VC1 and VC3 set to a second node other than the specific node. At this time, the other second node (R1, R2 or H4) to which this virtual connection is set operates in the same manner as the specific node. If there is no virtual connection dedicated to a flow that should provide a specific quality of service downstream from the node, the packet that has not been discarded may be transferred through the same virtual connection existing downstream. .
[0107]
Further, the router in the reference embodiment 2 may be as follows. The router does not perform the routing table reference processing at the network layer level for determining the VC to be output from the final destination address of the packet for the packet transmitted by the VC dedicated to the flow, but at the ATM level routing. By referring to the table, the VC to be output is determined.
[0108]
In the ATM level table, it is entered that the packet from VC1 should be transferred to VC3, which is the VC dedicated to the flow to the next node. For this reason, the packet from VC1 is not transferred to VC2, but is transferred only to VC3. For the VC1 packet, processing at the network layer level other than the processing for determining the output VC is performed.
[0109]
In the network layer level table, the packet of the destination address G is entered so as to be transferred to the VC2. For this reason, the packet from VC0 is not transferred to VC3, but is transferred only to VC2.
[0110]
In this way, it is possible to prevent the router from transferring two packets of (S, G, 1) to VC2 and VC3 without discarding the packets. However, in this case as well, the destination node discards (S, G, 1) coming from VC2.
[0111]
In addition, various modifications as described in the first embodiment are also possible.
[0112]
(Embodiment 1)
In the present embodiment, a method for realizing multicast packet transfer with different service qualities by using CSR (Cell Switch Router) technology will be described.
[0113]
The CSR is a router that can perform transfer in units of ATM cells at a higher speed by having an ATM switch function inside the router in addition to performing an operation for transferring in the same IP packet unit as a normal router.
[0114]
A simple operation of the CSR will be described with reference to FIG. X. 1 through CSR through Y. Consider the case of transferring a packet to 1. In order to perform the same IP packet transfer operation as usual, X. Packets are transmitted through an ATM connection that is set to transfer packets of various destinations from 1 to the CSR. Here, this ATM connection is referred to as a default VC (Virtual Connection). In the CSR, the node to be delivered next is determined by looking at the destination of the IP packet. Here, the next node is Y. 1 to send the packet to the default VC. The packet is forwarded to 1.
[0115]
Next, the operation of ATM cell transfer will be described. Y. X. 1 to CSR and CSR to Y. Assume that an ATM connection to 1 is set. Here, this ATM connection is called a dedicated VC. Further, these two dedicated VCs are set so that they can be transferred in units of ATM cells by the ATM switch function in the CSR. That is, X. VPI / VCI at the CSR receiving port of the dedicated VC from 1 to CSR; The correspondence relationship with the VPI / VCI at the CSR transmission port of the dedicated VC 1 is stored as an ATM level routing table. By performing such settings, a bypass pipe that directly connects dedicated VCs belonging to two logical networks (IP subnets) is formed.
[0116]
X. 1 to Y. 1 to perform packet transfer to X.1. 1 to Y. X.1 by sending the packet to the dedicated VC for X.1. 1 is sent from the CSR to the CSR, and the ATM cell remains in the ATM cell by referring to the ATM level routing table in the CSR. 1 to the dedicated VC, and Y. Sent to 1.
[0117]
In addition, here, it has been described that the packet transmitted in the dedicated VC is transferred in units of ATM cells as a direct connection of the dedicated VC. However, the packet transmitted in the dedicated VC is transmitted in units of AAL (ATM Adaptation Layer) frames. By transferring the data, the dedicated VC may be directly connected. In this case as well, AAL frame transfer can be performed by referring to the ATM level routing table. In any of the above cases, the packet is transferred without performing analysis processing at the network layer (for example, IP) level.
[0118]
Also, for the packet transmitted by the dedicated VC, the network layer level routing table reference process for determining the VC to be output from the final destination address of the packet is not performed, but other network layer level processes (IP In this case, a process for reducing TTL (Time To Live) and checksum calculation may be performed and transferred to the dedicated VC to the next node may be directly connected to the dedicated VC. Also in this case, by referring to the above ATM level routing table, the VC to be output can be determined and packet transfer can be performed. In this case, only a part of the processing at the network layer level is performed and the packet is transferred.
[0119]
The present invention is applicable regardless of the CSR operation described above.
[0120]
FIG. 22 shows an example of a CSR configuration diagram. Reference numeral 301 denotes an IP processing unit that performs network layer level processing, 302 denotes an AAL processing unit that converts an ATM cell into an AAL frame, and 303 denotes an ATM switch that performs cell transfer. This ATM switch can copy an input cell and output it to a plurality of output I / Fs.
[0121]
The IP processing unit (301), the AAL processing unit (302), the input VC-flow correspondence table (311), and the management unit (309) are collectively referred to as an upper layer processing unit (310). The IP processing unit (301) has an input processing unit (307), an output processing unit (306), and an IP route table (304), and the ATM switch (303) has an ATM route table (305). The input VC-flow correspondence table (311) stores a flow to be input from a certain VC. The management unit (309) refers to or writes the IP route table and the ATM route table according to the input VC-flow correspondence table.
[0122]
In the above configuration, the IP processing unit is described. However, the network layer processing can be performed not only in the IP but also in other network layers. In the following description, the case where the network layer is IP will be described.
[0123]
(Specific example 1)
The CSR operation when a plurality of identical packets are not received by the CSR as in the first embodiment will be described. In CSR, when an input VC and an output VC are directly connected, a packet flows only to the directly connected VC. This prevents the packet from reaching recipients who are participating in multicast but not directly connected. In this specific example, a method for solving the above problem while flowing the same packet received by the CSR downstream so as not to overlap will be described.
[0124]
A case where the router (R3) in FIG. 1 is a CSR will be taken up. FIG. 23 is a diagram centered on R3.
[0125]
A packet arrives at the CSR from the subnet A through three VCs of VC0, VC1, and VC2. Assume that these VCs are set so that the following packets flow. In VC1, packets of sender address S, destination address G1, and destination port 1 flow. In VC0, packets other than the destination port 1 flow with packets of the sender address S and the destination address G1. In VC2, a packet with a sender address S and a destination address G2 flows. Hereinafter, a set of the sender address S, the destination address G1, and the destination port 1 is represented as (S, G1, 1).
[0126]
It is assumed that the nodes participating in the destination addresses G1 and G2 exist in the subnet D and the subnet E. This means that a packet received from subnet A must be sent to subnet D and subnet E. It is assumed that the participant in the subnet D requests a specific quality of service for the flow of the destination address G1 and the destination port 1, and the participant of the subnet E does not request the flow.
[0127]
The ATM cell arriving at VC0 is transferred to the upper layer processing unit, and the output I / F is assembled from the cell to the packet. The packet is converted into a cell and sent to VC3 and VC6. A cell arriving at VC1 is directly transferred to VC4, transferred to the higher layer processing unit, and transmitted to VC6. The cell received by VC2 is directly transferred to VC5 and VC7.
[0128]
What is important here is that the cell is copied by the ATM switch and transferred to the upper layer processing unit when it is directly connected to only one of the recipients of the received packet. This enables packets to be sent to participants who are not directly connected.
[0129]
The above operation will be described with reference to flowcharts (FIGS. 24 and 25), an IP route table 304 in FIG. 22 (FIG. 27), and an ATM route table 305 in FIG. 22 (FIG. 26).
[0130]
When the packet (S, G1, 2) arrives from the VC0 as an ATM cell, the ATM switch outputs the cell according to the flowchart of FIG. First, the ATM routing table (a) in FIG. 26 is searched using the input I / F and the input VC as keys (S41).
[0131]
Since VC0 is input I / F = a and input VC = VC0, the output VC pointer is 1. Look at the entry of address 1 in the ATM routing table (b) from the output VC pointer. Since this is output I / F = upper layer, the cell is passed to the upper layer processing unit (S42). Since there is no next pointer in the ATM path table (b) (No in S43), the process is completed.
[0132]
The cell that has passed to the upper layer processing unit collects a plurality of cells to assemble a packet, and transfers the packet according to the flowchart of FIG.
[0133]
Since the packet of (S, G1, 2) has arrived, the IP route table (a) in FIG. 27 is searched with the best match using (S, G1, 2) as a key (S45). It matches the entry of (S, G1,-), and it can be seen that the output VC pointer is 1. Since the output VC pointer is 1, the output I / F at address 1 in the IP route table (b) = b, the output VC = VC3, the direct connection = no, and the next pointer = 2 are known.
[0134]
Since direct connection = no (S46 No), the packet is sent to the output I / F = b and the output VC = VC3 (S47). Since the next pointer = 2 (S48), the address 2 in the IP route table (b) is seen (S49) and the same operation is performed. A packet is transmitted to output I / F = c and output VC = VC6 (S47). Since the next pointer = X, the packet transfer process is terminated.
[0135]
Next, a case where the packet (S, G1, 1) is transferred to VC1 will be described. Since the transfer method in the ATM switch and the transfer method in the upper layer processing unit are the same as those in the case of VC0, they will be briefly described. When a cell arrives from VC1, the ATM switch refers to the ATM transfer table, and transmits a packet to the upper layer such as output I / F = b and output VC = VC4. Here, the cell to be directly transferred is copied and passed to the upper layer so that the packet does not reach a participant who is not directly connected.
[0136]
In the upper layer processing unit, when the IP route table (a) is searched with the best match using (S, G1, 1) as a key, output pointer = 3, and output I / F = b, output from IP route table (b) It can be seen that VC = VC4, next pointer = 4, direct connection = yes.
[0137]
Since direct connection = yes (S46 Yes), the next pointer is tried without being output to this VC (S48). Next, since it can be seen that the output I / F = c, the output VC = VC6, and the direct connection = no, the packet is transmitted to the output I / F = c and the output VC = VC6. As a result, the packet (S, G1, 1) reaches the participants (corresponding to VC6) that are not directly connected.
[0138]
A cell that has arrived at VC2 is output from the ATM transfer table to output I / F = b, output VC = VC5 and output I / F = c, and output VC = VC7. Since no packet arrives at the upper layer processing unit, there is no packet transfer in the upper layer processing unit. For the packets of the sender address S and the destination address G2, there is no participating node that is not directly connected, and therefore it is not necessary to copy the cell for passing the packet to the upper layer.
[0139]
By using the above method, it becomes possible to transmit a packet to all the group participants even if a direct connection is made when a multicast packet is transmitted.
[0140]
When the above method is executed, it is necessary to determine whether to copy the cell with the ATM switch and pass it to the upper layer processing unit. This is determined by the management unit 309 in FIG. 22 by referring to the IP route table (304) in FIG. 27 and the input VC and flow correspondence table (311) in FIG. 28, and sets the ATM route table (305). To do.
[0141]
From the correspondence table of the input VC and the flow, the flow flowing at the input VC can be understood. When the flow is searched in the IP route table and all of the output VCs are not directly connected, or when all of the output VCs are directly connected, it is not necessary to copy the cell to the upper layer processing unit by the ATM switch. When a part of the output VC is directly connected and the other is not directly connected, it is necessary to copy the cell to the upper layer processing unit by the ATM switch. An ATM routing table is set based on this determination. Specifically:
[0142]
It can be seen from FIG. 28 that a packet of (S, G1, 1) flows through VC1. When searching FIG. 27 using (S, G1, 1) as a key and looking at the route table (b), there is one directly connected VC (VC4) and one VC not directly connected (VC6). With respect to VC1, it is necessary to copy and pass a cell to an upper layer processing unit by an ATM switch.
As for VC2, it can be seen from FIG. 28 that the packet of (S, G2, −) flows, and when FIG. 27 is searched using this as a key, it is directly connected to two VCs (VC5, VC7). It can be seen that there is no need to copy and pass the cell.
[0143]
The ATM routing table shown in FIG. 26 is set based on the information thus obtained. In the ATM routing table, since VC0 is the default VC, it is only passed to the upper layer, VC1 is stored in the correspondence relationship so as to be directly connected to VC4, and VC2 is connected so as to be directly connected to VC5 and VC7. The correspondence is stored. Here, for VC1, when it is found that it is necessary to copy and pass a cell to the upper layer, the next pointer of VC4 is set, and the upper layer is written in the entry indicated by the next pointer.
[0144]
In FIG. 23, if there is a node participating in the destination address G2 in the subnet F (not shown), and the VC 8 there is not directly connected to the VC 2, the cell from the VC 2 is copied in the same manner. Then, the packet of (S, G2, −) reaches the VC 8 by passing it to the upper layer.
[0145]
The characteristics of this example are summarized as follows. In order to forward a packet to a plurality of destination nodes in multicast communication, a packet received from the first node (subnet A) is sent to a plurality of second nodes (that belong to a logical network different from the first node). When transferring to subnets D and E), to the first virtual connection (VC1) capable of receiving packets from the first node and to a specific node (subnet D) among the plurality of second nodes A correspondence relationship with the second virtual connection (VC4) capable of transmitting a packet is stored, and a direct transfer is performed according to the correspondence relationship, and the specific node among the plurality of second nodes is caused by the direct transfer. When it is determined that at least a part of the packet destined for the destination node is not transferred to any other node (subnet E) Duplicates the packet received in the first virtual connection (VC1) and performs a transfer process at the network layer level. The packet subjected to this process is sent to a node (subnet E) other than the specific node. Send.
[0146]
More specifically, the correspondence relationship with the first virtual connection is stored corresponding to the flow (S, G1, 1) to which the packet to be received by the first virtual connection (VC1) belongs. When the third virtual connection (VC6) in which the correspondence relationship with the first virtual connection is not stored in addition to the second virtual connection (VC4) is stored, the transfer is not performed. Make a decision.
[0147]
On the other hand, corresponding to the flow (S, G2, −) to which the packet to be received in the first virtual connection (VC2) belongs, the correspondence relationship with the first virtual connection is stored. In addition to the virtual connections (VC5 and VC7), if there is no third virtual connection in which the correspondence relationship with the first virtual connection is not stored, it is not determined that the transfer is not performed.
[0148]
(Specific example 2)
In the case where a plurality of identical packets are received by CSR as in Reference Embodiment 2, a method of eliminating duplication of input packets by CSR and transferring the packets to all recipients will be described.
[0149]
A configuration diagram of the CSR is shown in FIG. Since it is almost the same as the CSR configuration shown in FIG. 22, only the differences will be described. A packet discard table (308) is added to the IP processing unit (301). By looking at the packet discard table in the input processing unit (307), it is possible to prevent processing of duplicate packets.
[0150]
The CSR operation will be described with reference to FIG. FIG. 30 shows a case where the router (R3) of FIG. 1 is a CSR, and is a VC setting diagram centered on R3. The I / F from the ATM switch to the subnet A is called a, the I / F to the subnet D is b, and the I / F to the subnet C is c. The I / F from the ATM switch to the upper layer processing unit is referred to as “upper layer”.
[0151]
The ATM route table of R3 is shown in FIG. 31, the IP route table is shown in FIG. 32, and the packet discard table is shown in FIG.
[0152]
It is assumed that the packet of destination address G is transferred from VC0 (default VC), and the packet of (S, G, 1) is transferred from VC1 (dedicated VC).
[0153]
Assume that a cell of a packet of (S, G, 1) has arrived from VC0. The ATM switch operates in accordance with the flowchart of FIG. 24 with reference to the ATM routing table of FIG. 31, so that the cell is transferred to the upper layer by VC0, and the upper layer processing unit reassembles the packet. The input processing unit (307) of the upper layer processing unit refers to the packet discard table shown in FIG. 33 and confirms whether the packet of (S, G, 1) should be discarded. Since the packet discard table is written to discard packets of (S, G, 1) whose input VC is other than VC1, the packet is discarded.
[0154]
Next, assume that a cell of a packet of (S, G, 2) has arrived from VC0. This cell is also passed to the upper layer processing unit as described above, and the packet processing table is confirmed by the input processing unit. Since there is no entry of (S, G, 2) in the packet discard table, the packet is not discarded.
[0155]
In order to output this packet, the output processing unit performs packet output processing with reference to the IP route table of FIG. This output processing follows the flowchart shown in FIG. It can be seen that the IP route table is searched with the best match and output to the output I / F = “upper layer” and the output VC = VC2 and VC4.
[0156]
When the packet is divided into cells and output to this VC, the ATM switch operates in accordance with the flow chart of FIG. 24 with reference to the ATM routing table of FIG. 31, so that the cell of VC2 has output I / F = b, output VC = VC2 The cell of VC4 is output with output I / F = c and output VC = VC4.
[0157]
On the other hand, it is assumed that a cell of a packet (S, G, 1) has arrived from VC1. This cell is transferred to VC3 by the ATM switch referring to the ATM route table of FIG. 31 and operating according to the flowchart of FIG. 24, and is duplicated by the ATM switch and passed to the upper layer processing unit.
[0158]
Thereafter, the packet discard table is searched by the input processing unit using (S, G, 1) as a key. The retrieved entry is written so as to discard other than input VC = VC1, so this packet is not discarded. Then, the output processing unit outputs this packet according to the IP route table. Since the output method is the same as that when a packet is input from VC0 described above, description thereof is omitted.
[0159]
In this specific example, when a cell coming from the dedicated VC (VC1) is directly connected and transferred, the cell is directly transferred to the downstream dedicated VC (VC3), copied by the ATM switch, and passed to the upper layer. If the cell from the dedicated VC (VC1) is not directly transferred, it is transferred to the upper layer as usual (this is transferred to VC2, VC3 and VC4 by ATM and IP route table different from those in FIGS. 31 and 32). Will be done). That is, in this specific example, regardless of whether direct transfer is performed or not, the cell coming from the dedicated VC is passed from the ATM switch to the upper layer.
[0160]
The packet discard table is set by the management unit 309 in FIG. 29 when the packet that flows through VC1 is (S, G, 1) is notified from S by the input VC-flow correspondence table (311 in FIG. 33). ) And the packet discard table (308) is entered so that packets of (S, G, 1) from other than VC1 are discarded.
[0161]
Further, the management unit 309 uses the direct connection management table (the input VC-flow correspondence table 311 in FIG. 29 constitutes a part thereof) as in Embodiment 4 to be described later to determine whether or not to perform direct transfer. The ATM and the IP routing table are also changed when switching between.
[0162]
Note that the packet output processing of this embodiment can also be realized by the method of Reference Embodiment 2 described above. Specifically, the output process is performed according to the flowchart of FIG. 15 (search method that is not the best match), and the output VC pointer of the packet of (S, G, 1) is set to 3 in FIG. The output I / F = “upper layer”, the output VC = VC4, and the next pointer = X may be added to the address 3 in FIG.
[0163]
The characteristics of this example are summarized as follows. In order to forward packets toward a plurality of destination nodes in multicast communication, a packet received from the first node (subnet A) is sent to a second node (subnet D) belonging to a logical network different from the first node. ), The first and second virtual connections (VC0 and VC1) from the first node receive at least a part of the packets destined for the destination node in duplicate. A third packet capable of transmitting the packet to the second virtual connection (VC1) and the second node by selecting and discarding the duplicate packet among the packets received by the first virtual connection (VC0); By storing the correspondence with the virtual connection (VC3), when direct transfer is performed according to this correspondence, the first The packet received at the virtual connection (VC1) is duplicated and subjected to transfer processing at the network layer level, and the packet subjected to this processing is sent to at least the second node as a virtual connection other than the third virtual connection ( VC2). On the other hand, when the direct transfer is not performed, packet duplication is not performed.
[0164]
(Specific example 3)
When a plurality of identical packets are received by CSR as in Reference Embodiment 2, another method for eliminating duplication of input packets by CSR and transferring the packets to all recipients will be described.
[0165]
If the dedicated VC input to the CSR is directly connected, the packet is discarded on the input side, and if the dedicated VC is not directly connected, the same flow as that flowing to the dedicated VC is received from the default VC. Discard the packet.
[0166]
A case where the dedicated VC is directly connected will be described with reference to FIG. The input process is the same as in the second specific example, and the output process is performed by searching for the best match according to the flowchart of FIG. FIG. 35 shows an IP route table, a packet discard table, and an input VC-flow correspondence table in this case. Since it can be seen from the input VC-flow correspondence table that VC1 is directly connected, nothing is written in the packet discard table. As a result, the input packet is not discarded. The input packet is sent to VC2 and VC4 according to the flowchart of FIG.
[0167]
Next, the case where the dedicated VC is not directly connected will be described with reference to FIG. FIG. 37 shows an IP route table, a packet discard table, and an input VC-flow correspondence table in this case. Since it can be seen from the input VC-flow correspondence table that VC1 is not directly connected, it is entered in the packet discard table so that packets other than those from (S, G, 1) and from VC1, which is a dedicated VC, are discarded. To do. Thus, the packet of (S, G, 1) is discarded when it comes from VC0, and is output when it comes from VC1. The output process follows the flowchart of FIG. 25 as described above. The packet (S, G, 2) is output to VC2 and VC4, and the packet (S, G, 1) is output to VC2, VC3 and VC4.
[0168]
In the above input VC-flow correspondence table, when the upstream node notifies the flow to be sent to a certain VC, the input VC and the flow are filled in. The field is filled. The packet discard table is changed by the management unit in FIG. 29 when it is found that the direct connection field of the input VC-flow correspondence table has been changed from yes to no or vice versa.
[0169]
29 uses the direct connection management table (the input VC-flow correspondence table is a part thereof) as in the fourth embodiment to be described later, and the ATM when switching whether or not to perform direct transfer. The IP routing table is also changed. Although not shown in FIGS. 35 and 37, when the ATM routing table is not directly connected, the cells coming from VC0 and the cells coming from VC1 are set to be transferred to the upper layer and directly connected. If so, the setting is changed so that the cell coming from VC0 is transferred to the upper layer, and the cell coming from VC1 is transferred to VC3.
[0170]
The characteristics of this example are summarized as follows. In order to forward packets toward a plurality of destination nodes in multicast communication, a packet received from the first node (subnet A) is sent to a second node (subnet D) belonging to a logical network different from the first node. ), The first and second virtual connections (VC0 and VC1) from the first node receive at least a part of the packets destined for the destination node in duplicate. When the correspondence between the second virtual connection (VC1) and the third virtual connection (VC3) capable of transmitting a packet to the second node is stored, and direct transfer is performed according to this correspondence, The packet received at the first virtual connection (VC0) is transferred to the network layer level, and this processing is performed. Transmitted using the third virtual connection other than virtual connection to at least the second node of applied packets (VC2). On the other hand, when the direct transfer is not performed, the duplicate packet is selected and discarded from the packets received by the first virtual connection (VC0).
[0171]
In the present embodiment, the packets flowing in the directly connected virtual connection may be all packets destined for a plurality of destination nodes in multicast communication, or packets belonging to a flow that should provide a specific quality of service. It may be. In the latter case, a duplicated or duplicated packet that is determined not to be forwarded is a packet belonging to a flow that should provide a specific quality of service among a plurality of destination nodes, Other packets are transferred using virtual connections that are not directly connected.
[0172]
In the latter case, a method of transmitting a packet belonging to a flow that should provide a specific quality of service to a directly connectable virtual connection, and transmitting other packets to a plurality of destination nodes to a virtual connection that is not directly connected (specific example) 1) and a method of transmitting a packet belonging to a flow that should provide a specific quality of service to a directly connectable virtual connection and transmitting all packets destined for a plurality of destination nodes to a virtual connection that is not directly connected (specific example 2 and However, the present invention can be applied to any of them.
[0173]
In addition, when setting a virtual connection that can be directly connected in response to a request from at least one of a plurality of destination nodes of multicast communication, it can be directly connected only between nodes through which a packet to the destination node that made this request passes. A virtual connection that can be directly connected to all the nodes following the output interface is set for the output interface that has a method for setting a virtual connection and at least one node through which a packet to the requested destination node passes. Although there is a method, the present invention can be applied to any of them.
[0174]
【The invention's effect】
According to the first aspect of the present invention, all the nodes to be received can be received by all the nodes participating in the multicast group including the receivers that are not directly connected. Further, according to the second invention, in addition to this, it is possible to prevent the duplicate packet from being further transmitted to the next node through a plurality of virtual connections.
[Brief description of the drawings]
FIG. 1 is a network configuration diagram.
FIG. 2 is a network configuration diagram of Reference Embodiment 1 and Specific Example 1;
FIG. 3 is a configuration diagram of a transmission host.
FIG. 4 is a configuration diagram of a router according to the first embodiment.
FIG. 5 is a flowchart showing an example of a packet output processing procedure in the network layer processing unit;
FIG. 6 is a diagram showing an example of a route table of a transmission host according to the first embodiment and specific example 1;
FIG. 7 is a diagram illustrating an example of a route table of a router according to the first embodiment and a specific example 1;
8 is a network configuration diagram of Reference Embodiment 1 and Specific Example 2. FIG.
FIG. 9 is a diagram illustrating an example of a route table of a transmission host according to the first embodiment and a specific example 2;
FIG. 10 is a diagram illustrating an example of a route table of a router according to the first embodiment and a specific example 2;
FIG. 11 is a network configuration diagram of Reference Embodiment 1 and Specific Example 3;
FIG. 12 is a diagram illustrating an example of a route table of a transmission host according to the first embodiment and a specific example 3;
FIG. 13 is a diagram illustrating an example of a route table of a router according to the first embodiment and a specific example 3;
14 is a network configuration diagram of Reference Embodiment 2. FIG.
FIG. 15 is a flowchart showing another example of a packet output processing procedure in the network layer processing unit;
FIG. 16 is a diagram showing an example of a route table of a transmission host according to the second embodiment.
FIG. 17 is a configuration diagram of a router according to a second embodiment.
FIG. 18 is a diagram showing an example of a route table of a router according to the second embodiment.
FIG. 19 is a diagram showing an example of a packet discard table according to the second embodiment.
FIG. 20 is a configuration diagram of a receiving host according to the second embodiment.
FIG. 21 is a diagram for explaining the operation of a CSR.
FIG. 22 is a configuration diagram of the CSR according to the first embodiment and the first specific example.
FIG. 23 is a VC setting diagram in the CSR of the first embodiment and specific example 1;
FIG. 24 is a flowchart showing the operation of the ATM switch of the first embodiment.
FIG. 25 is a flowchart showing the operation of the IP processing unit according to the first embodiment and specific examples 1 and 3;
FIG. 26 is a diagram showing an example of an ATM path table according to the first embodiment and a specific example 1;
FIG. 27 is a diagram showing an example of an IP route table according to the first embodiment and a specific example 1;
FIG. 28 is a diagram showing an example of an input VC-flow correspondence table according to the first embodiment and a specific example 1;
FIG. 29 is a configuration diagram of the CSR of the first embodiment and specific examples 2 and 3.
30 is a VC setting diagram in the CSR of Embodiment 1 and Specific Example 2. FIG.
FIG. 31 is a diagram illustrating an example of an ATM path table according to the first embodiment and a specific example 2;
FIG. 32 is a diagram illustrating an example of an IP route table according to the first embodiment and a specific example 2;
FIG. 33 is a diagram showing an example of a packet discard table and an input VC-flow correspondence table according to the first embodiment and a specific example 2;
FIG. 34 is a VC setting diagram in a certain state in the CSR according to the first embodiment and the third specific example.
FIG. 35 is a diagram illustrating an example of a state in which there are an IP route table, a packet discard table, and an input VC-flow correspondence table according to the first embodiment and a specific example 3;
FIG. 36 is a VC setting diagram in another state in the CSR according to the first embodiment and the specific example 3;
FIG. 37 is a diagram illustrating an example of another state of the IP route table, the packet discard table, and the input VC-flow correspondence table according to the first embodiment and the specific example 3;
[Explanation of symbols]
10, 20, 30 ... Network layer processing section
11, 22 ... Output processing unit
12, 23, 306 ... route table
13, 24, 34 ... Network I / F
21, 31, 307 ... input processing unit
25, 35, 308 ... Packet discard table
310 ... Upper layer processing unit
301 ... IP processing unit
302 ... AAL processing section
303 ... ATM switch
304 ... IP routing table
305 ... ATM routing table
309 ... Management Department
311 ... Input VC-Flow correspondence table

Claims (9)

マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノードからパケットを受信する第1の仮想コネクションから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する複数の第2のノードへパケットを転送する、前記第2のノードのうちの少なくとも特定のノードへパケットを送信可能な第2の仮想コネクションを用いて転送するパケット転送方法において、
前記第1の仮想コネクションと、前記第2の仮想コネクションとの対応関係を記憶し、
前記第1の仮想コネクションにて受信されたパケットを記憶された前記対応関係に従ってネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送するとともに、このネットワークレイヤレベルの転送処理の一部又は全部を行わない転送に起因して前記複数の第2のノードのうち前記特定のノード以外のノードへ、前記宛先ノードへ向かうパケットのうち少なくとも一部が転送されなくなると判断される場合には、前記第1の仮想コネクションにて受信されたパケットを複製してネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを前記特定のノード以外のノードへ送信することを特徴とするパケット転送方法。
In order to perform packet forwarding to a plurality of destination nodes in multicast communication, a plurality of packets received from a first virtual connection that receives a packet from the first node belong to a logical network different from the first node. A packet transfer method for transferring a packet to a second node of the second node using a second virtual connection capable of transmitting the packet to at least a specific node of the second nodes,
Storing a correspondence relationship between the first virtual connection and the second virtual connection;
The packet received in the first virtual connection is transferred in the second virtual connection without performing part or all of the transfer processing at the network layer level in accordance with the stored correspondence, and the network layer Due to the transfer that does not perform part or all of the level transfer process, at least a part of the packets destined for the destination node are not transferred to a node other than the specific node among the plurality of second nodes. If it is determined, the packet received in the first virtual connection is duplicated and subjected to network layer level transfer processing, and the packet subjected to this processing is transmitted to a node other than the specific node. And a packet transfer method.
前記第1の仮想コネクションにて受信すべきパケットの属するフローに対応して、前記第1の仮想コネクションとの対応関係が記憶されている前記第2の仮想コネクションの他に、前記第1の仮想コネクションとの対応関係が記憶されていない第3の仮想コネクションが記憶されている場合に、前記複数の第2のノードのうち前記特定のノード以外のノードへ、前記宛先ノードへ向かうパケットのうち少なくとも一部が転送されなくなると判断することを特徴とする請求項1記載のパケット転送方法。  In addition to the second virtual connection in which the correspondence relationship with the first virtual connection is stored in correspondence with the flow to which the packet to be received in the first virtual connection belongs, the first virtual connection When a third virtual connection that does not store a correspondence relationship with a connection is stored, at least one of the packets destined for the destination node to a node other than the specific node among the plurality of second nodes. 2. The packet transfer method according to claim 1, wherein a part of the packet is determined not to be transferred. マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノードからパケットを受信する第1の仮想コネクションから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノードへパケットを転送する、前記第2のノードのうちの少なくとも特定のノードへパケットを送信可能な第2の仮想コネクションを用いて転送するパケット転送方法において、
前記第1のノードからの前記第1及び第3の仮想コネクションにて、前記宛先ノードへ向かうパケットのうち少なくとも一部を重複して受信し、
前記第1の仮想コネクションにて受信されたパケットのうち前記重複するパケットを選択して廃棄し、
前記第3の仮想コネクションと、前記第2のノードへパケットを送信可能な第2の仮想コネクションとの対応関係を記憶することにより、前記第3の仮想コネクションにて受信されたパケットをこの記憶された対応関係に従ってネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送している場合に、前記第3の仮想コネクションにて受信されたパケットを複製してネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを少なくとも前記第2のノードへ第2の仮想コネクション以外の仮想コネクションを用いて送信することを特徴とするパケット転送方法。
In order to forward a packet to a plurality of destination nodes in multicast communication, a packet received from a first virtual connection that receives a packet from the first node belongs to a logical network different from that of the first node. A packet transfer method for transferring a packet to a second node using a second virtual connection capable of transmitting the packet to at least a specific node of the second nodes;
In the first and third virtual connections from the first node, at least part of the packets destined for the destination node are received in duplicate,
Selecting and discarding the duplicate packet among the packets received in the first virtual connection;
Said third virtual connection, by storing the correspondence between said second virtual connection capable of transmitting packets to the second node, the stored packets received by the third virtual connection If the second virtual connection is transferred without performing part or all of the transfer processing at the network layer level according to the correspondence relationship, the packet received on the third virtual connection is copied. A packet transfer method comprising: performing a transfer process at a network layer level, and transmitting a packet subjected to this process to at least the second node using a virtual connection other than the second virtual connection.
マルチキャスト通信における複数の宛先ノードへ向けてパケット転送を行うために、第1のノードからパケットを受信する第1の仮想コネクションから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノードへパケットを転送する、前記第2のノードのうちの少なくとも特定のノードへパケットを送信可能な第2の仮想コネクションを用いて転送するパケット転送方法において、
前記第1のノードからの前記第1及び第3の仮想コネクションにて、前記宛先ノードへ向かうパケットのうち少なくとも一部を重複して受信し、
前記第3の仮想コネクションと、前記第2のノードへパケットを送信可能な第2の仮想コネクションとの対応関係を記憶することにより、前記第3の仮想コネクションにて受信されたパケットをこの記憶された対応関係に従ってネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送している場合に、前記第1の仮想コネクションにて受信されたパケットにネットワークレイヤレベルの転送処理を施し、この処理の施されたパケットを少なくとも前記第2のノードへ第2の仮想コネクション以外の仮想コネクションを用いて送信し、
一方、前記第3の仮想コネクションにて受信されたパケットにネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送していない場合に、前記第1の仮想コネクションにて受信されたパケットのうち前記重複するパケットを選択して廃棄することを特徴とするパケット転送方法。
In order to forward a packet to a plurality of destination nodes in multicast communication, a packet received from a first virtual connection that receives a packet from the first node belongs to a logical network different from that of the first node. A packet transfer method for transferring a packet to a second node using a second virtual connection capable of transmitting the packet to at least a specific node of the second nodes;
In the first and third virtual connections from the first node, at least part of the packets destined for the destination node are received in duplicate,
Said third virtual connection, by storing the correspondence between said second virtual connection capable of transmitting packets to the second node, the stored packets received by the third virtual connection When the second virtual connection is transferred without performing part or all of the transfer processing at the network layer level according to the corresponding relationship, the packet received at the first virtual connection is transferred to the network layer level. The packet subjected to this processing is transmitted to at least the second node using a virtual connection other than the second virtual connection,
On the other hand, when the packet received through the third virtual connection is not transferred through the second virtual connection without performing part or all of the transfer processing at the network layer level, the first virtual connection A packet transfer method, comprising: selecting and discarding the duplicate packet among packets received by a connection.
少なくとも一つの仮想コネクション型ネットワークと接続し、第1のノードからパケットを受信する第1の仮想コネクションから受信したパケットを、前記第1のノードとは異なる論理ネットワークに属する第2のノードへパケットを転送する、前記第2のノードのうちの少なくとも特定のノードへパケットを送信可能な第2の仮想コネクションを用いて転送するノード装置において、
前記第1の仮想コネクションと、前記第2の仮想コネクションとの対応関係を記憶することのできる記憶手段と、
前記第1のノードから受信したパケットにネットワークレイヤレベルの転送処理を施すことにより次段ノードを決定し、この処理の施されたパケットを、決定された次段ノードへ転送する第1の転送手段と、
前記第1の仮想コネクションにて受信された、マルチキャスト通信における複数の宛先ノードのいずれかへ向かうパケットを、前記記憶手段に前記対応関係が記憶されている場合に該対応関係に従って、前記第1の転送手段のネットワークレイヤレベルの転送処理の一部又は全部を行わずに前記第2の仮想コネクションにて転送する第2の転送手段と、
前記第2の転送手段による転送を行うことにより、前記複数の第2のノードのうち前記特定のノード以外のノードへ、前記宛先ノードへ向かうパケットのうち少なくとも一部が転送されなくなると判断される場合に、前記第1の仮想コネクションにて受信されたパケットを複製して前記第1の転送手段へ渡す手段とを具備したことを特徴とするノード装置。
The packet received from the first virtual connection connected to at least one virtual connection type network and receiving the packet from the first node is sent to the second node belonging to a logical network different from the first node. In a node device that transfers using a second virtual connection that can transmit a packet to at least a specific node of the second nodes,
Storage means capable of storing a correspondence relationship between the first virtual connection and the second virtual connection;
First transfer means for determining a next node by performing a transfer process at a network layer level on a packet received from the first node, and transferring the packet subjected to the process to the determined next node When,
If the correspondence relation is stored in the storage means for the packet received in the first virtual connection and destined for one of a plurality of destination nodes in multicast communication, the first relation is stored in the storage means. A second transfer means for transferring by the second virtual connection without performing part or all of the transfer process at the network layer level of the transfer means;
By performing the transfer by the second transfer means, it is determined that at least a part of the packets destined for the destination node are not transferred to a node other than the specific node among the plurality of second nodes. In this case, the node apparatus further comprises means for replicating a packet received through the first virtual connection and passing it to the first transfer means.
前記宛先ノードへ向かうパケットのうち少なくとも一部が前記第1の仮想コネクションのみにて受信され、この第1の仮想コネクションにて受信されるパケットを転送すべき仮想コネクションとして、前記第1の仮想コネクションとの対応関係が記憶されている前記第2の仮想コネクション以外の、前記第1の仮想コネクションとの対応関係が記憶されていない仮想コネクションが記憶されている場合に、前記宛先ノードへ向かうパケットのうち少なくとも一部が前記次段ノードへ転送されなくなると判断することを特徴とする請求項5記載のノード装置。  At least a part of the packets destined for the destination node is received only by the first virtual connection, and the first virtual connection is a virtual connection to which the packet received by the first virtual connection is to be transferred. If a virtual connection that does not store the correspondence relationship with the first virtual connection other than the second virtual connection that stores the correspondence relationship with the first virtual connection is stored, the packet to the destination node 6. The node device according to claim 5, wherein at least a part of the node device is determined not to be transferred to the next node. 前記宛先ノードへ向かうパケットのうち少なくとも一部が前記第1の仮想コネクション及び第3の仮想コネクションにて重複して受信された場合に、前記第3の仮想コネクションにて受信されたパケットのうち前記重複するパケットを選択して廃棄する手段を更に備え、
前記第1の転送手段は、この手段により廃棄されなかったパケットを転送するものであり、
前記第1の仮想コネクションについての前記対応関係が前記記憶手段に記憶されている場合に、前記複数の第2のノードのうち前記特定のノード以外のノードへ、前記宛先ノードへ向かうパケットのうち少なくとも一部が転送されなくなると判断することを特徴とする請求項5記載のノード装置。
When at least a part of the packets destined for the destination node is received redundantly in the first virtual connection and the third virtual connection, the packet received in the third virtual connection Means for selecting and discarding duplicate packets;
The first transfer means transfers a packet that has not been discarded by this means,
When the correspondence relationship for the first virtual connection is stored in the storage unit, at least one of the packets destined for the destination node to a node other than the specific node among the plurality of second nodes. 6. The node device according to claim 5, wherein a part of the node device is determined not to be transferred .
前記第1の仮想コネクション以外の第3の仮想コネクションにて、前記第1のノードから前記第1の仮想コネクションにて受信されたのと同じパケットを重複して受信した場合に、前記第3の仮想コネクションにて受信されたパケットのうち前記重複したパケットを選択して前記第1の転送手段による転送より前に廃棄する廃棄手段とを具備したことを特徴とする請求項5記載のノード装置。When the same packet received in the first virtual connection from the first node is received in a third virtual connection other than the first virtual connection, the third virtual connection 6. The node apparatus according to claim 5 , further comprising: a discarding unit that selects the duplicated packet from the packets received through the virtual connection and discards the packet before the transfer by the first transfer unit. 前記第1の仮想コネクションについての前記対応関係が前記記憶手段に記憶されていない場合に、前記廃棄手段による廃棄を行うように制御する手段を更に備えたことを特徴とする請求項8記載のノード装置。  9. The node according to claim 8, further comprising means for controlling to discard by said discarding means when said correspondence relation for said first virtual connection is not stored in said storage means. apparatus.
JP2002064717A 2002-03-11 2002-03-11 Node device and packet transfer method Expired - Fee Related JP3696166B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002064717A JP3696166B2 (en) 2002-03-11 2002-03-11 Node device and packet transfer method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002064717A JP3696166B2 (en) 2002-03-11 2002-03-11 Node device and packet transfer method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP18180396A Division JP3332733B2 (en) 1996-07-11 1996-07-11 Node device and packet transfer method

Publications (2)

Publication Number Publication Date
JP2002314605A JP2002314605A (en) 2002-10-25
JP3696166B2 true JP3696166B2 (en) 2005-09-14

Family

ID=19193055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002064717A Expired - Fee Related JP3696166B2 (en) 2002-03-11 2002-03-11 Node device and packet transfer method

Country Status (1)

Country Link
JP (1) JP3696166B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7211765B2 (en) * 2018-10-30 2023-01-24 日本電信電話株式会社 PACKET TRANSFER DEVICE, METHOD AND PROGRAM

Also Published As

Publication number Publication date
JP2002314605A (en) 2002-10-25

Similar Documents

Publication Publication Date Title
JP3332733B2 (en) Node device and packet transfer method
JP2977029B2 (en) Internet protocol switching method using high-speed ATM cell transmission and network therefor
JP3480801B2 (en) Packet transfer method and node device
JP3701476B2 (en) Data communication method
US6353596B1 (en) System and method for multipoint-to-multipoint multicasting
US6671276B1 (en) Switch based network architecture for IP multicast and integrated services
JP3649367B2 (en) Packet transmission control method and apparatus
EP1696618B1 (en) Forwarding state sharing between multiple traffic paths in a communication network
JP3319972B2 (en) System and method for hierarchical multicast routing in ATM networks
JP2000078145A (en) Boundary device conducting connection control at border of two communication networks and its method
JP2004531179A (en) Multicast method in network for point-to-point packet switching
JP2000032007A (en) Network system and method for processing ip multicast by means of radio atm
US11824759B2 (en) Transfer of secure multicast data traffic over a computing network
US6515999B1 (en) Router apparatus and method of using a virtual connection to transfer a packet
JP4742072B2 (en) Shaping device and router device
JP3696166B2 (en) Node device and packet transfer method
JPH11103297A (en) Method and device for controlling packet transmission
JP3383295B2 (en) Node device and packet transfer method
JP3471137B2 (en) Packet transmission node device and packet transfer method
JP3592876B2 (en) Multicast communication control method and node device
JP3471136B2 (en) Control information transfer method and node device
JP2004015838A (en) Virtual transfer path forming method
Grossglausera et al. SEAM: An Architecture for Scalable and E cient ATM Multipoint-to-Multipoint Communication
JP2004140869A (en) Router apparatus and packet transfer method
JPH11103294A (en) Method and device for controlling packet transmission

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041214

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050214

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050414

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20050606

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050628

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

Free format text: PAYMENT UNTIL: 20090708

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees