特許第6466489号(P6466489)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソフトバンクモバイル株式会社の特許一覧

<>
  • 特許6466489-判定装置、判定方法、及びプログラム 図000002
  • 特許6466489-判定装置、判定方法、及びプログラム 図000003
  • 特許6466489-判定装置、判定方法、及びプログラム 図000004
  • 特許6466489-判定装置、判定方法、及びプログラム 図000005
  • 特許6466489-判定装置、判定方法、及びプログラム 図000006
  • 特許6466489-判定装置、判定方法、及びプログラム 図000007
  • 特許6466489-判定装置、判定方法、及びプログラム 図000008
  • 特許6466489-判定装置、判定方法、及びプログラム 図000009
  • 特許6466489-判定装置、判定方法、及びプログラム 図000010
  • 特許6466489-判定装置、判定方法、及びプログラム 図000011
  • 特許6466489-判定装置、判定方法、及びプログラム 図000012
  • 特許6466489-判定装置、判定方法、及びプログラム 図000013
  • 特許6466489-判定装置、判定方法、及びプログラム 図000014
  • 特許6466489-判定装置、判定方法、及びプログラム 図000015
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6466489
(24)【登録日】2019年1月18日
(45)【発行日】2019年2月6日
(54)【発明の名称】判定装置、判定方法、及びプログラム
(51)【国際特許分類】
   H04M 3/00 20060101AFI20190128BHJP
   H04L 12/70 20130101ALI20190128BHJP
【FI】
   H04M3/00 D
   H04L12/70 Z
【請求項の数】18
【全頁数】22
(21)【出願番号】特願2017-27878(P2017-27878)
(22)【出願日】2017年2月17日
(65)【公開番号】特開2018-133767(P2018-133767A)
(43)【公開日】2018年8月23日
【審査請求日】2017年8月7日
(73)【特許権者】
【識別番号】501440684
【氏名又は名称】ソフトバンク株式会社
(74)【代理人】
【識別番号】110000877
【氏名又は名称】龍華国際特許業務法人
(72)【発明者】
【氏名】米田 進
(72)【発明者】
【氏名】永井 泰裕
【審査官】 寺谷 大亮
(56)【参考文献】
【文献】 特開2004−356867(JP,A)
【文献】 特開2012−119741(JP,A)
【文献】 特開2010−109428(JP,A)
【文献】 特表2013−515417(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 13/00
H04L 12/00−12/26
12/50−12/955
H04M 3/00
3/16− 3/20
3/38− 3/58
7/00− 7/16
11/00−11/10
H04N 7/173
(57)【特許請求の範囲】
【請求項1】
動画配信サイトからユーザ端末に向けて送信された複数のパケットに基づいて、前記ユーザ端末のユーザが動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動をとっているか否かを判定する判定部と、
前記判定部による判定結果を出力する判定結果出力部と
を備え、
前記判定結果出力部は、前記ユーザ端末に対する通信トラフィックを制御するトラフィック制御部に前記判定結果を送信する、判定装置。
【請求項2】
記トラフィック制御部は、前記判定部によって前記行動をとっていると判定されたユーザの前記ユーザ端末に対する通信トラフィックを制限し、
前記判定部は、前記トラフィック制御部によって通信トラフィックが制限されてから予め定められた時間が経過した後に、通信トラフィックが制限された前記ユーザ端末に向けて送信された複数のパケットに基づいて、前記ユーザが前記行動をとっているか否かを判定し、
前記トラフィック制御部は、前記判定部によって前記ユーザ端末のユーザが前記行動をとっていないと判定された場合、前記ユーザ端末に対する通信トラフィックの制限を解除する、請求項に記載の判定装置。
【請求項3】
前記動画配信サイトから前記ユーザ端末に向けて送信された複数の暗号化パケットを取得するパケット取得部と、
前記複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報を取得する情報取得部と
をさらに備え、
前記判定部は、前記情報取得部によって取得された情報に基づいて、前記ユーザが前記行動をとっているか否かを判定する、請求項1又は2に記載の判定装置。
【請求項4】
前記情報取得部は、前記複数の暗号化パケットのヘッダ情報を取得し、
前記判定部は、前記ヘッダ情報に基づいて、前記ユーザが前記行動をとっているか否かを判定する、請求項に記載の判定装置。
【請求項5】
前記情報取得部は、前記複数の暗号化パケットのヘッダから、ソースアドレス、プロトコル種別、フラグ種別、及びTCPのウィンドウサイズの少なくともいずれかを取得し、
前記判定部は、前記ソースアドレス、前記プロトコル種別、前記フラグ種別、及び前記ウィンドウサイズの少なくともいずれかに基づいて、前記ユーザが前記行動をとっているか否かを判定する、請求項に記載の判定装置。
【請求項6】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを取得するパケット取得部と、
前記複数の暗号化パケットのパケット間隔を取得する情報取得部と、
前記パケット間隔に基づいて、前記ユーザ端末のユーザが動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動をとっているか否かを判定する判定部と、
前記判定部による判定結果を出力する判定結果出力部と
を備える、判定装置。
【請求項7】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを取得するパケット取得部と、
前記複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報を取得する情報取得部と、
前記情報取得部によって取得された情報を用いて、前記ユーザ端末のユーザが動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動をとっているか否かを判定するための学習モデルを生成する学習モデル生成部と、
前記学習モデルを用いて、前記ユーザ端末のユーザが前記行動をとっているか否かを判定する判定部と、
前記判定部による判定結果を出力する判定結果出力部と
を備える、判定装置。
【請求項8】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報に基づいて生成された、動画の閲覧を開始してから予め定められた時間を経過する前に次の動画の閲覧を開始する行動をとっているユーザのユーザ端末を特定するための学習モデルを用いて、パケットの配信を規制する対象となるユーザ端末を判定する判定部と、
前記判定部による判定結果を出力する判定結果出力部と
を備える判定装置。
【請求項9】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報に基づいて生成された、予め定められた容量よりも多い容量の動画を閲覧するユーザのユーザ端末を特定するための学習モデルを用いて、パケットの配信を規制する対象となるユーザ端末を判定する判定部と、
前記判定部による判定結果を出力する判定結果出力部と
を備える判定装置。
【請求項10】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報に基づいて生成された、予め定められた種類の動画を閲覧するユーザのユーザ端末を特定するための学習モデルを用いて、パケットの配信を規制する対象となるユーザ端末を判定する判定部と、
前記判定部による判定結果を出力する判定結果出力部と
を備える判定装置。
【請求項11】
前記複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報に基づいて前記学習モデルを生成する学習モデル生成部
をさらに備える、請求項8から10のいずれか一項に記載の判定装置。
【請求項12】
コンピュータを、請求項1から11のいずれか一項に記載の判定装置として機能させるためのプログラム。
【請求項13】
動画配信サイトからユーザ端末に向けて送信された複数のパケットに基づいて、前記ユーザ端末のユーザが動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動をとっているか否かを判定する判定段階と、
前記判定段階における判定結果を出力する判定結果出力段階と
を備え、
前記判定結果出力段階は、前記ユーザ端末に対する通信トラフィックを制御するトラフィック制御部に前記判定結果を送信する、判定方法。
【請求項14】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを取得するパケット取得段階と、
前記複数の暗号化パケットのパケット間隔を取得する情報取得段階と、
前記パケット間隔に基づいて、前記ユーザ端末のユーザが動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動をとっているか否かを判定する判定段階と、
前記判定段階における判定結果を出力する判定結果出力段階と
を備える、判定方法。
【請求項15】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを取得するパケット取得段階と、
前記複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報を取得する情報取得段階と、
前記情報取得段階において取得された情報を用いて、前記ユーザ端末のユーザが動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動をとっているか否かを判定するための学習モデルを生成する学習モデル生成段階と、
前記学習モデルを用いて、前記ユーザ端末のユーザが前記行動をとっているか否かを判定する判定段階と、
前記判定段階における判定結果を出力する判定結果出力段階と
を備える、判定方法。
【請求項16】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報に基づいて生成された、動画の閲覧を開始してから予め定められた時間を経過する前に次の動画の閲覧を開始する行動をとっているユーザのユーザ端末を特定するための学習モデルを用いて、パケットの配信を規制する対象となるユーザ端末を判定する判定段階と、
前記判定段階における判定結果を出力する判定結果出力段階と
を備える判定方法。
【請求項17】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報に基づいて生成された、予め定められた容量よりも多い容量の動画を閲覧するユーザのユーザ端末を特定するための学習モデルを用いて、パケットの配信を規制する対象となるユーザ端末を判定する判定段階と、
前記判定段階における判定結果を出力する判定結果出力段階と
を備える判定方法。
【請求項18】
動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを復号化せずに前記複数の暗号化パケットから取得できる情報に基づいて生成された、予め定められた種類の動画を閲覧するユーザのユーザ端末を特定するための学習モデルを用いて、パケットの配信を規制する対象となるユーザ端末を判定する判定段階と、
前記判定段階における判定結果を出力する判定結果出力段階と
を備える判定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、判定装置、判定方法、及びプログラムに関する。
【背景技術】
【0002】
携帯端末の通信トラフィックを携帯電話通信網において制御する技術が知られていた(例えば、特許文献1参照)。
[先行技術文献]
[特許文献]
[特許文献1]特開2016−036061号公報
【発明の概要】
【発明が解決しようとする課題】
【0003】
携帯端末等の通信トラフィックを適切に制御できる技術を提供することが望ましい。
【課題を解決するための手段】
【0004】
本発明の第1の態様によれば、判定装置が提供される。判定装置は、動画配信サイトからユーザ端末に向けて送信された複数のパケットに基づいて、ユーザ端末のユーザが動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動をとっているか否かを判定する判定部を備えてよい。判定装置は、判定部による判定結果を出力する判定結果出力部を備えてよい。
【0005】
上記判定装置は、上記動画配信サイトから上記ユーザ端末に向けて送信された複数の暗号化パケットを取得するパケット取得部と、上記複数の暗号化パケットを復号化せずに上記複数の暗号化パケットから取得できる情報を取得する情報取得部とをさらに備えてよく、上記判定部は、上記情報取得部によって取得された情報に基づいて、上記ユーザが上記行動をとっているか否かを判定してよい。上記情報取得部は、上記複数の暗号化パケットのヘッダ情報を取得してよく、上記判定部は、上記ヘッダ情報に基づいて、上記ユーザが上記行動をとっているか否かを判定してよい。上記情報取得部は、上記複数の暗号化パケットのヘッダから、ソースアドレス、プロトコル種別、フラグ種別、及びTCPのウィンドウサイズの少なくともいずれかを取得してよく、上記判定部は、上記ソースアドレス、上記プロトコル種別、上記フラグ種別、及び上記ウィンドウサイズの少なくともいずれかに基づいて、上記ユーザが上記行動をとっているか否かを判定してよい。上記情報取得部は、上記複数の暗号化パケットのパケット間隔を取得してよく、上記判定部は、上記パケット間隔に基づいて、上記ユーザが上記行動をとっているか否かを判定してよい。
【0006】
上記判定装置は、上記情報取得部によって取得された情報を用いて、上記ユーザが上記行動をとっているか否かを判定するための学習モデルを生成する学習モデル生成部をさらに備えてよく、上記判定部は、上記学習モデルを用いて、上記ユーザが上記行動をとっているか否かを判定してよい。上記学習モデル生成部は、上記情報取得部によって取得された情報を用いて深層学習を実行することにより、上記ユーザが上記行動をとっているか否かを判定するための深層学習モデルを生成してよい。
【0007】
上記判定結果出力部は、上記ユーザ端末に対する通信トラフィックを制御するトラフィック制御部に上記判定結果を送信してよい。上記判定装置は、上記トラフィック制御部をさらに備えてよく、上記トラフィック制御部は、上記判定部によって上記行動をとっていると判定されたユーザの上記ユーザ端末に対する通信トラフィックを制限してよく、上記判定部は、上記トラフィック制御部によって通信トラフィックが制限されてから予め定められた時間が経過した後に、通信トラフィックが制限された上記ユーザ端末に向けて送信された複数のパケットに基づいて、上記ユーザが上記行動をとっているか否かを判定してよく、上記トラフィック制御部は、上記判定部によって上記ユーザ端末のユーザが上記行動をとっていないと判定された場合、上記ユーザ端末に対する通信トラフィックの制限を解除してよい。
【0008】
本発明の第2の態様によれば、判定装置が提供される。判定装置は、動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを復号化せずに複数の暗号化パケットから取得できる情報に基づいて生成された学習モデルを用いて、パケットの配信を規制する対象となるユーザ端末を判定する判定部を備えてよい。判定装置は、判定部による判定結果を出力する判定結果出力部を備えてよい。
【0009】
上記判定装置は、上記複数の暗号化パケットを復号化せずに上記複数の暗号化パケットから取得できる情報に基づいて上記学習モデルを生成する学習モデル生成部をさらに備えてよい。上記学習モデル生成部は、上記複数の暗号化パケットを復号化せずに上記複数の暗号化パケットから取得できる情報に基づいて深層学習を実行することによって、上記学習モデルを生成してよい。上記学習モデルは、動画の閲覧を開始してから予め定められた時間を経過する前に次の動画の閲覧を開始する行動をとっているユーザのユーザ端末を特定するための学習モデルであってよい。上記学習モデルは、予め定められた容量よりも多い容量の動画を閲覧するユーザのユーザ端末を特定するための学習モデルであってよい。上記学習モデルは、予め定められた種類の動画を閲覧するユーザのユーザ端末を特定するための学習モデルであってよい。
【0010】
本発明の第3の態様によれば、コンピュータを、上記判定装置として機能させるためのプログラムが提供される。
【0011】
本発明の第4の態様によれば、判定方法が提供される。判定方法は、動画配信サイトからユーザ端末に向けて送信された複数のパケットに基づいて、ユーザ端末のユーザが動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動をとっているか否かを判定する判定段階を備えてよい。判定方法は、判定段階における判定結果を出力する判定結果出力段階を備えてよい。
【0012】
本発明の第5の態様によれば、判定方法が提供される。動画配信サイトからユーザ端末に向けて送信された複数の暗号化パケットを復号化せずに複数の暗号化パケットから取得できる情報に基づいて生成された学習モデルを用いて、パケットの配信を規制する対象となるユーザ端末を判定する判定段階を備えてよい。判定方法は、判定段階における判定結果を出力する判定結果出力段階を備えてよい。
【0013】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【0014】
図1】制御システム100の一例を概略的に示す。
図2】学習制御装置200、行動判定装置300、及びゲートウェイ装置400の機能構成の一例を概略的に示す。
図3】行動判定装置300及びゲートウェイ装置400による処理の流れの一例を概略的に示す。
図4】学習制御装置200による処理の流れの一例を概略的に示す。
図5】学習制御装置200による処理の流れの一例を概略的に示す。
図6】パケット間隔テーブル241の一例を概略的に示す。
図7】ソースアドレステーブル242の一例を概略的に示す。
図8】プロトコル種別テーブル243の一例を概略的に示す。
図9】フラグ種別テーブル244の一例を概略的に示す。
図10】ウィンドウサイズテーブル245の一例を概略的に示す。
図11】行動判定装置300及びゲートウェイ装置400による処理の流れの一例を概略的に示す。
図12】行動判定装置300及びゲートウェイ装置400による処理の流れの一例を概略的に示す。
図13】行動判定装置300及びゲートウェイ装置400による処理の流れの一例を概略的に示す。
図14】行動判定装置300として機能するコンピュータ1000のハードウエア構成の一例を概略的に示す。
【発明を実施するための形態】
【0015】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0016】
図1は、制御システム100の一例を概略的に示す。制御システム100は、ユーザ端末30の通信トラフィックを制御する。制御システム100は、例えば、通信事業者によって提供される。制御システム100は、通信事業者のネットワークを介したユーザ端末30の通信トラフィックを制御してよい。制御システム100は、例えば、インターネット20に接続された動画配信サイト40からの、インターネット20、モバイルネットワーク10及び基地局12を介したユーザ端末30への通信トラフィックを制御する。ユーザ端末30は、スマートフォン等の携帯電話、タブレット端末、及びPC(Personal Computer)等であってよい。
【0017】
制御システム100は、学習制御装置200及び行動判定装置300を備えてよい。学習制御装置200は、ユーザ端末30と動画配信サイト40との間の複数のパケットに基づいて学習モデルを生成してよい。学習制御装置200は、例えば、動画配信サイト40からユーザ端末30に向けて送信された複数のパケットに基づいて学習モデルを生成する。
【0018】
学習モデルを生成することは、新たに学習モデルを作り出すこと及び既存の学習モデルを更新することを含んでよい。学習制御装置200は、機械学習を実行することによって機械学習モデルを生成してよい。学習制御装置200は、深層学習を実行することによって深層学習モデルを生成してよい。
【0019】
学習制御装置200は、例えば、動画配信サイト40からユーザ端末30に向けて送信された複数の暗号化パケットを中継するゲートウェイ装置400から、当該複数の暗号化パケットを受信する。ゲートウェイ装置400は、例えば、動画配信サイト40からユーザ端末30に向けて送信された複数の暗号化パケットを複製して学習制御装置200に送信してよい。
【0020】
学習制御装置200は、複数の暗号化パケットを復号化せずに当該複数の暗号化パケットから取得できる情報に基づいて学習モデルを生成してよい。具体例として、学習制御装置200は、ユーザ端末30のユーザ50が、閲覧する動画を頻繁に切り替える行動をとっているか否かを判定するための学習モデルを生成する。閲覧する動画を頻繁に切り替える行動とは、動画の閲覧を開始してから予め定められた期間を経過する前に次の動画の閲覧を開始する行動であってよい。予め定められた期間は、秒単位、分単位等で任意に定められてよい。学習制御装置200は、作成した学習モデルを行動判定装置300に送信してよい。
【0021】
行動判定装置300は、学習制御装置200によって生成された学習モデルを用いて、ユーザ端末30のユーザ50がとっている行動を判定する。行動判定装置300は、例えば、動画配信サイト40からユーザ端末30に向けて送信された複数の暗号化パケットを、ゲートウェイ装置400から受信する。ゲートウェイ装置400は、動画配信サイト40からユーザ端末30に向けて送信された複数の暗号化パケットを複製して行動判定装置300に送信してよい。行動判定装置300は、受信した複数の暗号化パケットと、学習制御装置200から受信した学習モデルとを用いて、ユーザ50がとっている行動を判定する。
【0022】
具体例として、行動判定装置300は、ユーザ50が閲覧する動画を頻繁に切り替える行動をとっているか否かを判定するための学習モデルを学習制御装置200から受信して格納する。そして、行動判定装置300は、ゲートウェイ装置400から受信した複数の暗号化パケットと、当該学習モデルとを用いて、ユーザ50が、閲覧する動画を頻繁に切り替える行動をとっているか否かを判定する。
【0023】
行動判定装置300は、判定結果をゲートウェイ装置400に送信することによって、ユーザ端末30に対する通信トラフィックを制御させてよい。ゲートウェイ装置400は、行動判定装置300から受信した判定結果に基づいて、ユーザ端末30に対する通信トラフィックを制御してよい。
【0024】
例えば、ゲートウェイ装置400は、閲覧する動画を頻繁に切り替える行動をとっているユーザ50のユーザ端末30に対する通信トラフィックを制限する。ゲートウェイ装置400は、例えばユーザ端末30に割り当てる通信帯域を低減することによって、ユーザ端末30に対する通信トラフィックを規制してよい。具体例として、ゲートウェイ装置400は、ユーザ端末30に対して割り当てる通信帯域を、1Mbps等の予め定められた通信帯域に制限する。1Mbpsは例示であり、任意に設定されてよい。
【0025】
例えば、ユーザ50がYoutube(登録商標)等の動画配信サイト40によって配信される動画を閲覧する場合、まず、動画配信サイト40が動画の一部をユーザ端末30に送信し、ユーザ端末30はその動画の一部をバッファリングする。そして、動画の閲覧中に、動画の残りの部分が動画配信サイト40からユーザ端末30に適宜送信される。
【0026】
ここで、例えば、動画の50%がユーザ端末30にバッファリングされている状態で、ユーザ50が動画の10%を閲覧した時点で動画を切り替えると、動画の40%は閲覧されずに破棄されることになる。すなわち、結果として、ユーザ50によって閲覧されない動画が動画配信サイト40からユーザ端末30に送信されたことになる。このようなユーザ50の行動はネットワークのリソースを不必要に消費する一因となっている。
【0027】
これに対して本実施形態に係る制御システム100によれば、閲覧する動画を頻繁に切り替える行動をとっているユーザ50のユーザ端末30に対する通信トラフィックを制限することができる。これにより、ユーザ50によって閲覧されないにも関わらず動画配信サイト40からユーザ端末30に送信される動画のデータ量を低減することができ、ネットワークリソースの有効利用を実現することができる。
【0028】
また、本実施形態に係る制御システム100によれば、複数の暗号化パケットを復号化せずに複数の暗号化パケットから取得できる情報に基づいて、閲覧する動画を頻繁に切り替える行動をとっているか否かを判定するための学習モデルのようなネットワークリソースの有効活用を実現可能とする学習モデルを生成することができる。
【0029】
パケットが暗号化されていなければ、パケットを中継するゲートウェイ装置400において取得したパケットのペイロードを分析することによって、様々な通信トラフィック削減策をとることができる。しかし、既存の動画配信サイト40では通信のほぼすべてを暗号化している場合が多い。そのため、通信事業者による通信トラフィック削減策は非常に限られる。例えば、通信事業者は、暗号化パケットのヘッダ情報を確認することによって動画配信サイト40から送信されたパケットを特定し、動画を閲覧しているユーザ50に対して一様に制限をかける等の対策をとることしかできなかった。これに対して、本実施形態に係る制御システム100によれば、例えば、動画閲覧ユーザのうち、閲覧する動画を頻繁に切り替えるユーザに限定して制限をかけることができるので、効果的に通信トラフィックを抑えることができる。
【0030】
図2は、学習制御装置200、行動判定装置300、及びゲートウェイ装置400の機能構成の一例を概略的に示す。ゲートウェイ装置400は、トラフィック送受信部410、パケットログ送信部420、及びトラフィック制御部430を有する。学習制御装置200は、パケットログ受信部210、学習データ生成部220、及び学習モデル生成部230を有する。行動判定装置300は、判定部310、パケットログ受信部320、及び判定結果出力部330を有する。
【0031】
トラフィック送受信部410は、ユーザ端末30に対する通信トラフィックの送受信を行う。トラフィック送受信部410は、ユーザ端末30と任意の通信先との間のパケットを中継する。トラフィック送受信部410は、例えば、動画配信サイト40からユーザ端末30に向けて送信されたパケットを受信して、ユーザ端末30に対して送信する。トラフィック送受信部410は、例えば、ユーザ端末30から動画配信サイト40に向けて送信されたパケットを受信して、動画配信サイト40に対して送信する。
【0032】
パケットログ送信部420は、トラフィック送受信部410が送受信する暗号化パケットのうち、特定の暗号化パケットをパケットログ受信部210及びパケットログ受信部320に送信する。パケットログ送信部420は、特定の暗号化パケットの複製をパケットログ受信部210及びパケットログ受信部320に送信してよい。
【0033】
パケットログ送信部420は、例えば、送信元が動画配信サイト40である暗号化パケットをパケットログ受信部210及びパケットログ受信部320に送信する。パケットログ送信部420は、送信元が動画配信サイト40であり、かつ、送信先が予め定められたユーザ端末30である暗号化パケットをパケットログ受信部210及びパケットログ受信部320に送信してもよい。
【0034】
パケットログ受信部210は、パケットログ送信部420が送信した暗号化パケットを受信する。パケットログ受信部210は、受信した暗号化パケットを復号化せずに取得できる情報を学習データ生成部220に送信する。パケットログ受信部210は、暗号化パケットの送信先であるユーザ端末30毎に暗号化パケットを分類して、暗号化パケットを復号化せずに取得できる情報を学習データ生成部220に送信してよい。
【0035】
パケットログ受信部210は、例えば、暗号化パケットのヘッダ情報を学習データ生成部220に送信する。また、パケットログ受信部210は、例えば、暗号化パケットのパケット間隔を学習データ生成部220に送信する。パケットログ受信部210は、例えば、トラフィック送受信部410が受信した暗号化パケットの受信時刻の差をパケット間隔として学習データ生成部220に送信する。なお、パケットログ受信部210が、パケットログ送信部420から受信した暗号化パケットを学習データ生成部220に送信して、学習データ生成部220が、受信した複数の暗号化パケットから、複数の暗号化パケットを復号化せずに取得できる情報を取得してもよい。
【0036】
学習データ生成部220は、複数の暗号化パケットを復号化せずに取得できる情報から、学習データを生成する。学習データは、学習モデル生成部230への入力単位となるデータであってよい。学習データは、学習モデル生成部230が学習に用いることができる形式であれば、どのような形式であってもよい。
【0037】
例えば、学習データ生成部220は、暗号化パケットの送信先であるユーザ端末30毎に、予め定められた数の連続する複数の暗号化パケットについて、復号化せずに取得できる情報を0/1表記のデータに置き換えて結合することによって学習データを生成する。予め定められた数は、例えば100個等、任意に設定されてよい。
【0038】
具体例として、閲覧する動画を頻繁に切り替える行動をとっているか否かを判定するための学習モデルを生成する場合、学習データ生成部220は、各暗号化パケットにつき、パケット間隔、ソースアドレス、プロトコル種別、フラグ種別、及びTCPのウィンドウサイズをそれぞれ0/1表記のデータに置き換えて結合したデータを生成し、100個分の当該データを結合することによって学習データを生成する。学習データ生成部220は、学習モデル生成部230が生成する学習モデルの種類に応じた学習データを生成してよい。
【0039】
学習モデル生成部230は、学習データ生成部220から入力された学習データを用いて学習モデルを生成する。学習モデル生成部230は、パケットの配信を規制するユーザ端末30を判定するための学習モデルを生成してよい。
【0040】
例えば、学習モデル生成部230は、閲覧する動画を頻繁に切り替える行動をとっているか否かを判定するための学習モデルを生成する。学習モデル生成部230は、パケット間隔、ソースアドレス、プロトコル種別、フラグ種別、及びTCPのウィンドウサイズの少なくともいずれかを用いて、閲覧する動画を頻繁に切り替える行動をとっているか否かを判定するための学習モデルを生成してよい。学習モデル生成部230は、複数の暗号化パケットを復号化せずに取得できる情報のうち、これら以外の情報をさらに用いて学習モデルを生成してもよい。
【0041】
また、例えば、学習モデル生成部230は、データ量の多い動画を閲覧する行動をとっているか否かを判定するための学習モデルを生成する。学習モデル生成部230は、複数の暗号化データを復号化せずに取得できる情報のうち、データ量の多い動画を閲覧する行動に関連する情報を用いて当該学習モデルを生成してよい。
【0042】
また、例えば、学習モデル生成部230は、規制対象の動画を閲覧する行動をとっているか否かを判定するための学習モデルを生成する。学習モデル生成部230は、複数の暗号化データを復号化せずに取得できる情報のうち、規制対象の動画を閲覧する行動に関連する情報を用いて当該学習モデルを生成してよい。
【0043】
学習モデル生成部230は、生成した学習モデルを判定部310に送信する。判定部310は、学習モデル生成部230から受信した学習モデルを格納する。
【0044】
パケットログ受信部320は、パケットログ送信部420が送信した暗号化パケットを受信する。パケットログ受信部320は、受信した暗号化パケットを判定部310に送信する。
【0045】
判定部310は、格納している学習モデルと、パケットログ受信部320から受信した暗号化パケットとを用いて、暗号化パケットの送信先であるユーザ端末30のユーザ50の行動を判定する。判定部310は、例えば、暗号化パケットの送信先であるユーザ端末30毎に、学習データと同一フォーマットの判定データを生成し、当該判定データと学習モデルとを用いてユーザ50の行動を判定する。
【0046】
具体例として、判定部310は、ユーザ50が閲覧する動画を頻繁に切り替える行動をとっているか否かを判定する。判定部310は、例えば、閲覧する動画を頻繁に切り替える行動をとっている確度と、閲覧する動画を頻繁に切り替える行動をとっていない確度との比率を算出して、前者の比率が高い場合に、閲覧する動画を頻繁に切り替える行動をとっていると判定する。判定部310は、閲覧する動画を頻繁に切り替える行動をとっている確度と、閲覧する動画を頻繁に切り替える行動をとっていない確度との合計が100%になるように、これらの確度を導出してよい。
【0047】
判定部310は、判定結果を判定結果出力部330に送信する。判定部310は、例えば、ユーザ50が閲覧する動画を頻繁に切り替える行動をとっているか否かを示す判定結果を判定結果出力部330に送信する。また、判定部310は、閲覧する動画を頻繁に切り替える行動をとっている確度と、閲覧する動画を頻繁に切り替える行動をとっていない確度との比率を判定結果出力部330に送信してもよい。
【0048】
判定結果出力部330は、判定部310から受信した判定結果を出力する。判定結果出力部330は、例えば、判定部310から受信した判定結果をトラフィック制御部430に送信する。
【0049】
トラフィック制御部430は、判定部310から受信した判定結果に基づいて、ユーザ端末30に対する通信トラフィックを制御する。トラフィック制御部430は、例えば、閲覧する動画を頻繁に切り替える行動をとっていると判定されたユーザ50のユーザ端末30に対する通信トラフィックを制限する。トラフィック制御部430は、具体例として、当該ユーザ端末30に割り当てる通信帯域を制限してよい。例えば、トラフィック制御部430は、当該ユーザ端末30に対して割り当てる通信帯域を、1Mbps等の予め定められた通信帯域に制限する。
【0050】
トラフィック制御部430は、閲覧する動画を頻繁に切り替える行動をとっている確度と、閲覧する動画を頻繁に切り替える行動をとっていない確度との比率を受信した場合、当該比率に基づいて通信トラフィックを制御してもよい。例えば、トラフィック制御部430は、閲覧する動画を頻繁に切り替える行動をとっている確度が高いほど、当該ユーザ50のユーザ端末30に対する通信トラフィックをより強く制限する。通信トラフィックをより強く制限するとは、例えば、通信帯域をより狭くすることであってよい。
【0051】
また、トラフィック制御部430は、閲覧する動画を頻繁に切り替える行動をとっている確度が予め定められた閾値より高いユーザ50のユーザ端末30に対する通信トラフィックのみを制限してもよい。例えば、閲覧する動画を頻繁に切り替える行動をとっている確度の比率が50〜70%のユーザ50のユーザ端末30については通信トラフィックを制限せず、70%以上のユーザ端末30のユーザ端末30に対する通信トラフィックのみを制限する。
【0052】
判定結果出力部330は、判定部310から受信した判定結果を表示出力してもよい。この場合、例えば、判定結果出力部330によって表示出力された判定結果をオペレータが閲覧し、当該オペレータの指示に従って、ユーザ端末30に対する通信トラフィックが制限される。
【0053】
行動判定装置300は、判定装置の一例であってよい。学習制御装置200と行動判定装置300とは、一の実行主体によって実現されてもよく、その場合、当該一の実行主体は、判定装置の一例であってよい。また、トラフィック制御部430は、ゲートウェイ装置400内ではなく、行動判定装置300内に位置してもよい。また、学習制御装置200、行動判定装置300、及びゲートウェイ装置400が一の実行主体によって実現されてもよく、その場合、当該一の実行主体は、判定装置の一例であってよい。
【0054】
図3は、行動判定装置300及びゲートウェイ装置400による処理の流れの一例を概略的に示す。ここでは、ゲートウェイ装置400が複数の基地局12のそれぞれの通信トラフィックをモニタリングしている状況において、一の基地局12の通信トラフィックを取得してから、当該一の基地局12の通信トラフィックに関する処理を終了するまでの処理の流れを概略的に示す。
【0055】
ステップ(ステップをSと省略して記載する場合がある。)302では、ゲートウェイ装置400が、基地局12の通信トラフィックを取得する。S304では、ゲートウェイ装置400が、S302において取得した通信トラフィックが規制レベルより大きいか否かを判定する。規制レベルは予め登録されていてよい。また、規制レベルは変更可能であってよい。規制レベルより大きいと判定した場合、S306に進み、大きくないと判定した場合、処理を終了する。
【0056】
S306では、判定部310が、基地局12を介して通信を実行しているユーザ端末30のユーザ50に、動画を頻繁に切り替える行動をとっているユーザ50がいるか否かを判定する。判定部310による判定結果は、判定結果出力部330によってトラフィック制御部430に送信されてよい。判定結果が、動画を頻繁に切り替える行動をとっているユーザ50がいることを示す場合、S308に進み、示さない場合、処理を終了する。
【0057】
S308では、トラフィック制御部430が、S306において動画を頻繁に切り替える行動をとっていると判定されたユーザ50のユーザ端末30に対する通信トラフィックを制限する。そして処理を終了する。
【0058】
行動判定装置300及びゲートウェイ装置400が、複数の基地局12について上記処理を実行することにより、通信トラフィックが規制レベルを超えた基地局12について、当該基地局12を介して通信を実行しているユーザ端末30のユーザ50の体感品質を低下させることなく、基地局12の負荷を低減することができる。なお、図3では、基地局12の通信トラフィックが規制レベルより大きいか否かをゲートウェイ装置400が判定する場合を例に挙げて説明したが、これに限らず、ゲートウェイ装置400以外の装置が判定を行ってもよい。
【0059】
図3に示す処理を実行することによってユーザ端末30の通信トラフィックを制限してから、予め定められた時間が経過した後に、判定部310は、通信トラフィックが制限されたユーザ端末30に向けて送信された複数のパケットに基づいて、当該ユーザ端末30のユーザ50が動画を頻繁に切り替える行動をとっているか否かを判定してもよい。予め定められた時間は、任意に設定可能であってよい。
【0060】
判定結果出力部330は、判定部310による判定結果をトラフィック制御部430に送信してよい。トラフィック制御部430は、判定結果が、当該ユーザ端末30のユーザ50が動画を頻繁に切り替える行動をとっていないことを示す場合、当該ユーザ端末30に対する通信トラフィックの制限を解除してよい。これにより、動画を頻繁に切り替えながら希望の動画を探していたユーザ50が、希望の動画を発見して当該動画の閲覧を始めた場合に、通信トラフィックの制限が継続してしまうことを防止できる。
【0061】
図4は、学習制御装置200による処理の流れの一例を概略的に示す。図4は、学習制御装置200がいわゆる教師有学習を実行する場合の処理の一例を示す。ここでは、動画を頻繁に切り替える行動を特定のユーザ50に行わせて、当該特定のユーザ50のユーザ端末30に向けて送信された暗号化パケットをパケットログ送信部420がパケットログ受信部210に送信することによって、教師有学習を実現する場合について説明する。
【0062】
S402では、パケットログ受信部210が、複数の暗号化パケットを受信する。パケットログ受信部210は、受信した複数の暗号化パケットを学習データ生成部220に送信する。
【0063】
S404では、学習データ生成部220が、複数の暗号化パケットからヘッダ情報を抽出する。学習データ生成部220はさらに、複数の暗号化パケットからパケット間隔を抽出してもよい。
【0064】
S406では、学習データ生成部220が、学習データを生成すべく、ヘッダ情報を変換する。学習データ生成部220は、例えば、ヘッダ情報を0/1表記のデータに変換する。学習データ生成部220はさらに、パケット間隔を0/1表記のデータに変換してもよい。
【0065】
S408では、学習データ生成部220が、学習に用いる学習データと、学習モデルをテストするためのテストデータとを生成する。学習データ生成部220は、S406において変換したデータを結合することによって学習データを生成してよい。また、学習データ生成部220は、学習データを複製することによってテストデータを生成してよい。学習データ生成部220は、生成した学習データ及びテストデータを学習モデル生成部230に入力する。
【0066】
S410では、学習モデル生成部230が、学習データ生成部220によって入力された学習データを用いて学習を実行し、学習モデルを生成する。S412では、学習モデル生成部230が、学習済の学習モデルを用いて、テストデータをテストする。
【0067】
S414では、学習モデル生成部230が、S412において実行したテストの正解率が予め定められた閾値より高いか否かを判定する。高くないと判定した場合、S416に進み、高いと判定した場合、S418に進む。
【0068】
S416では、学習モデル生成部230が、正解率を向上すべく学習モデル内のパラメータを変更する。そして、S410に戻って、学習モデル生成部230が、学習用データを用いて学習を実行する。
【0069】
S418では、学習モデル生成部230が、学習モデルを確定する。S420では、学習モデル生成部230が、学習が完了したか否かを判定する。学習モデル生成部230は、例えば、学習制御装置200のオペレータによる学習完了指示を受領していた場合、学習が完了したと判定する。完了していないと判定した場合、S402に戻り、完了したと判定した場合、処理を終了する。
【0070】
図5は、学習制御装置200及び行動判定装置300による処理の流れの一例を概略的に示す。図5は、学習制御装置200がいわゆる半教師有学習を実行する場合の処理の一例を示す。ここでは、学習制御装置200が、図4に示す処理によって少数の学習データから学習モデルを生成し、当該学習モデルを行動判定装置300が格納した状態を開始状態として説明する。
【0071】
S502では、パケットログ受信部320が、パケットログ送信部420から複数の暗号化パケットを受信する。パケットログ送信部420は、例えば、トラフィック送受信部410が中継する暗号化パケットのうち、送信元が動画配信サイト40である暗号化パケットをパケットログ受信部320に送信する。パケットログ受信部320は、受信した複数の暗号化パケットを判定部310に送信する。
【0072】
S504では、判定部310が、複数の暗号化パケットからヘッダ情報を抽出する。判定部310はさらに、複数の暗号化パケットからパケット間隔を抽出してもよい。
【0073】
S506では、判定部310が、ヘッダ情報を変換する。判定部310は、例えば、ヘッダ情報を0/1表記のデータに変換する。判定部310はさらに、パケット間隔を0/1表記のデータに変換してよい。判定部310は、複数の暗号化パケットの送信先毎に、連続する暗号化パケットの当該データを結合することによって、判定用の判定データを生成する。
【0074】
S508では、判定部310が、判定データ及び学習モデルを用いて、ユーザ端末30のユーザ50が、動画を頻繁に切り替える行動をとっているか否かを判定する。判定部310は、閲覧する動画を頻繁に切り替える行動をとっている確度と、閲覧する動画を頻繁に切り替える行動をとっていない確度との比率を導出してよい。
【0075】
S510では、判定部310が、動画を頻繁に切り替える行動をとっている確度が、予め定められた閾値より高いか否かを判定する。高いと判定した場合、S512に進み、高いと判定しなかった場合、S514に進む。
【0076】
S512では、判定部310が、判定データを、学習用のサンプルとして保存する。判定部310は、保存したデータを学習モデル生成部230に送信してよい。S514では、判定結果出力部330が、判定結果をトラフィック制御部430に送信する。
【0077】
S516では、学習モデル生成部230が、学習用サンプルを用いて学習するか否かを判定する。学習モデル生成部230は、例えば、学習用サンプルの数が予め定められた数より多い場合、学習すると判定する。学習モデル生成部230が学習すると判定した場合、S518に進み、学習しないと判定した場合、S520に進む。S518では、学習モデル生成部230が、学習用サンプルを用いて学習を実行する。
【0078】
S520では、学習モデル生成部230が、学習が完了したか否かを判定する。学習モデル生成部230は、例えば、学習制御装置200のオペレータによる学習完了指示を受領していた場合、学習が完了したと判定する。完了していないと判定した場合、S502に戻り、完了したと判定した場合、処理を終了する。
【0079】
図6は、パケット間隔テーブル241の一例を概略的に示す。パケット間隔テーブル241は、パケット間隔の複数の範囲毎に割り当てられた0/1表記のデータを含む。パケット間隔の複数の範囲には、それぞれ異なる0/1表記のデータが割り当てられる。図6では、0から最大値の間を5つの範囲に分割した場合のパケット間隔テーブル241を例示している。最大値は任意に設定されてよい。各範囲も、任意に設定されてよい。また、範囲の数は5つに限らず、他の数であってもよい。学習データ生成部220及び判定部310は、パケット間隔テーブル241を参照して、パケット間隔を0/1表記のデータに変換してよい。
【0080】
動画を継続して閲覧する場合、動画のダウンロードが継続して行われることになり、ビットレートが高い傾向がある。よって、パケット間隔は狭い傾向がある。閲覧する動画を頻繁に切り替える場合、ユーザ端末30と動画配信サイト40との間に頻繁にセッションが確立されることになる。セッションを確立するときは、動画をダウンロードするときに比べてビットレートが低くなる。よって、パケット間隔は広い傾向がある。
【0081】
したがって、判定データに含まれる複数のパケット間隔の平均値がより大きいほど、動画を頻繁に切り替える行動をとっている可能性が高いと推定できる。このため、学習のパラメータとしてパケット間隔を用いることによって、動画を頻繁に切り替える行動をとっているか否かをより正確に判定できる学習モデルを生成することができる。
【0082】
図7は、ソースアドレステーブル242の一例を概略的に示す。ソースアドレステーブル242は、複数のソースアドレス毎に割り当てられた0/1表記のデータを含む。複数のソースアドレスには、それぞれ異なる0/1表記のデータが割り当てられる。ソースアドレステーブル242には、ユーザ端末30が動画を受信する場合にあり得るソースアドレスが登録されてよい。学習データ生成部220及び判定部310は、ソースアドレステーブル242を参照して、ソースアドレスを0/1表記のデータに変換してよい。
【0083】
動画を継続して閲覧する場合、ソースアドレスは変化しない。閲覧する動画を頻繁に切り替える場合、ソースアドレスが頻繁に切り替わる。すなわち、閲覧する動画を頻繁に切り替える場合、動画を継続して閲覧する場合に比べて、ソースアドレスの切り替わりが判定データに含まれる可能性が高い。
【0084】
したがって、判定データにソースアドレスの切り替わりが含まれる方が、含まれない場合に比べて動画を頻繁に切り替える行動をとっている可能性が高いと推定できる。このため、学習のパラメータとしてソースアドレスを用いることによって、動画を頻繁に切り替える行動をとっているか否かをより正確に判定できる学習モデルを生成することができる。
【0085】
図8は、プロトコル種別テーブル243の一例を概略的に示す。プロトコル種別テーブル243は、複数のプロトコル種別毎に割り当てられた0/1表記のデータを含む。複数のプロトコル種別には、それぞれ異なる0/1表記のデータが割り当てられる。学習データ生成部220及び判定部310は、プロトコル種別テーブル243を参照して、プロトコル種別を0/1表記のデータに変換してよい。
【0086】
ユーザ端末30が動画配信サイト40から動画の取得を開始するときや動画を切り替えるときには、暗号化のセッションが確立されるので、SSL及びTLS等の暗号化プロトコルのパケットが送受信される。一方、ユーザ端末30が動画配信サイト40から動画をダウンロードしている間は、TCPのパケットが送受信される。
【0087】
したがって、判定データに暗号化プロトコルが含まれる方が、含まれない場合に比べて、動画を頻繁に切り替える行動をとっている可能性が高いと推定できる。このため、学習のパラメータとしてプロトコル種別を用いることによって、動画を頻繁に切り替える行動をとっているか否かをより正確に判定できる学習モデルを生成することができる。
【0088】
図9は、フラグ種別テーブル244の一例を概略的に示す。フラグ種別テーブル244は、複数のフラグ種別毎に割り当てられた0/1表記のデータを含む。複数のフラグ種別には、それぞれ異なる0/1表記のデータが割り当てられる。学習データ生成部220及び判定部310は、フラグ種別テーブル244を参照して、フラグ種別を0/1表記のデータに変換してよい。
【0089】
フラグ種別には、例えば、ENDフラグが含まれる。ENDフラグは、ユーザ端末30が動画配信サイト40から動画をダウンロードする場合に、その動画の全てのデータがダウンロードされたときに、動画配信サイト40からユーザ端末30に送信される。すなわち、ENDフラグが含まれる場合、動画を最後まで閲覧していることになる。
【0090】
したがって、判定データにENDフラグのパケットが含まれる方が、含まれない場合に比べて、動画を頻繁に切り替える行動をとっていない可能性が高いと推定できる。このため、学習のパラメータとしてフラグ種別を用いることによって、動画を頻繁に切り替える行動をとっているか否かをより正確に判定できる学習モデルを生成することができる。
【0091】
図10は、ウィンドウサイズテーブル245の一例を概略的に示す。ウィンドウサイズテーブル245は、TCPのウィンドウサイズの複数の範囲毎に割り当てられた0/1表記のデータを含む。ウィンドウサイズの複数の範囲には、それぞれ異なる0/1表記のデータが割り当てられる。図10では、0から最大値の間を5つの範囲に分割した場合のウィンドウサイズテーブル245を例示している。最大値は任意に設定されてよい。各範囲も、任意に設定されてよい。また、範囲の数は5つに限らず、他の数であってもよい。学習データ生成部220及び判定部310は、ウィンドウサイズテーブル245を参照して、ウィンドウサイズを0/1表記のデータに変換してよい。
【0092】
動画を継続して閲覧していると、ウィンドウサイズは徐々に増加していく。例えば、動画を継続して閲覧していると、ウィンドウサイズの比率が例えば、2、4、8、・・・と増加していく。閲覧する動画を切り替えると、ウィンドウサイズはリセットされるので、閲覧する動画を頻繁に切り替えると、ウィンドウサイズは小さいままとなる。
【0093】
したがって、判定データに大きなウィンドウサイズが含まれる場合、含まれない場合に比べて、動画を継続して閲覧している可能性が高いと推定できる。また、判定データに含まれるウィンドウサイズの平均値がより大きい方が、動画を継続して閲覧している可能性が高いと推定できる。このため、学習のパラメータとしてウィンドウサイズを用いることによって、動画を頻繁に切り替える行動をとっているか否かをより正確に判定できる学習モデルを生成することができる。
【0094】
図11は、行動判定装置300及びゲートウェイ装置400による処理の流れの一例を概略的に示す。ここでは、閲覧する動画を頻繁に切り替える行動をとっているユーザ50のユーザ端末30に対するトラフィック流量を規制する場合の処理の流れについて説明する。判定部310は、学習モデル生成部230によって生成された閲覧する動画を頻繁に切り替える行動をとっているか否かを判定するための学習モデルを予め格納する。
【0095】
S1102では、トラフィック送受信部410が暗号化パケットを受信する。S1104では、受信した暗号化パケットが動画パケットであるか否かをトラフィック送受信部410が判定する。トラフィック送受信部410は、例えば、ソースアドレスが動画配信サイト40を示す場合に、動画パケットであると判定する。
【0096】
動画パケットであると判定した場合、トラフィック送受信部410は、暗号化パケットをパケットログ送信部420に送信する。パケットログ送信部420は、暗号化パケットをパケットログ受信部320に送信する。パケットログ受信部320は、受信した暗号化パケットを判定部310に送信する。判定部310は、ユーザ端末30毎に、受信した暗号化パケットの数が予め定められた数に達した場合、判定データを生成する。
【0097】
判定データを生成した場合(S1106でYES)、S1108に進み、判定データを生成していない場合(S1106でNO)、S1112に進む。S1108では、判定部310が、判定データ及び学習モデルを用いて、S1106において生成された判定データに対応するユーザ50が、閲覧する動画を頻繁に切り替える行動をとっているか否かを判定する。判定部310は、判定結果をトラフィック制御部430に送信してよい。閲覧する動画を頻繁に切り替える行動をとっていると判定した場合、S1110に進み、とっていないと判定した場合、S1112に進む。
【0098】
S1110では、トラフィック制御部430が、S1106において生成された判定データに対応するユーザ50のユーザ端末30を、トラフィック流量を規制する対象として登録する。トラフィック制御部430は、トラフィック流量を規制する対象として登録されているユーザ端末30に対して、トラフィック流量の規制を行う。
【0099】
S1112では、判定処理を終了するか否かを判断する。例えば、行動判定装置300のオペレータから判定処理の終了指示を受領していた場合、判定処理を終了すると判断する。判定処理を終了しないと判断した場合、S1102に戻り、判定処理を終了すると判断した場合、判定処理を終了する。
【0100】
図12は、行動判定装置300及びゲートウェイ装置400による処理の流れの一例を概略的に示す。ここでは、データ量の多い動画を閲覧する行動をとっているユーザ50のユーザ端末30に対するトラフィック流量を規制する場合の処理の流れについて説明する。判定部310は、学習モデル生成部230によって生成された、データ量の多い動画を閲覧する行動をとっているか否かを判定するための学習モデルを予め格納する。
【0101】
S1202では、トラフィック送受信部410が暗号化パケットを受信する。S1204では、受信した暗号化パケットが動画パケットであるか否かをトラフィック送受信部410が判定する。
【0102】
動画パケットであると判定した場合、トラフィック送受信部410は、暗号化パケットをパケットログ送信部420に送信する。パケットログ送信部420は、暗号化パケットをパケットログ受信部320に送信する。パケットログ受信部320は、受信した暗号化パケットを判定部310に送信する。判定部310は、ユーザ端末30毎に、受信した暗号化パケットの数が予め定められた数に達した場合、判定データを生成する。
【0103】
判定データを生成した場合(S1206でYES)、S1208に進み、判定データを生成していない場合(S1206でNO)、S1212に進む。S1208では、判定部310が、判定データ及び学習モデルを用いて、S1206において生成された判定データに対応するユーザ50が、データ量の多い動画を閲覧する行動をとっているか否かを判定する。判定部310は、判定結果をトラフィック制御部430に送信してよい。データ量の多い動画を閲覧する行動をとっていると判定した場合、S1210に進み、とっていないと判定した場合、S1212に進む。
【0104】
S1210では、トラフィック制御部430が、S1206において生成された判定データに対応するユーザ50のユーザ端末30を、トラフィック流量を規制する対象として登録する。トラフィック制御部430は、トラフィック流量を規制する対象として登録されているユーザ端末30に対して、トラフィック流量の規制を行う。
【0105】
S1212では、判定処理を終了するか否かを判断する。例えば、行動判定装置300のオペレータから判定処理の終了指示を受領していた場合、判定処理を終了すると判断する判定処理を終了しないと判断した場合、S1202に戻り、判定処理を終了すると判断した場合、判定処理を終了する。
【0106】
図13は、行動判定装置300及びゲートウェイ装置400による処理の流れの一例を概略的に示す。ここでは、規制対象の動画を閲覧する行動をとっているユーザ50のユーザ端末30に対するパケットを破棄する場合の処理の流れについて説明する。判定部310は、学習モデル生成部230によって生成された、規制対象の動画を閲覧する行動をとっているか否かを判定するための学習モデルを予め格納する。
【0107】
S1302では、トラフィック送受信部410が暗号化パケットを受信する。S1304では、受信した暗号化パケットが動画パケットであるか否かをトラフィック送受信部410が判定する。
【0108】
動画パケットであると判定した場合、トラフィック送受信部410は、暗号化パケットをパケットログ送信部420に送信する。パケットログ送信部420は、暗号化パケットをパケットログ受信部320に送信する。パケットログ受信部320は、受信した暗号化パケットを判定部310に送信する。判定部310は、ユーザ端末30毎に、受信した暗号化パケットの数が予め定められた数に達した場合、判定データを生成する。
【0109】
判定データを生成した場合(S1306でYES)、S1308に進み、判定データを生成していない場合(S1306でNO)、S1312に進む。S1308では、判定部310が、判定データ及び学習モデルを用いて、S1306において生成された判定データに対応するユーザ50が、規制対象の動画を閲覧する行動をとっているか否かを判定する。判定部310は、判定結果をトラフィック制御部430に送信してよい。規制対象の動画を閲覧する行動をとっていると判定した場合、S1310に進み、とっていないと判定した場合、S1312に進む。
【0110】
S1310では、トラフィック制御部430が、S1306において生成された判定データに対応するユーザ50のユーザ端末30を、パケットを破棄する対象として登録する。トラフィック制御部430は、トラフィック送受信部410に、パケットを破棄する対象として登録されているユーザ端末30に対するパケットを破棄させる。
【0111】
S1312では、判定処理を終了するか否かを判断する。例えば、行動判定装置300のオペレータから判定処理の終了指示を受領していた場合、判定処理を終了すると判断する判定処理を終了しないと判断した場合、S1302に戻り、判定処理を終了すると判断した場合、判定処理を終了する。
【0112】
図14は、行動判定装置300として機能するコンピュータ1000の一例を概略的に示す。本実施形態に係るコンピュータ1000は、ホストコントローラ1092により相互に接続されるCPU1010、RAM1030、及びグラフィックコントローラ1085を有するCPU周辺部と、入出力コントローラ1094によりホストコントローラ1092に接続されるROM1020、通信I/F1040、ハードディスクドライブ1050、DVDドライブ1070及び入出力チップ1080を有する入出力部を備える。
【0113】
CPU1010は、ROM1020及びRAM1030に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ1085は、CPU1010などがRAM1030内に設けたフレーム・バッファ上に生成する画像データを取得し、ディスプレイ1090上に表示させる。これに代えて、グラフィックコントローラ1085は、CPU1010などが生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【0114】
通信I/F1040は、有線又は無線によりネットワークを介して他の装置と通信する。また、通信I/F1040は、通信を行うハードウエアとして機能する。ハードディスクドライブ1050は、CPU1010が使用するプログラム及びデータを格納する。DVDドライブ1070は、DVD−ROM1072からプログラム又はデータを読み取り、RAM1030を介してハードディスクドライブ1050に提供する。
【0115】
ROM1020は、コンピュータ1000が起動時に実行するブート・プログラム及びコンピュータ1000のハードウエアに依存するプログラムなどを格納する。入出力チップ1080は、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポートなどを介して各種の入出力装置を入出力コントローラ1094へと接続する。
【0116】
RAM1030を介してハードディスクドライブ1050に提供されるプログラムは、DVD−ROM1072、又はICカードなどの記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、RAM1030を介してハードディスクドライブ1050にインストールされ、CPU1010において実行される。
【0117】
コンピュータ1000にインストールされ、コンピュータ1000を行動判定装置300として機能させるプログラムは、CPU1010などに働きかけて、コンピュータ1000を、行動判定装置300の各部としてそれぞれ機能させてよい。これらのプログラムに記述された情報処理は、コンピュータ1000に読込まれることにより、ソフトウエアと上述した各種のハードウエア資源とが協働した具体的手段である判定部310、パケットログ受信部320、及び判定結果出力部330として機能する。行動判定装置300が、学習制御装置200としても機能する場合、これらのプログラムに記述された情報処理は、コンピュータ1000に読込まれることにより、ソフトウエアと上述した各種のハードウエア資源とが協働した具体的手段であるパケットログ受信部210及びパケットログ受信部320、学習データ生成部220、学習モデル生成部230、判定部310、並びに判定結果出力部330として機能する。行動判定装置300が、さらにトラフィック制御部430としても機能する場合、これらのプログラムに記述された情報処理は、コンピュータ1000に読込まれることにより、ソフトウエアと上述した各種のハードウエア資源とが協働した具体的手段であるパケットログ受信部210及びパケットログ受信部320、学習データ生成部220、学習モデル生成部230、判定部310、判定結果出力部330、並びにトラフィック制御部430として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1000の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の行動判定装置300が構築される。
【0118】
上記実施形態では、暗号化パケットを復号化せずに取得できる情報に基づいて学習及び判定を実行する例を主に挙げて説明したが、これに限らない。本実施形態に係る学習制御装置200、行動判定装置300及びゲートウェイ装置400は、暗号化されていないパケットに基づいて学習及び判定を実行してもよい。この場合、学習制御装置200、行動判定装置300及びゲートウェイ装置400は、複数のパケットのヘッダ情報、ペイロード、及びパケット間隔等を用いて、学習及び判定を実行する。
【0119】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0120】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【0121】
10 モバイルネットワーク、12 基地局、20 インターネット、30 ユーザ端末、40 動画配信サイト、50 ユーザ、100 制御システム、200 学習制御装置、210 パケットログ受信部、220 学習データ生成部、230 学習モデル生成部、241 パケット間隔テーブル、242 ソースアドレステーブル、243 プロトコル種別テーブル、244 フラグ種別テーブル、245 ウィンドウサイズテーブル、300 行動判定装置、310 判定部、320 パケットログ受信部、330 判定結果出力部、400 ゲートウェイ装置、410 トラフィック送受信部、420 パケットログ送信部、430 トラフィック制御部、1000 コンピュータ、1010 CPU、1020 ROM、1030 RAM、1040 通信I/F、1050 ハードディスクドライブ、1070 DVDドライブ、1072 DVD−ROM、1080 入出力チップ、1085 グラフィックコントローラ、1090 ディスプレイ、1092 ホストコントローラ、1094 入出力コントローラ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14