JP7136300B2 - トラヒック分析装置、システム、方法及びプログラム - Google Patents

トラヒック分析装置、システム、方法及びプログラム Download PDF

Info

Publication number
JP7136300B2
JP7136300B2 JP2021154149A JP2021154149A JP7136300B2 JP 7136300 B2 JP7136300 B2 JP 7136300B2 JP 2021154149 A JP2021154149 A JP 2021154149A JP 2021154149 A JP2021154149 A JP 2021154149A JP 7136300 B2 JP7136300 B2 JP 7136300B2
Authority
JP
Japan
Prior art keywords
state
time
communication
application
series data
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.)
Active
Application number
JP2021154149A
Other languages
English (en)
Other versions
JP2021193832A (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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Publication of JP2021193832A publication Critical patent/JP2021193832A/ja
Application granted granted Critical
Publication of JP7136300B2 publication Critical patent/JP7136300B2/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • H04L1/0019Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy in which mode-switching is based on a statistical approach
    • H04L1/002Algorithms with memory of the previous states, e.g. Markovian models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/509Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to media content delivery, e.g. audio, video or TV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y10/00Economic sectors
    • G16Y10/75Information technology; Communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0888Throughput

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Mathematical Optimization (AREA)
  • Environmental & Geological Engineering (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

(関連出願についての記載)
本発明は、日本国特許出願:特願2017-207638号(2017年10月26日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、トラヒック分析装置、システム、方法及びプログラムに関する。
通信サービスの高度化により、通信事業者の性能指標(例えば主要性能指標(Key Performance Indicator):KPI)は、例えば通信品質(Quality of Service:QoS)から、アプリ品質(例えば、Quality of Experience (QoE)やQuality of control (QoC))に移行しつつある。一例として、ITU-T(International Telecommunication Union Telecommunication Standardization Sector)では、Web閲覧(Web-browsing)/動画のQoEが策定されている(Recommendation ITU-T G.1031)。
今後、アプリ品質に基づくネットワーク制御やネットワーク設計が重要視されることが想定される。例えばITU-Tにおいて、Webアクセス(ITU-T Recommendation G.1030:Estimating end-to-end performance in IP networks for data applications)、動画配信(Recommendation ITU-T P.1203:Parametric bitstream-based quality assessment of progressive download and adaptive audiovisual streaming services over reliable transport)のQoEが定義されている。機械制御の世界でもネットワーク越しの制御(ネットワーク化システム)の検討が進んでいる。例えばネットワーク越しでの機械制御のパフォーマンスの指標(QoP:Quality of PerformanceやQoC)の議論が進むものと思料される。
近時、例えば、モノがインターネットにつながるIoT(Internet of Things)等の普及に伴い、通信利用者側の通信品質に対するニーズも高度化している。例えばIoT等では(IoT以外のアプリケーションの場合も含む)、アプリケーションの動作状態が変わる場合がある。IoTのアプリケーションとして、IoTセンサカメラ(車載カメラ等)が撮像した映像(動画)データを、例えばナビゲーションデータ等とともに、ネットワークを介してサーバ(クラウド)等に送信し、サーバ側で受信データをリアルタイムに分析し、分析結果に基づき遠隔制御や遠隔支援(例えば車の自動運転や走行支援)等を行うアプリケーションでは、ネットワークのスループット等の変動に応じた映像配信(リアルタイム映像配信)を行うようにしてもよい。また、ウェアラブルカメラ等を用いた物体認識アプリケーションでは、該ウェアラブルカメラからの映像データを受け取ったサーバとウェアラブルカメラとが協調して物体認識を行う場合と、ウェアラブルカメラ単体で対象物体を追尾する場合とでは、必要なスループットは異なる。さらに、IoTデバイスとしてドローン搭載カメラによる空撮映像をリアルタイム中継する場合、ドローンからの映像配信やドローンのフライト情報(位置情報、高度、加速度情報等)の送信、ドローンへのコマンド設定等の各動作モードで、必要なスループットは異なる。なお、ネットワーク(例えば無線網、コアネットワーク、WAN(Wide Area Network)等)では、電子メールや、静止画、動画(映像)、音声(通話)等、様々な通信トラヒックが、例えば同一ネットワーク上を流れることになるが、これらの通信トラヒックは、通信サービス毎に異なる特性を持つことが知られている。
今後、通信事業者には、
- 通信利用者の通信品質に対するニーズの高度化、
- アプリ単位の要件に応じた通信、
- 刻々と変わるアプリの利用状況等に応じた通信サービスの提供等が
求められることになる。このため、通信事業者では、アプリケーション状態変化の把握が課題となる。
通信事業者が、「刻々と変わる利用条件(アプリケーションの状態)に応じて最適な通信品質」を提供し、通信利用者の満足度(QoE: Quality of Experience)を高めるためには、きめ細やかな通信制御が必要とされる。このため、例えば、
- 制御対象パラメータが増加(通信帯域、伝送遅延の揺らぎ(ジッタ等)など)し、
- 細かな制御周期が必要とされる。
しかしながら、通信事業者(通信事業者が提供するネットワーク機器等)で取得できる情報には制限がある。
例えば、ネットワークを流れる暗号化トラヒックの増大、トラヒック多様化により、トラヒックの中身を覗くDeep Packet Inspection(DPI)の手法には限界がある。また、個人保護法の観点により、DPIそのものが使えなくなる可能性もある。暗号化やプライバシーの観点で通信データの中身をみることはできない。
ネットワークを流れるトラヒックから取得できる情報は、
- 5タプル(5-tuple (例えば、送信元/宛先のIP(Internet Protocol)アドレス/ポート、プロトコル))と、
- トラヒックパターン(例えば、スループット、パケットサイズ、パケット送信間隔等)等である。
トラヒックフローは、IPヘッダフィールド内に同一の情報を持つパケットのグループ(宛先IPアドレスとポート番号、送信元IPアドレスとポート番号が等しいパケットの集合)で構成される。トラヒック発信元のアドレス(source address)、トラヒックの宛先アドレス(destination address)、発信元ポート、宛先ポート、プロトコル番号は「5タプル」とも称せられる。
前述した通信事業者の提供するネットワークを構成するネットワーク機器は、通信利用者(例えば端末)がどのようなアプリケーションを使っているのか、そのアプリケーションが、いかなる状態で動作しているのかを、直接知る術がない。
機械学習ベースのトラヒック分析では、トラヒックノイズによる誤検知が高いことが知られている。なお、機械学習ベースのトラヒック分析の一例として、例えば非特許文献2には、教師有り単純ベイズ分類器(Supervised naive Bayesian classifier)を用いてアプリケーションカテゴリごとにトラヒック(Transmission Control Protocol(TCP)コネクション単位)を分類する。入力として、終端したTCPコネクションから得られる特徴量(Flow duration(フロー継続時間)、TCP port(TCPポート)、Packet inter-arrival time(パケット到着時間)(平均、 分散等)、Payload size(ペイロードサイズ)(平均、分散等)、Effective Bandwidth based upon entropy(エントロピーに基づく有効帯域幅)、Fourier Transform of the Packet inter-arrival time(パケット到着時間のフーリエ変換))と、当該TCPコネクションで行われていた通信のカテゴリ情報が用いられる。出力として、例えば以下のアプリケーションカテゴリごとの分類結果(各カテゴリに割り当てられたネットワークトラヒック)が得られる。非特許文献2の開示は、フロー(TCPコネクション)の継続時間(Flow duration)を利用しているため、コネクションが終端していることが必須である。
特開2014-16731号公報
松原靖子、 櫻井保志、Christos Faloutsos、"大規模時系列データの特徴自動抽出(Fully Automatic Mining of Large Time-series Datasets)"情報処理学会論文誌:データベース, Vol. 7, No. 2, pp. 37-50, 2014, 6月 Andrew W. Moore, Denis Zuev, "Internet Traffic Classification Using Bayesian Analysis Techniques," SIGMETRICS'05 (Proceedings of the 2005 ACM SIGMETRICS international conference on Measurement and modeling of computer systems), June 6-10, 2005, Banff, Alberta, Canada.
前述したように、通信事業者(通信機器)で取得できる情報には制限がある。通信トラヒックを覗くことなく、アプリケーション品質(「アプリ品質」とも略記される)を満たす通信サービスの提供を実現可能するシステムが望まれる。
例えば、ネットワーク上に流れるトラヒックのスループットから、当該トラヒックに対応するアプリの状態を推定する場合、推定精度が低いことを、本願発明者等は確認している。
ここで、トラヒックのスループットは単位時間あたりのデータ転送量(bits per second)をいう。なお、RFC(Request for Comments: IETF(Internet Engineering Task Force)による仕様等) 1242の3.17では、スループットは、"The maximum rate at which none of the offered frames are dropped by the device."(その機器によって送信フレームが損失しない最大レート)と定義されているが、基本的にこの定義から逸脱しない。
アプリケーションの状態を推定する場合、様々な複合的な要因から予測不能に時系列データが変動するため(例えば急なスループットの落ち込み等)、その時系列データの変動を誤認識してしまい、推定精度が低いことが確認されている。
図1は、この点を説明する図である。図1は、本発明者らによるシミュレーション結果を示している。スループットは、様々な要因により変動する。例えば、
- ネットワーク上で発生する無線品質の変動、
- トラヒック量の変動、
- 符号化方式、圧縮レート等(アプリケーション側からトラヒック制御)。
図1において、201で示す波形は、ネットワークのインタフェース(Network Interface Card: NIC)上を流れるパケットをキャプチャし、例えば同一送信元(又は宛先)IPアドレスのパケットを抽出して測定した通信トラヒック(例えばスループット等)の測定結果(時系列データ)をプロットした図である。図1において、201の横軸は時間(例えば201の始端から終端まではほぼ1200秒)、縦軸はスループット(例えば、Mega bits per second: Mbps)である。202は、通信トラヒック(例えばスループット)の時系列データ201から、当該通信トラヒックにて提供されるアプリケーションサービス(通信サービス)であるアプリ状態(例えば映像配信、通話等)を推定した結果の一例を模式的に例示する図である。202で示す波形において、横軸は、201と共通の時間である。また特に制限されないが、202の縦軸の状態0は、アプリケーション状態A(映像)、状態1はアプリケーション状態B(通話)とする(アプリケーション状態は「アプリ状態」とも略記される)。なお、203は、参考として、201のスループットの時系列データに対して矢印で示したアプリ状態のシーケンス(本来の状態のシーケンス)、すなわち、アプリ状態A(映像配信)、アプリ状態B(音声通話)の時系列パターンを表している。
図1の202において、202a、202b、202c等では、通信トラヒック(例えばスループット)の変動(通信ノイズ)により、状態を誤って推定している。なお、図1における状態の誤推定の原因等については、以下で詳細な分析が行われる。
本発明の目的は、通信トラヒックからアプリケーション状態を推定するにあたり、誤推定を抑制し推定精度の向上を図るシステム、装置、方法を提供することにある。
本発明の一つの側面によれば、通信トラヒックの時系列データに対して隠れマルコフモデルに基づき、状態のシーケンスを推定し、前記状態のシーケンスから状態遷移が類似するパターンをひとまとめにして1つの状態とみなして状態のシーケンスを抽出する第1手段(第1のユニット)と、前記第1の手段(第1のユニット)で抽出された前記状態のシーケンスと、予め定められたアプリケーション特性とに基づき、前記時系列データに対応するアプリケーションを判別する第2の手段(第2のユニット)と、トラヒック分析装置が提供される。
本発明の一つの側面によれば、通信トラヒックの時系列データに対して隠れマルコフモデルに基づき、状態のシーケンスを推定し、前記状態のシーケンスから状態遷移が類似するパターンをひとまとめにして1つの状態とみなして状態のシーケンスを抽出し、
前記抽出された前記状態のシーケンスと、予め定められたアプリケーション特性とに基づき、前記時系列データに対応するアプリケーションを判別するトラヒック分析方法が提供される。
本発明の一つの側面によれば、通信トラヒックの時系列データに対して隠れマルコフモデルに基づき、状態のシーケンスを推定し、前記状態のシーケンスに対して状態遷移が類似するパターンをひとまとめにして1つの状態とみなし、状態のシーケンスを抽出する処理と、
前記抽出された前記状態のシーケンスと、予め定められたアプリケーション特性とに基づき、前記時系列データに対応するアプリケーションを判別する処理と、をコンピュータに実行させるプログラムが提供される。
本発明によれば、上記プログラムを記録した非一時的なコンピュータ可読可能な媒体(a non-transitory computer readable medium)(例えばRAM(Random Access Memory)、ROM(Read Only Memory)、EEPROM(Electrically Erasable and Programmable ROM)等の半導体メモリ、HDD(Hard Disk Drive)、CD(Compact Disc)、DVD(Digital Versatile Disc))が提供される。
本発明によれば、通信トラヒックからアプリケーション状態を推定するにあたり、誤推定を抑制し、推定精度の向上を可能としている。
プロトタイプを説明する図である。 連続混合型HMMを模式的に説明する図である。 (A)は通信トラヒックの時系列データと分布、(B)は連続HMMの状態(出力確率分布)と状態遷移確率、(C)は推定された状態シーケンスをそれぞれ模式的に説明する図である。 本発明の一形態の階層モデルを説明する図である。 本発明の一形態を説明する図である。(A)は通信トラヒックの時系列、(B)は離散HMM、(C)は推定された状態シーケンスをそれぞれ模式的に説明する図である。 本発明の一形態の階層モデルの処理を説明する図である。 本発明の一形態における処理手順を説明する流れ図である。 (A)乃至(C)は本発明の一形態のシステム構成の一例を説明する図である。 本発明の例示的な実施形態1のトラヒック分析装置の構成例を説明する図である。 通信ノイズによる誤判定の発生を説明する図である。 (A)乃至(C)は、本発明の例示的な実施形態1の通信ノイズ算出部を説明する図である。 本発明の例示的な実施形態1の時系列データ正規化部を説明する図である。 時系列データ正規化部において図12の処理で適用される階層モデルを模式的に説明する図である。 本発明の例示的な実施形態1のアプリ状態判定部の処理を説明する図である。 本発明の例示的な実施形態1のアプリ状態判定部の処理を説明する図である。 本発明の例示的な実施形態1のアプリ状態判定部の変形例1を説明する図である。 (A)、(B)は本発明の例示的な実施形態1のアプリ状態判定部の変形例2を説明する図である。 本発明の例示的な実施形態1の作用効果をプロトタイプ(比較例)と対比して説明する図である。 本発明の例示的な実施形態2のトラヒック分析装置の構成例を説明する図である。 本発明の例示的な実施形態2を説明する図である。 本発明の例示的な実施形態3を説明する図である。 本発明の例示的な実施形態4のトラヒック分析装置の構成例を説明する図である。 (A)、(B)は本発明の例示的な実施形態4を説明する図である。 本発明の例示的な実施形態5のトラヒック分析装置の構成例を説明する図である。 本発明の例示的な実施形態5を説明する図である。 本発明の例示的な実施形態6を説明する図である。 本発明の例示的な実施形態7を説明する図である。 本発明の例示的な実施形態8を説明する図である。 本発明の例示的な実施形態9を説明する図である。 本発明の例示的な実施形態10を説明する図である。 本発明の基本的な一形態を説明する図である。
本発明の実施形態について説明する。図31を参照すると、本発明の一形態のトラヒック分析装置1は、通信トラヒックの時系列データに対して、階層隠れマルコフモデル(Hierarchical Hidden Markov Model)4に基づき、状態のシーケンスを推定し、前記状態のシーケンスから類似するパターンをひとまとめにして(1つのグループにグループ化して)1つの状態とみなした上で、状態のシーケンスを抽出する第1手段(第1のユニット)2と、前記第1の手段(第1のユニット)2で抽出された前記状態のシーケンスと、予め記憶部に記憶(登録)されたアプリケーション特性(アプリ特性)5と、を照合し、前記時系列データに対応するアプリケーション状態を判別する第2の手段(第2のユニット)3と、を備える。かかる構成を備えた本発明の一形態のトラヒック分析装置1によれば、通信トラヒックの時系列データからアプリケーション状態(アプリケーションの種別やアプリケーションの動作モード(状態)等)を推定するにあたり、誤推定(図1の202a、202b、202c)の発生を抑制し、推定精度の向上を図ることができる。
ここで、発明の前提技術でもあるHMM(Hidden Markov Model)について概説しておく。連続HMM(「連続分布型HMM」とも称せられる)は、シンボル出力確率を確率密度関数(probability density function (p.d.f.):例えばガウス分布(Gaussian p.d.f.))で表現したものであり、各状態の出力は、確率密度関数にしたがったd次元実数値ベクトル(dは所定の正整数)である。
図2は、連続HMMを説明するための模式図である。図2を参照すると、連続HMMでは、各状態の出力は、出力空間(d次元空間)の部分空間を構成する。連続混合型HMMの各状態の出力確率は以下で与えられる。
観測値列(シーケンス)O(図1では通信トラヒック)は、系列長Tの時系列データからなるものとする。
Figure 0007136300000001
・・・(1)
ただし、oは以下のd次元列ベクトルで与えられる(d≧1)。
Figure 0007136300000002
・・・(2)
肩のTは転置演算子である。
状態j(隠れ状態)での出力確率分布bj(ot)は、以下で与えられる。

Figure 0007136300000003

Figure 0007136300000004

Figure 0007136300000005

・・・(3)
Kは連続混合HMMの混合数である。N()は多次元(d次元)正規分布である。

Figure 0007136300000006
・・・(4)
式(4)において、μijは平均、Σjkはdxdの分散共分散行列である。
連続混合HMMのモデルパラメータを

Figure 0007136300000007
・・・(5)
とする。
式(5)において、Nは状態の数、Kは混合数である。
πiは最初にどの状態にあるかを表す初期状態確率である。
aijは時刻t-1に状態iに存在し時刻tに状態jに遷移する遷移確率である。
cjkは状態jのk番目の確率分布の混合比である。
θjkは状態jのk番目の確率分布のパラメータ(平均ベクトルμjk, 分散共分散行列Σjk)である。すなわち、
θjk={μjkjk}
・・・(6)
<EMアルゴリズム>
EMアルゴリズム(Expectation-Maximization)では、出力(観測データ)をx、非観測データ(欠けているデータ)(HMMでは状態列)をy、モデルパラメータをΘとし、観測値列の対数尤度を、E(Expectation)ステップとM(Maximization)ステップの繰り返しにより最大化するため、以下の1~3のステップを含む。
ステップ1.
初期パラメータΘを設定する(時刻t=0)。
ステップ2.
現在推定されているパラメータの分布Θtのもとで、尤度関数の条件付き確率P(y|x,Θt) に関する期待値を計算する(Eステップ)。
Figure 0007136300000008
・・・(7)
ステップ3.
Eステップで求まった尤度の期待値Q(Θ|Θt)を最大化するようなパラメータ
Figure 0007136300000009
・・・(8)
を求める(Mステップ)。
このMステップで求められたパラメータΘ*をΘ(t+1)として時刻を更新し(t=t+1)、次のEステップで使われる潜在変数の分布を決定するために用い期待値が収束する(増大しなくなる)まで上記ステップ2と3を繰り返す。
観測値列Oに対する未知の状態シーケンスS={s1, s2,… sT}ただし、状態st∈{1,…,N}、及び、観測値系列Oの未知の確率密度分布系列(分布系列)M={m1, m2,… mT}、ただし、mt∈{1,…,K}とすると、状態系列Sと分布系列Mは、EMアルゴリズムの非観測データ(欠けているデータ)yに対応する。完全データの対数尤度は、観測データO、非観測データY、パラメータΘに関して、

Figure 0007136300000010
・・・(9)
期待値は、

Figure 0007136300000011
・・・(10)
モデルパラメータΘ(t-1)と観測値列Oが与えられたとき、時刻t-1では状態iに存在し、時刻tで状態jに遷移する事後遷移確率分布をξij(t)としてフォアワードアルゴリズム、バックワードアルゴリズムを用いて書き直すと、

Figure 0007136300000012
・・・(11)
時刻tに状態jに存在する事後確率分布をζj(t)として

Figure 0007136300000013
・・・(12)
時刻tに状態jのk番目の分布に存在する分布の事後確率分布をγjk(t)として

Figure 0007136300000014

Figure 0007136300000015
・・・(13)
上記Q関数を各パラメータに関して最大化することにより、初期状態確率πi、状態遷移確率aij、混合比cjk,θjk={μjkjk}等は、例えば以下のように導出される(導出は良く知られている)。

Figure 0007136300000016
・・・(14)

Figure 0007136300000017
・・・(15)

Figure 0007136300000018
・・・(16)

Figure 0007136300000019
・・・(17)

Figure 0007136300000020
・・・(18)
<フォアワードアルゴリズム>
なお、モデルΘと観測値列Oが与えられたとき、時刻tまでに部分観測値列o1,o2,…, otを出力し、時刻tに状態iに存在する確率分布は、
Figure 0007136300000021
・・・(19)
として定義される。
このαi(t)は、良く知られているように、例えば以下のフォアワードアルゴリズムによって計算される。

Figure 0007136300000022
・・・(20)
Figure 0007136300000023
・・・(21)
時刻tでo1,o2,…,otを観測し、現在状態iにいる確率分布は
Figure 0007136300000024
・・・(22)
で与えられる。
<バックワードアルゴリズム>
バックワード変数β(t)はモデルΘが与えられた時、時刻t+1から時刻Tまでの観測列ot+1,ot+2,…, oTが生成される確率分布
Figure 0007136300000025
・・・(23)
として定義される。

Figure 0007136300000026

・・・(24)
式(24)において、Fは最終状態の集合、NFは最終状態の状態数である。
図1の例では、サンプルトラヒックをネットワーク上に流し、パケットモニタ装置(パケットキャプチャ)で通信トラヒック(例えばスループット:1秒当たりの転送データ量)を測定し、通信トラヒック(スループット)の時系列データを観測値列として、上記したEMアルゴリズムを用いて、連続混合HMMのパラメータ

Figure 0007136300000027
・・・(25)

を推定する(HMMモデルパラメータの学習)。
Viterbiアルゴリズムは、HMMにおいて与えられた出力列を出力した尤度が最も高い状態遷移系列を計算する。観測値列O=o1,o2,…,oTを生成したモデルMにおいて最適な状態系列S=s1,s2,…,sTを求めるために、最適状態確率δi(t)を定義する。
δi(t)=max <s1,s2,…,st-1> p(s1,s2,…,st =i, o1,o2,…,oT |Θ)
・・・(26)
時刻tにおける最適状態の確率は、以下のように再帰的に計算することができる。
δj(t) = max<i> [δi(t-1)aij]bj(ot)
・・・(27)
<Viterbiアルゴリズム>
ステップ1.
各状態i=1,…,N に対して、変数の初期化を行う。
δ1(i)= πi×bi(o1),
ψ1(i)=0 (1≦i≦N)
・・・(28)
ステップ2.
各時刻t=1,…,T-1, 各状態j=1,…,N について、再帰計算を実行する。
δt+1(j) = max(1≦i≦N)[δt(i)aij]bij(ot+1)
ψt+1(j) = argmax(1≦i≦N) [δt(i) aij ]
・・・(29)
ステップ3.
再帰計算の終了(時刻t=Tにおける最大の確率値Pと状態遷移系列qの計算)。
^P= max(1≦i≦N) [δT(i)]
^qT = argmax(1≦i≦N) [ψT(i)]
・・・(30)
ステップ4.
バックトラックによる最適状態遷移系列の復元。
各時刻t=T-1, …,1に対して、
^qt = ψt+1(^qt+1) ・・・(31)
を実行する。
図1に示す例では、上記した連続混合型HMMを用いて、与えられた観測系列(201:通信トラヒック(スループット))の時系列データを出力した尤度が最も高い状態遷移系列(202:状態シーケンス)を計算している。
なお、連続混合型HMMに階層型HMM(Hierarchical HMM:HHMM)を用いてもよい。階層型HMMに関して、例えば特許文献1、非特許文献2等が参照される。
連続HMMでは、図3(A)に模式的に示すように、通信トラヒック(例えばスループット)の時系列データ201(区間201-1、201-2、201-3)の振幅値(図3(A)の縦軸)の分布を、それぞれ正規分布211-1、211-2、211-3で表している(ただし、正規分布211-1、211-3は等しい)。時系列データの区間201-1、201-3の振幅値の分布に関して、その平均はμ、標準偏差はσ、時系列データの区間201-2の振幅値の分布に関して、その平均はμ、標準偏差はσである。
図3(B)は、1つの正規分布が1つの状態に対応する場合(例えば図2の混合数K=1の場合)の連続HMMを模式的に図解している。図3(A)の通信トラヒックの時系列データが正規分布から生成されたと仮定し、生成元の正規分布を隠れ状態とみなしている。隠れ状態#1の出力確率分布b1(ot)(正規分布)312-1、隠れ状態#2の出力確率分布b2(ot)(正規分布)312-2となる。なお、図3(B)では簡単のため、各隠れ状態の出力確率分布312-1、312-2を、1次元(式(4)のd=1)の1つの正規分布(図2のK=1)で表している。
図3(C)は、図3(A)の通信トラヒックに対して、連続HMMを用いて推定した状態シーケンスを示している。時系列データを正規分布で量子化し(時系列データがどの正規分布から得られる確率が最も高いか推定し、生成元の正規分布に対応する状態番号(状態名)で離散化)、アプリケーションの種別/状態(アプリ状態A:映像配信、アプリ状態B:音声通話等)ごとの変動パターンを離散値で表現する。図3(C)では、通信トラヒック(例えばスループット)の時系列データ201(区間201-1、201-2、201-3)に対して、連続HMMを用いて推定した状態の時間推移を、時系列データの時間軸に合わせて図示している。図3(A)において、例えば、通信トラヒックの時系列データの区間201-1、201-3の振幅の分布は同一の正規分布211-1の範囲に収まる。このため、時系列データ201の区間201-1、201-3は同一の状態#1とみなすことができる。
一方、通信トラヒックの時系列データ201の変動(振幅変動)が大きく、例えば時系列データの区間201-1の分布が正規分布211-1の範囲内に収まらず、正規分布211-2の範囲に跨って振動する場合、推定された状態が変動する。通信トラヒックの時系列データの変動振幅や変動回数が大きくなると、通信トラヒックの時系列データに対して、連続HMMを用いて推定した状態のシーケンス(例えばViterbiアルゴリズムで求めた通信トラヒック(スループット)に対応する最適状態の遷移シーケンス)も激しく変化する(ばたつく)ことになる。図1に示す例では、状態202の値0がアプリ状態(映像)(例えばカメラからの映像送信)、状態202の値1がアプリ状態(通話)(例えば端末間の音声通話)であるが、202a、202b、202cの時間区間の状態は、本来、状態203に示すように、アプリ状態A(値=0)であるべきところ、通信ノイズの影響等により、アプリ状態B(値1)の時間区間が含まれる。また、202a、202b、202cではスパイク状のノイズも含まれる。
なお、通信トラヒックの時系列データとして、スループット[bps(bit per second)]の時系列データを例示しているが、スループットに制限されるものでなく、例えば、
・単位時間当たりのパケット到着間隔(平均値)[sec]、
・単位時間当たりの平均パケットサイズ(平均値)[bytes]、
・単位時間当たりのパケット数等であってもよい。あるいは、オプションとして、例えばIoT向けの時系列入力情報(加速度の時系列情報や、無線品質の変化)も入力情報として利用してもよい。
本発明によれば、HMMを用いて推定される状態のばたつきを抑制するために、まず、通信トラヒックの時系列データから通信ノイズ量を算出して除去するようにしてもよい。通信トラヒックの時系列データから通信ノイズ量を除去した時系列データに対して、HMMを用いて、状態シーケンスを抽出するようにしてもよい。
本発明によれば、通信トラヒックの時系列データに対して連続HMMで推定した状態シーケンスに対して、離散HMMにより、類似した状態遷移が繰り返される変動パターンを検出し、該状態遷移が類似する変動パターンを離散HMMの1つの状態とする。このため、例えば通信トラヒックが乱高下する状況を、上層層(離散HMM)の1つの状態としてまとめることができる。
図4(A)、図4(B)は、本発明で用いるHMMのモデル構造を説明する図である。なお、図4(A)の301は通常のHMMのモデル構造を模式的に例示し、図4(B)の302は階層モデルのモデル構造を模式的に例示している。階層モデル302には、2つのグループ1、2(303、304)を含む例が示されているが、グループは2つに制限されるものでなく、3つ以上であってもよいことは勿論である。
なお、図4(B)の階層モデル302は、非特許文献1では、「多階層連鎖モデル」とも称され、各グループは「レジーム」とも称される。なお、グループ1、2では、単に簡易化のため、状態遷移モデルの状態数を2としている。グループは2つに制限されるものでなく、状態遷移モデルの状態数は2つに制限されるものでないことは勿論である。
各グループは内部に状態間の遷移行列A1、A2(それぞれの(i,j)要素は状態遷移確率:a1;ij、a2;ij (i,j=1,2))を保持し、さらに、グループ(レジーム)間の2×2の遷移行列Δ((u,v)要素は、状態遷移確率:δuv (u,v=1,2))を保有する。
例えばグループのモデルパラメータ{θ、θ、Δ}に基づき、シーケンスの変化点を検出する。非特許文献1によれば、変化点によって分割された部分シーケンスは「セグメント」とも称せられる。セグメントをグループ化したものが、類似時系列パターンである。なお、図4において、各グループ1、2のHMMは、連続HMM又は連続階層HMMであってもよいし、離散HMM、離散階層HMMであってもよい。
また、非特許文献1に開示されるように、コスト関数に基づき、最適なセグメントの数、グループ(レジーム)の数を算出するようにしてもよい。
図5(A)乃至図5(C)は、本発明を説明する図である。図5(A)は、通信トラヒックに対して連続HMMを用いて推定した状態シーケンスを例示したものであり、図3(C)の状態シーケンスに対応する。なお、特に制限されないが、図5(A)の状態シーケンスにおいて、状態#1を0、状態#2を1としている。
図5(B)は、図5(A)の状態シーケンス(連続HMMに基づき推定された状態シーケンス)に離散HMMを適用し、類似するパターンを発見し、該類似するパターンを1つのグループ(図4(B)の303、304等に対応)にまとめ、離散HMMの一つの隠れ状態でモデル化している。特に制限されないが、図5(B)の例では、
隠れ状態s1の出力確率は、
- 番号1(図5(A)の状態#1に対応)を出力する確率=0.1、
- 番号2(図5(A)の状態#2に対応)を出力する確率=0.9、
隠れ状態s2の出力確率は、
- 番号1(図5(A)の状態#1に対応)を出力する確率=0.6、
- 番号2(図5(A)の状態#2に対応)を出力する確率=0.4、
である。δij(i,j=1,2)は状態siから状態sjへの遷移確率である。
図5(C)は、図5(A)の離散値(状態の番号)の時系列データから、状態の変動が類似するパターンを、離散HMMにより1つのグループ(状態)にまとめた一例を示している。すなわち、図5(C)の例では、図5(A)の402-1の時間区間の状態のシーケンスの類似する変動パターン(状態#1と状態#2間でのばたつき(状態#1->状態#2->状態#1と同じような状態遷移の5つの変動パターン)を模式的に5つの三角波で表している)をひとまとめにグループ化して、離散HMMの状態s2としてモデル化している。前述したように、状態s2において、番号1、番号2(状態#1、状態#2)を出力する割合(出力確率の値の比)は3:2である。図5(A)の402-1の時間区間の状態#1、#2間の遷移パターンは、1つにまとめた状態s2が、例えば自己遷移し、その都度、状態s2の出力確率に応じて番号1、2を出力することに対応し、状態#1、状態#2間での遷移とみなすことができる。
図5(C)の状態のシーケンスは、離散HMMを用いて、図5(A)の状態402(連続HMMを用いて推定した状態)のシーケンスにおける402-1の時間区間の通信ノイズ(状態#1と状態#2間でのばたつき)を除去することが可能であることを例示している。
図6は、上記した本発明の一形態を説明する図である。グループ数r=2、区間(セグメント)数m=7とした場合を示す図である。ここで、セグメントは、例えば非特許文献1に従い、時系列データのパターンの変化点で区画される区間とする。f=2はセグメントの第1のメンバ(第1セグメント)がグループ(レジーム)2であることを表している。通信トラヒック(例えばスループット)401は、図1の通信トラヒック201と同一の時系列データである。402は、通信トラヒック(スループット)の時系列データ401に対して連続HMMを用いて推定した状態のシーケンスである。図6のモデルパラメータ403(グループ1、2のモデルパラメータ)は、図4(B)の302に対応し、
θ={π、A、B}、
θ={π、A、B
・・・(32)
で与えられる。ここで、πi(i=1,2)は初期確率、Ai(i=1,2)は遷移確率、Bi(i=1,2)は出力確率である。404は推定された状態の時間推移を示している。状態404の値0はアプリ状態A(映像)、値1はアプリ状態B(通話)であり、図1の状態203と同一の時間推移であり、正しくアプリ状態が推定されていることが分かる。
なお、図6では、通信トラヒックの時系列データとして、スループットの時系列データが示されているが、同一の通信トラヒックに関して、同一時間軸上で、スループット、パケットサイズ、パケット頻度、パケット送信間隔等、属性の異なる複数の時系列データ(例えば4種の時系列データ)に対して、階層モデルを用いて、各セグメントでのアプリケーション状態を推定するようにしてもよい。
図7は、本発明の一形態のトラヒック分析装置の動作例を説明する流れ図である。
解析対象の通信トラヒックの情報(例えばスループット等の特徴量)を取得する(ステップS11)。前述したように、通信トラヒックの情報は、単位時間当たりのパケット到着間隔(平均値)[sec]、単位時間当たりの平均パケットサイズ(平均値)[bytes]、単位時間当たりのパケット数等であってもよい。
通信トラヒック(例えばスループット等の特徴量)の時系列データから通信ノイズを算出し除去する(ステップS12)。
階層HMMに基づき、通信トラヒック(スループット)の時系列データから状態シーケンスを抽出し、類似パターンを1つの状態にまとめ、状態シーケンスの正規化処理を行う(ステップS13)。
正規化した状態シーケンスを、予め記憶されているアプリケーション特性と照合し、通信トラヒック(スループット)の時系列データに対応するアプリ状態を判定する(ステップS14)。
以上、本発明の一形態の典型的な動作原理の一例を説明した。次に、本発明の例示的な一実施形態について説明する。
図8(A)乃至図8(C)は、本発明の実施形態に係るシステム構成例を説明する図である。図8(A)において、パケットキャプチャ(パケットモニタ)10は、ネットワークを流れるプロトコルデータ単位(Protocol Data Unit:PDU)であるパケット(フレーム)をキャプチャし、各パケットのヘッダ等を解析し、例えばパケットの送信元アドレス、送信先アドレスや、ポート、長さ(パケットサイズ)、パケット頻度、パケット送信時間間隔等を解析する。なお、PDUは、ISO(International Organization for Standardization)のOSI(Open Systems Interconnection)参照モデルのデータリンク層(レイヤ2(L2))では「フレーム」、ネットワーク層(レイヤ3(L3))では「パケット」という。
パケットキャプチャ10(「パケットモニタ」ともいう)は、通信ネットワーク50内に配置されたネットワークノード20(例えばルータ(L3スイッチ)等の中継装置)等に接続し、通信ネットワーク50上に流れるパケット、例えば端末30とサーバ40間で送信・受信されるパケットをキャプチャする。ネットワークノード20において、モニタ対象の1つ又は複数のポート(複製元ポート)をパケットキャプチャ10が接続するポート(複製先ポート)にミラーリングすることで、パケットキャプチャ10は、ネットワークノード(スイッチ)20の該1つ又は複数のポート(複製元ポート)を通過する全てのパケット(送信パケット、受信パケット)をモニタすることができる。パケットキャプチャ10では、ネットワークインタフェースカード(NIC)をプロミスキャスモード(promiscuous mode)に設定し、自分宛のデータパケットでない信号も取り込むようにする。パケットキャプチャ10は、パケットの宛先、送信元のIPアドレス等を参照するだけでよい。このため、リクエストヘッダ等を含めて通信トラヒックは暗号化されていてもよい。
なお、図8(A)において、ネットワークノード20は、コアネットワーク内のゲートウェイ・ノード、あるいは、無線アクセスネットワークの基地局等であってもよい。トラヒック分析装置100は、パケットキャプチャ10で算出された、端末とサーバ間又は端末間の通信トラヒック(スループット)の時系列データを取得し、トラヒックの解析を行う。このトラヒック分析装置100は、図31のトラヒック分析装置1に対応する。なお、トラヒック分析装置100を、通信ネットワーク50を介して接続する不図示のクラウドサーバ等に実装するようにしてもよい。
図8(B)には、トラヒック分析装置100内に、図8(A)のパケットキャプチャ10を実装し、パケットキャプチャ10とトラヒック分析装置100を一体に実装した構成が示されている。
あるいは、図8(C)に示すように、パケットキャプチャ10、トラヒック分析装置100を、通信ネットワーク50のノード(例えばルータ等の中継装置、無線基地局やMEC(Mobile Edge Computing)サーバ等、コアネットワーク上のゲートウェイやサーバ等)に実装する構成としてもよい。
あるいは、端末30、又は、端末30と通信するサーバ40等に実装することで、端末30に流れてくるパケット、又は端末30からサーバ40に送信されるパケットをキャプチャしトラヒックを解析するようにしてもよい。なお、図8(A)乃至図8(C)において、通信ネットワーク50は端末間の音声通話サービス(Voice Over IP等)を提供するものであってもよい。
<実施形態1>
図9は、図8(A)乃至図8(C)を参照して説明したトラヒック分析装置100の構成の一例を示す図である。トラヒック分析装置100は、通信トラヒックの時系列データの変動波形(変動頻度、変動の大きさ)から推定された状態の変動を確率的に算出し、不要な変動パターンを除去するように、時系列データの抽象度を上げ、状態シーケンスとアプリケーション特性とに基づき、アプリケーションを判定するように構成される。なお、図9の構成は、トラヒック分析装置100の機能構成(処理モジュール)を例示したものであり、物理構成を規定したものではない。物理構成は、通信機能を備え、メモリに接続する1つ又は複数のプロセッサ装置で命令群を実行することで各機能(処理)を実現するようにしてもよい。
<通信トラヒック取得部>
図9において、通信トラヒック取得部101は、図8(A)に示すように、パケットキャプチャ10から解析対象の通信トラヒックをリアルタイムで取得する。前述したように、通信トラヒック取得部101は、図8(B)、図8(C)に示すように、パケットキャプチャを含む構成としてもよい。
<通信ノイズ算出部>
通信ノイズ算出部102は、通信トラヒックの時系列データの変動(例えば変動頻度、変動の大きさ)から通信ノイズ量を確率的に算出する。通信トラヒックは、無線環境の変動やアプリケーションの送信パターンの変化等による影響(本明細書では、「通信ノイズ」と呼ぶ)を受け、トラヒックパターンが変動する。
図10は、通信トラヒックの時系列データ401として、リアルタイム映像配信時の通信トラヒック(スループット)の時系列データを示している。402は、通信トラヒック(スループット)の時系列データ401に対して連続HMMを用いて推定した状態のシーケンスである。図10において、状態のシーケンスにおいて時間区間411では、通信ノイズによる通信トラヒック(スループット)の変動の影響によって、アプリ状態を誤って推定している。通信ノイズは短時間に急激な変化をする場合がある。一方で、ある一定時間、トラヒックパターンが変わらないアプリケーションもある。例えば動画閲覧は数10秒~数分、通信トラヒック(スループット)等のトラヒックパターンは変わらない。本発明によれば、変動時間粒度の違いを利用して、通信ノイズによる誤判定を抑制するようにしてもよい。
特に制限されないが、固定網(固定回線)、無線網(例えばWi-Fi(Wi-Fi Allianceの登録商標)等)、携帯電話網(例えばE-UTRAN(Evolved Universal Terrestrial Radio Access Network)、EPC(Evolved Packet Core)等のコアネットワーク)等のネットワーク環境のタイプと、対応する変動波形(変動頻度、変動の大きさ)の関係は、予め記憶装置等に設定されているものとする。例えば、事前に、ネットワーク環境(固定網、無線網、携帯電話網)において、特定の転送速度のトラヒック(例えば映像等のアプリケーション)を定常的に流し、通信トラヒック(スループット)の時系列波形データを取得し、その変動頻度や変動の大きさを決定するようにしてもよい。
図11(A)は、ネットワーク環境(特に制限されないが、例えば固定網、無線網、携帯電話網等)における通信トラヒック(例えばスループット)の変動頻度や変動の大きさを記憶する記憶部1021を説明する図である。記憶部1021は、通信ノイズ算出部102内に備えてもよいし、外部に備えてもよい。なお、記憶部1021の変動頻度は単位時間当たりの変動発生数である。
例えば、通信トラヒック(スループット)の変動(通信ノイズ)の瞬時振幅値(変動の大きさ)は確率的に正規分布に従うものとすると、変動の大きさの特性を表すパラメータは、例えば、変動振幅の最大値(A1)、平均(μ)、標準偏差(σ)としてもよい。
通信ノイズ算出部102は、分析対象のトラヒックのネットワーク環境に対して、対応するネットワーク環境のノイズ特性パラメータを予め取得するようにしてもよい。例えば、分析対象のトラヒックのネットワーク環境は、図8(A)、図8(B)のネットワークノード20から取得してもよい。例えばネットワークノード20が基地局であれば無線網、コアネットワークノードであれば、携帯電話網、また光ルータ等の場合、固定回線(固定網)となる。
通信ノイズ算出部102は、ノイズ特性パラメータに基づき、ノイズ波形(時系列データ)を生成する構成としてもよい。図11(C)の405a、405b、405cは生成されたノイズ波形(通信ノイズ)を模式的に示している。
瞬時振幅値(変動の大きさ)が正規分布等、確率密度関数f(x)(xは振幅(確率変数))に従う場合、図11(B)に示すように、0と振幅最大値(例えば図11(A)のA1)の範囲の一様乱数を生成し(1022)、確率密度関数f(x)の累積分布関数F(x)の逆関数F-1(x)1023に、生成した一様乱数を入力する。逆関数F-1(x)1023の出力として、正規分布等の確率密度関数f(x)に従う確率変数x(乱数)が生成される(この手法は「逆関数法」とも称せられる)。逆関数法で生成した乱数を、時間軸上に順番に配列してノイズ波形(時系列データ)を生成してもよい(この場合、ノイズ波形は前後で激しく変動する)。あるいは、逆関数法で生成した生成された乱数を、例えば大きさの順にソートし、ソート結果を展開し、時間軸上での整列(1024)を行い、1025として示すように、時間軸上で、ある幅を持ったノイズ波形を生成するようにしてもよい。
ノイズ波形1025の時間軸上の配置は、例えば元の通信トラヒック(スループット)401(図11(C))における通信ノイズの発生位置に対応させて配置するようにしてもよい。図11(C)では、通信トラヒック(スループット)401における通信ノイズの発生位置に対応させてノイズを配置した例を、405a、405b、405cとして模式的に示している。405a、405b、405cの各々は、逆関数法で生成した乱数を、時間軸上、順番に配列してノイズ波形であってもよい。あるいは、図11(B)のノイズ波形1025を複数合成したものであってもよい。変動頻度情報(単位時間当たりの変動発生数)に基づき、1/(変動頻度)の時間分、離間させてノイズ波形を合成するようにしてもよい。
通信ノイズ算出部102では、確率的に算出した通信ノイズを通信トラヒック(スループット)から時間軸上で差し引くことで通信ノイズを除去するようにしてもよい。図11(C)において、406は、元の通信トラヒック(スループット)401の時系列データから、通信ノイズ405a、405b、405cを時間軸上で差し引いた時系列データの波形である。
通信ノイズ算出部102では、生成した通信ノイズ(図11(B)のノイズ波形1025)の時系列データのm個の列ベクトルをg1 ->、…gm ->とする。通信トラヒック(スループット)から401の時系列データを要素nのベクトルy->=(y1,y2,…ynT(Tは転置演算子)とし、生成したm個のノイズ波形ベクトルg1 ->、…gm ->に対して、例えば、誤差
ε=|y->-(β1・g1 ->2・g2 ->+…+βm・gm ->+c->)|
・・・(33)
の2乗を最小化する係数ベクトルβ->=(β1, β2,…, βm)とオフセットベクトルc->を求めるようにしてもよい(最小2乗規範)。その際、β1, β2,…, βm>=0という条件を付した制約付きの最小2乗法を用いてもよい。なお、生成した複数(2つ)のノイズ波形の時系列データのベクトルgi ->、gj ->(隣接する場合、j=i+1)が時間軸上で互いに重なるときは、例えば、
大きい方の値max(gi ->、gj ->)、又は、
小さい方の値
min(gi ->、gj ->)
を該当する該時間の値としてもよい。3つ以上のノイズ波形(時系列データ)が時間軸上で互いに重なるときも、上記と同様に扱うようにしてもよい。
誤差εの2乗を最小化する係数(β1, β2,…, βm)及びオフセットc->を用いて、
y->-(β1・g1 ->2・g2 ->+…+βm・gm ->+c->
・・・(34)
を、図11(C)の通信トラヒック(スループット)406の時系列データ(通信ノイズ除去済みの時系列データ)としてもよい。
<時系列データ正規化部>
次に、図9の時系列データ正規化部103の処理について説明する。図12は、時系列データ正規化部103の処理の一例を模式的に説明するための図である。図12の406は、通信ノイズ算出部102において、通信トラヒック(スループット)の時系列データ401から通信ノイズ(波形)を減算した時系列データである(図11(C)の406に対応)。
時系列データ正規化部103は、例えば連続HMMに基づき、状態のシーケンス407を推定する。407では、ノイズを除去した時系列データ406から推定されたアプリ状態A(図2の201参照)に対応する状態を状態#1、アプリ状態B(図2の201参照)に対応する状態を状態#2としている。
時系列データ正規化部103では、状態のシーケンス407に対して、階層隠れマルコフモデルの上位層(離散HMM)を適用し、状態のシーケンス407のうち、状態遷移のパターンが類似する時間区間の連続HMMの状態(隠れ状態)をグループ化して、上位層(離散HMM)の1つの状態(隠れ状態)にまとめる。
図12の例では、時系列データ正規化部103は、連続HMMにより推定された状態407のシーケンスに対して、離散HMMを適用し、状態遷移のパターン(状態#1->状態#2->状態#1)の状態#1、状態#2を1つにまとめてグループ#1とする。時系列データ正規化部103では、状態407のシーケンスにおいて状態#2をグループ#2とする。そして、グループ#1を、上位層である離散HMMの状態s1、グループ#2を離散HMMの状態s2として、状態シーケンス404を抽出する。グループ#1に対応する隠れ状態s1は、それぞれ所定の出力確率で例えば番号1(407の状態#1に対応)、番号2(407の状態#2に対応)を出力するものとする(例えば自己遷移する度に、隠れ状態s1の出力確率に応じて番号1、2を出力する)。グループ#2に対応する隠れ状態s2は、例えば番号1(407の状態#1に対応)の出力確率は0とする。
抽出された状態404のシーケンスは、通信トラヒック(スループット)の時系列データ401を隠れ状態に基づき、本来の状態のシーケンスに復元(reconstruct)したものである。なお、状態404のシーケンスにおいて、状態s1、状態s2の値をそれぞれ1、0としているが、他の値であってもよい。
図13は、図9の時系列データ正規化部103における状態遷移の類似パターンを検出する処理を説明する図であり、302は、図4(B)の302に対応している。図13を参照すると、グループ#1は、状態#1と状態#2を含み、モデルθは、初期状態確率、状態遷移確率、出力確率(混合ガウス分布のモデルパラメータ)を含む。グループ#2は、状態#2を含み、モデルθは、初期状態確率、状態遷移確率、出力確率を含む。上層HMMのモデルΘは、モデルθ、θと、グループ間の遷移確率Δを含む。
なお、図12において、404Aは、状態シーケンス404について状態s1の時間遷移(推移)を抽出したものである。状態s1のある時間区間を値1、状態s1以外のとき、0とする。404Bは、状態シーケンス404について状態s2の時間遷移(推移)を抽出したものである。状態s2の時間区間を値1、状態s2以外のとき0とする。図12において、状態のシーケンス404Aは、通信トラヒック(スループット)401の元となったアプリケーション状態(図1のアプリ状態A)のシーケンスを復元したものということもできる。
このように、時系列データ正規化部103では、通信ノイズ抽出部102により通信ノイズが除去された通信トラヒック(スループット)の時系列データに対して階層HMMを適用し、最適な状態シーケンスを推定する。時系列データ正規化部103の処理は、通信トラヒック(スループット)の時系列データの変動(ノイズ)が除去されるように、時系列データの抽象度を上げることに対応する。階層HMMの階層数が深くなるにつれて、状態の変化は、時間軸上で小刻みな変化から大まかな変化になる。
時系列データ正規化部103では、通信トラヒック(スループット)の変動(通信ノイズ:例えば小刻みな変動)が除去できた段階でのHMMモデルの階層数を階層モデルの階層数として設定するようにしてもよい。
図12において、通信ノイズが除去された通信トラヒック(スループット)406を正規化された時系列データと称してもよい。この場合、復元された状態404のシーケンスにおける状態s1の時間区間と、406の通信トラヒック(スループット)の時系列データとの比較から、406a、406b、406cの各時間区間は、状態#1に対応する通信トラヒック(スループット)が、通信ノイズ等の影響で低下し、連続HMMにより状態#2と推定される時間区間であることがわかる。
時系列データ正規化部103は、例えば図12の状態404A(404B)のシーケンスを、正規化された時系列データとして出力するようにしてもよい。
あるいは、時系列データ正規化部103は、正規化された時系列データとして、図12の通信トラヒック(スループット)406の時系列データを併せて出力するようにしてもよい。
<アプリ状態判定部>
次に、図9のアプリ状態判定部105について説明する。アプリ状態判定部105は、正規化した状態シーケンスと、記憶部106に事前に登録されているアプリケーション特性(例えば通信トラヒックの変動特性)との類似度を算出し、該当する時間区間の状態がどのアプリ状態に対応するかを判定する。
図14、図15は、図9のアプリ状態判定部105を説明する図である。図14を参照すると、アプリ状態判定部105は、時系列データ正規化部103で正規化された時系列データ(アプリ状態A)408と、予め記憶部106に記憶されているアプリケーション1の特性(図14の破線409)との類似度を算出する。
2つの波形(時系列データ)の間の類似度として相互相関関数を用いてもよい。時系列データ正規化部103で正規化された時系列データ(アプリ状態A)408は、通信トラヒック(スループット)401から通信ノイズを除去した時系列データを、時系列データ正規化部103で抽出された状態#1(アプリ状態A)のシーケンス(図12の404A)の値1の時間区間でゲーティングした波形データとしてもよい。
図14の例では、正規化された時系列データ408とアプリ1の通信トラヒック(スループット)特性409との相関値(相互相関値)が0.9であり、正規化された時系列データ408とアプリ2の通信トラヒック(スループット)特性410との相互相関値が0.1である。このため、アプリ状態判定部105では、正規化された時系列データ408は、アプリ1(アプリ状態A)の通信トラヒック(スループット)特性に対応するものと判断する。
なお、アプリ状態判定部105は、時系列データ正規化部103から出力される状態のシーケンス(例えば図12の404A)のパターンと、アプリ1、2の状態シーケンスのパターンとを照合して類似度(例えば相互相関値)を求め、どのアプリ状態に対応するかを判定するようにしてもよい。
図15を参照すると、アプリ状態判定部105は、時系列データ正規化部103で正規化された時系列データ(アプリ状態B)411に対して、予め記憶部106に記憶されているアプリ1の特性(図15の破線409)との相互相関値(0.01)と、アプリ2の特性(図15の410)との相互相関値(0.8)を計算する。なお、図15において、正規化された時系列データ411とアプリ2の特性410とは、線を同一として重ねせて図示すると、判別が困難となることから、正規化された時系列データ411とアプリ2の特性410は時間軸は共通としながら別々に示されている。時系列データ正規化部103で正規化された時系列データ(アプリ状態B)411は、通信トラヒック(スループット)401から通信ノイズを除去した時系列データを、時系列データ正規化部103で抽出された状態#2(アプリ状態B)のシーケンス(図12の404B)の値1の時間区間でゲーティングした波形データとしてもよい。
アプリ状態判定部105では、正規化された時系列データ411は、アプリ2の通信トラヒック(スループット)波形であると判定する。図15において、正規化された時系列データ411は通話状態のスループットの時系列データであり、縦軸(bps)を、正規化された時系列データ(アプリ状態A)408(図14)と同一スケールとしているため、微小振幅波形として表されているが、411の最大値を例えばフルスケール等に設定することで、前述したノイズ除去の手法で、スループットから通信ノイズ等を除去することは可能である。
なお、アプリ状態判定部105は、通信トラヒック取得部101で取得した通信トラヒック(スループット)の全時間区間に対応する状態シーケンス404(正規化された時系列データ)を、アプリ1、2の特性波形と比較して相関値(相互相関値)を算出するかわりに、各ブロック(時間区間)(図9では、例えば200秒毎)に分割し、ブロックごとに、時系列データ正規化部103で正規化された時系列データと、対応するブロック(時間区間)のアプリ1、2との特性の類似度(相互相関値)を算出するようにしてもよい。また、例えば図14、図15において、例えば所定長さの各時間区間について、各ブロックの類似度の合計(総和)を、正規化された時系列データと、アプリ1、2の特性(通信トラヒック特性)との類似度として算出するようにしてもよい。
アプリ状態判定部105では、正規化された時系列データと、予め記憶部106に記憶されているアプリケーションの通信トラヒック特性(時系列データ)との類似度を、コサイン距離やユークリッド距離等を用いて計算してもよい。
また、アプリ状態判定部105では、時系列データ正規化部103で抽出された状態シーケンスと、アプリケーションの状態シーケンスのパターンとの類似度に基づき、アプリ状態を判定するようにしてもよい。この場合、ある時間区間の状態が当該アプリケーション状態のとき、1、当該アプリケーション状態でないとき、0とした場合(例えば図12の404A)、状態シーケンスは2値時系列データ(状態ベクトル)で表される。このため、状態ベクトルに対して、予め記憶部106に記憶されているアプリケーションの状態ベクトルとの類似度を、ハミング距離等を用いて算出してもよい。この場合、ハミング距離が所定値以下である場合、類似とみなす。
<アプリ状態判定部:変形例1>
あるいは、アプリ状態判定部105は、通信トラヒック(スループット)の時系列データを解析して、通信の周期、通信期間、非通信期間、最大スループットなどの特徴量を抽出し、抽出した特徴量を、記憶部106に記憶されたアプリケーションの特性(通信周期、通信期間、非通信期間、最大スループット等)と比較し、比較結果に基づき、アプリ状態の判定を行うようにしてもよい。あるいは、アプリ状態判定部105は、通信トラヒック(スループット)の時系列データを解析し、パケットサイズ(例えば平均値)、パケット送信間隔(到着間隔)(例えば平均値)、パケット頻度(例えば平均値)等をアプリケーションの各々と比較するようにしてもよい。
例えば、図16(B)に示すように、正規化された時系列データ408の通信特徴量が、通信周期:300s(second)、通信期間:270s、非通信期間:30s、最大bps:5mega bpsの場合(通信周期、通信期間、非通信期間は図16(A)に示す)、 記憶部106に記憶されたアプリ1の特性(通信特徴量)とアプリ2の特性(通信特徴量)(図16(B)の412参照)を照合し、カテゴライスしてアプリ状態1と判定する。記憶部106に記憶されたアプリケーションの特性(通信の周期、通信期間、非通信期間、最大スループット等)と比較することでアプリ状態の判定を行うようにしてもよい。あるいは、アプリ状態判定部105は、通信トラヒック(スループット)の時系列データを解析し、パケットサイズ(例えば平均値)、パケット送信間隔(到着間隔)(例えば平均値)、パケット頻度(例えば平均値)等をアプリケーションの各々と比較するようにしてもよい。
<アプリ状態判定部:変形例2>
あるいは、アプリ状態判定部105は、トレーニングデータとして、アプリケーション状態の通信トラヒックの時系列データを解析して、通信周期、通信期間、非通信期間、最大スループットなどの特徴量(属性値)を抽出し、正解ラベル(アプリケーション状態)と、データ(例えば、通信トラヒックの特徴量の平均値、分散、最大値、最小値等の少なくともいずれか)に基づき、機械学習により、アプリケーション状態を判別するための分類器(分類モデル)を生成するようにしてもよい。アプリ状態判定部105は、評価時に、評価対象の通信トラヒックから抽出した特徴量に対して、学習済みの分類器(分類モデル)を用いてアプリケーション状態を識別するようにしてもよい。特に制限されないが、アプリ状態判定部105は、教師あり学習(supervised learning)の分類器として、図17(A)に示すように、決定木500(木構造の分類器)を用いてもよい。
あるいは、アプリ状態判定部105は、図17(B)に示すように、決定木を複数作成し多数決で識別するランダムフォレスト510を用いてもよい。アプリ状態判定部105は、学習時には、例えば、
- サンプルデータからランダムに複数組のサブサンプルを生成し、
- サブサンプルをトレーニングデータとして、複数組の決定木を作成し、
- トレーニングデータの属性(説明変数)(例えば図17(B)の通信周期、通信間隔、パケットサイズ等)をランダムに所定個選択し、トレーニングデータの分類結果と属性閾値を用いて、決定木511~51nの各ノードでの分岐条件を決定し、モデルを生成する。
アプリ状態判定部105は、評価時には、通信トラヒックから抽出した特徴量をランダムフォレスト510に入力し、各決定木の出力(リーフノードのクラス)の多数決をとるようにしてもよい。なお、図17(B)の決定木511~51nの各ノード内の説明変数(属性)は模式的な例示である。各説明変数は、通信トラヒックの特徴量の平均値、分散、最大値、最小値等の少なくともいずれかであってもよい。
図17(B)のランダムフォレスト510の決定木511~51nにおけるリーフノードのクラスA、B等は、アプリケーションの状態(アプリ状態A、アプリ状態B、例えばアプリケーションの種別)であってもよい。
あるいは、図17(B)のランダムフォレスト510の決定木511~51nにおけるリーフノードのクラスA、B等は、アプリケーション状態の動作モード等(同一アプリケーションにおける動作モード、通信モード等)であってもよい。アプリ状態判定部105は、決定木、ランダムフォレスト510あるいは決定木500の分類器に、通信トラヒック(スループット)の時系列データを入力し、同一アプリケーション状態(アプリケーション種別)における動作モードを識別するようにしてもよい。例えば、解析対象の通信トラヒックのスループットが同一アプリケーション(例えばドローンアプリケーション)の複数の動作モードのうちのいずれの動作モードであるかを識別するようにしてもよい。
なお、アプリ状態判定部105において、分類器は、決定木、ランダムフォレスト等に制限されるものでなく、サポートベクターマシン、ベイズ推定器(Naive Bayes classifier)や、ニューラルネットワーク等を用いてもよい。
図18は、実施形態1の作用効果を説明する図である。図18において、201、202は、図1の通信トラヒック(スループット)と推定した状態シーケンス(プロトタイプ)である。413は、通信トラヒック(スループット)に対して、実施形態1により推定した状態シーケンスである。
図18からも明らかなように、実施形態1によれば、プロトタイプと比較して、アプリ状態の推定を向上している。このように、実施形態1によれば、変動の大きな通信トラヒックの特徴量(スループット)に対して、アプリ状態を正確に推定することができる。実施形態1によれば通信トラヒックパケットの5タプルのうち送信元、宛先アドレス(ポート)とスループット等の通信トラフヒックパタンに基づき、アプリケーションの状態の推移を、通信トラヒック(スループット等)パターンの変動(通信ノイズ)等の影響を回避して推定可能とし、推定精度を向上可能としている。なお、前述したように、実施形態1において、評価対象(解析対象)の通信トラヒックの時系列データとして、スループットに制限されるものでなく、パケットサイズ、パケット送信間隔、パケット頻度(例えば平均値、分散、最大値、最小値等の少なくともいずれか)等であってもよく、時間軸を共通とした複数の属性の時系列データからアプリケーション(種別、状態、動作モード等)を判別するようにしてもよい。すなわち、アプリ状態A(映像配信)、アプリ状態B(音声通話)はアプリケーションの種別に対応しているが、アプリ状態は、同一のアプリケーションの通信モードあるいは動作モード(例えばコントロールプレーンデータとユーザプレーンデータの転送モード、すなわち、ノード間での制御動作、データ転送動作等)であってもよい。
<実施形態2>
図19は、例示的な実施形態2を説明する図である。前記実施形態1では、通信トラヒック(スループット)の時系列データから通信ノイズを除去した時系列データを取得するにあたり、通信トラヒック(スループット)の時系列データからノイズ波形を差し引いて求めている。実施形態2では、通信トラヒック(スループット)の時系列データから通信ノイズを除去する通信ノイズの除去手段として、時系列データ正規化部103を用いている。この場合、図9の実施形態1の通信ノイズ算出部102を削除することも可能である(たたし、図9と同様、通信ノイズ算出部102を備えた構成としてもよい)。
時系列データ正規化部103は、連続HMMで推定した状態シーケンスに対して、状態の遷移のパターンが類似するパターンを検出するために、連続HMMの上位階層として機能する離散HMMを用いて、類似する状態遷移パターンを1つのグループ(上位層の1つの状態)にグループ化する。
図20は、図19の時系列データ正規化部103の処理を、時系列データ正規化部103で行う場合の動作を説明する図である。図20において、通信トラヒック(スループット)401の時系列データは、図6の通信トラヒック401と同一である。421は、連続HMM(HMM層#1)で推定した状態シーケンスである。すなわち、通信トラヒック(スループット)401の時系列データを入力とする時系列データ正規化部103において、連続HMMから出力された状態シーケンスである。通信トラヒック(スループット)401の時系列データの変動(変動頻度、変動の大きさ)に応じて、連続HMMで推定した状態シーケンス421も激しく変化する(ばたつく)ことになる。
時系列データ正規化部103は、連続HMMで推定した状態のシーケンスに対して、離散HMM(HMM層#2)を用いて、状態間の遷移が類似するパターンを検出して1つのグループ(上位層の1つの状態)にまとめ、上位層の状態のシーケンスを出力する。このため、高頻度、高振幅で激しく遷移する状態シーケンスを例えば1つの状態としてまとめることができる。422は、状態シーケンス421に対して離散HMMに基づき類似パターンを1つの状態にまとめた結果の状態のシーケンスである。状態シーケンス422は、図1の状態のシーケンス203と一致していることがわかる。なお、階層HMMの階層数は2に制限されるものでないことは勿論である。例えばサンプルトラヒックを用いて階層モデルをEMアルゴリズム等を用いて学習する場合に、スループットの小刻みな変動(通信ノイズ)を除去できた階層数を階層モデルの階層数として設定するようにしてもよい。
時系列データ正規化部103で用いる階層モデル(例えば連続HMMのモデルと上位層の離散HMMのモデル)として、記憶部104に記憶される。記憶部104はRAM、HDD等であってもよい。階層モデルは、サンプルトラヒックを流し、得られたスループットの時系列を階層モデルで分析し、モデルパラメータを設定し、通信ノイズを除去できた階層数を、階層モデルの階層数として設定するようにしてもよい。
<実施形態3>
次に、本発明の例示的な実施形態3について説明する。実施形態3のトラヒック分析装置100の構成は、図15と実施形態2と同様に、図7の通信ノイズ算出部102を削除することが可能である(ただし、図9の実施形態1と同様、通信ノイズ算出部102を備えた構成であってもよい)。
実施形態2との相違点は、実施形態3では、通信ノイズ除去手段として、時系列データ正規化部103において、HMMとして、状態滞在時間を考慮したHMMを用いている。アプリ状態と通信ノイズの特性の相違点として、IoT(Internet of Things)デバイスのカメラからの映像などは、長時間同一の状態(トラヒック特性、スループット)を継続する。カメラで取得した画像を圧縮符号化するエンコーダの符号化レートが所定時間の間一定の場合、カメラからの通信トラヒックのスループットは一定となる。一方、通信ノイズは瞬間的に発生する。
実施形態3では、状態が一定時間変わらないことを想定している状態滞在時間分布を考慮したHMM(Explicit-Duration HMM:EDHMM)を利用し、例えば図21に示すように、瞬間的に発生している通信ノイズを除去するようにしてもよい。この場合、隠れ状態ztは、状態stと残り持続時間rttで与えられる。
zt={st,rt}
入力値がある一定時間変わらない場合を想定したモデルパラメータ(連続混合HMMのモデルパラメータ)として、
Figure 0007136300000028
に加えて、状態iに固有の持続時間分布Fのパラメータλiが加えられる。
状態シーケンス:s=(s1,…, sT)、残り持続時間のシーケンス:r=(r1,…, rT)とする。
EDHMMでは、
rt=0でなければ、現在の残り持続時間が1つカウントダウンされ、状態はsのまま変わらない。
rt=0であれば、st以外の状態s(m≠t)に、遷移する。
実施形態3によれば、図21において、階層モデルとして、連続HMMとEDHMM(Explicit-Duration)型離散HMMを用いている。例えば状態#1(アプリケーション:リアルタイム映像配信)において、当該状態に遷移後、残り持続時間が0となるまでの間に発生した通信トラヒック(スループット)の変動(通信ノイズ)の影響は受けず、当該状態に留まることになる(図21の持続時間r(Duration-Time)参照)。このため、時系列データ正規化部103は、図21の424に示す状態のシーケンスのように、通信ノイズの影響を受けることはなく、図21の425に示すような状態シーケンスを出力する。
なお、図21の例では、アプリ状態(リアルタイム映像配信)では、状態が一定時間変わらないことを想定しているため、状態のシーケンス:s=(s1,…, sT)において、アプリ状態(映像)(425の状態#1)の各状態の持続時間(Duration time)r(モデルパラメータ)は一定としている。
状態1の持続時間rが、アプリケーション(例えば同一のリアルタイム映像配信)の動作モードによって、相違する場合等、通信トラヒック(スループット)の変動(通信ノイズ)の影響を受けることも考慮して、時系列データ正規化部103では、持続時間rをHMMモデルに基づき推定するようにしてもよいことは勿論である。なお、連続HMMをEDHMMで構成してもよいことは勿論である。
実施形態3は、持続時間のモデルパラメータの設定等をさらに必要とするが、前記実施形態1と同様の作用効果を奏する。
<実施形態4>
図22は、本発明の例示的な実施形態4のトラヒック分析装置100の構成を例示する図である。図22を参照すると、図9の実施形態1のトラヒック分析装置100の構成に加え、記憶部104の階層モデルを更新する階層モデル更新部107を備えている。階層モデル更新部107は、トラヒック源であるアプリケーション状態の特性の変化に追従するため、階層モデルを更新する。
階層モデルの更新方法としては、例えばバッチ処理と、オンライン処理とに大別してもよい。このうち、バッチ処理は、図23(A)に模式的に示すように、適当なデータブロック長(入力データの長さ)単位で最新のスループットデータを分析し、その分析結果に基づき階層モデルを更新する。階層HMMモデルの推定は前述の実施形態1と同様である。データブロック長は、固定であっても可変であってもよい。
階層モデル更新部107において、データブロック長を可変とする場合、例えば、
- データブロック内の状態の数が1つの場合(同一状態が長期間続く場合)、データブロック長を伸ばし、
- 状態の数が複数の場合、データブロック長を短くするようにしてもよい。
階層モデル更新部107で更新するモデルパラメータとして、前述した連続混合HMMのモデルパラメータ
Figure 0007136300000029
及び、上層HMMのモデルのグループ毎のモデルθ1、θ2と、グループ間の遷移確率Δの少なくとも1つを含む。
オンライン処理では、図23(B)に示すように、過去に分析したモデルパラメータと新たに得たデータブロックから階層モデルを推定するようにしてもよい。インクリメンタルにモデル推定を行うことで計算量を削減し、オンライン処理でクリティカルに要求されるTiming Budgetを満たすことが可能となる。モデル推定は実施形態1と同様である。
実施形態4によれば、階層モデルをアプリケーション状態の特性の変化に応じて更新するように構成したことで、アプリケーション状態の特性の変化に追従可能とし、通信トラヒックからのアプリケーション状態の推定精度をさらに向上可能としている。
<実施形態5>
図24は、本発明の例示的な実施形態5を説明する図である。図24を参照すると、実施形態5では、アプリ状態予測部108をさらに備えている。アプリ状態予測部108は、アプリ状態判定部105で判定されたアプリ状態を用いて、将来のアプリ状態の遷移パターンを予測する。アプリ状態予測部108における予測方法として、図25に模式的に例示するように、点予測、あるいは区間予測を用いてもよい。推定したアプリ状態シーケンスに対して、例えば自己相関を計算し、将来発生する状態シーケンスを予測するようにしてもよい。図25において、破線は、将来発生するアプリ状態Aの発生シーケンスである。
あるいは、アプリ状態予測部108は、確率的予測1(シミュレーション)を行ってもよい。HMMを用いて推定したパラメータを利用して、例えばマルコフ連鎖モンテカルロMCMC(Markov Chain Monte Carlo)法で、将来の予測を行う。MCMCはサンプル点を直前に取り出したサンプルに依存して新しいサンプルを取得する。メトロポリス-ヘイスティングス(Metropolis-Hastings:MH)アルゴリズム、ギブス(Gibbs)サンプリング等がある。このうち、MHアルゴリズムは、提案分布q(y|x)と呼ばれる確率分布から次の候補となる値を発生し採択棄却αという値にしたがって採択するか棄却するか決める。
すなわち、
ステップ1:
初期値x(0)を決める。
ステップ2以降、t=0、1、・・・に対して、以下を行う。
yを提案分布q(y|x(t))から生成し、
uを一様分布から発生させ、
uがα(x(t),y)以下のとき、
x(t+1) = y、
他の場合、
x(t+1) = x(t)
・・・(35)
とする。
ただし、α(x(t),y) = min{1, π(y)q(x|y)/(π(x)q(y|x))}
・・・(36)
MHアルゴリズムで生成される(x(0)、x(1)、…)はマルコフ連鎖をなしマルコフ連鎖は不変分布(invariant distribution)をもち、既約性(irreducibility)、非周期性を有する。大きなm以降のサンプル(x(m+1)、x(m+2)、…)は目標分布π(x)からサンプルされたものとみなすことができる。
一方、ギブスサンプルでは、
ステップ1:
確率変数xをk個のブロックx=(x1,…,xk)に分割し、
ステップ2以降、t=0,1,…に対して、以下を繰りかえす。
各xi (t+1)を条件付き確率
p(x|x (t), xj-1 (t), xj+1 (t),…,xk (t)
・・・(37)
からサンプリングする。
確率的予測2(解析)として、フォアワードアルゴリズム等の動的計画法により、将来の各状態における状態確率を計算するようにしてもよい。前述したフォアワードアルゴリズムは、モデルパラメータと観測系列が与えられたとき、系列の最後における隠れ変数の状態の確率分布を求める。
実施形態5によれば、これまでに判定したアプリ状態から将来のアプリ状態を予測可能としている。
<実施形態6>
図26は、本発明の例示的な実施形態6を説明する図である。実施形態6では、実施形態5のアプリ状態予測部108に変えて、アプリ状態の予測結果を利用して、通信トラヒック(例えばスループット)を予測するアプリ状態・通信トラヒック予測部109をさらに備えている。アプリ状態・通信トラヒック予測部109は、アプリ状態予測部と通信トラヒック予測部を一体化したものである。アプリ状態・通信トラヒック予測部109におけるアプリ状態の予測は、アプリ状態予測部108における予測方法と同一である。
アプリ状態・通信トラヒック予測部109における将来の通信トラヒック(例えばスループット)の予測方法として、時系列的予測を行うようにしてもよい。
アプリ状態・通信トラヒック予測部109は、例えば、アプリ状態ごとに、通信トラヒック(スループット)のAR(Auto Regressive:自己回帰)モデル等の時系列モデルを構築する。ARモデル(AR(p))は、出力ytが過去のp個の出力にのみ依存し、
y=-Σ<i=1,p>y(t-i)t
・・・(38)
εtがN(0、Σ)である(ガウス性白色雑音)。
アプリ状態・通信トラヒック予測部109は、アプリ状態の予測部で、予測した将来のアプリ状態に該当する時系列モデルを選択する。
アプリ状態・通信トラヒック予測部109は、該選択した時系列モデルから、例えば式(38)にしたがって将来の通信トラヒック(例えばスループット)を予測する。
アプリ状態・通信トラヒック予測部109における将来の通信トラヒック(スループット)予測の別の方法として、HMMのモデルパラメータから予測してもよい。階層モデルを作成する際に、どのような分布から通信トラヒック(スループット)が生成されているかを出力確率(例えば式(3)参照)で表現する。アプリ状態・通信トラヒック予測部109は、アプリ状態予測部で予測したアプリ状態に該当する出力確率を選択することで、将来の通信トラヒック(例えばスループット)を予測するようにしてもよい。
<実施形態7>
図27は、本発明の例示的な実施形態7を説明する図である。図27を参照すると、実施形態7では、図24の構成に加えて、推定されたアプリ状態に応じた通信制御等を行う制御部110をさらに備えている。
制御部110は、直接、通信制御等を行うようにしてもよいし、あるいは、図8(A)、図8(B)のネットワークノード20(L3スイッチ、基地局、ゲートウェイ等)に対して通信制御の指示を送信するようにしてもよい。図8(C)の場合、制御部110は、例えば端末30―サーバ40間の通信制御を直接行う。
図8(A)、図8(B)のネットワークノード20がルータ(エッジルータ等)の場合、又は、図8(C)において、トラヒック分析装置100がルータ機能を含む場合、ネットワーク制御として、制御部110は、アプリ状態に応じて、トラヒックシェーピング、フィルタリングを制御するようにしてもよい。トラヒックシェーピングでは、パケット送信時の速度(送信間隔)を調整しトラヒックを一定のレートとする制御が行われる(例えば、帯域確保、帯域制限、優先制御等の制御を行うようにしてもよい)。また、フィルタリングでは、例えば、トラヒックを検査し指定したフィルタリングルールに基づいて個々のネットワーク接続が許可または拒否する制御等を行うようにしてもよい。
図8(A)、図8(B)のネットワークノード20が基地局の場合、又は、図8(C)においてトラヒック分析装置100が基地局機能を含む場合、又は、モバイルエッジコンピューティング装置に実装される場合、無線品質に応じた無線チャネルの割り当てにあたり、該緊急度の高い移動局(端末)に対して、優先的に無線チャネルを割り当てる等の無線スケジューリングを行うようにしてもよい。
あるいは、トラヒック分析装置100を、キャリアネットワークのトラヒック・ディテクション・ファンクション(TDF)として実装し、トラヒックとアプリ状態との関係を解析しトラヒックに対応するアプリケーションを認識し、PCRF(Policy and Charging Rules Function)が制御ルールを決定し、PCEF(Policy and Charging Enforcement Function)等により帯域制御、経路変更等の制御を行うようにしてもよい。
また、アプリ状態に応じた通信制御として、通信のタイミング(パケットデータの送信時刻、送信間隔等)、送信元、中継局(トランスコーダ)等における不図示のエンコーダ(符号化部)の圧縮符号化(圧縮符号化方式、符号化レート、フレームレート、解像度等)を制御するようにしてもよい。
実施形態7によれば、アプリ状態に応じて、ネットワーク制御、通信制御等を行うことができる。なお、実施形態7において、アプリ状態予測部108の代わりに、図26のアプリ状態・通信トラヒック予測部109を備えた構成としてもよい。
<実施形態8>
図28は、本発明の例示的な実施形態8を説明する図である。図28を参照すると、実施形態8では、図9の構成に加えて、QoE計算部111をさらに備えている。QoE計算部111は、推定したアプリ状態ごとに、どれくらいの通信品質を提供できているかを分析し、アプリケーション品質であるQoE(Quality of Experience)を計算(評価)する(例:Web QoE、動画QoE等)。QoEは、Webページ、動画の配信先のノード(端末、サーバ等)側で測定したQoEを収集し、アプリ状態に関連付けて記憶保持しておき、QoE計算部111は、通信トラヒック取得部101で取得した通信トラヒック(スループット)やアプリ状態判定部105で判定されたアプリ状態に対応するQoEを求めるようにしてもよい。
QoE計算部111は、
動画(カメラ)アプリQoEでは、例えば、
- 動画が途切れない、
- 高画質等の場合、
QoEは「良い」(5段階の4)と評価する。なお、QoEは、非常に良い、良い、普通、悪い、非常に悪い等の5段階評価が用いられる。なお、映像の場合、評価対象の映像のMOS(Mean Opinion Score)から基準映像のMOSを差し引いたDMOS(Differential Mean Opinion Score)を用いるようにしてもよい。評価対象の映像のMOSから基準映像のMOSを差し引き、これに5を加えるようにしてもよい(ACR(Absolute Category Rating)-HRR(Hidden Reference Removal))。
QoE計算部111は、
WebアプリQoEでは、例えば、
- クリックしてから表示完了が早い場合、
QoEは「良い」と判断するようにしてもよい。
QoE計算部111は、例えば、
遠隔機械制御(ドローン、工作機械、自動車)のQoEでは、
- 外部から制御コマンドを入力して、機器にコマンドを到達するまでが早い、または、
- 遅延が一定の場合、
QoEは「良い」と評価するようにしてもよい。
QoE計算部111は、
ファイル転送アプリのQoEでは、例えば、
- 転送開始から送信完了までが早い、
- 転送に失敗しない等の場合、
QoEを高く評価するようにしてもよい。
実施形態8によれば、判定されたアプリ状態に対応するQoEを判定可能としている。
<実施形態9>
図29は、本発明の例示的な実施形態9の構成を説明する図である。図29を参照すると、実施形態9は、図28の構成に加えて、制御部112を備えている。制御部112は、QoE計算部111で算出(評価)したアプリ品質(QoE)に基づき、通信事業者等が提供するアプリケーションの制御を行う。なお、実施形態9において、実施形態7(図27)のアプリケーション状態予測部108を備え、QoE計算部111は、予測した将来のアプリケーション状態に対応するQoEを計算するようにしてもよい。
特に制限されないが、制御部112は、QoE計算部111で計算したQoEが悪い方の当該アプリケーションを優先し、ネットワーク制御・通信制御を実行するようにしてもよい。こうすることで、システム全体のQoEを向上し平滑化(平準化)を実現する。
あるいは、制御部112は、QoEが悪い方の閾値を超えたら(例えば5段階の「悪い」(2)を下回ると)、当該アプリケーションの優先度を下げるように、ネットワーク制御・通信制御を実行するようにしてもよい。こうすることで、所定のアプリ品質(QoE)を維持できないアプリケーションの優先度を下げることにより、優先度の高い方のアプリの品質を確保することができる。
制御部112は、QoE計算部111で計算したQoEが良すぎる場合、当該アプリケーションの優先度を下げるネットワーク制御・通信制御を実行するようにしてもよい。
なお、QoE計算部111は、現在までのQoEとアプリケーション状態に基づき、アプリケーション状態に対応するQoEの予測値も含んでもよい。この場合、制御部112は、将来のQoEの予測値に基づき、アプリケーションの優先度を制御することができる。
実施形態9によれば、判定したQoE、又は将来のQoEの予測値に基づき、ネットワーク制御・通信制御を行うことで、アプリケーションに関する優先制御を実現できる。
<実施形態10>
図30は、本発明の例示的な実施形態10として、トラヒック分析装置100を、コンピュータ装置60で実現した構成を例示する図である。図30を参照すると、コンピュータ装置60は、プロセッサ(例えばCPU(Central Processing Unit))61、記憶装置(メモリ)62、表示装置63、通信インタフェース64を備える。記憶装置62は、例えばRAM、ROM、EEPROM等の半導体ストレージ、HDD、CD、DVD等であってもよい。記憶装置62は、プロセッサ61で実行されるプログラム(命令群、データ等)を格納する。プロセッサ61は、記憶装置62に格納されたプログラムを実行することで、前記各実施形態のトラヒック分析装置100の機能を実現する。通信インタフェース64は、図8(A)、図8(B)のネットワークノード20との通信接続を制御するインタフェースである。通信インタフェース64は、図8(C)において通信ネットワーク50に流れるパケット(例えば端末30とサーバ40間のパケット)を転送するネットワークインタフェースとして機能してもよい。
なお、上記の特許文献1、非特許文献1および2の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ乃至選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
特に制限されないが、上記した実施形態は以下のように付記される。
(付記1)
通信トラヒックの時系列データに対して隠れマルコフモデルに基づき、状態のシーケンスを推定し、前記状態のシーケンスから状態遷移が類似するパターンをひとまとめにして1つの状態とみなして状態のシーケンスを抽出する第1の手段と、
前記第1の手段で抽出された前記状態のシーケンスと、予め定められたアプリケーション特性とに基づき、前記時系列データに対応するアプリケーション状態を判別する第2の手段と、
を備えた、ことを特徴とするトラヒック分析装置。
(付記2)
前記通信トラヒックが流れるネットワークのタイプに対応したノイズ特性パラメータに基づき、通信ノイズを生成し、前記通信トラヒックの時系列データから前記通信ノイズを除去する第3の手段を備えた、ことを特徴とする付記1に記載のトラヒック分析装置。
(付記3)
前記第1の手段は、階層隠れマルコフモデルを前記時系列データに適用し、前記階層隠れマルコフモデルの下位層に基づき推定した状態のシーケンスに対して前記階層隠れマルコフモデルの上位層を適用し、前記状態のシーケンスのうち状態遷移のパターンが類似する区間の前記状態を1つのグループにまとめ前記上位層の1つの状態とする、ことを特徴とする付記1又は2に記載のトラヒック分析装置。
(付記4)
前記階層隠れマルコフモデルは、連続隠れマルコフモデルを前記下位層とし、離散隠れマルコフモデルを前記上位層として含む、ことを特徴とする付記3に記載のトラヒック分析装置。
(付記5)
前記階層隠れマルコフモデルを更新する手段を備えた、ことを特徴とする付記3又は4に記載のトラヒック分析装置。
(付記6)
前記第2の手段は、前記第1の手段で抽出された状態のシーケンスに対応する前記通信トラヒックの時系列データと、予め登録されたアプリケーション状態に対応する前記通信トラヒックの類似度に基づき、アプリケーション状態を判別する、ことを特徴とする付記1乃至4のいずれか一に記載のトラヒック分析装置。
(付記7)
前記第2の手段は、前記第1の手段で抽出された状態のシーケンスと、予め登録されたアプリケーション状態のシーケンスの類似度に基づき、アプリケーション状態を判別する、ことを特徴とする付記1乃至4のいずれか一に記載のトラヒック分析装置。
(付記8)
前記第2の手段は、前記通信トラヒックの特徴量を抽出し、前記特徴量と予め登録されたアプリケーションの特徴量とを照合し、アプリケーション状態を判別する、ことを特徴とする付記1乃至4のいずれか一に記載のトラヒック分析装置。
(付記9)
前記第2の手段は、アプリケーションの通信トラヒックの特徴量を、教師データとして、アプリケーションを判別する分類モデルを機械学習し、
評価対象の通信トラヒックの時系列データに対して前記分類モデルを用いてアプリケーション状態を判別する、ことを特徴とする付記1乃至4のいずれか一に記載のトラヒック分析装置。
(付記10)
前記第1の手段は、状態滞在時間分布を考慮したHMM(Explicit-Duration HMM)モデルを用いて通信ノイズを除去する、ことを特徴とする付記1乃至9のいずれか一に記載のトラヒック分析装置。
(付記11)
現時点までに判定したいくつかのアプリケーション状態を用いて、将来のアプリケーション状態を予測する手段を備えた、ことを特徴とする付記1乃至10のいずれか一に記載のトラヒック分析装置。
(付記12)
現時点までに判定したいくつかのアプリケーション状態を用いて、将来の通信トラヒックを予測する手段を備えた、ことを特徴とする付記1乃至10のいずれか一に記載のトラヒック分析装置。
(付記13)
推定したアプリケーション状態に基づき、ネットワーク制御と通信制御の少なくとも一方を行う手段を備えた、ことを特徴とする付記1乃至12のいずれか一に記載のトラヒック分析装置。
(付記14)
前記アプリケーション状態に基づき、アプリケーション品質(QoE)を判別する手段を備えた、ことを特徴とする付記1乃至13のいずれか一に記載のトラヒック分析装置。
(付記15)
前記アプリケーション状態、又は、将来のアプリケーション状態の予測結果に基づき、ネットワーク制御と通信制御の少なくとも一方を行う手段を備えた、ことを特徴とする付記1乃至14のいずれか一に記載のトラヒック分析装置。
(付記16)
通信トラヒックの時系列データに対して隠れマルコフモデルに基づき、状態のシーケンスを推定し、前記状態のシーケンスから状態遷移が類似するパターンをひとまとめにして1つの状態とみなして状態のシーケンスを抽出し、
前記抽出された前記状態のシーケンスと、予め定められたアプリケーション特性とに基づき、前記時系列データに対応するアプリケーションを判別する、ことを特徴とするトラヒック分析方法。
(付記17)
前記通信トラヒックが流れるネットワークのタイプに対応したノイズ特性パラメータに基づき、通信ノイズを生成し、前記通信トラヒックの時系列データから前記通信ノイズを除去する、ことを特徴とする付記16に記載のトラヒック分析方法。
(付記18)
階層隠れマルコフモデルを前記時系列データに適用し、前記階層隠れマルコフモデルの下位層に基づき推定した状態のシーケンスに対して前記階層隠れマルコフモデルの上位層を適用し、前記状態のシーケンスのうち状態遷移のパターンが類似する区間の前記状態を1つのグループにまとめ前記上位層の1つの状態とする、ことを特徴とする付記16又は17に記載のトラヒック分析方法。
(付記19)
前記階層隠れマルコフモデルは、連続隠れマルコフモデルを前記下位層とし、離散隠れマルコフモデルを前記上位層として含む、ことを特徴とする付記18に記載のトラヒック分析方法。
(付記20)
前記階層隠れマルコフモデルを更新する、ことを特徴とする付記18又は19に記載のトラヒック分析方法。
(付記21)
前記抽出された状態のシーケンスに対応する前記通信トラヒックの時系列データと、予め登録されたアプリケーション状態に対応する前記通信トラヒックの類似度に基づき、アプリケーション状態を判別する、ことを特徴とする付記16乃至19のいずれか一に記載のトラヒック分析方法。
(付記22)
前記抽出された状態のシーケンスと、予め登録されたアプリケーション状態のシーケンスの類似度に基づき、アプリケーション状態を判別する、ことを特徴とする付記16乃至19のいずれか一に記載のトラヒック分析方法。
(付記23)
前記通信トラヒックの特徴量を抽出し、前記特徴量と予め登録されたアプリケーションの特徴量とを照合し、アプリケーション状態を判別する、ことを特徴とする付記16乃至19のいずれか一に記載のトラヒック分析方法。
(付記24)
アプリケーションの通信トラヒックの特徴量を、教師データとして、アプリケーションを判別する分類モデルを機械学習し、
評価対象の通信トラヒックの時系列データに対して前記分類モデルを用いてアプリケーション状態を判別する、ことを特徴とする付記16乃至19のいずれか一に記載のトラヒック分析方法。
(付記25)
状態滞在時間分布を考慮したHMM(Explicit-Duration HMM)モデルを用いて通信ノイズを除去する、ことを特徴とする付記16乃至24のいずれか一に記載のトラヒック分析方法。
(付記26)
現時点までに判定したいくつかのアプリケーション状態を用いて、将来のアプリケーション状態を予測する手段を備えた、ことを特徴とする付記16乃至25のいずれか一に記載のトラヒック分析方法。
(付記27)
現時点までに判定したいくつかのアプリケーション状態を用いて、将来の通信トラヒックを予測する手段を備えた、ことを特徴とする付記16乃至25のいずれか一に記載のトラヒック分析方法。
(付記28)
推定したアプリケーション状態に基づき、ネットワーク制御と通信制御の少なくとも一方を行う手段を備えた、ことを特徴とする付記16乃至27のいずれか一に記載のトラヒック分析方法。
(付記29)
前記アプリケーション状態に基づき、アプリケーション品質(QoE)を判別する手段を備えた、ことを特徴とする付記16乃至28のいずれか一に記載のトラヒック分析方法。
(付記30)
前記アプリケーション状態、又は、将来のアプリケーション状態の予測結果に基づき、ネットワーク制御と通信制御の少なくとも一方を行う手段を備えた、ことを特徴とする付記16乃至26のいずれか一に記載のトラヒック分析方法。
(付記31)
通信トラヒックの時系列データに対して隠れマルコフモデルに基づき、状態のシーケンスを推定し、前記状態のシーケンスから状態遷移が類似するパターンをひとまとめにして1つの状態とみなして状態のシーケンスを抽出する第1の処理と、
前記抽出された前記状態のシーケンスと、予め定められたアプリケーション特性とに基づき、前記時系列データに対応するアプリケーションを判別する第2の処理と、
をコンピュータに実行させるプログラム。
(付記32)
前記通信トラヒックが流れるネットワークのタイプに対応したノイズ特性パラメータに基づき、通信ノイズを生成し、前記通信トラヒックの時系列データから前記通信ノイズを除去する第3の処理を前記コンピュータに実行させる付記31に記載のプログラム。
(付記33)
前記第1の処理は、階層隠れマルコフモデルを前記時系列データに適用し、前記階層隠れマルコフモデルの下位層に基づき推定した状態のシーケンスに対して前記階層隠れマルコフモデルの上位層を適用し、前記状態のシーケンスのうち状態遷移のパターンが類似する区間の前記状態を1つのグループにまとめ前記上位層の1つの状態とする、ことを特徴とする付記31又は32に記載のプログラム。
(付記34)
前記階層隠れマルコフモデルは、連続隠れマルコフモデルを前記下位層とし、離散隠れマルコフモデルを前記上位層として含む、付記33に記載のプログラム。
(付記35)
前記階層隠れマルコフモデルを更新する処理を前記コンピュータに実行させる付記33又は34に記載のプログラム。
(付記36)
前記第2の処理は、前記第1の処理で抽出された状態のシーケンスに対応する前記通信トラヒックの時系列データと、予め登録されたアプリケーション状態に対応する前記通信トラヒックの類似度に基づき、アプリケーション状態を判別する、付記31乃至34のいずれか一に記載のプログラム。
(付記37)
前記第2の処理は、前記第1の処理で抽出された状態のシーケンスと、予め登録されたアプリケーション状態のシーケンスの類似度に基づき、アプリケーション状態を判別する、付記31乃至34のいずれか一に記載のプログラム。
(付記38)
前記第2の処理は、前記通信トラヒックの特徴量を抽出し、前記特徴量と予め登録されたアプリケーションの特徴量とを照合し、アプリケーション状態を判別する、付記31乃至34のいずれか一に記載のプログラム。
(付記39)
前記第2の処理は、アプリケーションの通信トラヒックの特徴量を、教師データとして、アプリケーションを判別する分類モデルを機械学習し、
評価対象の通信トラヒックの時系列データに対して前記分類モデルを用いてアプリケーション状態を判別する、付記31乃至34のいずれか一に記載のプログラム。
(付記40)
前記第1の処理は、状態滞在時間分布を考慮したHMM(Explicit-Duration HMM)モデルを用いて通信ノイズを除去する、付記31乃至39のいずれか一に記載のプログラム。
(付記41)
現時点までに判定したいくつかのアプリケーション状態を用いて、将来のアプリケーション状態を予測する処理を、前記コンピュータに実行させる付記31乃至40のいずれか一に記載のプログラム。
(付記42)
現時点までに判定したいくつかのアプリケーション状態を用いて、将来の通信トラヒックを予測する処理を、前記コンピュータに実行させる付記31乃至40のいずれか一に記載のプログラム。
(付記43)
推定したアプリケーション状態に基づき、ネットワーク制御と通信制御の少なくとも一方を行う処理を、前記コンピュータに実行させる付記31乃至42のいずれか一に記載のプログラム。
(付記44)
前記アプリケーション状態に基づき、アプリケーション品質(QoE)を判別する処理を前記コンピュータに実行させる付記31乃至43のいずれか一に記載のプログラム。
(付記45)
前記アプリケーション状態、又は、将来のアプリケーション状態の予測結果に基づき、ネットワーク制御と通信制御の少なくとも一方を行う処理を前記コンピュータに実行させる、付記31乃至44のいずれか一に記載のプログラム。
1 トラヒック分析装置
2 第1の処理(第1のユニット)
3 第2の処理(第2のユニット)
4 階層モデル
5 アプリ特性
10 パケットキャプチャ
20 ネットワークノード
30 端末
40 サーバ
50 通信ネットワーク
60 コンピュータ装置
61 プロセッサ
62 記憶装置
63 表示装置(モニタ)
64 通信インタフェース
100 トラヒック分析装置
101 通信トラヒック取得部
102 通信ノイズ算出部
103 状態シーケンス正規化部(時系列データ正規化部)
104 記憶部(階層モデル記憶部)
105 アプリ状態判定部
106 記憶部(アプリ特性記憶部)
107 階層モデル更新部
108 アプリ状態予測部
109 アプリ状態・通信トラヒック予測部
110、112 制御部
111 QoE計算部
201、401 通信トラヒック(スループットの時系列データ)
202 状態
202a、202b、202c 状態(誤推定の時間区間)
203 状態(本来の状態)
211-1、211-2、211-3 正規分布
301 HMM
302 階層HMM
303 グループ1
304 グループ2
311、311-1、311-2 隠れ状態
312、312-1、312-2 混合GAUSS分布(混合正規分布)
313 d次元GAUSS分布(正規分布)
314 出力確率
315 観測値
402 状態(HMM層#1の出力)
403 モデルパラメータ
404 状態(正規化された状態のシーケンス、HMM層#2の出力)
404A 状態#1の時間推移
404B 状態#2の時間推移
405a-405c 通信ノイズ
406 通信トラヒック(通信ノイズ除去後)
406a-407c 通信トラヒックの時間区間
407 状態
408、411 正規化された時系列データ
409 アプリ1の特性
410 アプリ2の特性
412、413 状態
421、424 HMM#1状態
422、425 HMM#2状態
423 状態(正規化された状態シーケンス)
426 アプリ状態Aの時間推移
500、511-51n 決定木
510 ランダムフォレスト
1021 記憶部(内容)
1022 一様乱数(生成部)
1023 逆関数(累積分布関数の逆関数演算部)
1024 整列部(ソート)
1025 ノイズ波形

Claims (5)

  1. 通信トラヒックを取得する手段と、
    前記通信トラヒックの時系列データから、隠れマルコフモデルに基づき、アプリケーションの状態シーケンスを抽出する手段と、
    前記アプリケーションの状態シーケンスから類似するパターンをグループ化する手段と、
    前記グループ化したアプリケーションの状態シーケンスを、予め記憶されているアプリケーション特性と照合する手段と、
    前記通信トラヒックの時系列データに対応するアプリケーションの状態を判定する手段と、
    を備える通信装置。
  2. 前記通信トラヒックの時系列データから通信ノイズを除去する手段を、さらに備え、
    前記通信ノイズが除去された前記通信トラヒックの時系列データから、隠れマルコフモデルに基づき、アプリケーションの状態シーケンスを抽出する、請求項1に記載の通信装置。
  3. 前記通信装置は、中継装置、無線基地局、MEC(Mobile Edge Computing)サーバ、ゲートウェイ装置、サーバ装置のいずれかである請求項1または2に記載の通信装置。
  4. 通信トラヒックを取得し、
    前記通信トラヒックの時系列データから、隠れマルコフモデルに基づき、アプリケーションの状態シーケンスを抽出し、
    前記アプリケーションの状態シーケンスから類似するパターンをグループ化し、
    前記グループ化したアプリケーションの状態シーケンスを、予め記憶されているアプリケーション特性と照合し、
    前記通信トラヒックの時系列データに対応するアプリケーションの状態を判定する、
    通信トラヒックを判定する方法。
  5. 前記通信トラヒックの時系列データから、隠れマルコフモデルに基づき、アプリケーションの状態シーケンスを抽出する前に、前記通信トラヒックの時系列データから通信ノイズを除去する、請求項4に記載の通信トラヒックを判定する方法。
JP2021154149A 2017-10-26 2021-09-22 トラヒック分析装置、システム、方法及びプログラム Active JP7136300B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017207638 2017-10-26
JP2017207638 2017-10-26
JP2019551237A JP6950744B2 (ja) 2017-10-26 2018-10-25 トラヒック分析装置、システム、方法及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2019551237A Division JP6950744B2 (ja) 2017-10-26 2018-10-25 トラヒック分析装置、システム、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2021193832A JP2021193832A (ja) 2021-12-23
JP7136300B2 true JP7136300B2 (ja) 2022-09-13

Family

ID=66247793

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019551237A Active JP6950744B2 (ja) 2017-10-26 2018-10-25 トラヒック分析装置、システム、方法及びプログラム
JP2021154149A Active JP7136300B2 (ja) 2017-10-26 2021-09-22 トラヒック分析装置、システム、方法及びプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2019551237A Active JP6950744B2 (ja) 2017-10-26 2018-10-25 トラヒック分析装置、システム、方法及びプログラム

Country Status (3)

Country Link
US (1) US11509539B2 (ja)
JP (2) JP6950744B2 (ja)
WO (1) WO2019082965A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7363907B2 (ja) * 2019-09-17 2023-10-18 日本電気株式会社 情報処理装置、パケット生成方法、システム、及びプログラム
US20230208730A1 (en) * 2020-07-09 2023-06-29 Telefonaktiebolaget Lm Ericsson (Publ) Classification of Traffic Data Per Application Type
JP7410839B2 (ja) 2020-10-29 2024-01-10 本田技研工業株式会社 情報処理装置、移動体、プログラム、及び情報処理方法
JP2022091341A (ja) * 2020-12-09 2022-06-21 日本電気株式会社 送信装置照合装置、学習装置、送信装置照合方法、学習方法、及びプログラム
JP7258254B2 (ja) * 2021-01-27 2023-04-14 三菱電機株式会社 通信装置
CN115776378B (zh) * 2021-09-06 2024-02-09 中核武汉核电运行技术股份有限公司 一种核电工业互联网平台时序数据实时接入方法
WO2024009429A1 (ja) * 2022-07-06 2024-01-11 三菱電機株式会社 遠隔制御装置、遠隔制御方法、遠隔制御システムおよび移動体
FR3141578A1 (fr) * 2022-10-28 2024-05-03 Psa Automobiles Sa Procédé de détermination de profils de configuration d’un module électronique, dispositif et systèmes associés.

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006202015A (ja) 2005-01-20 2006-08-03 Ntt Docomo Inc 注視状態検出装置および注視状態推定方法
JP2014016731A (ja) 2012-07-06 2014-01-30 Nippon Telegr & Teleph Corp <Ntt> データ更新処理装置、方法、及びプログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6246985B1 (en) * 1998-08-20 2001-06-12 International Business Machines Corporation Method and apparatus for automatic segregation and routing of signals of different origins by using prototypes
US6774917B1 (en) * 1999-03-11 2004-08-10 Fuji Xerox Co., Ltd. Methods and apparatuses for interactive similarity searching, retrieval, and browsing of video
JP4686505B2 (ja) * 2007-06-19 2011-05-25 株式会社東芝 時系列データ分類装置、時系列データ分類方法および時系列データ処理装置
WO2011158421A1 (ja) 2010-06-16 2011-12-22 日本電気株式会社 モデル特定装置
WO2014115362A1 (ja) * 2013-01-28 2014-07-31 日本電気株式会社 識別器学習装置及び識別器学習方法
US20140222997A1 (en) * 2013-02-05 2014-08-07 Cisco Technology, Inc. Hidden markov model based architecture to monitor network node activities and predict relevant periods
WO2015085102A1 (en) * 2013-12-05 2015-06-11 Huawei Technologies Co., Ltd. System and method for non-invasive application recognition
JP6390167B2 (ja) 2014-05-23 2018-09-19 日本電気株式会社 通信スループット予測装置、通信スループット予測方法、及び、プログラム
CN105282052B (zh) 2014-06-19 2020-08-07 西安中兴新软件有限责任公司 一种基于用户应用业务分配带宽的方法和装置
US10611379B2 (en) * 2016-08-16 2020-04-07 Toyota Jidosha Kabushiki Kaisha Integrative cognition of driver behavior
US10932004B2 (en) * 2017-01-24 2021-02-23 Adobe Inc. Recommending content based on group collaboration

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006202015A (ja) 2005-01-20 2006-08-03 Ntt Docomo Inc 注視状態検出装置および注視状態推定方法
JP2014016731A (ja) 2012-07-06 2014-01-30 Nippon Telegr & Teleph Corp <Ntt> データ更新処理装置、方法、及びプログラム

Also Published As

Publication number Publication date
JPWO2019082965A1 (ja) 2020-11-12
JP6950744B2 (ja) 2021-10-13
JP2021193832A (ja) 2021-12-23
US20200328947A1 (en) 2020-10-15
US11509539B2 (en) 2022-11-22
WO2019082965A1 (ja) 2019-05-02

Similar Documents

Publication Publication Date Title
JP7136300B2 (ja) トラヒック分析装置、システム、方法及びプログラム
JP7184125B2 (ja) トラヒック分析装置、方法及びプログラム
US10885469B2 (en) Scalable training of random forests for high precise malware detection
EP3346667B1 (en) Training a machine learning-based network traffic analyzer using a prototype dataset
US11736364B2 (en) Cascade-based classification of network devices using multi-scale bags of network words
Lopez-Martin et al. Deep learning model for multimedia quality of experience prediction based on network flow packets
US8670346B2 (en) Packet classification method and apparatus
US10079768B2 (en) Framework for joint learning of network traffic representations and traffic classifiers
US11669751B2 (en) Prediction of network events via rule set representations of machine learning models
Kornycky et al. Radio frequency traffic classification over WLAN
US11582093B2 (en) Using stability metrics for live evaluation of device classification systems and hard examples collection
Viegas et al. A reliable semi-supervised intrusion detection model: One year of network traffic anomalies
WO2020079986A1 (ja) 推定装置、システム及び方法及びコンピュータ可読媒体並びに学習装置及び方法及びコンピュータ可読媒体
Dubin et al. Video quality representation classification of Safari encrypted DASH streams
Maia et al. Internet traffic classification using a Hidden Markov model
Zhang et al. Network traffic clustering with QoS-awareness
Saki et al. Machine learning based frame classification for videos transmitted over mobile networks
Jenefa et al. An Upgraded C5. 0 Algorithm for Network Application Identification
Koksal et al. Markov model based traffic classification with multiple features
Song et al. Where Did My Packet Go? Real-Time Prediction of Losses in Networks
Este et al. Pattern recognition approaches for classifying ip flows
US20240028670A1 (en) Multimedia traffic classification method using markov components and system implementing the same
Oveissian et al. Fast flow classification over internet
Köksal Multimedia traffic classification based on discrete time markov chains
Kurt et al. Network management without payload inspection: Application classification via statistical analysis of bulk flow data

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210922

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220627

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220815

R151 Written notification of patent or utility model registration

Ref document number: 7136300

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151