WO2020071962A1 - Система классификации траффика - Google Patents

Система классификации траффика

Info

Publication number
WO2020071962A1
WO2020071962A1 PCT/RU2019/000715 RU2019000715W WO2020071962A1 WO 2020071962 A1 WO2020071962 A1 WO 2020071962A1 RU 2019000715 W RU2019000715 W RU 2019000715W WO 2020071962 A1 WO2020071962 A1 WO 2020071962A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
classification
module
neural network
analysis
Prior art date
Application number
PCT/RU2019/000715
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 Общество с ограниченной ответственностью "Алгоритм"
Publication of WO2020071962A1 publication Critical patent/WO2020071962A1/ru

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]

Definitions

  • the present invention relates to the field of data processing, in particular to systems for syntactic processing of a text data stream used in telecommunications, and is intended for processing messages transmitted both between subscribers and between subscribers and information systems and can be used in a2p, p2a, p2p, A2a services.
  • IBM LanguageWare platform which is a set of Java, C ++ libraries, provides developers with a set of tools for processing natural language (Natural Language Processing, NLP).
  • IBM Alchemy API - a cloud service that provides NLP technology for SaaS models through its APIs; there is a set of development tools (SDKs) supported by IBM. Both of these tools provide embedded API clients; direct text processing is performed on the remote servers of the development company.
  • PalitrumLab EUREKA ENGINE is a domestic representative of linguistic analysis platforms, it is provided both by an external API and as an embedded system for business applications.
  • the authors offer a universal solution for classifying traffic into categories, i.e. semantic type of traffic - advertising, transactional, service, international, fraudulent, etc.
  • the solution combines accurate parsing of text by semantic attributes and probabilistic classification of text based on machine learning.
  • the algorithm of the classification method and the architecture of the system that implements it provides the system administrators in real time with the option to configure the classification categories of the message, the rules for its analysis and adjust the separability (separability of classification results) of the neural network.
  • the proposed settings are provided to a wide range of users and do not require in-depth training in issues of semantic analysis and / or machine learning.
  • the method integrates into heterogeneous software and hardware platforms (network nodes), and scales its performance in accordance with the online streaming load.
  • Known patent N ° US8494987 from 07.23.13g. representing a system and methods for generating hypotheses, in which a local or distributed system interacts with a database and contains a module for generating hypotheses, a module for storing concepts on the basis of which hypotheses are generated, as well as modules for user input and output of results.
  • a method for generating hypotheses is to pre-calculate hypotheses based on predefined concepts (the topic of knowledge) and database data, and after receiving user input, the system generates at least one hypothesis based on jointly occurring concepts (topic of knowledge) related to entities extracted from user input (sentences, statements).
  • the method requires user input of the knowledge base or an indication of the database by belonging to the analyzed entities or instructions for processing text, which excludes its use in the mode of constantly arriving large volumes of online data.
  • the disadvantage of the software and hardware architecture is the “vertical”, non-scalable modularity of the software architecture, in which the modules are rigidly configured for sequentially performing the functions of analysis — loading data from the database, preliminary calculation, receiving user data, computing, output.
  • Patent N ° PCT / US2007 / 063983 dated March 14, 2007. describes a software product, system and method for generating hypotheses from a database, by which various semantic relationships between concepts and concepts are built and entered into structures and / or concepts and concepts according to certain rules of relations and based on the analysis of many documents in a predefined repository. Phrases are assigned according to one of the many concepts, or the identifier of the relationship connecting one concept with the second, or the assignment of one concept of a semantic category or the arrangement of concepts in a hierarchical relationship.
  • PCT Application N2WO2013 / 135474 of 02.22.2013 claims a method of semantic analysis of the text, which consists in constructing a matrix of vectors of occurrences of words in the training sample of documents, for example Wikipedia articles, learning 1 neural network (self-organizing Kohonen map) with this sample of documents and vectors, matching documents containing the target word and the set of map coordinates (region ) occurrences of these documents, the definition of the semantic context of the word and the preservation of correspondence in the dictionary, map templates Learning a second neural network using documents of the same language, consisting of constructing a sequence of sentences from documents of a training sample, calculating the document's complexity factor (word frequency in a document, etc.) and sorting words in a sequence. And training the network with sample documents with an increase in the coefficient of semantic complexity, comparing the map and the words of the second sample, training the second (usually hierarchical) neural network with template cards.
  • the solution is based only on heuristic methods of analysis, does not imply a clear classification of the text, is not adapted to the operational configuration of the analysis rules, and is not applicable to the analysis of streaming data.
  • Patent RU2615632 dated 03/20/2015 offers a method for recognizing communication messages in terms of determining the name of the sender and assuming the presence of special characters in the message highlighting the name of the sender or a request to the server with a predefined database of subscriber names and determining the name of the sender by comparing the contents of the specified identifier and user name in the database.
  • the semantic analysis according to the invention can be implemented in hardware by finalizing the mobile terminal with text processing and communication modules with the database server.
  • the technical task of the proposed traffic classification system according to the classification method of a2p, p2a, p2p, a2a traffic according to predefined semantic categories of traffic is: to increase the flexibility of message classification due to the manual user-defined intuitive informal line patterns that are used to analyze the text and determine the probabilistic attribution of messages to a certain category;
  • the introduction of the above user settings into the process of analytical text processing takes it to a new universal level, at which the processing process is not only subject to ordinary administrators (users) of the system, who are not experts in the field of semantic analysis, languages and dialects of regular expressions, but also unlimited by existing and future analysis applications due to changes in the message scheme. Moreover, their combined application to the analyzed messages provides a significant increase in the reliability of the analysis.
  • the interaction of user settings on the classification result is predetermined by the sequence of the method, which involves first applying informal line patterns to the message text with clear logic algorithms, and then applying probability coefficients to the results of heuristic algorithms of the neural network. In this case, the method provides for no dependence on determining user settings.
  • the technical result of the traffic classification method is achieved by the traffic classification system, according to which a natural language message is received, a message scheme is determined, the message is divided into meaningful syntax (semantic) fields, provide many nodes for the analysis of significant message fields, to which the text analysis rules are applied depending on the application message protocol, and for classifying messages into certain categories, an informal template-string of an informal language for searching and processing substring in a string and a probability coefficient are determined assigning a message to a certain category converts an informal string template into a regular expression of the standard language for searching and processing a substring in a string, they convert the regular expression of the standard language into a text analysis rule configuration program module containing data and string processing methods, dynamically create many analysis rule configuration software modules and distribute them across many nodes to analyze significant message fields, apply the analysis rule configuration to significant message fields, send a message to the input of the neural network, and the result of the classification of messages by the neural network is adjusted in accordance with a certain probabilistic coefficient The attribute of a message to a certain category
  • the definition of an informal template-string of an informal language for searching and processing a substring in a string and the probabilistic coefficient of assigning a message to a certain category is carried out during message processing.
  • Many software modules for the configuration of analysis rules are generated and distributed across many nodes for the analysis of significant message fields in proportion to the network load due to the number of messages analyzed.
  • the classification result of a neural network is adjusted in accordance with a certain probabilistic coefficient of classifying a message to a certain category, transforming a threshold value for classifying a neural network, or setting a confidence limit for output elements of a neural network.
  • the technical task of the device classification system a2p, p2a, p2p, a2a traffic to implement the method of traffic classification is to improve operational properties, by including in the architecture of the traffic classification system module 4 of the user interface, made with the possibility of manual user definition of semantic categories of message classification, informal string patterns applied to the analysis of a message to determine its category and probabilistic coefficients of classifying a message as a definition flax category;
  • module 2 regex in the architecture of the system, the memory of which contains and the processor whose algorithm is executed the informal regular expression language irregex (irregular expressions); and the algorithm of one or more formal regular expression languages regex (regular expressions).
  • the irregex algorithm allows you to get informal custom string patterns and convert them into regular expressions of the standard regex languages
  • the neural network module 3 neural net is configured to algorithmically convert user probability coefficients to transform the threshold value of the neural network and / or establish a confidence boundary for the values of its output elements;
  • module 7 of a configuration broker in the architecture of the system configured to dynamically reproduce - generate many software modules for configuration of analysis rules and distribute them across many nodes to apply analysis rules to the text being analyzed.
  • a traffic classification system for implementing a traffic classification method including a coordinating module, an analysis rule definition module, a machine learning module, at least one module for applying the analysis rules to significant message fields, and additionally including a system administrator (user) interface that is implemented with the ability to determine message classification categories, informal string patterns applied to message analysis, probability coefficients to classify a message into a certain category and additionally includes an analysis rule compiler module configured to create a program analysis analysis module configuration module and consisting of a regular expression language module and a machine learning module, the regular expression language module contains in memory and executes algorithms of the informal regular expression language and at least one formal language of regular expressions and is configured to obtain an informal string pattern and convert it into a regular expression of the formal regular expression language, and the neural network module is configured to obtain a probabilistic referral coefficient to a certain category and adjustments based on it the result of the operation of the neural network, and the coordinating module is configured to receive the software module configuration of the analysis of the rules, creating a plurality of software modules configuration rules of analysis and their
  • Figure 1 shows a functional diagram of a traffic classification system.
  • FIG. 2 shows the General scheme A2P service.
  • Figure 2a shows a generalized sequence of SMPP TCP / IP calls of a method for classifying traffic within an A2p service.
  • Fig.2b shows a generalized sequence of SMPP TCP / IP calls of a method for classifying traffic within a P2A service.
  • Fig. 3a shows a generalized algorithm of a series-parallel mode of operation of a traffic classification system.
  • On Fig shows a generalized algorithm for the parallel mode of operation of the traffic classification system.
  • Figure 4 shows a generalized data conversion process by the traffic classification system.
  • Analysis rule compiler module 1 includes regex module 2 and neural net module 3.
  • the main function of module 1 is the assembly of analysis rules into a software module of the final configuration of analysis rules and transferring it to module 7 of the configuration broker for further playback of a given number of software modules and transferring them to analytical nodes 8 for application to the message.
  • the memory of module 2 regex stores data and machine instructions with instructions to the processors of the compiled informal regular expression language - irregex and dynamic and / or static translation units containing the commands and data of at least one standard regular expression language known from the prior art - regex.
  • memory can contain several standard languages - these can be well-known regex libraries of Perl, Java, C ++ and other known from the prior art.
  • Data coordination between the irrigex and regex languages is achieved by redefining the irregex programming interfaces (polymorphism) and the programming logic for converting the generated irregex structures to regex structures.
  • the program logic for converting irrigex structures to regex structures is included in the functionality of the informal language irrigex developed by the applicant and his know-how.
  • a generalized method for converting irrigex structures to regex structures is to coordinate the data interfaces API and irrigex language processing methods and regex languages available in the memory while maintaining the semantics of the irrigex informal string template.
  • the choice of a specific regex language can be carried out by the system administrator in module 5 of the regex settings.
  • the memory of module 3 of the neural net contains the data of the neural network structure (neural network).
  • neural network There are a large number of software products (neuroimitator programs) that provide tools for designing neural network structures for text analysis - the Keras, SyntaxNet, Microsoft Cognitive Toolkit (CNTK) platforms and other known in the art.
  • a neural network can be designed independently in well-known programming languages, this option is preferred and is used by the applicant since provides the ability to programmatically convert (transform) a threshold value of a neural network in accordance with a user probability coefficient Pf obtained from module 6 of setting up neural net since not all neuroimitators provide the possibility of such a conversion.
  • the threshold value is a value that determines the division of the set of input data from the traffic classification system into subsets, each of which is a semantic category of message classification defined by the system administrator (advertising, transactional, service, international, fraudulent, etc.) categoryi of FIG. 4 lb.
  • the division of the set into classes (subsets) must obey the rule that the input data element falls into only one subset, and the union of all subsets must coincide with the set of input data.
  • the output elements of the neural network in accordance with the activation function, form a threshold value for the separation of this space.
  • the category space is a plane
  • the threshold value is a line separating this plane and forming a subset of the classification categories.
  • the values of the output neurons determine the coordinates of the distribution of messages on the category plane (for example, advertising traffic 0.5, service 0.3). If the system administrator assumes that in accordance with the line template the message should be related to advertising traffic, then he can set the prevailing probability coefficient P f for it . 4 1s.
  • a software threshold transformation algorithm performs line transformation - for example, a shift in the space of two-dimensional coordinates (classification categories), taking into account the prevailing influence of the classification category for which the system administrator has set a higher probability (confidence) coefficient Pf.
  • a larger number of classification categories suggests a more complex transformation logic in the general case similar to that described above.
  • the transformation of the threshold value is possible by known methods: by converting the activation function Fa (X, Pf) of Fig. 4 1c, 5a and / or by changing the weights of the bias neurons, other parameters of the neural network in accordance with Pf, includes complex logic developed by the authors, and is know-how how the applicant.
  • the threshold conversion algorithm allows the system administrator to quickly refine the classification results online without the need for retraining and testing the neural network.
  • the adjustment of the results of the classification of the neural network is implemented by programmatically setting the acceptable boundary of the classification classification reliability figure 4 lc, 5b. In this case, results that exceed the established confidence limit Pf fall under the confidence interval.
  • Neural network training is carried out using training data sets that are also transmitted to the input of the neural network from module 6.
  • the user interface module 4 is intended for interaction with the system administrator (user) and, in various versions, can have a command line interface and / or an interface executed in the form of graphic images, includes visual interactive tools for monitoring various traffic channels (SMPP, SMTP, HTTP, etc. d.).
  • the user interface module 4 includes a regex configuration module 5 that allows the system administrator to determine the message classification categories of Fig. 4 lb, for example: transaction category for identifying SMS request for login / password, advertising category for identifying SMS with advertising offers (notifications), service category for SMS interaction user with operator SPRS, international and others.
  • Module 5 settings regex provides the administrator to define simplified informal templates-strings user template figure 4 la ko orye he preferred to apply to the message with the current format syntax and semantics of the messages for each specific category.
  • the regex configuration module 5 allows the administrator to determine the probability coefficient of assigning a message to a certain category of user factor Pf of FIG. 4 1c.
  • the system administrator defines informal templates - user template strings in Fig.
  • the probability coefficient Pf is not rigidly “tied” to an informal template string, because during subsequent processing, the user template is converted to the regex language format of FIG. 4 3., and Pf is converted to a threshold value transformation of FIGS. 4 5a, 5b.
  • the setting data is applied to the message independently of FIG. 4 8.10.
  • the indirect relationship of their influence on the final classification of the message is determined by the fact that the message is processed in module 3 neural net of Fig. 4 9 after applying the rules of module 2 of regex of Fig. 4 8. That is, after the message is classified by the regex clear logic algorithms according to the user template of Figs. 6-10, 36 5-9, the subsequent neural net classification result is refined by fig.
  • the neural net 6 configuration module additionally includes an interface for setting training settings and testing the neural network, as well as a data warehouse for storing a historical array of messages and training data. Template strings and probabilistic coefficients the interface module 4 transmits, respectively, to modules 2, 3 of module 1 of the analysis compiler for further processing.
  • Module 7 - the configuration broker acting as the coordinating module receives the software module for the configuration of analysis rules generated by the analysis rules compiler 1, reproduces the required set of configurations and distributes them to analytical nodes 8.
  • the hardware and software logic of the configuration broker creates and maintains the required number of analytical nodes depending on the analyzed traffic type system (SMS, USSD, mail, etc.) and distributes analytical nodes depending on the load in addition to the balance ovschiku load 9, distributes between nodes 8 analytical program modules configuration analysis rules, carries them recording / rewriting memory analytical nodes.
  • SMS analyzed traffic type system
  • USSD USSD
  • mail etc.
  • the hardware and software logic of the configuration broker allows the processing of a message within a single network session (sender-receiver) by several analytical nodes and / or processing by a single analytical node of messages of different established network sessions.
  • the logic of the distribution of the configuration of the analysis rules by analytical nodes 8 is determined by the type of traffic being analyzed, the load (number of incoming messages) for each type of traffic, and the syntactic and semantic affiliation of the generated configuration.
  • the service structure of SMS traffic that is less susceptible to changes can be analyzed by one analytical node 8 within different network sessions.
  • Analytical node 8 processes messages in accordance with the configuration of the analysis rules, provides interfaces for receiving a certain type of traffic in accordance with the protocol (SMPP for SMS, USSD, SMTP for mail, etc.).
  • the message is collected from network packets, parsed by significant fields, and the configuration of the analysis rules is applied according to the commands and data of the processor process.
  • the analytical node contains a pool of such processes, the logic of their creation, placement in memory and deletion.
  • the processor process is a set of executed machine instructions stored in memory and which is part of a set of instructions processor unit of the analytical node.
  • the processor process pool additionally provides load balancing to the measures applied by the load balancer 9 logic and configuration module 7.
  • the analytical node classifies the message according to its predefined category (advertising, transactional, service, international, fraudulent, etc.) and directs message to the recipient.
  • Load balancer 9 provides distribution of network load (forwarding client network packets) between analytic nodes 8. Forwarding can be implemented dynamically at the transport level by the well-known DNS-balancing technology, which provides for the assignment of several IP addresses to one domain name and the choice of a specific IP address depending on the rules balancing (for example, an algorithm for cyclic bypass of IP addresses.) ". In another implementation, the load balancer 9 statically assigns client IP addresses the specific IP addresses of the analytic nodes 8 (for example, Tanenbaum E., Weatheroll D. Computer networks. 5th ed. - St. Beach: Peter, 2012. p. 783, 787.) .
  • the analytical nodes 8 are spaced across different network nodes to ensure fault tolerance of the service using HA technology (High Availability) of high availability clusters.
  • the load balancer 9 can be built on the basis of proxy servers (routers) that establish redundant network connections to analytical nodes 8 to ensure uniform distribution of client requests. Additionally, the load balancer 9 implements message forwarding according to the type of application protocol of FIG. 1 - network packets of the SMTP protocol are routed to analytical nodes 8 that process SMS, USSD messages, SMPP packets are addressed to analytical nodes that process email messages.
  • Client network nodes send messages to the network address of load balancer 9 through a generalized gateway (SMS aggregator for a2p service or a PCEF operator's gateway for P2a).
  • load balancer 9 is implemented by the network topology by including additional routers with programmatic logic for routing network packets. In order to simplify figure 1, this architecture is functionally included in module 9 and is not disclosed in figure 1.
  • Hardware modules 1, 4, 7, 8, 9 can be executed on one network node or different, can be present in the basic network of SPRS and / or outside it.
  • the modules 1,4, 7, 8, 9 themselves are a complex of software and hardware (computers) of the von Neumann architecture of a universal or specialized form and in the general case contain:
  • the network card controller is implemented in the form of a board containing a processor memory and auxiliary logic, configured to process incoming and outgoing network packets with a transmission speed.
  • the central processing unit can be implemented in a single / multiprocessor version, controls the operation of the unit, executes instructions and processes the data stored in memory.
  • the memory of the corresponding nodes contains (compiled) blocks of the source code (compilation units) converted to the internal machine representation: interface module, informal and formal module of regex regular expression languages, neural network neural net, configuration broker, analytical nodes.
  • the interface module 4 contains a video controller - a microcircuit that forms a video image on the monitor of the system administrator.
  • the monitor is configured to display an image including a graphical interface and / or command line interface providing traffic channel management tools (SMPP, SMTP, other known from the prior art), defining message classification categories, defining and displaying simplified user strings - substring search patterns in a string, displaying the administrator’s input of the system of probabilistic coefficients, visual control by training and testing the neural network.
  • SMPP traffic channel management tools
  • Input devices keyboard, mouse, etc.
  • the data storage (hard disk) of the interface module 4 is intended for storing historical data for the purpose of post-processing by the neural net module 3, training samples and other data, and the hard disk controller for receiving, transmitting and processing data from the data storage.
  • Figure 2 illustrates the general scheme of a2p service, as is clear to a specialist, not limited to Fig.2, the invention can be used in P2A, A2A, P2P services.
  • SMS sent to the subscriber can be a bank SMS distribution, SMS advertising offers, SMS notifications of social networks and any other known from the prior art.
  • TSC Traffic Classification System
  • TSC Traffic Classification System
  • ESMEn Traffic Classification System
  • On figa shows a generalized sequence of SMPP TCP / IP calls A2P traffic to receive, analyze and send SMS messages SMPP protocol (specification 3GPP 3G TS 23.039).
  • the example illustrates SMS messages in the direction from the external network node ESME to the MS of the subscriber of the mobile radio communication system (SPRS).
  • SPRS mobile radio communication system
  • the dashed line shows the signal calls, the solid calls of the TSRNR.
  • a standard signaling dialog for establishing a connection between the ESME and SMSC of the SPRS subscriber takes place.
  • Signals of the SMPP protocol according to well-known rules, are stacked in the OSI protocol stack and transmitted via TCP / IP to the network.
  • the external ESME node After the connection is established, the external ESME node generating an SMS message by the same rules puts the SMS message deliver sm, data sm on the OSI protocol stack, fragmentes the TCP / IP packets and sends it to the network.
  • TCP / IP packets are sent to the IP address of the load balancer of the traffic classification system of Figure 1 9.
  • redirection of SMS messages from various ESMEs to the IP address of the load balancer can be implemented through a network intermediary that aggregates SMS messages from various ESMEs (so-called SMS aggregators, not shown in Fig.).
  • the load balancer in accordance with the forwarding algorithm, forwards packets to the IP address of the corresponding analytic node in Fig. 1. 8.
  • the analytic TCS processor process applies the analysis algorithm to SMS messages (SMS PDU analysis and processing) and then sends SMS to the network to SMSC (SMS Center) SPRS subscriber 4, and the message classification symptom is directed to the interested SPRS node, for example, to SCP billing node 5.
  • SMSC SMS Center
  • TCS stores all received SMS messages in the data store of user interface 4 and carries out their post-processing with modules 2 regex and 3 neural net 3, after which it transfers the results of the classification to the interested operator node.
  • This mode can be used in addition to online classification to clarify the classification results obtained in real time in Fig.2A is not shown.
  • Figure 2b shows npnMepSMPP TCP / IP traffic P2a calls for receiving, analyzing and sending SMS messages of the SMPP protocol (3GPP 3G TS 23.039 specification).
  • SMS as an example, from the SMSC of the SPRS operator to the external ESME node.
  • the dashed line shows signaling calls, continuous TCP / IP calls.
  • the clients of the traffic classification system in the SMS message classification option are mainly SPRS operators, and the network nodes are mobile subscriber stations (MS Mobil Station), short message service centers (SMSC Short Message Service Center) of the SPRS operator, service or application VAS Value Added Services ) SPRS operators or other external nodes (ESME External Short Message Entities).
  • Clients send SMS messages to the network IP address of the load balancer 9, which implements the routing algorithm of network packets for load balancing (not shown in FIG. Za, 36).
  • Client packet redirection can be implemented on the PCEF gateway node of the SPRS operator.
  • the SPRS subscriber sends an SMS message from his MS, a number of calls 1-2 are made using signaling protocols for delivering outgoing SMS to SMSC.
  • SMSC starts a typical SMPP request / response sequence as an SMS sender to an external ESME 3-4 node. After the connection is established, 3-4 SMSC puts the SMS message deliver sm, data sm on the OSI protocol stack, fragmentes it onto TCP / IP packets and sends PCEF 5 to the network through the SPRS gateway.
  • PCEF at the transport level replaces the recipient IP address of the TCP packet with the balancer's IP address load 9 of the traffic classification system 6.
  • the packets After routing the packets by the load balancer 9, the packets arrive at the network interface of the analytical node 8 TCS where they are collected in the SMS PDU and then the analysis and processing (SMS PDU analysis and processing) is performed.
  • the analytic node After classifying the message, the analytic node sends the message to the IP address of ESME 7, and sets the sender IPEF gateway address PCEF as the sender's IP address.
  • an SMS 8 confirmation message dialog is generated, and the TCS (Traffic Classification System) traffic classification system sends to the address of the interested node (for example, the SCP billing node) an SMS classification symptom of classification mark 8.
  • Post-processing of the saved message array within P2a traffic can be carried out similarly as described above for a2p traffic.
  • Fig. 3a illustrates the generalized algorithm of the traffic classification system by the example of a series-parallel mode of operation of the traffic classification system.
  • analytic node 8 receives an SMS message — network packets are captured, packets are aggregated into streams, packets (streams) are classified according to the application level protocol, data extraction and other standard DPI traffic analysis operations are performed.
  • the process pool manager initiates a process-handler that checks the message size, parses the message into significant fields for analysis (text, sender, recipient, service data, etc.) forms the corresponding data structure with separation into significant fields and places it in the analytical memory node 8.
  • the program logic of the analytical node provides for the transfer of the message structure to the interface module 4 for recording in the data warehouse 4 in order to accumulate historical data and post-processing.
  • Stage 5 offers the administrator the choice of a classification algorithm with Regex clear logic algorithms or the Neural net heuristic algorithm.
  • the system administrator is given the option to change the rules for analyzing the message. For example, if in messages in a random order, not possible for formalization (expression in the program logic of the algorithm), the syntax or semantics of the message changes, symbols of another alphabet appear and / or new words and phrases borrowed from other languages appear (for example, deadline, public relations , zoom, etc.).
  • the system administrator at his discretion, introduces simplified string patterns that are intuitive to him, which, from his point of view, are acceptable for recognizing the changed semantics of the message.
  • the input of informal templates-strings is carried out by the technical means of the regex module of the user interface configuration module 5 - the administrator defines informal user-template strings-templates.
  • the administrator can determine the probabilistic coefficients user factor Pf for assigning messages to a predefined category — type of traffic (category i), FIG. For, 36.
  • the administrator checks the correctness of the input on the monitor using the visual controls (graphical interface) drawn by the video controller of the user interface module 4.
  • user template data converted to a machine view is transmitted and stored in the memory of regex module 2 and then according to a set of machine instructions
  • the informal regular expression language irrigex module 2 converts custom patterns into regular expressions of the already formal regex language.
  • the transformation includes the programmatic generation of the irrigex struct data structure of the informal language irrigex and its transformation into the regex struct structure corresponding to the templates (regular expressions) of the already formal regex regular expression language.
  • the analysis rule compiler 1 forms the final configuration of analysis rules config - a program module that is an object code file with instructions for analyzing significant message fields and transfers it to memory for configuration broker 7, which reproduces the assigned set of copies of the configuration object code file and transfers it to the assigned analytical nodes 8.
  • the analytical node 8 places the configuration in the memory of the corresponding processor process, which uses it to process the text of the significant fields of the message and then generates a sign assigning a message to a predefined category, type of traffic - step 11.
  • the significant fields of the string message can be transmitted to the neural net module 3 to the input of the neural network (steps 14-18) to clarify the classification (step 11) or the message is transmitted to the network for sending to the recipient 13.
  • This "loop" allows you to specify the category of messages online using neural net after applying the regex rules.
  • module 3 neural net uses the machine representation of the probability coefficient Pf obtained from module neural net 6, step 15. After working out the classification algorithm for the neural network, steps 16, 17, the program algorithm for converting the threshold value of the neural net network according to the coefficient Pf - step 18.
  • the process the processor determines the category of the message and then passes to the network for sending - steps 11,12.
  • steps 14-18 steps 1-10 are applied to the next message, this achieves sequentially-parallel processing of messages.
  • Fig. Zb illustrates a block diagram of a parallel message processing.
  • clear classification algorithms based on the Regex rules — steps 5–9 and heuristic neural network classification algorithms Neural net — steps 13–17 are simultaneously applied to the significant fields of the string message.
  • the program algorithm of the processor process waits for the completion of the execution of both branches of the algorithm, steps 13-17 assume the transfer (copying) of the significant fields of the string message to module 3 neural net and the execution of the classification algorithm for the neural network.
  • a message classification symptom is formed (the program logic of steps 5–9 and 13–17 are performed similarly to the version of parallel-parallel processing). Further, the message and the classification attribute are sent to the recipients - steps 10-12.
  • FIG. 4 illustrates a data processing flowchart for a traffic classification system.
  • SMS pdu flow after network load balancing logic module 9 arrives at the network interface of the analytic node 8.
  • the analytical node receives the network packet 6 performs standard operations (DPI Deep Packet Inspection) of packet classification , aggregating them into streams, and according to the software algorithm of the processor process, generates an SMS struct 7 data structure that is a machine representation of the significant data of an SMS message - length length, sender sender, receiver, text message ia - a string string that includes semantic fields fieldn that are significant for analysis and classification.
  • DPI Deep Packet Inspection standard operations
  • SMS struct 7 data structure that is a machine representation of the significant data of an SMS message - length length, sender sender, receiver, text message ia - a string string that includes semantic fields fieldn that are significant for analysis and classification.
  • the user interface module 4 contains in memory the data defined by the system administrator: message classification categories - categoryi lb, informal line template - user template la, probability coefficient for assigning a message to a certain category - user factor Pf 1zie.
  • the regex module 2 based on the informal template-string 1a, according to the program algorithm of the informal regular expression language irrigex generates an irrigex struct 2 structure that includes data and methods for various operations such as searching for the occurrence of a template, performing a string replacement, etc., and saves it in the module memory.
  • the program algorithm of module 2 converts the data of the structure of the informal language irrigex struct 2 into the data structure of the corresponding standard language of regular expressions regex struct 3 that defines the rules for text analysis.
  • the program algorithm of the analysis rules compiler 1 collects the config file 4 - the software module for the analysis rules configuration that includes the data and methods for processing them to methods (..) of the regex struct 3.
  • Configuration broker 7 reproduces (copies) the number of config files specified by the program algorithm and distributes them by analytical nodes 8 (not shown in Fig. 4).
  • the processor process uses a software algorithm, applies the rules for analyzing the configuration file config to the meaningful fields of the string 8 message and generates a classification attribute based on the result, i.e. assigns a message to one of the predefined categoriesi 16 categories.
  • the process handler transfers the significant fields of the string message to module 3 neural net.
  • Significant fields of the message field n are fed to the input elements of the neural network 9, after the classification logic is completed, the output elements Ci of the neural network generate the corresponding probability coefficients Fai (Ci) to classify the message into a certain category 1.
  • the program algorithm for converting the threshold value of module 3 neural net converts the function of the output elements Ci (threshold value) taking into account the coefficient Pf 1 victim - Fai (Xi, Pf) 5 réelle. This provides an impact. a user probability coefficient Pf that a message is categorized as a message to a classification result. After that, a sign is formed for classifying the message, assigning it to a certain category 10.
  • the program algorithm of module 3 neural net assigns a sign for classifying messages of that category categoryi, the threshold value of which ⁇ fensiv of the corresponding output neuron Ci prevails and exceeds the confidence interval set by the user coefficient Pf.
  • the presented architecture of the traffic classification system assumes module spacing on different network nodes.
  • the system performance is achieved by processing messages with regex rules only on the analytical node 8.
  • Performance scaling along with the well-known measures taken by the load balancer, is achieved by reproducing and redistributing the configuration of the analysis rules by the broker of the configurations to the analytical nodes and maintaining their required number.
  • the system architecture allows the administrator to perform steps 6-10, 14-18 of FIG. 3a and 5-9, 13-17 of FIG. 3b in sequentially-parallel and parallel mode, respectively.
  • the system architecture allows you to apply custom settings - changing the operating mode, disabling / enabling regex and / or neural net processing, entering templates and probability coefficients, without interrupting the analysis of the online message flow.
  • the main property and advantage of the system proposed by the authors is the flexibility and universality of the classification classification by ordinary administrators of network nodes through the use of the author's informal regular expression language irregex, which performs its logic in the 3 regex module.
  • the functionality of the simplified input of text recognition templates allows you to remove restrictions on the maintenance of the device by highly specialized highly qualified specialists and provide the opportunity for its operation to ordinary telecommunication specialists.
  • the developers of semantic analysis solutions are inevitably forced to engage in the time-consuming, not always possible refinement of the architecture of the semantic analysis solution.
  • An accidental change in the message scheme and structure in the initial server settings by default cannot be determined, and it is not possible to foresee formalizing all possible message formats for obvious reasons.
  • module 4 of the user interface available for configuration translates the server proposed by the authors from the category of specialized equipment in the category of telecommunication network nodes available for configuration by ordinary experts in telecommunications.
  • the inclusion of the informal language irregex in the system architecture made it possible to interact with any various standard regex languages and connect them for analysis in accordance with the user's preferences.
  • the inclusion of user probability coefficients in the classification process, and the implementation of the neural net module with the ability to adjust the results of a neural network allows the system administrator to quickly respond to changes in the scheme and semantics of the message and promptly "tweak" the results of neural classification.
  • the classification method both in serial-parallel mode and in parallel, provides a significant increase in the classification accuracy due to the synergy of the regex and neural net algorithms.
  • the method and architecture of the traffic classification system provides indirect interaction of user settings, while the system administrator can configure them independently.
  • the proposed traffic classification system is demonstrated above by the example of SMPP traffic in the framework of the interaction of a2p, p2a.
  • the proposed solution can be used for semantic analysis of the message flow of P2P, A2A services, mainly small amounts of text.
  • other standards and applications including, for example, the SMPT specification for mail e-mail services, without going beyond the scope of legal protection of the proposed method for classifying traffic and device architecture for its implementation.
  • the present invention was tested in PJSC Megafon and PJSC VimpelCom, as a result of the work, the claimed technical effect is confirmed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Machine Translation (AREA)

Abstract

Предложены способ и реализующая его система классификации трафика предоставляющие гибкую и универсальную настройку классификации обычными администраторами сетевых узлов за счет применения авторского неформального языка регулярных выражений irregex. Выполнение системы классификации с применением неформального языка регулярных выражений irregex позволяет снять ограничения на обслуживание системы узконаправленными высококлассными специалистами и предоставить возможность ее эксплуатации обычным телекоммуникационным специалистам. Включение в процесс классификации пользовательских вероятностных коэффициентов, и выполнение модуля neural net системы классификации с возможностью корректировки результатов работы нейросети (собственной архитектуры или сторонних инструментов) позволяет администратору системы быстро реагировать на изменение схемы и семантики сообщения и оперативно «подправлять» результаты нейронной классификации. Причем способ классификации, как в последовательно-параллельном режиме, так и в параллельном, обеспечивает существенный прирост точности классификации за счет синергии алгоритмов regex и neural net. Что особенно важно способ за счет архитектуры системы классификации траффика обеспечивает опосредованное взаимовлияния пользовательских настроек, при том, что администратор системы может настраивать их независимо.

Description

Система классификации трафика
Предлагаемое изобретение относится к области обработки данных, в частности к системам синтаксической обработки потока текстовых данных, используемым в телекоммуникациях, и предназначено для обработки сообщений, передающихся как между абонентами, так и между абонентами и информационными системами и может использоваться в а2р, р2а, р2р, а2а сервисах.
В задачах обработки данных почти всегда возникает вопрос о последовательном уточнении результатов по мере поступления новых данных "на лету". Общеизвестен рост трафика а2р, р2а, р2р, а2а сервисов. Банки, социальные сети, мобильные операторы генерируют большой объём сообщений для информирования своих клиентов в том числе автоматически. Технологии SMS и USSD стандартизованные в рамках SMPP протокола по-прежнему востребованы в рамках указанных сервисов. В этой связи возникает задача классификации траффика. Задача классификации траффика по типу протокола или приложения - тип траффика SMPP для SMS и USSD, SMTP для mail, и др., на современном уровне техники решена за счет известной технологии анализа сетевых пакетов. Задача распознавания вида траффика по семантике сообщений (рекламный, транзакционный, сервисный, международный, мошеннический траффик и т.д.) для принятия бизнес решений представляет собой сложную техническую задачу. Из уровня техники можно выделить два основных способа классификации текста - семантический анализ текста на основе регулярных выражений и классификация текста эвристическими методами, основу которых составляют методы машинного обучения. У каждого способа есть свои преимущества и недостатки. Специфика а2р, р2р, р2а, а2а траффика в общем случае заключается в том, что большой массив текстовых данных представляет собой множество коротких сообщений. В части машинного распознавания это представляет сложности т.к. в небольшом тексте значительно меньше полезных признаков, и велико влияние порядка слов в сравнении с классификацией больших блоков текста. Это усугубляется тем, что этот траффик сильно подвержен изменениям как в синтаксической, так и в семантической части, причем для устройства распознавания траффика эти изменения происходят беспрерывно (онлайн).
Из уровня техники известны технологии семантического анализа, в основном представленные программно-аппаратными комплексами, выполненными по клиент-
1
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26) серверной архитектуре. IBM LanguageWare платформа, представляющая собой набор Java, C++ библиотек, обеспечивает разработчиков набором инструментов для обработки естественного языка (Natural Language Processing, NLP). IBM Alchemy API - облачный сервис предоставляющий технологию NLP по SaaS модели через свои интерфейсы API, есть набор средств разработки (SDK) поддерживаемый компанией IBM. Оба этих инструмента предоставляют встраиваемых клиентов API, непосредственная обработка текста выполняется на удаленных серверах компании-разработчика. PalitrumLab EUREKA ENGINE - отечественный представитель платформ лингвистического анализа, предоставляется как по внешнему API, так и в качестве встраиваемой системы для бизнес- приложений. У указанных систем есть свои преимущества и недостатки, так LanguageWare и AlchemyAPI более приспособлены для обработки больших объемов текста и показывают меньшую эффективность при обработке потока разнородных сообщений. PalitrumLab, хорошо справляясь с вероятностной обработкой потока текстовых данных, не поддерживает их четкую классификацию. Существуют другие технологии, в целом однотипные по облику и архитектуре.
Существенным недостатком, объединяющим указанные выше и другие известные решения, с точки зрения авторов, является отсутствие возможности на уже запущенной системе применять пользовательские настройки. Настройки анализа прописываются разработчиками в коде при интеграции клиентов или самостоятельных систем в бизнес- приложения и применяются к данным после компиляции. Т.е. конфигурирование известных систем доступно только специалистам, разрабатывающим клиентское ПО для интеграции в бизнес-приложения. Пользователям, обслуживающим бизнес-приложения, настройка правил анализа недоступна. Рост количества гетерогенных узлов в сети общеизвестен, возрастает обмен данными, требующий разнородного анализа. Уровень техники не позволяет формализовать, т.е. положить на логику алгоритма, все текущие и будущие прикладные задачи семантического анализа. В то же время, инженерам и пользователям бизнес-приложений требуется универсальный инструмент, позволяющий без трудоемкого изменения алгоритма оперативно изменять и применять правила обработки текстовых и других данных при существенном изменении схемы текстовых данных (синтаксиса и семантики сообщения). По этой же причине роста гетерогенных узлов в сети важное значение имеет производительность оборудования и алгоритмов управления им.
Авторы предлагают универсальное решение классификации траффика по категориям, т.е. семантическому виду траффика - рекламный, транзакционный, сервисный, международный, мошеннический и др. Решение совмещает точный разбор текста по семантическим атрибутам и вероятностную классификацию текста на основе машинного обучения. Алгоритм способа классификации и архитектура системы, реализующая его предоставляет администраторам системы в режиме реального времени настраивать категории классификации сообщения, правила его анализа и корректировать результаты сепарабельности (отделимости результатов классификации) нейронной сети. Причем предлагаемые настройки предоставляются широкому кругу пользователей и не требуют глубокой подготовки в вопросах семантического анализа и/или машинного обучения. Дополнительно, способ интегрируется в разнородные программно-аппаратные платформы (узлы сети), и масштабирует свою производительность в соответствии с потоковой нагрузкой онлайн.
Известен патент N°US8494987 от 23.07.13г. представляющий систему и способы генерации гипотез, в котором локальная или распределенная система взаимодействует с базой данных и содержит модуль генерации гипотез, модуль хранения концепций, на основании которых генерируются гипотезы, а также модули пользовательского ввода и вывода результатов. А способ генерации гипотез заключается в предварительном вычислении гипотез на основе предустановленных концепций (теме знаний) и данных БД, причем после приема пользовательского ввода система генерирует по крайней мере одну гипотезу, основанную на совместно встречающихся концепциях (теме знаний) имеющих отношение к сущностям, выделенным из пользовательского ввода (предложения, утверждения).
Способ требует пользовательского ввода базы знаний или указание на базу данных по принадлежности к анализируемым сущностям или инструкции по обработке текста, что исключает его использование в режиме постоянно поступающих больших объемов онлайн данных.
Недостатком программно-аппаратной архитектуры является «вертикальная», не масштабируемая модульность программной архитектуры, в которой модули жестко сконфигурированы для последовательного выполнения функций анализа-загрузка данных из БД, предварительного вычисления, приема пользовательских данных, вычисления, вывода.
Патент N° PCT/US2007/063983 от 14.03.2007г. описывает программный продукт, систему и способ генерации гипотез из базы данных, по которому строятся и заводятся в структуры различные семантические связи между концепциями и понятиями и/или концепциями и концепциями по определенным правилам отношений и на основании разбора множества документов в предустановленном репозитории. Фразы назначаются по одному из множества понятий, или идентификатору отношения, связывающего одно понятие со вторым, или присвоение одного понятия семантической категории или расположение концепций в иерархической взаимосвязи.
Недостатками такого решения также является его неприменимость при обработке постоянно поступающих потоковых данных и невозможность масштабирования нагрузки.
Заявка РСТ N2WO2013/135474 от 22.02.2013г. притязает на способ семантического анализа текста, заключающегося в построении матрицы векторов вхождений слов в обучающую выборку документов, например статей Википедии, обучении 1 нейронной сети (самоорганизующейся карты Кохонена) этой выборкой документов и векторов, сопоставление документов, содержащих целевое слово и множество координат карты (область) вхождений этих документов, определения семантического контекста слова и сохранение соответствия в словарь, карту шаблонов. Обучение второй нейронной сети на документах того же языка, состоящее из построения последовательности предложений из документов обучающей выборки, подсчет коэффициента сложности документа (частота слова в документе и т.д.) и сортировка слов в последовательности. И обучение сети документами выборки с возрастанием коэффициента семантической сложности, сопоставление карты и слов второй выборки, обучение второй (как правило иерархической) нейронной сети картами шаблонов.
Решение основано только на эвристических методах анализа, не предполагает четкой классификации текста, не приспособлено под оперативную настройку правил анализа и не применимо к анализу потоковых данных.
Патент RU2615632 от 20.03.2015г. предлагающий способ распознавания коммуникационных сообщений в части определения имени отправителя и предполагающий наличие специальных символов в сообщении выделяющих имя отправителя или запрос на сервер с предустановленной базой данных имен абонентов и определение имени отправителя по результатам сравнения содержимого заданного определителя и имени пользователя в базе данных. При этом семантический анализ согласно изобретению может быть реализован аппаратно за счет доработки мобильного терминала модулями обработки текста и связи с сервером БД.
В данном решении очевидными недостатками является предопределение набора семантических признаков отправителя, вынужденное поддержание базы данных с именами пользователей, решение предусматривает аппаратную доработку конечного устройства пользователя устройством распознавания. Отсутствие алгоритмов нечеткой логики (машинного обучения), невозможность настройки правил также отмечается как недостаток.
Наиболее близким по технической сути и принятый за прототип является патент RU 2429533 от 29.06.2009г. который описывает механизм динамического синтаксического анализа/компоновки на основе схем для синтаксического анализа мульти форматных сообщений выполняющий прием сообщения в различных форматах, преобразование его в общий формат, определение грамматической структуры данных формата сообщения и на ее основании указания на подходящий обработчик. Причем обработчики выполнены модулями с отдельной компиляцией и могут добавляться в архитектуру по мере появления новых форматов сообщений. За счет подгрузки отдельных модулей обработки достигается выигрыш в производительности системы анализа в целом. Дополнительный выигрыш в производительности достигается за счет индексации внутреннего формата сообщений. Маршрутизация сообщений к обработчикам, правила обработки и новые спецификации загружаются динамически в БД при регистрации новой услуги, за счет этого достигается универсальность решения.
Такое решение применимо для обработки данных, поступающих в потоке онлайн, однако очевидным недостатком является процесс лексического и синтаксического разбора сообщений только по правилам анализа описания синтаксиса формальных языков (парсинг). Представляется, что этого недостаточно для сематического анализа, осмысления текстовых сообщений естественного языка для принятия бизнес решений. Хотя американскими авторами указано, что обработчики загружаются динамически в БД, и новые обработчики не влияют на работу системы в целом, это не избавляет авторов решения от необходимости разработки, компиляции и тестирования каждого нового обработчика для загрузки.
Авторы отмечают интересное решение индексации формата сообщений, вытекающего из архитектуры такой системы, тем не менее отмечают и недостатки прототипа: Невозможность ручной «горячей» пользовательской настройки правил анализа онлайн без необходимости заблаговременно разрабатывать, тестировать и подключать новый модуль обработчик семантического анализа для новой грамматики.
Отсутствие вероятностной оценки сообщения. Плохая аппаратная масштабируемость - отсутствие решения для автоматической настройки производительности системы при повышении нагрузки - существенного увеличения входящих сообщений.
Технической задачей предлагаемой системы классификации траффика по способу классификации а2р, р2а, р2р, а2а траффика по предопределенным семантическим категориям траффика является: повышение гибкости классификации сообщений за счет ручного пользовательского определения интуитивно понятных неформальных шаблонов-строк, применяемых к анализу текста и определения вероятностных коэффициентов отнесения сообщения к определенной категории;
повышение надежности классификации сообщений за счет объединения алгоритмов четкой логики на основе применения регулярных выражений, эвристических алгоритмов нейросетей и дополнительной гибкой настройки этих алгоритмов в соответствии с пользовательскими определениями шаблонов-строк и вероятностных коэффициентов; повышение производительности анализа сообщений за счет динамического генерирования (воспроизведения) и распределения конфигурации правил анализа по множеству узлов, анализирующих сообщение.
Внедрение в процесс аналитической обработки текста указанных выше пользовательских настроек выводит ее на новый универсальный уровень, на которым процесс обработки не только подвластен обычным администраторам (пользователям) системы, не являющимся специалистами в области семантического анализа, языков и диалектов регулярных выражений, но и неограничен существующими и будущими прикладными задачами анализа, обусловленными изменениями схемы сообщения. Более того, совместное их применение к анализируемым сообщениям обеспечивает существенное повышение достоверности анализа. Взаимовлияние настроек пользователя на результат классификации предопределено последовательностью выполнения способа, предполагающего сначала применение неформальных шаблонов-строк к тексту сообщения алгоритмами четкой логики, и последующим применением вероятностных коэффициентов к результатам эвристических алгоритмов нейросети. При этом способ предусматривает не зависимость определения пользовательских настроек.
Технический результат способа классификации трафика достигается за счет системы классификации трафика, в соответствии с которым принимают сообщение естественного языка, определяют схему сообщения, делят сообщение на значащие синтаксические (семантические) поля, предоставляют множество узлов для анализа значащих полей сообщения, к которым применяют правила анализа текста в зависимости от прикладного протокола сообщения, причем для классификации сообщения по определенным категориям определяют неформальный шаблон-строку неформального языка поиска и обработки подстроки в строке и вероятностный коэффициент отнесения сообщения к определенной категории, преобразуют неформальный шаблон-строку в регулярное выражение стандартного языка поиска и обработки подстроки в строке, преобразуют регулярное выражение стандартного языка в программный модуль конфигурации правил анализа текста содержащий данные и методы обработки строк, динамически создают множество программных модулей конфигурации правил анализа и распределяют их по множеству узлов для анализа значащих полей сообщения, применяют конфигурацию правил анализа к значащим полям сообщения, подают сообщение на вход нейронной сети, причем результат классификации сообщения нейронной сетью корректируют в соответствии с определенным вероятностным коэффициентом отнесения сообщения к определенной категории. Определение неформального шаблона-строки неформального языка поиска и обработки подстроки в строке и вероятностного коэффициента отнесения сообщения к определенной категории производят в процессе обработки сообщения. Множество программных модулей конфигурации правил анализа генерируют и распределяют по множеству узлов для анализа значащих полей сообщения пропорционально сетевой нагрузке, обусловленной количеством анализируемых сообщений. А результат классификации нейронной сети корректируют в соответствии с определенным вероятностным коэффициентом отнесения сообщения к определенной категории, трансформацией пороговой величины классификации нейросети или установлением границы достоверности выходных элементов нейросети.
Технической задачей устройства системы классификации а2р, р2а, р2р, а2а трафика для осуществления способа классификации траффика, является: улучшение эксплуатационных свойств, за счет включения в архитектуру системы классификации трафика модуля 4 интерфейса пользователя, выполненного с возможностью ручного пользовательского определения семантических категорий классификации сообщения, неформальных шаблонов-строк, применяемых к анализу сообщения для определения его категории и вероятностных коэффициентов отнесения сообщения к определенной категории;
повышение надежности классификации, за счет включения в архитектуру системы модуля 2 regex, в памяти которого содержится и процессором которого выполняется алгоритм неформального языка регулярных выражений irregex (irregular expressions) и алгоритм одного или нескольких формальных языков регулярных выражений regex (regular expressions). Причем алгоритм irregex позволяет получать неформальные пользовательские шаблоны-строки и преобразовывать их в регулярные выражения стандартных языков regex, а модуль нейросети 3 neural net выполнен с возможностью алгоритмического преобразования пользовательских вероятностных коэффициентов в трансформацию пороговой величины нейросети и/или установления границы достоверности значений ее выходных элементов;
улучшение эксплуатационных свойств, за счет возможности использования множества инструментов семантического анализа, которое достигается «инкапсуляцией» программной архитектуры-пользователю системы предоставляется только модуль 4 интерфейса пользователя, а полиморфная работа (интеграция с широкой номенклатурой стандартных библиотек regex и программ-нейроимитаторов) достигается за счет определения множества программных API интерфейсов согласования языка irregex с различными библиотеками regex и доработкой результатов работы программ- нейроимитаторов за счет программной установки границы достоверности в соответствии с определенным пользователем коэффициентом вероятности отнесения сообщения к определенной категории;
повышение производительности классификации, за счет включения в архитектуру системы модуля 7 брокера конфигурации, выполненного с возможностью динамического воспроизведения - генерирования множества программных модулей конфигурации правил анализа и распределения их по множеству узлов для применения правил анализа к анализируемому тексту.
Техническая задача решается за счет системы классификации траффика для осуществления способа классификации траффика включающей координирующий модуль, модуль определения правил анализа, модуль машинного обучения, по крайней мере один модуль применения правил анализа к значащим полям сообщения, и дополнительно включающей интерфейс администратора (пользователя) системы который выполнен с возможностью определения категорий классификации сообщения, неформальных шаблонов-строк применяемых к анализу сообщения, вероятностных коэффициентов отнесения сообщения к определенной категории и дополнительно включает модуль компилятора правил анализа выполненный с возможностью создания программного модуля конфигурации правил анализа и состоящий из модуля языка регулярных выражений и модуля машинного обучения, причем модуль языка регулярных выражений содержит в памяти и выполняет алгоритмы неформального языка регулярных выражений и по крайней мере одного формального языка регулярных выражений и выполнен с возможностью получения неформальной шаблона-строки и преобразования ее в регулярное выражение формального языка регулярных выражений, а модуль нейросети выполнен с возможностью получения вероятностного коэффициента отнесения сообщения к определенной категории и корректировки на его основе результата работы нейросети, а координирующий модуль выполнен с возможностью получения программного модуля конфигурации правил анализа, создания множества программных модулей конфигураций правил анализа и распределения их по множеству модулей применения правил анализа к значащим полям сообщения. При этом модуль машинного обучения содержит в памяти и выполняет алгоритм трансформации пороговой величины нейросети и установления границы достоверности выходных элементов нейросети в соответствии с полученным коэффициентом вероятности отнесения сообщения к определенной категории.
Изобретение поясняется чертежами:
На фиг.1 изображена функциональная схема системы классификации траффика.
На фиг.2 изображена общая схема а2р сервиса.
На фиг.2а приведена обобщенная последовательность SMPP TCP/IP вызовов способа классификации трафика в рамках а2р сервиса.
На фиг.2б приведена обобщенная последовательность SMPP TCP/IP вызовов способа классификации трафика в рамках р2а сервиса.
На фиг.За приведен обобщенный алгоритм последовательно-параллельного режима работы системы классификации трафика.
На фиг.36 приведен обобщенный алгоритм параллельного режима работы системы классификации трафика.
На фиг.4 приведен обобщенный процесс преобразования данных системой классификации трафика.
Функциональная схема устройства реализующего предлагаемый способ сетевого семантического анализа представлена на фиг.1. Модуль 1 компилятора правил анализа включает модуль 2 regex и модуль 3 neural net. Основной функцией модуля 1 является сборка правил анализа в программный модуль конечной конфигурации правил анализа и передача его в модуль 7 брокера конфигураций для дальнейшего воспроизведения заданного количества программных модулей и передачи их в аналитические узлы 8 для применения к сообщению.
В памяти модуля 2 regex хранятся данные и машинные команды с инструкциями процессорам скомпилированного неформального языка регулярных выражений - irregex и динамические и/или статические единицы трансляции, содержащие команды и данные по крайней мере одного известного из уровня техники стандартного языка регулярных выражений - regex. В качестве языков regex память может содержать несколько стандартных языков - это могут быть известные библиотеки regex языков Perl, Java, C++ и других известных из уровня техники. Согласование данных между языком irrigex и regex достигается переопределением программных интерфейсов (полиморфизмом) языка irregex и программной логикой преобразования сгенерированных структур irregex в структуры regex. Программная логика преобразования структур irrigex в структуры regex включена в функциональность неформального языка irrigex разработанного заявителем и являющимся его ноу-хау. Обобщенный метод преобразования структур irrigex в структуры regex заключается в согласовании API интерфейсов данных и методов их обработки языка irrigex и доступных в памяти модуля языков regex при сохранении семантики неформального шаблона-строки языка irrigex. Выбор конкретного языка regex может осуществляется администратором системы в модуле 5 настройки regex.
В памяти модуля 3 нейросети neural net хранятся данные нейросетевой структуры (нейронная сеть). Существует большое количество программных продуктов (программ- нейроимитаторов), предоставляющих инструменты для проектирования нейросетевых структур анализа текста - платформы Keras, SyntaxNet, Microsoft Cognitive Toolkit (CNTK) и другие известные из уровня техники. Нейронная сеть может быть спроектирована самостоятельно на известных языках программирования, такой вариант предпочтителен и используется заявителем т.к. предоставляет возможность программного преобразования (трансформации) пороговой величины нейросети в соответствии с пользовательским коэффициентом вероятности Pf полученным из модуля 6 настройки neural net т.к. не все программы-нейроимитаторы предоставляют возможность такого преобразования. В контексте предлагаемого способа классификации пороговая величина— это величина, определяющая разделение множества входных данных системы классификации траффика на подмножества, каждое из которых является определенной администратором системы семантической категорией классификации сообщения (рекламное, транзакционное, сервисное, международное, мошенническое и др.) categoryi фиг.4 lb. Как известно разделение множества на классы (подмножества) должно подчиняться правилу попадания элемента входных данных только в одно подмножество, а объединение всех подмножеств должно совпадать с множеством входных данных. В зависимости от количества предустановленных категорий классификации или размерности пространства классификации выходные элементы нейронной сети в соответствии с функцией активации формируют пороговую величину разделения этого пространства. Например, в случае двух категорий классификации - рекламное и сервисное сообщение, пространство категорий представляет собой плоскость, а пороговая величина представляет собой линию разделяющую эту плоскость и формирующую подмножества категорий классификаций. Значения выходных нейронов определяют координаты распределения сообщений на плоскости категорий (например, рекламный траффик 0,5, сервисный 0,3). Если администратор системы предполагает, что в соответствии с шаблоном-строкой сообщение должно относится к рекламному траффику то он может установить для него преобладающий коэффициент вероятности Pf фиг.4 1с. Программный алгоритм преобразования пороговой величины выполняет трансформацию линии - например сдвиг в пространстве двухмерных координат (категорий классификации) с учетом преобладающего влияния категории классификации для которой администратор системы установил больший коэффициент вероятности (доверия) Pf. После выполнения сдвига большее количество сообщений попадают в подмножество рекламной категории. Большее количество категорий классификации предполагает более сложную логику трансформации в общем случае аналогичную описанной выше. Трансформация пороговой величины возможна известными методами: преобразованием функции активации Fa (X, Pf) фиг.4 1с, 5а и/или изменением значений весов нейронов смещения, других параметров нейросети в соответствии с Pf, включает сложную логику, разработанную авторами, и является ноу-хау заявителя. Алгоритм преобразования пороговой величины предоставляет администратору системы возможность оперативного уточнения результатов классификации онлайн без необходимости переобучения и тестирования нейронной сети. В другом исполнении, например при использовании нейросетей сторонних вендоров на архитектуру которых в части преобразования пороговой величины влиять невозможно корректировка результатов классификации нейросети реализуется программным установлением допустимой границы достоверности классификации фиг.4 lc, 5b. В этом случае под доверительный интервал попадают результаты, превышающие установленную границу достоверности Pf. Обучение нейросети осуществляется по наборам учебных данным, также передающимся на вход нейросети из модуля 6. Модуль 4 пользовательского интерфейса предназначен для взаимодействия с администратором (пользователем) системы и в различных вариантах может иметь интерфейс командной строки и/или интерфейс, исполненный в виде графических изображений, включает визуальные интерактивные средства контроля различных каналов трафика (SMPP, SMTP, HTTP и т.д.). Модуль 4 пользовательского интерфейса включает модуль 5 настройки regex предоставляющий администратору системы определять категории классификации сообщений фиг.4 lb например: транзакционная категория для выявления SMS запроса получения логина/пароля, рекламная категория для выявлений SMS с рекламными предложениями (оповещениями), сервисная категория для SMS взаимодействия пользователя с оператором СПРС, международная и др. Модуль 5 настройки regex предоставляет администратору определять упрощенные неформальные шаблоны-строки user template фиг.4 la которые ему предпочтительны для применения к сообщению с учетом текущего формата синтаксиса и семантики сообщений для каждой определенной категории. Модуль 5 настройки regex предоставляет администратору определять коэффициент вероятности отнесения сообщения к определенной категории user factor Pf фиг.4 1с. Администратор системы определяет неформальные шаблоны- строки user template фиг.4 la вне правил задания формата регулярных выражений языков regex. Коэффициент вероятности Pf жестко не «привязан» к неформальному шаблону- строке, т.к. при последующей обработке user template приводится в формат языков regex фиг.4 3., a Pf преобразуется в трансформацию пороговой величины фиг.4 5а, 5Ь. Применяются данные настройки к сообщению независимо фиг.4 8,10. Опосредованная связь их взаимовлияния на итоговую классификацию сообщения определяется тем, что обработка сообщения в модуле 3 neural net фиг.4 9 производится после применения правил модуля 2 regex фиг.4 8. Т.е. после классификации сообщения алгоритмами четкой логики regex по шаблону пользователя фиг.За 6-10, 36 5-9, последующий результат классификации neural net уточняется фиг. За 11, 36 10 по Pf «коэффициенту доверия» фиг.За, 15-18, 36 14-17 пользователя к применению своего шаблона. Возможность ввода произвольного формата шаблонов-строк интуитивно по собственному усмотрению администратора системы, избавляет его от необходимости вникать в правила и диалекты языков regex, а также предоставляет возможность оперативного изменения параметра классификации (шаблона-строки) и установления доверия к нему Pf при мало прогнозируемом изменении формата сообщения (синтаксиса, семантики, схемы сообщения). В дальнейшем после преобразований в модуле 2 regex измененный шаблон- строка применяются к значащим полям field (атрибутам) сообщения фиг.4 8. Такими полями могут быть например данные отправителя, получателя, текст сообщения и могут включать редко употребляемые фразы, выражения, символы, и т.д. Модуль настройки neural net 6 дополнительно включает интерфейс для задания настроек обучения и тестирования нейронной сети, а также хранилище данных для хранения исторического массива сообщений и обучающих данных. Строки-шаблоны и вероятностные коэффициенты модуль 4 интерфейса передает соответственно в модули 2, 3 модуля 1 компилятора анализа для дальнейшей обработки.
Модуль 7 - брокер конфигураций выполняющий функции координирующего модуля получает программный модуль конфигурации правил анализа сгенерированный компилятором правил анализа 1 , воспроизводит необходимое множество конфигураций и распределяет их по аналитическим узлам 8. Программно-аппаратная логика брокера конфигураций создает и поддерживает требуемое количество аналитических узлов в зависимости от анализируемого системой типа трафика (SMS, USSD, mail, др.) и распределяет аналитические узлы в зависимости от нагрузки в дополнение к балансировщику нагрузки 9, распределяет между аналитическими узлами 8 программные модули конфигурации правил анализа, осуществляет их запись/перезапись в память аналитических узлов. Программно-аппаратная логика брокера конфигураций допускает обработку сообщения в рамках одной сетевой сессии (отправитель-получатель) несколькими аналитическими узлами и/или обработку одним аналитическим узлом сообщений разных установленных сетевых сессий. В общем случае логика распределения конфигурации правил анализа по аналитическим узлам 8 определяется типом анализируемого траффика, нагрузкой (количеством поступающих сообщений) по каждому типу траффика и синтаксической и семантической принадлежностью сгенерированной конфигурации. Например, менее подверженная изменениям сервисная структура SMS траффика (направление одноразового пароля-сервисная категория трафика) может анализироваться одним аналитическим узлом 8 в рамках разных сетевых сессий.
Аналитический узел 8 обрабатывает сообщения в соответствии с конфигурацией правил анализа, предоставляет интерфейсы для приема определенного типа трафика в соответствии с протоколом (SMPP для SMS, USSD, SMTP для mail, и др.). Сбор сообщения из сетевых пакетов, разбор по значащим полям и применение конфигурации правил анализа производится по командам и данным процесса-обработчика. Аналитический узел содержит пул таких процессов, логику их создания, размещения в памяти и удаления. Процесс-обработчик представляет собой совокупность выполняемых машинных команд, хранящихся в памяти и являющейся частью набора инструкций процессорному устройству аналитического узла. Пул процессов обработчиков дополнительно обеспечивает балансировку нагрузки к мерам, применяемым логикой балансировщика нагрузки 9 и модуля конфигураций 7. После обработки сообщения аналитический узел классифицирует сообщение по принадлежности к предустановленной категории (рекламное, транзакционное, сервисное, международное, мошенническое и т.д.) и направляет сообщение получателю.
Балансировщик нагрузки 9 обеспечивает распределение сетевой нагрузки (переадресацию клиентских сетевых пакетов) между аналитическими узлами 8. Переадресация может быть реализована динамически на транспортном уровне известной технологией DNS-балансировки предусматривающей назначение нескольких IP-адресов одному доменному имени и выбора определенного IP-адреса в зависимости от правил балансировки (например алгоритм циклического обхода IP-адресов.)». В другой реализации балансировщик нагрузки 9 статически назначает клиентским IP адресам конкретные IP адреса аналитических узлов 8 (пример - Таненбаум Э., Уэзеролл Д. Компьютерные сети. 5-е изд.— СПб.: Питер, 2012. стр.783, 787.). В преимущественной реализации аналитические узлы 8 разнесены по разным узлам сети для обеспечения отказоустойчивости сервиса по технологии НА (High Availability) кластеров высокой доступности. В этом случае балансировщик нагрузки 9 может быть построен на основе прокси-серверов (маршрутизаторов), устанавливающих резервные сетевые соединения к аналитическим узлам 8 для обеспечения равномерного распределения клиентских запросов. Дополнительно балансировщик нагрузки 9 реализует переадресацию сообщений по типу прикладного протокола фиг.1 - сетевые пакеты SMTP протокола маршрутизируются на аналитические узлы 8 обрабатывающие SMS, USSD сообщения, пакеты SMPP адресуются на аналитические узлы обрабатывающие сообщения электронной почты. Клиентские сетевые узлы направляют сообщения на сетевой адрес балансировщика нагрузки 9 через обобщенный шлюз (SMS агрегатор для а2р сервиса или шлюз оператора PCEF для р2а). Физически балансировщик нагрузки 9 реализуется топологией сети включением в ее состав дополнительных маршрутизаторов с программной логикой маршрутизации сетевых пакетов. С целью упрощения фиг.1 эта архитектура функционально включена в модуль 9 и на фиг.1 не раскрыта.
Аппаратно модули 1, 4, 7, 8, 9 могут выполняться на одном сетевом узле или разных, могут присутствовать в базовой сети СПРС и/или вне ее. Сами модули 1,4, 7, 8, 9 представляют собой комплекс программно-аппаратных средств (ЭВМ) фон Неймановской архитектуры универсального или специализированного вида и в общем случае содержат: Контроллер сетевой карты реализованный в виде платы, содержащей процессор память и вспомогательную логику, выполненный с возможностью обработки входящих и исходящих сетевых пакетов со скоростью их передачи. Центральное процессорное устройство, может быть реализовано в одно/многопроцессорном варианте, управляет работой узла, выполняет инструкции и обрабатывает данные, хранимые в памяти. Память соответствующих узлов содержит преобразованные в внутреннее машинное представление (скомпилированные) блоки исходного кода (единицы компиляции): интерфейсного модуля, модуля неформального и формального языков регулярных выражений regex, нейронной сети neural net, брокера конфигураций, аналитических узлов. В дополнение к этому модуль 4 интерфейса содержит видеоконтроллер - микросхему, формирующую видеоизображение на мониторе администратора системы. Монитор выполнен с возможностью отображать изображение включающее графический интерфейс и/или интерфейс командной строки предоставляющий инструменты управления каналами трафика (SMPP, SMTP, другими известными из уровня техники), определения категорий классификации сообщений, задания и отображения упрощенных пользовательских строк- шаблонов поиска подстроки в строке, отображения ввода администратором системы вероятностных коэффициентов, визуального контроля обучением и тестированием нейронной сети. Устройства ввода (клавиатура, мышь, др.) и контроллер устройства ввода, отвечающий за обработку данных, введенных администратором с устройств ввода. Хранилище данных (жесткий диск) модуля 4 интерфейса предназначен для хранения исторических данных с целью их постобработки модулем 3 neural net, обучающей выборки и других данных, и контроллер жесткого диска, предназначенный для приема- передачи и обработки данных от хранилища данных. Шина-совокупность проводников соединяющих ЦПУ с памятью, устройствами хранения данных и ввода-вывода.
Фиг.2 иллюстрирует общую схему а2р сервиса, как понятно специалисту, не ограничиваясь фиг.2 изобретение может быть использовано в р2а, а2а, р2р сервисах. На фиг.2 в качестве SMS направляемых абоненту могут выступать банковские SMS рассылки, рекламные SMS предложения, SMS уведомления социальных сетей и любые другие известные из уровня техники. TSC (Traffic Classification System) - система классификации траффика мониторит все SMS сообщения переданные в сеть программами генерирующими SMS рассылку и выполняющихся на сетевых узлах - ESMEi - ESME п-ь В качестве сетевых узлов могут выступать сервера всевозможных хозяйствующих субъектов - банки, магазины и др. (ESMEn). На фиг.2а приведена обобщенная последовательность SMPP TCP/IP вызовов а2р траффика для получения, анализа и отправки SMS сообщений SMPP протокола (спецификация 3GPP 3G TS 23.039). Пример иллюстрирует SMS сообщения в направлении от внешнего сетевого узла ESME на MS абонента системы подвижной радиосвязи (СПРС).
Пунктирной линией показаны сигнальные вызовы, сплошной вызовы ТСРЯР.
На этапах 1-2 происходит стандартный сигнальный диалог установления соединения между ESME и SMSC абонента СПРС сигнальные сообщения SMPP протокола по известным правилам укладываются в стэк протоколов OSI и передаются по TCP/IP протоколу в сеть. После установления соединения внешний узел ESME генерирующий SMS сообщение по тем же правилам укладывает SMS сообщение deliver sm, data sm в стек протоколов OSI, фрагментирует на TCP/IP пакеты и направляет в сеть. По определению TCP/IP пакеты направляются на IP адрес балансировщика нагрузки системы классификации траффика фиг.1 9. Обычно перенаправление SMS сообщений от различных ESME на IP адрес балансировщика нагрузки может быть реализовано через сетевого посредника, который агрегирует SMS сообщения от различных ESME (т.н. SMS агрегаторы, на фиг. не показано). Балансировщик нагрузки в соответствии с алгоритмом переадресации направляет пакеты на IP адрес соответствующего аналитического узла фиг.1 8. Процесс обработчик аналитического TCS применяет алгоритм анализа к SMS сообщению (SMS PDU analysis and processing) после чего передает SMS в сеть на SMSC (SMS Center) СПРС абонента 4, а признак классификации сообщения направляет на заинтересованный узел СПРС, например на узел биллинга SCP 5. Далее происходит стандартный сигнальный обмен доставки сообщения 6-7 и подтверждения доставки 8. Признак классификации сообщения classification mark к определенному виду траффика оператор СПРС использует для последующих бизнес решений. В другой реализации TCS сохраняет все полученные SMS сообщения в хранилище данных интерфейса пользователя 4 и осуществляет их постобработку модулями 2 regex и 3 neural net 3, после чего передает результаты классификации на заинтересованный узел оператора. Этот режим может применяться в дополнение к онлайн классификации для уточнения результатов классификации, полученных в режиме реального времени на фиг.2а не показан.
На фиг.2б приведен npnMepSMPP TCP/IP вызовов р2а траффика для получения, анализа и отправки SMS сообщений SMPP протокола (спецификация 3GPP 3G TS 23.039). На примере SMS сообщения в направлении от SMSC оператора СПРС на внешний узел ESME.
Пунктирной линией показаны сигнальные вызовы, сплошной вызовы TCP/IP.
Клиентами системы классификации трафика в варианте классификации SMS сообщений выступают преимущественно операторы СПРС, а сетевыми узлами являются мобильные станции абонентов (MS Mobil Station), узлы обслуживания коротких сообщений (SMSC Short Message Service Center) оператора СПРС, службы или приложения ДВО (VAS Value Added Services) операторов СПРС либо иные внешние узлы (ESME External Short Message Entities). Клиенты направляют SMS сообщения на сетевой IP адрес балансировщика нагрузки 9 который выполняет алгоритм маршрутизации сетевых пакетов для балансировки нагрузки (на фиг.За, 36 не показано). Перенаправление клиентских пакетов может быть реализовано на шлюзовом узле PCEF оператора СПРС.
Абонент СПРС с своего MS отправляет SMS сообщение, производится ряд вызовов 1-2 по сигнальным протоколам для доставки исходящего SMS в SMSC. SMSC начинает типичную SMPP последовательность запроса/ответа в качестве отправителя SMS на внешний узел ESME 3-4. После установления соединения 3-4 SMSC укладывает SMS сообщение deliver sm, data sm в стек протоколов OSI, фрагментирует на TCP/IP пакеты и направляет в сеть через шлюз СПРС PCEF 5. PCEF на транспортном уровне заменяет адрес получателя IP TCP пакета на IP адрес балансировщика нагрузки 9 системы классификации траффика 6. После маршрутизации пакетов балансировщиком нагрузки 9 пакеты приходят на сетевой интерфейс аналитического узла 8 TCS где собираются в SMS PDU и далее производится анализ и обработка (SMS PDU analysis and processing). После классификации сообщения аналитический узел направляет сообщение на IP адрес ESME 7, а в качестве адреса отправителя sender IP устанавливает адрес шлюза СПРС PCEF. После получения ESME SMS сообщения производится сигнальный диалог подтверждения получения SMS 8, а система классификации траффика TCS (Traffic Classification System) направляет в адрес заинтересованного узла (например, на узел биллинга SCP) признак классификации SMS сообщения classification mark 8. Постобработка сохраненного массива сообщений в рамках р2а траффика может проводится аналогично описанной выше для а2р траффика.
Фиг.За иллюстрирует обобщенный алгоритм работы системы классификации траффика на примере последовательно-параллельного режима работы системы классификации трафика. На этапе 1 назначенный для обработки SMS сообщений, аналитический узел 8 принимает SMS сообщение - выполняется захват сетевых пакетов, агрегирование пакетов в потоки, классификация пакетов (потоков) по протоколу прикладного уровня, извлечение данных и другие стандартные операции DPI анализа траффика. На этапе 2 менеджер пула процессов инициирует процесс-обработчик, который проверяет размер сообщения, разбирает сообщение по значащим полям для анализа (текст, отправитель получатель, служебные данные и др.) формирует соответствующую структуру данных с разделением на значащие поля и размещает ее в памяти аналитического узла 8. На этапе 3 программная логика аналитического узла предусматривает передачу структуры сообщения в модуль 4 интерфейса для записи в хранилище данных 4 с целью накопления исторических данных и постобработки. Этап 5 предлагает администратору выбор алгоритма классификации алгоритмами четкой логики Regex или эвристическим алгоритмом Neural net. На этапе 6 администратору системы предоставляется опция изменения правил анализа сообщения. Например, в случае если в сообщениях в случайном порядке, не возможном для формализации (выражения в программной логике алгоритма) изменяется синтаксис или семантика сообщения, появляются символы другого алфавита и/или появляются новые слова и фразы, заимствованные из других языков (например дедлайн, пиар, зум, др.). В этом случае на этапе 7 администратор системы по своему усмотрению вводит упрощенные интуитивно понятные ему шаблоны-строки, которые с его точки зрения приемлемы для распознавания изменившейся семантики сообщения. Ввод неформальных шаблонов-строк осуществляется техническими средствами модуля 5 настройки regex интерфейса пользователя - администратор определяет неформальные строки-шаблоны user template. Одновременно он может определять вероятностные коэффициенты user factor Pf отнесения сообщений к предустановленной категории - виду траффика (category i), фиг. За, 36. Контроль корректности ввода администратор осуществляет на мониторе по визуальным средствам контроля (графическому интерфейсу) отрисованным видеоконтроллером модуля интерфейса пользователя 4. На этапе 8 преобразованные в машинное представление данные пользовательских шаблонов передаются и размещаются в памяти модуля 2 regex и далее по набору машинных инструкций неформального языка регулярных выражений irrigex модуль 2 выполняет преобразование пользовательских шаблонов в регулярные выражения уже формального языка regex. Преобразование включает программное генерирование структуры данных irrigex struct неформального языка irrigex и преобразование ее в структуру regex struct соответствующую шаблонам (регулярным выражениям) уже формального языка регулярных выражений regex. На этапе 9 из структуры regex struct компилятор правил анализа 1 формирует конечную конфигурацию правил анализа config - программный модуль представляющий собой файл объектного кода с инструкциями по анализу значащих полей сообщения и передает его для записи в память брокеру конфигураций 7 который воспроизводит назначенное множество копий файла объектного кода конфигурации и передает ее назначенным аналитическим узлам 8. На этапе 10 аналитический узел 8 размещает конфигурацию в памяти соответствующего процесса-обработчика, который применяет ее для обработки текста значащих полей сообщения после чего генерирует признак отнесения сообщения к предопределенной категории, виду трафика - этап 11. Далее на этапе 12 значащие поля сообщения string могут передаваться в модуль 3 neural net на вход нейронной сети (этапы 14-18) для уточнения классификации (этап 11) или сообщение передается в сеть для отправки получателю 13. Такая «петля» позволяет уточнить категорию сообщения онлайн средствами neural net после применения правил regex. В случае передачи значащих полей сообщения string на вход нейронной сети, модуль 3 neural net использует машинное представление коэффициента вероятности Pf полученный из модуля 6 настройки neural net этап 15. После отработки алгоритма классификации нейронной сетью этапы 16, 17, выполняется программный алгоритм преобразования пороговой величины нейронной сети по коэффициенту Pf - этап 18. Далее по сгенерированному модулем 3 neural net признаку классификации процесс обработчик уточняет категорию сообщения и далее передает в сеть для отправки - этапы 11,12. В рамках одного процесса - обработчика при выполнении этапов 14-18 этапы 1-10 применяются к очередному сообщению, этим достигается последовательно-параллельная обработка сообщений.
Фиг.Зб иллюстрирует блок схему параллельной обработки сообщения. В этом варианте после этапа 3 к значащим полям сообщения string параллельно применяются алгоритмы четкой классификации на основе правил Regex - этапы 5-9 и эвристические алгоритмы классификации нейронной сети Neural net - этапы 13-17. На этапе 10 программный алгоритм процесса обработчика дожидается завершения выполнения обоих веток алгоритма, этапы 13-17 предполагают передачу (копирование) значащих полей сообщения string в модуль 3 neural net и ожидание выполнения алгоритма классификации нейросети. После чего формируется признак классификации сообщения (программная логика этапов 5-9 и 13-17 выполняются аналогично варианту последовательно- параллельной обработки). Далее сообщение и признак классификации направляются получателям - этапы 10-12.
Фиг.4 иллюстрирует схему обработки данных системой классификации траффика. Поток сообщений SMS pdu flow после отработки логики балансировки сетевой нагрузки модулем 9 (на фиг.4 не показана) поступает на сетевой интерфейс аналитического узла 8. По программному интерфейсу сокетов (адрес сетевого узла и назначенный порт процесса- обработчика) аналитический узел принимает сетевой пакет 6 выполняет стандартные операции (DPI Deep Packet Inspection) классификации пакетов, агрегирования их в потоки и по программному алгоритму процесса обработчика генерирует структуру данных SMS struct 7 представляющую собой машинное представление значащих данных SMS сообщения - длина length, отправитель sender, получатель receiver, текст сообщения - строка string, включающая значимые для анализа и классификации семантические поля fieldn. Модуль интерфейса пользователя 4 содержит в памяти определенные администратором системы данные: категории классификации сообщения - categoryi lb, неформальный шаблон-строку - user template la, коэффициент вероятности отнесения сообщения к определенной категории - user factor Pf 1с. Модуль 2 regex на основе неформального шаблона-строки 1а по программному алгоритму неформального языка регулярных выражений irrigex генерирует структуру irrigex struct 2 включающую данные и методы для различных операций таких как поиск вхождения шаблона, выполнение замены строки и др. и сохраняет ее в памяти модуля. В соответствии с настройками пользователя по выбранной библиотеке стандартного языка regex, программный алгоритм модуля 2 преобразует данные структуры неформального языка irrigex struct 2 в структуру данных соответствующего уже стандартного языка регулярных выражений regex struct 3 определяющую правила анализа текста. Программный алгоритм компилятора правил анализа 1 собирает файл config 4 - программный модуль конфигурации правил анализа включающий данные и методы их обработки methods к (..) структуры regex struct 3. Брокер конфигурации 7 воспроизводит (копирует) заданное программным алгоритмом количество файлов конфигурации config и распределяет их по аналитическим узлам 8 (на фиг.4 не показано). Процесс-обработчик по программному алгоритму применяет правила анализа файла конфигурации config к значащим полям сообщения string 8 и по результату генерирует признак классификации, т.е. относит сообщение к одной из предустановленных категорий categoryi 16. Для классификации сообщения нейронной сетью процесс обработчик передает значащие поля сообщения string в модуль 3 neural net. Значащие поля сообщения fieldn подаются на вход входным элементам нейросети 9, после выполнения логики классификации выходные элементы Ci нейронной сети генерируют соответствующие коэффициенты вероятности Fai (Ci) отнесения сообщения к определенной категории 1. Программный алгоритм преобразования пороговой величины модуля 3 neural net преобразует функцию выходных элементов Ci (пороговую величину) с учетом коэффициента Pf 1с - Fai (Xi, Pf) 5а. Этим обеспечивается влияние пользовательского коэффициента вероятности Pf отнесения сообщения к определенной категории на результат классификации. После чего формируется признак классификации сообщения, отнесения его к определенной категории 10. В другом варианте работы 5Ь программный алгоритм модуля 3 neural net присваивает признак классификации сообщения той категории categoryi, пороговая величина которой Рн соответствующего выходного нейрона Ci преобладает и превышает доверительный интервал, установленный пользовательским коэффициентом Pf.
Представленная архитектура системы классификации траффика, предполагает разнесение модулей по разным узлам сети. Быстродействие системы достигается за счет обработки сообщений правилами regex только на аналитическом узле 8. Масштабирование производительности наряду с известными мерами, принимаемыми балансировщиком нагрузки достигается воспроизведением и перераспределением конфигурации правил анализа брокером конфигураций по аналитическим узлам и поддержанием их необходимого количества. Архитектура системы позволяет администратору выполнять этапы 6-10, 14-18 фиг.За и 5-9, 13-17 фиг.Зб в последовательно-параллельном и параллельном режиме соответственно. Архитектура системы позволяет применять пользовательские настройки - изменение режима работы, отключение/включение обработки regex и/или neural net, ввод шаблонов и коэффициентов вероятности, без прерывания анализа потока сообщений онлайн.
Основное свойство и преимущество предлагаемой авторами системы состоит в гибкости и универсальности настройки классификации обычными администраторами сетевых узлов за счет применения авторского неформального языка регулярных выражений irregex, выполняющего свою логику в модуле 3 regex. Функционал упрощенного ввода шаблонов распознавания текста позволяет снять ограничения на обслуживание устройства узконаправленными высококлассными специалистами и предоставить возможность его эксплуатации обычным телекоммуникационным специалистам. В настоящее время в известных решениях анализа текста при изменении схемы сообщения разработчики решений семантического анализа неизбежно вынуждены заниматься трудоемкой, не всегда возможной доработкой архитектуры решения семантического анализа. Случайное изменение схемы и структуры сообщения в начальных настройках сервера по умолчанию определено быть не может, а предусмотреть формализовать все возможные форматы сообщений не представляется возможным по понятным причинам. Доступный для настройки функционал модуля 4 интерфейса пользователя переводит предлагаемый авторами сервер из разряда специализированного оборудования в разряд узлов телекоммуникационной сети доступных для настройки обычными специалистами в телекоммуникациях. Дополнительно включение в архитектуру системы неформального языка irregex позволило взаимодействовать с любыми различными стандартными языками regex, подключать их для анализа в соответствии с предпочтениями пользователя. Более того, включение в процесс классификации пользовательских вероятностных коэффициентов, и выполнение модуля neural net с возможностью корректировки результатов работы нейросети (собственной архитектуры или сторонних инструментов) позволяет администратору системы быстро реагировать на изменение схемы и семантики сообщения и оперативно «подправлять» результаты нейронной классификации. Причем способ классификации, как в последовательно-параллельном режиме, так и в параллельном, обеспечивает существенный прирост точности классификации за счет синергии алгоритмов regex и neural net. Что особенно важно способ и архитектура системы классификации траффика обеспечивает опосредованное взаимовлияния пользовательских настроек, при том, что администратор системы может настраивать их независимо.
Предлагаемая система классификации траффика продемонстрирована выше на примере SMPP траффика в рамках взаимодействия а2р, р2а. Как понятно специалистам предлагаемое решение может быть использовано для семантического анализа потока сообщений р2р, а2а сервисов, преимущественно небольших объемов текста. А также иных стандартов и приложений (в том числе например спецификации SMPT для сервисов электронной почты mail), не выходя при этом за рамки правовой охраны предлагаемого способа классификации траффика и архитектуры устройства для его осуществления.
Предлагаемое изобретение испытано в ПАО Мегафон и ПАО ВымпелКом, в результате работы подтвержден заявленный технический эффект.

Claims

Формула
1. Способ классификации трафика, в соответствии с которым принимают сообщение естественного языка, определяют схему сообщения, делят сообщение на значащие синтаксические и семантические поля, предоставляют множество узлов для анализа значащих полей сообщения, к которым применяют правила анализа текста в зависимости от прикладного протокола сообщения, отличающийся тем, что для классификации сообщения по определенным категориям определяют неформальный шаблон-строку неформального языка поиска и обработки подстроки в строке и вероятностный коэффициент отнесения сообщения к определенной категории, преобразуют неформальный шаблон-строку в регулярное выражение стандартного языка поиска и обработки подстроки в строке, преобразуют регулярное выражение стандартного языка в программный модуль конфигурации правил анализа текста содержащий данные и методы обработки строк, динамически создают множество программных модулей конфигурации правил анализа и распределяют их по множеству узлов для анализа значащих полей сообщения, применяют конфигурацию правил анализа к значащим полям сообщения, подают сообщение на вход нейронной сети, причем результат классификации сообщения нейронной сетью корректируют в соответствии с определенным вероятностным коэффициентом отнесения сообщения к определенной категории.
2. Способ классификации трафика по п.1 отличающийся тем, что определение неформального шаблона-строки неформального языка поиска и обработки подстроки в строке и вероятностного коэффициента отнесения сообщения к определенной категории производят в процессе обработки сообщения.
3. Способ классификации трафика по п.1 отличающийся тем, что множество программных модулей конфигурации правил анализа генерируют и распределяют по множеству узлов для анализа значащих полей сообщения пропорционально сетевой нагрузке, обусловленной количеством анализируемых сообщений.
4. Способ классификации трафика по п.1 отличающийся тем, что результат классификации нейронной сети корректируют в соответствии с определенным вероятностным коэффициентом отнесения сообщения к определенной категории, трансформацией пороговой величины классификации нейросети.
23
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26)
5. Способ классификации трафика по п.1 отличающийся тем, что результат классификации нейронной сети, корректируют в соответствии с определенным вероятностным коэффициентом отнесения сообщения к определенной категории, установлением границы достоверности выходных элементов нейросети.
6. Система классификации траффика включающая координирующий модуль, модуль определения правил анализа, модуль машинного обучения, по крайней мере один модуль применения правил анализа к значащим полям сообщения, отличающаяся тем, что дополнительно включает интерфейс администратора или пользователя системы выполненный с возможностью определения категорий классификации сообщения, неформальных шаблонов-строк применяемых к анализу сообщения, вероятностных коэффициентов отнесения сообщения к определенной категории и дополнительно включает модуль компилятора правил анализа выполненный с возможностью создания программного модуля конфигурации правил анализа и состоящий из модуля языка регулярных выражений и модуля нейросети, причем модуль языка регулярных выражений содержит в памяти и выполняет алгоритмы неформального языка регулярных выражений и по крайней мере одного формального языка регулярных выражений и выполнен с возможностью получения неформальной шаблона-строки и преобразования ее в регулярное выражение формального языка регулярных выражений, а модуль нейросети выполнен с возможностью получения вероятностного коэффициента отнесения сообщения к определенной категории и корректировки на его основе результата работы нейросети, а координирующий модуль выполнен с возможностью получения программного модуля конфигурации правил анализа, создания множества программных модулей конфигураций правил анализа и распределения их по множеству модулей применения правил анализа к значащим полям сообщения.
7. Система классификации траффика по п.6 отличающаяся тем, что модуль нейросети содержит в памяти и выполняет алгоритм трансформации пороговой величины нейросети в соответствии с полученным коэффициентом вероятности отнесения сообщения к определенной категории.
8. Система классификации траффика по п.6 отличающаяся тем, что модуль нейросети содержит в памяти и выполняет алгоритм установления границы достоверности выходных элементов нейросети в соответствии с полученным коэффициентом отнесения сообщения к определенной категории.
24
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26)
PCT/RU2019/000715 2018-10-05 2019-10-07 Система классификации траффика WO2020071962A1 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
RU2018135235 2018-10-05
RU2018135235A RU2697648C2 (ru) 2018-10-05 2018-10-05 Система классификации трафика

Publications (1)

Publication Number Publication Date
WO2020071962A1 true WO2020071962A1 (ru) 2020-04-09

Family

ID=64317094

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/RU2019/000715 WO2020071962A1 (ru) 2018-10-05 2019-10-07 Система классификации траффика

Country Status (3)

Country Link
EA (1) EA201900470A3 (ru)
RU (1) RU2697648C2 (ru)
WO (1) WO2020071962A1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112668340A (zh) * 2020-12-28 2021-04-16 北京捷通华声科技股份有限公司 一种信息处理方法及装置
CN113872918A (zh) * 2020-06-30 2021-12-31 苏州三六零智能安全科技有限公司 网络流量分类方法、设备、存储介质及装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110489102B (zh) * 2019-07-29 2021-06-18 东北大学 一种从自然语言自动生成Python代码的方法
CN110781950B (zh) * 2019-10-23 2023-06-30 新华三信息安全技术有限公司 一种报文处理方法及装置
WO2023033684A1 (ru) * 2021-09-04 2023-03-09 Акционерное Общество "Квантум А Рус" Способ мобильного информирования абонентов сотовой связи

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050060295A1 (en) * 2003-09-12 2005-03-17 Sensory Networks, Inc. Statistical classification of high-speed network data through content inspection
US20160065510A1 (en) * 2005-06-29 2016-03-03 Mark Carlson Schema-based dynamic parse/build engine for parsing multi-format messages
US20180083903A1 (en) * 2016-09-21 2018-03-22 King Fahd University Of Petroleum And Minerals Spam filtering in multimodal mobile communication

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096498B2 (en) * 2002-03-08 2006-08-22 Cipher Trust, Inc. Systems and methods for message threat management
US8364766B2 (en) * 2008-12-04 2013-01-29 Yahoo! Inc. Spam filtering based on statistics and token frequency modeling

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050060295A1 (en) * 2003-09-12 2005-03-17 Sensory Networks, Inc. Statistical classification of high-speed network data through content inspection
US20160065510A1 (en) * 2005-06-29 2016-03-03 Mark Carlson Schema-based dynamic parse/build engine for parsing multi-format messages
US20180083903A1 (en) * 2016-09-21 2018-03-22 King Fahd University Of Petroleum And Minerals Spam filtering in multimodal mobile communication

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113872918A (zh) * 2020-06-30 2021-12-31 苏州三六零智能安全科技有限公司 网络流量分类方法、设备、存储介质及装置
CN112668340A (zh) * 2020-12-28 2021-04-16 北京捷通华声科技股份有限公司 一种信息处理方法及装置

Also Published As

Publication number Publication date
RU2697648C2 (ru) 2019-08-15
RU2018135235A3 (ru) 2019-05-22
EA201900470A3 (ru) 2020-10-30
RU2018135235A (ru) 2018-11-19
EA201900470A2 (ru) 2020-06-30

Similar Documents

Publication Publication Date Title
RU2697648C2 (ru) Система классификации трафика
JP7170779B2 (ja) 自動的な意図のマイニング、分類、及び配置のための方法及びシステム
US10795992B2 (en) Self-adaptive application programming interface level security monitoring
US8676965B2 (en) Tracking high-level network transactions
US20200327444A1 (en) System and method for customer journey event representation learning and outcome prediction using neural sequence models
US8782223B2 (en) Systems and methods for categorizing network traffic content
US20220237567A1 (en) Chatbot system and method for applying for opportunities
US11880401B2 (en) Template generation using directed acyclic word graphs
AU2020229706B2 (en) Intent-driven contact center
CN114285781B (zh) Srv6业务流量统计方法、装置、电子设备及介质
CN103248677A (zh) 互联网行为分析系统及其工作方法
CN102090039B (zh) 执行数据中间处理的方法、数据中间处理设备和信息系统
CN112015374B (zh) 一种基于自然语言的跨编程语言微服务集成系统
JP2005500741A (ja) ペイロード検査を介したパケット・ルート付け、及び発行−申し込みネットワークにおける申し込み処理
CN111343201A (zh) 一种快速适配协议变更的解析方法、装置及系统
CN116668520A (zh) 一种基于网关的服务编排方法、系统、设备及存储介质
CN116346660A (zh) 基于依赖替换服务的数据处理方法、装置、设备及介质
CN114006831B (zh) 报文数据处理方法及装置
KR20210000041A (ko) 로그 데이터의 실시간 분석 방법 및 그 장치
US20060034303A1 (en) System and method for managing transactions related to messages transmitted in a communication network
EA041004B1 (ru) Система классификации трафика
KR100522440B1 (ko) 대화형 인터페이스를 이용한 사용자 정황 수집방법
CN108809900B (zh) 一种统一资源访问的框架及方法
CN115250254B (zh) Netflow报文分发处理方法及装置
CN105763430A (zh) 一种用于微信公众账号开发的服务封装方法和系统

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

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

Country of ref document: EP

Kind code of ref document: A1