Patent Publication Number: US-2023155960-A1

Title: Network monitoring system

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application claims the priority of Korean Patent Application No. 10-2021-0155549 filed on Nov. 12, 2021, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein by reference. 
     BACKGROUND 
     Field 
     The present disclosure relates to a network monitoring system, and more particularly, to a network monitoring system which responsively establishes a bandwidth allocation policy in various network environments by performing transferable reinforcement learning for a smooth operation of a quality-of-experience centered IoT application. 
     Description of the Related Art 
     Generally, a quality of experience (QoE) of an IoT application (a virtual physics application), such as localized heavy rain forecast using a temperature profile map, and a navigation based on a vehicle traffic map, is determined by aggregation of distributed information which is continuously updated from sensor devices. 
     Even though time validity of transmitted information is regarded as important to maintain a quality of the QoE for the IoT application, the validity of all information is not guaranteed at all times due to a limited resource of the device or a limited resource of the network. 
     That is, the limited bandwidth of the network is shared by a plurality of devices so that the information having an important influence on the QoE is transmitted slowly. 
     With regard to a bandwidth allocation policy of the network, according to the heuristics method, a specific network environment is assumed and an environment-dependent policy is established by means of mathematical induction so that when the environment is changed, it is necessary to establish the policy by means of the re-induction. 
     Recently, even though reinforcement learning methods to establish the allocation policy through learning without using complex induction have been proposed, an environment-dependent policy is established for the learning due to the characteristic of the reinforcement learning which requires a lot of samples so that there is a problem in that the policy cannot cope with the changes in the environment. 
     SUMMARY 
     An object of the present disclosure is to provide a network monitoring system which responsively establishes a bandwidth allocation policy in various network environments by performing transferable reinforcement learning for a smooth operation of a quality-of-experience (QoE) centered IoT application. 
     The object of the present disclosure is not limited to the above-mentioned objects and other objects and advantages of the present disclosure which have not been mentioned above can be understood by the following description and become more apparent from exemplary embodiments of the present disclosure. Further, it is understood that the objects and advantages of the present disclosure may be embodied by the means and a combination thereof in the claims. 
     According to an aspect of the present disclosure, a network monitoring system may include: a plurality of sensor devices which transmits data packets; and a monitoring server which performs the transferable reinforcement learning on the data packets to establish a bandwidth allocation policy in which a quality of experience (QoE) satisfies a set reference QoE to allocate the bandwidth to the plurality of sensor devices. 
     The monitoring server may include: a storage unit which stores the data packets and the bandwidth allocated to the plurality of sensor devices; and a learning unit which calculates the QoE quality by applying the data packets stored in the monitoring server to the bandwidth allocation policy generated with the transferable reinforcement learning and allocates the bandwidth which satisfies the reference QoE quality. 
     The learning unit may include: a flow embedding module which applies a flow state of the data packets to an attention mechanism configured by multi-perceptron to output a vector value which accelerates the training speed; and a bandwidth allocation module which forms a latent action which reduces an action search space to accelerate the training speed based on the vector value and a final action which expresses the latent action with a bandwidth allocation value. 
     The flow embedding module may include a vectorization function which generates an intermediate embedding vector value by applying the flow state to a multilayer perceptron and a relation extraction function which generates the vector value which is a flow embedding weighted by applying the intermediate embedding vector value to the attention mechanism. 
     The bandwidth allocation module may include an allocation function which forms the latent action according to a position point with respect to the plurality of sensor devices, an adaptation function which derives a control value to allow the latent action to be adapted to the plurality of target network environments, and a sharing function which forms the final action with the latent action and the control value. 
     The bandwidth allocation module establishes the bandwidth allocation policy in which the QoE quality satisfies the reference QoE quality according to the final action to allocate the bandwidth to the plurality of sensor devices with a data allocation value which represents the final action. 
     According to the present disclosure, the network monitoring system applies a policy established through a virtual environment to an actual environment network, so that it is advantageous in that a performance of the quality of experience (QoE) centered IoT application may be maximized. 
     Further, according to the present disclosure, the network monitoring system allows the bandwidth allocation policy established for a specific network environment by means of the reinforcement learning in a virtual environment to be adapted to a new network environment, thereby ensuring the compatibility of the bandwidth allocation policy. 
     The effects of the present disclosure are not limited to the aforementioned effects, and various other effects may be included within a range which is obvious to those skilled in the art from the following description. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The patent or application file contains at least one drawing executed in color. Copies of this patent or patent application publication with color drawing(s) will be provided by the Office upon request and payment of the necessary fee. 
       The above and other aspects, features and other advantages of the present disclosure will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which: 
         FIG.  1    is a schematic view illustrating a network monitoring system according to the present disclosure; 
         FIG.  2    is a view illustrating a transferable reinforcement learning structure which is applied to a network monitoring system according to the present disclosure; 
         FIG.  3    is a view specifically illustrating a transferable reinforcement learning structure illustrated in  FIG.  2   ; and 
         FIGS.  4  to  7    are exemplary execution diagrams illustrating a performance of a network monitoring system according to the present disclosure. 
     
    
    
     DETAILED DESCRIPTION OF THE EMBODIMENT 
     Those skilled in the art may make various modifications to the present disclosure and the present disclosure may have various embodiments thereof, and thus specific embodiments will be described in detail with reference to the drawings. However, this does not limit the present disclosure within specific exemplary embodiments, and it should be understood that the present disclosure covers all the modifications, equivalents and replacements within the spirit and technical scope of the present disclosure. In the description of respective drawings, similar reference numerals designate similar elements. 
     Terms such as first, second, A, or B may be used to describe various components but the components are not limited by the above terms. The above terms are used only to distinguish one component from the other component. For example, without departing from the scope of the present disclosure, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component. A term of and/or includes combination of a plurality of related elements or any one of the plurality of related elements. 
     It should be understood that, when it is described that an element is “coupled” or “connected” to another element, the element may be directly coupled or directly connected to the other element or coupled or connected to the other element through a third element. In contrast, when it is described that an element is “directly coupled” or “directly connected” to another element, it should be understood that no element is not present therebetween. 
     Terms used in the present application are used only to describe a specific exemplary embodiment, but are not intended to limit the present disclosure. A singular form may include a plural form if there is no clearly opposite meaning in the context. In the present application, it should be understood that the term “include” or “have” indicates that a feature, a number, a step, an operation, a component, a part or the combination thereof described in the specification is present, but do not exclude a possibility of presence or addition of one or more other features, numbers, steps, operations, components, parts or combinations, in advance. 
     If it is not contrarily defined, all terms used herein including technological or scientific terms have the same meaning as those generally understood by a person with ordinary skill in the art. Terms defined in generally used dictionary shall be construed that they have meanings matching those in the context of a related art, and shall not be construed in ideal or excessively formal meanings unless they are clearly defined in the present application. 
     In the specification and the claim, unless explicitly described to the contrary, the word “comprise” and variations such as “comprises” or “comprising”, will be understood to imply the inclusion of stated elements but not the exclusion of any other elements. 
     Hereinafter, exemplary embodiments according to the present disclosure will be described in detail with reference to accompanying drawings. 
       FIG.  1    is a schematic view illustrating a network monitoring system according to the present disclosure,  FIG.  2    is a view illustrating a transferable reinforcement learning structure which is applied to a network monitoring system according to the present disclosure, and  FIG.  3    is a view specifically illustrating a transferable reinforcement learning structure illustrated in  FIG.  2   . 
     Referring to  FIGS.  1  to  3   , a network monitoring system  100  includes a plurality of sensor devices  110  and a monitoring server  120 . 
     Each of the plurality of sensor devices  110  transmits data packets according to the bandwidth in which information collected from the sensing area is allocated. 
     In the exemplary embodiment, the plurality of sensor devices  110  communicates with an external device, such as a navigation and a mobile terminal, and receive information transmitted from the external device to transmit the information to the monitoring server  120 . 
     The monitoring server  120  performs the transferable reinforcement learning on the data packets to establish a bandwidth allocation policy in which a quality of experience (QoE) satisfies a set reference QoE to allocate the bandwidth to the plurality of sensor devices. 
     The monitoring server  120  may include a storage unit  122  and a learning unit  124 . 
     First, the storage unit  122  stores the data packets and a bandwidth allocated to the plurality of sensor devices  110 , but is not limited thereto. 
     The learning unit  124  calculates the QoE quality by applying the data packets stored in the storage unit  122  to the bandwidth allocation policy generated by the transferable reinforcement learning, and allocates the bandwidth which satisfies the reference QoE quality. 
     Here, the learning unit  124  may include a flow embedding module  126  and a bandwidth allocation module  128 . 
     The flow embedding module  126  applies a flow state of the data packets to an attention mechanism configured by multi-perceptron to output a vector value which accelerates the training speed. 
     The flow embedding module  126  may include a vectorization function which generates an intermediate embedding vector value by applying the flow state to a multilayer perceptron and a relation extraction function which generates the vector value which is a flow embedding weighted by applying the intermediate embedding vector value to the attention mechanism. 
     Prior to describing the flow embedding module  126 , in a circumstance with a limited network resource, the QoE quality Σ i=1   N     D   α i =A≤L ε  is maximized by bandwidth allocation 
     
       
         
           
             
               
                 ∑ 
                 
                   i 
                   = 
                   1 
                 
                 
                   N 
                   D 
                 
               
               
                 a 
                 i 
                 t 
               
             
             , 
           
         
       
     
     which will be represented as follows. 
     
       
         
           
             	 
             
               
                 
                   
                     ? 
                   
                   QoE 
                 
                 = 
                 
                   
                     ∑ 
                     
                       t 
                       = 
                       0 
                     
                     
                       T 
                       - 
                       1 
                     
                   
                   
                     
                       ∫ 
                       t 
                       
                         t 
                         + 
                         1 
                       
                     
                     
                       
                         QUAL 
                         ⁡ 
                         ( 
                         
                           
                             
                               I 
                               τ 
                             
                             ; 
                             
                               a 
                               1 
                               t 
                             
                           
                           , 
                           … 
                               
                           , 
                           
                             a 
                             
                               N 
                               D 
                             
                             t 
                           
                         
                         ) 
                       
                       ⁢ 
                       d 
                       ⁢ 
                       τ 
                     
                   
                 
               
               , 
             
           
         
       
       
         
           
             	 
             
               
                 subject 
                 ⁢ 
                     
                 to 
                 ⁢ 
                     
                 
                   
                     ∑ 
                     
                       i 
                       = 
                       1 
                     
                     
                       N 
                       D 
                     
                   
                   
                     a 
                     i 
                     t 
                   
                 
               
               = 
               
                 A 
                 ≤ 
                 
                   L 
                   ε 
                 
               
             
           
         
       
       
         
           
             
               ? 
             
             indicates text missing or illegible when filed 
           
         
       
     
     Here, QUAL(I T ;α 1   t , . . . , α N     D     t ) is a function of evaluating a QoE quality, L ε  is a link allocation amount according to the network environment ε, T is a total allocation time, N D  is the number of sensor devices, I T =(I 1   T , . . . , I N     D     T ) is a sum of information transmitted from the plurality of sensor devices  11 . 
     Here, referring to  FIGS.  2  and  3   , the vectorization function included in the flow embedding module  126  generates an intermediate embedding vector value e l   i =MLPϕ(S i   t ) by applying the flow states S i   t  to the multilayer perceptron MLP function MLPϕ(.) at every time step t. 
     The relation extraction function included in the flow embedding module  126  generates the flow embedding E t  using the intermediate embedding vector E l =[e 1   l , . . . ,e N     D     t ] and the attention function ATTψ(.). 
     In the relation extraction function, query, key, and value vectors (q i , k i , v i ) may be calculated from the multilayer perceptron MLP functions (MLP ψ     q   (.), MLP ψ     k   (.), MLP ψ     v   (.). 
         x   i   =MLP   ψ     x   ( e   i   l ) x∈{q,k,v}   
     Next, the attention weight W i  which measures the importance with the flow state S i   t  and the other flow states may be calculated. 
     
       
         
           
             
               
                 
                   
                     w 
                     i 
                   
                   = 
                     
                   
                     Softmax 
                     ⁢ 
                         
                     
                       ( 
                       
                         [ 
                         
                           
                             
                               
                                 q 
                                 i 
                                 T 
                               
                               · 
                               
                                 k 
                                 1 
                               
                             
                             
                               d 
                             
                           
                           , 
                           … 
                               
                           , 
                           
                             
                               
                                 q 
                                 i 
                                 T 
                               
                               · 
                               
                                 k 
                                 
                                   N 
                                   D 
                                 
                               
                             
                             
                               d 
                             
                           
                         
                         ] 
                       
                       ) 
                     
                   
                 
               
             
             
               
                 
                   = 
                     
                   
                     
                       
                         [ 
                         
                           
                             Pr 
                             ⁡ 
                             ( 
                             
                               w 
                               1 
                               ′ 
                             
                             ) 
                           
                           , 
                           … 
                               
                           , 
                           
                             Pr 
                             ⁡ 
                             ( 
                             
                               w 
                               
                                 N 
                                 D 
                               
                               ′ 
                             
                             ) 
                           
                         
                         ] 
                       
                       T 
                     
                     = 
                     
                       
                         [ 
                         
                           
                             w 
                             1 
                           
                           , 
                           … 
                               
                           , 
                           
                             w 
                             
                               N 
                               D 
                             
                           
                         
                         ] 
                       
                       T 
                     
                   
                 
               
             
           
         
       
     
     Here, it is defined as 
     
       
         
           
             
               Pr 
               ⁡ 
               ( 
               
                 w 
                 i 
                 ′ 
               
               ) 
             
             = 
             
               
                 
                   exp 
                   ⁡ 
                   ( 
                   
                     w 
                     i 
                     ′ 
                   
                   ) 
                 
                 
                   
                     ∑ 
                     
                       j 
                       = 
                       1 
                     
                     
                       N 
                       D 
                     
                   
                   
                     exp 
                     ⁡ 
                     ( 
                     
                       w 
                       j 
                       ′ 
                     
                     ) 
                   
                 
               
               . 
             
           
         
       
     
     The flow embedding e i   t  may be calculated by (w 1 v 1 + . . . +w N     D   v N     D   ) 
     That is, the flow embedding process is summarized as follows and is a function EMB ψ (.) by a trainable parameter ψ. 
     
       
         
           
             
               
                 
                   
                     E 
                     t 
                   
                   = 
                     
                   
                     
                       EMB 
                       ψ 
                     
                     ( 
                     
                       S 
                       t 
                     
                     ) 
                   
                 
               
             
             
               
                 
                   = 
                     
                   
                     
                       ATT 
                       ψ 
                     
                     ( 
                     
                       [ 
                       
                         
                           
                             MLP 
                             ψ 
                           
                           ( 
                           
                             S 
                             1 
                             t 
                           
                           ) 
                         
                         , 
                         … 
                             
                         , 
                         
                           
                             MLP 
                             ψ 
                           
                           ( 
                           
                             S 
                             
                               N 
                               D 
                             
                             t 
                           
                           ) 
                         
                       
                       ] 
                     
                     ) 
                   
                 
               
             
           
         
       
     
     The bandwidth allocation module  128  includes an allocation function which forms a latent action according to a position point with respect to the plurality of sensor devices  110 , an adaptation function which derives a control value to allow the latent action to be adapted to the plurality of target network environments, and a sharing function which forms the final action with the latent action and the control value. 
     The allocation function expresses the position of the sensor device  110  with a 2D grid and derives the latent action ã t =[{tilde over (α)} 1   t , . . . ,{tilde over (α)} N     p     t ] T  for the point (p 1 , . . . ,p N     p   ) which are randomly disposed on the grid. 
         ã   t =ALLOC ϕ     1   ( E   t ) 
     Here, in order to accelerate the training speed, N p &lt;&lt;N D  is assumed and ALLOC ϕ     1   (.) is a function parameterized with ϕ 1  trained by the RL and forms the policy π ϕ     1   . 
     The adaptation function is a function ADJUST ϕ     2    parameterized with ϕ 2  which is trained by the transferable reinforcement learning forms the policy ϕ 2  and derives a control value Δ t =[ã δ   t , k δ   t , v δ   t ] for adapting to various network environments. 
       Δ t =ADJUST ϕ     2   ( E   t )
 
     Here, in order to increase the training speed for the domain adaptation, a range of the value of ã δ  is limited to z % of ã. 
     The shape function derives a final action a t  by passing the control value Δ t =[ã δ   t , k δ   t , v δ   t ] and the latent action ã t =[{tilde over (α)} 1   t , . . . ,{tilde over (α)} N     p     t ] T  through the SHAPE function which is non-trainable. 
         a   t =SHAPE( ã   t   +ã   δ   t )| k+k   δ   t   ,v+v   δ   t    
     Specific calculation of the shape (SHAPE) function is as follows. 
     
       
         
           
             	 
             
               
                 
                   ? 
                 
                 = 
                 
                   
                     ∑ 
                     
                       j 
                       = 
                       1 
                     
                     
                       N 
                       P 
                     
                   
                   
                     
                       
                         
                           a 
                           ~ 
                         
                         j 
                         t 
                       
                       + 
                       
                         
                           a 
                           ~ 
                         
                         
                           δ 
                           , 
                           j 
                         
                         t 
                       
                       + 
                       ϵ 
                     
                     
                       
                         
                            
                           
                             
                               D 
                               i 
                             
                             - 
                             
                               p 
                               j 
                             
                           
                            
                         
                         
                           k 
                           + 
                           
                             k 
                             δ 
                             t 
                           
                         
                       
                       + 
                       ϵ 
                     
                   
                 
               
               , 
             
           
         
       
       
         
           
             	 
             
               
                 a 
                 i 
                 ′ 
               
               = 
               
                 { 
                 
                   
                     
                       
                         
                           
                             a 
                             ~ 
                           
                           i 
                           ′ 
                         
                         , 
                       
                     
                     
                       
                         
                           
                             if 
                             ⁢ 
                                 
                             
                               
                                 a 
                                 ~ 
                               
                               i 
                               ′ 
                             
                           
                           ≥ 
                           
                             0.1 
                             
                               N 
                               p 
                             
                           
                         
                         , 
                       
                     
                   
                   
                     
                       
                         c 
                         , 
                       
                     
                     
                       
                         otherwise 
                         . 
                       
                     
                   
                 
               
             
           
         
       
       
         
           
             	 
             
               
                 
                   
                     
                       a 
                       t 
                     
                     = 
                       
                     
                       
                         ( 
                         
                           1 
                           - 
                           v 
                           - 
                           
                             v 
                             δ 
                             t 
                           
                         
                         ) 
                       
                       ⁢ 
                       
                         A 
                         · 
                         Softmax 
                       
                       ⁢ 
                           
                       
                         ( 
                         
                           [ 
                           
                             
                               a 
                               1 
                               ′ 
                             
                             , 
                             … 
                                 
                             , 
                             
                               a 
                               
                                 N 
                                 D 
                               
                               ′ 
                             
                           
                           ] 
                         
                         ) 
                       
                     
                   
                 
               
               
                 
                   
                     = 
                       
                     
                       
                         ( 
                         
                           1 
                           - 
                           v 
                           - 
                           
                             v 
                             δ 
                             t 
                           
                         
                         ) 
                       
                       ⁢ 
                       
                         A 
                         · 
                         
                           
                             [ 
                             
                               
                                 Pr 
                                 ⁡ 
                                 ( 
                                 
                                   a 
                                   1 
                                   ′ 
                                 
                                 ) 
                               
                               , 
                               … 
                                   
                               , 
                               
                                 Pr 
                                 ⁡ 
                                 ( 
                                 
                                   a 
                                   
                                     N 
                                     D 
                                   
                                   ′ 
                                 
                                 ) 
                               
                             
                             ] 
                           
                           T 
                         
                       
                     
                   
                 
               
               
                 
                   
                     = 
                       
                     
                       
                         [ 
                         
                           
                             a 
                             1 
                             ′ 
                           
                           , 
                           … 
                               
                           , 
                           
                             a 
                             
                               N 
                               D 
                             
                             ′ 
                           
                         
                         ] 
                       
                       T 
                     
                   
                 
               
             
           
         
       
       
         
           
             
               ? 
             
             indicates text missing or illegible when filed 
           
         
       
     
     Here, ∥D i −p j ∥ is a distance between the sensor device D i  and the point p j ,∈&lt;&lt;1 is very small positive number, and c≤−2 is a value for clip. 
     The shape (SHAPE) function is not limited to the above equation and another type of calculating method is also sufficiently used. 
     Finally obtained bandwidth allocation values (general action) [α 1   t , . . . ,α N     D     t ] T  of the sensor devices are transmitted to individual devices through one packet, and the device D i  updates the information in the storage unit  122  according to the allocated bandwidth a i   t  through a network. 
     That is, the bandwidth allocation module  128  establishes the bandwidth allocation policy in which the QoE quality satisfies the reference QoE quality according to the final action to allocate the bandwidth to the plurality of sensor devices with a data allocation value which represents the final action. 
     As described above, the learning unit  124  establishes the bandwidth allocation policy in various network environments by means of the two-phase learning processes using the flow embedding and action shaping techniques with the transferable reinforcement learning. 
     The flow embedding expresses the state for the information update flow of the sensor devices as a low dimension vector value which accelerates the training speed, using an attention mechanism configured by a multilayer perceptron. 
     According to the action shaping, an action of determining an action of the policy is formed in two stages. In the first stage, a latent action which reduces an action search space to accelerate the training speed is derived, and in the second stage, a general action which expresses the latent action with a bandwidth allocation value is formed. Here, the process of forming the latent action as the general action is configured by a function which is not necessary to be trained to be adjusted by a parameter to support the domain adaptation. 
     In Phase 1, in an easy-to-learn environment (source environment) such as an ideal network, a trainable function is trained for the flow embedding and the action shaping to establish the initial policy. 
     In phase 2, in order to adapt the initial policy established in the source environment to an environment (target environment) such as a real network environment, only the adaptation function is trained for the action shaping to establish an optimal policy corresponding to the environment. 
       FIGS.  4  to  7    are exemplary execution diagrams illustrating a performance of a network monitoring system according to the present disclosure. 
       FIG.  4    illustrates a performance of the present disclosure (Repot) according to a network scale and it is understood that 90% or more of QoE performance is maintained regardless of the network scale. 
       FIG.  5    illustrates a performance when the initially established policy is adapted to a test in another network environment. 
     During the test, in all the control groups including the present disclosure (Repot), 20% or more of QoE is reduced, but in the present disclosure, it is understood that the performance is recovered to an original performance value through the adaptation performance, that is, the adaptation process of the action shaping. 
       FIG.  6    illustrates a gain of the training speed. 
     It shows that even though 1.6 million training samples were required for initial policy establishment, when it is adapted to another network environment, the training is possible with 100000 training samples. 
       FIG.  6   → FIG.  7    illustrates a performance when the initially established policy is adapted in various network environments. It is understood that when the present disclosure is adapted by the action shaping method, 90% or more of QoE is maintained. Even though the present disclosure (Repot) can be adapted to the environment by another method, the QoE is low when the other method (full, top) is used. 
     The features, structures, effects and the like described in the foregoing embodiments are included in at least one embodiment of the present disclosure and are not necessarily limited to one embodiment. Moreover, the features, structures, effects and the like illustrated in each embodiment may be combined or modified by those skilled in the art for the other embodiments to be carried out. Therefore, the combination and the modification of the present disclosure are interpreted to be included within the scope of the present disclosure. 
     It will be appreciated that various exemplary embodiments of the present disclosure have been described herein for purposes of illustration, and that various modifications, changes, and substitutions may be made by those skilled in the art without departing from the scope and spirit of the present disclosure. Therefore, the exemplary embodiments of the present disclosure are provided for illustrative purposes only but not intended to limit the technical concept of the present disclosure. The scope of the technical concept of the present disclosure is not limited thereto. The protective scope of the present disclosure should be construed based on the following claims, and all the technical concepts in the equivalent scope thereof should be construed as falling within the scope of the present disclosure.