JP5392003B2 - 中継装置、状態通知方法、および、コンピュータプログラム - Google Patents

中継装置、状態通知方法、および、コンピュータプログラム Download PDF

Info

Publication number
JP5392003B2
JP5392003B2 JP2009247354A JP2009247354A JP5392003B2 JP 5392003 B2 JP5392003 B2 JP 5392003B2 JP 2009247354 A JP2009247354 A JP 2009247354A JP 2009247354 A JP2009247354 A JP 2009247354A JP 5392003 B2 JP5392003 B2 JP 5392003B2
Authority
JP
Japan
Prior art keywords
packet
relay
state
transmission
destination
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
JP2009247354A
Other languages
English (en)
Other versions
JP2010259037A (ja
Inventor
正信 森永
訓行 福山
英明 宮崎
純代 岡田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009247354A priority Critical patent/JP5392003B2/ja
Priority to US12/732,368 priority patent/US8503301B2/en
Publication of JP2010259037A publication Critical patent/JP2010259037A/ja
Application granted granted Critical
Publication of JP5392003B2 publication Critical patent/JP5392003B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route

Landscapes

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

Description

本発明は、パケットを転送する中継装置に関する。
近年の情報処理技術の発展に伴い、パケット交換網はメール等の単なるデータの送信のみならず、音声や映像のようなリアルタイム通信、例えば、IP電話及びIP放送等にも使用されるようになってきている。
このようなリアルタイム通信では、通信品質の監視及び管理は特に重要となる。例えば、IP電話の音声はパケットによって運ばれるが、パケットの遅延又はパケットの損失等によって音声が正確に伝わらなくなってしまうからである。
ここで、従来から用いられている通信品質の監視方式として、アクティブ方式とパッシブ方式とがある。
アクティブ方式とは、テストパケットをパケット交換網に送信し、そのレスポンス時間などを測定することによりネットワーク性能を実測する方式である。この方法では、大量のテストパケットをパケット交換網に送出する必要がある。また、1回しか起こらなかったような異常に関しては、異常発生後のテストパケットの送信による異常個所の探索は不可能である。
パッシブ方式とは、パケット交換網中を転送されるパケットを計測装置でキャプチャしてネットワーク品質を解析する方式である。この方法では、計測装置の位置に応じた大まかな障害箇所までは特定することは可能であるが、詳細な特定は非常に困難である。
そこで、ネットワーク上の複数地点に配置した監視エージェントから品質に関する情報を管理マネージャが収集し、収集した情報から品質が劣化している区間を判定する技術が提案されている(特許文献1参照)。
この技術によれば、品質が劣化している区間を知ることが可能となる。
特開2007−68093号公報
しかしながら、この技術では、品質に関する情報をどの管理マネージャに送信するのかを各監視エージェントに事前に知らせておく必要がある。言い換えれば、管理マネージャは、自身の管理下にある監視エージェントが配置されている領域の情報しか収集できないことになる。
従って、広範囲のパケット交換網の通信品質を管理しようとすれば、管理マネージャを複数設ける必要がある。また、管理マネージャ同士の情報交換を可能にする必要があることから、管理の複雑化や高コスト化を招くことになり得る。
そこで、本発明は、パケット交換網において変化等が発生した場合に、その箇所と原因とを効率的に且つ低コストで把握できるようにすることを目的とする。
本発明の形態に係る通信システムは、一方の装置から受信したパケットを他方の装置へ転送する中継装置であって、自装置がレイトコリジョンの発生を検知した状態となったことを検知する検知手段と、前記検知手段で自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成手段と、生成したパケットを所定の送信先に送信する送信手段と、有する。
上記構成の中継装置は、特定の状態となったことを検出した場合に、自装置を識別する情報と特定の状態であることを示す情報とを含ませたパケットを送信するので、当該パケットを受信した装置は、特定の状態となった箇所と原因とを知ることができる。
従って、当該パケットを受信した装置は、その箇所と原因に応じて、特定の状態への対応策を迅速に且つ正確に施すことが可能となる。
ネットワークの構成の例を示す図である。 ルータの機能的構成の例を示すブロック図である。 バッファの使用方法の例を示す図である。 図4(a)は、中継パケットの構成及び内容の例を示す図であり、図4(b)は、通知パケットの構成及び内容の例を示す図である。 ルーティングテーブルの構成及び内容の例を示す図である。 バッファ溢れが発生した場合のルータの処理を示すフローチャートである。 損失した中継パケットの送信先に対して、通知パケットを送信する場合を示す図である。 損失した中継パケットの送信元に対して、通知パケットを送信する場合を示す図である。 バッファ溢れを引き起こす直接の原因を作ったエンド端末に対して、通知パケットを送信する場合を示す図である。 バッファ溢れを発生したルータの周囲の装置に対して、通知パケットを送信する場合を示す図である。 変形例1の通知パケットの構成及び内容の例を示す図である。 受信パケット情報の構成及び内容の例を示す図である。 変形例3の通知パケットの生成・蓄積処理のフローチャートである。 バッファの使用方法の例を示す図である(実施形態2)。 バッファ溢れが発生した場合のルータの処理を示すフローチャートである(実施形態2)。 ルータの機能的構成の例を示すブロック図である(実施形態3)。 通知パケットの構成及び内容の例を示す図である(実施形態3及び4)。 ルータの機能的構成の例を示すブロック図である(実施形態4)。 ルータの機能的構成の例を示すブロック図である(実施形態5)。 通知パケットの構成及び内容の例を示す図である(実施形態5)。
<実施形態1>
実施形態1のネットワークでは、パケットロス等の不具合が発生した中継装置自身が、不具合の内容等の情報を含ませたパケットを生成し、ネットワーク上に送信するものである。
すなわち、不具合が発生した中継装置自身がパケットを生成して送信するので、不具合の発生した正確な位置と不具合の内容等とを、ネットワーク上の他の機器に知らせることが可能となる。
更に、生成したパケットの送信先は、その情報を伝えたい相手に応じてさまざまに設定できる。すなわち、不具合の生じた個所と原因とを、知る必要がある機器に対して、効率的に且つ正確に通知する事が可能となる。
従って、不具合が発生した位置と不具合の内容等を示す情報を含んだパケット(以下、「通知パケット」という。)を受信した機器は、不具合が発生した位置と不具合の内容等に応じた対応策を、迅速に且つ正確に施すことが可能となる。
以下、本発明の実施形態1における中継装置について、図面を用いて説明する。尚、実施形態1では、上述の中継装置としてルータを例に説明する。また、不具合として、バッファ溢れが生じた場合を例に説明する。尚、ルータが他の機器から受信して転送するパケットを、「中継パケット」というものとする。
<機能>
図1は、実施形態1におけるルータを用いたネットワークの構成の例を示す図である。
ネットワーク100は、エンド端末2000A〜エンド端末2000C、ルータ1000R1〜ルータ1000R7及びプローブ装置4000を含んで構成される。
また、ネットワーク100は、異なる3つの通信事業者の管理領域1〜管理領域3を含んでいる。実施形態1におけるルータは、通知パケットの宛先を自由に設定して送信するので、他の管理領域であっても情報を通知することが可能となる。
エンド端末2000Aは、いわゆるパソコンやIP電話機等の端末をいい、エンド端末2000B、Cも、エンド端末2000Aと同様に、パソコンやIP電話機等の端末である。
ルータ1000R1は、ある装置から受信したデータを他の装置に中継する機器であり、データの宛先を参照し、どの経路を通して転送すべきかを判断する。ルータ1000R2〜R7は、ルータ1000R1と同様の機能を有する。また、ルータ1000R1〜ルータ1000R7を、「ルータ1000」と総称する。
プローブ装置4000は、ネットワーク上を流れるパケットを取り込んで、ネットワークの状態を監視する機能を有する。
以下、エンド端末2000Aをエンド端末Aというものとし、エンド端末2000B等も同様とする。また、ルータ1000R1をルータR1というものとし、ルータ1000R2等も同様とする。
実施形態1では、ネットワーク100において、エンド端末からエンド端末にパケットを送信する場合を例に説明する。
次に、図2を用いて、ルータ1000について説明する。
図2は、ルータ1000の機能的構成の例を示すブロック図である。尚、ネットワーク100(図1参照)を構成するルータR1〜ルータR7は、それぞれ、ルータ1000と同様の機能を有するものとする。
ルータ1000は、制御部1100、受信部1200、送信部1300、状態検出部1400、宛先決定部1500、通知パケット送信制御部1600、通知パケット生成部1700、ルーティングテーブル記憶部1800、受信バッファ管理部3000、受信バッファ3010、中継パケット用送信バッファ管理部3100、中継パケット用送信バッファ3110、通知パケット用送信バッファ管理部3200及び通知パケット用送信バッファ3210を有する。
図2において、2つ重ねた矩形で記載している機能部は、同様の機能部が複数あることを示している。すなわち、受信部1200、送信部1300及びバッファ(3010、3110、3210)は複数ある。
制御部1100は、ルータ1000に必要なルーティングに関する処理その他の制御処理を行う他、本発明に特有の処理のための制御等を行う。
受信部1200は、パケット10を受信する機能を有する。受信部1200は、受信インターフェースである受信ポートを1個備え、受信ポートからパケット10を受信する。受信部1200は、受信したパケットを、受信バッファ管理部3000を介して受信バッファ3010に蓄積する。
また、送信部1300は、パケット11を送信する機能を有する。送信部1300は、送信インターフェースである送信ポートを1個備え、送信ポートを介してパケット11を送信する。送信するパケットは、中継パケット用送信バッファ管理部3100を介して中継パケット用送信バッファ3110から読み出される。
尚、ルータ1000は、複数のポートを有している。各ポートは、受信ポートとして用いられることもあれば、送信ポートとして用いられることもある。そして、受信ポートからパケットを受信し、送信ポートからパケットを送出する。
すなわち、ルータ1000は、各受信ポート用の受信部1200を備え、各受信ポートから受信したパケットを蓄積する受信バッファ3010を各受信ポート用に備えている。同様に、各送信ポート用の送信部1300を備え、各送信ポートから送信するパケットを蓄積しておく中継パケット用送信バッファ3110及び通知パケット用送信バッファ3210を各送信ポート用に備えている。
次に、状態検出部1400は、通知パケットを送信すべきか否かを、ルータ1000の状態を検出して判断する機能を有する。実施形態1では、ルータ1000の状態として、受信バッファ管理部3000が受信バッファ3010の状態を状態検出部1400に通知する。状態検出部1400は、通知された受信バッファ3010の状態に基づいてバッファ溢れが生じた事を検出した場合に、通知パケットを送信すると判断する。尚、どのような時に、通知パケットを送信するかは、予め状態検出部1400に記憶されているものとする。
宛先決定部1500は、ルータ1000が生成した通知パケットの宛先のIPアドレスを決定する機能を有する。通知パケットをどの装置に送信するのか、すなわち、損失したパケットの送信元である装置、送信先である装置又は原因となった端末装置などのいずれの装置に送信するのかは、予め決められているものとする。例えば、損失したパケットの宛先を、通知パケットの宛先とする等と決められている。宛先決定部1500は、その宛先の具体的なIPアドレスを求める機能を有する。
通知パケット送信制御部1600は、通知パケットの送信のタイミングを制御する機能を有する。具体的には、通知パケット用送信バッファ3210に蓄積されている通知パケットを中継パケット用送信バッファ3110に移動する。
詳細には、通知パケット送信制御部1600は、送信ポート毎に移動のタイミングを計って、通知パケットを移動する。移動のタイミングであると判断した場合は、通知パケット用送信バッファ管理部3200を介して通知パケット用送信バッファ3210から通知パケットを取り出し、取り出した通知パケットを中継パケット用送信バッファ管理部3100を介して中継パケット用送信バッファ3110に蓄積する。移動のタイミングについては、図6を用いて後で説明する。
通知パケット生成部1700は、状態検出部1400から依頼を受けて、通知パケットを生成する機能を有する。具体的には、バッファ溢れである旨を示すコード等を含んだ通知パケットを生成する。通知パケットの宛先は、宛先決定部1500に依頼して取得する。
ルーティングテーブル記憶部1800は、受信したパケットをどの経路を通して転送すべきかを判断するために参照するテーブルを記憶しておく機能を有する。
受信バッファ管理部3000は、受信部1200が受信ポートから受信したパケットを、パケットを受信した受信ポートの受信バッファ3010に蓄積する機能を有する。パケットは、FIFO(First-In First-Out)方式で蓄積する。
また、受信バッファ管理部3000は、パケット溢れが発生したことを検知して、状態検出部1400に通知する機能を有する。このパケット溢れが発生したことを検知する方法については、<バッファ>の項で説明する。
また、受信バッファ3010に蓄積してあるパケットに関して、通知パケット生成部1700等からの問い合わせに答える機能も有する。
受信バッファ3010は、パケットを蓄積しておく機能を有する。
この受信バッファ3010は、2つのバッファ領域を備える。基本バッファ領域3011と溢れ判定用バッファ領域3012とである(図3参照)。これら2つのバッファ領域については、<バッファ>の項で説明する。
尚、受信バッファ3010は、上述のように、受信ポートの個数分備えられ、受信ポートに対応付けられている。
中継パケット用送信バッファ管理部3100は、送信部1300が送信するパケットを、送信ポート毎に中継パケット用送信バッファ3110に、FIFO(First-In First-Out)方式で蓄積する機能を有する。蓄積するパケットは、制御部1100から送信ポートを指定して、渡される。
また、中継パケット用送信バッファ管理部3100は、制御部1100からの送信ポートを指定したパケットの送信指示を受け、指定された送信ポートの中継パケット用送信バッファ3110からパケットを読み出して、指定された送信ポートの送信部1300に渡す機能を有する。更に、中継パケット用送信バッファ3110に蓄積してあるパケットに関して、宛先決定部1500等からの問い合わせに答える機能も有する。
中継パケット用送信バッファ3110は、中継パケットを蓄積しておく機能を有する。尚、中継パケット用送信バッファ3110は、上述のように、送信ポートの数備えられ、送信ポートに対応づけられている。
通知パケット用送信バッファ管理部3200は、通知パケットを、送信ポート毎に通知パケット用送信バッファ3210に、FIFO方式で蓄積する機能を有する。
また、通知パケット用送信バッファ管理部3200は、通知パケット送信制御部1600から送信ポートを指定した指示を受け、指定された送信ポートの通知パケット用送信バッファ3210に蓄積されている通知パケットを、取り出して渡す機能を有する。更に、通知パケット用送信バッファ3210に蓄積してあるパケットに関して、通知パケット送信制御部1600等からの問い合わせに答える機能も有する。
通知パケット用送信バッファ3210は、通知パケットを蓄積しておく機能を有する。また、通知パケット用送信バッファ3210は、上述のように、送信ポートの数備えられ、送信ポートに対応づけられている。
上述した機能の全部または一部は、ルータ1000が有するCPUが、メモリ等に記録されているプログラムを実行することにより実現される。
<バッファ>
次に、実施形態1のバッファの使用方法について、図3を用いて説明する。
図3は、バッファの使用方法の例を示す図である。
図3において、中継パケットとは、エンド端末から送信されたパケットであり、ルータ1000により中継されるパケットである。また、通知パケットとは、ルータ1000が生成して送出するパケットである(図7〜図10、図14においても同様である。)。
まず、受信バッファ3010は、受信部1200が受信した中継パケットを、受信バッファ管理部3000を介して、一旦蓄積する。この受信バッファ3010は、上述したように基本バッファ領域3011と溢れ判定用バッファ領域3012との2つのバッファ領域を備えている。基本バッファ領域3011と溢れ判定用バッファ領域3012とは、それぞれ1個の中継パケットを記憶する容量を有する。
尚、基本バッファ領域3011は、通常、複数個の中継パケットを蓄積する容量を有するが、実施形態1では説明の便宜上、1個の中継パケットを記憶する容量を有するものとする。
中継パケットの転送処理が正常に行われている場合は、受信ポートから受信されたパケットは、受信バッファ管理部3000によって、基本バッファ領域3011に蓄積される。その後すぐに、制御部1100によって判断された送出先である送信ポートの中継パケット用送信バッファ3110に移動される。
しかし、この基本バッファ領域3011から中継パケット用送信バッファ3110へ移動する処理が行われる前に、すなわち、基本バッファ領域3011に中継パケット12が蓄積されている状態の時に、次の中継パケット13が受信ポートから受信される場合が生じ得る。
この場合、受信バッファ管理部3000は、受信した中継パケット13を溢れ判定用バッファ領域3012に蓄積する。実施形態1では、溢れ判定用バッファ領域3012に中継パケット13が蓄積された時に、バッファ溢れが発生したものとみなすものとする。すなわち、受信バッファ管理部3000は、溢れ判定用バッファ領域3012に中継パケット13を蓄積した時に、バッファ溢れを検知したこととする。
基本バッファ領域3011に蓄積されている中継パケット12は、バッファリングされているとして通常の転送処理を行うが、溢れ判定用バッファ領域3012に蓄積された中継パケット13は、損失したパケットとみなして、転送処理は行わない。
尚、受信した中継パケットを蓄積しようとした時に、基本バッファ領域3011と溢れ判定用バッファ領域3012との双方のバッファ領域に既に中継パケットが蓄積されている場合には、受信した中継パケットを削除するものとする。このようにすることで、損失が始まった最初の中継パケット13を知ることができるからである。また、損失したパケットとされた中継パケット13は、通知パケットを生成するために参照された時に溢れ判定用バッファ領域3012から削除されるものとする。
次に、中継パケット用送信バッファ3110に蓄積されている中継パケット及び通知パケットは、最初に蓄積されたパケットから順に読み出されて、送信部1300によって送信ポートから送出される。送信部1300にパケットを渡すタイミングは、制御部1100が送信ポートの帯域幅等を考慮して決定する。
従って、送信部1300がパケットを送信ポートから送出する速度より、受信部1200がパケットを受信する速度のほうが速い場合には、バッファ溢れが発生する。
実施形態1では、溢れ判定用バッファ領域3012に、中継パケットが蓄積された時にバッファ溢れが発生したと判断するものとする。このバッファ溢れは、受信バッファ管理部3000が状態検出部1400に通知し、状態検出部1400によって通知パケットを送信するか否かが判断される。
次に、通知パケット用送信バッファ3210について説明する。
通知パケット用送信バッファ3210は、通知パケット生成部1700が生成した通知パケットを蓄積する。
バッファ溢れの場合は、中継パケット用送信バッファ3100に空きが無いのが通常であることから、生成した通知パケットは、中継パケット用送信バッファ3110とは別のバッファである通知パケット用送信バッファ3200に蓄積する。
通知パケット用送信バッファ3210に蓄積された通知パケットは、最初に蓄積されたパケットから順に中継パケット用送信バッファ3100に移動される。移動のタイミングは、中継パケット用送信バッファ3110に空きができたことが通知パケット送信制御部1600によって確認されたときである。
中継パケット用送信バッファ3110に移動された通知パケットは、中継パケットと同じように、最初に蓄積されたパケットから順に送信部1300によって送信ポートから送出される。
<パケット>
以下、実施形態1のネットワーク100で用いられるパケットについて、図4を用いて説明する。
図4(a)は、中継パケットの構成及び内容の例を示す図であり、図4(b)は、通知パケットの構成及び内容の例を示す図である。
図4(a)の中継パケット1210は、IPパケットであり、IPヘッダ部とデータ部とを有する。
IPヘッダ部には、プロトコル1211、送信元IPアドレス1212及び宛先IPアドレス1213が含まれる。
プロトコル1211は、データ部を渡すべき上位のプロトコルを示している。
送信元IPアドレス1212は、当該中継パケット1210を送り出した送信元のIPアドレスであり、宛先IPアドレス1213は、当該中継パケット1210を送信する相手先のIPアドレスである。
例えば、エンド端末Aからエンド端末Bに送信された中継パケット1210の場合は、エンド端末AのIPアドレスが送信元IPアドレス1212に設定され、エンド端末BのIPアドレスが宛先IPアドレス1213に設定されている。
データ部には、当該中継パケット1210で運ぶ対象のデータ、つまり、ペイロードが挿入されている。
図4(b)の通知パケット1710は、ICMP(Internet Control Message Protocol)のパケットである。実施形態1では、バッファ溢れが発生した旨をICMPで通知する。
通知パケット1710は、IPヘッダ部とデータ部とで構成される。
IPヘッダ部には、プロトコル1711、送信元IPアドレス1712及び宛先IPアドレス1713が含まれる。
プロトコル1711には、このパケットがICMPに基づくものであることを示す「1」が設定される。
送信元IPアドレス1712は、当該通知パケット1710を送信するルータのIPアドレスが設定される。すなわち、バッファ溢れが発生したルータのIPアドレスである。
宛先IPアドレス1713には、宛先決定部1500で決定された宛先のIPアドレスが設定される。
データ部には、通知すべき内容を示すデータが含まれる。具体的には、状態1714と原因1715とである。
状態1714は、発生した状態を示す。例えば、「パケット損失」を示すコードが設定される。
原因1715は、状態1714で示される状態を生じさせた原因を示す。例えば、「バッファ溢れ」を示すコードが設定される。
<データ>
次に、実施形態1のネットワーク100で用いる主なデータについて図5を用いて説明する。
図5は、ルーティングテーブル記憶部1800に記憶されているルーティングテーブル1810の構成及び内容の例を示す図である。
ルーティングテーブル1810は、宛先1811、次の行先1812及びポート1813が含まれる。
宛先1811は、転送するパケットの宛先のIPアドレスを示す。例えば、エンド端末のIPアドレスである。
次の行先1812は、転送するパケットの送り先であるところの次のルータのIPアドレスを示す。ここでは、便宜上、ルータR3等のIPアドレスを、「R3」等と記載する。また、「ダイレクト」は、ルータ1000自身に直接につながっていることを示す。
ポート1813は、パケットを送出するポートの識別子である。
<動作>
以下、ルータ1000の動作について図6〜図10を用いて説明する。
図6は、バッファ溢れが発生した場合のルータ1000の処理を示すフローチャートである。
図7〜図10は、ネットワーク100においてバッファ溢れが発生した場合に、それぞれ異なる送信先に、通知パケットを送信した場合の図である。図7〜図10では、エンド端末Aからエンド端末Bにパケットを送信しており、斜線が引かれたルータR4でバッファ溢れが発生したものとする。
また、図7〜図10において、エンド端末Aからエンド端末Bに送出された中継パケット15は、送信元IPアドレス1212にエンド端末AのIPアドレスが設定され、宛先IPアドレス1213にエンド端末BのIPアドレスが設定されている(図4(a)参照)。
尚、中継パケットの矩形中に記載されている文字は、パケットの宛先を示しているものとする。また、通知パケットも同様である。
中継パケット15は、エンド端末Aから送出された後、ルータR1、ルータR2、ルータR3、ルータR4、ルータR5と順に転送され、エンド端末Bに到達する。尚、エンド端末Aからは、順次、中継パケットが送信されているものとする。
実施形態1では、通知パケットの送信先として4つの送信先について説明する。
1つ目は、バッファ溢れによって損失したパケットの宛先を、通知パケットの送信先とする場合であって、図7を用いて説明する。
2つ目は、バッファ溢れによって損失したパケットの送信元を、通知パケットの送信先とする場合であって、図8を用いて説明する。
3つ目は、バッファ溢れを引き起こす直接の原因を作ったエンド端末を、通知パケットの送信先とする場合であって、図9を用いて説明する。
4つ目は、パケット溢れが発生したルータの周囲の装置を、通知パケットの送信先とする場合であって、図10を用いて説明する。
実施形態1では、いずれの送信先にするかは、宛先決定部1500に予め設定されており、具体的なIPアドレスは、宛先決定部1500がパケットを参照する等して決定する。
<損失したパケットの宛先に送信する場合>
図7は、バッファ溢れによって損失した中継パケットの送信先に対して、通知パケットを送信する場合を示す図である。
エンド端末Bを宛先とした中継パケットを損失したルータR4は、通知パケット16をエンド端末Bに向けて送出する。
損失した中継パケットの送信先に通知パケットを送信することで、その経路上に在る機器、例えばプローブ装置4000が、パケットの損失という状態とその原因と発生箇所とを正確に把握することが可能となる。例えば、バッファ溢れという原因によってパケットの損失という状態が生じ、バッファ溢れが発生した個所はルータR4であることを把握することが可能となる。原因と箇所とを正確に知ることにより、プローブ装置4000等は、適切な対応を迅速に取ることが可能となる。
また、通知パケットが通る経路上のルータも、通知パケットを転送する際にそのパケットのデータを参照することにより、パケットの損失という状態とその原因と発生箇所とを正確に把握することが可能となる。従って、通信経路上の他のルータに不具合が生じたことを知ったルータは、不具合とそのルータの位置に応じて、パケットの転送先を変更する等の適切な対応を迅速に取ることが可能となる。
尚、損失した中継パケットの送信先以外に通知パケットが送信された場合の、経路上のプローブ装置及びルータ等も同様に、適切な対応を迅速に取ることが可能である。
また、損失したパケットの送信先であるエンド端末も、パケットの損失という状態の原因と発生箇所とを正確に把握することが可能となるので、適切な対応を迅速に取ることが可能となる。例えば、エンド端末Bは、エンド端末Aに不具合が生じたのではなく、通信経路上のルータに不具合が生じたことを知ることができる。従って、エンド端末Aとエンド端末Bとが双方向通信を行っている場合には、エンド端末Bはエンド端末Aに対する通信経路を変更することで良好な通信を行うことが可能となる。
以下、図6のフローチャートを用いて、バッファ溢れによって損失したパケットの宛先を通知パケットの送信先とする場合のルータ1000の処理を説明する。
以下、ルータ1000がバッファ溢れを発生させた場合の処理を、3つに分けて説明する。1つ目は、中継パケットの受信・蓄積処理、2つ目は、通知パケットの生成・蓄積処理、3つ目は、通知パケットの送信処理である。
<中継パケットの受信・蓄積処理>
以下、中継パケットの受信処理と中継パケットの蓄積処理とを説明する。
中継パケットの受信処理と中継パケットの蓄積処理とは、同時に並行して行われている処理であるので、2つのフローチャートに分けて記載している。
最初に、中継パケットの受信処理を説明する。
まず、ルータR4の受信部1200は、中継パケット1210を受信する(ステップS100)。
中継パケットを受信した受信部1200は、受信バッファ管理部3000に蓄積を依頼する。依頼の際、受信ポートを指定して、受信した中継パケット1210を渡す。受信ポートの指定は、中継パケット1210を受信した受信ポートの識別子を渡すことで行う。
依頼を受けた受信バッファ管理部3010は、指定された受信ポートの受信バッファ3010の基本バッファ領域3011に、渡された中継パケット1210を蓄積する(ステップS110)。
ただし、基本バッファ領域3011に空きがなく、渡された中継パケット1210を溢れ判定用バッファ領域3012に蓄積した場合には、受信バッファ管理部3010は、バッファ溢れが発生したとみなして受信ポートの識別子とその旨とを状態検出部1400に通知する。
通知を受けた状態検出部1400は、バッファ溢れが発生したと判断し(ステップS120:Yes)、通知パケットの生成処理を通知パケット生成部1700に依頼する(ステップS130)。この際、受信ポートを指定する。
その後、ステップS100に戻り、ステップS100〜ステップS130を繰り返す。
一方、受信バッファ3010が溢れていない場合は(ステップS120:No)、ステップS100に戻り、ステップS100〜ステップS130を繰り返す。
次に、中継パケットの蓄積処理を説明する。
受信バッファ管理部3010は、制御部1100から中継パケットを渡すよう依頼を受けると、受信バッファ3010の基本バッファ領域3011から中継パケット1210を読み出して、制御部1100に渡す(ステップS140)。
制御部1100は、ルーティングテーブル記憶部1800に記憶されているルーティングテーブル1810の宛先1811を検索する。宛先1811が、渡された中継パケット1210の宛先IPアドレス1213に設定されているIPアドレスと同じであるレコードの、ポート1810で示される送信ポートを、送出する送信ポートと決定する(ステップS150)。
制御部1100は、必要に応じて修正を行った中継パケット1210を中継パケット用送信バッファ管理部3100に渡し、決定した送信ポートの中継パケット用送信バッファ3110に蓄積するよう依頼する。
依頼を受けた中継パケット用送信バッファ管理部3100は、依頼された送信ポートの中継パケット用送信バッファ3110に、受け取った中継パケット1210を蓄積する(ステップS160)。
中継パケット用送信バッファ管理部3100は、制御部1100からの指示を受けて、指示された送信ポートの中継パケット用送信バッファ3110から、パケットを読み出して、送信部1300に渡す。送信部1300は、渡されたパケットを送出する。
<通知パケットの生成・蓄積処理>
状態検出部1400は、受信ポートを指定し、通知パケットの生成処理を通知パケット生成部1700に依頼する(ステップS130)。
依頼を受けた通知パケット生成部1700は、通知パケットの送信先を宛先決定部1500に問い合わせる。この際、指定された受信ポートを指定する。
問い合わせを受けた宛先決定部1500は(ステップS200)、指定された受信ポートの受信バッファ3010から溢れた中継パケット1210の宛先IPアドレス1213を、受信バッファ管理部3000に問い合わせる。宛先決定部1500には、予め、通信パケットの送付先は、損失したパケットの送信先とする旨が記憶されているものとする。
問い合わせを受けた受信バッファ管理部3000は、指定された受信ポートの受信バッファ3010の溢れ判定用バッファ領域3012に蓄積されている損失したものとみなした中継パケット13(図3参照)を参照し、宛先IPアドレス1213を宛先決定部1500に渡す(ステップS210)。
宛先IPアドレス1213を宛先決定部1500に渡した受信バッファ管理部3000は、損失したものとみなした中継パケット13を削除する。
宛先IPアドレス1213を受け取った宛先決定部1500は、通知パケットの宛先として、受け取った宛先IPアドレス1213を通知パケット生成部1700に渡す。
通知パケットの宛先を受け取った通知パケット生成部1700は、通知パケット1710を生成する(ステップS220)。
具体的には、受け取った通知パケットの宛先を宛先IPアドレス1713に設定し、ルータ1000のIPアドレスを送信元IPアドレス1712に設定し、状態1714にパケットの損失を示すコードを設定し、原因1715にバッファ溢れを示すコードを設定した通知パケット1710を生成する。ただし、送信元IPアドレス1712には、ルータ1000を特定できるものであれば、IPアドレス以外の識別子を設定してもよい。
通知パケット1710を生成した通知パケット生成部1700は、宛先IPアドレス1713に設定されているIPアドレスと、ルーティングテーブル1810とから、生成した通知パケット1710を送出する送信ポートを求める。これは、制御部1100が中継パケットを送出する送信ポートを求める方法と同じである(ステップS150参照)。
通知パケット生成部1700は、通知パケット用送信バッファ管理部3200を介して、生成した通知パケット1710を、求めた送信ポートの通知パケット用送信バッファ3210に蓄積する(ステップS230)。
生成した通知パケット1710を蓄積した通知パケット生成部1700は、通知パケット送信制御部1600に、求めた送信ポートを指定して、通知パケット1710の送信を依頼する(ステップS240)。
<通知パケットの送信処理>
通知パケット1710の送信を依頼された通知パケット送信制御部1600は(ステップS300)、時間の計測を開始する(ステップS310)。
一定時間、例えば100ms(ミリ秒)経過したら(ステップS310:Yes)、指定された送信ポートの中継パケット用送信バッファ3110に空きがあるか否かを、中継パケット用送信バッファ管理部3100に問い合わせる。
問い合わせを受けた中継パケット用送信バッファ管理部3100は、指定された送信ポートの中継パケット用送信バッファ3110に空きが有るか否かを確認し、結果を通知パケット送信制御部1600に返す。
結果を受け取った通知パケット送信制御部1600は、受け取った結果が空きが無いという結果である場合(ステップS320:No)は、再度、時間の計測を開始する(ステップS310)。
一方、受け取った結果が空きが有るという結果である場合(ステップS320:Yes)は、通知パケット送信制御部1600は、指定された送信ポートの通知パケットを通知パケット用送信バッファ管理部3200に要求する。
要求を受けた通知パケット用送信バッファ管理部3200は、指定された送信ポートの通知パケット用送信バッファ3210から通知パケットを取り出して、通知パケット送信制御部1600に渡す。
通知パケットを受け取った通知パケット送信制御部1600は、受け取った通知パケットを中継パケット用送信バッファ管理部3100に渡して、指定された送信ポートから送信するよう依頼する。
依頼を受けた中継パケット用送信バッファ管理部3100は、受け取った通知パケットを、指定された送信ポートの中継パケット用送信バッファ3110に蓄積する(ステップS330)。
通知パケットの送信を依頼した通知パケット送信制御部1600は、指定された送信ポートの通知パケット用送信バッファ3210に通知パケットが残っているか否かを、通知パケット用送信バッファ管理部3200に問い合わせる。
問い合わせを受けた通知パケット用送信バッファ管理部3200は、指定された送信ポートの通知パケット用送信バッファ3210に、通知パケットが有るか否かを確認し、結果を通知パケット送信制御部1600に返す。
結果を受け取った通知パケット送信制御部1600は、受け取った結果が通知パケットが無いという結果である場合(ステップS340:No)は、処理を終了する。
一方、受け取った結果が通知パケットが有るという結果である場合(ステップS340:Yes)は、通知パケット送信制御部1600は、指定された送信ポートの中継パケット用送信バッファ3110に空きがあるか否かを、中継パケット用送信バッファ管理部3100に問い合わせ、ステップS320〜ステップS340の処理を繰り返す。
<損失したパケットの送信元に送信する場合>
図8は、バッファ溢れによって損失したパケットの送信元に対して、通知パケットを送信する場合を示す図である。
エンド端末Aからエンド端末Bに向けて送信されたパケットを損失したルータR4は、通知パケット17をエンド端末Aに向けて送出する。
損失したパケットの送信元に通知パケットを送信することで、その経路上に在る機器、例えば他のルータR3等が、パケットの損失という状態とその原因と発生箇所とを正確に把握することが可能となる。
ルータR3等が、不具合の原因と箇所とを正確に知ることにより、適切な対応を迅速に取ることが可能となる。例えば、ルータR3は、ルータR4に対して送出するパケットの量を抑制し、ルータR6を経由してエンド端末Bにパケットを送るなどである。
以下、バッファ溢れによって損失したパケットの送信元を通知パケットの宛先とする場合のルータ1000の処理を説明する。
この損失したパケットの送信元に通知パケットを送信する場合のルータ1000の処理は、図6を用いて説明したルータ1000の処理とほぼ同じである。図6を用いて説明したルータ1000の処理とは、損失したパケットの送信先に通知パケットを送信する場合の処理である。
従って、図6のフローチャートのうち、異なる点を中心に説明する。
異なる点は、通知パケットの送信先のIPアドレス取得する処理(ステップS210)である。この処理は、宛先決定部1500が行う処理である。
以下、宛先決定部1500が行う処理を説明する。
通知パケット生成部1700から通知パケットの送信先の問い合わせを受けた宛先決定部1500は、指定された受信ポートの受信バッファ3010から溢れた中継パケット1210の送信元IPアドレス1212を、受信バッファ管理部3000に問い合わせる。宛先決定部1500には、予め、通信パケットの送付先は、損失したパケットの送信元とする旨が記憶されているものとする。
問い合わせを受けた受信バッファ管理部3000は、指定された受信ポートの受信バッファ3010の溢れ判定用バッファ領域3012に蓄積されている損失したとみなされた中継パケット13(図3参照)を参照し、送信元IPアドレス1212を宛先決定部1500に渡す(ステップS210)。
送信元IPアドレス1212を宛先決定部1500に渡した受信バッファ管理部3000は、損失した中継パケット13を削除する。
送信元IPアドレス1212を受け取った宛先決定部1500は、通知パケットの宛先として、受け取った送信元IPアドレス1212を通知パケット生成部1700に渡す。
通知パケットの宛先を受け取った通知パケット生成部1700は、通知パケット1710を生成する(ステップS220)。
<バッファ溢れを引き起こす直接の原因を作ったエンド端末に送信する場合>
図9は、バッファ溢れを引き起こす直接の原因を作ったエンド端末、例えば、大量のパケットを送出した送信元に対して、通知パケットを送信する場合を示す図である。
エンド端末Aからエンド端末Bに向けて送信されたパケットを損失したルータR4は、通知パケット18を、エンド端末B宛のパケットを溢れさせた原因となるパケットを送信したエンド端末Cに向けて送出する。
原因を作ったエンド端末に通知パケットを送信することで、その経路上に在る機器、例えば他のルータR7等が、パケットの損失という状態とその原因と発生箇所とを正確に把握することが可能となる。
ルータR7等が、不具合の原因と箇所とを正確に知ることにより、適切な対応を迅速に取ることが可能となる。例えば、ルータR7は、ルータR3に対して送出していたエンド端末B宛のパケットを、ルータR6に送出するなどである。
また、原因を作ったエンド端末が、パケットの損失という状態の原因と発生箇所とを正確に把握することが可能となるので、適切な対応を迅速に取ることが可能となる。例えば、エンド端末Cは、自らの不具合によってエンド端末B宛のパケットを大量に送出していた場合には、その不具合を検出して是正することが可能となる。
以下、バッファ溢れを引き起こす直接の原因を作ったエンド端末を通知パケットの宛先とする場合のルータ1000の処理を説明する。
このエンド端末に通知パケットを送信する場合のルータ1000の処理は、図6を用いて説明したルータ1000の処理とほぼ同じである。
従って、図6のフローチャートのうち、異なる点を中心に説明する。
異なる点は、通知パケットの送信先のIPアドレス取得する処理(ステップS210)である。この処理は、宛先決定部1500が行う処理である。
以下、宛先決定部1500が行う処理を説明する。
通知パケット生成部1700から通知パケットの送信先の問い合わせを受けた宛先決定部1500は、バッファ溢れの原因となった中継パケット1210を送信してきた送信元のIPアドレスを求める。宛先決定部1500には、予め、通知パケットの送付先は、バッファ溢れの原因となった中継パケットの送信元とする旨が記憶されているものとする。
まず、宛先決定部1500は、バッファから溢れた中継パケット1210の宛先IPアドレス1213を、受信ポートを指定して受信バッファ管理部3000に問い合わせる。
問い合わせを受けた受信バッファ管理部3000は、指定された受信ポートの受信バッファ3010の溢れ判定用バッファ領域3012に蓄積されている損失したとみなされた中継パケット13(図3参照)を参照し、宛先IPアドレス1213に設定されているIPアドレスを宛先決定部1500に渡す。
IPアドレスを受け取った宛先決定部1500は、受け取ったIPアドレスと、ルーティングテーブル1810とから、受け取ったIPアドレス宛のパケットを送出するはずの送信ポートを求める。これは、制御部1100が中継パケットを送出する送信ポートを求める方法と同じである(ステップS150参照)。
送信ポートを求めた宛先決定部1500は、求めた送信ポートの中継パケット用送信バッファ3110に蓄積されている中継パケット1210に、送信元IPアドレス1212として最も多く出現するIPアドレスを求めるよう、中継パケット用送信バッファ管理部3100に依頼する。
依頼を受けた中継パケット用送信バッファ管理部3100は、指定された送信ポートの中継パケット用送信バッファ3110に蓄積されている中継パケット1210を検索し、中継パケット1210の送信元IPアドレス1212として最も多く出現するIPアドレスを、宛先決定部1500に渡す(ステップS210)。すなわち、送信元IPアドレス1212として最も多く出現するIPアドレスとは、バッファ溢れを引き起こしている大量の中継パケットを送信している装置のIPアドレスであるからである。
IPアドレスを受け取った宛先決定部1500は、通知パケットの宛先として、受け取ったIPアドレスを通知パケット生成部1700に渡す。
通知パケットの宛先を受け取った通知パケット生成部1700は、通知パケット1710を生成する(ステップS220)。
尚、受信バッファ管理部3000において、各受信バッファ3010に蓄積された中継パケットの送信元を履歴として記憶しておくことで、バッファ溢れを引き起こす直接の原因を作ったエンド端末を特定することとしてもよい。すなわち、バッファ溢れが発生した受信バッファ3010の履歴において、最も多く蓄積されたパケットの送信元を、バッファ溢れを引き起こす直接の原因を作ったエンド端末と特定する。
また、実施形態1では、受信バッファ3010の基本バッファ領域3011は中継パケットを1つ記憶できるだけの容量を有することとしているが、複数個の中継パケットを記憶できる容量を有するものである場合には、蓄積されている中継パケットの送信元として最も多く出現する送信元を、バッファ溢れを引き起こす直接の原因を作ったエンド端末と特定することとしてもよい。
<バッファ溢れを発生したルータの周囲の装置に送信する場合>
図10は、バッファ溢れを発生したルータの周囲の装置に対して、通知パケットを送信する場合を示す図である。
エンド端末Aからエンド端末Bに向けて送信されたパケットを損失したルータR4は、通知パケット19を、周囲の装置に向けて送出する。通知パケット19の宛先には、ブロードキャストアドレスとして「*」を記載している。
周囲の装置に通知パケットを送信することで、同じ管理領域に在る装置、例えば他のルータR5等が、パケットの損失という状態とその原因と発生箇所とを正確に把握することが可能となる。
ルータR5等が、不具合の原因と箇所とを正確に知ることにより、適切な対応を迅速に取ることが可能となる。例えば、ルータR5は、ルータR4に対して送出するパケットの量を抑制するなどである。
周囲の装置に通知パケットを送信するため、通知パケット1710の宛先IPアドレス1713に、ブロードキャストアドレスを設定する。
ブロードキャストアドレスには、送信元のルータが所属するネットワークと同じネットワークに属する装置を送信先とするリミテッド・ブロードキャストアドレスと、指定するネットワークに属する装置を送信先とするディレクテッド・ブロードキャストアドレスとがある。実施形態1では、ディレクテッド・ブロードキャストアドレスを設定するものとする。
以下、バッファ溢れを発生したルータの周囲の装置を、通知パケットの宛先とする場合のルータ1000の処理を説明する。
この周囲の装置に通知パケットを送信する場合のルータ1000の処理は、図6を用いて説明したルータ1000の処理とほぼ同じである。
従って、図6のフローチャートのうち、異なる点を中心に説明する。
異なる点は、通知パケットの送信先のIPアドレス取得する処理(ステップS210)である。この処理は、宛先決定部1500が行う処理である。
以下、宛先決定部1500が行う処理を説明する。
通知パケット生成部1700から通知パケットの送信先の問い合わせを受けた宛先決定部1500は、ルータ1000のIPアドレスのホストアドレス部のみをオール1としたディレクテッド・ブロードキャストアドレスを作成する。例えば、ルータR4のIPアドレスが「10.25.30.22」であり、且つ、ネットワークアドレスが「10.25.30」であれば、ディレクテッド・ブロードキャストアドレスは「10.25.30.255」となる。尚、宛先決定部1500には、予め、通信パケットの送付先は、周囲の装置とする旨が記憶されているものとする。
宛先決定部1500は、通知パケットの宛先として、作成したディレクテッド・ブロードキャストアドレスを通知パケット生成部1700に渡す(ステップS210)。
通知パケットの宛先を受け取った通知パケット生成部1700は、通知パケット1710を生成する(ステップS220)。
<変形例1>
実施形態1では、発生した不具合の状態とその原因とを通知パケット1710(図4(b)参照)に含ませて送信することとしていた。変形例1では、他の情報を含ませる場合を説明する。
変形例1では、バッファ溢れを引き起こした原因である大量のパケットを送信しているエンド端末のIPアドレスと、その大量のパケットを受信している受信インターフェースである受信ポートの識別子とを含ませる。
バッファ溢れを引き起こした原因となったエンド端末の方向、すなわち、エンド端末のIPアドレスや受信ポートを通知パケットに含ませることで、通知パケットを受信した他の装置は、その原因なったエンド端末の方向を正確に把握することが可能となり、適切な対応を迅速に取ることが可能となる。
例えば、その原因となったエンド端末に対して、送出するパケット量の抑制を指示するような命令を送信することが可能となる。また、他の装置は、大量のパケットを受信している受信ポートに向かうパケットの経路を変更するなどの措置を取ることが可能となる。
図11は、変形例1の通知パケットの構成及び内容の例を示す図である。
図4(b)で説明した通知パケット1710のデータ部に、原因装置IPアドレス1716と受信ポート1717とが追加されている。
原因装置IPアドレス1716は、バッファ溢れを引き起こした原因である大量のパケットを送信しているエンド端末のIPアドレスを示す。
受信ポート1717は、原因装置IPアドレス1716で示されるIPアドレスからパケットを受信している受信ポートの識別子を示す。
原因装置IPアドレス1716は、具体的には、次のように求める。
原因装置IPアドレス1716は、実施形態1の<バッファ溢れを引き起こす直接の原因を作ったエンド端末に送信する場合>の項において、通信パケットの送信先として求めたIPアドレスである。
すなわち、損失したパケットが送出されるはずであった送信ポートの中継パケット用送信バッファ3110に蓄積されている中継パケット1210のうち、送信元IPアドレス1212として最も多く出現するIPアドレスが、バッファ溢れを引き起こす直接の原因を作ったエンド端末のIPアドレスである。
通知パケット生成部1700は、通知パケット1710を生成する際に、宛先決定部1500に、バッファ溢れを引き起こす直接の原因を作ったエンド端末のIPアドレスを求めるよう指示して、取得したIPアドレスを原因端末IPアドレス1716に設定する。
また、受信ポート1717は、中継パケットの送信元と、受信した受信ポートとを対応付けて記憶しておくことで求める。
具体的には、まず、受信バッファ管理部3000が、図12で示す受信パケット情報3020を記憶しておく。
図12は、受信パケット情報3020の構成及び内容の例を示す図である。
受信パケット情報3020は、送信元3021及び受信ポート3022を含む。
送信元3021は、受信した中継パケットの送信元のIPアドレスを示す。
受信ポート3022は、送信元3021で示されるIPアドレスを送信元とする中継パケットを受信した受信ポートを示す。
受信バッファ管理部3000は、中継パケット1210を受信部1200から受け取る毎に、受け取った中継パケット1210の送信元IPアドレス1212と受信ポートとを対応付けて記憶しておく。
通知パケット生成部1700は、通知パケット1710を生成する際に、原因端末IPアドレス1716に設定したIPアドレスを受信バッファ管理部3000に渡して、受信ポートを問い合わせる。
問い合わせを受けた受信バッファ管理部3000は、受信パケット情報3020送信先3021が、受け取ったIPアドレスと同じであるレコードの受信ポート3022に設定されている受信ポートの識別子を、通知パケット生成部1700に返す。
通知パケット生成部1700は、受け取った受信ポートの識別子を、受信ポート1717に設定する。
尚、通知パケットには、損失した中継パケット1210の送信元IPアドレス1212や宛先IPアドレス1213や、RTP(Real-time Transport Protocol)等のパケットであればパケットのシーケンス番号等の情報を、含ませてもよい。
<変形例2>
実施形態1では、受信バッファ3010から中継パケットが溢れ始めたときに、バッファ溢れが発生したと判断して、通知パケットを送信した。
変形例2では、受信バッファ3010の空きが少なくなってきた時点で、警告として、通知パケットを送信する。
尚、実施形態1では、受信バッファ3010の基本バッファ領域3011は中継パケットを1つ記憶できるだけの容量を有することとしているが、変形例2では複数個の中継パケットを記憶できる容量を有するものとする。
警告として通知パケットを送信することで、ルータ1000において、バッファ溢れが原因でパケットの損失が生ずる可能性があることを、他の機器に知らせることが可能となり、不都合が生じてしまう前に、適切な対応を迅速に取ることが可能となる。
例えば、空きが少なくなってきた受信バッファ3010に蓄積されている中継パケットのうちの最近受信した中継パケットの送信元に、通知パケットを送信する。送信元への経路上に在る他のルータが、通知パケットを送信したルータへのパケット転送量を抑制することができる。他のルータがパケットの転送量を抑制することで、通知パケットを送信したルータは、バッファ溢れの発生が生じ難くなる。また、経路上のプローブ装置等が通知パケットの内容を解析して、適切な措置を取ることが可能となる。
この場合は、受信バッファ管理部3000が、受信バッファ3010の基本バッファ領域3011に中継パケットを蓄積する際に、基本バッファ領域3011の空き領域が所定値以上あるか、例えば、40%以上あるかを判断する。空き領域が所定値を下回った場合は、状態検出部1400に通知する。
状態検出部1400は、基本バッファ領域3011の空き領域が所定値を下回った場合は通知パケットを送信すべきであると判断し、通知パケット生成部1700に通知パケットの生成を依頼する。
通知パケット1710の状態1714に、パケット損失のおそれがある旨を示すコードを設定する。また、原因1715には、バッファの残量が所定値を下回っている旨を示すコードを設定する。
尚、基本バッファ領域3011の使用率や、損失する可能性のある中継パケット1210の送信元IPアドレス1212や宛先IPアドレス1213や、RTP等のパケットであればパケットのシーケンス番号等の情報を、通知パケットに含ませてもよい。
<変形例3>
実施形態1では、バッファ溢れが生じたと判断される毎に、通知パケットを生成していたが、変形例3では、送信する通知パケットの量を調整する。
例えば、通知パケットを必要最小限度にすることにより、ネットワークに与える新たな負荷の増大を軽減することが可能となる。
以下、変形例3の通知パケットの生成・蓄積処理を説明する。
図13は、変形例3の通知パケットの生成・蓄積処理のフローチャートである。
変形例3の通知パケットの生成・蓄積処理は、図6を用いて説明した実施形態1の通知パケットの生成・蓄積処理とほとんど同じである。
異なる点は、ステップ400において、通知パケットを生成するか否かを判断している点である。
変形例3では、ステップ210で取得した通知パケットの送信先のIPアドレスが、初めての送信先である場合(ステップS400:Yes)は、通知パケットを生成する。但し、一定時間同じ送信先が取得されなかった場合は、初めての送信先であるとする。
また、連続して同じIPアドレスを所定回数取得した場合(ステップS400:Yes)は、通知パケットを生成する。例えば、同じIPアドレスを10回連続して取得した場合は、通知パケットを生成する。通知パケットが連続して同じ宛先に送信されることを避けることができる。
尚、通知パケットの送信先が同じでも、状態や原因が異なる場合は通知パケットを送信することとしてもよい。
<実施形態2>
実施形態1では、ルータ1000の受信バッファ3010が溢れたときに通知パケットを送信することとしていた。実施形態2では、中継パケット用送信バッファ3110が溢れたときに、通知パケットを送信する場合を説明する。
尚、実施形態2においても、実施形態1の説明で用いたネットワーク100(図1参照)を用いて説明する。
<機能>
実施形態1では、受信バッファ管理部3000が、受信バッファ3010が溢れた事を検知して状態検出部1400に通知していた。実施形態2では、中継パケット用送信バッファ管理部3100が、中継パケット用送信バッファ3110が溢れた事を検知して状態検出部1400に通知する点が異なる。
従って、実施形態2で説明するルータは、上記相違点に関係する機能以外は、実施形態1で説明したルータ1000と同様の機能を有する。従って、図2のルータ1000の機能ブロック図を用いて、異なる点を中心に説明する。
実施形態2の中継パケット用送信バッファ管理部3100は、実施形態1の中継パケット用送信バッファ管理部3100が有する機能に加えて、パケット溢れが発生したことを検知して、状態検出部1400に通知する機能を有する。
実施形態2の状態検出部1400は、中継パケット用送信バッファ管理部3100から中継パケット用送信バッファ3110の状態の通知を受け、通知に基づいてバッファ溢れが生じた事を検出した場合に、通知パケットを送信すると判断する機能を有する。
また、実施形態2の宛先決定部1500は、実施形態1の宛先決定部1500と同様に、ルータ1000が生成した通知パケットの宛先のIPアドレスを決定する機能を有する。但し、この宛先のIPアドレスは、実施形態1では受信バッファ3010から溢れた中継パケットを参照して決定しているが、実施形態2では中継パケット用送信バッファ3110から溢れた中継パケットを参照して決定する点が異なる。
<バッファ>
次に、実施形態2のバッファの使用方法について、図14を用いて説明する。
図14は、実施形態2のバッファの使用方法の例を示す図である。
実施形態1においては、受信バッファ3010が、基本バッファ領域3011と溢れ判定用バッファ領域3012との2つのバッファ領域を備えていた。実施形態2においては、中継パケット用送信バッファ3110が、基本バッファ領域3111と溢れ判定用バッファ領域3112との2つのバッファ領域を備えている点が異なる。
中継パケットの転送処理が正常に行われている場合、受信バッファ3010に蓄積された中継パケットは、制御部1100によって送出先である送信ポートが判断され、判断された送信ポートが指定されて中継パケット用送信バッファ管理部3100に渡される。
中継パケット用送信バッファ管理部3100は、渡された中継パケットを、指定された送信ポートの中継パケット用送信バッファ3110の基本バッファ領域3111に蓄積する。
しかし、中継パケット用送信バッファ管理部3100が中継パケットを基本バッファ領域3111に蓄積しようとした時に、基本バッファ領域3111に空き領域が無い場合が生じ得る。
この場合、中継パケット用送信バッファ管理部3100は、渡された中継パケットを溢れ判定用バッファ領域3112に蓄積する。実施形態2では、溢れ判定用バッファ領域3112に中継パケット14が蓄積された時に、バッファ溢れが発生したものとみなすものとする。すなわち、中継パケット用送信バッファ管理部3100は、溢れ判定用バッファ領域3112に中継パケット14を蓄積した時に、バッファ溢れを検知したこととする。
基本バッファ領域3111に蓄積されている中継パケットは、バッファリングされているとして通常の転送処理を行うが、溢れ判定用バッファ領域3112に蓄積された中継パケット14は、損失したパケットとみなして、転送処理は行わない。
<パケット>
実施形態2のネットワーク100で用いられるパケットは、図4を用いて説明した実施形態1のパケットと同じである。
<データ>
実施形態2のネットワーク100で用いるデータは、図5を用いて説明した実施形態1のデータと同じである。
<動作>
以下、実施形態2のルータ1000の動作について図15を用いて説明する。但し、実施形態2のルータ1000の処理と実施形態1のルータの処理とは、同様の処理が多いので異なる点を中心に説明する。
以下、実施形態1と同様に、通知パケットの送信先として4つの送信先についてそれぞれ説明する。1つ目は、バッファ溢れによって損失したパケットの宛先を、通知パケットの送信先とする場合である。2つ目は、バッファ溢れによって損失したパケットの送信元を、通知パケットの送信先とする場合である。3つ目は、バッファ溢れを引き起こす直接の原因を作ったエンド端末を、通知パケットの送信先とする場合であり、4つ目は、パケット溢れが発生したルータの周囲の装置を、通知パケットの送信先とする場合である。
<損失したパケットの宛先に送信する場合>
図15は、送信バッファ溢れが発生した場合のルータ1000の処理を示すフローチャートである。図15のフローチャートにおいて、図6のフローチャートにおけるステップ番号と同じ番号の処理は、実施形態1の処理と同様である。
実施形態2のルータ1000が送信バッファ溢れを発生させた場合の処理を、実施形態1のルータ1000の処理と同様に、3つに分けて説明する。1つ目は、中継パケットの受信・蓄積処理、2つ目は、通知パケットの生成・蓄積処理、3つ目は、通知パケットの送信処理である。
<中継パケットの受信・蓄積処理>
実施形態2における中継パケット受信処理が、実施形態1における中継パケット受信処理と異なる点は、受信バッファ管理部3000が受信バッファ3010のバッファ溢れが発生したことの検知(図6のステップ120)を行わず、通知パケットの生成依頼(図6のステップ130)を行わない点が異なる。
また、実施形態2における中継パケット蓄積処理が、実施形態1における中継パケット蓄積処理と異なる点は、中継パケット用送信バッファ管理部3100が中継パケット用送信バッファ3110のバッファ溢れが発生したことを検知して(ステップS500)、通知パケットの生成依頼を行う(ステップS510)点が異なる
詳細には、中継パケット用送信バッファ管理部3100は、制御部1100から依頼された送信ポートの中継パケット用送信バッファ3110の基本バッファ領域3111に、受け取った中継パケット1210を蓄積する(ステップS160)。
ただし、基本バッファ領域3111に空きがなく、渡された中継パケット1210を溢れ判定用バッファ領域3112に蓄積した場合には、中継パケット用送信バッファ管理部3100は、送信バッファ溢れが発生したとみなして送信ポートの識別子とその旨とを状態検出部1400に通知する。
通知を受けた状態検出部1400は、送信バッファ溢れが発生したと判断し(ステップS500:Yes)、通知パケットの生成処理を通知パケット生成部1700に依頼する(ステップS510)。この際、送信ポートを指定する。
その後、ステップS140に戻り、ステップS140から処理を繰り返す。
一方、送信バッファ3110が溢れていない場合は(ステップS500:No)、ステップS140に戻り、ステップS140から処理を繰り返す。
<通知パケットの生成・蓄積処理>
実施形態2における通知パケット生成・蓄積処理が、実施形態1における通知パケット生成・蓄積処理と異なる点は、通知先のIPアドレスを取得する処理(図6のステップS210、図15のステップS520)である。
詳細には、ステップS510の処理において通知パケットの生成処理を依頼された状態検出部1400は、送信ポートを指定し、通知パケットの生成処理を通知パケット生成部1700に依頼する。
依頼を受けた通知パケット生成部1700は、通知パケットの送信先を宛先決定部1500に問い合わせる。この際、指定された送信ポートを指定する。
問い合わせを受けた宛先決定部1500は(ステップS200)、指定された送信ポートの送信バッファ3110から溢れた中継パケット1210の宛先IPアドレス1213を、中継パケット用送信バッファ管理部3100に問い合わせる。宛先決定部1500には、予め、通信パケットの送付先は、損失したパケットの送信先とする旨が記憶されているものとする。
問い合わせを受けた中継パケット用送信バッファ管理部3100は、指定された送信ポートの送信バッファ3110の溢れ判定用バッファ領域3112に蓄積されている損失したものとみなした中継パケット14(図14参照)を参照し、宛先IPアドレス1213を宛先決定部1500に渡す(ステップS520)。
宛先IPアドレス1213を宛先決定部1500に渡した中継パケット用送信バッファ管理部3100は、損失したものとみなした中継パケット14を削除する。
宛先IPアドレス1213を受け取った宛先決定部1500は、通知パケットの宛先として、受け取った宛先IPアドレス1213を通知パケット生成部1700に渡す。
通知パケットの宛先を受け取った通知パケット生成部1700は、通知パケット1710を生成する(ステップS220)。
<通知パケットの送信処理>
実施形態2における通知パケットの送信処理は、実施形態1における通知パケットの送信処理と同様である。
<損失したパケットの送信元に送信する場合>
この損失したパケットの送信元に通知パケットを送信する場合の実施形態2のルータ1000の処理は、図15を用いて説明したルータ1000の処理とほぼ同じである。
異なる点は、通知パケットの送信先のIPアドレス取得する処理(ステップS520)である。この処理は、宛先決定部1500が行う処理である。
通知パケット生成部1700から通知パケットの送信先の問い合わせを受けた宛先決定部1500は、指定された送信ポートの送信バッファ3110から溢れた中継パケット1210の送信元IPアドレス1212を、中継パケット用送信バッファ管理部3100に問い合わせる。宛先決定部1500には、予め、通信パケットの送付先は、損失したパケットの送信元とする旨が記憶されているものとする。
問い合わせを受けた中継パケット用送信バッファ管理部3100は、指定された送信ポートの送信バッファ3110の溢れ判定用バッファ領域3112に蓄積されている損失したとみなされた中継パケット14(図14参照)を参照し、送信元IPアドレス1212を宛先決定部1500に渡す(ステップS520)。
<バッファ溢れを引き起こす直接の原因を作ったエンド端末に送信する場合>
このバッファ溢れを引き起こす直接の原因を作ったエンド端末に通知パケットを送信する場合の実施形態2のルータ1000の処理は、図15を用いて説明したルータ1000の処理とほぼ同じである。
異なる点は、通知パケットの送信先のIPアドレス取得する処理(ステップS520)である。この処理は、宛先決定部1500が行う処理である。
通知パケット生成部1700から通知パケットの送信先の問い合わせを受けた宛先決定部1500は、バッファ溢れの原因となった中継パケット1210を送信してきた送信元のIPアドレスを求める。宛先決定部1500には、予め、通知パケットの送付先は、バッファ溢れの原因となった中継パケットの送信元とする旨が記憶されているものとする。
まず、宛先決定部1500は、指定された送信ポートの中継パケット用送信バッファ3110に蓄積されている中継パケット1210に、送信元IPアドレス1212として最も多く出現するIPアドレスを求めるよう、中継パケット用送信バッファ管理部3100に依頼する。
依頼を受けた中継パケット用送信バッファ管理部3100は、指定された送信ポートの中継パケット用送信バッファ3110に蓄積されている中継パケット1210を検索し、中継パケット1210の送信元IPアドレス1212として最も多く出現するIPアドレスを、宛先決定部1500に渡す(ステップS520)。すなわち、送信元IPアドレス1212として最も多く出現するIPアドレスとは、バッファ溢れを引き起こしている大量の中継パケットを送信している装置のIPアドレスであるからである。
<バッファ溢れを発生したルータの周囲の装置に送信する場合>
このバッファ溢れを発生したルータの周囲の装置に通知パケットを送信する場合の実施形態2のルータ1000の処理は、図15を用いて説明したルータ1000の処理と同様である。
<変形例1>
実施形態1の変形例1では、通信パケットに、受信バッファ溢れを引き起こした原因である大量のパケットを送信しているエンド端末のIPアドレスと、その大量のパケットを受信している受信インターフェースである受信ポートの識別子とを含ませることとしていた。
実施形態2の変形例1では、通信パケットに、送信バッファ溢れを引き起こした原因である大量のパケットを送信しているエンド端末のIPアドレスと、その大量のパケットを送信しようとしている送信ポートの識別子とを含ませる。
バッファ溢れを引き起こした原因となったエンド端末の方向、すなわち、エンド端末のIPアドレスや送信ポートを通知パケットに含ませることで、通知パケットを受信した他の装置は、その原因なったエンド端末の方向を正確に把握することが可能となり、適切な対応を迅速に取ることが可能となる。
例えば、その原因となったエンド端末に対して、バッファ溢れした送信ポートから送出するパケット量の抑制を指示するような命令を送信することが可能となる。また、他の装置は、大量のパケットを送信している送信ポートから送出するパケットの経路を変更するなどの措置を取ることが可能となる。
実施形態2の変形例1で送信する通信パケットは、例えば、実施形態1の変形例1で送信する通知パケット1710(図11参照)の受信ポート1717の代わりに送信ポートを設定したものである。
また、送信バッファ溢れを引き起こした原因である大量のパケットのうち、最も多く出現する送信先のIPアドレスを通知パケットに含ませることとしてもよい。
<変形例2>
実施形態1の変形例2では、受信バッファ3010の空きが少なくなってきた時点で、警告として、通知パケットを送信することとしていた。
実施形態2の変形例2では、送信バッファ3110の空きが少なくなってきた時点で、警告として、通知パケットを送信する。
詳細には、中継パケット用送信バッファ管理部3100が、送信バッファ3110の基本バッファ領域3111に中継パケットを蓄積する際に、基本バッファ領域3011の空き領域が所定値以上あるか、例えば、40%以上あるかを判断する。空き領域が所定値を下回った場合は、状態検出部1400に通知する。
状態検出部1400は、基本バッファ領域3111の空き領域が所定値を下回った場合は通知パケットを送信すべきであると判断し、通知パケット生成部1700に通知パケットの生成を依頼する。
通知パケット1710の状態1714に、パケット損失のおそれがある旨を示すコードを設定する。また、原因1715には、送信バッファの残量が所定値を下回っている旨を示すコードを設定する。
<実施形態3>
実施形態1では、中継装置であるルータに発生する不具合として、バッファ溢れを例に説明した。
実施形態3では、レイトコリジョンが発生した場合を例に説明する。
レイトコリジョンが発生する場合は、ルータ等の各ポートの通信モードの設定が正しくなされていないことが、レイトコリジョンの原因の一つとして考えられる。通信モードの設定とは、全二重通信又は半二重通信のいずれかのモードに設定することをいう(以下、同様。)。
従って、レイトコリジョンを検知したルータが、送信できなかったと推定される中継パケットの送信先に通知パケットを送信することで、その経路上のルータ及びエンド端末等が、レイトコリジョン発生という状態及び発生箇所等を正確に把握することが可能となる。
また、中継パケットの送信先以外、例えば、送信元等に通知パケットを送信することで、その経路上のルータ及びプローブ装置、エンド端末等がレイトコリジョン発生という状態及び発生箇所等を正確に把握することが可能となる。
従って、経路上のルータ等は、その通知パケットを送受信したポートの通信モードの設定が不整合を起こしている可能性があることを検知することができるので、通信モードの設定を変更する等の対処を施すことが可能となる。
ここで、実施形態3のルータ1000の機能を、図16を用いて説明する。
図16は、実施形態3のルータ1000の機能的構成の例を示すブロック図である。
図2を用いて説明した実施形態1のルータは、受信バッファ管理部3000が受信バッファ3010の溢れを検知したら、状態検出部1400に通知した。
実施形態3では、レイトコリジョン検知部1900がレイトコリジョンの発生を検知したら、その旨を状態検出部1400に通知する点が異なる。
従って、実施形態3で説明するルータは、レイトコリジョン検知部1900を有する点、及び、レイトコリジョンが発生した旨の通知パケットを送信する点以外は、実施形態1で説明したルータ1000と同様の機能を有する。
以下、実施形態3のルータ1000の機能のうち、実施形態1のルータ1000と異なる点を中心に説明する。
レイトコリジョン検知部1900は、ルータ1000が中継パケットを転送した後にレイトコリジョンが発生したことを検知する機能を有する。この際、レイトコリジョンが発生した送信ポートも検知する。
レイトコリジョンの発生を検知したレイトコリジョン検知部1900は、その旨及び発生した送信ポートの識別子を状態検出部1400に通知する。
実施形態3の状態検出部1400は、レイトコリジョン検知部1900からレイトコリジョンが発生した旨の通知及び送信ポートの識別子を受けると、通知パケットを送信すると判断し、通知パケット生成部1700に通知パケットの生成を依頼する。
実施形態3の宛先決定部1500は、実施形態1の宛先決定部1500と同様に、ルータ1000が生成した通知パケットの宛先のIPアドレスを決定する。この宛先のIPアドレスは、中継パケット用送信バッファ管理部3100から取得する。レイトコリジョンが発生した送信ポートから最近転送した中継パケットが、レイトコリジョンを発生させたと推測できるからである。
従って、実施形態3の中継パケット用送信バッファ管理部3100は、各送信ポートから最近転送した中継パケットを記憶しておく。また、宛先決定部1500からの問い合わせに応じて、記憶している最近転送した中継パケットの送信先又は送信元のIPアドレスを返す。
図17は、実施形態3の通知パケットの構成及び内容の例を示す図である。
図4(b)で説明した通知パケット1710のデータ部に、原因1715の代わりに、発生ポート1720及び設定情報1721が設けられている。
発生ポート1720は、レイトコリジョンが発生した送信ポートの識別子を示す。
設定情報1721は、発生ポート1720で示される送信ポートに設定されている通信モード、すなわち、全二重通信又は半二重通信のいずれかのモードを示す。
尚、実施形態3では、状態1714に、「レイトコリジョン発生」を示すコードが設定される。
<実施形態4>
実施形態3では、中継装置であるルータに発生する不具合として、レイトコリジョンが発生した場合を説明した。
実施形態4では、ルータに発生した不具合ではなく、ルータの状態に変化が生じた場合を説明する。ルータの状態の変化として、ポートの通信モードの設定、すなわち、全二重通信又は半二重通信の設定が変更された場合を例に説明する。
通信モードの設定が変更された場合、設定モードの不整合によりレイトコリジョンが発生する可能性が考えられる。
従って、ポートの通信モードの設定が変更された場合には、変更されたルータ自身が、変更後の通信モードを他のルータ等に通知することで、不具合が生ずる前に通信モードの設定を変更する等の対処を施すことが可能となる。
通知パケットを周囲の装置に送信することで、周囲の装置は必要に応じてポートの設定を変更することが可能となる。また、通信モードの変更がなされたポートから転送する中継パケットの送信先に通知パケットを送信することで、経路上のルータ等は必要に応じてポートの設定を変更することが可能となる。
実施形態4のルータ1000の機能を、図18を用いて説明する。
図18は、実施形態4のルータ1000の機能的構成の例を示すブロック図である。
図16を用いて説明した実施形態3のルータは、レイトコリジョン検知部1900がレイトコリジョンの発生を検知したら、状態検出部1400に通知した。
実施形態4では、設定変更を通信モード設定部1910がポートの通信モードの設定変更を行ったら、その旨を状態検出部1400に通知する。
従って、実施形態4で説明するルータは、設定変更を通信モード設定部1910を有する点、及び、ポートの通信モードの設定変更を行った旨の通知パケットを送信する点以外は、実施形態3で説明したルータ1000と同様の機能を有する。
以下、実施形態4のルータ1000の機能のうち、実施形態3のルータ1000と異なる点を中心に説明する。
設定変更を通信モード設定部1910は、ポートの通信モードを設定する機能を有する。通信モードの設定は、ユーザが手動で行う場合と、ルータ1000が行う場合がある。ルータ1000が行う場合とは、通信モードの設定がいわゆる「オート」になっている場合等である。
また、設定変更を通信モード設定部1910は、通信モードを設定した際に、それまでに設定されていた通信モードと異なるモードに設定された場合には、その旨及びそのポートの識別子を状態検出部1400に通知する機能を有する。通信モード設定部1910は、各ポートに設定されている通信モードを記憶しているものとする。
実施形態4の状態検出部1400は、設定変更を通信モード設定部1910から通信モードが変更された旨の通知及びポートの識別子を受けると、通知パケットを送信すると判断し、通知パケット生成部1700に通知パケットの生成を依頼する。
実施形態4の宛先決定部1500は、実施形態3の宛先決定部1500と同様に、ルータ1000が生成した通知パケットの宛先のIPアドレスを決定する。この宛先のIPアドレスは、中継パケット用送信バッファ管理部3100から取得する。
実施形態4の中継パケット用送信バッファ管理部3100は、宛先決定部1500からの問い合わせに応じて、次に転送する中継パケットの送信先のIPアドレスを返す機能を有する。尚、周囲の装置に送信する場合は、ブロードキャストアドレスを返す。
実施形態4の通知パケットは、実施形態3の通知パケット(図17参照)の構成と同様である。
発生ポート1720は、通信モードの設定が変更されたポートの識別子を示す。
設定情報1721は、発生ポート1720で示されるポートに設定されている通信モード、すなわち、全二重通信又は半二重通信のいずれかのモードを示す。
尚、実施形態4では、状態1714に、「通信モード変更」を示すコードが設定される。
<実施形態5>
実施形態3では、中継装置であるルータに発生する不具合として、レイトコリジョンが発生した場合を説明した。
実施形態5では、ルータに発生した不具合ではなく、ネットワーク上の不具合をルータが検知した場合を説明する。ネットワーク上の不具合をルータが検知した場合として、ルータが転送した中継パケットに対しての宛先到達不可のICMPメッセージ(以下、「不達ICMPパケット」という。)を受信した場合を例に説明する。
不達ICMPパケットには、中継パケットが不達となった原因に関する情報が含まれている。例えば、宛先ネットワークに到達不能、宛先ホスト到達不能等である。
実施形態5のルータは、不達ICMPパケットを受信したら、不達ICMPパケットによって通知された不具合の内容を含ませた通知パケットを周囲の機器等に送信する。周囲の機器等は、存在しないエンド端末、及び、開いていないポート等を事前に知ることが可能となり、存在しないエンド端末等へのパケットの転送を抑制するなどの措置を行うことが可能となる。すなわち、不達となるパケットがネットワーク上に流れることが抑制されるので、不要なトラフィックの増加を抑えることが可能となる。
実施形態5のルータは、受信した不達ICMPパケットのうちから通知パケットによって周囲の機器に通知した方がよいもののみを通知することによって、確実に通知したい内容を周囲の機器に通知できる。
また、通知パケットを、不達となった中継パケットの送信元又は送信先に送信することで、例えば、経路上のプローブ装置が不達の原因を確実に知ることができる。プローブ装置は、必要に応じて送信元等に指示を出すことが可能となる。
実施形態5のルータ1000の機能を、図19を用いて説明する。
図19は、実施形態5のルータ1000の機能的構成の例を示すブロック図である。
図16を用いて説明した実施形態3のルータは、レイトコリジョン検知部1900がレイトコリジョンの発生を検知したら、状態検出部1400に通知した。
実施形態5では、ICMPメッセージ確認部1920が不達ICMPパケットを受信したことを確認したら、その旨を状態検出部1400に通知する。
従って、実施形態5で説明するルータは、ICMPメッセージ確認部1920を有する点、及び、不達ICMPパケットを受信した旨の通知パケットを送信する点以外は、実施形態3で説明したルータ1000と同様の機能を有する。
以下、実施形態5のルータ1000の機能のうち、実施形態3のルータ1000と異なる点を中心に説明する。
実施形態5の受信バッファ管理部3000は、受信したパケットを受信バッファ3010に蓄積し、更に、受信したパケットがICMPパケットである場合には、受信したICMPパケットをICMPメッセージ確認部1920に渡す。
ICMPパケットを受信バッファ管理部3000から受け取ったICMPメッセージ確認部1920は、受け取ったICMPパケットのメッセージの種類が不達ICMPパケットであること、及び、ルータ1000自身が転送した中継パケットに対するICMPパケットであることを確認する。不達ICMPパケットであることは、ICMPパケット内のメッセージのタイプを参照して確認する。
また、ルータ1000自身が転送した中継パケットに対するICMPパケットであることは、ICMPパケットのイーサネットフレーム(「イーサネット」は登録商標)に設定されている情報と、ICMPパケットのペイロード部に設定されている情報を参照して確認する。具体的には、ICMPパケットのイーサネットフレーム(「イーサネット」は登録商標)中の宛先MACアドレスが、ルータ1000が中継パケットを転送したポートのMAC学習テーブル中のMACアドレスと一致するか確認する。さらに、ICMPパケットのペイロード部に設定されている不達になった中継パケットのIPヘッダ情報中の送信先IPアドレスと、ルータ1000自身のIPアドレスのサブネット部が一致するか確認する。このMACアドレスと、サブネット部の両者が一致すれば、ルータ1000自身が転送した中継パケットに対応するICMPパケットであると判定する。なお、スイッチのように中継装置自身がIPアドレスを持たない場合は、MACアドレスの一致のみで判定する。
受け取ったICMPパケットが不達ICMPパケットであり、ルータ1000自身が転送した中継パケットに対するものである場合、ICMPメッセージ確認部1920は、不達ICMPパケットを状態検出部1400に通知する。
実施形態5の状態検出部1400は、ICMPメッセージ確認部1920から不達ICMPパケットを受けると、通知パケットを送信すると判断し、通知パケット生成部1700に通知パケットの生成を依頼する。
実施形態5の通知パケット生成部1700は、不達ICMPパケットのペイロード部のIPヘッダ、すなわち、不達となった中継パケットのIPヘッダを参照し、通知パケットの宛先を設定する。例えば、不達となった中継パケットの送信元のIPアドレスを設定する等である。周囲の装置に送信する場合は、ブロードキャストアドレスを設定する。
また、通知パケット生成部1700は、ルーティングテーブル1810(図5参照)を参照し、不達となった中継パケットが送出されたポートの識別子を求め、通知パケットに設定する。
図20は、実施形態5の通知パケットの構成及び内容の例を示す図である。
図4(b)で説明した実施形態1の通知パケット1710のデータ部に、原因1715の代わりに、不達理由1730及び送信先IPアドレス1731が設けられている。
不達理由1730は、不達となった理由を示す。不達ICMPパケットのCodeフィールドを参照して設定する。このCodeフィールドには、不達の詳細情報が格納されている。
送信先IPアドレス1731は、不達となった中継パケットの送信先の情報(例えば、送信IPアドレスやポート番号)を示す。
尚、実施形態5では、状態1714に、「不達ICMPパケット受信」を示すコードが設定される。
<補足>
以上、本発明の実施形態について説明したが、本発明は上記形態に限らず、以下のようにしてもよい。
(1)実施形態では、バッファ溢れを不具合の例として説明しているが、他の不具合でもよい。更には、不具合ではなく、ルータの状態の変化が生じた場合に、通知パケットを送信してもよい。例えば、内部に記憶しているテーブルに変更があった時に通知パケットを送信する等である。すなわち、ルータに不具合な変化又は一般的な変化等が生じ、ルータが特定の状態となった時に、特定の状態に応じて通知パケットを送信する。
例えば、バッファ溢れが発生したときには、溢れた中継パケットの送信先の装置、送信元の装置又はバッファ溢れの原因を作った原因端末装置等を宛先として通知パケットを送信する。また、ブロードキャストで通知パケットを送信することとしてもよい。バッファの残量が所定量を下回ったとき及び一般的な変化が生じた場合も、同様の宛先に通知パケットを送信する。
(2)実施形態では、ルータに不具合が発生した場合を説明しているが、例えばスイッチなどの、ルータ以外の中継装置であってもよい。
(3)実施形態では、通知パケットはICMPのパケットを使用しているが、通知パケットは、ICMPのパケットに限るものではなく、ネットワークにて転送されるパケットであれば、他のプロトコルのフォーマットでも良い。例えば、UDP(User Datagram Protocol)のパケットや、TCP(Transmission Control Protocol)のパケットでも良い。
(4)ルータ1000は、図2等の各構成要素の全部又は一部を、1チップ又は複数チップの集積回路で実現してもよい。
(5)ルータ1000は、図2等の各構成要素の全部又は一部を、コンピュータのプログラムで実現してもよいし、その他どのような形態で実施してもよい。
コンピュータプログラムの場合、メモリカード、CD−ROMなどいかなる記録媒体に書き込まれたものをコンピュータに読み込ませて実行させる形にしてもよいし、ネットワークを経由してプログラムをダウンロードして実行させる形にしてもよい。
(6)実施形態1〜5で説明した処理を組み合わせて行うようにしてもよい。例えば、ルータが、送信バッファが溢れた場合、又は、受信バッファが溢れた場合に通知パケットを送信するなどである。
上に述べた実施例には、以下に述べるような付記も開示されている。
(付記1)
一方の装置から受信したパケットを他方の装置へ転送する中継装置であって、
自装置が特定の状態となったことを検知する検知手段と、
前記検知手段で自装置が特定の状態となったことを検知した場合に、自装置を識別する情報と自装置が特定の状態であることを示す情報とを含むパケットを生成する生成手段と、
生成したパケットを所定の送信先に送信する送信手段と
を備える中継装置。
(付記2)
前記送信手段は、前記検知手段で自装置が特定の状態となったことを検知した頻度に応じて、生成したパケットを所定の送信先に送信する
付記1記載の中継装置。
(付記3)
前記特定の状態とは、受信したパケットのうち1又は複数のパケットを転送することができない状態である
付記1乃至付記2記載の中継装置。
(付記4)
前記中継装置は、転送するパケットを記憶しておく記憶手段を備え、
前記特定の状態とは、前記記憶手段の空き領域が所定量を下回った状態である
付記1乃至付記2記載の中継装置。
(付記5)
前記特定の状態とは、レイトコリジョンの発生を検知した状態である
付記1乃至付記2記載の中継装置。
(付記6)
前記特定の状態とは、ポートの通信モードの設定が変更された状態である
付記1乃至付記2記載の中継装置。
(付記7)
前記特定の状態とは、転送したパケットの不達を示す情報を含むパケットを受信した状態である
付記1乃至付記2記載の中継装置。
(付記8)
前記特定の状態とは、中継装置に生じる得る一般的な変化が生じた状態である
付記1乃至付記2記載の中継装置。
(付記9)
前記所定の送信先とは、転送できなかったパケットの送信先である
付記1乃至付記8記載の中継装置。
(付記10)
前記所定の送信先とは、転送できなかったパケットの送信元である
付記1乃至付記8記載の中継装置。
(付記11)
前記所定の送信先とは、前記記憶手段に記憶されているパケットであって最近記憶したパケットの送信先である
付記4記載の中継装置。
(付記12)
前記所定の送信先とは、前記記憶手段に記憶されているパケットであって最近記憶したパケットの送信元である
付記4記載の中継装置。
(付記13)
前記中継装置は、転送するパケットを記憶しておく記憶手段を備え、
前記所定の送信先とは、受信したパケットの送信元であって、前記記憶手段に記憶されているパケットのうち、当該送信元から送信されたパケットの数が最も多い送信元である
付記1乃至付記2記載の中継装置。
(付記14)
前記所定量とは、蓄積できる全体のパケット個数以下の個数を示す量である
付記4記載の中継装置。
(付記15)
前記所定の送信先とは、前記中継装置が属するネットワークに属する機器である
付記1乃至付記8記載の中継装置。
(付記16)
一方の装置から受信したパケットを他方の装置へ転送する中継装置で用いられる自装置の状態通知方法であって、
自装置が特定の状態となったことを検知する検知ステップと、
前記検知ステップで自装置が特定の状態となったことを検知した場合に、自装置を識別する情報と自装置が特定の状態であることを示す情報とを含むパケットを生成する生成ステップと、
生成したパケットを所定の送信先に送信する送信ステップと
を備える状態通知方法。
(付記17)
一方の装置から受信したパケットを他方の装置へ転送する中継装置に、自装置の状態を通知させるためのコンピュータプログラムであって、
自装置が特定の状態となったことを検知する処理を実行させ、
自装置が特定の状態となったことを検知した場合に、自装置を識別する情報と自装置が特定の状態であることを示す情報とを含むパケットを生成する処理を実行させ、
生成したパケットを所定の送信先に送信する処理を実行させる
コンピュータプログラム。
1000 ルータ
1100 制御部
1200 受信部
1300 送信部
1400 状態検出部
1500 宛先決定部
1600 通知パケット送信制御部
1700 通知パケット生成部
1800 ルーティングテーブル記憶部
2000 エンド端末
3000 受信バッファ管理部
3010 受信バッファ
3100 中継パケット用送信バッファ管理部
3110 中継パケット用送信バッファ
3200 通知パケット用送信バッファ管理部
3210 通知パケット用送信バッファ
4000 プローブ装置

Claims (15)

  1. 一方の装置から受信したパケットを他方の装置へ転送する中継装置であって、
    自装置がレイトコリジョンの発生を検知した状態となったことを検知する検知手段と、
    前記検知手段で自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成手段と、
    生成したパケットを所定の送信先に送信する送信手段と
    を備える中継装置。
  2. 一方の装置から受信したパケットを他方の装置へ転送する中継装置であって、
    自装置がポートの通信モードの設定が変更された状態となったことを検知する検知手段と、
    前記検知手段で自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成手段と、
    生成したパケットを所定の送信先に送信する送信手段と
    を備える中継装置。
  3. 一方の装置から受信したパケットを他方の装置へ転送する中継装置であって、
    自装置が特定の状態となったことを検知する検知手段と、
    前記検知手段で自装置が特定の状態となったことを検知した場合に、自装置を識別する情報と自装置が特定の状態であることを示す情報とを含むパケットを生成する生成手段と、
    生成したパケットを記憶しておく記憶手段と、
    生成したパケットを、前記記憶手段に記憶されているパケットを最も多く送信した送信元へ送信する送信手段と
    を備える中継装置。
  4. 一方の装置から受信したパケットを他方の装置へ転送する中継装置であって、
    転送したパケットの不達を示す情報を含むパケットを受信した状態に自装置がなったことを検知する検知手段と、
    前記検知手段で自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成手段と、
    生成したパケットを所定の送信先に送信する送信手段と
    を備える中継装置。
  5. 一方の装置から受信したパケットを他方の装置へ転送する中継装置であって、
    中継装置に生じる得る一般的な変化が生じた状態に自装置がなったことを検知する検知手段と、
    前記検知手段で自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成手段と、
    生成したパケットを所定の送信先に送信する送信手段と
    を備える中継装置。
  6. 一方の装置から受信したパケットを他方の装置へ転送する中継装置で用いられる自装置の状態通知方法であって、
    自装置がレイトコリジョンの発生を検知した状態となったことを検知する検知ステップと、
    前記検知ステップで自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成ステップと、
    生成したパケットを所定の送信先に送信する送信ステップと
    を備える状態通知方法。
  7. 一方の装置から受信したパケットを他方の装置へ転送する中継装置で用いられる自装置の状態通知方法であって、
    自装置がポートの通信モードの設定が変更された状態となったことを検知する検知ステップと、
    前記検知ステップで自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成ステップと、
    生成したパケットを所定の送信先に送信する送信ステップと
    を備える状態通知方法。
  8. 一方の装置から受信したパケットを他方の装置へ転送する中継装置で用いられる自装置の状態通知方法であって、
    自装置が特定の状態となったことを検知する検知ステップと、
    前記検知ステップで自装置が特定の状態となったことを検知した場合に、自装置を識別する情報と自装置が特定の状態であることを示す情報とを含むパケットを生成する生成ステップと、
    生成したパケットを記憶手段に記憶させておく記憶ステップと、
    生成したパケットを、前記記憶手段に記憶されているパケットを最も多く送信した送信元へ送信する送信ステップと
    を備える状態通知方法。
  9. 一方の装置から受信したパケットを他方の装置へ転送する中継装置で用いられる自装置の状態通知方法であって、
    転送したパケットの不達を示す情報を含むパケットを受信した状態に自装置がなったことを検知する検知ステップと、
    前記検知ステップで自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成ステップと、
    生成したパケットを所定の送信先に送信する送信ステップと
    を備える状態通知方法。
  10. 一方の装置から受信したパケットを他方の装置へ転送する中継装置で用いられる自装置の状態通知方法であって、
    中継装置に生じる得る一般的な変化が生じた状態に自装置がなったことを検知する検知ステップと、
    前記検知ステップで自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する生成ステップと、
    生成したパケットを所定の送信先に送信する送信ステップと
    を備える状態通知方法。
  11. 一方の装置から受信したパケットを他方の装置へ転送する中継装置に用いられるコンピュータプログラムであって、
    自装置がレイトコリジョンの発生を検知した状態となったことを検知する処理を実行させ、
    自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する処理を実行させ、
    生成したパケットを所定の送信先に送信する処理を実行させる
    コンピュータプログラム。
  12. 一方の装置から受信したパケットを他方の装置へ転送する中継装置に用いられるコンピュータプログラムであって、
    自装置がポートの通信モードの設定が変更された状態となったことを検知する処理を実行させ、
    自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する処理を実行させ、
    生成したパケットを所定の送信先に送信する処理を実行させる
    コンピュータプログラム。
  13. 一方の装置から受信したパケットを他方の装置へ転送する中継装置に用いられるコンピュータプログラムであって、
    自装置が特定の状態となったことを検知する処理を実行させ、
    自装置が特定の状態となったことを検知した場合に、自装置を識別する情報と自装置が特定の状態であることを示す情報とを含むパケットを生成する処理を実行させ、
    生成したパケットを記憶手段に記憶させておく処理を実行させ、
    生成したパケットを、前記記憶手段に記憶されているパケットを最も多く送信した送信元へ送信する処理を実行させる
    コンピュータプログラム。
  14. 一方の装置から受信したパケットを他方の装置へ転送する中継装置に用いられるコンピュータプログラムであって、
    転送したパケットの不達を示す情報を含むパケットを受信した状態に自装置がなったことを検知する処理を実行させ、
    自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する処理を実行させ、
    生成したパケットを所定の送信先に送信する処理を実行させる
    コンピュータプログラム。
  15. 一方の装置から受信したパケットを他方の装置へ転送する中継装置に用いられるコンピュータプログラムであって、
    中継装置に生じる得る一般的な変化が生じた状態に自装置がなったことを検知する処理を実行させ、
    自装置が前記状態となったことを検知した場合に、自装置を識別する情報と自装置が前記状態であることを示す情報とを含むパケットを生成する処理を実行させ、
    生成したパケットを所定の送信先に送信する処理を実行させる
    コンピュータプログラム。
JP2009247354A 2009-03-30 2009-10-28 中継装置、状態通知方法、および、コンピュータプログラム Expired - Fee Related JP5392003B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009247354A JP5392003B2 (ja) 2009-03-30 2009-10-28 中継装置、状態通知方法、および、コンピュータプログラム
US12/732,368 US8503301B2 (en) 2009-03-30 2010-03-26 Relay device, state informing method, and computer program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009081000 2009-03-30
JP2009081000 2009-03-30
JP2009247354A JP5392003B2 (ja) 2009-03-30 2009-10-28 中継装置、状態通知方法、および、コンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2010259037A JP2010259037A (ja) 2010-11-11
JP5392003B2 true JP5392003B2 (ja) 2014-01-22

Family

ID=42784176

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009247354A Expired - Fee Related JP5392003B2 (ja) 2009-03-30 2009-10-28 中継装置、状態通知方法、および、コンピュータプログラム

Country Status (2)

Country Link
US (1) US8503301B2 (ja)
JP (1) JP5392003B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5669197B2 (ja) * 2011-02-16 2015-02-12 Kddi株式会社 ネットワーク障害検出装置、方法およびプログラム
US8711708B2 (en) * 2012-07-24 2014-04-29 Accedian Networks Inc. Automatic setup of reflector instances
JP5672275B2 (ja) * 2012-08-28 2015-02-18 株式会社デンソー ネットワークシステム
US10187218B2 (en) * 2015-09-15 2019-01-22 Google Llc Systems and methods for processing packets in a computer network
JP7168846B2 (ja) * 2018-09-27 2022-11-10 アイコム株式会社 中継装置および音声信号の中継方法
US11575609B2 (en) * 2019-07-19 2023-02-07 Intel Corporation Techniques for congestion management in a network

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2722053B2 (ja) * 1995-03-14 1998-03-04 株式会社超高速ネットワーク・コンピュータ技術研究所 輻輳通知方法
JP3226844B2 (ja) 1997-08-22 2001-11-05 日本電気通信システム株式会社 基幹ネットワーク相互接続における障害通知方式
US6678243B2 (en) * 1997-11-14 2004-01-13 Ess Technology, Inc. Variable codec frame length
JP4207297B2 (ja) 1998-09-11 2009-01-14 株式会社日立製作所 パケット通信装置
US7911960B1 (en) * 1999-08-13 2011-03-22 International Business Machines Corporation Delayed-start method for minimizing internal switch congestion
JP2002252640A (ja) * 2001-02-23 2002-09-06 Fujitsu Ltd ネットワーク中継装置及び方法並びにシステム
US7586909B1 (en) * 2002-03-06 2009-09-08 Agere Systems Inc. Striping algorithm for switching fabric
JP4002509B2 (ja) 2002-12-27 2007-11-07 株式会社エヌ・ティ・ティ・ドコモ パケット通信システム、パケット通信方法及びプロトコル制御エージェント装置
JP2004274289A (ja) 2003-03-07 2004-09-30 Fujitsu Ltd マネージャ−エージェント型情報収集アプリケーションのロードバランス方法及び装置
JP4099108B2 (ja) * 2003-06-10 2008-06-11 富士通株式会社 ネットワーク及びサーバの負荷低減ルータ
US7355975B2 (en) * 2004-04-30 2008-04-08 International Business Machines Corporation Method and apparatus for group communication with end-to-end reliability
JP2007068093A (ja) 2005-09-02 2007-03-15 Nippon Telegraph & Telephone East Corp Ip電話故障区間切り分けシステム及び方法
US8036128B2 (en) * 2007-09-28 2011-10-11 Alcatel Lucent Method for communicating backpressure messages in a data communications system
US8064360B2 (en) * 2009-01-23 2011-11-22 Empire Technology Development Llc Wireless home network routing protocol

Also Published As

Publication number Publication date
US20100246583A1 (en) 2010-09-30
US8503301B2 (en) 2013-08-06
JP2010259037A (ja) 2010-11-11

Similar Documents

Publication Publication Date Title
JP5392003B2 (ja) 中継装置、状態通知方法、および、コンピュータプログラム
JP5521060B2 (ja) 端末間の通信を高速化する通信装置および通信システム
US8489913B2 (en) Network system and network relay apparatus
US20070211623A1 (en) Failure recovery method, network device, and program
JP5534481B2 (ja) 通信品質監視システム、通信品質監視方法、及び記憶媒体
CN101159669A (zh) 一种业务流量切换方法及装置
JP5883743B2 (ja) パケット通信網における通信途絶時間短縮方法
US7974188B2 (en) Repeater and communication method
WO2015070608A1 (zh) Oam性能监控方法及装置
JP2009177739A (ja) 通信装置、通信システム及び通信方法
JP4687590B2 (ja) 情報配信システム及び障害判定方法
CN112737940A (zh) 一种数据传输的方法和装置
JP2008118281A (ja) 通信装置
JP5083109B2 (ja) ネットワーク情報収集装置、ネットワーク情報提供装置、及びネットワーク計測システム
JP2006311427A (ja) エッジルータ及びmplsパスの故障検出方法
WO2013042564A1 (ja) 診断システム
JP4351368B2 (ja) データ転送方法及びそれを用いた通信装置
JPWO2005117365A1 (ja) 通信制御装置及び通信制御方法
CN113518046A (zh) 一种报文转发方法及框式交换设备
JP2006279402A (ja) 通信経路の切替装置、通信経路の切替方法、及び、通信システム
JP2005012672A (ja) パケット転送システム、パケット監視方法、呼制御装置、パケット転送装置、およびモニタ装置
JP2004201196A (ja) 遅延時間抑制伝送方法およびシステムおよび遅延時間抑制伝送用ルータ
JP2006311406A (ja) ネットワーク品質計測方法
JP2002009820A (ja) ネットワークにおける配送メッセージ送出抑制方法
JP5071245B2 (ja) パケットの交換装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120720

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130513

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130722

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130930

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees