WO2020071962A1 - System for classifying traffic - Google Patents
System for classifying trafficInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/12—Messaging; Mailboxes; Announcements
- H04W4/14—Short 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 Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (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
Proposed are a method and system for classifying traffic which provide for the flexible and universal setting of a classification by ordinary network node administrators using an informal regular expression language, irregex, developed by the applicant. Basing a system of classification on the irregex informal regular expression language obviates the need for the system to be maintained by highly trained, highly qualified specialists, and makes it possible for the system to be used by ordinary telecommunications specialists. The inclusion of user probabilistic factors in the classification process, and the configuration of a neural net module of the classification system such as to be capable of revising the results of the working of a neural network (its own architecture or third-party tools) allows the system administrator to react quickly to a change of schema and semantics of a message and to "correct" the results of a neural classification in a timely fashion. Furthermore, the classification method provides significantly more accurate classification both in series-parallel mode and in parallel mode as a result of synergy between the regex and neural net algorithms. Of particular importance is the fact that as a result of the architecture of the system for classifying traffic, the method provides mediated interinfluence among user settings, while at the same time the system administrator can set settings independently.
Description
Система классификации трафика Traffic classification system
Предлагаемое изобретение относится к области обработки данных, в частности к системам синтаксической обработки потока текстовых данных, используемым в телекоммуникациях, и предназначено для обработки сообщений, передающихся как между абонентами, так и между абонентами и информационными системами и может использоваться в а2р, р2а, р2р, а2а сервисах. 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.
В задачах обработки данных почти всегда возникает вопрос о последовательном уточнении результатов по мере поступления новых данных "на лету". Общеизвестен рост трафика а2р, р2а, р2р, а2а сервисов. Банки, социальные сети, мобильные операторы генерируют большой объём сообщений для информирования своих клиентов в том числе автоматически. Технологии SMS и USSD стандартизованные в рамках SMPP протокола по-прежнему востребованы в рамках указанных сервисов. В этой связи возникает задача классификации траффика. Задача классификации траффика по типу протокола или приложения - тип траффика SMPP для SMS и USSD, SMTP для mail, и др., на современном уровне техники решена за счет известной технологии анализа сетевых пакетов. Задача распознавания вида траффика по семантике сообщений (рекламный, транзакционный, сервисный, международный, мошеннический траффик и т.д.) для принятия бизнес решений представляет собой сложную техническую задачу. Из уровня техники можно выделить два основных способа классификации текста - семантический анализ текста на основе регулярных выражений и классификация текста эвристическими методами, основу которых составляют методы машинного обучения. У каждого способа есть свои преимущества и недостатки. Специфика а2р, р2р, р2а, а2а траффика в общем случае заключается в том, что большой массив текстовых данных представляет собой множество коротких сообщений. В части машинного распознавания это представляет сложности т.к. в небольшом тексте значительно меньше полезных признаков, и велико влияние порядка слов в сравнении с классификацией больших блоков текста. Это усугубляется тем, что этот траффик сильно подвержен изменениям как в синтаксической, так и в семантической части, причем для устройства распознавания траффика эти изменения происходят беспрерывно (онлайн). In data processing tasks, the question almost always arises of sequentially updating results as new data arrives on the fly. The well-known traffic growth of A2P, P2A, P2P, A2A services. Banks, social networks, mobile operators generate a large volume of messages to inform their customers, including automatically. SMS and USSD technologies standardized within the framework of the SMPP protocol are still in demand within the framework of these services. In this regard, the task of classifying traffic arises. The task of classifying traffic according to the type of protocol or application — the type of traffic SMPP for SMS and USSD, SMTP for mail, etc., has been solved using the well-known technology for analyzing network packets using the current technology. The task of recognizing the type of traffic by message semantics (advertising, transactional, service, international, fraudulent traffic, etc.) for making business decisions is a difficult technical task. Two main methods of text classification can be distinguished from the prior art: semantic analysis of text based on regular expressions and text classification by heuristic methods based on machine learning methods. Each method has its advantages and disadvantages. The specificity of a2p, p2p, p2a, a2a traffic in the general case is that a large array of text data is a lot of short messages. In terms of machine recognition, this is difficult because in a small text there are much fewer useful features, and the influence of word order is great in comparison with the classification of large blocks of text. This is compounded by the fact that this traffic is highly susceptible to changes both in the syntactical and in the semantic part, and for a traffic recognition device, these changes occur continuously (online).
Из уровня техники известны технологии семантического анализа, в основном представленные программно-аппаратными комплексами, выполненными по клиент- The technology of semantic analysis is known from the prior art, mainly represented by software and hardware complexes made according to client
1 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, хорошо справляясь с вероятностной обработкой потока текстовых данных, не поддерживает их четкую классификацию. Существуют другие технологии, в целом однотипные по облику и архитектуре. SUBSTITUTE SHEET (RULE 26) server architecture. 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. These systems have their advantages and disadvantages, so LanguageWare and AlchemyAPI are more suited for processing large volumes of text and show less efficiency when processing a stream of heterogeneous messages. PalitrumLab, coping well with the probabilistic processing of a text data stream, does not support their clear classification. There are other technologies that are generally the same in appearance and architecture.
Существенным недостатком, объединяющим указанные выше и другие известные решения, с точки зрения авторов, является отсутствие возможности на уже запущенной системе применять пользовательские настройки. Настройки анализа прописываются разработчиками в коде при интеграции клиентов или самостоятельных систем в бизнес- приложения и применяются к данным после компиляции. Т.е. конфигурирование известных систем доступно только специалистам, разрабатывающим клиентское ПО для интеграции в бизнес-приложения. Пользователям, обслуживающим бизнес-приложения, настройка правил анализа недоступна. Рост количества гетерогенных узлов в сети общеизвестен, возрастает обмен данными, требующий разнородного анализа. Уровень техники не позволяет формализовать, т.е. положить на логику алгоритма, все текущие и будущие прикладные задачи семантического анализа. В то же время, инженерам и пользователям бизнес-приложений требуется универсальный инструмент, позволяющий без трудоемкого изменения алгоритма оперативно изменять и применять правила обработки текстовых и других данных при существенном изменении схемы текстовых данных (синтаксиса и семантики сообщения). По этой же причине роста гетерогенных узлов в сети важное значение имеет производительность оборудования и алгоритмов управления им. A significant drawback that combines the above and other known solutions, from the point of view of the authors, is the inability to apply user settings on an already running system. Analysis settings are written by developers in the code when integrating clients or stand-alone systems into business applications and are applied to data after compilation. Those. configuration of well-known systems is available only to specialists developing client software for integration into business applications. Users serving business applications cannot configure analysis rules. The increase in the number of heterogeneous nodes in the network is well known, data exchange is increasing, requiring heterogeneous analysis. The prior art does not allow formalization, i.e. put on the logic of the algorithm, all current and future applied problems of semantic analysis. At the same time, engineers and users of business applications need a universal tool that allows, without laborious changes in the algorithm, to quickly change and apply the rules for processing text and other data with a significant change in the text data scheme (message syntax and semantics). For the same reason, the growth of heterogeneous nodes in the network is important the performance of equipment and its control algorithms.
Авторы предлагают универсальное решение классификации траффика по категориям, т.е. семантическому виду траффика - рекламный, транзакционный,
сервисный, международный, мошеннический и др. Решение совмещает точный разбор текста по семантическим атрибутам и вероятностную классификацию текста на основе машинного обучения. Алгоритм способа классификации и архитектура системы, реализующая его предоставляет администраторам системы в режиме реального времени настраивать категории классификации сообщения, правила его анализа и корректировать результаты сепарабельности (отделимости результатов классификации) нейронной сети. Причем предлагаемые настройки предоставляются широкому кругу пользователей и не требуют глубокой подготовки в вопросах семантического анализа и/или машинного обучения. Дополнительно, способ интегрируется в разнородные программно-аппаратные платформы (узлы сети), и масштабирует свою производительность в соответствии с потоковой нагрузкой онлайн. 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. Moreover, 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. Additionally, the method integrates into heterogeneous software and hardware platforms (network nodes), and scales its performance in accordance with the online streaming load.
Известен патент N°US8494987 от 23.07.13г. представляющий систему и способы генерации гипотез, в котором локальная или распределенная система взаимодействует с базой данных и содержит модуль генерации гипотез, модуль хранения концепций, на основании которых генерируются гипотезы, а также модули пользовательского ввода и вывода результатов. А способ генерации гипотез заключается в предварительном вычислении гипотез на основе предустановленных концепций (теме знаний) и данных БД, причем после приема пользовательского ввода система генерирует по крайней мере одну гипотезу, основанную на совместно встречающихся концепциях (теме знаний) имеющих отношение к сущностям, выделенным из пользовательского ввода (предложения, утверждения). 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.
Патент N° PCT/US2007/063983 от 14.03.2007г. описывает программный продукт, систему и способ генерации гипотез из базы данных, по которому строятся и заводятся в структуры различные семантические связи между концепциями и понятиями и/или
концепциями и концепциями по определенным правилам отношений и на основании разбора множества документов в предустановленном репозитории. Фразы назначаются по одному из множества понятий, или идентификатору отношения, связывающего одно понятие со вторым, или присвоение одного понятия семантической категории или расположение концепций в иерархической взаимосвязи. 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.
Недостатками такого решения также является его неприменимость при обработке постоянно поступающих потоковых данных и невозможность масштабирования нагрузки. The disadvantages of this solution is its inapplicability in the processing of constantly incoming streaming data and the inability to scale the load.
Заявка РСТ N2WO2013/135474 от 22.02.2013г. притязает на способ семантического анализа текста, заключающегося в построении матрицы векторов вхождений слов в обучающую выборку документов, например статей Википедии, обучении 1 нейронной сети (самоорганизующейся карты Кохонена) этой выборкой документов и векторов, сопоставление документов, содержащих целевое слово и множество координат карты (область) вхождений этих документов, определения семантического контекста слова и сохранение соответствия в словарь, карту шаблонов. Обучение второй нейронной сети на документах того же языка, состоящее из построения последовательности предложений из документов обучающей выборки, подсчет коэффициента сложности документа (частота слова в документе и т.д.) и сортировка слов в последовательности. И обучение сети документами выборки с возрастанием коэффициента семантической сложности, сопоставление карты и слов второй выборки, обучение второй (как правило иерархической) нейронной сети картами шаблонов. 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.
Патент RU2615632 от 20.03.2015г. предлагающий способ распознавания коммуникационных сообщений в части определения имени отправителя и предполагающий наличие специальных символов в сообщении выделяющих имя отправителя или запрос на сервер с предустановленной базой данных имен абонентов и определение имени отправителя по результатам сравнения содержимого заданного определителя и имени пользователя в базе данных. При этом семантический анализ согласно изобретению может быть реализован аппаратно за счет доработки мобильного терминала модулями обработки текста и связи с сервером БД. Patent RU2615632 dated 03/20/2015. It 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. Moreover, 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.
В данном решении очевидными недостатками является предопределение набора семантических признаков отправителя, вынужденное поддержание базы данных с
именами пользователей, решение предусматривает аппаратную доработку конечного устройства пользователя устройством распознавания. Отсутствие алгоритмов нечеткой логики (машинного обучения), невозможность настройки правил также отмечается как недостаток. In this solution, the obvious drawbacks are the predefined set of semantic features of the sender, the forced maintenance of the database with by user names, the solution provides for hardware refinement of the end device of the user by the recognition device. The lack of fuzzy logic algorithms (machine learning), the inability to configure rules is also noted as a drawback.
Наиболее близким по технической сути и принятый за прототип является патент RU 2429533 от 29.06.2009г. который описывает механизм динамического синтаксического анализа/компоновки на основе схем для синтаксического анализа мульти форматных сообщений выполняющий прием сообщения в различных форматах, преобразование его в общий формат, определение грамматической структуры данных формата сообщения и на ее основании указания на подходящий обработчик. Причем обработчики выполнены модулями с отдельной компиляцией и могут добавляться в архитектуру по мере появления новых форматов сообщений. За счет подгрузки отдельных модулей обработки достигается выигрыш в производительности системы анализа в целом. Дополнительный выигрыш в производительности достигается за счет индексации внутреннего формата сообщений. Маршрутизация сообщений к обработчикам, правила обработки и новые спецификации загружаются динамически в БД при регистрации новой услуги, за счет этого достигается универсальность решения. The closest in technical essence and adopted for the prototype is the patent RU 2429533 from 06/29/2009. which describes a dynamic syntax analysis / layout mechanism for syntactically analyzing multi-format messages for receiving messages in various formats, converting it to a common format, determining the grammatical structure of the message format data and, based on it, pointing to a suitable handler. Moreover, the handlers are executed by modules with separate compilation and can be added to the architecture as new message formats appear. By loading individual processing modules, a gain is achieved in the performance of the analysis system as a whole. Additional performance gains are achieved by indexing the internal message format. Message routing to the processors, processing rules and new specifications are loaded dynamically into the database when registering a new service, due to this, the universality of the solution is achieved.
Такое решение применимо для обработки данных, поступающих в потоке онлайн, однако очевидным недостатком является процесс лексического и синтаксического разбора сообщений только по правилам анализа описания синтаксиса формальных языков (парсинг). Представляется, что этого недостаточно для сематического анализа, осмысления текстовых сообщений естественного языка для принятия бизнес решений. Хотя американскими авторами указано, что обработчики загружаются динамически в БД, и новые обработчики не влияют на работу системы в целом, это не избавляет авторов решения от необходимости разработки, компиляции и тестирования каждого нового обработчика для загрузки. This solution is applicable for processing data arriving in an online stream, but the obvious drawback is the process of lexical and parsing of messages only according to the rules for analyzing the description of the syntax of formal languages (parsing). It seems that this is not enough for sematic analysis, comprehension of text messages in a natural language for making business decisions. Although American authors indicated that the handlers are loaded dynamically into the database, and the new handlers do not affect the operation of the system as a whole, this does not save the decision-makers from the need to develop, compile and test each new handler for loading.
Авторы отмечают интересное решение индексации формата сообщений, вытекающего из архитектуры такой системы, тем не менее отмечают и недостатки прототипа: Невозможность ручной «горячей» пользовательской настройки правил анализа онлайн без необходимости заблаговременно разрабатывать, тестировать и подключать новый модуль обработчик семантического анализа для новой грамматики. The authors note an interesting solution for indexing the message format arising from the architecture of such a system, nevertheless note the disadvantages of the prototype: The inability to manually "hot" customize the analysis rules online without the need to develop, test and connect a new semantic analysis processor module for the new grammar in advance.
Отсутствие вероятностной оценки сообщения.
Плохая аппаратная масштабируемость - отсутствие решения для автоматической настройки производительности системы при повышении нагрузки - существенного увеличения входящих сообщений. Lack of probabilistic assessment of the message. Poor hardware scalability - lack of a solution to automatically tune system performance when the load is increased - a significant increase in incoming messages.
Технической задачей предлагаемой системы классификации траффика по способу классификации а2р, р2а, р2р, а2а траффика по предопределенным семантическим категориям траффика является: повышение гибкости классификации сообщений за счет ручного пользовательского определения интуитивно понятных неформальных шаблонов-строк, применяемых к анализу текста и определения вероятностных коэффициентов отнесения сообщения к определенной категории; 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;
повышение надежности классификации сообщений за счет объединения алгоритмов четкой логики на основе применения регулярных выражений, эвристических алгоритмов нейросетей и дополнительной гибкой настройки этих алгоритмов в соответствии с пользовательскими определениями шаблонов-строк и вероятностных коэффициентов; повышение производительности анализа сообщений за счет динамического генерирования (воспроизведения) и распределения конфигурации правил анализа по множеству узлов, анализирующих сообщение. improving the reliability of message classification by combining clear logic algorithms based on the use of regular expressions, heuristic algorithms for neural networks and additional flexible configuration of these algorithms in accordance with user-defined definitions of string patterns and probability coefficients; Improving the performance of message analysis due to the dynamic generation (playback) and distribution of the configuration of the analysis rules across the set of nodes analyzing the message.
Внедрение в процесс аналитической обработки текста указанных выше пользовательских настроек выводит ее на новый универсальный уровень, на которым процесс обработки не только подвластен обычным администраторам (пользователям) системы, не являющимся специалистами в области семантического анализа, языков и диалектов регулярных выражений, но и неограничен существующими и будущими прикладными задачами анализа, обусловленными изменениями схемы сообщения. Более того, совместное их применение к анализируемым сообщениям обеспечивает существенное повышение достоверности анализа. Взаимовлияние настроек пользователя на результат классификации предопределено последовательностью выполнения способа, предполагающего сначала применение неформальных шаблонов-строк к тексту сообщения алгоритмами четкой логики, и последующим применением вероятностных коэффициентов к результатам эвристических алгоритмов нейросети. При этом способ предусматривает не зависимость определения пользовательских настроек. 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. And 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.
Технической задачей устройства системы классификации а2р, р2а, р2р, а2а трафика для осуществления способа классификации траффика, является: улучшение эксплуатационных свойств, за счет включения в архитектуру системы классификации трафика модуля 4 интерфейса пользователя, выполненного с возможностью ручного пользовательского определения семантических категорий классификации сообщения, неформальных шаблонов-строк, применяемых к анализу сообщения для определения его категории и вероятностных коэффициентов отнесения сообщения к определенной категории; 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;
повышение надежности классификации, за счет включения в архитектуру системы модуля 2 regex, в памяти которого содержится и процессором которого выполняется алгоритм
неформального языка регулярных выражений irregex (irregular expressions) и алгоритм одного или нескольких формальных языков регулярных выражений regex (regular expressions). Причем алгоритм irregex позволяет получать неформальные пользовательские шаблоны-строки и преобразовывать их в регулярные выражения стандартных языков regex, а модуль нейросети 3 neural net выполнен с возможностью алгоритмического преобразования пользовательских вероятностных коэффициентов в трансформацию пороговой величины нейросети и/или установления границы достоверности значений ее выходных элементов; improving the reliability of the classification, due to the inclusion of 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). Moreover, the irregex algorithm allows you to get informal custom string patterns and convert them into regular expressions of the standard regex languages, and 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;
улучшение эксплуатационных свойств, за счет возможности использования множества инструментов семантического анализа, которое достигается «инкапсуляцией» программной архитектуры-пользователю системы предоставляется только модуль 4 интерфейса пользователя, а полиморфная работа (интеграция с широкой номенклатурой стандартных библиотек regex и программ-нейроимитаторов) достигается за счет определения множества программных API интерфейсов согласования языка irregex с различными библиотеками regex и доработкой результатов работы программ- нейроимитаторов за счет программной установки границы достоверности в соответствии с определенным пользователем коэффициентом вероятности отнесения сообщения к определенной категории; improvement of operational properties due to the possibility of using many semantic analysis tools, which is achieved by “encapsulating” the software architecture — only the user interface module 4 is provided to the system user, and polymorphic work (integration with a wide range of standard regex libraries and neuroimitators) is achieved by defining many software APIs for reconciling the irregex language with various regex libraries and finalizing program results simulators due to the software setting of the confidence margin in accordance with a user-defined probability coefficient for assigning a message to a certain category;
повышение производительности классификации, за счет включения в архитектуру системы модуля 7 брокера конфигурации, выполненного с возможностью динамического воспроизведения - генерирования множества программных модулей конфигурации правил анализа и распределения их по множеству узлов для применения правил анализа к анализируемому тексту. improving classification performance by including 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.
Техническая задача решается за счет системы классификации траффика для осуществления способа классификации траффика включающей координирующий модуль, модуль определения правил анализа, модуль машинного обучения, по крайней мере один модуль применения правил анализа к значащим полям сообщения, и дополнительно включающей интерфейс администратора (пользователя) системы который выполнен с возможностью определения категорий классификации сообщения, неформальных шаблонов-строк применяемых к анализу сообщения, вероятностных коэффициентов отнесения сообщения к определенной категории и дополнительно включает модуль компилятора правил анализа выполненный с возможностью создания программного модуля конфигурации правил анализа и состоящий из модуля языка регулярных выражений и модуля машинного обучения, причем модуль языка регулярных выражений
содержит в памяти и выполняет алгоритмы неформального языка регулярных выражений и по крайней мере одного формального языка регулярных выражений и выполнен с возможностью получения неформальной шаблона-строки и преобразования ее в регулярное выражение формального языка регулярных выражений, а модуль нейросети выполнен с возможностью получения вероятностного коэффициента отнесения сообщения к определенной категории и корректировки на его основе результата работы нейросети, а координирующий модуль выполнен с возможностью получения программного модуля конфигурации правил анализа, создания множества программных модулей конфигураций правил анализа и распределения их по множеству модулей применения правил анализа к значащим полям сообщения. При этом модуль машинного обучения содержит в памяти и выполняет алгоритм трансформации пороговой величины нейросети и установления границы достоверности выходных элементов нейросети в соответствии с полученным коэффициентом вероятности отнесения сообщения к определенной категории. The technical problem is solved by 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 distribution over the set of rules for the application modules to a meaningful analysis of message fields. At the same time, the machine learning module contains in memory and implements an algorithm for transforming the threshold value of the neural network and establishing the confidence level of the output elements of the neural network in accordance with the obtained probability coefficient for assigning a message to a certain category.
Изобретение поясняется чертежами: The invention is illustrated by drawings:
На фиг.1 изображена функциональная схема системы классификации траффика. Figure 1 shows a functional diagram of a traffic classification system.
На фиг.2 изображена общая схема а2р сервиса. Figure 2 shows the General scheme A2P service.
На фиг.2а приведена обобщенная последовательность SMPP TCP/IP вызовов способа классификации трафика в рамках а2р сервиса. Figure 2a shows a generalized sequence of SMPP TCP / IP calls of a method for classifying traffic within an A2p service.
На фиг.2б приведена обобщенная последовательность SMPP TCP/IP вызовов способа классификации трафика в рамках р2а сервиса. 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.
На фиг.36 приведен обобщенный алгоритм параллельного режима работы системы классификации трафика. On Fig shows a generalized algorithm for the parallel mode of operation of the traffic classification system.
На фиг.4 приведен обобщенный процесс преобразования данных системой классификации трафика. Figure 4 shows a generalized data conversion process by the traffic classification system.
Функциональная схема устройства реализующего предлагаемый способ сетевого семантического анализа представлена на фиг.1. Модуль 1 компилятора правил анализа включает модуль 2 regex и модуль 3 neural net. Основной функцией модуля 1 является сборка правил анализа в программный модуль конечной конфигурации правил анализа и
передача его в модуль 7 брокера конфигураций для дальнейшего воспроизведения заданного количества программных модулей и передачи их в аналитические узлы 8 для применения к сообщению. Functional diagram of a device that implements the proposed method of network semantic analysis is presented in figure 1. 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.
В памяти модуля 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. 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. As regex languages, 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.
В памяти модуля 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 компилятора анализа для дальнейшей обработки. The memory of module 3 of the neural net contains the data of the neural network structure (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. In the context of the proposed classification method, 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. As is known 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. Depending on the number of predefined classification categories or the dimension of the classification space, the output elements of the neural network, in accordance with the activation function, form a threshold value for the separation of this space. For example, in the case of two classification categories - advertising and service message, the category space is a plane, and 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. After the shift, more messages fall into a subset of the advertising category. 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. In another embodiment, for example, when using third-party vendor neural networks, it is impossible to influence the architecture of the threshold value conversion, 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. 4 la outside the rules for setting the format of regular expressions of the regex languages. 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. For 11, 36 10 according to Pf the “coefficient of trust” of Figs. For, 15-18, 36 14-17 of the user to use his template. The ability to enter an arbitrary format of template strings intuitively at the discretion of the system administrator, eliminates the need to delve into the rules and dialects of the regex languages, and also provides the ability to quickly change the classification parameter (template string) and establish trust in it Pf with a little predictable format change messages (syntax, semantics, message schemes). In the future, after the transformations in regex module 2, the changed template-string is applied to the meaningful field fields (attributes) of the message of Figure 4 8. Such fields can be, for example, the data of the sender, receiver, text of the message include rarely used phrases, expressions, characters, etc. 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.
Модуль 7 - брокер конфигураций выполняющий функции координирующего модуля получает программный модуль конфигурации правил анализа сгенерированный компилятором правил анализа 1 , воспроизводит необходимое множество конфигураций и распределяет их по аналитическим узлам 8. Программно-аппаратная логика брокера конфигураций создает и поддерживает требуемое количество аналитических узлов в зависимости от анализируемого системой типа трафика (SMS, USSD, mail, др.) и распределяет аналитические узлы в зависимости от нагрузки в дополнение к балансировщику нагрузки 9, распределяет между аналитическими узлами 8 программные модули конфигурации правил анализа, осуществляет их запись/перезапись в память аналитических узлов. Программно-аппаратная логика брокера конфигураций допускает обработку сообщения в рамках одной сетевой сессии (отправитель-получатель) несколькими аналитическими узлами и/или обработку одним аналитическим узлом сообщений разных установленных сетевых сессий. В общем случае логика распределения конфигурации правил анализа по аналитическим узлам 8 определяется типом анализируемого траффика, нагрузкой (количеством поступающих сообщений) по каждому типу траффика и синтаксической и семантической принадлежностью сгенерированной конфигурации. Например, менее подверженная изменениям сервисная структура SMS траффика (направление одноразового пароля-сервисная категория трафика) может анализироваться одним аналитическим узлом 8 в рамках разных сетевых сессий. 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. 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. In the general case, 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. For example, the service structure of SMS traffic that is less susceptible to changes (one-time password direction-service traffic category) can be analyzed by one analytical node 8 within different network sessions.
Аналитический узел 8 обрабатывает сообщения в соответствии с конфигурацией правил анализа, предоставляет интерфейсы для приема определенного типа трафика в соответствии с протоколом (SMPP для SMS, USSD, SMTP для mail, и др.). Сбор сообщения из сетевых пакетов, разбор по значащим полям и применение конфигурации правил анализа производится по командам и данным процесса-обработчика. Аналитический узел содержит пул таких процессов, логику их создания, размещения в памяти и удаления. Процесс-обработчик представляет собой совокупность выполняемых машинных команд, хранящихся в памяти и являющейся частью набора инструкций
процессорному устройству аналитического узла. Пул процессов обработчиков дополнительно обеспечивает балансировку нагрузки к мерам, применяемым логикой балансировщика нагрузки 9 и модуля конфигураций 7. После обработки сообщения аналитический узел классифицирует сообщение по принадлежности к предустановленной категории (рекламное, транзакционное, сервисное, международное, мошенническое и т.д.) и направляет сообщение получателю. 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. After processing the message, the analytical node classifies the message according to its predefined category (advertising, transactional, service, international, fraudulent, etc.) and directs message to the recipient.
Балансировщик нагрузки 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 не раскрыта. 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. Petersburg: Peter, 2012. p. 783, 787.) . In a preferred implementation, 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. In this case, 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). Physically, 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.
Аппаратно модули 1, 4, 7, 8, 9 могут выполняться на одном сетевом узле или разных, могут присутствовать в базовой сети СПРС и/или вне ее. Сами модули 1,4, 7, 8, 9 представляют собой комплекс программно-аппаратных средств (ЭВМ) фон Неймановской архитектуры универсального или специализированного вида и в общем случае содержат:
Контроллер сетевой карты реализованный в виде платы, содержащей процессор память и вспомогательную логику, выполненный с возможностью обработки входящих и исходящих сетевых пакетов со скоростью их передачи. Центральное процессорное устройство, может быть реализовано в одно/многопроцессорном варианте, управляет работой узла, выполняет инструкции и обрабатывает данные, хранимые в памяти. Память соответствующих узлов содержит преобразованные в внутреннее машинное представление (скомпилированные) блоки исходного кода (единицы компиляции): интерфейсного модуля, модуля неформального и формального языков регулярных выражений regex, нейронной сети neural net, брокера конфигураций, аналитических узлов. В дополнение к этому модуль 4 интерфейса содержит видеоконтроллер - микросхему, формирующую видеоизображение на мониторе администратора системы. Монитор выполнен с возможностью отображать изображение включающее графический интерфейс и/или интерфейс командной строки предоставляющий инструменты управления каналами трафика (SMPP, SMTP, другими известными из уровня техники), определения категорий классификации сообщений, задания и отображения упрощенных пользовательских строк- шаблонов поиска подстроки в строке, отображения ввода администратором системы вероятностных коэффициентов, визуального контроля обучением и тестированием нейронной сети. Устройства ввода (клавиатура, мышь, др.) и контроллер устройства ввода, отвечающий за обработку данных, введенных администратором с устройств ввода. Хранилище данных (жесткий диск) модуля 4 интерфейса предназначен для хранения исторических данных с целью их постобработки модулем 3 neural net, обучающей выборки и других данных, и контроллер жесткого диска, предназначенный для приема- передачи и обработки данных от хранилища данных. Шина-совокупность проводников соединяющих ЦПУ с памятью, устройствами хранения данных и ввода-вывода. 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. In addition to this, 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. Input devices (keyboard, mouse, etc.) and the controller of the input device, which is responsible for processing data entered by the administrator from input devices. 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. A bus-set of conductors connecting the CPU to the memory, data storage devices and input-output.
Фиг.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 абонента системы подвижной радиосвязи (СПРС). 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. Figure 2 as 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) - a traffic classification system that monitors all SMS messages sent to the network by programs generating SMS distribution and running on network nodes - ESMEi - ESME n -th Servers of various business entities - banks, shops, etc. can act as network nodes. (ESMEn). 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).
Пунктирной линией показаны сигнальные вызовы, сплошной вызовы ТСРЯР. The dashed line shows the signal calls, the solid calls of the TSRNR.
На этапах 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а не показан. At stages 1-2, 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. 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. By definition, TCP / IP packets are sent to the IP address of the load balancer of the traffic classification system of Figure 1 9. Typically, 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. Next, the standard signal exchange of message delivery 6-7 and delivery confirmation takes place 8. Sign of classification message classification mark due to certain traffic operator uses SPRS for future business decisions. In another implementation, 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.
На фиг.2б приведен npnMepSMPP TCP/IP вызовов р2а траффика для получения, анализа и отправки SMS сообщений SMPP протокола (спецификация 3GPP 3G TS 23.039).
На примере SMS сообщения в направлении от SMSC оператора СПРС на внешний узел ESME. 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). Using SMS as an example, from the SMSC of the SPRS operator to the external ESME node.
Пунктирной линией показаны сигнальные вызовы, сплошной вызовы TCP/IP. The dashed line shows signaling calls, continuous TCP / IP calls.
Клиентами системы классификации трафика в варианте классификации SMS сообщений выступают преимущественно операторы СПРС, а сетевыми узлами являются мобильные станции абонентов (MS Mobil Station), узлы обслуживания коротких сообщений (SMSC Short Message Service Center) оператора СПРС, службы или приложения ДВО (VAS Value Added Services) операторов СПРС либо иные внешние узлы (ESME External Short Message Entities). Клиенты направляют SMS сообщения на сетевой IP адрес балансировщика нагрузки 9 который выполняет алгоритм маршрутизации сетевых пакетов для балансировки нагрузки (на фиг.За, 36 не показано). Перенаправление клиентских пакетов может быть реализовано на шлюзовом узле PCEF оператора СПРС. 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.
Абонент СПРС с своего 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р траффика. 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. 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. 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. After receiving the ESME SMS message, 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.
Фиг.За иллюстрирует обобщенный алгоритм работы системы классификации траффика на примере последовательно-параллельного режима работы системы классификации трафика. На этапе 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 применяются к очередному сообщению, этим достигается последовательно-параллельная обработка сообщений. 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. In step 1, assigned to process SMS messages, 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. At stage 2, 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. At stage 3, 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. At step 6, 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.). In this case, at step 7, 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. At the same time, it 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. At step 8, 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. At stage 9, from the regex struct structure, 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. At step 10, 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. Next, at step 12, 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. In the case of transferring the significant fields of the string message to the input of the neural network, 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. Next, according to the classification attribute generated by module 3 neural net, the process the processor determines the category of the message and then passes to the network for sending - steps 11,12. Within the framework of one process - the processor, when performing steps 14-18, steps 1-10 are applied to the next message, this achieves sequentially-parallel processing of messages.
Фиг.Зб иллюстрирует блок схему параллельной обработки сообщения. В этом варианте после этапа 3 к значащим полям сообщения string параллельно применяются алгоритмы четкой классификации на основе правил Regex - этапы 5-9 и эвристические алгоритмы классификации нейронной сети Neural net - этапы 13-17. На этапе 10 программный алгоритм процесса обработчика дожидается завершения выполнения обоих веток алгоритма, этапы 13-17 предполагают передачу (копирование) значащих полей сообщения string в модуль 3 neural net и ожидание выполнения алгоритма классификации нейросети. После чего формируется признак классификации сообщения (программная логика этапов 5-9 и 13-17 выполняются аналогично варианту последовательно- параллельной обработки). Далее сообщение и признак классификации направляются получателям - этапы 10-12. Fig. Zb illustrates a block diagram of a parallel message processing. In this option, after step 3, 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. At step 10, 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. After that, 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.
Фиг.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. Figure 4 illustrates a data processing flowchart for a traffic classification system. SMS pdu flow after network load balancing logic module 9 (not shown in FIG. 4) arrives at the network interface of the analytic node 8. Via the software interface of the sockets (the address of the network node and the assigned port of the processing process), 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. 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 1с. 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. In accordance with the user's settings for the selected library of the standard language regex, 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, using 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. To classify a message by a neural network, 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с - Fai (Xi, Pf) 5а. 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. In another embodiment 5b, the program algorithm of module 3 neural net assigns a sign for classifying messages of that category categoryi, the threshold value of which Рн of the corresponding output neuron Ci prevails and exceeds the confidence interval set by the user coefficient Pf.
Представленная архитектура системы классификации траффика, предполагает разнесение модулей по разным узлам сети. Быстродействие системы достигается за счет обработки сообщений правилами regex только на аналитическом узле 8. Масштабирование производительности наряду с известными мерами, принимаемыми балансировщиком нагрузки достигается воспроизведением и перераспределением конфигурации правил анализа брокером конфигураций по аналитическим узлам и поддержанием их необходимого количества. Архитектура системы позволяет администратору выполнять этапы 6-10, 14-18 фиг.За и 5-9, 13-17 фиг.Зб в последовательно-параллельном и параллельном режиме соответственно. Архитектура системы позволяет применять пользовательские настройки - изменение режима работы, отключение/включение обработки regex и/или neural net, ввод шаблонов и коэффициентов вероятности, без прерывания анализа потока сообщений онлайн. 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.
Основное свойство и преимущество предлагаемой авторами системы состоит в гибкости и универсальности настройки классификации обычными администраторами сетевых узлов за счет применения авторского неформального языка регулярных выражений irregex, выполняющего свою логику в модуле 3 regex. Функционал упрощенного ввода шаблонов распознавания текста позволяет снять ограничения на обслуживание устройства узконаправленными высококлассными специалистами и предоставить возможность его эксплуатации обычным телекоммуникационным специалистам. В настоящее время в известных решениях анализа текста при изменении схемы сообщения разработчики решений семантического анализа неизбежно вынуждены заниматься трудоемкой, не всегда возможной доработкой архитектуры решения семантического анализа. Случайное изменение схемы и структуры сообщения в начальных настройках сервера по умолчанию определено быть не может, а предусмотреть формализовать все возможные форматы сообщений не представляется возможным по понятным причинам. Доступный для настройки функционал модуля 4 интерфейса пользователя переводит предлагаемый авторами сервер из разряда специализированного
оборудования в разряд узлов телекоммуникационной сети доступных для настройки обычными специалистами в телекоммуникациях. Дополнительно включение в архитектуру системы неформального языка irregex позволило взаимодействовать с любыми различными стандартными языками regex, подключать их для анализа в соответствии с предпочтениями пользователя. Более того, включение в процесс классификации пользовательских вероятностных коэффициентов, и выполнение модуля neural net с возможностью корректировки результатов работы нейросети (собственной архитектуры или сторонних инструментов) позволяет администратору системы быстро реагировать на изменение схемы и семантики сообщения и оперативно «подправлять» результаты нейронной классификации. Причем способ классификации, как в последовательно-параллельном режиме, так и в параллельном, обеспечивает существенный прирост точности классификации за счет синергии алгоритмов regex и neural net. Что особенно важно способ и архитектура системы классификации траффика обеспечивает опосредованное взаимовлияния пользовательских настроек, при том, что администратор системы может настраивать их независимо. 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. Currently, in well-known text analysis solutions, when changing the communication scheme, 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. The functional of 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. In addition, 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. Moreover, 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 (its own architecture or third-party tools) 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. Moreover, 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. What is especially important, the method and architecture of the traffic classification system provides indirect interaction of user settings, while the system administrator can configure them independently.
Предлагаемая система классификации траффика продемонстрирована выше на примере SMPP траффика в рамках взаимодействия а2р, р2а. Как понятно специалистам предлагаемое решение может быть использовано для семантического анализа потока сообщений р2р, а2а сервисов, преимущественно небольших объемов текста. А также иных стандартов и приложений (в том числе например спецификации SMPT для сервисов электронной почты mail), не выходя при этом за рамки правовой охраны предлагаемого способа классификации траффика и архитектуры устройства для его осуществления. The proposed traffic classification system is demonstrated above by the example of SMPP traffic in the framework of the interaction of a2p, p2a. As it is clear to specialists, the proposed solution can be used for semantic analysis of the message flow of P2P, A2A services, mainly small amounts of text. As well as 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.
Claims
1. Способ классификации трафика, в соответствии с которым принимают сообщение естественного языка, определяют схему сообщения, делят сообщение на значащие синтаксические и семантические поля, предоставляют множество узлов для анализа значащих полей сообщения, к которым применяют правила анализа текста в зависимости от прикладного протокола сообщения, отличающийся тем, что для классификации сообщения по определенным категориям определяют неформальный шаблон-строку неформального языка поиска и обработки подстроки в строке и вероятностный коэффициент отнесения сообщения к определенной категории, преобразуют неформальный шаблон-строку в регулярное выражение стандартного языка поиска и обработки подстроки в строке, преобразуют регулярное выражение стандартного языка в программный модуль конфигурации правил анализа текста содержащий данные и методы обработки строк, динамически создают множество программных модулей конфигурации правил анализа и распределяют их по множеству узлов для анализа значащих полей сообщения, применяют конфигурацию правил анализа к значащим полям сообщения, подают сообщение на вход нейронной сети, причем результат классификации сообщения нейронной сетью корректируют в соответствии с определенным вероятностным коэффициентом отнесения сообщения к определенной категории. 1. The method of traffic classification, according to which a natural language message is received, a message scheme is determined, the message is divided into meaningful syntactic and semantic fields, a plurality of nodes are provided for analyzing meaningful message fields to which text analysis rules are applied depending on the application message protocol, characterized in that for classifying messages into certain categories, an informal template is determined as a string of an informal language for searching and processing a substring in a string and probability This is a significant coefficient for assigning messages to a certain category, converting an informal template-string into a regular expression of a standard language for searching and processing substrings in a string, converting a regular expression of a standard language into a program module for analyzing text analysis rules containing data and methods for processing strings, dynamically creating many configuration program modules analysis rules and distribute them across many nodes to analyze significant message fields, apply the configuration of analysis rules to they message fields, send a message to the input of the neural network, and the result of the classification of the message by the neural network is adjusted in accordance with a certain probabilistic coefficient of classifying the message to a certain category.
2. Способ классификации трафика по п.1 отличающийся тем, что определение неформального шаблона-строки неформального языка поиска и обработки подстроки в строке и вероятностного коэффициента отнесения сообщения к определенной категории производят в процессе обработки сообщения. 2. The method of classifying traffic according to claim 1, characterized in that the determination of the informal template-string of the informal language for searching and processing the substring in the string and the probabilistic coefficient of assigning a message to a certain category is carried out in the process of processing the message.
3. Способ классификации трафика по п.1 отличающийся тем, что множество программных модулей конфигурации правил анализа генерируют и распределяют по множеству узлов для анализа значащих полей сообщения пропорционально сетевой нагрузке, обусловленной количеством анализируемых сообщений. 3. The traffic classification method according to claim 1, characterized in that a plurality of software modules for configuration of the analysis rules are generated and distributed across a plurality of nodes for analyzing significant message fields in proportion to the network load due to the number of messages being analyzed.
4. Способ классификации трафика по п.1 отличающийся тем, что результат классификации нейронной сети корректируют в соответствии с определенным вероятностным коэффициентом отнесения сообщения к определенной категории, трансформацией пороговой величины классификации нейросети. 4. The method of classifying traffic according to claim 1, characterized in that the result of the classification of the neural network is adjusted in accordance with a certain probabilistic coefficient of classifying the message to a certain category, the transformation of the threshold value for classifying the neural network.
23 23
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26)
SUBSTITUTE SHEET (RULE 26)
5. Способ классификации трафика по п.1 отличающийся тем, что результат классификации нейронной сети, корректируют в соответствии с определенным вероятностным коэффициентом отнесения сообщения к определенной категории, установлением границы достоверности выходных элементов нейросети. 5. The method of traffic classification according to claim 1, characterized in that the result of the classification of the neural network is adjusted in accordance with a certain probabilistic coefficient of classifying the message to a certain category, setting the confidence level of the output elements of the neural network.
6. Система классификации траффика включающая координирующий модуль, модуль определения правил анализа, модуль машинного обучения, по крайней мере один модуль применения правил анализа к значащим полям сообщения, отличающаяся тем, что дополнительно включает интерфейс администратора или пользователя системы выполненный с возможностью определения категорий классификации сообщения, неформальных шаблонов-строк применяемых к анализу сообщения, вероятностных коэффициентов отнесения сообщения к определенной категории и дополнительно включает модуль компилятора правил анализа выполненный с возможностью создания программного модуля конфигурации правил анализа и состоящий из модуля языка регулярных выражений и модуля нейросети, причем модуль языка регулярных выражений содержит в памяти и выполняет алгоритмы неформального языка регулярных выражений и по крайней мере одного формального языка регулярных выражений и выполнен с возможностью получения неформальной шаблона-строки и преобразования ее в регулярное выражение формального языка регулярных выражений, а модуль нейросети выполнен с возможностью получения вероятностного коэффициента отнесения сообщения к определенной категории и корректировки на его основе результата работы нейросети, а координирующий модуль выполнен с возможностью получения программного модуля конфигурации правил анализа, создания множества программных модулей конфигураций правил анализа и распределения их по множеству модулей применения правил анализа к значащим полям сообщения. 6. A traffic classification system comprising a coordinating module, an analysis rule definition module, a machine learning module, at least one analysis rule application module for significant message fields, characterized in that it further includes an administrator or system user interface configured to determine message classification categories, informal patterns of strings applied to the analysis of the message, probabilistic coefficients of classifying the message to a certain category and additionally incl. The analysis rule compiler module is designed to create a program module for analyzing analysis rules and consisting of a regular expression language module and a neural network module, the regular expression language module contains and executes algorithms of the informal regular expression language and at least one formal regular expression language and made with the possibility of obtaining an informal template string and converting it into a regular expression of the formal language of regular expressions, and the module the neural network is configured to obtain a probabilistic coefficient of assigning a message to a certain category and to adjust the result of the operation of the neural network based on it, and the coordinating module is configured to receive a software module for analyzing analysis configurations, creating many analysis module configuration modules and distributing them across many analysis rules application modules to meaningful message fields.
7. Система классификации траффика по п.6 отличающаяся тем, что модуль нейросети содержит в памяти и выполняет алгоритм трансформации пороговой величины нейросети в соответствии с полученным коэффициентом вероятности отнесения сообщения к определенной категории. 7. The traffic classification system according to claim 6, characterized in that the neural network module contains and implements an algorithm for transforming the threshold value of the neural network in accordance with the obtained probability coefficient for assigning a message to a certain category.
8. Система классификации траффика по п.6 отличающаяся тем, что модуль нейросети содержит в памяти и выполняет алгоритм установления границы достоверности выходных элементов нейросети в соответствии с полученным коэффициентом отнесения сообщения к определенной категории. 8. The traffic classification system according to claim 6, characterized in that the neural network module contains in memory and executes an algorithm for establishing the boundary of the reliability of the output elements of the neural network in accordance with the obtained coefficient of assigning a message to a certain category.
24 24
ЗАМЕНЯЮЩИЙ ЛИСТ (ПРАВИЛО 26)
SUBSTITUTE SHEET (RULE 26)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2018135235 | 2018-10-05 | ||
RU2018135235A RU2697648C2 (en) | 2018-10-05 | 2018-10-05 | Traffic classification system |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020071962A1 true WO2020071962A1 (en) | 2020-04-09 |
Family
ID=64317094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/RU2019/000715 WO2020071962A1 (en) | 2018-10-05 | 2019-10-07 | System for classifying traffic |
Country Status (3)
Country | Link |
---|---|
EA (1) | EA201900470A3 (en) |
RU (1) | RU2697648C2 (en) |
WO (1) | WO2020071962A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112668340A (en) * | 2020-12-28 | 2021-04-16 | 北京捷通华声科技股份有限公司 | Information processing method and device |
CN113872918A (en) * | 2020-06-30 | 2021-12-31 | 苏州三六零智能安全科技有限公司 | Network traffic classification method, equipment, storage medium and device |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110489102B (en) * | 2019-07-29 | 2021-06-18 | 东北大学 | Method for automatically generating Python code from natural language |
CN110781950B (en) * | 2019-10-23 | 2023-06-30 | 新华三信息安全技术有限公司 | Message processing method and device |
WO2023033684A1 (en) * | 2021-09-04 | 2023-03-09 | Акционерное Общество "Квантум А Рус" | Method for the mobile messaging of mobile subscribers |
Citations (3)
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)
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 |
-
2018
- 2018-10-05 RU RU2018135235A patent/RU2697648C2/en active
-
2019
- 2019-10-07 EA EA201900470A patent/EA201900470A3/en unknown
- 2019-10-07 WO PCT/RU2019/000715 patent/WO2020071962A1/en active Application Filing
Patent Citations (3)
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113872918A (en) * | 2020-06-30 | 2021-12-31 | 苏州三六零智能安全科技有限公司 | Network traffic classification method, equipment, storage medium and device |
CN112668340A (en) * | 2020-12-28 | 2021-04-16 | 北京捷通华声科技股份有限公司 | Information processing method and device |
Also Published As
Publication number | Publication date |
---|---|
EA201900470A3 (en) | 2020-10-30 |
RU2018135235A (en) | 2018-11-19 |
EA201900470A2 (en) | 2020-06-30 |
RU2018135235A3 (en) | 2019-05-22 |
RU2697648C2 (en) | 2019-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2697648C2 (en) | Traffic classification system | |
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 | |
US11269665B1 (en) | Method and system for user experience personalization in data management systems using machine learning | |
JP2008211835A (en) | Packet routing via payload inspection and subscription processing in publish-subscribe network | |
AU2020229706B2 (en) | Intent-driven contact center | |
CN103138981A (en) | Method and device for social network service analysis | |
CN103248677A (en) | Internet behavior analysis system and working method thereof | |
CN102090039B (en) | A method of performing data mediation, and an associated computer program product, data mediation device and information system | |
CN112015374B (en) | Cross-programming-language micro-service integration system based on natural language | |
CN111343201A (en) | Analysis method, device and system for rapidly adapting to protocol change | |
CN116668520A (en) | Gateway-based service arrangement method, system, equipment and storage medium | |
CN116346660A (en) | Data processing method, device, equipment and medium based on dependent replacement service | |
CN114006831B (en) | Message data processing method and device | |
KR20210000041A (en) | Method and apparatus for analyzing log data in real time | |
US20060034303A1 (en) | System and method for managing transactions related to messages transmitted in a communication network | |
EA041004B1 (en) | TRAFFIC CLASSIFICATION SYSTEM | |
KR100522440B1 (en) | User context collecting method using interactive interface | |
CN108809900B (en) | Framework and method for unified resource access | |
US12093162B1 (en) | Block anchors for online log parsing | |
CN115250254B (en) | Netflow message distribution processing method and device | |
CN118555263A (en) | Message processing system and method, message updating method and subscription request processing method |
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 |