JP2023553893A - ネットワークプロトコルを用いてネットワークフローデータを通信すること - Google Patents

ネットワークプロトコルを用いてネットワークフローデータを通信すること Download PDF

Info

Publication number
JP2023553893A
JP2023553893A JP2023534683A JP2023534683A JP2023553893A JP 2023553893 A JP2023553893 A JP 2023553893A JP 2023534683 A JP2023534683 A JP 2023534683A JP 2023534683 A JP2023534683 A JP 2023534683A JP 2023553893 A JP2023553893 A JP 2023553893A
Authority
JP
Japan
Prior art keywords
layer
code
pid
new
network
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.)
Pending
Application number
JP2023534683A
Other languages
English (en)
Inventor
ボウイ,デール
サンパス,ソフィア
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2023553893A publication Critical patent/JP2023553893A/ja
Pending legal-status Critical Current

Links

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/22Parsing or analysis of headers
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • 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]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC

Landscapes

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

Abstract

コンピュータに実装された方法は、(i)プロセス識別コード(PID)を通信する際に使用されるべき新しいイーサタイプを定義すること、ここで、該新しいイーサタイプが、新しいイーサタイプコードを割り当てられる;(ii)PIDを通信する際に使用されるべき複数の抽象化層からの選択された抽象化層を決定すること;及び、(iii)ネットワーク化されたコンピュータシステムの2台以上のコンピュータ間で複数のネットワーク通信を、各通信を用いて行うことを含み、ここで、各所与の通信を行うことが、(a)該新しいイーサタイプコードと、該所与の通信を生じさせるプロセスのPIDとをデータ構造内に挿入すること、及び、(b)該選択された抽象化層において、該ネットワーク化されたコンピュータシステムの複数のコンピュータ間でデータ構造を通信することを含む。【選択図】図2

Description

本発明は、一般的にコンピュータネットワークの分野に関し、より特には、データソースをネットワーク化することに関する。
ウィキペディア(Wikipedia)の「抽象化層」(abstraction layer)の項目(2020年11月16日現在)には、以下の旨が述べられている:「コンピューティングにおいて、抽象化層又は抽象化レベルは、サブシステムの作業詳細を隠す方法であり、相互運用性とプラットフォーム独立性とを促進する為の関心事の分離を可能にする。抽象化層を使用するソフトウェアモデルの例は、ネットワークプロトコルの為のOSIモデル、OpenGL、及び他のグラフィックライブラリを包含する。コンピュータサイエンスでは、抽象化層は、特定の在りうる実装から離れた概念モデル又はアルゴリズムの一般化である。これらの一般化は、様々な特定の実装中に存在する類似性を表現するモデルによって最もよくカプセル化される広範な類似性から生じる。優れた抽象化層によって提供される簡素化により、有用な概念又は設計パターンが抽出によって簡単に再利用することが可能になり、従ってそれが正確に適用されうる或る状況が迅速に認識されることができる。或る層が他の層に依存している場合、該層は他の層の上にあるとみなされる。全ての層は、その上の層無しに存在することができ、及び機能する為にはその下の層を必要とする。多くの場合、抽象化層は、抽象化レベルの階層に構成されることができる。OSIモデルは、7つの抽象化層を備えている。該モデルの各層は、デジタル通信のニーズの異なる部分をカプセル化し且つ対処し、それによって関連付けられたエンジニアリングソリューションの複雑さを軽減する。」
ウィキペディアの「開放型システム間相互接続プロトコル」(open systems interconnect protocol)(2020年11月16日現在)には、以下の旨が述べられている:「開放型システム間相互接続プロトコルは、ISO及びITU-Tによって共同で開発された情報交換標準のファミリーである。...OSIプロトコルスタックは7つの概念的な層で構成されている。これらの層は、物理ハードウェアコンポーネントから始まり、ソフトウェアアプリケーションレベルでのユーザインタフェースまでの機能の階層を形成する。各層は上の層から情報を受け取り、それを処理し、そして、次の層に渡す。各層は、入来情報が下位層に渡される前に、その情報にカプセル化情報(ヘッダ)を追加する。ヘッダは一般的には、送信元と宛先のアドレス、エラー制御情報、プロトコル識別、及びプロトコルパラメータ、例えば、フロー制御オプション及びシーケンス番号、を包含する。層1:物理レイヤ この層は、物理的なプラグ及びソケット、並びに信号の電気仕様のみを扱う。これは、デジタル信号が送信される媒体である。それは、ツイストペア、同軸ケーブル、光ファイバ、無線又は他の伝送媒体で使用されることができる。層2:データリンク層 該データリンク層は、物理層からの生のビットをフレーム(データについての論理的な、構造化されたパケット)内にパッケージ化する。...この層は、あるホストから別のホストにフレームを転送する役割を果たす。それは、エラーチェックを実行しうる。...層3:ネットワーク層...このレベルは、マシンのネットワーク層アドレスを使用してネットワーク内のシステム間のデータを転送して、宛先及び送信元を追跡することを担当する。この層は、そのトラフィックを管理する為にルータ及びスイッチを使用する(制御フローの制御、エラーチェック、ルーティング等)。従って、ここでは、全てのルーティング決定が行われ、エンドツーエンドのデータ送信を処理する。層4:トランスポート層 該トランスポート層は、送信元プロセスと宛先プロセスとの間でデータを送信する。一般的に、2つの接続モード、すなわち、コネクション型又はコネクションレス型、が認識される。...層5:セッション層...セッション層はコンピュータ間の対話(接続)を制御する。それは、ローカルアプリケーションとリモートアプリケーションとの間の接続を確立、管理、及び終了する。それは、全二重、及び半二重又はシンプレックスの動作を提供し、並びにチェックポイント、延期、終了、及び再開の手順を確立する。...層6:プレゼンテーション層 この層は、アプリケーション層のデータ型を定義し、及び暗号化/復号化する。プロトコル、例えば、MIDI、MPEG及びGIF、は、種々のアプリケーションによって共有されるプレゼンテーション層形式である。層7:アプリケーション層...これにより、各アプリケーションが別のアプリケーションとどのように通信するかを追跡する。宛先アドレス及び送信元アドレスは特定のアプリケーションにリンクされている。」
ウィキペディアの「イーサタイプ」(EtherType)(「ethertype」として表記されることがある)(2020年11月16日現在)には、以下の旨が述べられている:「イーサタイプは、イーサネットフレームにおける2オクテットフィールドである。それは、該フレームのペイロード中にどのプロトコルがカプセル化されているかを示す為に使用され、及び受信側で、データリンク層によって該ペイロードがどのように処理されるかを決定する為に使用される。同じフィールドはまた、幾つかのイーサネットフレームのサイズを示す為に使用される。該イーサタイプはまた、802.1Q VLANタグ付けの基礎として使用され、イーサネットトランク上で他のVLANトラフィックと多重化されて送信する為にVLANからのパケットをカプセル化する。...イーサネットフレームは、イーサタイプフィールドを含む。各下位スロットは1オクテットを指定する。イーサタイプは2オクテット長である。イーサネットの最新の実装において、イーサタイプを記述する為に使用されるイーサネットフレーム内のフィールドはまた、イーサネットフレームのペイロードのサイズを表す為に使用されることができる。...IEEE 802規格の出現により、イーサネット以外のIEEE 802ネットワーク、並びにIEEE 802.2 LLCヘッダ、例えばFDDI、を使用する非IEEEネットワークの為に、IEEE 802.2 LLCヘッダと組み合わせられたサブネットワークアクセスプロトコル(SNAP:Subnetwork Access Protocol)ヘッダがペイロードのイーサタイプを伝送する為に使用される。しかしながら、イーサネットの場合に、イーサネットIIフレーミングが依然として使用される。...」(脚注は省略)。
ウィキペディアの「プロトコルスタック」(protocol stack)(2020年11月16日現在)には、以下の旨が述べられている:「プロトコルスタック又はネットワークスタックは、コンピュータネットワーキングプロトコルスイート又はプロトコルファミリーの実装である。これらの語の一部は互換的に使用されているが、厳密に言えば、該スイートは通信プロトコルの定義であり、及び該スタックはそれらのソフトウェア実装である。...スイート内の個々のプロトコルは、多くの場合、単一の目的を念頭に置いて設計されている。このモジュール化により、設計及び評価が簡素化される。各プロトコルモジュールは通常、他の2つのプロトコルと通信する為に、それらは一般的に、プロトコルのスタックにおける層としてイメージされる。最も低いプロトコルは常に、通信ハードウェアとの低レベルの相互作用に対処する。各上位層は、累加の機能を追加する。ユーザアプリケーションは通常、最上位の層のみを扱う。...実際の実装において、プロトコルスタックはしばしば、下記の3つの主要セクションに分割される:メディア、トランスポート及びアプリケーション。特定のオペレーティングシステム又はプラットフォームはしばしば、2つの明確に定義されたソフトウェアインタフェースを有する:1つは、メディア層とトランスポート層との間、及び別の1つは、トランスポート層とアプリケーションとの間。メディアとトランスポートとのインタフェースは、トランスポートプロトコルソフトウェアが特定のメディア及びハードウェアタイプをどのように利用するかを定義し、デバイスドライバに関連付けられている。...例示的なプロトコルスタック及び対応する層[:]
プロトコル レイヤ
HTTP アプリケーション
TCP トランスポート
IP インターネット又はネットワーク
イーサネット リンク又はデータリンク
IEEE 802.3ab フィジカル」(脚注は省略)。
本発明の1つの観点に従うと、下記の動作を実行する方法、コンピュータプログラム製品若しくはシステム又はそれらの組み合わせが提供される(必ずしも下記の順序でない):(i)PID(プロセス識別コード)を通信する際に使用されるべき新しいイーサタイプを定義すること、ここで、該新しいイーサタイプが、新しいイーサタイプコードを割り当てられる;(ii)PIDを通信する際に使用されるべき複数の抽象化層からの選択された抽象化層を決定すること;及び、(iii)ネットワーク化されたコンピュータシステムの2台以上のコンピュータ間で複数のネットワーク通信を、各通信を用いて行うこと、ここで、各所与の通信を行うことが、(a)該新しいイーサタイプコードと、該所定の通信を生じさせるプロセスのPIDとをデータ構造内に挿入すること、及び、(b)該選択された抽象化層において、該ネットワーク化されたコンピュータシステムの複数のコンピュータ間でデータ構造を通信することを含む。
図1は、本発明に従うシステムの第1の実施態様を示すブロック図である。 図2は、第1の実施態様のシステムによって少なくとも一部を実行する第1の実施態様の方法を示すフローチャート図である。 図3は、第1の実施態様のシステムのマシンロジック(例えば、ソフトウェア)部分を示すブロック図である。 図4は、第1の実施態様のシステムによって生成される種類のパケットの為のシンタックスを示す図である。 図5は、本発明の様々な実施態様によって生成される種類のパケットの為のシンタックスを示す図である。 図6は、本発明に従うシステムの第1の実施態様を示すブロック図である。
本発明の詳細な説明は下記の4つのサブセクションに分けられている:I.ハードウェア及びソフトウェアの環境、II.例示的な実施態様、III.更なるコメント若しくは実施態様又はそれらの組み合わせ、及びIV.定義。
I.ハードウェア及びソフトウェアの環境
本発明は、システム、方法、若しくはコンピュータプログラム製品又はそれらの組み合わせでありうる。該コンピュータプログラム製品は、プロセッサに本発明の観点を実行させる為のコンピュータ可読プログラム命令をその上に有するところの1以上のコンピュータ可読記憶媒体を含みうる。
該コンピュータ可読記憶媒体は、命令実行装置によって使用する為の命令を保持及び記憶することができる有形装置であることができる。該コンピュータ可読記憶媒体は例えば、電子ストレージデバイス、磁気ストレージデバイス、光学ストレージデバイス、電磁気ストレージデバイス、半導体ストレージデバイス、又は前述の任意の適切な組み合わせでありうるが、これらに限定されない。該コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストは以下を包含する:携帯用コンピュータディスケット(登録商標)、ハードディスク、ランダムアクセスメモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read-only memory)、消去可能なプログラム可能な読み取り専用メモリ(EPROM(erasable programmable read-only memory)又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM:static random access memory)、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM:compact disc read-only memory)、デジタル多用途ディスク(DVD:digital versatile disk)、メモリスティック、フロッピーディスク、パンチカード又はその上に記録した命令を有する溝内の隆起構造等の機械的に符号化したデバイス及びこれらの任意の適した組合せ。本明細書において使用する場合、コンピュータ可読記憶媒体は、一過性の信号そのもの、例えば、電波又は他の自由に伝播する電磁波、導波管又は他の伝送媒体を通して伝播する電磁波(例えば、光ファイバーケーブルを通過する光パルス)、又はワイヤを通して伝送される電気信号、であると解釈してはならない。
「ストレージデバイス」は、コンピュータコードがコンピュータプロセッサによってアクセスされることができる様式で、コンピュータコードを記憶する為に作られたもの又は適応されたものであると本明細書において定義される。ストレージデバイスは典型的には、コンピュータコードのデータがその中又はその上に記憶される物質である記憶媒体を含む。語「記憶媒体」は、複数の異なるタイプの記憶媒体が使用される状況をカバーするように解釈されるべきである。
本明細書において記載されたコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から夫々のコンピューティングデバイス/処理デバイスに、又はネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク若しくはワイヤレスネットワーク又はそれらの組み合わせ、を介して外部コンピュータ又は外部記憶デバイスにダウンロードされることができる。該ネットワークは、銅線伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ若しくはエッジサーバ又はこれらの組み合わせで構成されうる。各コンピューティングデバイス/処理デバイスにおけるネットワークアダプタカード又はネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、そして、該コンピュータ可読プログラム命令を、個々のコンピューティングデバイス/処理デバイス内にコンピュータ可読記憶媒体中に記憶する為に伝送する。
本発明の動作を実行する為のコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA:instruction-set-architecture)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の為の構成データ、又は、1以上のプログラミング言語、例えばオブジェクト指向プログラミング言語、例えば、Smalltalk、C++等、慣用的な手続き型プログラミング言語(例えば、「C」プログラミング言語又は同様のプログラミング言語)、の任意の組み合わせで書かれているソースコード又はオブジェクトコードのいずれか、でありうる。該コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に、ユーザのコンピュータ上で部分的に、ユーザのコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に、ユーザのコンピュータ上で部分的に且つリモート・コンピュータ上で部分的に、又はリモート・コンピュータ若しくはサーバ上で全体的に、実行されうる。後者のシナリオにおいて、該リモート・コンピュータは、任意の種類のネットワーク、例えば、ローカルエリアネットワーク(LAN:local area network)若しくはワイドエリアネットワーク(WAN:wide area network)、を介してユーザのコンピュータに接続されうるか、又は該接続は(例えば、インターネットサービスプロバイダを使用したインターネットを通じて)外部コンピュータに対して行われうる。幾つかの実施態様において、電子回路、例えば、プログラム可能な論理回路、フィールドプログラム可能なゲートアレイ(FPGA:field-programmable gate arrays)又はプログラム可能なロジックアレイ(PLA:programmable logic arrays)、は、本発明の観点を実行する為に、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をパーソナライズすることによって、コンピュータ可読プログラム命令を実行しうる。
本発明の観点は、本発明の実施態様に従う、方法、装置(システム)及びコンピュータプログラム製品若しくはコンピュータプログラムのフローチャート図若しくはブロック図又はそれらの組み合わせを参照して本明細書において記載されている。該フローチャート図若しくは該ブロック図又はそれらの組み合わせの各ブロック、並びに該フローチャート図若しくは該ブロック図又はそれらの組み合わせにおける複数のブロックの組み合わせは、コンピュータ可読プログラム命令によって実装されることができることが理解されるであろう。
これらのコンピュータ可読プログラム命令は、該コンピュータ又は他のプログラム可能なデータ処理装置のプロセッサを介して実行する命令が該フローチャート図若しくはブロック図又はそれらの組み合わせの1以上のブロックにおいて特定された機能/動作を実装する為の手段を作成するように、コンピュータのプロセッサ又は他のプログラム可能なデータ処理装置に提供されて、マシンを作り出しうる。記憶された命令を有するコンピュータ可読記憶媒体が該フローチャート図若しくはブロック図又はそれらの組み合わせの1以上のブロックにおいて特定される機能/動作の観点を実装する命令を含む製造品を含むように、これらのコンピュータ可読プログラム命令はまた、コンピュータプログラム可能なデータ処理装置若しくは他のデバイス又はこれらの組み合わせに特定の様式で機能するように指示することができるコンピュータ可読記憶媒体中に記憶されうる。
該コンピュータ可読プログラム命令はまた、コンピュータ上、他のプログラム可能なデータ処理装置上又は他のデバイス上で実行される命令が、該フローチャート図若しくはブロック図若しくはそれらの組み合わせの1以上のブロックにおいて特定される機能/動作を実装するように、上記のコンピュータ上、他のプログラム可能なデータ処理装置上又は他のデバイス上にロードされて、コンピュータ、他のプログラム可能な装置又は他のデバイス上で一連の操作工程を実行させて、コンピュータに実装されたプロセスを生成しうる。
図面中のフローチャート図及びブロック図は、本発明の様々な実施態様に従う、システム、方法及びコンピュータプログラム製品若しくはコンピュータプログラムの在りうる実装の、アーキテクチャ、機能及び動作を示す。これに関連して、該フローチャート図又はブロック図における各ブロックは、命令のモジュール、セグメント、又はその一部を表し得、それは、特定された1以上の論理機能を実装する為の1以上の実行可能命令を含む。幾つかの代替の実装において、該ブロックにおいて示されている機能は、図面中に示されている順序とは異なって生じうる。例えば、連続して示されている2つのブロックは、実際には、関与する機能に依存して、同時に、実質的に同時に、部分的又は全体的に時間的に重複する様式で実行される1つの工程として達成されうるか、又は該ブロックは、逆の順序で実行されうる。該ブロック図若しくはフローチャート図又はこれらの組み合わせの各ブロック、並びに該ブロック図若しくはフローチャート図又はこれらの組み合わせの複数のブロックの組み合わせは、特定された機能又は動作を実行する特別な目的のハードウェアベースのシステムによって実装することができ、又は特別な目的のハードウェアとコンピュータ命令との組み合わせを実行することができることに留意されたい。
図1に示されているように、ネットワーク化されたコンピュータシステム100は、本発明の様々な実施態様と共に使用する為のハードウェア及びソフトウェア環境の1つの実施態様である。ネットワーク化されたコンピュータシステム100は、パケットシンタックス設計者サブシステム102(本明細書においては、より簡単にサブシステム102と呼ぶこともある);クライアントサブシステム104、106、108、110及び112;並びに通信ネットワーク114を備えている。サブシステム102は、パケットシンタックス設計者コンピュータ200、通信ユニット202、プロセッサセット204、入出力(I/O:input/output)インタフェースセット206、メモリ208、永続的ストレージ210、ディスプレイ212、1以上の外部デバイス214、ランダムアクセスメモリ(RAM:random access memory)230、キャッシュ232、及びプログラム300を備えている。
サブシステム102は、ラップトップコンピュータ、タブレットコンピュータ、ネットブックコンピュータ、パーソナルコンピュータ(PC:personal computer)、デスクトップコンピュータ、パーソナルデジタルアシスタント(PDA:personal digital assistant)、スマートフォン、又は任意の他のタイプのコンピュータ(以下の、定義の部における「コンピュータ」の定義を参照)でありうる。プログラム300は、本発明の詳細な説明の部の例示的な実施態様のサブセクションにおいて以下で詳細に説明される特定のソフトウェア機能を作成、管理及び制御する為に使用される機械可読命令若しくはデータ又はそれらの組み合わせの集合体である。
サブシステム102は、通信ネットワーク114を介して他のコンピュータサブシステムと通信することが可能である。ネットワーク114は例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、例えばインターネット、又はこれらの組み合わせであることができ、並びに有線接続、無線接続又は光ファイバの接続を備えていることができる。一般的に、ネットワーク114は、サーバとクライアントサブシステムとの間の通信をサポートするような接続及びプロトコルの任意の組み合わせであることができる。
サブシステム102は、多くの二重矢印を有するブロック図として示されている。これらの二重矢印(別個の参照数字はない)は通信ファブリックを表し、該通信ファブリックは、サブシステム102の様々なコンポーネント間の通信を提供する。この通信ファブリックは、プロセッサ(例えば、マイクロプロセッサ、通信及びネットワークプロセッサ等)、システムメモリ、周辺デバイス、及びコンピュータシステム内の他の任意のハードウェアコンポーネントの間でデータ若しくは制御情報又はそれらの組み合わせを渡す為に設計された任意のアーキテクチャで実装されることができる。例えば、該通信ファブリックは、少なくとも部分的に、1以上のバスを用いて実装されることができる。
メモリ208及び永続的ストレージ210は、コンピュータ可読記憶媒体である。一般的に、メモリ208は、任意の適切な揮発性又は不揮発性のコンピュータ可読記憶媒体を備えていることができる。現在若しくは近い将来又はその両方において、(i)1以上の外部デバイス214が、サブシステム102の為に、一部又は全てのメモリを供給することができてもよく、若しくは(ii)サブシステム102の外部のデバイスが、サブシステム102の為にメモリを供給することができてもよく、又は上記の(i)及び(ii)の組み合わせで供給されることができてもよいことが更に留意されるべきである。メモリ208及び永続的ストレージ210の両方が、(i)輸送中の信号よりも過渡的でない様式でデータを格納し、及び(ii)有形媒体(例えば、磁気ドメイン又は光学ドメイン)上にデータを格納する。この実施態様において、メモリ208は揮発性ストレージであり、一方、永続的ストレージ210は不揮発性ストレージを提供する。永続的ストレージ210によって使用される媒体はまた、取り外し可能であってもよい。例えば、リムーバブルなハードディスクが永続的ストレージ210の為に使用されてもよい。他の例は、永続的ストレージ210の一部でもある別のコンピュータ可読記憶媒体上に転送する為にドライブ内に挿入される光ディスク及び磁気ディスク、サムドライブ、並びにスマートカードを包含する。
通信ユニット202は、サブシステム102の外部にある他のデータ処理システム又はデバイスとの通信を提供する。これらの例において、通信ユニット202は、1以上のネットワークインタフェースカードを備えている。通信ユニット202は、物理的及び無線通信リンクのいずれか又は両方の使用を通じて通信を提供しうる。本明細書において議論される任意のソフトウェアモジュールは、通信ユニット(例えば、通信ユニット202)を通じて永続的ストレージデバイス(例えば、永続的ストレージ210)にダウンロードされうる。
I/Oインタフェースセット206は、パケットシンタックス設計者コンピュータ200とのデータ通信においてローカルに接続されうる他のデバイスとのデータの入力及び出力を可能にする。例えば、I/Oインタフェースセット206は、外部デバイス214のセットへの接続を提供する。外部デバイス214のセットは典型的には、デバイス、例えば、キーボード、キーパッド、タッチスクリーン、若しくは他の何らかの適切な入力デバイス、又はそれらの組み合わせを包含するであろう。外部デバイス214のセットはまた、ポータブルなコンピュータ可読記憶媒体、例えば、サムドライブ、ポータブルな光ディスク又は磁気ディスク、及びメモリカード、を備えていることができる。本発明の実施態様を実践する為に使用されるソフトウェア及びデータ、例えばプログラム300、は、そのようなポータブルなコンピュータ可読記憶媒体上に格納されることができる。I/Oインタフェースセット206はまた、ディスプレイ212とデータ通信で接続する。ディスプレイ212は、データをユーザに表示する仕組みを提供する表示デバイスであり、例えば、コンピュータモニタ又はスマートフォンの表示画面であってもよい。
この実施態様において、プログラム300は、プロセッサセット204の1以上のコンピュータプロセッサによるアクセス若しくは実行又は該アクセス且つ実行の為に、通常はメモリ208の1以上のメモリを経由して永続的ストレージ210内に格納される。プログラム300は、その実行時間の間若しくは実行されていないときに又はそれらの両方において、より高度に分散された様式で記憶されうることが当業者によって理解されるであろう。プログラム300は、機械可読で且つ実行可能な命令若しくは実体データ又はそれらの組み合わせ(すなわち、データベース内に格納されるデータの種類)の両方を備えていてもよい。この特定の実施態様において、永続的ストレージ210は、磁気ハードディスクドライブを包含する。幾つかの在りうる変形例を挙げると、永続的ストレージ210は、ソリッドステートハードドライブ、半導体ストレージデバイス、読み取り専用メモリ(ROM)、消去可能なプログラム可能な読み取り専用メモリ(EPROM)、フラッシュメモリ、又はプログラム命令若しくはデジタル情報を記憶することができる他の任意のコンピュータ可読記憶媒体を包含しうる。
明細書に記載されたプログラムは、該プログラムが本発明の特定の実施態様において、実装される用途に基づいて識別される。しかしながら、本明細書における特定の任意のプログラム名称は、単に便宜の為に使用され、従って、本発明は、そのような名称によって識別され若しくは暗示され又は識別且つ暗示される特定の任意の用途でのみ使用することに限定されるべきではないことが理解されるべきである。
本発明の様々な実施態様の記載は、例示の目的の為に提示されたものであり、網羅的であること又は開示された実施態様に限定されることが意図されたものでない。多くの修正及び変形が、記載された実施態様の範囲及び精神から逸脱することなしに当業者に明らかであろう。本明細書において使用される語は、実施態様の原理、実用的な用途、又は市場において見られる技術に対する技術的改善を最もよく説明する為に、又は当業者が本明細書において開示されている実施態様を理解することができるようにする為に選択された。
II.例示的な実施態様
図1に示されているように、ネットワーク化されたコンピュータシステム100は、本発明に従う例示的な方法が実行されることができる環境である。図2に示されているように、フローチャート250は、本発明に従う例示的な方法を示す。図3に示されているように、プログラム300は、フローチャート250の方法動作のうちの少なくとも一部の性能を実行又は制御する。この方法及び関連付けられたソフトウェアがここで、以下の段落にわたって、図1、図2及び図3のブロックを広範に参照しながら議論されるであろう。
処理は、動作S255で開始され、ここで、イーサタイプモジュール(「mod」)302は、パケットそれ自体のヘッダで所与のパケットに関連付けられたプロセスid値(PIDs:process id values)を通信する為の新しいイーサタイプ(上記の背景技術の部における定義を参照)を定義する。図4に示されているシンタックス定義308の図から分かるように、この実施例によって生成されるパケットの場合、この新しいイーサタイプのイーサタイプidは3バイト長である。代替的には、新しいイーサタイプidは、2バイト長であることができる。
処理は動作S260に進み、ここで、プロトコルスタック層モジュール304は、ネットワークがプロトコルスイートに従ったプロトコルスタックを使用して実装される場合に、PIDsが通信されるであろうプロトコルスイートの1以上の層を決定する。OSIプロトコルスイートを使用する実施態様において、選択されうるプロトコル層は、下記の通りである:(i)トランスポート層プロトコル、(ii)ネットワーク層プロトコル、(iii)データリンク層プロトコル、若しくは(iv)物理層プロトコル、又はこれらの組み合わせ。この例において、PIDは、抽象化のトランスポート層でのトランスポート層プロトコル(すなわち、トランスミッションコントロールプロトコル(TCP:transmission control protocol))に従って作られたパケットの為のパケットシンタックス定義に従って作られたパケットのパケットヘッダ内においてのみ通信されるであろう(上記の背景技術の部の「抽象化層」の定義を参照)。代替的に及び/又は追加的に、上記の4つの層のうちからの他の層が、それらのパケット、フレーム若しくは他の関連付けられたデータ単位又はそれらの組み合わせの定義内にPIDsを挿入しうる。
処理は動作S265に進み、ここで、パケットシンタックスモジュール306は、通常動作の間に通信ネットワーク114上で通信されるべきTCPパケットの為にシンタックス定義308を生成する。このパケットシンタックスの詳細なブロック図が図4に示されている。PID値の通信の為の位置を含む他のタイプのシンタックス(例えば、ヘッダフィールドの順序、バイト割り当て)が使用されうる。例えば、本発明の詳細な説明の部の次のサブセクションにおいて説明されている図5は、本発明の他の1以上の実施態様において使用する為の異なるパケットシンタックス定義を示す。
処理は動作S270(「通常動作」と呼ばれる場合もある)に進み、ここで、ネットワーク通信が、クライアントサブシステム104、106、108、110及び112の2以上の間で行われる。これらの通信が通常動作で行われるときに、次の2つのことが生じる:(i)様々なクライアントサブシステムでログが保持される(現在、慣用的であるように)、及び(ii)シンタックス定義308に従って生成され且つカプセル化される多くのTCPパケット(これはヘッダにPIDを含む)の通信を含むデータが通信される。より具体的には、前述されたリストにおける項目(ii)に関して、トランスポート層でデータを通信する為の各TCPパケットが、「プロセス」に従って生成される。各プロセスはそれ自体のPIDを有し、及び所与のTCPパケットの生成を生じさせるプロセスは、シンタックス定義308に従って、その関連付けられたPIDを所与のTCPパケットヘッダ内に配置させるであろう。
処理は動作S275に進み、ここで、通信収集モジュール310は、解析の為にネットワーク通信の1組を収集する(例えば、ネットワーク化されたコンピュータシステム100の通常動作の間にグリッチ(glitch)又はクラッシュが生じた可能性がある)。この例において、これは、通常の動作の間に通信されたTCPパケットを収集することを意味する。
処理は動作S280に進み、ここで、収集ログモジュール312は、クライアントサブシステム104、106、108、110及び112によって生成且つ維持されるログを収集する。
処理は動作S285に進み、ここで、相関モジュール314は、様々なログデータに置いて生じるPIDsを、TCPパケットのヘッダのPIDsと相関させる。この相関操作の目的及び利点は、本発明の詳細な説明の次のサブセクションにおいて詳細に記載されるであろう。
III.更なるコメント若しくは実施態様又はそれらの組み合わせ
本発明の幾つかの実施態様により、現在の技術状態に関して、下記の事実、潜在的な問題、若しくは潜在的な改善領域、又はそれらの組み合わせが認識される:(i)効果的なセキュリティインテリジェンス及びイベント管理システムは、イベントログとネットワークフローデータの組み合わせに依存する;(ii)イベントログは、特定のホスト(例えば、ウェブサーバログ、プロキシログ、メールサーバ、Windowsドメイン、VPN(仮想プライベートネットワーク)サービス、侵入検知システム(IDS:intrusion detection systems)、侵入防止システム(IPS:intrusion prevention systems)及び他のネットワークセキュリティ製品)で実行されているプロセスへの可視性を与える;(iii)他のシーケンシャルデータソース(sequential data source)、例えばデータベース、に接続して、それらからもログを取得する機能を同様に有する;(iv)イベントログは、所与のホストIP(インターネットプロトコル)アドレスの特定の時間帯に渡って使用中のプロセスID(PID)によって一意に識別される;(v)ネットワークフローデータは、ネットワークを横断する全てのものを可視化し、少なくとも、特定の時間帯に渡ってソースIP、ソースポート、宛先IP、宛先ポート及びプロトコルの組み合わせによって一意に識別される;(vi)2つのデータソース間で実行されることができる唯一の相関は、指定された時間ウィンドウ内でアクションを実行するIPアドレスを介してである;(vii)どのPIDがネットワークフローをトリガーしたか、又はその逆を決定することができるように、これらのアクションを更に相関できることが望ましい;(viii)この問題を解決する為に役立つ既存のソリューションは、ネットワーク接続を所与のPIDに関連することができるように、エンドポイントでネットワーク接続をアクティブに監視することを含む;(ix)これらのソリューションは有用であるが、高トラフィックのデータを生成するプロセスを有し、それにより、リアルタイムイベントの取り込みのパフォーマンス低下を結果として生じる可能性がある;(x)クエリとしての既存のイベントデータの重複が、性能の問題の故に再生成されうる;(xi)ソリューションが、イベントデータを所与のPIDに相関させるという目的を満たしていない;若しくは、(xii)プロセスレベル情報、例えば、osquery、SysFlow、Kubernetes、Sysdig及びSysmonを包含する上記のプロセスレベル情報、を提供することができるログソースの多数の例がある;又は上記の(i)~(xii)の組み合わせ。
本発明の幾つかの実施態様は、イベントログとネットワークフローデータとの間で実行されることができる相関に関して、改善の為に下記の動作、特徴、特性若しくは利点又はそれらの組み合わせのうちの1以上を含みうる:(i)既存の市販のソフトウェアを使用する;(ii)エンドポイントそれ自体での全てのネットワーク接続のイベントログとネットワークフローデータログとの間で相関が実行されることができる;(iii)カーネルモジュールを利用してキャプチャ及びログを記録する;(iv)全てのネットワーク通信が確立される(他のシステムのエンドポイント情報の間で確立される);若しくは、(v)フローセッション識別子とPIDだけに減らしたとしても、このことは、この情報をSIEM(security information and event management:セキュリティ情報及びイベント管理)エンドポイントに転送する為に必要である追加バイトを除いて、典型的に少なくとも16ビットのメモリを必要とする;又は上記の(i)~(v)の組み合わせ。
本発明の幾つかの実施態様は、下記の動作、特徴、特性若しくは利点又はそれらの組み合わせのうちの1以上を含みうる:(i)ネットワークトラフィックにプロセスID(PID)を埋め込む;(ii)VLAN(virtual local area network)タグの為のIEEE(institute of electrical and electronics engineers)(米国電気電子学会)と同様のスタイルでパケットのヘッダ中にPIDを埋め込む;(iii)Linux(登録商標)ベースのシステムにおいて、PIDの最大数は2^22であり、これは3バイトフィールド内に埋め込まれることができることを意味する;若しくは、(iv)基礎となるプロトコルの為に必要な追加の「イーサタイプ」を含む場合に、このことにより、合計5バイトのメモリがネットワークパケットに加えられることになる;又は上記の(i)~(iv)の組み合わせ。
本発明の幾つかの実施態様は、下記の動作、特徴、特性若しくは利点又はそれらの組み合わせのうちの1以上を含みうる:(i)多くの場合、企業は既に、ネットワーク上のデバイス、例えば、ラップトップ、サーバ、ネットワーキングデバイス(例えば、ルータ及びファイアウォール)を包含するがこれらに限定されない上記のデバイス、に渡って管理制御を有する;(ii)ネットワークプロトコルとして実装することが可能であり、内部ネットワーク上で完全に処理され、ここで、カーネルモジュールがエンドポイントに追加されて、それらのPIDをネットワークトラフィック内に注入することができる:(iii)ネットワークトラフィックをより広いイーサネット(企業ネットワークのより大きなセグメント、又はインターネットそれ自体全体)にルーティングする前に、ネットワーキングデバイスに他のモジュールを追加する;若しくは(iv)外部通信との互換性に影響を与えること無しに、可視性が内部ネットワーク上で得られることができる(例えば、内部のネットワークプロトコル及び外部のネットワークプロトコルの同様の管理がVLANで既に実行されている);又は上記の(i)~(iv)の組み合わせ。
本発明の幾つかの実施態様は、下記の動作、特徴、特性若しくは利点又はそれらの組み合わせのうちの1以上を含みうる:(i)エンドポイントそれ自体から転送されるべき必要がある追加データが非常に少ない(前述されているように5バイトのみ);(ii)ネットワーク外のパケットに影響を与えること無しに内部ネットワーク上で管理されることができる;若しくは(iii)エンドポイント上の個々のプロセスが変更される必要無しに、モジュールを通じてカーネルのみが変更される;又は上記の(i)~(iii)の組み合わせ。
図5に示されているように、パケットシンタックス定義500は下記を含む:プリアンブル部分502(8バイト長)、宛先メディアアクセス制御(MAC:media access control)アドレス部分504(6バイト長)、ソースMACアドレス部分506(6バイト長)、プロセスid(PID:process id)部分508(PIDイーサタイプ/サイズ部分508a(2バイト長)とPID部分508b(3バイト長)を含む)、パケットレベルイーサタイプ/サイズ部分510(2バイト長)、ペイロード部分512(非常に多くのバイト長)、及びエラーチェック部分514(4バイト長)。この実施態様において、PIDイーサタイプ/サイズ部分が2バイト長であり、一方、プロセスIDが3バイト長であることに注目されたい。
図6に示されているように、システム600は、下記のシステムコンポーネントを備えている:エンドポイントコンピュータ602、TAP(ネットワークタップ)ブロック604、ネットワークセキュリティモニタコンピュータ606、ネットワークデバイス608、及び外部ネットワーク/インターネット610。エンドポイントコンピュータ602は、この新しいネットワークプロトコルの為の新しいカーネルモジュール(すなわち、TAPブロック604)と共に使用される。パケットを読み取り且つ双方向のフロー記録を作成する為のネットワークセキュリティモニタリングコンピュータ606(例えば、市販のSIEM製品を備えたコンピュータ)は、相関の為にSIEMツールにフロー情報を供給する。この実施態様において、ネットワークデバイス608は、新しいネットワークプロトコルのナレッジを有するルータである。外部のネットワーク/インターネット610は、図5のネットワークプロトコルのナレッジを必ずしも有している必要はない。
本発明に従う方法の1つの実施態様は、下記の動作を含む:(i)エンドポイントプロセスは、カーネルモジュールがPIDを挿入するネットワーク接続を開始する;(ii)パケットは、内部ネットワークを横断する;(iii)パケットは、TAPデバイス(これはまた、スイッチにおけるSPAN(switched port analyzer)ポートであることができる)によってネットワークセキュリティモニタリングツールにミラーリングされ、ここで、この時点でPIDがフローセッション識別子(最低でも、ソースIP、ソースポート、宛先IP、宛先ポート、及びプロトコル)と相関され、この事前に相関された情報がSIEMツール内に直接的に供給されることができる;(iv)パケットは、内部ネットワークを横断してエッジネットワークデバイスに到達し続ける;(v)エッジネットワークデバイスは、新しいネットワークプロトコルを削除し、そして、オリジナルの基礎情報のみでパケットを転送する;(vi)パケットはその最終宛先までルートを継続する;(vii)1以上の応答パケットは、ネットワークルートを通じて戻る;(viii)1以上の応答パケットはまた、双方向のフロー相関の為にネットワークセキュリティエンドポイントにミラーリングされる;(ix)パケットは、それらのネットワークフロータプルが同じである故に、PIDを特徴とする要求パケットに自動的に相関されることができる;若しくは、(x)1以上の応答パケットがエンドポイントホストによって受信され且つ処理される;又は上記の(i)~(x)の組み合わせ。
幾つかの慣用的な技術は、「パケットタグ」をIPオプションヘッダ内に埋め込むが、このタグはPIDそれ自体でないことに留意されたい。プロセスログとネットワークフローとの間の相関を達成する為に、本発明の幾つかの実施態様は、下記の方法を使用しうる:(i)パケットタグを抽出する;(ii)パケットタグをPIDに相関させる;若しくは(iii)PIDをイベントログに相関させる;又は上記の(i)~(iii)の組み合わせ。
本発明の幾つかの実施態様は、下記の動作、特徴、特性若しくは利点又はそれらの組み合わせのうちの1以上を含みうる:(i)単にホストレベルでなく、個々のプロセスレベルまで相関を実行する、若しくは(ii)PIDが「生のネットワークトラフィック」として直接的に通信される為に相関操作を実行する必要がないこと;又は上記の(i)~(ii)の組み合わせ。
本発明による方法の1つの実施態様は、セキュリティインテリジェンス及びイベント管理コンピュータシステム(SIEMCS:security intelligence and event management computer system)、例えば、第1のホストコンピュータデバイスとネットワークとを備えている上記のSIEMCS、で使用する為のものである。本方法は、下記の動作を含む(必ずしも以下の順序でない):(i)第1のイベントログ、例えば、第1のホストコンピュータデバイスの動作を示す情報を含む上記の第1のイベントログ、を、第1のホストコンピュータデバイス上で生成すること;(ii)第1のプロセスID(PID)コードを第1のイベントログに割り当てること;(iii)該第1のホストコンピュータデバイスに関連付けられたインターネットプロトコル(IP)アドレスの為に、一定期間に渡って第1のPIDコードを用いること;(iv)少なくとも下記を示す情報を含むネットワークフローデータセットを収集すること:各所与の通信のソースIP、各所与の通信のソースポート、各所与の通信の宛先IP、各所与の通信の宛先ポート、及び各所与の通信のプロトコル;若しくは(v)第1のPIDコードによって識別される第1のホストコンピュータデバイスが第1のネットワークフローをトリガーされたことを、第1のPIDコード、第1のイベントログ及びネットワークフローデータセットに基づいて判断すること;又は上記の(i)~(v)の組み合わせ。
IV.定義
本発明:語「本発明」によって説明される主題が、出願時の特許請求の範囲、又は特許審査後に最終的に発行されうる特許請求の範囲のいずれかによって含まれることを絶対的に示すものとして受け取られるべきでない。語「本発明」は、本開示が潜在的に新規であると考えられる一般的な感覚を読み手が得ることを助ける為に使用されているが、語「本発明」の使用によって示されているように、この理解は仮の且つ暫定的なものであり、関連情報が開発され、及び特許請求の範囲が潜在的に修正される為に、特許審査の過程で変更される可能性がある。
実施態様:上記の「本発明」の定義を参照。語「実施態様」に同様の注意事項が適用される。
及び/又は:包括的な「又は」。例えば、A、B、「及び/又は」Cは、A又はB又はCのうちの少なくとも1つが真であり且つ適用可能であることを意味する。
包含する(including/include/includes):特に明示されない限り、「含むが必ずしも限定されない」という意味である。
モジュール/サブモジュール:モジュールが、(i)局所的に近接しているか;(ii)広範囲に分散しているか;(iii)より大きなソフトウェアコード内で近接しているか;(iv)単一のソフトウェアコード内に位置しているか;(v)単一のストレージデバイス、メモリ又は媒体内に位置しているか;(vi)機械的に接続されているか;(vii)電気的に接続されているか;若しくは(viii)データ通信で接続しているか;又は上記の(i)~(viii)の組み合わせであるかどうかを問わず、ある種の機能を実行させる為に動作的に働くハードウェア、ファームウェア若しくはソフトウェア又はそれらの組み合わせの在りうる1組を云う。
コンピュータ:重要なデータ処理若しくは機械可読命令読み取り機能を有するあらゆるデバイス、例えば、デスクトップコンピュータ、メインフレームコンピュータ、ラップトップコンピュータ、FPGAベースのデバイス、スマートフォン、PDA、ボディマウント型又は挿入型コンピュータ、組み込みデバイススタイルのコンピュータ、特定用途向け集積回路(ASIC:application-specific integrated circuit)ベースのデバイスであるがこれらに限定されない。

Claims (18)

  1. コンピュータに実装された方法(CIM)であって、
    プロセス識別コード(PID)を通信する際に使用されるべき新しいイーサタイプを定義すること、ここで、前記新しいイーサタイプが、新しいイーサタイプコードを割り当てられる;
    PIDを通信する際に使用されるべき複数の抽象化層からの選択された抽象化層を決定すること;及び、
    ネットワーク化されたコンピュータシステムの2台以上のコンピュータ間で複数のネットワーク通信を、各通信を用いて行うこと
    を含み、
    ここで、各所与の通信を行うことが、
    前記新しいイーサタイプコードと、前記所与の通信を生じさせるプロセスのPIDとをデータ構造内に挿入すること、及び、
    前記選択された抽象化層において、前記ネットワーク化されたコンピュータシステムの複数のコンピュータ間でデータ構造を通信すること
    を含む、
    前記方法。
  2. 前記データ構造が、パケット、フレーム又は生データのうちのいずれか1つのデータ構造タイプである、請求項1に記載のCIM。
  3. 前記複数の抽象化層のうちの幾つかの抽象化層の夫々が、開放型システム間相互接続(OSI)モデルの7つの層のうちの少なくとも一部に対応する、請求項1に記載のCIM。
  4. 前記選択された抽象化層が、OSIトランスポート層であり;並びに、
    各データ構造が、トランスミッションコントロールプロトコル(TCP)に従って形成されたパケットであり、ここで、前記新しいイーサタイプコード及び前記パケットについてのPIDがパケットヘッダに挿入される、
    請求項3に記載のCIM。
  5. 前記新しいイーサタイプコードが2バイト長であり;及び、
    各PIDが3バイト長である、
    請求項4に記載のCIM。
  6. 前記選択された抽象化層が、下記のOSI層、すなわち、ネットワーク層、データリンク層プロトコル、又は物理層のうちの1つである、請求項3に記載のCIM。
  7. コンピュータプログラム製品(CPP)であって、
    1以上のストレージデバイスの1組;及び、
    1以上のストレージデバイスの前記1組に集合的に記憶されたコンピュータコード
    を備えており、
    ここで、前記コンピュータコードは、
    データ及び、プロセス識別コード(PID)を通信する際に使用されるべき新しいイーサタイプを定義すること、ここで、前記新しいイーサタイプが、新しいイーサタイプコードを割り当てられる;
    PIDを通信する際に使用されるべき複数の抽象化層からの選択された抽象化層を決定すること;並びに、
    ネットワーク化されたコンピュータシステムの2台以上のコンピュータ間で複数のネットワーク通信を、各通信を用いて行うこと
    を少なくとも含む動作を1以上のプロセッサセットに実行させる為の複数の命令
    を含み、
    ここで、各所与の通信を行うことが、
    前記新しいイーサタイプコードと、前記所与の通信を生じさせるプロセスのPIDとをデータ構造内に挿入すること、及び、
    前記選択された抽象化層において、前記ネットワーク化されたコンピュータシステムの複数のコンピュータ間でデータ構造を通信すること
    を含む、
    前記CPP。
  8. 前記データ構造が、パケット、フレーム又は生データのうちのいずれか1つのデータ構造タイプである、請求項7に記載のCPP。
  9. 前記複数の抽象化層のうちの幾つかの抽象化層の夫々が、開放型システム間相互接続(OSI)モデルの7つの層のうちの少なくとも一部に対応する、請求項7に記載のCPP。
  10. 前記選択された抽象化層が、OSI層トランスポート層であり、及び、
    各データ構造が、トランスミッションコントロールプロトコル(TCP)に従って形成されたパケットであり、ここで、前記新しいイーサタイプコード及び前記パケットについてのPIDがパケットヘッダに挿入される、請求項9に記載のCPP。
  11. 前記新しいイーサタイプコードが2バイト長であり;及び、
    各PIDが3バイト長である、
    請求項10に記載のCPP。
  12. 前記選択された抽象化層が、下記のOSI層、すなわち、ネットワーク層、データリンク層プロトコル、又は物理層のうちの1つである、請求項9に記載のCPP。
  13. コンピュータシステム(CS)であって、
    1以上のプロセッサセット;
    1以上のストレージデバイスの1組;及び、
    1以上のストレージデバイスの前記1組に集合的に記憶されたコンピュータコード
    を備えており、
    ここで、前記コンピュータコードは、
    データ及び、プロセス識別コード(PID)を通信する際に使用されるべき新しいイーサタイプを定義すること、ここで、前記新しいイーサタイプが、新しいイーサタイプコードを割り当てられる;
    PIDを通信する際に使用されるべき複数の抽象化層からの選択された抽象化層を決定すること;並びに、
    ネットワーク化されたコンピュータシステムの2台以上のコンピュータ間で複数のネットワーク通信を、各通信を用いて行うこと
    を少なくとも含む動作を1以上のプロセッサセットに実行させる為の複数の命令
    を含み、
    ここで、各所与の通信を行うことが、
    前記新しいイーサタイプコードと、前記所与の通信を生じさせるプロセスのPIDとをデータ構造内に挿入すること、及び、
    前記選択された抽象化層において、前記ネットワーク化されたコンピュータシステムの複数のコンピュータ間でデータ構造を通信すること
    を含む、
    前記コンピュータシステム。
  14. 前記データ構造が、パケット、フレーム又は生データのうちのいずれか1つのデータ構造タイプである、請求項13に記載のCS。
  15. 前記複数の抽象化層のうちの幾つかの抽象化層の夫々が、開放型システム間相互接続(OSI)モデルの7つの層のうちの少なくとも一部に対応する、請求項13に記載のCS。
  16. 前記選択された抽象化層が、OSIトランスポート層であり;及び、
    各データ構造が、トランスミッションコントロールプロトコル(TCP)に従って形成されたパケットであり、ここで、前記新しいイーサタイプコード及び前記パケットについてのPIDがパケットヘッダに挿入される、
    請求項15に記載のCS。
  17. 前記新しいイーサタイプコードが2バイト長であり;及び、
    各PIDが3バイト長である、
    請求項16に記載のCS。
  18. 前記選択された抽象化層が、下記のOSI層、すなわち、ネットワーク層、データリンク層プロトコル、又は物理層のうちの1つである、請求項15に記載のCS。
JP2023534683A 2020-12-16 2021-11-16 ネットワークプロトコルを用いてネットワークフローデータを通信すること Pending JP2023553893A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/123,171 US11677864B2 (en) 2020-12-16 2020-12-16 Communicating network flow data using a network protocol
US17/123,171 2020-12-16
PCT/CN2021/130898 WO2022127471A1 (en) 2020-12-16 2021-11-16 Communicating network flow data using a network protocol

Publications (1)

Publication Number Publication Date
JP2023553893A true JP2023553893A (ja) 2023-12-26

Family

ID=81942052

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023534683A Pending JP2023553893A (ja) 2020-12-16 2021-11-16 ネットワークプロトコルを用いてネットワークフローデータを通信すること

Country Status (6)

Country Link
US (1) US11677864B2 (ja)
JP (1) JP2023553893A (ja)
CN (1) CN116569521A (ja)
DE (1) DE112021006552T5 (ja)
GB (1) GB2617738A (ja)
WO (1) WO2022127471A1 (ja)

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9432251B2 (en) 2013-03-08 2016-08-30 Qualcomm Incorporated Enhanced acknowledgement and retransmission mechanism
EP3026918B1 (en) 2014-08-01 2019-02-27 LG Electronics Inc. Broadcast signal transmission method and broadcast signal transmission apparatus using encapsulation in link layer packets
US9961170B2 (en) * 2014-11-25 2018-05-01 Qualcomm Incorporated Ethertype packet discrimination data type
CN104506365A (zh) 2014-12-24 2015-04-08 上海市共进通信技术有限公司 无源光网络中实现多种芯片业务兼容分析的方法
US9781652B2 (en) * 2015-02-05 2017-10-03 Mediatek Inc. Method and apparatus of LWA PDU routing
US10230654B2 (en) * 2016-12-28 2019-03-12 Intel IP Corporation Multiband aggregation data encapsulation
US10762201B2 (en) 2017-04-20 2020-09-01 Level Effect LLC Apparatus and method for conducting endpoint-network-monitoring
WO2018203735A1 (en) * 2017-05-05 2018-11-08 Samsung Electronics Co., Ltd. Apparatus and method for configuring channel resource in wireless communication system
EP3404867B1 (en) * 2017-05-18 2020-01-08 ID Quantique S.A. Configurable service packet engine exploiting frames properties
US10756949B2 (en) 2017-12-07 2020-08-25 Cisco Technology, Inc. Log file processing for root cause analysis of a network fabric
US10411978B1 (en) 2018-08-09 2019-09-10 Extrahop Networks, Inc. Correlating causes and effects associated with network activity
US11190420B2 (en) 2018-10-31 2021-11-30 Salesforce.Com, Inc. Generating events from host based logging for consumption by a network logging host

Also Published As

Publication number Publication date
US11677864B2 (en) 2023-06-13
US20220191308A1 (en) 2022-06-16
DE112021006552T5 (de) 2023-11-16
WO2022127471A1 (en) 2022-06-23
GB202310314D0 (en) 2023-08-16
GB2617738A (en) 2023-10-18
CN116569521A (zh) 2023-08-08

Similar Documents

Publication Publication Date Title
US11128550B2 (en) Logical network traffic analysis
US20220103452A1 (en) Tracing logical network packets through physical network
CN110168499B (zh) 在主机上执行上下文丰富的基于属性的服务
US10581801B2 (en) Context-aware distributed firewall
US11604666B2 (en) Service path generation in load balanced manner
EP3020169B1 (en) Tracing network packets by a cluster of network controllers
CN109962832A (zh) 报文处理的方法和装置
US11909653B2 (en) Self-learning packet flow monitoring in software-defined networking environments
US9621431B1 (en) Classification techniques to identify network entity types and determine network topologies
US20170359252A1 (en) Techniques for efficient service chain analytics
US20150016469A1 (en) Maintaining Data Stored with a Packet
US20140233564A1 (en) Packet Modification to Facilitate Use of Network Tags
US10819573B2 (en) Hierarchical coherency for network function virtualization
CN107534690A (zh) 采集域名系统流量
US20080267193A1 (en) Technique for enabling network statistics on software partitions
US11349736B1 (en) Flow-based latency measurement for logical overlay network traffic
JP2023553893A (ja) ネットワークプロトコルを用いてネットワークフローデータを通信すること
Ghazali et al. Enhanced IPFIX flow monitoring for VXLAN based cloud overlay networks.
CN115225545B (zh) 一种报文传输方法及装置
US20240297852A1 (en) Identifying unmanaged cloud resources with endpoint and network logs
Khurram et al. Design and Development of VXLAN Based Cloud Overlay Network Monitoring System and Environment
JP2018170639A (ja) 通信解析装置、通信解析方法およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230621

RD16 Notification of change of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7436

Effective date: 20230711

Free format text: JAPANESE INTERMEDIATE CODE: A7436

Effective date: 20230512

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240411