JP2019536383A - パケット伝送 - Google Patents

パケット伝送 Download PDF

Info

Publication number
JP2019536383A
JP2019536383A JP2019528820A JP2019528820A JP2019536383A JP 2019536383 A JP2019536383 A JP 2019536383A JP 2019528820 A JP2019528820 A JP 2019528820A JP 2019528820 A JP2019528820 A JP 2019528820A JP 2019536383 A JP2019536383 A JP 2019536383A
Authority
JP
Japan
Prior art keywords
numa node
node
output interface
numa
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2019528820A
Other languages
English (en)
Other versions
JP6751819B2 (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.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Publication of JP2019536383A publication Critical patent/JP2019536383A/ja
Application granted granted Critical
Publication of JP6751819B2 publication Critical patent/JP6751819B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header conversion, routing tables or routing tags

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本発明の例示は、パケット伝送方法、NUMAノードと機器読み取り可能な記憶媒体を提供する。一例示では、第1NUMAノードは、転送すべきパケットの宛先IPアドレスを利用して転送テーブルを照会し、前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースを取得し、前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を取得し、前記第2NUMAノードのノード情報と前記第1NUMAノードのノード情報とが同じである場合に、当該出力インターフェースが前記第1NUMAノードに位置すると特定し、前記少なくとも2つの出力インターフェースのうちの前記第1NUMAノードに位置する1つの出力インターフェースを介して前記パケットを送信する。前記第2NUMAノードは、前記ネットワーク機器に位置する。

Description

関連出願の相互引用
本願は、出願日が2016年11月30日であり、出願番号が201611086150.4であり、発明名称が「パケット伝送方法および装置」である中国特許出願の優先権を主張し、当該出願の全文が引用により本願に組み込まれる。
SMP(Symmetric Multi−Processor、対称型マルチプロセッサ)システムでは、計算機器における複数のプロセッサがメモリサブシステムおよびバス構成を共用するため、稼働負荷を全ての利用可能なプロセッサに均一に分担できる。
本発明の一実施形態に含まれるNUMAノードのネットワーキング模式図である。
本発明の一実施形態におけるパケット伝送方法のフローチャートである。
本発明の一実施形態におけるネットワーク機器のハードウェア構成図である。
本発明の一実施形態におけるパケット伝送論理の構成図である。
以下では、本発明の実施例の図面を組み合わせて本発明の実施例における解決手段を明瞭で完全に記述する。明らかに、記述される実施例が単に本発明の一部の実施例に過ぎず、全部の実施例ではない。本発明における実施例に基づいて、当業者が進歩性に値する労働をせずに成した全ての他の実施例は、何れも本発明の保護範囲に含まれる。
図1は、NUMA(Non−Uniform Memory Architecture、不均一メモリアーキテクチャ)のネットワーキング模式図である。ネットワーク機器Aは、NUMAノード1とNUMAノード2を備え、各NUMAノードは、1セットのプロセッサリソース(図におけるCPU(Central Processing Unit、中央処理装置)に含まれる複数のカーネル)、メモリリソースと複数のインターフェースを含み、且つNUMAノード1とNUMAノード2とは、CSI(Common System Interface、共通システムインターフェース)バスを介して接続されている。
一例示では、ネットワーク機器Bからネットワーク機器Aに送信されてから、ネットワーク機器Aからネットワーク機器Cに送信されるパケットについて、NUMAノード1は、インターフェース111を介して当該パケットを受信した後、負荷分散を実現するために、インターフェース112、インターフェース113、インターフェース211、インターフェース212から1つのインターフェースをランダムに選択する。インターフェース212が選択されると仮定すれば、NUMAノード1は、パケットをNUMAノード2へ送信する。NUMAノード2は、インターフェース212を介してパケットをネットワーク機器Cへ転送する。
明らかに、上記方式において、NUMAノード1がCSIバスを跨いでパケットをNUMAノード2へ転送する必要があるため、パケット転送効率が低減されるばかりではなく、CSIバスの帯域幅のオーバーヘッドも無駄になる。
本発明の実施例は、パケット伝送方法を提供する。当該方法は、ネットワーク機器(例えば、ルータ、スイッチ等)に含まれるNUMAノードに適用し、当該ネットワーク機器は、少なくとも2つのNUMAノードを備え、各NUMAノードは、1セットのプロセッサリソース、メモリリソースと複数のインターフェースを含み、且つNUMAノード同士は、CSIバスを介して接続されている。図2は、当該パケット伝送方法のフローチャートである。
ステップ201では、ネットワーク機器における第1NUMAノードは、転送すべきパケットの宛先IPアドレスを利用して転送テーブルを照会し、前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースを取得する。
一例示では、当該第1NUMAノードは、当該第1NUMAノードに属する入力インターフェースを介して当該パケットを受信する。例えば、当該第1NUMAノードにおけるCPU中の受信カーネルは、当該入力インターフェースを介して当該パケットを受信する。当該受信カーネルは、当該パケットを第1NUMAノードにおける当該CPU中の転送カーネルへ送信し、当該転送カーネルは、当該パケットを他のネットワーク機器へ転送する。別の例示では、当該第1NUMAノードは、当該パケットを生成する。例えば、当該第1NUMAノードにおける当該CPU中の制御カーネルは、当該パケットを生成する。当該制御カーネルは、当該パケットを他のネットワーク機器へ転送する。更に例えば、当該転送カーネルは、当該パケットを生成する。当該転送カーネルは、当該パケットを他のネットワーク機器へ転送する。
ステップ202では、前記第1NUMAノードは、前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を取得し、前記第2NUMAノードのノード情報と前記第1NUMAノードのノード情報とが同じである場合に、当該出力インターフェースが前記第1NUMAノードに位置すると特定する。
前記第2NUMAノードは、前記ネットワーク機器に位置する。
一例では、ステップ202の前に、前記第1NUMAノードは、前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースと、当該少なくとも2つの出力インターフェースのそれぞれ所属する第2NUMAノードに対応するノード情報との対応関係を生成する。このように、第1NUMAノードは、生成された対応関係に基づいて前記少なくとも2つの出力インターフェースのそれぞれ所属する第2NUMAノードのノード情報を容易に特定する。例えば、転送テーブルをメンテナンスする。当該転送テーブルは、IPアドレスと出力インターフェースとの対応関係を記録する。転送テーブルのメンテナンス手順(例えば、第1NUMAノードが当該宛先IPアドレスに対応する転送テーブルを生成するとき)について、当該宛先IPアドレスが少なくとも2つの出力インターフェースに対応すると知られた場合、少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を特定し、当該宛先IPアドレスと、当該宛先IPアドレスに対応する各出力インターフェースと、当該出力インターフェースの所属する第2NUMAノードに対応するノード情報との対応関係を転送テーブルに記録する。
一例では、当該宛先IPアドレスと、当該宛先IPアドレスに対応する各出力インターフェースと、当該出力インターフェースの所属するNUMAノードに対応するノード情報との対応関係が転送テーブルに記録されているため、NUMAノードは、当該少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードに対応するノード情報を当該転送テーブルから取得できる。
一例示では、出力インターフェースと当該出力インターフェースの所属する第2NUMAノードのノード情報との対応関係は、上記転送テーブルに保存されてもよく、別のリストに保存されてもよい。本発明の例示は、それについて限定しない。
ステップ203では、前記少なくとも2つの出力インターフェースのうちの前記第1NUMAノードに位置する1つの出力インターフェースを介してパケットを送信する。
一例では、ステップ203は、第1NUMAノードに位置する出力インターフェースの数が1つである場合に、第1NUMAノードに位置する1つの出力インターフェースを介して当該パケットを送信すること、または、第1NUMAノードに位置する出力インターフェースの数が少なくとも2つである場合に、プリセット負荷分散ポリシーに基づいて、第1NUMAノードに位置する少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して当該パケットを送信することを含む。
一例では、少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報(即ち、ステップ202)を転送テーブルから特定し、各出力インターフェースの所属する第2NUMAノードのノード情報が何れも第1NUMAノードのノード情報と異なる場合に、この少なくとも2つの出力インターフェースの何れも第1NUMAノードに位置しないと特定する。第1NUMAノードは、プリセット負荷分散ポリシーに基づいて、この少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して当該パケットを送信する。
上記技術案を基に、本発明の実施例において、第1NUMAノードは、転送すべきパケットの宛先IPアドレスを利用して転送テーブルを照会し、前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースを取得し、前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を取得し、前記第2NUMAノードのノード情報と前記第1NUMAノードのノード情報とが同じである場合に、当該出力インターフェースが前記第1NUMAノードに位置すると特定し(ここでは、前記第2NUMAノードは、前記ネットワーク機器に位置する)、前記少なくとも2つの出力インターフェースのうちの前記第1NUMAノードに位置する1つの出力インターフェースを介して前記パケットを送信する。このように、当該パケットを、別のNUMAノードに位置する出力インターフェースを介して送信することではなく、当該パケットの所在する第1NUMAノードにおける出力インターフェースを介して送信するため、NUMAノードを跨ぐパケット転送の状況が減少し、パケット転送効率が向上し、NUMAノード間のCSIバスの帯域幅オーバーヘッドも低減され、ネットワーク機器全体のスループット能力も高められる。
以下では、図1に示す応用場面を組み合わせ、本発明の実施例の技術案を詳細に説明する。本応用場面では、ネットワーク機器Aとネットワーク機器Cの間に4本のリンクが配置され、これら4本のリンクは、ECMP(Equal−Cost MultiPath、等コストマルチパス)を形成する。全てのリンクが正常であるとき、全てのリンクの間でパケットの負荷分散を行い、伝送性能が向上する。リンク障害が発生したとき、障害が発生していないリンクを介してパケットを送信するため、安定性と信頼性も向上する。
一例示では、ECMPの出力インターフェースが複数のNUMAノードに位置するとき、パケットを受信する入力インターフェースとパケットを送信する出力インターフェースとが異なるNUMAノードに位置する場合には、パケットがNUMAノードを跨いで転送される必要があるため、ネットワーク機器の転送性能が影響され、パケット転送効率が低下してしまう。その一方、本発明の実施例では、ECMPの出力インターフェースが複数のNUMAノードに位置するとき、出力インターフェースとNUMAノードとの対応関係に基づいて、パケットを送信する出力インターフェースをできるだけ当該パケットを得るNUMAノードに位置させることが可能であるため、パケットのNUMAノードを跨ぐ転送が回避され、ネットワーク機器の転送性能が向上し、パケット転送効率が高められる。
一例では、ネットワーク機器B下のホストD(図1では図示せず)がネットワーク機器Aを介してネットワーク機器C下のホストE(図1では図示せず)へパケットを送信することを例とし、ホストEのIPアドレスを100.100.100.100とすれば、ネットワーク機器Cは、4本のリンクによってIPアドレス100.100.100.100を付加するルートを配布可能であり、且つネットワーク機器Aは、インターフェース112、インターフェース113、インターフェース211およびインターフェース212からこのルートを受信し、IPアドレス100.100.100.100とインターフェースとの対応関係を転送テーブル(即ち、ルーティングテーブル)に記録する。表1は、転送テーブルの1つの例示である。
表1とは異なり、本発明の実施例において、ネットワーク機器Aは、IPアドレス100.100.100.100に対応する転送テーブルを生成する際、IPアドレス100.100.100.100と、これらの4つの出力インターフェースと、これら4つの出力インターフェースのそれぞれ所属するNUMAノードに対応するノード情報との対応関係を転送テーブルに記録する。表2は、1つの例示を示す。
一例では、ネットワーク機器Aの全てのカーネルから制御カーネルを特定する。例えば、NUMAノード1のカーネル120は、制御カーネルとして特定される。インターフェース112、インターフェース113、インターフェース212およびインターフェース213から受信されたルートは、何れも制御カーネル120へ送信される。制御カーネル120は、これらのルートを受信した場合に、表2に示す転送テーブルを生成し、当該転送テーブルをメモリ13に記憶する。後続過程において、全てのNUMAノード内のカーネルは、何れもメモリ13における転送テーブルへアクセスできる。
一例では、表2に示す転送テーブルを生成するために、各インターフェースと当該インターフェースの所属するNUMAノードのノード情報との対応関係、例えば、インターフェース111とNUMAノード1のノード情報との対応関係、インターフェース112とNUMAノード1のノード情報との対応関係、インターフェース113とNUMAノード1のインターフェース情報との対応関係、インターフェース211とNUMAノード2のノード情報との対応関係、インターフェース212とNUMAノード2のノード情報との対応関係、インターフェース213とNUMAノード2のノード情報との対応関係は、ネットワーク機器Aに予め配置される。これを基に、制御カーネルは、転送テーブル1を生成し、当該対応関係を検索することで、インターフェース112の所属するNUMAノード1のノード情報、インターフェース113の所属するNUMAノード1に対応するノード情報、インターフェース211の所属するNUMAノード2に対応するノード情報、インターフェース212の所属するNUMAノード3に対応するノード情報を取得し、更に表2を生成する。
上記応用場面に、本発明の実施例に係るパケット伝送方法は、以下のステップを含む。
ステップ1では、NUMAノード1は、パケットを取得する。当該パケットの宛先IPアドレスは、100.100.100.100である。
ステップ2では、NUMAノード1は、当該宛先IPアドレス100.100.100.100に基づいて表2に示す転送テーブルを照会し、当該宛先IPアドレスにマッチングする出力インターフェースがインターフェース112、インターフェース113、インターフェース211およびインターフェース212であることを把握する。
ステップ3では、NUMAノード1は、表2に示す転送テーブルから、各出力インターフェースの所属するNUMAノードのノード情報を取得する。例えば、NUMAノード1は、インターフェース112の所属するNUMAノード1のノード情報、インターフェース113の所属するNUMAノード1のノード情報、インターフェース211の所属するNUMAノード2のノード情報、インターフェース212の所属するNUMAノード2のノード情報を取得する。
ステップ4では、NUMAノード1は、各出力インターフェースの所属するNUMAノードのノード情報に基づいて、宛先IPアドレス100.100.100.100に対応するインターフェースのうち、NUMAノード1に位置する出力インターフェースがインターフェース112およびインターフェース113であることを特定する。
方式一では、NUMAノード1は、当該パケットを受信したときに、受信されたパケットの入力インターフェースをインターフェース111として特定し、ネットワーク機器Aに予め配置された各インターフェースと当該インターフェースの所属するNUMAノードに対応するノード情報との対応関係に基づいて、インターフェース111の所属するNUMAノード1のノード情報を特定する。これを基に、インターフェース112、インターフェース113の所属するNUMAノードのノード情報がそれぞれインターフェース111の所属するNUMAノード1のノード情報とが同じであるため、NUMAノード1は、インターフェース112、インターフェース113がNUMAノード1に位置する出力インターフェースであることを特定可能である。インターフェース211、インターフェース212の所属するNUMAノード2のノード情報とインターフェース1の所属するNUMAノード1のノード情報とが異なるため、NUMAノード1は、インターフェース211、インターフェース212がNUMAノード1に位置する出力インターフェースではないと特定可能である。
方式二では、NUMAノード1は、当該パケットを受信または生成したときに、NUMAノード1のノード情報を特定する。インターフェース112、インターフェース113の所属するNUMAノードのノード情報とNUMAノード1のノード情報とが同じであるため、NUMAノード1は、インターフェース112、インターフェース113がNUMAノード1に位置する出力インターフェースであると特定する。インターフェース211、インターフェース212の所属するNUMAノード2のノード情報とNUMAノード1のノード情報とが異なるため、NUMAノード1は、インターフェース211、インターフェース212がNUMAノード1に位置する出力インターフェースではないと特定する。
一例示では、各NUMAノード内は、何れも受信カーネル(他のネットワーク機器から送信されたパケットを受信)と転送カーネル(他のネットワーク機器へパケットを送信)を含む。図1に示すように、CPU12内のカーネル120が制御カーネルであり、カーネル121が受信カーネルであり、カーネル122−カーネル12nが転送カーネルであり、CPU22内のカーネル220が受信カーネルであり、カーネル221−カーネル22nが転送カーネルである。
一例示では、CPU12内の受信カーネルは、パケットを受信した後、パケットを当該受信カーネルの所在するNUMAノード1内の転送カーネルへ渡す。当該転送カーネルがパケットを受信した後、当該NUMAノード1が当該パケットに対応する、本NUMAノードに位置する出力インターフェースを特定する手順は、上記方式一または方式二で処理される。CPU22内の受信カーネルは、パケットを受信した後、パケットを当該受信カーネルの所在するNUMAノード2内の転送カーネルのみへ渡す。当該転送カーネルがパケットを受信した後、当該NUMAノード2が当該パケットに対応する、本NUMAノードに位置する出力インターフェースを特定する手順は、上記方式一または方式二で処理される。
ステップ5では、NUMAノード1は、NUMAノード1に位置する、IPアドレス100.100.100.100に対応する出力インターフェースを介して、パケットを送信する。
一例では、NUMAノード1に位置する、IPアドレス100.100.100.100に対応する出力インターフェースの数が1つである場合に、NUMAノード1は、NUMAノード1に位置するIPアドレス100.100.100.100に対応する1つの出力インターフェースを介して当該パケットを送信する。NUMAノード1に位置するIPアドレス100.100.100.100に対応する出力インターフェースの数が少なくとも2つである場合に、NUMAノード1は、プリセット負荷分散ポリシー(例えば、ポーリングポリシーまたはhashポリシー等)に基づいて、NUMAノード1に位置するこれらの少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して当該パケットを送信する。
例えば、インターフェース112、インターフェース113が本NUMAノードに位置する出力インターフェースであるため、NUMAノード1は、プリセット負荷分散ポリシー(例えば、ポーリングポリシーまたはhashポリシー等)に基づいて、インターフェース112とインターフェース113から1つの出力インターフェースを選択し、選択された出力インターフェースを介して当該パケットを送信してもよい。
一例では、プリセット負荷分散ポリシーがポーリングポリシーであるとき、出力インターフェースを選択するフローは、下記のようになる。ネットワーク機器B下のホストDからネットワーク機器A下のホストEへ送信された1番目のパケットについて、NUMAノード1は、インターフェース112を先に選択する。インターフェース112がNUMAノード1に位置する出力インターフェースであるため、NUMAノード1は、インターフェース112を介して1番目のパケットを送信する。ホストDからホストEへ送信された2番目のパケットについて、NUMAノード1は、インターフェース113を選択する。インターフェース113がNUMAノード1に位置する出力インターフェースであるため、NUMAノード1は、インターフェース113を介して2番目のパケットを送信する。ホストDからホストEへ送信された3番目のパケットについて、NUMAノード1は、インターフェース211を選択する。インターフェース211がNUMAノード1に位置する出力インターフェースではないため、NUMAノード1は、次のインターフェース212を選択する。インターフェース212がNUMAノード1に位置する出力インターフェースではないため、NUMAノード1は、次のインターフェース112を選択する。インターフェース112がNUMAノード1に位置する出力インターフェースであるため、NUMAノード1は、インターフェース112を介して3番目のパケットを送信する。これに準じて類推する。
一例では、プリセット負荷分散ポリシーがhashポリシーであるとき、出力インターフェースを選択するフローは、下記のようになる。ネットワーク機器B下のホストDからネットワーク機器A下のホストEへ送信された1番目のパケットについて、パケットのソースIPアドレスと宛先IPアドレスとに基づいて1つのハッシュ値をランダムに生成し(具体的な生成方式は説明しない)、その後、ハッシュ値に対して数2(即ち、本NUMAノードに位置するIPアドレス100.100.100.100に対応する出力インターフェースの数)の剰余を取る。剰余が0である場合に、NUMAノード1は、インターフェース112を介して1番目のパケットを送信し、剰余が1である場合に、NUMAノード1は、インターフェース113を介して1番目のパケットを送信する。これに準じて類推し、ホストDからホストEへ送信されたパケットのそれぞれについて、上記方式で処理を行う。
上記手順は、本NUMAノード1に位置するIPアドレス100.100.100.100に対応する出力インターフェースを例として説明した。別の例では、宛先IPアドレスに対応する全ての出力インターフェースが何れも本NUMAノード1に位置する出力インターフェースではない場合に、NUMAノード1は、更に、プリセット負荷分散ポリシー(例えば、ポーリングポリシーまたはhashポリシー等)に基づいて、宛先IPアドレスに対応する全ての出力インターフェース(即ち、他のNUMAノードに位置する出力インターフェース)から1つの出力インターフェースを選択し、選択された出力インターフェースを介して当該パケットを送信する。具体的な選択手順は、再び説明しない。
一例では、上記パケット伝送方法は、NUMAノード1における、当該パケットを取得した制御カーネルまたは転送カーネルによって実行される。
上記技術案を基に、本発明の実施例において、NUMAノード1は、転送すべきパケットの宛先IPアドレスを利用して転送テーブルを照会し、前記宛先IPアドレスに対応する出力インターフェースを取得し、出力インターフェースのうちの各出力インターフェースの所属するNUMAノードのノード情報を取得し、前記NUMAノードのノード情報とNUMAノード1のノード情報とが同じである場合に、当該出力インターフェースが当該NUMAノード1に位置すると特定し(ここでは、前記第2NUMAノードは、前記ネットワーク機器に位置する)、前記少なくとも2つの出力インターフェースのうちのNUMAノード1に位置する1つの出力インターフェースを介して前記パケットを送信する。このため、当該パケットを、別のNUMAノードに位置する出力インターフェースを介して送信することではなく、当該パケットの所在する当該NUMAノード1における出力インターフェースを介して送信可能であるため、NUMAノードを跨ぐパケット転送の状況が減少し、パケット転送効率が向上し、NUMAノード間のCSIバスの帯域幅オーバーヘッドも低減され、ネットワーク機器全体のスループット能力も高められる。
上記方法と同様な技術思想に基づき、本発明の実施例は、NUMAノードを更に提供する。
図3を参照すると、図3は、本発明の幾つかの実施例に供されるネットワーク機器のハードウェア構成図である。当該ネットワーク機器300は、複数のNUMAノードを備える。第1NUMAノード310は、プロセッサ311および機器読み取り可能な記憶媒体312を備える。プロセッサ311と機器読み取り可能な記憶媒体312とは、システムバス313を介して通信する。また、プロセッサ311は、機器読み取り可能な記憶媒体312に記憶されるパケット伝送論理40に対応する機器の実行可能な指令を読み取って実行することにより、上述したパケット伝送方法を実行する。一例示では、プロセッサ311は、複数のカーネルを備える。当該複数のカーネルのうちの1つのカーネルは、機器読み取り可能な記憶媒体312に記憶されるパケット伝送論理40に対応する機器の実行可能な指令を読み取って実行する。例えば、当該第1NUMAノードの制御カーネルは、当該パケットを生成し、当該制御カーネルは、機器読み取り可能な記憶媒体32に記憶されるパケット伝送論理40に対応する機器の実行可能な指令を読み取って実行する。更に、当該第1NUMAノードの受信カーネルは、当該パケットを受信して当該パケットを当該第1NUMAノードにおける転送カーネルへ送信し、当該転送カーネルは、機器読み取り可能な記憶媒体312に記憶されるパケット伝送論理40に対応する機器の実行可能な指令を読み取って実行する。
本文で言及される機器読み取り可能な記憶媒体312は、如何なる電気的なもの、磁気的なもの、光学的なものまたは他の物理的記憶装置であってもよく、情報(例えば、実行可能な指令、データ等)を含むか記憶可能である。例えば、前記機器読み取り可能な記憶媒体312は、RAM(Random Access Memory、ランダムアクセスメモリ)、揮発性メモリ、不揮発性メモリ、フラッシュメモリ、記憶ドライバ(例えば、ハードディスクドライバ)、ソリッド・ステート・ディスク、如何なるタイプの記憶ディスク(例えば、光ディスク、DVD等)、または類似する記憶媒体、または、それらの組み合わせであってもよい。
図4に示すように、機能上で区分すると、前記パケット伝送論理は、下記のモジュールを備える。
照会モジュール11は、転送すべきパケットの宛先IPアドレスを利用して転送テーブルを照会し、前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースを取得する。
取得モジュール12は、前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノード320のノード情報を取得する。ただし、前記第2NUMAノード320は、前記ネットワーク機器に位置する。
特定モジュール13は、前記第2NUMAノード320のノード情報と前記第1NUMAノードのノード情報とが同じである場合に、当該出力インターフェースが前記第1NUMAノードに位置すると特定する。ただし、前記第2NUMAノード320は、前記ネットワーク機器に位置する。
送信モジュール14は、前記少なくとも2つの出力インターフェースのうちの前記第1NUMAノードに位置する1つの出力インターフェースを介して前記パケットを送信する。
一例では、前記装置は、記録モジュール(図示せず)を更に備える。当該記録モジュールは、前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノード320のノード情報を特定し、前記出力インターフェースと当該出力インターフェースの所属する第2NUMAノード320に対応するノード情報との対応関係を前記転送テーブルにおける当該出力インターフェースを含むエントリに記録する。
一例では、取得モジュール12は、具体的に、前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノード320のノード情報を前記転送テーブルに記録される前記対応関係から取得する。
一例では、前記送信モジュール14は、具体的に、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する出力インターフェースの数が1つである場合に、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する1つの出力インターフェースを介して前記パケットを送信し、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する出力インターフェースの数が少なくとも2つである場合に、プリセット負荷分散ポリシーに基づいて、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して前記パケットを送信する。
1つの例示では、前記送信モジュール14は、更に、前記宛先IPアドレスに対応する出力インターフェースが何れも前記第1NUMAノードに位置しない場合に、プリセット負荷分散ポリシーに基づいて、前記少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して前記パケットを送信する。
装置実施例は、方法実施例に基本的に対応するため、その関連箇所が方法実施例部分の説明を参照すればよい。上述した装置実施例は、単に例示であり、その中、分離部品として説明される手段が物理的に分離されるものであってもよくでなくてもよい。また、手段として表示される部品は、物理手段であってもでなくてもよい。更に、それらの手段は、1箇所に位置してもよく、複数のネットワークセルに分散してもよい。実際の需要に応じてその中の一部または全部のモジュールを選択して本実施例の目的を果たすことが可能である。当業者は、進歩性に値する労働をせずに、理解して実施可能である。
説明すべきことは、本文に、第1と第2等のような関係用語は、単に1つの実体や操作を別の実体や操作と区分させるために用いられ、これらの実体や操作の間になんらかの実際的な関係や順序が存在するとは必ずしも要求やヒントすることではない。用語「含む」、「備える」またはほかの何れかの同義語が非排他的含有をカバーすることを狙う。このように、一シリーズの要素を有する手順、方法、物品または機器は、それらの要素を有するだけではなく、明確に挙げられていない他の要素も有し、またはこのような手順、方法、物品または機器に固有の要素も有する。更なる制限がない限り、語句「1つの…を含む」で限定される要素は、前記要素を有する手順、方法、物品または機器に他の同じ要素を更に有することをあえて排除しない。
以上では、本発明の実施例に供される方法と装置を詳細に説明した。本文では、具体的な例を用いて本発明の原理及び実施形態を説明したが、以上の実施例の説明が単に本発明の方法およびその要旨を容易に理解するために用いられる。それとともに、当業者であれば、本発明の思想に基づいて具体的な実施形態及び応用範囲を変更可能である。したがって、本明細書の内容は、本発明に対する制限として理解されるべきではない。

Claims (15)

  1. ネットワーク機器における第1不均一メモリアーキテクチャ(NUMA)ノードが転送すべきパケットの宛先IPアドレスを利用して転送テーブルを照会し、前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースを取得するステップと、
    前記第1NUMAノードは、前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を取得し、前記第2NUMAノードのノード情報と前記第1NUMAノードのノード情報とが同じである場合に、当該出力インターフェースが前記第1NUMAノードに位置すると特定するステップと、
    前記第1NUMAノードが前記少なくとも2つの出力インターフェースのうちの前記第1NUMAノードに位置する1つの出力インターフェースを介して前記パケットを送信するステップと、を含み、
    前記第2NUMAノードは、前記ネットワーク機器に位置することを特徴とするパケット伝送方法。
  2. 前記第1NUMAノードが前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を特定するステップと、
    前記第1NUMAノードが前記出力インターフェースと当該出力インターフェースの所属する第2NUMAノードに対応するノード情報との対応関係を前記転送テーブルにおける当該出力インターフェースを含むエントリに記録するステップと、を更に含むことを特徴とする請求項1に記載のパケット伝送方法。
  3. 前記第1NUMAノードが前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を取得するステップは、
    前記第1NUMAノードが、前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を前記転送テーブルに記録される前記対応関係から取得することを含むことを特徴とする請求項2に記載のパケット伝送方法。
  4. 前記第1NUMAノードに位置する1つの出力インターフェースを介して前記パケットを送信するステップは、
    前記第1NUMAノードに位置する前記宛先IPアドレスに対応する出力インターフェースの数が1つである場合に、前記第1NUMAノードが前記第1NUMAノードに位置する前記宛先IPアドレスに対応する1つの出力インターフェースを介して前記パケットを送信することと、
    前記第1NUMAノードに位置する前記宛先IPアドレスに対応する出力インターフェースの数が少なくとも2つである場合に、前記第1NUMAノードが、プリセット負荷分散ポリシーに基づいて、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して前記パケットを送信することと、を含むことを特徴とする請求項1に記載のパケット伝送方法。
  5. 前記宛先IPアドレスに対応する出力インターフェースが何れも前記第1NUMAノードに位置しない場合に、前記第1NUMAノードが、プリセット負荷分散ポリシーに基づいて、前記少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して前記パケットを送信するステップを更に含むことを特徴とする請求項1に記載のパケット伝送方法。
  6. 選択された出力インターフェースを介して前記パケットを送信するステップは、
    前記第1NUMAノードが、前記選択された出力インターフェースの所属する第2NUMAノードとの間の共通システムインターフェース(CSI)バスを介して、前記パケットを前記選択された出力インターフェースの所属する第2NUMAノードへ転送することにより、選択された出力インターフェースを介して前記第2NUMAノードに前記パケットを送信させることを含むことを特徴とする請求項5に記載のパケット伝送方法。
  7. ネットワーク機器であって、
    複数の不均一メモリアーキテクチャ(NUMA)ノードを備え、
    その中の第1NUMAノードは、
    プロセッサと、機器読み取り可能な記憶媒体とを備え、
    前記機器読み取り可能な記憶媒体には、前記プロセッサによって実行され得る機器の実行可能な指令が記憶され、
    前記プロセッサは、前記機器の実行可能な指令により、
    転送すべきパケットの宛先IPアドレスを利用して転送テーブルを照会し、前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースを取得することと、
    前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を取得し、前記第2NUMAノードのノード情報と前記第1NUMAノードのノード情報とが同じである場合に、当該出力インターフェースが前記第1NUMAノードに位置すると特定することと、
    前記少なくとも2つの出力インターフェースのうちの前記第1NUMAノードに位置する1つの出力インターフェースを介して前記パケットを送信することと、を実行させ、
    前記第2NUMAノードは、前記ネットワーク機器に位置することを特徴とするネットワーク機器。
  8. 前記プロセッサは、更に、前記機器の実行可能な指令により、
    前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を特定することと、
    前記出力インターフェースと当該出力インターフェースの所属する第2NUMAノードに対応するノード情報との対応関係を前記転送テーブルにおける当該出力インターフェースを含むエントリに記録することと、を実行させることを特徴とする請求項7に記載のNUMAノード。
  9. 前記プロセッサは、前記機器の実行可能な指令により、
    前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を前記転送テーブルに記録される前記対応関係から取得することを実行させることを特徴とする請求項8に記載のNUMAノード。
  10. 前記プロセッサは、前記機器の実行可能な指令により、
    前記第1NUMAノードに位置する前記宛先IPアドレスに対応する出力インターフェースの数が1つである場合に、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する1つの出力インターフェースを介して前記パケットを送信することと、
    前記第1NUMAノードに位置する前記宛先IPアドレスに対応する出力インターフェースの数が少なくとも2つである場合に、プリセット負荷分散ポリシーに基づいて、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して前記パケットを送信することと、を実行させることを特徴とする請求項7に記載のNUMAノード。
  11. 前記プロセッサは、更に、前記機器の実行可能な指令により、
    前記宛先IPアドレスに対応する出力インターフェースが何れも前記第1NUMAノードに位置しない場合に、プリセット負荷分散ポリシーに基づいて、前記少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して前記パケットを送信することを実行させることを特徴とする請求項7に記載のNUMAノード。
  12. 機器の実行可能な指令を記憶する機器読み取り可能な記憶媒体であって、
    前記機器の実行可能な指令がネットワーク機器のプロセッサによって呼び出されて実行されるときに、前記プロセッサは、
    転送すべきパケットの宛先IPアドレスを利用して転送テーブルを照会し、前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースを取得することと、
    前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を取得し、前記第2NUMAノードのノード情報と前記第1NUMAノードのノード情報とが同じである場合に、当該出力インターフェースが前記第1NUMAノードに位置すると特定することと、
    前記少なくとも2つの出力インターフェースのうちの前記第1NUMAノードに位置する1つの出力インターフェースを介して前記パケットを送信することと、を実行させ、
    前記第2NUMAノードは、前記ネットワーク機器に位置することを特徴とする機器読み取り可能な記憶媒体。
  13. 前記機器の実行可能な指令により、前記プロセッサは、更に、
    前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を特定することと、
    前記出力インターフェースと当該出力インターフェースの所属する第2NUMAノードに対応するノード情報との対応関係を前記転送テーブルにおける当該出力インターフェースを含むエントリに記録することと、を実行させることを特徴とする請求項12に記載の機器読み取り可能な記憶媒体。
  14. 前記機器の実行可能な指令により、前記プロセッサは、
    前記少なくとも2つの出力インターフェースのうちの各出力インターフェースの所属する第2NUMAノードのノード情報を前記転送テーブルに記録される前記対応関係から取得することを実行させることを特徴とする請求項13に記載の機器読み取り可能な記憶媒体。
  15. 前記機器の実行可能な指令により、前記プロセッサは、更に、
    前記第1NUMAノードに位置する前記宛先IPアドレスに対応する出力インターフェースの数が1つである場合に、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する1つの出力インターフェースを介して前記パケットを送信することと、
    前記第1NUMAノードに位置する前記宛先IPアドレスに対応する出力インターフェースの数が少なくとも2つである場合に、プリセット負荷分散ポリシーに基づいて、前記第1NUMAノードに位置する前記宛先IPアドレスに対応する少なくとも2つの出力インターフェースから1つの出力インターフェースを選択し、選択された出力インターフェースを介して前記パケットを送信することと、を実行させることを特徴とする請求項12に記載の機器読み取り可能な記憶媒体。
JP2019528820A 2016-11-30 2017-11-29 パケット伝送 Active JP6751819B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201611086150.4 2016-11-30
CN201611086150.4A CN108123901B (zh) 2016-11-30 2016-11-30 一种报文传输方法和装置
PCT/CN2017/113556 WO2018099394A1 (zh) 2016-11-30 2017-11-29 报文传输

Publications (2)

Publication Number Publication Date
JP2019536383A true JP2019536383A (ja) 2019-12-12
JP6751819B2 JP6751819B2 (ja) 2020-09-09

Family

ID=62226309

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019528820A Active JP6751819B2 (ja) 2016-11-30 2017-11-29 パケット伝送

Country Status (5)

Country Link
US (1) US11057302B2 (ja)
EP (1) EP3534579B1 (ja)
JP (1) JP6751819B2 (ja)
CN (1) CN108123901B (ja)
WO (1) WO2018099394A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6944617B1 (ja) * 2020-04-24 2021-10-06 株式会社東陽テクニカ パケットキャプチャ装置及び方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106936739B (zh) * 2015-12-30 2020-02-11 新华三技术有限公司 一种报文转发方法及装置
US11301278B2 (en) * 2018-04-25 2022-04-12 Vmware, Inc. Packet handling based on multiprocessor architecture configuration
US11805010B2 (en) * 2019-06-21 2023-10-31 Juniper Networks, Inc. Signaling IP path tunnels for traffic engineering
CN111614794B (zh) * 2020-04-24 2022-09-23 南京南瑞继保工程技术有限公司 报文传输方法、装置、电子设备及存储介质
EP4075757A1 (en) * 2021-04-14 2022-10-19 Juniper Networks, Inc. A plurality of smart network interface cards on a single compute node
CN115996203B (zh) * 2023-03-22 2023-06-06 北京华耀科技有限公司 网络流量分域方法、装置、设备和存储介质

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6067611A (en) * 1998-06-30 2000-05-23 International Business Machines Corporation Non-uniform memory access (NUMA) data processing system that buffers potential third node transactions to decrease communication latency
JP2005020492A (ja) 2003-06-27 2005-01-20 Hitachi Ltd ネットワーク中継装置
CN101291290A (zh) * 2008-05-29 2008-10-22 华为技术有限公司 一种进行业务转发的方法及装置
US8446824B2 (en) * 2009-12-17 2013-05-21 Intel Corporation NUMA-aware scaling for network devices
US8495604B2 (en) 2009-12-30 2013-07-23 International Business Machines Corporation Dynamically distribute a multi-dimensional work set across a multi-core system
WO2012119369A1 (zh) 2011-08-02 2012-09-13 华为技术有限公司 基于cc-numa的报文处理方法、装置和系统
CN102364900B (zh) * 2011-09-13 2015-09-23 杭州华三通信技术有限公司 一种irf系统中基于frr的数据传输方法和设备
US10048871B2 (en) 2013-02-20 2018-08-14 Red Hat, Inc. Assigning pre-existing processes to select sets of non-uniform memory access (NUMA) aligned resources
US9178815B2 (en) * 2013-03-05 2015-11-03 Intel Corporation NIC flow switching
US9537718B2 (en) * 2013-03-15 2017-01-03 Cisco Technology, Inc. Segment routing over label distribution protocol
US10684973B2 (en) * 2013-08-30 2020-06-16 Intel Corporation NUMA node peripheral switch
CN103957155B (zh) 2014-05-06 2018-01-23 华为技术有限公司 报文传输方法、装置及互联接口
US9807001B2 (en) * 2014-07-17 2017-10-31 Cisco Technology, Inc. Segment routing using a remote forwarding adjacency identifier
US9459904B2 (en) * 2014-09-30 2016-10-04 Vmware, Inc. NUMA I/O aware network queue assignments
US10721302B2 (en) * 2014-12-05 2020-07-21 Foundation for Research and Technology—Hellas (FORTH) Network storage protocol and adaptive batching apparatuses, methods, and systems
CN104901898B (zh) * 2015-06-08 2018-08-03 东软集团股份有限公司 一种负载均衡方法及装置
US10218647B2 (en) * 2015-12-07 2019-02-26 Intel Corporation Mechanism to support multiple-writer/multiple-reader concurrency for software flow/packet classification on general purpose multi-core systems
US10069688B2 (en) * 2016-03-07 2018-09-04 International Business Machines Corporation Dynamically assigning, by functional domain, separate pairs of servers to primary and backup service processor modes within a grouping of servers
US10142231B2 (en) * 2016-03-31 2018-11-27 Intel Corporation Technologies for network I/O access
JP6855906B2 (ja) * 2017-04-25 2021-04-07 富士通株式会社 スイッチプログラム、スイッチング方法及び情報処理装置
US10742690B2 (en) * 2017-11-21 2020-08-11 Juniper Networks, Inc. Scalable policy management for virtual networks

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6944617B1 (ja) * 2020-04-24 2021-10-06 株式会社東陽テクニカ パケットキャプチャ装置及び方法
US11296958B2 (en) 2020-04-24 2022-04-05 Toyo Corporation Packet capture device and packet capture method

Also Published As

Publication number Publication date
EP3534579B1 (en) 2022-04-13
WO2018099394A1 (zh) 2018-06-07
US20190297013A1 (en) 2019-09-26
EP3534579A4 (en) 2019-09-04
JP6751819B2 (ja) 2020-09-09
CN108123901B (zh) 2020-12-29
US11057302B2 (en) 2021-07-06
EP3534579A1 (en) 2019-09-04
CN108123901A (zh) 2018-06-05

Similar Documents

Publication Publication Date Title
JP2019536383A (ja) パケット伝送
US9215171B2 (en) Hashing-based routing table management
US9660901B2 (en) Systems and methods for forming and using a group of link aggregation groups to reduce traffic on interconnect links
US10237179B2 (en) Systems and methods of inter data center out-bound traffic management
US20100036903A1 (en) Distributed load balancer
JP6872647B2 (ja) コンピュータネットワークにおいてパケットを処理するためのシステムおよび方法
US20140064277A1 (en) Sliced routing table management
US10200286B2 (en) Systems and methods for load balancing in a data center
US11233752B2 (en) Packet forwarding
US20120147890A1 (en) Apparatus for controlling a transfer destination of a packet originating from a virtual machine
JP2017098935A (ja) 仮想ルータクラスタ、データ転送方法および装置
JP6618610B2 (ja) ルーティング管理
JP2018518925A (ja) パケット転送
CN110120897A (zh) 链路探测方法、装置、电子设备及机器可读存储介质
US20190158584A1 (en) Load balancing method and related apparatus
JP2018515053A (ja) パケット転送
US10177935B2 (en) Data transfer system, data transfer server, data transfer method, and program recording medium
JP6842542B2 (ja) パケット伝送方法及びcb機器
US10447585B2 (en) Programmable and low latency switch fabric for scale-out router
CN111147611B (zh) 参考附加网络地址转换表提供快速分组转发的电子设备
WO2015110054A1 (en) Generating virtual network device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190610

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200318

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200407

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200706

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200803

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200817

R150 Certificate of patent or registration of utility model

Ref document number: 6751819

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200904

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250