JP2017530647A - ローカルライブラリからのネットワーク接続用の機能要件の提供 - Google Patents

ローカルライブラリからのネットワーク接続用の機能要件の提供 Download PDF

Info

Publication number
JP2017530647A
JP2017530647A JP2017517114A JP2017517114A JP2017530647A JP 2017530647 A JP2017530647 A JP 2017530647A JP 2017517114 A JP2017517114 A JP 2017517114A JP 2017517114 A JP2017517114 A JP 2017517114A JP 2017530647 A JP2017530647 A JP 2017530647A
Authority
JP
Japan
Prior art keywords
network
functionality
control packet
application
receiving
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
JP2017517114A
Other languages
English (en)
Other versions
JP6648893B2 (ja
JP2017530647A5 (ja
Inventor
セラ、ウィリアム、トーマス
Original Assignee
レベル スリー コミュニケーションズ,エルエルシー
レベル スリー コミュニケーションズ,エルエルシー
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 レベル スリー コミュニケーションズ,エルエルシー, レベル スリー コミュニケーションズ,エルエルシー filed Critical レベル スリー コミュニケーションズ,エルエルシー
Publication of JP2017530647A publication Critical patent/JP2017530647A/ja
Publication of JP2017530647A5 publication Critical patent/JP2017530647A5/ja
Application granted granted Critical
Publication of JP6648893B2 publication Critical patent/JP6648893B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks

Landscapes

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

Abstract

ネットワークアプリケーションはネットワーク接続を介してデータを送信し得る。アプリケーションはネットワーク接続に関する特定の機能性を要求することがある。実施形態は、アプリケーションがその要件をネットワークに通知する方法を提供する。アプリケーションは、制御パケットを使用して、アプリケーションが使用している接続に関するその機能性要件をネットワークに通知し得る。制御パケットは、アプリケーションがそのデータを送信するのと同時にネットワークに送信され得る。実施形態において、アプリケーションを使用するユーザは、制御パケットを使用する特定の機能性を提供するようにネットワークに命令する。

Description

技術分野
本分野は概して通信ネットワークに関する。
通信ネットワークは、例えば、2つの地理的に離れた位置間でデータが転送されることを可能にするネットワーク接続を提供し得る。ネットワークユーザは、ネットワーク上のサーバへ、またはサーバからデータを転送すべくネットワーク接続を使用し得る。単にデータを転送することに加えて、ネットワーク接続は、おそらく特定レベルのサービスに対応すべく、他の機能性を提供し得る。例えば、ネットワークは特定の帯域幅容量または輻輳制御機能を提供し得る。接続を介して転送されるデータを変更する何らかの機能性が適用され得る。例えば、トランスポート制御プロトコル(TCP)リクエストのソースを秘匿するTCPプロキシが適用され得る。
これらの機能性は、ユーザによって指定され得る。一例において、ユーザは、ネットワーク接続に割り当てられた容量が、接続におけるトラフィック負荷レベルなどの基準に基づいて動的に変化することを指定し得る。ネットワーク機能性に関するユーザ要件を受信すべく、いくつかの通信ネットワークは、その接続に関する機能性要件をユーザが入力するためのアプリケーションプロトコルインタフェース(API)を提供する。
接続に関する特定の機能性要件を入力するためのAPIを使用することで、ネットワークにユーザの要件を通知し得るが、そのようなAPIを使用しなければならないことは、ユーザには面倒であり得る。
実施形態において、コンピュータに実装される方法は、通信ネットワークを介してユーザデータを送信する。方法は、ネットワークスタックと一体化されたライブラリにおいて、ネットワーク接続に関するネットワーク機能性要件の仕様を受信する段階を含む。ネットワークスタックは、アプリケーションによるリクエストに応答してネットワーク接続を開始し得る。ネットワーク機能性要件の仕様の受信に応答して、ライブラリは、制御パケットを送信するようにネットワークスタックに命令し得る。ネットワークは、ネットワーク接続に関するネットワーク機能性要件を提供すべく、制御パケットに基づいて、構成される。
システムおよびコンピュータプログラム製品の実施形態も開示される。
本発明のさらなる実施形態、特徴、および利点、ならびに様々な実施形態の構造および動作が、複数の添付図面を参照して以下に詳細に説明される。
本明細書に組み込まれて本明細書の一部を形成する添付図面は本開示を図示し、説明と合わせて、さらに、本開示の複数の原理を説明し、当業者が本開示を作成し使用することを可能にするのに役立つ。
ネットワーク接続に関する機能性要件をネットワークスタックから提供するためのシステムを図示する図である。
ユーザからの制御パケットおよびデータパケットの送信例を図示する図である。
ネットワーク接続に関するネットワーク機能性を提供する例を図示する図である。
ネットワーク接続に関するネットワーク機能性をリクエストする方法を図示するフローチャートである。
ネットワーク接続に関する機能性を提供するようにネットワークを構成する方法を図示するフローチャートである。
ネットワーク接続に関するネットワーク機能性をリクエストする方法を図示するフローチャートである。
ネットワーク接続に関するネットワーク機能性をリクエストする方法を図示するフローチャートである。
ある要素が最初に現れる図面は、概して、対応する参照番号の左端の1または複数の桁の数字によって示される。複数の図面において、同じ参照番号は同一のまたは機能的に類似する要素を示すことがある。
上述のように、ユーザがネットワーク接続に関する固有の機能性を要求するたびにAPIを通じてユーザによってネットワークを構成することが、オーバヘッドを引き起こし得る。ユーザは、アプリケーションに関する複数の機能性を要求することがある。ユーザはまた、ネットワークを介してデータを送信する異なるタイプのユーザアプリケーションに関する異なる機能性を要求することがある。
ネットワーク接続に関するユーザの機能性要件を提供するようにネットワークを効率的に構成すべく、ここで開示されているいくつかの実施形態はユーザのコンピュータにインストールされたライブラリ、特にコンピュータのネットワークスタックを使用する。ライブラリはネットワークを構成すべく制御パケットを送信する。ユーザまたはユーザアプリケーションは、ネットワーク接続に関する固有の機能性を提供すべくライブラリを構成し得る。機能性のリクエスト後、ユーザアプリケーションがネットワーク接続を介してアプリケーションデータを送信する間、ライブラリはネットワーク接続に関する機能性をリクエストすべく制御パケットを生成するであろう。
制御パケットの受信後、ネットワークコントローラは、ネットワーク接続に関する要求される機能性を提供すべくネットワークに必要な変更を行う。例えば、ユーザがネットワーク接続に関してTCPプロキシを要求する場合、ネットワークコントローラは接続をTCPプロキシサーバにルート変更し得る。
複数の実施形態において、制御パケットはユーザによって要求された機能性のタイプを示す情報を含む。ネットワークコントローラは、この情報を使用して、要求された機能性を提供し得る。制御パケット内の情報は、例えば、TCPプロキシまたは動的サービスレベルを提供するようにネットワークを構成するようにネットワークコントローラに命令する。ネットワーク接続のサービスレベルは、例えば、ネットワーク接続における帯域幅、レイテンシ、またはジッタであり得る。
ユーザは、特定のアプリケーションによって生成されたデータに関する複数の要件を有し得る。複数のアプリケーションがネットワーク接続を使用し得、各アプリケーションが要件の異なる組を有し得る。実施形態において、ユーザデバイスから生成される制御パケットは、ネットワーク接続に関するユーザのすべての要件を示す情報を含むであろう。
制御パケットを生成するようにネットワークスタックに命令するライブラリの使用は、ネットワーク接続に関するユーザの機能要件を提供する効率的な態様である。遠く離れたネットワークコントローラを構成するためのAPIの使用は、時間および処理のオーバヘッドを引き起こし得る。しかし、ネットワークコントローラを構成するためのAPIを使用する代わりにローカルライブラリを使用することによって、ユーザはネットワーク接続に関するその機能要件をより効率的にリクエストし得る。
後述の詳細な説明は4つのセクションに分けられている。図1−3に関して、第1のセクションは、ネットワーク接続に関するネットワーク機能性要件を提供するシステムを説明する。図4に関して、第2のセクションは、制御パケットを使用してネットワーク接続に関する機能性要件を提供する方法を説明する。図4−6に関して、第3のセクションは、ネットワーク接続に関する機能性要件を提供すべくネットワークを構成することを説明する。図7に関して、第4のセクションは、接続に関する機能性要件を提供すべくネットワークを構成するために、定期的に制御パケットを再送することを説明する。
ネットワーク接続に関するネットワーク機能性要件を提供するシステム
図1は通信ネットワーク102を含むシステム100を図示する。通信ネットワーク102は、ローカルエリアネットワーク(LAN)、メトロポリタンエリアネットワーク(MAN)、または広域ネットワーク(WAN)であってよい。通信ネットワーク102は、任意のポイントツーポイント、またはマルチポイントツーマルチポイントのネットワーキングプロトコルを利用してよい。用いられる複数のネットワークアクセスプロトコルは、例えば、マルチプロトコルラベルスイッチング(MPLS)、イーサネット(登録商標)、非同期転送モード(ATM)、ハイレベルデータリンク制御(HDLC)、またはフレームリレーを含み得る。
通信ネットワーク102は、ユーザデバイス104に接続された転送デバイス112などの複数の転送デバイスを含む。ここで、用語「転送デバイス」は、データリンクレイヤ(開放型システム間相互接続、OSI、レイヤ2)およびネットワークレイヤ(OSIレイヤ3)におけるデバイスを含む、パケットをスイッチングまたはルーティングするデバイスを指す。転送デバイス112は、直接的なリンクを介してユーザデバイス104に接続され得、または間接的にローカルネットワークを介して接続され得る。ユーザデバイス104は、データサーバ114へのネットワーク接続113を確立し得、通信ネットワーク102上のネットワーク接続を介して送信するためのデータトラフィックを生成し得る。
ユーザデバイス104は、プロトコルスタックと呼ばれることがある、ネットワークスタック108を介してアプリケーション106を実行させる。アプリケーション106は、ユーザデバイス104のユーザ105とインタフェースし得、ネットワークスタック108がネットワーク102を介したネットワーク接続113をセットアップすることをリクエストし得る。次に、アプリケーション106はネットワーク接続113を介してデータを送信する。
ネットワークスタック108は、コンピュータネットワークプロトコルスイートの実装である。コンピュータネットワークプロトコルスイートは、OSIモデル内で指定されるものなどの、異なる抽象レイヤを有するプロトコルを含み得る。実施形態において、ネットワークスタック108はアプリケーションデータに関するネットワーク接続をセットアップする。ネットワークスタック108は、トランスポート層およびネットワーク層においてトランスポート制御プロトコル(TCP)/インターネットプロトコル(IP)を使用してネットワーク102を介した接続を確立するTCP/IPネットワークスタックであり得る。トランスポート層およびネットワーク層の下に、ネットワークスタック108は、イーサネット(登録商標)規格によって指定されたものなどの、データリンクプロトコルおよび物理レイヤプロトコルをも実装し得る。アプリケーション106からのアプリケーションデータの受信後、アプリケーションデータは複数のネットワークスタック108レイヤを通過し得、アプリケーションデータを複数のパケットなどのより小さい複数のユニットに区切り得、任意の必要なヘッダ情報と共に複数のユニットをカプセル化するデータをカプセル化し得る。そのレイヤを通過後、ネットワークスタック108は接続113を介してパケットを送信する。
実施形態において、ユーザ105がネットワーク接続に関する固有の機能性を要求する場合、ユーザ105はライブラリ110に通知する。ライブラリ110はネットワークスタック108に組み込まれ得る。ユーザ105は、管理アプリケーションなどの別個のアプリケーションを使用して、ネットワーク接続113に関する機能要件をライブラリ110に通知し得る。
別個の管理アプリケーションの使用に加えて、ユーザ105はネットワークスタック108を通じてライブラリ110と通信する。他の実施形態において、特定のシステム呼び出しを行うことによって、ユーザ105はアプリケーションを通じてライブラリ110と直接的に通信し得る。このように、別個の管理アプリケーションを通じて、またはアプリケーション106による直接のシステムコールを通じてのいずれかで、ライブラリ110は接続113に関する新規要件を学習する。
ライブラリが新規要件を学習した場合、ライブラリ110はネットワーク接続113に関する要件を提供すべくネットワークを構成する制御パケットを生成し得る。実施形態において、ライブラリ110は、ネットワークを構成する制御パケットを生成するようにネットワークスタック108に命令する。ネットワークスタック108は、TCPまたはUDPフォーマットで、または、イーサネット(登録商標)フォーマットで、転送デバイス112に制御パケットを送信し得る。
制御パケットを受信したことに応答して、転送デバイス116は機能性モジュール116に制御パケットを転送する。機能性モジュール112は、制御パケット内の情報を使用して、ネットワーク接続113に関する機能性要件を提供すべくネットワーク102を構成するように、ネットワークコントローラ118に命令する。このように、ネットワークプロトコルスタックにとってローカルであり、ネットワークプロトコルスタックと一体化され、ネットワークプロトコルスタック内におそらく含まれるライブラリは、要件を提供すべくネットワークを構成する。動作例は、図2−3に関してより詳細に図示される。
図2は、一実施形態に従って、ユーザデバイス104から機能性モジュール116に制御パケットが送信される動作例を図示する図200である。ユーザデバイス104におけるネットワークスタック108は、制御パケット202を生成し得、制御パケット202を転送デバイス112に送信し得る。一実施形態に従って、ユーザプロトコルスタック108は、1つの制御パケット202を転送デバイス112に送信し得る。他の実施形態に従って、プロトコルスタック108は定期的に制御パケットを送信し、任意の新規要件によって機能性モジュールを更新し得る。転送デバイス112が制御パケット202を受信する場合、転送デバイス112は制御パケット202を機能性モジュール116に転送する。実施形態において、転送デバイス112は制御パケット上の送信先アドレスから制御パケットを検出する。他の実施形態において、転送デバイス112は、制御パケットを一意に識別する識別子から制御パケットを検出する。識別子は、例えば、パケットヘッダであり得る。
転送デバイス112が制御パケット202を受信する場合、転送デバイス112は制御パケットパス213を介して機能性モジュール116に制御パケット202を転送する。一実施形態において、転送デバイス112が制御パケット202を受信した場合、転送デバイス112は制御パケットパス213を確立し得る。他の実施形態において、転送デバイス112が制御パケットを受信する前に、制御パケットパス213はあらかじめ決定され得る。
制御パケット202の送信に加えて、ネットワークスタック108はまた、転送デバイス112にデータパケット204を送信する。転送デバイス112は、この例ではデータサーバ114であるパケット204の送信先に、ネットワークデータ接続113上でデータパケット204を転送する。
ネットワークスタック108は、ネットワークデータ接続113上でデータストリームを送信し得る。データストリームは、共通の(1)プロトコル、(2)複数の送信元/送信先インターネットプロトコル(IP)アドレス、および(3)複数の送信元/送信先TCPまたはUDPポートを有する、互いに時間近接した1又は複数のパケットであり得る。
ひとたび機能性モジュール116が制御パケット202を受信すると、機能性モジュール116は、例えば図3に図示されたように、リクエストされた機能性を提供すべく接続113を構成する。
図3は、リクエストされた機能性を提供するためのネットワークの構成を図示する図300である。機能性モジュール116が制御パケット202を受信した後、機能性モジュール116は接続113に関する機能性要件を示す情報を使用し、ネットワークを構成するようにネットワークコントローラ118に命令する。ネットワークコントローラ118は、接続113に関する機能性要件を提供すべくネットワークを構成する。
図3に示された実施形態例において、接続113に関するネットワーク機能性要件は、その接続に関するTCPプロキシを提供している。この例において、ネットワークデータ接続113を使用するデータが新規接続304上にルート変更されるように、ネットワークコントローラ118はネットワーク102を構成する。新規接続304上のデータパケットは、TCPプロキシサーバ302を通る。このように制御パケット202内に示されたようなTCPプロキシ機能性要件が接続113に関して提供される。
ネットワークコントローラ118は、例えば、TCPプロキシサーバ302を通過するような、転送デバイス112からデータサーバ114へのパスを決定することによって、新規接続304上にデータをルート変更し得る。ネットワークコントローラは次に、決定されたパス上のアプリケーション106のデータをサーバ114にルーティングするように、決定されたパス上に転送デバイス112および他の転送デバイスを構成し得る。他の例において、ネットワークコントローラ118は、TCPプロキシサーバのアドレスを有する新しいパケット内に、ユーザデバイス104からのデータパケットをカプセル化し得る。TCPプロキシサーバは次に、そのデータをデータサーバ114に送信し得る。
ネットワークコントローラ118はまた、TCPプロキシサーバ302に構成メッセージを送信し得る。このようにネットワークコントローラ118は、接続113に関する何らかの特定の機能性要件を提供すべく、TCPプロキシサーバ302を構成し得る。構成メッセージはまた、データパケットの送信先アドレスをTCPプロキシサーバ302に通知し得る。送信先アドレスを使用して、TCPプロキシサーバ302はデータをその送信先に転送し得る。
他の機能性要件の例は、動的サービスレベルがあり得る。接続のサービスレベルの動的な変化が、転送デバイス112上で発生し得る。実施形態において、サービスレベルは接続113の容量である。接続113上に動的容量を提供すべく、ネットワークコントローラ118は、接続113に割り当てられる容量を動的に調整するように転送デバイス112を構成するためのメッセージを送信し得る。実施形態において、ネットワークコントローラは、要求された動的容量を提供すべく、接続113が使用するすべての転送デバイスを構成するためのメッセージを送信し得る。
実施形態において、転送デバイス112は機能性モジュール116を含み得る。実施形態において、転送デバイス112は制御パケットを受信した後、接続113に関する機能性要件を提供すべくネットワークを構成するようにネットワークコントローラ118に命令する。
制御パケットを使用してネットワーク接続に関する機能性要件を提供する方法
図4は、ネットワーク接続に関するネットワーク機能性をリクエストする方法400を図示する図である。方法400は図1−3における実施形態例に関して説明される。
実施形態において、段階402で、アプリケーション106はデータサーバ114へのネットワーク接続をリクエストする。ネットワークスタック108は、ネットワーク接続の確立のリクエストを受信する。ネットワークスタック108は、段階404で、ネットワーク接続113を確立する。段階406で、ネットワークスタック108はネットワーク接続113を介してアプリケーションデータを送信する。いくつかの実施形態において、ネットワークスタック108は、TCP/IPまたはイーサネット(登録商標)プロトコルを使用してネットワーク接続113を確立し得る。ネットワークスタック108は、TCP、UDP、MPLS、ATM、またはイーサネット(登録商標)などの送信プロトコルを使用してネットワーク接続113を介してアプリケーションデータを送信し得る。
段階408で、ユーザ105はネットワーク接続113に関するネットワーク機能性要件をリクエストする。ユーザ105は、機能性要件をリクエストするための具体的なアプリケーションを使用してライブラリ110にリクエストを送信し得る。他の実施形態において、ユーザの代わりにアプリケーション106が、アプリケーションがデータを送信するために使用している接続に関する機能性要件を送信し得る。
実施形態において、ライブラリ110は段階410で、ユーザのネットワーク機能性要件を受信する。段階412で、ライブラリ110はネットワーク機能性要件を示す制御パケットを送信するようにネットワークスタック108に命令する。実施形態において、ライブラリ110は制御パケットを生成し得る。他の実施形態において、ネットワークスタック108はライブラリ110からの命令に応答して制御パケットを生成する。
ネットワーク接続113を使用するアプリケーションデータが送信されている間、制御パケットが送信され得る。制御パケットは、TCP、UDP、MPLS、ATM、またはイーサネット(登録商標)などのプロトコルを使用して送信され得る。
ネットワークスタック108は、段階414で、制御パケットを転送デバイス112に送信する。アプリケーション106のデータを送信する間、ネットワークスタック108は制御パケットを送信し得る。実施形態において、転送デバイス112は広域ネットワーク(WAN)のエッジにあり、ローカルエリアネットワーク(LAN)を介してユーザデバイス104に接続する。
図5は、ネットワーク接続に関する機能性を提供すべくネットワークを構成する方法500を図示するフローチャートである。方法500は図1−3における実施形態例に関して説明される。
実施形態において、転送デバイス112は段階502で、制御パケットを受信する。実施形態において、転送デバイス112は自動的に制御パケットを検出し、機能性モジュール116の送信先アドレスを制御パケットに追加する。他の実施形態において、制御パケットが転送デバイス112によって受信される場合、制御パケットはその送信先として機能性モジュール116のアドレスを含む。
転送デバイス112はまた、認証情報を制御パケットに追加し得る。認証情報は、ネットワーク102における他の転送デバイスおよび機能性モジュール116が制御パケットの認証を検証することに役立ち得る。段階504で、転送デバイス112は制御パケットを機能性モジュール116に送信する。
機能性モジュール116は、段階506で、制御パケットを受信する。制御パケットの受信後、機能性モジュール116は、ネットワーク接続113に関する機能性要件を示す情報を制御パケットから抽出し得る。段階508で、機能性モジュール116は、ネットワーク接続113に関する機能性要件を提供すべくネットワーク102を構成するようにネットワークコントローラ118に命令する。実施形態において、機能性モジュール116はAPIを通じてネットワークコントローラ118に命令し得る。代替的に、機能性モジュール116はネットワーク102を介して、または機能性モジュールとネットワークコントローラとの間の直接の接続を介して、命令メッセージを送信することによってネットワークコントローラ118に命令し得る。
段階510で、ネットワークコントローラはネットワーク接続113に関する機能性要件を提供すべくネットワーク102を構成する。例えば、ネットワークコントローラ118は、動的サービスレベルを提供すべく、またはTCPプロキシサーバなどの中間処理サーバにルート変更すべく、ネットワーク102を構成し得る。
ネットワーク接続に関する動的サービスレベルを提供すべく、いくつかの実施形態は、ネットワーク接続のリアルタイムの利用状況に従ってサービスレベルを動的に変更する。これらの実施形態において、ユーザは、特定の利用状況レベルをふまえてのサービスレベルをどのように変更するか指定するビジネスルールをセットアップし得る。例えば、ユーザは、利用される帯域幅が特定の閾値を超える場合に、割り当てられる帯域幅が2倍にされることを宣言するビジネスルールをセットアップし得る。
これらの複数のルールは、ネットワークサービスプロバイダとユーザとの間のサービスレベル合意(SLA)に基づいて決定され得る。例えば、容量または帯域幅の割り当てを動的に変更することによって、ユーザはそのアプリケーションの変動する要求を満たすべく、そのネットワーク容量を容易に拡張し得る。前もって定義されたスケジュールまたは利用状況のいずれかに基づいて、実施形態はネットワーク接続のサービスレベルを動的に更新する。
利用の変更、およびサービスレベル、例えば容量の調整は、また、接続内に集約されたフローに関してではなく、接続における各フローに関して実行され得る。換言すれば、本明細書で説明された動的サービスレベルの方法は、個々のトラフィックのフローに適用され得る。例えば、実施形態は動的サービスレベルをウェブ(HTTP)トラフィックに提供し得、それは与えられた接続におけるトラフィック全体の1つのスライシングであり得る。
フローレベルの動的サービスレベル管理は、異なるフローまたは異なるタイプのトラフィックを、異なる態様でユーザが取り扱うことを可能にする。換言すれば、それは異なるトラフィックタイプに関するクラスのサービスをユーザが使用することを可能とする。例えば、ユーザがボイストラフィックに関する特定のサービスレベルの保証を望む場合、それはボイストラフィックに割り当てられたサービスレベルを動的に変更し得、それで、接続における集約されたトラフィック負荷に関わらず、ボイストラフィックの各フローは保証されたサービスレベルを享受する。
SLAは異なるクラスのサービスに関する異なる保証を提供し得る。例えば、ストリーミングビデオは大量の容量を要求するかもしれないが、レイテンシは比較的重要でないことがある。逆に、ボイスオーバーIPデータは、比較的容量をほとんど要求しないかもしれないが、レイテンシは非常に重要であり得る。SLAは、異なるクラスのサービスおよびサービスレベル保証に分解され得、それぞれに関してルールが生成され得る。
図6は、ネットワーク接続に関するネットワーク機能性をリクエストする方法600を図示するフローチャートである。方法600は、図1−3における実施形態例に関して説明される。
実施形態において、ユーザ105は、段階602で、ネットワーク接続113に関する複数のネットワーク機能性要件をリクエストする。例えば、ユーザ105は、アプリケーション106がデータを送信するために使用しているネットワーク接続113に関する複数の要件を送信し得る。他の実施形態において、複数のアプリケーションがネットワークスタック108上で動作していてよく、それぞれが、それらが使用するネットワーク接続113に関する異なる要件を有し得る。ユーザ105は、すべてのアプリケーションの要件をライブラリ110に送信し得る。
実施形態において、ユーザ105はすべてのネットワーク接続機能性要件をライブラリ110に直接的に送信し得る。他の実施形態において、ネットワークスタック108上で動作する異なるアプリケーションが、それらが有する何らかのネットワーク接続機能性要件をライブラリ110に送信するであろう。
段階604で、ライブラリ110は、ユーザによるすべてのネットワーク機能性要件を示す情報を含む制御パケット202を送信するようにネットワークスタック108に依頼し得る。例えば、ライブラリ110は、制御パケット202を生成するようにネットワークスタック108に依頼する場合、1つのアプリケーションのすべての要件、または異なるアプリケーションのすべての要件を集約し得る。実施形態において、ライブラリ110は、ネットワーク接続に関するすべての要件の集約情報を含む制御パケット202を生成する。
ネットワークスタック108は、段階606で、すべての機能性要件を示す情報を含む制御パケット202を転送デバイス112に送信する。転送デバイス112は、制御パケットをネットワーク機能性モジュールまたはネットワークコントローラに転送し、それに応じてネットワークを構成する。
定期的な制御パケットの再送
図7は、ネットワーク接続に関するネットワーク機能性をリクエストする方法700を図示するフローチャートである。方法700は、図1−3における実施形態例に関して説明される。
実施形態において、ネットワークスタック108は、段階702で、制御パケット202を転送デバイス112に定期的に再送する。段階704で、転送デバイス112は制御パケット202を機能性モジュール116に転送する。
段階706で、機能性モジュール116は、ネットワーク接続に関する機能性要件を提供すべくネットワークを構成するように、ネットワークコントローラ118に命令する。段階708で、ネットワークコントローラ118はネットワーク接続に関する機能性要件を提供すべくネットワーク102を構成する。
接続に関するネットワーク機能性がそれ以降要求されない場合、ネットワークスタック108は段階710で、制御パケット202の再送をストップし得る。機能性モジュール116がある期間制御パケットを受信しない場合、段階712で、それはネットワーク接続113に関する機能性要件を提供するためのネットワーク構成を終了するようにネットワークコントローラ118に命令する。ネットワークコントローラ118は、段階714で、接続113に関する機能性要件を提供するためのネットワーク構成を終了する。
結論
本明細書で用いられる用語「ユーザ」は、ネットワーク接続サービスを利用する企業の従業者などのネットワーク接続サービスの顧客と、サービスプロバイダ自体のネットワーク管理者との両方を包含し得る。複数のユーザが、異なる複数の会社または組織に存在してもよい。
図1のサーバおよびモジュールのそれぞれは、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。
図1のサーバおよびモジュールのそれぞれは、同じまたは異なるコンピューティングデバイス上に実装され得る。そのようなコンピューティングデバイスは、パーソナルコンピュータ、携帯電話などのモバイルデバイス、ワークステーション、組み込みシステム、ゲームコンソール、テレビ、セットトップボックス、または任意の他のコンピューティングデバイスを含み得るが、それらに限定されない。さらに、コンピューティングデバイスは、命令を実行および格納するためのプロセッサと、非一時的メモリを含むメモリとを有するデバイスを含み得るが、それに限定されない。メモリはデータおよびプログラム命令を有形に具現化し得る。ソフトウェアは1又は複数のアプリケーションとオペレーティングシステムとを含み得る。ハードウェアは、プロセッサ、メモリ、およびグラフィカルユーザインタフェースディスプレイを含み得るが、それらに限定されない。コンピューティングデバイスは、また、複数のプロセッサおよび複数の共有または別個のメモリ構成要素を有し得る。例えば、コンピューティングデバイスはクラスタ化されたまたは分散された、コンピューティング環境またはサーバファームの一部または全体であり得る。
(a)、(b)、(i)、(ii)などの識別子が異なる要素または段階に関して用いられることがある。これらの識別子は明確にするために用いられ、必ずしも要素または段階の順序を示すものではない。
本発明は、複数の特定の機能およびそれらの関係の実装を説明する複数の機能的構成単位を用いて上述された。これらの機能的構成単位の境界は,説明の利便性のために本明細書で任意に画定された。複数の特定の機能およびそれらの関係が適切に実行される限り、代替の境界が画定され得る。
複数の具体的な実施形態についての前述の説明は、本発明の一般的な性質を十分に明らかにしているであろうため、他人は、当技術分野の技術内の知識の適用によって、過度な実験を行うことなく、本発明の一般的概念から逸脱することなく、そのような具体的な実施形態を様々な用途に関して容易に修正および/または改作し得る。したがって、そのような改作および変更は、本明細書に提供された教示および指導に基づいて、開示された複数の実施形態の均等物の趣旨および範囲内にあることが意図されている。本明細書の語句または用語は説明を目的とするものであり限定を目的とするものではなく、これにより、本明細書の用語または語句は教示および指導を考慮して当業者によって解釈されるべきものとなることが理解されるべきである。
本発明の広さおよび範囲は、上述された複数の例示的実施形態のいずれによっても限定されるべきではなく、以下の特許請求の範囲およびその均等物のみに基づいて定義されるべきである。

Claims (22)

  1. 通信ネットワークを介してユーザデータを送信するコンピュータ実装方法であって、
    ネットワークスタックと一体化されたライブラリにおいて、アプリケーションによるリクエストに応答して前記ネットワークスタックが開始したネットワーク接続に関する機能性要件の仕様を受信する段階と、
    ネットワークの前記機能性要件の前記仕様の受信に応答して、前記ライブラリによって、前記機能性要件を示す制御パケットを送信するように前記ネットワークスタックに命令する段階と、
    前記ネットワーク接続に関する前記機能性要件を提供すべく、前記制御パケットに基づいて前記通信ネットワークを構成する段階とを備える、方法。
  2. 前記ネットワーク内の転送デバイスに前記制御パケットを送信する段階であって、前記転送デバイスは前記制御パケットに認証情報を追加し、前記ネットワーク接続を介しての送信のために前記アプリケーションから送信された前記ユーザデータを受信する、送信する段階をさらに備える、
    請求項1に記載の方法。
  3. 前記ユーザデータが送信される間に前記制御パケットが送信される、
    請求項2に記載の方法。
  4. 前記ネットワークに接続された機能性モジュールのアドレスを前記制御パケットに追加する段階と、
    認証情報を有する前記制御パケットを前記機能性モジュールに転送する段階であって、前記機能性モジュールは、前記ネットワーク接続に関する前記機能性要件を提供すべく、前記制御パケットを使用して、前記ネットワークを構成するようにネットワークコントローラに命令する、転送する段階とをさらに備える、
    請求項2または3に記載の方法。
  5. 転送デバイス内の機能性モジュールによって前記制御パケットを受信する段階と、
    前記ネットワークが前記ネットワーク接続に関する前記機能性要件を提供すべく前記ネットワークを構成するように、前記制御パケットを使用する前記機能性モジュールによって、ネットワークコントローラに命令する段階とをさらに備える、
    請求項1から4のいずれか一項に記載の方法。
  6. 前記ライブラリによる、ユーザからの前記機能性要件の受信が他のアプリケーションを通じたものである、
    請求項1から5のいずれか一項に記載の方法。
  7. 前記ライブラリによる、ユーザからの前記機能性要件の受信が、前記アプリケーションが前記ネットワーク接続を介してデータの送信を開始する前である、
    請求項1から6のいずれか一項に記載の方法。
  8. 前記ライブラリによる、ユーザからの前記機能性要件の受信が、前記アプリケーションが前記ネットワーク接続を介してデータを送信している間である、
    請求項1から7のいずれか一項に記載の方法。
  9. 前記ライブラリによって、前記アプリケーションから、前記ネットワーク接続に関する第2の機能性要件を受信する段階、および、
    前記第2の機能性要件の受信に応答して、前記制御パケットが前記ネットワーク接続に関する前記第2の機能性要件をまた示すように、前記制御パケットを送信する段階をさらに備える、
    請求項1から8のいずれか一項に記載の方法。
  10. 前記ライブラリによって、前記ネットワーク接続を使用する第2のアプリケーションから、前記ネットワーク接続に関する第2の機能性要件を受信する段階と、
    前記ネットワーク接続に関する第1の前記機能性要件と前記第2の機能性要件との両方を示す他の制御パケットであって、前記第1の機能性要件と前記第2の機能性要件との両方を提供するように前記ネットワークに命令する、他の制御パケットを送信する段階とをさらに備える、
    請求項1から9のいずれか一項に記載の方法。
  11. 前記ネットワーク機能性を終了させるための前記アプリケーションからの終了リクエストの受信まで前記制御パケットを定期的に再送する段階と、
    ある期間制御パケットの再送が受信されない場合、それ以降前記機能性要件を提供しないように前記ネットワークを再構成する段階とをさらに備える、
    請求項1から10のいずれか一項に記載の方法。
  12. ネットワークスタックを使用してアプリケーションを実行するよう構成されたユーザデバイスから、ネットワーク接続を介してデータサーバへデータを送信するシステムであって、
    第1のコンピューティングデバイス上に実装されたライブラリモジュールであって、前記アプリケーションによるリクエストに応答して前記ネットワークスタックが開始したネットワーク接続に関する機能性要件の仕様をアプリケーションモジュールから受信し、
    前記機能性要件の前記仕様の受信に応答して、前記機能性要件を示す制御パケットを送信するように前記ネットワークスタックに通知するよう構成される、ライブラリモジュールと、
    前記ネットワークを介して前記第1のコンピューティングデバイスに接続された第2のコンピューティングデバイスと、
    前記第2のコンピューティングデバイス上に実装され、前記制御パケットを使用して、前記ネットワーク接続に関する前記機能性要件を提供すべく前記ネットワークを構成するようにネットワークコントローラに命令するよう構成された機能性モジュールとを備える、
    システム。
  13. 前記ネットワークスタックが、さらに、前記データを送信する間に前記制御パケットを送信するよう構成される、
    請求項12に記載のシステム。
  14. 前記制御パケットを受信し、
    前記ネットワーク接続を介した送信のために前記アプリケーションから送信される前記データを受信し、および、
    前記制御パケットに認証情報を追加するよう構成された転送デバイスをさらに備える、
    請求項12または13に記載のシステム。
  15. 前記転送デバイスはさらに、
    認証情報を有する前記制御パケットを前記ネットワークへ接続された前記機能性モジュールに転送し、
    前記機能性モジュールのアドレスを前記制御パケットに追加するよう構成される、
    請求項14に記載のシステム。
  16. 前記転送デバイスが前記ネットワークのエッジに配置され、ローカルエリアネットワーク上の前記ユーザデバイスに接続される、
    請求項15に記載のシステム。
  17. 前記制御パケットを受信するよう構成された転送デバイスをさらに備え、前記転送デバイスは、前記ネットワーク接続に関する前記機能性要件を提供すべく前記ネットワークを構成するように、前記制御パケットを使用してネットワークコントローラに命令するよう構成された機能性モジュールを有する、
    請求項12から16のいずれか一項に記載のシステム。
  18. 前記ライブラリモジュールがさらに、
    前記ネットワーク接続を使用する第2のアプリケーションから、前記ネットワーク接続に関する第2の機能性要件を受信し、
    前記第2の機能性要件の受信に応答して、前記ネットワーク接続に関する第1の前記機能性要件と前記第2の機能性要件との両方を示す他の制御パケットであって、前記第1の機能性要件と前記第2の機能性要件との両方を提供するように前記ネットワークに命令する、他の制御パケットを送信するように前記ネットワークスタックに通知するよう構成される、
    請求項12から17のいずれか一項に記載のシステム。
  19. 前記ライブラリモジュールがさらに、
    前記ネットワーク機能性を終了させるための前記アプリケーションからの終了リクエストの受信まで前記制御パケットを定期的に再送するように前記ネットワークスタックに通知するよう構成され、
    前記機能性モジュールがさらに、
    ある期間制御パケットの再送が受信されない場合、それ以降前記機能性要件を提供しないように前記ネットワークを再構成するように前記ネットワークコントローラに命令するよう構成される、
    請求項12から18のいずれか一項に記載のシステム。
  20. 前記ネットワークが、プライベートなサービスプロバイダネットワークであり、前記データサーバが、他の公衆ネットワークを通じて前記ネットワークに接続される、
    請求項12から19のいずれか一項に記載のシステム。
  21. 通信ネットワークを介してデータを送信する方法を実行する少なくとも1つの機械によって実行可能な命令のプログラムであって、前記方法は、
    アプリケーションによるリクエストに応答してネットワークスタックによって開始されるネットワーク接続に関する機能性要件を、ユーザからライブラリによって受信する段階と、
    前記機能性要件の受信に応答して、前記アプリケーションの前記機能性要件を示す制御パケットを送信する段階と、
    前記ネットワーク接続に関する前記機能性要件を提供すべく、前記制御パケットを使用して前記通信ネットワークを構成する段階とを備える、
    プログラム。
  22. 通信ネットワークを介してユーザデータを送信するコンピュータ実装方法であって、
    ネットワークスタックと一体化されたライブラリで、アプリケーションによるリクエストに応答して前記ネットワークスタックが開始したネットワーク接続に関する機能性要件の仕様を受信する段階と、
    前記機能性要件の前記仕様の受信に応答して、前記ライブラリから、前記機能性要件を示す制御パケットであって、前記ネットワーク接続に関する前記機能性要件を提供すべく前記通信ネットワークを構成するように機能性モジュールに命令する制御パケットを送信する段階とを備える、方法。
JP2017517114A 2014-09-30 2015-09-22 ローカルライブラリからのネットワーク接続用の機能要件の提供 Active JP6648893B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462057756P 2014-09-30 2014-09-30
US62/057,756 2014-09-30
US14/678,682 2015-04-03
US14/678,682 US9774706B2 (en) 2014-09-30 2015-04-03 Providing functional requirements for a network connection from a local library
PCT/US2015/051524 WO2016053691A2 (en) 2014-09-30 2015-09-22 Providing functional requirements for a network connection from a local library

Publications (3)

Publication Number Publication Date
JP2017530647A true JP2017530647A (ja) 2017-10-12
JP2017530647A5 JP2017530647A5 (ja) 2018-11-01
JP6648893B2 JP6648893B2 (ja) 2020-02-14

Family

ID=55585673

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017517114A Active JP6648893B2 (ja) 2014-09-30 2015-09-22 ローカルライブラリからのネットワーク接続用の機能要件の提供

Country Status (7)

Country Link
US (2) US9774706B2 (ja)
EP (1) EP3201777B1 (ja)
JP (1) JP6648893B2 (ja)
CN (1) CN106716376B (ja)
CA (1) CA2963241C (ja)
SG (1) SG11201702605UA (ja)
WO (1) WO2016053691A2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9774706B2 (en) 2014-09-30 2017-09-26 Level 3 Communications, Llc Providing functional requirements for a network connection from a local library
US10412153B2 (en) * 2016-02-14 2019-09-10 Bentley J. Olive Methods and systems for facilitating information and expertise distribution via a communications network
US10965735B2 (en) 2016-02-14 2021-03-30 Bentley J. Olive Methods and systems for facilitating information and expertise distribution via a communications network
US11416572B2 (en) 2016-02-14 2022-08-16 Bentley J. Olive Methods and systems for managing pathways for interaction among computing devices based on geographic location and user credit levels
CN107196961A (zh) * 2017-06-28 2017-09-22 深圳市欧乐在线技术发展有限公司 一种ip地址隐藏方法及装置
US10871300B2 (en) 2018-12-18 2020-12-22 Honeywell International Inc. Operating heating, ventilation, and air conditioning systems using occupancy sensing systems
US10969130B2 (en) 2018-12-18 2021-04-06 Honeywell International Inc. Operating heating, ventilation, and air conditioning systems using occupancy sensing systems
CN110233827A (zh) * 2019-05-10 2019-09-13 匿名科技(重庆)集团有限公司 一种服务器的单层和多层防御系统
US11620594B2 (en) 2020-06-12 2023-04-04 Honeywell International Inc. Space utilization patterns for building optimization
US11924112B2 (en) * 2021-03-30 2024-03-05 Cisco Technology, Inc. Real-time data transaction configuration of network devices

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434114B1 (en) * 1998-02-26 2002-08-13 At&T Corp Enhancing the intelligent service capability of a network after a data flow has been established
US6141686A (en) 1998-03-13 2000-10-31 Deterministic Networks, Inc. Client-side application-classifier gathering network-traffic statistics and application and user names using extensible-service provider plugin for policy-based network control
JP2001292165A (ja) * 2000-04-06 2001-10-19 Fujitsu Ltd サービス設定システム、サービス設定方法及び中継装置
US6912576B1 (en) * 2000-05-04 2005-06-28 Broadcom Corporation System and method of processing data flow in multi-channel, multi-service environment by dynamically allocating a socket
US6879587B1 (en) * 2000-06-30 2005-04-12 Intel Corporation Packet processing in a router architecture
WO2002072059A2 (en) * 2001-03-07 2002-09-19 The Procter & Gamble Company Topical composition comprising a functionally alkylating cosmetic bonding agent
JP2003051844A (ja) 2001-08-08 2003-02-21 Fujitsu Ltd ユーザ通信装置,エッジデバイス,及びパケットの中継方法
JP2005102035A (ja) * 2003-09-26 2005-04-14 Nec Corp 帯域設定システムおよび帯域設定方法
US7978716B2 (en) * 2003-11-24 2011-07-12 Citrix Systems, Inc. Systems and methods for providing a VPN solution
GB0408876D0 (en) 2004-04-21 2004-05-26 Level 5 Networks Ltd User-level stack
US8127045B2 (en) 2004-09-13 2012-02-28 Apple Inc. Dynamically configurable connection on demand
US8371115B2 (en) * 2005-06-13 2013-02-12 Wescast Industries, Inc. Exhaust component assemblies with divider plates
ES2338030T3 (es) 2005-08-23 2010-05-03 Telefonaktiebolaget Lm Ericsson (Publ) Reserva de recursos acumulados para flujo de datos.
EP2632109B1 (en) 2006-07-10 2017-05-10 Solarflare Communications Inc Data processing system and method therefor
US7769869B2 (en) 2006-08-21 2010-08-03 Citrix Systems, Inc. Systems and methods of providing server initiated connections on a virtual private network
US8745185B1 (en) * 2006-10-12 2014-06-03 Timothy J. Salo Method and apparatus for providing semantically aware network services
JP4899018B2 (ja) * 2007-10-16 2012-03-21 Kddi株式会社 オンデマンド型ネットワークのlsp設定方法およびシステム
US7816797B2 (en) * 2009-01-07 2010-10-19 Oscilla Power Inc. Method and device for harvesting energy from ocean waves
US8780859B2 (en) 2010-07-15 2014-07-15 CSC Holdings, LLC Efficient use of a communications network
EP2615780B1 (en) 2010-09-08 2015-04-15 Panasonic Corporation Content transmission device and network node
US9094462B2 (en) * 2011-07-13 2015-07-28 Qualcomm Incorporated Simultaneous packet data network (PDN) access
GB2494644B (en) * 2011-09-13 2016-08-17 Skype Transmitting data over mulitiple networks
US9537904B2 (en) * 2013-01-24 2017-01-03 Tekelec, Inc. Methods, systems, and computer readable media for using policy knowledge of or obtained by a policy and charging rules function (PCRF) for needs based forwarding of bearer session traffic to network nodes
US9774706B2 (en) 2014-09-30 2017-09-26 Level 3 Communications, Llc Providing functional requirements for a network connection from a local library
US9832291B2 (en) * 2015-01-12 2017-11-28 Cisco Technology, Inc. Auto-configurable transport stack

Also Published As

Publication number Publication date
US20160094445A1 (en) 2016-03-31
SG11201702605UA (en) 2017-04-27
US9774706B2 (en) 2017-09-26
CN106716376B (zh) 2020-07-10
EP3201777A4 (en) 2018-05-30
JP6648893B2 (ja) 2020-02-14
CA2963241A1 (en) 2016-04-07
CA2963241C (en) 2021-08-10
EP3201777A2 (en) 2017-08-09
CN106716376A (zh) 2017-05-24
WO2016053691A3 (en) 2016-09-01
US10491716B2 (en) 2019-11-26
WO2016053691A2 (en) 2016-04-07
US20180084090A1 (en) 2018-03-22
EP3201777B1 (en) 2021-09-01

Similar Documents

Publication Publication Date Title
US10491716B2 (en) Providing functional requirements for a network connection from a local library
US10181977B2 (en) Cross-stratum optimization protocol
JP6538986B2 (ja) 仮想マシンパケット制御
JP6648892B2 (ja) 適合ネットワーク機能チェーン
US20170171310A1 (en) Latency virtualization in a transport network using a storage area network
EP3142303A1 (en) Network control method and apparatus
KR102050910B1 (ko) 연결 실패 시에 홈 네트워크에 대한 재라우팅을 인에이블시키는 방법 및 시스템
WO2016184368A1 (zh) 用于对用户的业务进行授权的方法、装置及系统
US11558491B2 (en) Information-centric networking over 5G or later networks
CN108011759B (zh) 一种vpn管理方法、装置及系统
US20230006884A1 (en) Providing Interface Between Network Management and Slice Management
JP5679343B2 (ja) クラウドシステム、ゲートウェイ装置、通信制御方法、及び通信制御プログラム
WO2021254001A1 (zh) 会话建立方法、装置、系统及计算机存储介质
Khan et al. The reconfigurable mobile network
CN107769973B (zh) 一种报文转发方法及装置
JPWO2014112585A1 (ja) 通信システム、ノード、制御装置、通信方法およびプログラム
WO2021176458A1 (en) First node, proxy-agent, and methods performed thereby for handling communications between a publisher node and a subscriber node
Derakhshan et al. Enabling cloud connectivity using SDN and NFV technologies
CN112714071A (zh) 一种数据发送方法及装置
CN118540612A (zh) 信息传输方法、装置及存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180920

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180920

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190607

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190618

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190918

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200108

R150 Certificate of patent or registration of utility model

Ref document number: 6648893

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250