機械学習に基づく自動ネットワークトラフィック分析

機械学習に基づく自動ネットワークトラフィック分析

1. 概要

現在、機械学習はネットワーク トラフィック分析タスクで広く使用されています。特徴抽出、モデル選択、パラメータ調整などの多くの要因によってモデルのパフォーマンスが決まります。異なるネットワーク トラフィックや新しいタスクに直面するたびに、研究者はモデルを再開発する必要があります。この反復的なプロセスは、多くの場合、時間がかかり、労力がかかります。したがって、さまざまな問題クラスにわたるさまざまなモデルで使用できるさまざまなネットワーク フローの共通表現を作成し、モデリング プロセス全体を自動化する必要があります。この論文は、自動化されたネットワーク トラフィック分析の一般的な問題に焦点を当て、研究者がモデルと機能の最適化に多くの時間を費やし、実際に最適なモデルを説明して展開することに多くの時間を費やせるようにすることを目的としています。

自動ネットワークトラフィック分析

従来の機械学習ベースのネットワーク トラフィック分析は、手作業に大きく依存しています。実際には、機能、モデル、パラメーターの最適な組み合わせを取得することは通常、反復的なプロセスであり、いくつかの欠点があります。まず、適切なデータ表現と特徴の選択はトラフィック分析タスクにとって非常に重要ですが、専門的なドメイン知識があっても、特徴エンジニアリングは依然として脆弱で不完全なプロセスです。明白でない特徴や複雑な関係を含む特徴は、手動分析中に無視される可能性があります。次に、ネットワーク環境は複雑で変化しやすく、トラフィック パターンの変化は特徴の障害につながります。最後に、新しいトラフィック検出または分類タスクごとに、新しい特徴を再設計し、適切なモデルを選択し、パラメーターを再調整する必要があります。

これらの問題を回避するために、このセクションでは、さまざまなネットワークトラフィック分析タスクに適した自動化された方法を紹介します[1]。ネットワークトラフィックを均一に表現し、それを自動機械学習(AutoML)手法と組み合わせることで、さまざまなネットワークトラフィック分析問題に対するシンプルで高速な自動反復と展開を実現します。

2.1 データ表現

多くの分類問題では、データ表現はモデル選択と同じくらい重要であるため、機械学習手法を適用する際には、データをどのように表現してエンコードするかが非常に重要です。ネットワーク トラフィック データのエンコードでは、次の 3 つの要件を満たす必要があります。

(1)完全な表現。私たちの目標は、特定の機能を選択することではなく、専門知識に依存しないように統一されたデータエンコーディングを行うことです。そのため、パケットヘッダーを含むすべてのデータパケット情報を保持する必要があります。

(2)サイズは固定です。多くの機械学習モデルへの入力は常に同じサイズのままであるため、各パケット表現は一定サイズである必要があります。

(3)本質的な標準化機械学習モデルは、特徴が正規化されるとパフォーマンスが向上することが多く、これによりトレーニング時間が短縮され、モデルの安定性が向上するため、データの初期表現自体が正規化されていると非常に便利です。

(4)一貫した表現データ表現の各位置は、すべてのパケットのパケット ヘッダーの同じ部分に対応している必要があります。つまり、プロトコルとメッセージの長さが異なっていても、特定の特徴は常にパケット内で同じオフセットを持ちます。整列されたデータにより、モデルはこの前提に基づいて特徴表現を学習できます。

図 1 に示すように、ネットワーク トラフィックを表現する主な方法には、セマンティック表現と単純なバイナリ表現があります。

(1) 意味表現: 各ヘッダーには独自の意味フィールドがありますが、それらを区別するオプションフィールドの順序は保持されません。また、各プロトコルの意味構造を解析するには、ドメインの専門知識が必要です。このような知識があっても、面倒な機能エンジニアリングは避けられません。

(2)ナイーブバイナリ表現:データパケットの元のビットマップ表現は順序を維持するために使用されますが、異なるサイズとプロトコルは無視され、その結果、2つのデータパケットの特徴ベクトルは同じ特徴に対して異なる意味を持ちます。この不整合により、重要な特徴にノイズが発生し、モデルのパフォーマンスが低下する可能性があります。また、各ビットをセマンティクスにマッピングすることが不可能であるため、解釈不能になります。

図1 意味表現と単純なバイナリ表現

上記の両方の表現方法は、統一されたデータ表現のニーズを満たすことができません。図 2 に示すように、研究者はセマンティック表現と単純なバイナリ表現を組み合わせて、統一されたネットワーク データ パケット表現方法 nPrint を提案しました。まず、あらゆるデータ パケットが情報を失うことなく完全に表現できることを保証します。次に、内部パディングを使用して、各データ パケットが同じ数の特徴で表現され、各特徴が同じ意味を持つことを保証します。このビット レベルでの解釈可能な表現により、モデルをよりよく理解できます。次に、データ パケットのビットが直接使用され、特定のビットが 0 に設定されていることを区別し、存在しないパケット ヘッダーを -1 で埋めます。最後に、各データ パケットが同じ数の特徴で表現され、特定のネットワーク トラフィック分析タスクでは、ペイロードが任意のバイト数に設定されます。さらに、nPrint はモジュール式で拡張可能であり、他のプロトコルを表現に追加できるだけでなく、パケット表現のセットを連結してマルチパケットの nPrint フィンガープリントを構築することもできます。

図2 nPrint

2.2 nPrintML

専門家は、生のデータ パケットから特徴を抽出し、最適と思われるモデルまたはモデル セットでトレーニングし、最後に手動または構造化検索によってモデルを微調整するのに、数週間から数年を費やすことがよくあります。プロセス全体を標準化するために、図 3 に示すように、nPrint をベースにした nPrintML を提案し、AutoML ツールと組み合わせて機械学習プロセスを自動化しました。

図3 nPrintML

nPrint は、さまざまなトラフィック分析タスクの特徴抽出プロセスを標準化し、AutoML は、特徴の選択、モデルの選択、ハイパーパラメータの調整を自動化して、特定の特徴とラベル付けされたデータセットに最適なモデルを見つけることを目的としています。最終的に、nPrint は各ネットワーク トラフィック分析タスクに最適な機能を抽出し、AutoML を使用して最適なモデルとハイパーパラメータを決定します。

AutoGluon は、複数の単一モデルを優れたパフォーマンスで統合し、他の多くの AutoML ツールよりも優れているため、AutoML ツールとして選択されました。ここでは、表形式のデータを処理する関数のサブセットである AutoGluon-Tabular を使用します。これは、ディープ ニューラル ネットワーク、ツリーベースの方法 (ランダム フォレストなど)、ノンパラメトリック方法 (k 近傍法など)、勾配ブースティング ツリー方法などの基本モデルのセットを検索することにより、機能選択、モデル選択、ハイパーパラメータ最適化を実行します。さらに、AutoGluon-Tabular はベースモデルから重み付けされたアンサンブル モデルを作成することもできるため、トレーニング時間が短く、他の AutoML ツールよりも高いパフォーマンスを実現できます。

研究者らはnPrintとAutoGluonを組み合わせ、PythonでnPrintML[2]を実装し、ユーザーが1回の呼び出しでディレクトリ全体を実行できるようにしました。パッシブ オペレーティング システム検出を例にとると、ユース ケースは次のようになります。

 nprintml - L os_labels .txt - a インデックス- P トラフィック.pcap - 4 –t

2.3 実験結果

図 4 は、8 つのネットワーク トラフィック分析シナリオについて、nPrintML を使用して分析したケース スタディを示しています。実験結果から、nPrintML はさまざまなシナリオでネットワーク トラフィック分析の問題を解決できるだけでなく、従来の方法よりも優れたパフォーマンスを発揮することがわかります。

図4 nPrintMLのケーススタディ結果

3. まとめ

ネットワーク トラフィック分析タスクに機械学習を適用した場合のパフォーマンスは、モデル自体だけでなく、データの適切な表現と機能の選択にも依存します。この論文では、データ パケットを統合して表現学習とモデル トレーニングに適した形式に変換し、既存の自動機械学習と組み合わせて、ネットワーク トラフィック分析プロセス全体を完全に自動化する、自動ネットワーク トラフィック分析の新しいアイデアを紹介します。このアプローチは、一般的なネットワーク トラフィック分析タスクに適用できるだけでなく、既存のモデルよりも優れたパフォーマンスを示します。

参考文献

[1] Holland J、Schmitt P、Feamster N、他「自動トラフィック分析の新たな方向性」2021 ACMコンピューターおよび通信セキュリティ会議[C]。2021年。

[2] https://nprint.github.io/

<<:  ディープラーニングで知っておくべき活性化関数トップ10

>>:  祭壇から一般公開へと移行する冬季オリンピックでAIブラックテクノロジーを公開

推薦する

第6回ドルイドチャイナミートアップがKuaishou本部で開催されました

3月16日、KuaishouとTestin Cloud Testingが共同で主催するApache ...

計算能力≠知恵! MIT教授の「意識の源」に関する新理論:人間の認知はコンピューティングとは何の関係もない

[[432064]]長い間、多くの学者は、ディープラーニングと人工ニューラルネットワークのインスピレ...

COVID-19ヘルスケア市場はこれまでと異なる

[[355787]]画像ソース: https://pixabay.com/images/id-537...

...

...

AIの脳回路は人間と非常に似ている、OpenAIの最新研究は白熱した議論を引き起こしている

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

ビル・ゲイツ:AIは教育と医療の向上に活用されるべき

[[260198]]米テクノロジーメディアCNETによると、マイクロソフトの共同創業者で慈善家のビル...

ChatGPT Civilization Simulator が再びオンラインになりました!クリックひとつで、火山噴火の日の古代都市ポンペイにタイムスリップ

GPT-4のアップデート機能により、AIを使って歴史をシミュレートすることは、単なる「テキストロール...

Linux オブジェクトアロケータ スラブアルゴリズム

[[414991]]この記事はWeChatの公開アカウント「Linux Kernel Things」...

2020年が過ぎようとしていますが、これらの新しいテクノロジーがもたらした問題は依然として残っています。

2020年、疫病による経済的、社会的不確実性にもかかわらず、人工知能技術は加速的に発展し続けました...

AIを活用して、ナスダックは金融業界向けのSaaSプロバイダーに変革したいと考えている

Nasdaq の CIO 兼 CTO である Brad Peterson 氏は、10 年以上にわたっ...

...

Google が 11 の言語をカバーする TyDi QA コーパスをリリース

[[315942]]多言語の質問応答技術の研究を促進するために、Google は 11 種類の言語を...

AIは古い文化的シンボルを解体し革新することはできない

1950 年代後半から 1960 年代前半にかけて、一群の芸術家と作家がパリの荒廃したホテルに移り住...