WO2019159822A1 - アクセス元分類装置、アクセス元分類方法及びプログラム - Google Patents

アクセス元分類装置、アクセス元分類方法及びプログラム Download PDF

Info

Publication number
WO2019159822A1
WO2019159822A1 PCT/JP2019/004500 JP2019004500W WO2019159822A1 WO 2019159822 A1 WO2019159822 A1 WO 2019159822A1 JP 2019004500 W JP2019004500 W JP 2019004500W WO 2019159822 A1 WO2019159822 A1 WO 2019159822A1
Authority
WO
WIPO (PCT)
Prior art keywords
access
service
services
user
access source
Prior art date
Application number
PCT/JP2019/004500
Other languages
English (en)
French (fr)
Inventor
友香 駒井
小林 正裕
薫明 原田
石橋 圭介
川原 亮一
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to US16/965,803 priority Critical patent/US11290384B2/en
Publication of WO2019159822A1 publication Critical patent/WO2019159822A1/ja

Links

Images

Classifications

    • 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
    • H04L47/2408Traffic characterised by specific attributes, e.g. priority or QoS for supporting different services, e.g. a differentiated services [DiffServ] type of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • 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
    • 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/0882Utilisation of link capacity
    • 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
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification

Definitions

  • the present invention relates to an access source classification device, an access source classification method, and a program.
  • DPI Deep Packet Inspection
  • HTTP communication HyperText Transfer Protocol
  • the user terminal type can be identified by referring to the user agent included in the header.
  • DPI is a method for referring to a data storage area (payload) in communication
  • a service contract or the like depending on a network operator
  • the payload is encrypted such as HTTPS communication, it is difficult to refer to the user agent by DPI.
  • Non-Patent Document 1 a method for collecting DNS queries and estimating the number of terminals equipped with a specific OS (Operating System) has been proposed (see, for example, Non-Patent Document 1).
  • This method monitors DNS traffic in the vicinity of a DNS server in the network without arranging devices for network monitoring throughout, and uses the characteristics of each OS found in the DNS query to determine the number of terminals for each installed OS. Is estimated.
  • Each OS has a unique domain in which other OSs do not send DNS queries, and DNS queries for the domains are transmitted at regular time intervals. Therefore, the estimation of the number of terminals equipped with a specific OS is performed based on the transmission cycle of the domain peculiar to the OS grasped beforehand. At this time, the number of terminals can be estimated even when the transmission cycle deviates from what was assumed.
  • Non-Patent Document 1 it is necessary to grasp the OS-specific domain in advance. Further, in the method of Non-Patent Document 1, it is necessary to obtain a transmission period of a specific domain in advance and use it as a parameter. However, in Non-Patent Document 1, even if the OS is the same, the transmission period varies depending on the manufacturing vendor. Therefore, it is necessary to investigate the transmission cycle for all types of terminals to be estimated. As a result, it is necessary to conduct a preliminary survey of all the terminals to be specified and an additional survey each time a new terminal appears due to the start of the release of a new product, such as the method described in Non-Patent Document 1. Identification based on a 100% survey is inefficient.
  • the present invention has been made in view of the above points, and an object thereof is to support the specific efficiency of the terminal type of the access source to the service.
  • the access source classification device is based on a set of access logs indicating access to any one of a plurality of services by any access source of the plurality of access sources,
  • a first calculation unit that calculates a statistic regarding access to each service by each access source; and for each service, based on the access log related to the service, an access status of the service by the access source
  • An index value indicating distribution is calculated, and based on the index value calculated for each service, an extraction unit that extracts some services from the plurality of services, and a clustering method is applied to the statistics
  • a second calculation unit that calculates a degree of association between each access source and each service extracted by the extraction unit; and based on the degree of association
  • a classification unit which classifies the one of the groups the access source to any of the services that are extracted, which each include one or more access source by the extraction unit.
  • FIG. 4 is a diagram illustrating an operation example of a traffic collection device 20.
  • FIG. It is a figure which shows the hardware structural example of the analyzer 10 in embodiment of this invention. It is a figure which shows the function structural example of the analyzer 10 in embodiment of this invention.
  • 4 is a flowchart for explaining an example of a processing procedure executed by the analysis apparatus 10. It is a figure which shows an example of a two-dimensional arrangement
  • Each term of “communication” or “traffic” is synonymous with “communication traffic” and refers to communication data flowing on a network.
  • Terminal type refers to an operation system (OS) installed in a terminal (a user terminal 30 described later) that is an access source to the service or a form of the user terminal 30 (desktop PC, notebook PC, mobile terminal, etc.). That means.
  • OS operation system
  • DNS query refers to an inquiry when the user terminal 30 performs name resolution (processing to obtain a corresponding IP address from a domain name using DNS) from a DNS (Domain Name System) server.
  • Access refers to the occurrence of communication in the user terminal 30.
  • Service means a service provided by a content distributor.
  • a content service provider (CSP) is provided by a server.
  • the access source is classified based on the similarity of the terminal type by analyzing the access log to the service observed during a certain period based on the correlation between the access source and the service used.
  • the terminal type of the user terminal 30 used by the user can be specified or estimated. Specifically, by grouping with the same access source of the terminal type, even if the number of access sources is very large, it is possible to grasp the behavior of the entire group by following the characteristics of some access sources in the group.
  • FIG. 1 is a diagram showing a system configuration example according to an embodiment of the present invention.
  • a plurality of user terminals 30 such as a user terminal 30a, a user terminal 30b, and a user terminal 30c are connected to a DNS cache server 40 and one or more content servers 50 via a network such as a LAN (Local Area Network) or the Internet.
  • the DNS cache server 40 is a general DNS cache server 40.
  • the content server 50 is a computer that provides a service to the user terminal 30.
  • One content server 50 may provide a plurality of services.
  • the traffic collection device 20 is arranged so that communication traffic between the user terminal 30 and the DNS cache server 40 or the content server 50 can be referred to.
  • the traffic collection device 20 collects and accumulates a communication log (hereinafter referred to as “access log”) including, for example, access from the user terminal 30 to a service (content server 50).
  • the service access log is not limited to a log related to direct traffic to the service.
  • a DNS query log, a DNS cache log, or the like may be used as the access log.
  • the traffic collection device 20 may be inserted on a network line connecting the user terminal 30, the DNS cache server 40, and the content server 50, such as a network gateway device, or by a method such as a tap or a mirror. You may install by the form attached externally.
  • the collection location of the access log is not particularly limited as long as the conditions including communication between the user terminal 30 and the server are satisfied.
  • the access log may be collected in the content server 50 or the DNS cache server 40. That is, these servers may also serve as the traffic collection device 20.
  • the analysis device 10 is connected to the traffic collection device 20 via a network such as a LAN or the Internet.
  • the analysis device 10 analyzes with reference to the access log stored in the traffic collection device 20, and outputs the analysis result.
  • a network such as a LAN or the Internet.
  • the analysis device 10 analyzes with reference to the access log stored in the traffic collection device 20, and outputs the analysis result.
  • the traffic collection device 20 and the analysis device 10 are configured as separate devices.
  • the traffic collection device 20 and the analysis device 10 are the same general-purpose computing device (computer). It may be realized using.
  • FIG. 2 is a diagram illustrating an operation example of the traffic collection device 20.
  • the traffic collection device 20 collects and accumulates access logs while not affecting any communication between networks.
  • the access log recording destination is assumed to be the main memory or recording device of the traffic collection device 20, but is arbitrary. In this embodiment, it is assumed that access logs are collected in the following format.
  • the time stamp is the date and time when the user terminal 30 accesses the service.
  • the user ID is an identifier of the access source user terminal 30 (for example, an IP address).
  • the user ID and the user terminal 30 are not necessarily one-to-one.
  • the same IP address may be shared by a plurality of user terminals 30.
  • such a situation is also allowed.
  • the service name is an identifier of the service to be accessed.
  • host names are examples of HTTP traffic
  • FQDNs Full Qualified Domain Name
  • the observed value is a value that can be observed when the user terminal 30 accesses the service.
  • this observation value is arbitrary, and it is also possible to omit the observation value and use it as an access log.
  • FIG. 3 is a diagram illustrating a hardware configuration example of the analysis apparatus 10 according to the embodiment of the present invention.
  • the analysis device 10 in FIG. 3 includes a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, an interface device 105, and the like that are connected to each other via a bus B.
  • a program that realizes processing in the analysis apparatus 10 is provided by a recording medium 101 such as a CD-ROM.
  • the recording medium 101 storing the program is set in the drive device 100, the program is installed from the recording medium 101 to the auxiliary storage device 102 via the drive device 100.
  • the program need not be installed from the recording medium 101 and may be downloaded from another computer via a network.
  • the auxiliary storage device 102 stores the installed program and also stores necessary files and data.
  • the memory device 103 reads the program from the auxiliary storage device 102 and stores it when there is an instruction to start the program.
  • the CPU 104 executes a function related to the analysis device 10 according to a program stored in the memory device 103.
  • the interface device 105 is used as an interface for connecting to a network.
  • FIG. 4 is a diagram illustrating a functional configuration example of the analysis apparatus 10 according to the embodiment of the present invention.
  • the analysis apparatus 10 includes a preprocessing unit 11 and an analysis unit 12. Each of these units is realized by processing executed by the CPU 104 by one or more programs installed in the analysis apparatus 10.
  • the pre-processing unit 11 processes the access log into data suitable for analysis for the purpose of classifying and specifying the terminal type of each user ID.
  • the analysis unit 12 analyzes the processed data as input data and clusters user IDs.
  • FIG. 5 is a flowchart for explaining an example of a processing procedure executed by the analysis apparatus 10.
  • T is an arbitrary numerical value set in advance by a person who performs analysis. As T is shorter, the user terminal 30 used in the corresponding time zone can be grasped. However, if the user has a plurality of user terminals 30 but is not used at the same time in T, it is insufficient in terms of comprehensively grasping the user terminals 30 used by the user. On the other hand, if T is lengthened, it can be considered that a user can use a plurality of terminals. However, the amount of data required increases and the cost for collection and analysis increases.
  • T may be determined in consideration of periodicity such as one day or one week.
  • the preprocessing unit 11 extracts an access log group to be analyzed from the set of acquired access logs (S102).
  • the service In order to cluster access sources based on the terminal type of the access source to the service, it is effective to use the service access log only for services related to the terminal type.
  • the services include services that are accessed from a plurality of different terminal types and have a low association with a specific terminal type. By excluding access logs related to such services from the set of acquired access logs, it is possible to expect an improvement in clustering accuracy.
  • the service related to the terminal type includes, for example, services related to OS update programs and NTP (Network Time Protocol), and is considered to be a service that the terminal is accessing autonomously in many cases.
  • services that are not related to the terminal type are accessed from a plurality of different terminal types, for example, a search service, an SNS (Social Networking Service), etc., and a service that the user intends to use (access) In other words, it is often considered that the service is strongly related to user behavior.
  • the number of accesses to the service and the access interval within a certain period (T), such as accessing at a certain interval, are likely to be the same between user IDs.
  • T a certain period
  • the number of accesses and the interval may vary greatly depending on the user (the service usage varies depending on the user). From this, the strength of the association between the service and the terminal type can be estimated from the number of accesses and the distribution of intervals for each user ID for each service.
  • the preprocessing unit 11 extracts an access log including the service name (referred to as “service name z”) for each service name from the acquired set of access logs. Separately, the access count (or interval) h zr (r: each user ID that accesses the service z) is calculated.
  • the pre-processing unit 11 is an example of an index value indicating the distribution of access status by service ID z by user ID (by access source) based on the distribution of h zr calculated by service ID for each user ID.
  • the value ⁇ z is calculated.
  • the feature value ⁇ z may be, for example, variance or standard deviation.
  • the preprocessing unit 11 When ⁇ z is equal to or smaller than the threshold value y, the preprocessing unit 11 adds an access log including the service name z to the “access log group”.
  • the threshold value y is determined in advance, and for example, the calculated median value of all ⁇ z may be used.
  • the preprocessing unit 11 Based on the extracted access log group, the preprocessing unit 11 generates a two-dimensional array that represents the relationship between the user terminal 30 (strictly, a user ID) and the service (S103).
  • the two-dimensional array is data in which the user ID of each user terminal 30 is an item on the vertical axis, each service name is an item on the horizontal axis, and statistics obtained from the access log group are elements.
  • the service used by the user terminal 30 is considered to have a feature or pattern associated (correlated) with the terminal type, and an array element suitable for clustering user terminals 30 (user IDs) close to each other in this pattern Need to be calculated.
  • the statistic v for a certain service s of a certain user ID u may be calculated by any of the following methods (1) to (3), for example.
  • count () is the number of corresponding access logs.
  • sum () is the sum of the corresponding values.
  • (1) represents the presence / absence of access to a service having the user ID as an access source by 1/0.
  • (2) is the number of accesses to a service having the user ID as an access source.
  • (3) is a total value (traffic amount) of traffic generated when using a service whose user ID is an access source.
  • FIG. 6 is a diagram illustrating an example of a two-dimensional array.
  • FIG. 6 shows an example of a two-dimensional array generated by the above method (1).
  • the IP address of the user terminal 30 is an example of a user ID
  • FQDN is an example of a service name.
  • the preprocessing unit 11 extracts only n services having a relatively large sum of statistics (S104). If the number of types of services is very large, problems such as an increase in calculation time required for analysis and difficulty in interpretation of analysis results may occur. Therefore, it is effective to extract and analyze useful data in advance when clustering user IDs based on features and patterns associated with terminal types. In other words, the number of services to be analyzed should be reduced. The number n of services to be analyzed can be arbitrarily determined.
  • n is determined by introducing a user coverage C that represents the ratio of user IDs that are access sources to p or more services for the service.
  • n is determined so that the user coverage ratio C is equal to or greater than a predetermined threshold threshold.
  • Step S104 is not an essential process, but it is considered that the data size can be reduced and analyzed effectively. Therefore, when only a service with many types of services and many statistics can cover many users. Recommended to do.
  • the first line means that the two-dimensional arrays A, k, p, and threshold shown in FIG. 6 are given (
  • the second line means that the columns of the two-dimensional array are sorted in descending order of the sum of the elements of each column.
  • the third line means that the variable i is initialized with k and the user coverage C is initialized with 0.
  • the 4th line means that the 5th to 7th lines are repeated while C is less than threshold.
  • count each value in k th ⁇ i th services> 0
  • count means counting the number of values greater than 0 in the k-th to i-th services (columns).
  • users count (value in k th ⁇ i th services> 0) ⁇ p)” means that the number of user IDs whose counted value is greater than or equal to p is counted.
  • C count users (count (each value in k th ⁇ i th services> 0) ⁇ p) / N” substitutes the value obtained by dividing the count result of the number of user IDs by N.
  • the sixth line means that the i-th service (column) in the two-dimensional array A is added to the two-dimensional array A ′.
  • the seventh line means that 1 is added to i.
  • step S102 Since step S102 is independent of step S103 and step S104, step S102 may be performed after step S104 is performed.
  • the set access log groups of all the access log acquired in step S101, after performing the steps S103 and S104, and calculates a feature value sigma z which describes the steps S102, among the 2-dimensional array A 'sigma z Only a column having a service name z in which is less than or equal to y may be extracted.
  • the analysis unit 12 applies the clustering method using the data processed in the preprocessing unit 11 (two-dimensional array A ′ in the pseudo code) as input data (S105).
  • any method can be applied as long as it can group user IDs using a two-dimensional array as an input, such as factor analysis and NMF (Non-negative Matrix Factorization).
  • factor analysis for example, “Survey“ on Independent ”Component“ Analysis ”,“ Aapo ”Hyvarinen,“ Neural ”Computing“ Surveys ”2,“ pp. ”94-128,“ 1999 ”may be referred to.
  • NMF for example, “Document Clustering Based on Non-negative Matrix Factorization, Wei Xu, Xin Liu, and Yihong Gong, Proc. Of Int'l ACM SIGIR Conf. -273, 2003. "etc. may be used as a reference.
  • FIG. 7 is a diagram showing an example of the output result of the clustering method. That is, FIG. 7 shows an example of data output in step S105. As shown in FIG. 7, the output result (calculation result) of the clustering method represents the degree of association between the user ID and an arbitrary number of factors (groups) in a two-dimensional array. FIG. 7 shows an example of an output result when an access log of a DNS query is analyzed by factor analysis. The number of factors (number of groups) m may be determined by a method suitable for the clustering method.
  • each element with a label can be omitted (eg, synonymous with using the degree of association as it is as a label), and the replacement method is not limited to the above method.
  • the number of labels in each group is f (replaced with labels of label 0 to label f-1 ), and the degree of relevance (user j ) is set using preset threshold values b 1 to b f-1 (b j ⁇ b j + 1 ).
  • ID, group w) z and bj ⁇ z ⁇ bj + 1
  • the analysis result is a two-dimensional array with the user ID and group (factor) as axes and the elements of the array as labels (see FIG. 8).
  • the user ID clustering method based on this two-dimensional array is arbitrary. For example, user IDs having the same label in each group are clustered as the same cluster. As a result of the clustering of user IDs, it can be said that the user IDs of the same cluster have similar service usage patterns and similar terminal types.
  • FIG. 9 is a diagram illustrating an example in which user IDs having the same label are clustered as the same cluster.
  • Each element of the two-dimensional array shown in FIG. 9 is irrelevant to FIGS. 7 and 8 for convenience.
  • the labels are replaced as shown in FIG. 9, for example, user IDs related to “user IP address 1”, “user IP address 2”, and “user IP address 4” are classified into the same cluster. Further, user IDs related to “user IP address 3” and “user IP address 6” are classified into the same cluster.
  • the present embodiment by analyzing the access log to the service, it is possible to solve the problem in the prior document and cluster access sources (user IDs) having similar terminal types to be used. become able to.
  • clustering even if the number of users is very large, the behavior of the entire cluster can be grasped by following the characteristics of some users in the cluster. Therefore, it is possible to support the specific efficiency improvement of the terminal type.
  • the analysis device 10 is an example of an access source classification device.
  • the preprocessing unit 11 is an example of a first calculation unit and an extraction unit.
  • the analysis unit 12 is an example of a second calculation unit and a classification unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Algebra (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)

Abstract

アクセス元分類装置は、複数のアクセス元のうちのいずれかのアクセス元による複数のサービスのうちのいずれかのサービスへのアクセスを示すアクセスログの集合に基づいて、各アクセス元による各サービスへのアクセスに関する統計量を算出する第1の算出部と、サービスごとに、当該サービスに係るアクセスログに基づいて、アクセス元別の当該サービスへのアクセス状況の分布を示す指標値を算出し、指標値に基づいて、一部のサービスを抽出する抽出部と、統計量に対してクラスタリング手法を適用して、各アクセス元と抽出部によって抽出された各サービスとの関連度を算出する第2の算出部と、関連度に基づいて、抽出部によって抽出されたいずれかのサービスへのアクセス元を、それぞれが1以上のアクセス元を含むいずれかのグループに分類する分類部と、を有することで、サービスへのアクセス元の端末種別の特定の効率化を支援する。

Description

アクセス元分類装置、アクセス元分類方法及びプログラム
 本発明は、アクセス元分類装置、アクセス元分類方法及びプログラムに関する。
 近年、インターネットのトラヒックを扱う通信事業者等において、ネットワークの輻輳による通信品質の劣化を回避するため、ネットワークの状況を逐次監視し、適切な通信制御や設備計画を行う必要性が生じている。
 特に、適切な通信制御や設備計画を行うための根拠として、トラヒックの発生要因を詳細に把握することが重要となっている。利用端末種別によって特有のアプリケーションのアップデートやサービスの利用傾向があるため、ユーザ(クライアント)の利用端末種別を把握することはトラヒックの発生要因を把握する上で有効である。
 ユーザの利用端末種別を把握するための代表的な手法として、DPI(Deep Packet Inspection)によるトラヒック収集・分析方式が存在する。DPIは、通信のアプリケーションにおけるヘッダ情報を参照する測定方式である。特に、HTTP通信では、ヘッダに含まれるユーザ・エージェントを参照することで利用端末種別を識別できる。
 しかし、DPI装置のコストが高いため、通信トラヒック量が多い通信事業者では網羅的な監視が困難である。さらに、DPIは、通信におけるデータ格納領域(ペイロード)を参照する方式であるため、ネットワーク事業者によってはサービス約款等により実施困難なケースがあり得る。また、HTTPS通信などペイロードが暗号化されている場合には、DPIによってユーザ・エージェントを参照することが困難となる。
 上記を解決するために、DNSクエリを収集し、特定のOS(Operating System)を搭載した端末の数を推定する方式が提案されている(例えば、非特許文献1参照)。この方式は、ネットワーク監視のための装置を全域に配置することなく、ネットワーク内のDNSサーバ付近においてDNSトラヒックを監視し、DNSクエリにみられるOS毎の特徴を用いて、搭載OS毎の端末数を推定する。各OSにはそれぞれ、他のOSがDNSクエリを送信しない特有のドメインがあり、当該ドメインに対するDNSクエリは一定の時間間隔で送信される特徴がある。そのため、特定のOSを搭載した端末数の推定は、事前に把握したOS特有のドメインの送信周期に基づいて行う。このとき、送信周期が想定していたものとずれた場合にも端末数を推定することができる。
DNSトラフィックによるPassive OS Fingerprintingに関する検討, 松中隆志, 山田 明, 窪田 歩, 2012年電子情報通信学会通信ソサイエティ大会, B-6-76, 2012年9月.
 しかしながら、非特許文献1の方式ではOS特有のドメインを事前に把握しておく必要がある。また、非特許文献1の方式では特有のドメインの送信周期を事前に取得してパラメータとして用いる必要があるが、非特許文献1において、同じOSであっても製造ベンダが異なると送信周期にばらつきがあることが報告されており、推定を行う全端末種別に対して送信周期を調査しなければならない。これらにより、特定の対象となる端末全ての事前調査および、新製品の発売開始などにより新規の端末が出現するたびに追加の調査が必要になり、非特許文献1に記載される手法のような全数調査に基づく識別は非効率である。
 本発明は、上記の点に鑑みてなされたものであって、サービスへのアクセス元の端末種別の特定の効率化を支援することを目的とする。
 そこで上記課題を解決するため、アクセス元分類装置は、複数のアクセス元のうちのいずれかのアクセス元による複数のサービスのうちのいずれかのサービスへのアクセスを示すアクセスログの集合に基づいて、各アクセス元による各サービスへのアクセスに関する統計量を算出する第1の算出部と、前記サービスごとに、当該サービスに係る前記アクセスログに基づいて、前記アクセス元別の当該サービスへのアクセス状況の分布を示す指標値を算出し、前記サービスごとに算出した前記指標値に基づいて、前記複数のサービスから一部のサービスを抽出する抽出部と、前記統計量に対してクラスタリング手法を適用して、各アクセス元と前記抽出部によって抽出された各サービスとの関連度を算出する第2の算出部と、前記関連度に基づいて、前記抽出部によって抽出されたいずれかのサービスへのアクセス元を、それぞれが1以上のアクセス元を含むいずれかのグループに分類する分類部と、を有する。
 サービスへのアクセス元の端末種別の特定の効率化を支援することができる。
本発明の実施の形態におけるシステム構成例を示す図である。 トラヒック収集装置20の動作例を示す図である。 本発明の実施の形態における分析装置10のハードウェア構成例を示す図である。 本発明の実施の形態における分析装置10の機能構成例を示す図である。 分析装置10が実行する処理手順の一例を説明するためのフローチャートである。 2次元配列の一例を示す図である。 クラスタリング手法の出力結果の一例を示す図である。 関連度からラベルへの置換結果の一例を示す図である。 ラベルが一致するユーザIDを同じクラスタとしてクラスタリングする例を示す図である。
 以下、図面に基づいて本発明の実施の形態を説明する。まず、本実施の形態において用いる各用語を以下のように定義する。
 「通信」又は「トラヒック」の各用語は、いずれも「通信トラヒック」と同義であり、ネットワーク上を流れる通信データをいう。
 「端末種別」とは、サービスへのアクセス元である端末(後述のユーザ端末30)に搭載されているオペレーションシステム(OS)やユーザ端末30の形態(デスクトップPC、ノートPC、モバイル端末など)のことをいう。
 「DNSクエリ」とは、ユーザ端末30からDNS(Domain Name System)サーバへ名前解決(DNSを用いてドメイン名から対応するIPアドレスを取得する処理)を行った際の問い合わせのことである。
 「アクセス」とは、ユーザ端末30における通信の発生をいう。
 「サービス」とは、コンテンツの配信元が提供するサービスをいう。コンテンツサービスプロバイダ(CSP)がサーバにより提供しているものである。
 本実施の形態では、サービスへのアクセス元の端末種別と利用サービスとの間には相関があることに注目する。本実施の形態では、ある一定期間に観測されたサービスへのアクセスログを、アクセス元と利用サービスとの相関に基づいて分析することで、アクセス元を端末種別の類似性に基づいて分類する。
 このような分類に基づいて、ユーザが利用するユーザ端末30の端末種別を特定又は推定することができる。具体的には、端末種別の同じアクセス元でグルーピングすることにより、アクセス元の数が非常に多い場合でもグループ内の一部のアクセス元の特徴を追うことでグループ全体の挙動を把握できる。
 これにより、新規なユーザ端末30が出現しても、当該ユーザ端末30が既存のユーザ端末30(アクセス元)と同じ特徴を持っていれば、識別済みのグループに所属することが期待され、追加の調査が不要となる。また、新規なユーザ端末30の発生後に識別不能なグループに所属するユーザ端末30が増えた場合にのみ、当該ユーザ端末30について調査することで、効率化が図られる。
 図1は、本発明の実施の形態におけるシステム構成例を示す図である。図1において、ユーザ端末30a、ユーザ端末30b及びユーザ端末30c等の複数のユーザ端末30は、LAN(Local Area Network)又はインターネット等のネットワークを介して、DNSキャッシュサーバ40及び1以上のコンテンツサーバ50等に接続される。DNSキャッシュサーバ40は、一般的なDNSキャッシュサーバ40である。コンテンツサーバ50は、ユーザ端末30に対してサービスを提供するコンピュータである。1つのコンテンツサーバ50が複数のサービスを提供してもよい。
 また、ユーザ端末30とDNSキャッシュサーバ40又はコンテンツサーバ50との通信トラヒックを参照可能なように、トラヒック収集装置20が配置される。トラヒック収集装置20は、例えば、ユーザ端末30からサービス(コンテンツサーバ50)へのアクセスを含む通信ログ(以下、「アクセスログ」という。)を収集し、蓄積する。サービスへのアクセスログとは、サービスに対する直接的なトラヒックに関するログに限られない。例えば、DNSクエリのログ、DNSキャッシュのログなどがアクセスログとされてもよい。トラヒック収集装置20は、例えば、ネットワークのゲートウェイ装置のように、ユーザ端末30とDNSキャッシュサーバ40及びコンテンツサーバ50とを接続するネットワーク回線上に挿入されてもよいし、タップやミラーなどの方法によって外付けされる形態によって設置されてもよい。アクセスログの収集箇所は、ユーザ端末30とサーバ間の通信を含む条件を満たせば特に限定されない、例えば、コンテンツサーバ50又はDNSキャッシュサーバ40等においてアクセスログが収集されてもよい。すなわち、これらのサーバが、トラヒック収集装置20を兼ねてもよい。
 トラヒック収集装置20には、LAN又はインターネット等のネットワークを介して分析装置10が接続される。分析装置10は、トラヒック収集装置20に蓄積されたアクセスログを参照して分析し、分析結果を出力する。なお、本実施の形態では、トラヒック収集装置20と分析装置10とが別個の装置によって構成される例について説明するが、トラヒック収集装置20と分析装置10とは、同一の汎用計算装置(コンピュータ)を用いて実現されてもよい。
 図2は、トラヒック収集装置20の動作例を示す図である。図2において、トラヒック収集装置20は、ネットワーク間の一切の通信に影響しないようにしながらアクセスログを収集・蓄積する。アクセスログの記録先としてはトラヒック収集装置20のメインメモリや記録装置を想定しているが、任意である。本実施の形態では、以下の形式でアクセスログが収集されるものとする。
Figure JPOXMLDOC01-appb-T000001
 タイムスタンプは、ユーザ端末30がサービスにアクセスした日時である。ユーザIDは、アクセス元のユーザ端末30の識別子(例えば、IPアドレスである。)。ここで、ユーザIDとユーザ端末30とは、必ずしも1対1であるとは限らない。例えば、複数のユーザ端末30によって同じIPアドレスが共用される可能性も有るからである。本実施の形態では、このような状況も許容される。サービス名は、アクセス先のサービスの識別子である。具体的には、HTTPトラヒックの場合はホスト名、DNSクエリにおいてはFQDN(Fully Qualified Domain Name)がサービス名の一例となる。観測値は、ユーザ端末30がサービスにアクセスした際に観測できる値である。例えば、サービスに対する直接的なトラヒックのログの場合、該当する通信で発生したトラヒック量をこの観測値とすることが可能である。但し、この観測値は任意であり、観測値を省いてアクセスログとすることも可能である。
 図3は、本発明の実施の形態における分析装置10のハードウェア構成例を示す図である。図3の分析装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
 分析装置10での処理を実現するプログラムは、CD-ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
 メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って分析装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
 図4は、本発明の実施の形態における分析装置10の機能構成例を示す図である。図4において、分析装置10は、前処理部11及び分析部12等を有する。これら各部は、分析装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。
 前処理部11は、アクセスログについて、各ユーザIDの端末種別の分類及び特定を目的とした、分析に適したデータに加工を行う。
 分析部12は、加工したデータを入力データとして分析を行い、ユーザIDをクラスタリングする。
 以下、分析装置10が実行する処理手順について説明する。図5は、分析装置10が実行する処理手順の一例を説明するためのフローチャートである。
 ステップS101において、前処理部11は、期間T(=終了時刻Te-開始時刻Ts)のアクセスログの集合をタイムスタンプを参照してトラヒック収集装置20から取得する。Tは、分析を行う者により事前に設定される任意の数値である。Tが短いほど、該当の時間帯において利用されているユーザ端末30を把握できる。しかし、ユーザが複数のユーザ端末30を所持していてもT内に同時に利用されていない場合、ユーザが利用するユーザ端末30を網羅的に把握するという点では不十分となってしまう。一方、Tを長くすると、ユーザの複数端末利用を把握することができると考えられるが、必要とするデータ量が増大し、収集や分析にかかるコストが大きくなってしまう。ここで、ユーザによるユーザ端末30の使用には周期性があると考えられる。例えば、朝はスマートフォンを利用し夜はPCを利用する、又は平日はスマートフォンのみ利用し休日はデスクトップPCを利用する、などである。そのため、Tは1日や1週間などの周期性を考慮して決定されるとよい。
 続いて、前処理部11は、取得したアクセスログの集合より、分析対象とするアクセスログ群を抽出する(S102)。
 サービスへのアクセス元の端末種別に基づいて、アクセス元をクラスタリングするためには、端末種別と関連のあるサービスに絞ってサービスのアクセスログを用いることが効果的である。一方で、サービスの中には、異なる複数の端末種別からアクセスされ、特定の端末種別との関連が低いサービスが含まれる。このようなサービスに関するアクセスログを、取得したアクセスログの集合から除外することにより、クラスタリングの精度向上を見込むことができる。
 ここで、端末種別と関連のあるサービスは、例えば、OSの更新プログラムやNTP(Network Time Protocol)に関するサービスを含み、端末が自律的にアクセスしているサービスである場合が多いと考えられる。また、端末種別と関連の低いサービスは、異なる複数の端末種別からアクセスされる、例えば、検索サービスやSNS(Social Networking Service)等が含まれ、ユーザが意図して利用(アクセス)しているサービス、つまりユーザ行動に関連の強いサービスである場合が多いと考えられる。
 ユーザ端末30が自律的にアクセスする場合、一定の間隔でアクセスするなど、一定期間(T)内のサービスへのアクセス回数やアクセス間隔は、ユーザID間で同程度となる可能性が高い。一方で、ユーザ行動に関連が強いと、アクセス回数や間隔はユーザによって大きく異なる(ユーザによってサービスの利用度合に差がある)ことが考えられる。このことから、各サービスに対するユーザID毎のアクセス回数や間隔の分布から、サービスと端末種別の関連の強さを推定することができる。
 そこで、まず、前処理部11は、取得したアクセスログの集合から、サービス名ごとに当該サービス名(「サービス名z」とする。)を含むアクセスログを取り出し、取り出したアクセスログについて、ユーザID別にアクセス回数(もしくは間隔)hzr(r:サービスzへアクセスした各ユーザID)を算出する。前処理部11は、サービス名zについてユーザID別に算出したhzrの分布に基づいて、サービス名zへのユーザID別(アクセス元別)のアクセス状況の分布を示す指標値の一例である特徴値σを算出する。特徴値σは、例えば、分散や標準偏差とすればよい。
 σが閾値y以下の場合、前処理部11は、サービス名zを含むアクセスログを「アクセスログ群」に追加する。閾値yは、事前に決定され、例えば、算出した全σの中央値などを用いてもよい。
 続いて、前処理部11は、抽出したアクセスログ群に基づいて、ユーザ端末30(厳密にはユーザID)とサービスとの関係性を表現する2次元配列を生成する(S103)。2次元配列は、各ユーザ端末30のユーザIDを縦軸の項目とし、各サービス名を横軸の項目とし、アクセスログ群から得られる統計量を要素とするデータである。ユーザ端末30が利用するサービスには端末種別と紐付く(相関する)特徴やパターンがあると考えられ、このパターンの近いユーザ端末30同士(ユーザID同士)をクラスタリングするために適した配列の要素を算出する必要がある。或るユーザIDuの或るサービスsに対する統計量vは例えば以下の(1)~(3)のいずれかの方法によって算出されてもよい。
(1)ユーザIDとサービスの利用関係を基にクラスタリングする場合
 v=binary(count(ユーザID=u かつ サービス名=sのアクセスログ))
(2)ユーザIDとサービスの利用度を基にクラスタリングする場合
 v=process(count(ユーザ端ID=u かつ サービス名=sのアクセスログ))
(3)観測値に基づいてクラスタリングする場合
v=process(sum(ユーザID=u かつ サービス名=sのアクセスログの観測値))
 なお、binary(x)=1(x>0)、0(x=0)である。また、count()は、該当するアクセスログの数である。sum()は、該当する値の合計である。process()は、入力された値を大小関係を保持したまま出力する操作であり、例えば、process(x)=xや、process(x)=log(x)などが考えられる。
 (1)は、ユーザIDをアクセス元とするサービスへのアクセス有無を1/0で表現したものである。(2)は、ユーザIDをアクセス元とするサービスへのアクセス回数である。(3)は、ユーザIDをアクセス元とするサービスの利用時に発生させたトラヒックの合計値(トラヒック量)である。
 図6は、2次元配列の一例を示す図である。図6には、上記の(1)の方法により生成された2次元配列の例が示されている。なお、図6において、ユーザ端末30のIPアドレスがユーザIDの一例とされており、FQDNが、サービス名の一例とされている。
 続いて、前処理部11は、統計量の合計が相対的に大きいn個のサービスのみを抽出する(S104)。サービスの種類が非常に多い場合、分析に要する計算時間の増大や分析結果の解釈が困難になるなどの問題が発生する可能性が有る。そのため、端末種別と紐づく特徴やパターンに基づいてユーザIDのクラスタリングを行う上で、有用なデータを事前に抽出して分析を行うことが有効である。つまり、分析対象とするサービスの数を絞るとよいと考えられる。分析対象とするサービスの数n個は、任意に決定することが可能である。但し、サービスの数を絞ったことにより分析の対象となるユーザIDが大幅に減少してしまうのは防ぐべきであるため、一例として、アクセスログ群における全ユーザIDのうち、指定したn個のサービスに対してp個以上のサービスへのアクセス元であるユーザIDの割合を表すユーザカバー率Cを導入してnを決定する方法を採用する。ユーザカバー率Cが大きいほど多くのユーザIDを対象として分析を行うことを表すため、ユーザカバー率Cが予め決定されたある閾値threshold以上となるようにnを決定する。
 ここで、大手のサービスは多くのユーザが利用している一方、大半のサービスはごく少数のユーザのみから利用されるなど、利用サービスには偏りがあることが知られている。多くのユーザから利用されているサービスの方が、ユーザ(ユーザID)とサービスの関連性を多く表現しているため有用である可能性が高い。そのため、例えば、サービスごとの配列の要素の合計が大きいサービスから順に並べ、ユーザカバー率Cがthreshold以上を満たすn個のサービス(上位k位~(k+n-1)位)のみに絞ることとすればよい。ステップS104は、必須の処理ではないが、データのサイズを縮小し、効果的に分析できると考えられるため、サービスの種類が多いかつ統計量の多いサービスのみで多くのユーザをカバーできる場合には行うことを推奨する。
 例えば、以下が、n個のサービスを抽出するための擬似コードである。

1: [INPUT: 2次元配列A(ユーザ数N×全サービス数), k(自然数), p(n以下の自然数), threshold]
2: Sort service columns in A
3: i = k, C=0
4: While(C<threshold){
5:  C = count users(count(each value in k th~i th services > 0) ≧p) / N
6:  A' = add(i th service columns from A)
7:  i = i+1
8:}
9:[OUTPUT: 2次元配列A'(ユーザ端末30数N×n)※n=i-k]

 上記の擬似コードの各行の先頭の「x:」(x=1~9)は、説明の便宜上付与した行番号である。1行目は、図6に示したような2次元配列A、k、p、thresholdが入力パラメータとして与えられる(入力される)ことを意味する。
 2行目は、2次元配列の列を、各列の要素の合計の降順にソートすることを意味する。3行目は、変数iをkで初期化し、ユーザカバー率Cを0で初期化することを意味する。
 4行目は、Cがthreshold未満である間、5行目から7行目を繰り返すことを意味する。5行目において、「count(each value in k th~i th services > 0)」は、k番目からi番目のサービス(列)において0より大きい値の数をカウントすることを意味し、「count users(count(each value in k th~i th services > 0) ≧p)」は、カウントされた値が、p以上であるユーザID数をカウントすることを意味する。更に、「C = count users(count(each value in k th~i th services > 0) ≧p) / N」は、ユーザID数のカウント結果をNで除することで得られる値がCに代入されることを意味する。
 6行目は、2次元配列Aにおいてi番目のサービス(列)が2次元配列A'に追加されることを意味する。7行目は、iに1が加算されることを意味する。
 ステップS102は、ステップS103及びステップS104とは独立であるため、ステップS104を実施した後にステップS102を実施されてもよい。その場合、ステップS101において取得した全アクセスログの集合をアクセスログ群とし、ステップS103及びS104を実施した後、ステップS102について説明した特徴値σを算出し、2次元配列A'のうちσがy以下となるサービス名zを持つ列のみが抽出されてもよい。
 続いて、分析部12は、前処理部11において加工したデータ(擬似コードにおける2次元配列A')を入力データとしてクラスタリング手法を適用する(S105)。
 ここで、クラスタリング手法は、因子分析、NMF(Non-negative Matrix Factorization)など、2次元配列を入力としてユーザIDをグルーピングできる手法であれば、任意の手法を適用可能である。因子分析については、例えば、「Survey on Independent Component Analysis, Aapo Hyvarinen, Neural Computing Surveys 2, pp. 94-128, 1999.」等が参考とされてもよい。また、NMFについては、例えば、「Document Clustering Based on Non-negative Matrix Factorization, Wei Xu, Xin Liu, and Yihong Gong, Proc. of Int'l ACM SIGIR Conf. on Research and Development in Information Retrieval, pp. 267-273, 2003.」等が参考とされてもよい。
 図7は、クラスタリング手法の出力結果の一例を示す図である。すなわち、図7は、ステップS105において出力されるデータの一例を示す。図7に示されるように、クラスタリング手法の出力結果(算出結果)は、ユーザIDと任意の数の因子(グループ)との関連度を2次元配列で表現したものである。図7は、DNSクエリのアクセスログを因子分析によって分析した場合の出力結果の一例を示す。因子数(グループの数)mは、クラスタリング手法に適した方法で決定されればよい。
 続いて、分析部12は、クラスタリング手法の出力結果である2次元配列の各要素を関連度に基づいたラベルに置換する(S106)。例えば、或るユーザIDにおいて最も大きい関連度となるグループeのラベルL(ユーザID,グループe)=1、L(ユーザID,e以外のグループ)=0とする。この方法でのラベリングの結果の一例を図8に示す。
 なお、各要素のラベルへの置換は省略も可(例えば、関連度をそのままラベルとして利用することと同義)であり、置換の方法も上記の方法に限定されない。例えば、各グループにおけるラベル数をf(label~labelf-1のラベルへ置換)とし、予め設定した閾値b~bf-1(b<bj+1)を用いて、関連度(ユーザID,グループw)=z、かつ、bj<z<bj+1の時、L(ユーザID,グループw)=labelとされてもよい。
 このように、分析結果は、前述したとおりユーザIDとグループ(因子)とを軸とし、配列の要素がラベルである2次元配列である(図8参照)。この2次元配列に基づくユーザIDのクラスタリング方法は任意であるが、例えば、各グループのラベルが一致するユーザIDを同じクラスタとしてクラスタリングするなどがある。ユーザIDのクラスタリングの結果において、同じクラスタのユーザIDはサービスの利用パターンが類似しており、端末種別も類似しているといえる。
 図9は、ラベルが一致するユーザIDを同じクラスタとしてクラスタリングする例を示す図である。図9に示される2次元配列の各要素は、便宜上、図7及び図8とは無関係である。図9のようにラベルに置換された場合、例えば、「ユーザIPアドレス1」、「ユーザIPアドレス2」、及び「ユーザIPアドレス4」に係るユーザIDが同じクラスタに分類される。また、「ユーザIPアドレス3」及び「ユーザIPアドレス6」に係るユーザIDが同じクラスタに分類される。
 ユーザIDをアクセス元とする利用サービスの相関に基づいてユーザIDを分類することで、ユーザIDの端末種別の特定に有用なユーザIDの分類ができる。分類結果に基づいて各クラスタから代表ユーザIDのデータのみを抽出し、任意の学習機を用いることでユーザIDの端末種別の特定を容易に実施することができる。学習機については、例えば、「Support Vector Clustering, Asa Ben-Hur, David Horn, Hava T. Siegelmann, and Vladimir Vapnik, Journal of Machine Learning Research 2, pp. 125-137, 2001.」等が参考とされてもよい。
 なお、図5において説明した一連のモデル(処理手順)は、任意のプログラム言語若しくはスクリプト言語又はそれらの組み合わせで実装可能である。
 上述したように、本実施の形態によれば、サービスへのアクセスログを分析することで、先行文献における課題を解決し、利用する端末種別が類似するアクセス元(ユーザID)をクラスタリングすることができるようになる。クラスタリングすることにより、ユーザ数が非常に多い場合でも、クラスタ内の一部のユーザの特徴を追うことでクラスタ全体の挙動を把握することができる。したがって、端末種別の特定の効率化を支援することができる。
 なお、本実施の形態において、分析装置10は、アクセス元分類装置の一例である。前処理部11は、第1の算出部及び抽出部の一例である。分析部12は、第2の算出部及び分類部の一例である。
 以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10     分析装置
11     前処理部
12     分析部
20     トラヒック収集装置
30     ユーザ端末
40     DNSキャッシュサーバ
50     コンテンツサーバ
100    ドライブ装置
101    記録媒体
102    補助記憶装置
103    メモリ装置
104    CPU
105    インタフェース装置
B      バス

Claims (7)

  1.  複数のアクセス元のうちのいずれかのアクセス元による複数のサービスのうちのいずれかのサービスへのアクセスを示すアクセスログの集合に基づいて、各アクセス元による各サービスへのアクセスに関する統計量を算出する第1の算出部と、
     前記サービスごとに、当該サービスに係る前記アクセスログに基づいて、前記アクセス元別の当該サービスへのアクセス状況の分布を示す指標値を算出し、前記サービスごとに算出した前記指標値に基づいて、前記複数のサービスから一部のサービスを抽出する抽出部と、
     前記統計量に対してクラスタリング手法を適用して、各アクセス元と前記抽出部によって抽出された各サービスとの関連度を算出する第2の算出部と、
     前記関連度に基づいて、前記抽出部によって抽出されたいずれかのサービスへのアクセス元を、それぞれが1以上のアクセス元を含むいずれかのグループに分類する分類部と、
    を有することを特徴とするアクセス元分類装置。
  2.  前記指標値は、前記アクセス元別の前記サービスへのアクセス回数の分布又は前記アクセス元による前記サービスへのアクセス間隔の分布に基づく分散、又は前記分布に基づく標準偏差である、
    ことを特徴とする請求項1記載のアクセス元分類装置。
  3.  前記第2の算出部は、前記複数のサービスのうち前記統計量の合計が相対的に大きい一部のサービスに係る前記統計量に対して前記クラスタリング手法を適用する、
    ことを特徴とする請求項1記載のアクセス元分類装置。
  4.  前記統計量は、前記アクセス元による前記サービスへのアクセスの有無、前記アクセス元による前記サービスへのアクセス回数、又は前記アクセス元による前記サービスの利用時のトラヒック量である、
    ことを特徴とする請求項1又は2記載のアクセス元分類装置。
  5.  複数のアクセス元のうちのいずれかのアクセス元による複数のサービスのうちのいずれかのサービスへのアクセスを示すアクセスログの集合に基づいて、各アクセス元による各サービスへのアクセスに関する統計量を算出する第1の算出手順と、
     前記サービスごとに、当該サービスに係る前記アクセスログに基づいて、前記アクセス元別の当該サービスへのアクセス状況の分布を示す指標値を算出し、前記サービスごとに算出した前記指標値に基づいて、前記複数のサービスから一部のサービスを抽出する抽出手順と、
     前記統計量に対してクラスタリング手法を適用して、各アクセス元と前記抽出手順において抽出された各サービスとの関連度を算出する第2の算出手順と、
     前記関連度に基づいて、前記抽出手順において抽出されたいずれかのサービスへのアクセス元を、それぞれが1以上のアクセス元を含むいずれかのグループに分類する分類手順と、
    をコンピュータが実行することを特徴とするアクセス元分類方法。
  6.  前記指標値は、前記アクセス元別の前記サービスへのアクセス回数の分布又は前記アクセス元による前記サービスへのアクセス間隔の分布に基づく分散、又は前記分布に基づく標準偏差である、
    ことを特徴とする請求項5記載のアクセス元分類方法。
  7.  請求項1乃至4いずれか一項記載の各部としてコンピュータを機能させることを特徴とするプログラム。
PCT/JP2019/004500 2018-02-13 2019-02-07 アクセス元分類装置、アクセス元分類方法及びプログラム WO2019159822A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/965,803 US11290384B2 (en) 2018-02-13 2019-02-07 Access origin classification apparatus, access origin classification method and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-023389 2018-02-13
JP2018023389A JP6866322B2 (ja) 2018-02-13 2018-02-13 アクセス元分類装置、アクセス元分類方法及びプログラム

Publications (1)

Publication Number Publication Date
WO2019159822A1 true WO2019159822A1 (ja) 2019-08-22

Family

ID=67619990

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/004500 WO2019159822A1 (ja) 2018-02-13 2019-02-07 アクセス元分類装置、アクセス元分類方法及びプログラム

Country Status (3)

Country Link
US (1) US11290384B2 (ja)
JP (1) JP6866322B2 (ja)
WO (1) WO2019159822A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11394687B2 (en) * 2019-09-04 2022-07-19 Cujo LLC Fully qualified domain name (FQDN) determination

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015066728A1 (en) * 2013-11-04 2015-05-07 Amazon Technologies, Inc. Centralized networking configuration in distributed systems
WO2016133064A1 (ja) * 2015-02-17 2016-08-25 日本電信電話株式会社 推定装置、推定方法、及び記録媒体

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3039820B1 (en) * 2013-08-27 2018-08-01 Telefonaktiebolaget LM Ericsson (publ) Technique for maintaining network service identification rules
US10002011B2 (en) * 2013-11-04 2018-06-19 Amazon Technologies, Inc. Centralized networking configuration in distributed systems
US10721244B2 (en) * 2014-03-19 2020-07-21 Nippon Telegraph And Telephone Corporation Traffic feature information extraction method, traffic feature information extraction device, and traffic feature information extraction program
US9742881B2 (en) * 2014-06-30 2017-08-22 Nicira, Inc. Network virtualization using just-in-time distributed capability for classification encoding
WO2016194909A1 (ja) * 2015-06-02 2016-12-08 日本電信電話株式会社 アクセス分類装置、アクセス分類方法、及びアクセス分類プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015066728A1 (en) * 2013-11-04 2015-05-07 Amazon Technologies, Inc. Centralized networking configuration in distributed systems
WO2016133064A1 (ja) * 2015-02-17 2016-08-25 日本電信電話株式会社 推定装置、推定方法、及び記録媒体

Also Published As

Publication number Publication date
JP2019139587A (ja) 2019-08-22
JP6866322B2 (ja) 2021-04-28
US20210051107A1 (en) 2021-02-18
US11290384B2 (en) 2022-03-29

Similar Documents

Publication Publication Date Title
US11301778B2 (en) Method and system for training and validating machine learning in network environments
Liu et al. Monitoring and analyzing big traffic data of a large-scale cellular network with Hadoop
Vlăduţu et al. Internet traffic classification based on flows' statistical properties with machine learning
US8504673B2 (en) Traffic like NXDomains
US10044820B2 (en) Method and system for automated transaction analysis
Gonzalez et al. Net2Vec: Deep learning for the network
JP2014153723A (ja) ログ生起異常検知装置及び方法
WO2020170852A1 (ja) 予測装置、予測方法及びプログラム
CN111131070B (zh) 一种基于端口时间序列的网络流量分类方法、装置及存储介质
Alothman Raw network traffic data preprocessing and preparation for automatic analysis
Tang et al. HSLF: HTTP header sequence based lsh fingerprints for application traffic classification
WO2019159822A1 (ja) アクセス元分類装置、アクセス元分類方法及びプログラム
CN107704494B (zh) 一种基于应用软件的用户信息收集方法和系统
Arslan et al. Automatic performance analysis of cloud based load testing of web-application & its comparison with traditional load testing
JP6772116B2 (ja) アクセス元分類装置、アクセス元分類方法及びプログラム
Dick et al. An empirical investigation of Web session workloads: Can self-similarity be explained by deterministic chaos?
CN116506300A (zh) 一种网站流量数据统计方法和系统
Martinez-Mosquera et al. Data cleaning technique for security logs based on Fellegi-Sunter theory
CN115695216A (zh) 一种互联网流量流向的大数据分析的方法
Bhuvaneswari et al. A comparative study of different log analyzer tools to analyze user behaviors
CN111611483B (zh) 一种对象画像构建方法、装置、设备及存储介质
Li et al. Real-time network traffic classification based on CDH pattern matching
Slaninová et al. User segmentation based on finding communities with similar behavior on the web site
CN110175635B (zh) 基于Bagging算法的OTT应用程序用户分类方法
Mercaldo et al. Classification of web applications using AiFlow features

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19753911

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19753911

Country of ref document: EP

Kind code of ref document: A1