WO2023084599A1 - トラフィック監視装置およびトラフィック監視プログラム - Google Patents

トラフィック監視装置およびトラフィック監視プログラム Download PDF

Info

Publication number
WO2023084599A1
WO2023084599A1 PCT/JP2021/041180 JP2021041180W WO2023084599A1 WO 2023084599 A1 WO2023084599 A1 WO 2023084599A1 JP 2021041180 W JP2021041180 W JP 2021041180W WO 2023084599 A1 WO2023084599 A1 WO 2023084599A1
Authority
WO
WIPO (PCT)
Prior art keywords
traffic
flow
unit
capture
information processing
Prior art date
Application number
PCT/JP2021/041180
Other languages
English (en)
French (fr)
Inventor
彩希 八田
寛之 鵜澤
周平 吉田
悠介 関原
晶子 大輝
宥光 飯沼
奈美子 池田
Original Assignee
日本電信電話株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to PCT/JP2021/041180 priority Critical patent/WO2023084599A1/ja
Priority to JP2023559231A priority patent/JPWO2023084599A1/ja
Publication of WO2023084599A1 publication Critical patent/WO2023084599A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate

Definitions

  • the present invention relates to technology for monitoring network traffic.
  • a traffic monitoring device that can perform cause analysis by The device is used, for example, for services using VMs (Virtual Machines), etc. with the progress of virtualization technology in NFV (Network Functions Virtualization)/SDN (Software Defined Networking).
  • VMs Virtual Machines
  • NFV Network Functions Virtualization
  • SDN Software Defined Networking
  • the traffic volume of a specific flow suddenly increases, it is desirable to be able to capture the packets of the target flow immediately after the sudden increase in order to identify the cause. 1).
  • the traffic volume is compared with a threshold value, and failure occurrence is notified.
  • Non-Patent Document 1 Even in normal times, traffic volume fluctuates depending on the time of day. For example, traffic volume may increase in the evening. However, since the technique of Non-Patent Document 1 has a fixed threshold value, it cannot cope with normal fluctuations in the amount of traffic, resulting in erroneous detection of failures or non-detection of failures.
  • An object of the present invention is to accurately capture packets when a failure occurs.
  • a traffic monitoring device for monitoring traffic in a network to be monitored, which acquires traffic statistical information of flows in the network to be monitored, and obtains the traffic statistics.
  • an information processing unit configured to determine whether information satisfies a predetermined criterion for failure detection; and a packet capture unit configured to capture as the information processor, wherein the information processor is configured to dynamically update the predetermined criteria during operation of the information processor.
  • the traffic monitoring program of the present invention acquires traffic statistical information of flows in the monitored network in a computer that monitors traffic in the monitored network, and the acquired traffic statistical information is used for fault detection. and a packet capture step of capturing the packets of the flow determined to satisfy the predetermined criteria as packets at the time of failure of the flow.
  • the information processing step includes dynamically updating the predetermined criteria during operation of the information processing unit.
  • FIG. 1 is a block diagram showing the configuration of a traffic monitoring device according to the first embodiment of the invention.
  • FIG. 2 is a graph for explaining changes in traffic volume, upper thresholds, and lower thresholds.
  • FIG. 3 is a block diagram showing the configuration of a traffic monitoring device according to the second embodiment of the invention.
  • FIG. 4 is a flowchart of threshold determination processing.
  • FIG. 5 is a diagram for explaining a method of calculating the upper limit threshold and the lower limit threshold.
  • FIG. 6 is a diagram for explaining a method of calculating the upper limit threshold and the lower limit threshold.
  • FIG. 7 is a diagram for explaining a method of calculating the upper limit threshold and the lower limit threshold.
  • FIG. 8 is a block diagram showing the configuration of a traffic monitoring device according to the third embodiment of the invention.
  • FIG. 9 is a hardware configuration diagram of the traffic monitoring device according to the first to third embodiments of the present invention.
  • the traffic monitoring device 10 receives a mirroring packet, which is a copy of a packet transmitted and received on a monitored network 80, as an input packet.
  • the traffic monitoring device 10 monitors traffic for each flow in the monitored network 80 based on input packets.
  • a flow here refers to a set of packets in which at least one of the field values indicating the source and the destination is the same.
  • the traffic monitoring device 10 includes an information processing section 20, a packet capture section 30, and a time source 40.
  • An input packet is input to both the information processing section 20 and the packet capture section 30 .
  • the traffic monitoring device 10 is composed of a computer or the like, and operates as an information processing section 20 and a packet capture section 30 by executing a program by a processor such as a CPU of the computer.
  • the time source 40 is composed of a real-time clock or the like.
  • the information processing unit 20 includes a packet analysis unit 21, a flow identification unit 22, a statistics unit 23, a statistical information file generation unit 24, a storage unit 25, an automatic failure detection unit 26, a threshold update unit 27, a rule a table 29;
  • the packet analysis unit 21 analyzes input packets input from the monitored network 80 . Through this analysis, the packet analysis unit 21 extracts header information contained in the input packet and necessary for identifying the flow of the input packet.
  • the extracted header information is information that can be compared with a rule defined in a rule table 29 to be described later for matching or non-matching.
  • the information and rules of this header include, for example, source/destination MAC addresses and source/destination IP addresses, source/destination port numbers, protocol types, and the like.
  • the flow identification unit 22 identifies the flow of the input packet based on the header extracted by the packet analysis unit 21.
  • the flow identification unit 22 refers to a rule table 29 that records rules corresponding to flows.
  • the rule table 29 contains the registration number n of the flow, the above rule for identifying the flow, the capture flag indicating whether or not to capture packets of the flow, and whether or not a failure has occurred in the flow.
  • An upper limit threshold value UTHn and a lower limit threshold value LTHn for determining whether the flow is associated with each other are stored for each flow.
  • n is an integer from 1 to N
  • N is the number of flows registered in the rule table 29 (the same applies to n hereinafter).
  • the flow identification unit 22 refers to the rule table 29 and acquires the registration number n and the value of the capture flag corresponding to the rule that matches the header information. Obtaining the registration number n identifies the flow of that incoming packet.
  • the flow identification unit 22 outputs the acquired capture flag value to the packet capture unit 30 . Although the details will be described later, when the capture flag is "1", the packet capture unit 30 captures the corresponding input packet. Furthermore, the flow identification unit 22 outputs the acquired registration number n to the statistics unit 23 together with the input packet. If the flow identification unit 22 cannot acquire the registration number n by referring to the rule table 29, the flow identification unit 22 outputs the number of packets or the amount of data (such as the number of bytes) to the statistics unit 23 as an unregistered flow.
  • the statistics unit 23 tallies the number of input packets or the amount of data (such as the number of bytes) for each registration number n, that is, for each flow.
  • the statistics unit 23 counts each time the registration number n and the input packet are input from the flow identification unit 22 .
  • the statistical unit 23 obtains the traffic amount, which is traffic statistical information representing the traffic state of the flow, from this aggregation.
  • the traffic volume here is the number of packets or the amount of data per unit time.
  • the statistics unit 23 also aggregates the number of packets or the amount of data (such as the number of bytes) input as unregistered flows in the same manner as described above.
  • the statistical information file generating unit 24 periodically acquires the traffic volume (traffic statistical information), which is the result of aggregation by the statistical unit 23 , from the statistical unit 23 and records it in the storage unit 25 .
  • the statistical information file generation unit 24 acquires the time at the time of recording from the time source 40 and stores the traffic volume stamped with the acquired time in the storage unit 25 .
  • the time-stamped traffic volume is stored for each registration number n.
  • the time-stamped traffic volume constitutes a statistics file. This statistical information file identifies temporal changes in the amount of traffic for each flow.
  • the automatic failure detection unit 26 acquires the traffic volume and the registration number n corresponding to the traffic volume from the statistics unit 13.
  • the automatic failure detection unit 16 refers to the rule table 29 and acquires the upper limit threshold value UTHn and the lower limit threshold value LTHn corresponding to the registration number n.
  • the automatic failure detection unit 26 compares the acquired upper limit threshold value UTHn and lower limit threshold value LTHn with the traffic volume. When the traffic volume exceeds the upper limit threshold value UTHn or falls below the lower limit threshold value LTHn, the automatic failure detection unit 16 updates the capture flag corresponding to the acquired registration number n in the rule table 29 to "1". If it is already "1", the "1" is maintained because the capturing of input packets, which will be described later, has already started.
  • the automatic failure detection unit 26 updates the capture flag corresponding to the registration number n in the rule table 29 to "0" when the traffic volume does not exceed the upper limit threshold UTHn and does not fall below the lower limit threshold LTHn. If it is already "0", it is kept.
  • the traffic volume exceeds the upper limit threshold UTHn
  • the traffic volume is large. For example, traffic volume is increasing rapidly. In such a case, there is a possibility that an attack that sends a large number of mails or a problem such as congestion to the server has occurred in that flow.
  • the traffic volume exceeds the lower limit threshold value LTHn
  • the traffic volume is small. For example, traffic volume is plummeting. In such a case, there is a possibility that a failure such as a server down has occurred in that flow.
  • the automatic fault detection unit 26 When the traffic volume exceeds the upper limit threshold value UTHn or falls below the lower limit threshold value LTHn, the automatic fault detection unit 26 outputs information to that effect (including the fact that a fault has occurred) to an external device (such as a display device). and present it to the user.
  • an external device such as a display device
  • the threshold update unit 27 periodically updates the upper limit threshold UTHn and the lower limit threshold LTHn based on the time from the time source 40 . This point will be described later.
  • the packet capture unit 30 includes a filter unit 31, a capture file generation unit 32, and a storage unit 33.
  • the filter unit 31 temporarily buffers the input packet input to the packet capture unit 30 and waits until the value of the capture flag is notified from the flow identification unit 22 .
  • the value of this capture flag is the value acquired and output by the flow identification unit 22 for the buffered input packet.
  • the filter unit 31 outputs the buffered input packet to the subsequent capture file generation unit 32 .
  • the filter unit 31 discards the buffered input packet without outputting it to the subsequent capture file generation unit 32 .
  • the input packet when the value of the capture flag is "1" is filed.
  • the flow identification unit 22 cannot obtain the registration number n by referring to the rule table 29 if the value of the capture flag is not notified from the flow identification unit 22 for a certain period of time, the value of the capture flag is buffered. Incoming packets may be discarded. As another example, when the flow identification unit 22 cannot acquire the registration number n by referring to the rule table 29, the flow identification unit 22 may notify "0" as the value of the capture flag.
  • the capture file generation unit 32 uses the input packet from the filter unit 31 and the time at which the input packet is input from the time source 40 to create a file of captured data bundled for a plurality of packets, and store it in the storage unit 25. save. This means that the incoming packet has been captured. Capturing is done automatically according to the value of the capture flag.
  • the capture file generation unit 32 may file input packets for each flow based on the header or the like.
  • the flow identification unit 22 may output the registration number n obtained above to the filter unit 31. In this case, when the value of the capture flag is "1", the filter unit 31 also outputs the registration number n to the capture file. You may generate
  • FIG. The capture file generation unit 32 may create a capture file of input packets for each registration number, that is, for each flow.
  • the threshold updating unit 27 periodically updates the upper limit threshold UTHn and the lower limit threshold LTHn based on the time from the time source 40.
  • the threshold update unit 27 dynamically updates the upper limit threshold UTHn and the lower limit threshold LTHn while the information processing unit 20 is in operation.
  • the threshold updating unit 27 of the present embodiment changes the upper threshold UTHn and the lower threshold LTHn by dividing them into predetermined periods.
  • FIG. 2 shows a setting example of the upper limit threshold value UTHn and the lower limit threshold value LTHn in the flow of the registration number n.
  • the graph in FIG. 2 shows the average daily traffic volume of the flow with the registration number n in which no faults have occurred.
  • one day is divided into three time periods, and an upper limit threshold UTHn and a lower limit threshold LTHn are set for each section.
  • the threshold updating unit 27 has, for example, a table 27A in which the upper limit threshold UTHn and the lower limit threshold LTHn corresponding to time are defined for each registration number n, that is, for each flow.
  • the threshold updating unit 27 updates the upper limit threshold UTHn and the lower limit threshold LTHn corresponding to the registration number n of the rule table 29 in the table 27A.
  • the upper threshold value UTHn and the lower threshold value LTHn associated with that time are updated.
  • the time to update the upper limit threshold UTHn and the lower limit threshold LTHn may be the same or different for each flow. Also, in the same flow, the update timing may be shifted between the upper limit threshold value UTHn and the lower limit threshold value LTHn.
  • the termination instruction after the start of input packet capture may be an external termination instruction.
  • the automatic failure detection unit may issue a termination instruction upon detecting that the traffic volume has become below the upper limit threshold/abnormal lower limit threshold.
  • the information processing unit 20 may be provided with a timer corresponding to the number of flows, capture may be continued after the capture start instruction is issued until the timer expires, and an end instruction may be issued after the expiration.
  • the lower limit threshold may be relaxed to -3 ⁇ or the like.
  • the average value of the traffic volume at each timing for several days may be used as a reference, and the average value ⁇ a certain value may be set as the upper limit threshold value UTHn and the lower limit threshold value LTHn.
  • the traffic monitoring device 110 includes an information processing unit 120 instead of the information processing unit 20, as compared with the traffic monitoring device 10 according to the first embodiment.
  • the information processing section 120 further includes a threshold determination section 128 in addition to the configuration of the information processing section 20 .
  • the threshold determination unit 128 determines the upper limit threshold UTHn and the lower limit threshold LTHn in real time based on the traffic volume for each registration number n flow, that is, for each registration number n.
  • the threshold determination unit 128 calculates the upper limit threshold UTHn and the lower limit threshold LTHn for each predetermined threshold update period, and notifies the threshold update unit 27 of the calculation result.
  • the threshold updating unit 27 receives the notification and updates the upper limit threshold UTHn and the lower limit threshold LTHn for each rule in the rule table 29 .
  • the threshold determination unit 128 acquires the traffic volume and the registration number n corresponding to the traffic volume from the statistics unit 13, and based on these, determines the upper limit threshold UTHn and the lower limit threshold LTHn for each flow, that is, the registration number Calculate every n.
  • the threshold update period shall be a short period of 10 seconds or more and 10 minutes or less. Therefore, the upper threshold value UTHn and the lower threshold value LTHn are finely changed in a short cycle. As a result, it becomes possible to set the upper limit threshold value UTHn and the lower limit threshold value LTHn according to the amount of traffic updated in real time, and it is possible to increase the accuracy of execution of packet capture triggered by abnormal traffic.
  • the threshold determination unit 128 executes the threshold determination process of FIG. 4 .
  • the following calculation that is, determination of the upper threshold value UTHn and the lower threshold value LTHn, is performed for each registration number n, that is, for each flow. It is assumed that the values required for the following calculations are calculated based on the traffic volume of the statistical information file recorded in the storage unit 25 by the threshold value determination unit 128 and the like. Also, the threshold determining unit 128 may hold values necessary for determining the upper threshold UTHn and the lower threshold LTHn.
  • the threshold determination unit 128 first calculates the upper limit threshold UTHn and the lower limit threshold LTHn of the next period as temporary values by any of the following calculation methods (1) to (3) (step S11).
  • the user can set which of the following calculation methods to use.
  • the upper limit threshold value UTHn ( ⁇ t3) and the lower limit threshold value LTHn ( ⁇ t3) for the next cycle ( ⁇ t3) are calculated by dividing the average traffic volume Taven ( ⁇ t1) in the previous cycle ( ⁇ t1) and the average traffic volume Tave in the current cycle ( ⁇ t2). Calculation based on n( ⁇ t2) and the upper threshold UTHn( ⁇ t2) and lower threshold LTHn( ⁇ t2) of the current cycle ( ⁇ t2) (see FIG. 5 for each value).
  • the calculation formula is, for example, the following formula.
  • the upper limit threshold value UTHn ( ⁇ t3) and the lower limit threshold value LTHn ( ⁇ t3) for the next period ( ⁇ t3) are calculated from the average traffic volume Taven ( ⁇ tbase) in the reference period ( ⁇ tbase) of the threshold update period and the current Calculated using the average traffic volume Taven ( ⁇ t2) in the period ( ⁇ t2), the reference upper limit threshold UTHn ( ⁇ tbase) and the reference lower limit threshold LTHn ( ⁇ tbase) in the reference period ( ⁇ tbase) (see FIG. 6 for each value).
  • the calculation formula is, for example, the following formula.
  • the average traffic volume Taven( ⁇ tbase), the reference upper limit threshold UTHn( ⁇ tbase), and the reference lower limit threshold LTHn( ⁇ tbase) are calculated and set in advance by an arbitrary method.
  • the above calculation formula is, for example, the following formula.
  • the base period ( ⁇ tbase) is arbitrarily determined.
  • UTHn( ⁇ t3) (Taven( ⁇ t2)/Taven( ⁇ tbase)) ⁇ UTHn( ⁇ tbase)
  • LTHn( ⁇ t3) (Taven( ⁇ t2)/Taven( ⁇ tbase)) ⁇ LTHn( ⁇ tbase)
  • the upper threshold value UTHn ( ⁇ t3) and the lower threshold value LTHn ( ⁇ t3) of the next period ( ⁇ t3) are the traffic volume Tn ( ⁇ t1) at a certain timing (start timing, end timing, etc.) in the previous period ( ⁇ t1). , based on the traffic volume Tn ( ⁇ t2) at a certain timing (start timing, end timing, etc.) in the current period ( ⁇ t2) and the upper threshold UTHn ( ⁇ t2) and lower threshold LTHn ( ⁇ t2) in the current period ( ⁇ t2) Calculations (see Figure 5 for values).
  • the calculation formula is, for example, the following formula.
  • step S11 new upper and lower thresholds are calculated based on increases and decreases in the average traffic volume in the threshold update cycle, so it is possible that a failure has occurred at the time of calculation. In other words, there is a possibility that the traffic volume is temporarily increasing or decreasing at that time. Therefore, the threshold determination unit 128 compares the average traffic volume of the same flow on the current day and the previous day with the same time cycle (step S12), and determines whether the difference exceeds a predetermined threshold (step S13). ). If the difference does not exceed the predetermined threshold and is not large (step S13; No), the threshold determining unit 128 determines that no failure has occurred, and determines the upper threshold UTHn ( ⁇ t3) and lower threshold LTHn ( ⁇ t3) obtained in step S11.
  • step S13 determines the presence or absence of a failure by comparing the average traffic volume in a short period consisting of a threshold updating period and a long period consisting of a plurality of threshold updating periods.
  • Step S14 determines the difference between the two traffic volumes in a short period consisting of a threshold updating period and a long period consisting of a plurality of threshold updating periods.
  • step S14 If the difference between the two traffic volumes exceeds a predetermined value, it is determined that "abnormality may occur" (step S14; Yes), and the upper threshold value and lower threshold value are set to the upper threshold value for the same time cycle of the same flow on the previous day. and the same threshold as the lower limit threshold (step S16). In addition, when there is a large difference (step S13; Yes), the threshold determination unit 128 may execute step S16 without going through step S15.
  • calculation is performed for all flows listed in the rule table 29, but the present invention is not limited to this. may be calculated and updated.
  • the configuration and method of dynamically changing the upper/lower thresholds in a short period means that the thresholds are set according to the actual traffic volume, and unnecessary captures can be prevented. Further, the threshold determination unit 128, as exemplified in the above equations 1 to 6, determines the degree of change in the traffic volume based on the short-cycle traffic volume before the next cycle in which the threshold is determined, and By determining the threshold based on the threshold at (especially the current threshold) at , the accuracy of the threshold can be improved.
  • the threshold determination unit 128 sets the upper limit threshold value based on the fluctuation of the long-period average traffic volume. and a lower threshold.
  • the threshold determination unit 128, for each threshold update cycle (which may be any cycle longer than the short cycle) shown in FIG. LTHn( ⁇ t3) is calculated.
  • the threshold determining unit 128 determines the average traffic volume Taven ( ⁇ T2) in an observation period T2 (for example, a period of one hour or more) consisting of a plurality of consecutive threshold update periods and including the current period ⁇ t2 as the latest period, and The average traffic volume Taven ( ⁇ T1) in an observation cycle T1 (for example, a cycle of one hour or more) consisting of a plurality of consecutive threshold update cycles and including the previous cycle ⁇ t1 as the latest cycle, and the current cycle upper limit threshold UTHn ( ⁇ t2 ) and the lower threshold LTHn( ⁇ t2), the upper threshold UTHn( ⁇ t3) and the lower threshold LTHn( ⁇ t3) are calculated (see, for example, Equations 7 and 8 below).
  • the observation period T2 and the observation period T1 have the same length.
  • UTHn( ⁇ t3) (Taven( ⁇ T2)/Taven( ⁇ T1)) ⁇ UTHn( ⁇ t2)
  • LTHn( ⁇ t3) (Taven( ⁇ T2)/Taven( ⁇ T1)) ⁇ LTHn( ⁇ t2)
  • the threshold determining unit 128 determines the average traffic volume Taven ( ⁇ tbase) in the reference threshold update period (or the reference observation period), and a plurality of continuous threshold values
  • the average traffic volume Taven ( ⁇ T2) in the observation period T2 which consists of update periods and includes the current period ⁇ t2 as the latest period, the upper limit threshold UTHn ( ⁇ tbase) and the lower limit threshold LTHn ( ⁇ tbase) of the reference threshold update period,
  • the upper limit threshold value UTHn( ⁇ t3) and the lower limit threshold value LTHn( ⁇ t3) are calculated based on (for example, see formulas 9 and 10 below).
  • the traffic monitoring device 210 includes a sampling capture unit 251 and a rule registration unit 252 in addition to the configuration of the traffic monitoring device 110, as shown in FIG.
  • the traffic monitoring device 210 is configured to register an unregistered flow, which is a flow not registered in the rule table 29, in the rule table 29 together with an upper limit threshold and a lower limit threshold.
  • the flow identification unit 22 notifies the filter unit 31 to that effect. Upon receiving this notification, the filter section 31 outputs the input packet to the sampling capture section 251 .
  • the sampling capture unit 251 captures packets of unregistered flows at regular intervals or random intervals in order to identify the distribution of unregistered flows in flow units.
  • the rule registration unit 252 calculates the traffic volume of unregistered rules obtained by subtracting the traffic volume of the registered rules from the total traffic volume output from the statistics unit 23, and the sampling result output from the sampling capture function unit. is used to extract rules to be registered in the rule table. For example, header information of each packet included in the sampling result (information specifying the source and destination of the packet specifying the flow) is extracted as the registration rule.
  • the rule registration unit 252 registers the extracted rule in the rule table 29.
  • FIG. In response to this, the threshold update unit 27 registers the initial upper limit threshold and lower limit threshold in the rule table 29 . These thresholds may be different values for each rule defined in a database held inside the threshold updating unit 27, or may be common values regardless of rules. After initial threshold registration, the upper and lower thresholds are dynamically changed in the same manner as in the above flow.
  • the traffic monitoring devices 10, 110, and 210 are realized by various circuits such as processors such as CPUs (Central Processing Units) that execute programs, FPGAs (Field-Programmable Gate Arrays), or ASICs (Application Specific Integrated Circuits). be done.
  • processors such as CPUs (Central Processing Units) that execute programs, FPGAs (Field-Programmable Gate Arrays), or ASICs (Application Specific Integrated Circuits). be done.
  • the information processing section, the packet capture section, and the like are also the information processing circuit and the packet capture circuit.
  • the traffic monitoring devices 10, 110, 210 may be composed of, for example, a computer 900 shown in FIG.
  • the processor 901 is composed of one or more CPUs.
  • the processor 901 operates as each unit described above by executing a traffic monitoring program stored in the storage device 902 .
  • Storage device 902 may include the main memory of processor 901 and the like.
  • the storage device 902 stores tables such as the rule table 29 and constitutes the storage section 25 and the storage section 33 . Each of the above units may have a portion of the storage device 902 .
  • the processor 901 operating as the automatic fault detection unit 26 When the traffic volume exceeds the upper limit threshold value UTHn or falls below the lower limit threshold value LTHn, the processor 901 operating as the automatic fault detection unit 26 outputs information to that effect (including the fact that a fault has occurred) to the output device 904. and present it to the user.
  • An input packet from the monitored network 80 is input from an I/O (Input/Output) 903 .
  • a traffic monitoring device that monitors traffic on a network to be monitored may include, for example, an information processing section and a packet capture section.
  • the information processing unit acquires traffic statistical information of flows in the monitored network, and determines whether the acquired traffic statistical information satisfies a predetermined criterion for failure detection.
  • the traffic statistical information is traffic volume in the above embodiment, but may be other statistical information.
  • Other examples of traffic statistical information include the number of bytes per unit time, jitter, latency, the degree of change in the number of packets or bytes (slope of change in traffic volume, etc.).
  • a predetermined criterion to be compared with the degree of change may be set as an upper threshold and a lower threshold for detecting a rapid increase or a sudden decrease in traffic volume.
  • the packet capture unit captures, for example, packets of the flow determined to satisfy the predetermined criteria as packets at the time of failure occurrence of the flow.
  • the information processing unit dynamically updates the predetermined criterion during operation of the information processing unit. With such a configuration, the predetermined criteria are dynamically changed, so that packets can be accurately captured when a failure occurs.
  • the captured packets are stored in the storage unit and output according to the user's request. At this time, the content of the packet is appropriately displayed on the display unit or the like.
  • the information processing unit acquires traffic statistical information for each of a plurality of flows including the flow.
  • the information processing unit includes a rule that can uniquely identify a flow, a capture flag that takes a first numerical value when the flow is to be captured by the packet capturing unit and a second numerical value when the flow is not to be captured, and A rule table in which the predetermined criteria for flows are associated with each flow is referenced, and the capture flag value corresponding to the flow satisfying the predetermined criteria is updated to the first numerical value.
  • the packet capture unit captures packets of the flow after the capture flag value is changed to the first numerical value.
  • the packet capture unit may buffer a predetermined amount of input packets, and capture packets of the flow before and after the change to the first numerical value.
  • a rule table facilitates management of predetermined criteria.
  • the traffic statistical information may be the amount of traffic
  • the predetermined criteria may be an upper limit threshold and a lower limit threshold.
  • the information processing unit may determine that the traffic statistical information satisfies the predetermined criterion when the traffic volume exceeds the upper limit threshold value or falls below the lower limit value. By setting the lower limit threshold, it becomes possible to detect failures such as server failures.
  • the traffic volume may be the number of packets or the amount of data (number of bytes) per unit time, or may be the degree of change in the number of packets or the amount of data.
  • the information processing section updates the predetermined reference when the time from the time source reaches a predetermined time. This makes it possible to change the predetermined reference with a simple configuration.
  • the information processing unit updates the predetermined criterion every predetermined period, and updates the traffic statistical information before the next predetermined period for updating the predetermined criterion and the predetermined criterion before the next predetermined period. (for example, the threshold determination process in FIG. 4).
  • the predetermined criteria can be suitably updated, and the accuracy of packet capture at the time of failure is improved.
  • the information processing unit determines the degree of change in traffic statistical information before the next predetermined cycle in which the predetermined criterion is updated (for example, traffic volume in a predetermined cycle,
  • the threshold may be determined based on the traffic volume in the previous predetermined cycle) and the threshold before the next predetermined cycle (for example, the current threshold).
  • the predetermined criteria can be suitably updated, and the accuracy of packet capture at the time of failure is improved.
  • the traffic statistical information before the next predetermined period for updating the predetermined criterion may be the amount of traffic in a period longer than the predetermined period.
  • the information processing unit determines the degree of variation in traffic volume ( For example, the ratio of the traffic volume in the long period to the traffic volume in the previous specific period) and the threshold before the next predetermined period (for example, the current threshold). may decide.
  • the predetermined criteria can be suitably updated, and the accuracy of packet capture at the time of failure is improved.
  • a sampling capture unit that captures packets of unregistered flows at regular intervals or random intervals
  • a rule registration unit that registers, in the rule table, rules specifying flows included in the captured packets.
  • the information processing section newly registers a predetermined condition in the rule table in association with the rule when the rule is registered in the rule table. This makes it possible to newly register flows and predetermined criteria that are not registered in the rule table.
  • the present invention is not limited to the above embodiments and modifications.
  • the present invention includes various modifications to the above embodiments and modifications that can be understood by those skilled in the art within the scope of the technical idea of the present invention.
  • the configurations described in the above embodiments and modified examples can be appropriately combined within a consistent range.
  • Traffic monitoring device 13 Statistics unit 15 Step 16 Automatic failure detection unit 20 Information processing unit 21 Packet analysis unit 22 Flow identification unit 23 Statistics unit 24 Statistics information file Generation unit 25 Storage unit 26 Automatic failure detection unit 27 Threshold update unit 27A Table 29 Rule table 30 Packet capture unit 31 Filter unit 32 Capture file generation unit 33 Memory unit 40 Time source 80 Network to be monitored 110 Traffic monitoring device 120 Information processing unit 128 Threshold determination unit 210 Traffic monitoring device 251 Sampling capture unit 252 Rule registration unit 900... Computer, 901... Processor, 902... Storage device, 904... Output device.

Landscapes

  • Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

トラフィック監視装置(10)は、監視対象ネットワークにおけるフローのトラフィック統計情報を取得し、取得した前記トラフィック統計情報が障害検出のための所定基準を満たしているかを判別するように構成された情報処理部(20)と、前記所定基準を満たしていると判別された前記フローのパケットを前記フローの障害発生時のパケットとしてキャプチャするように構成されたパケットキャプチャ部(30)と、を備え、前記情報処理部は、前記所定基準を当該情報処理部の稼働中に動的に更新するように構成されている。このような構成によれば、障害発生時のパケットを精度良くキャプチャすることができる。

Description

トラフィック監視装置およびトラフィック監視プログラム
 本発明は、ネットワークにおけるトラフィックを監視する技術に関する。
 フロー(MACアドレス又はIPアドレス等の送信元又は宛先から特定されるルールが同一のパケットの集合体)のトラフィック統計情報(トラフィック量等)をリアルタイムで監視し、障害発生時には該当フローのパケットをキャプチャして原因分析を行えるトラフィック監視装置が知られている。当該装置は、例えば、NFV(Network Functions Virtualization)/SDN(Software Defined Networking)における仮想化技術の進展に伴ったVM(Virtual Machine)等を用いたサービスなどに使用されている。
 特定フローのトラフィック量が急増した場合、その原因特定のために、急増した直後から対象フローのパケットをキャプチャできることが望ましく、フローを指定してキャプチャを開始する手法が提案されている(非特許文献1)。この手法では、トラフィック量と閾値とが比較され、障害発生が報知される。
「Hardware Accelerator(HWA)を用いたパケットキャプチャ機能搭載仮想ネットワーク監視システム」 ビジネスコミュニケーション 2021 vol.58 No.5
 トラフィック量は、正常なときであっても、時間帯に応じて変動する。例えば、トラフィック量は、夕方に増加することがある。しかし、上記非特許文献1の技術では閾値が固定であるため、トラフィック量の正常な変動に対応できず、障害の誤検出又は障害の未検出が発生してしまう。
 本発明は、障害発生時のパケットを精度良くキャプチャすることを課題とする。
 上記課題を解決するために、本発明のトラフィック監視装置は、監視対象ネットワークのトラフィックを監視するトラフィック監視装置であって、前記監視対象ネットワークにおけるフローのトラフィック統計情報を取得し、取得した前記トラフィック統計情報が障害検出のための所定基準を満たしているかを判別するように構成された情報処理部と、前記所定基準を満たしていると判別された前記フローのパケットを前記フローの障害発生時のパケットとしてキャプチャするように構成されたパケットキャプチャ部と、を備え、前記情報処理部は、前記所定基準を当該情報処理部の稼働中に動的に更新するように構成されている。
 上記課題を解決するために、本発明のトラフィック監視プログラムは、監視対象ネットワークのトラフィックを監視するコンピュータに、前記監視対象ネットワークにおけるフローのトラフィック統計情報を取得し、取得した前記トラフィック統計情報が障害検出のための所定基準を満たしているかを判別する情報処理ステップと、前記所定基準を満たしていると判別された前記フローのパケットを前記フローの障害発生時のパケットとしてキャプチャするパケットキャプチャステップと、を実行させ、前記情報処理ステップは、前記所定基準を当該情報処理部の稼働中に動的に更新するステップを含む。
 本発明によれば、障害発生時のパケットを精度良くキャプチャすることができる。
図1は、本発明の第1の実施の形態に係るトラフィック監視装置の構成を示すブロック図である。 図2は、トラフィック量の変化、上限閾値、及び、下限閾値を説明するためのグラフである。 図3は、本発明の第2の実施の形態に係るトラフィック監視装置の構成を示すブロック図である。 図4は、閾値決定処理のフローチャートである。 図5は、上限閾値及び下限閾値の算出する方法を説明するための図である。 図6は、上限閾値及び下限閾値の算出する方法を説明するための図である。 図7は、上限閾値及び下限閾値の算出する方法を説明するための図である。 図8は、本発明の第3の実施の形態に係るトラフィック監視装置の構成を示すブロック図である。 図9は、本発明の第1~第3の実施の形態に係るトラフィック監視装置のハードウェア構成図である。
 以下、本発明の実施の形態を図面に基づいて詳細に説明するが、本発明は、以下の実施の形態に限定されるものではない。
<第1の実施の形態>
 図1に示すように、本発明の第1の実施の形態に係るトラフィック監視装置10には、監視対象ネットワーク80で送受信されるパケットの複製であるミラーリングパケットが入力パケットとして入力される。トラフィック監視装置10は、入力パケットに基づいて監視対象ネットワーク80のフローごとのトラフィックを監視する。フローとは、ここでは、送信元や宛先を示すフィールド値の少なくともいずれかが同一のパケットの集合をいう。
 図1に示すように、トラフィック監視装置10は、情報処理部20と、パケットキャプチャ部30と、時刻源40と、を備える。入力パケットは、情報処理部20と、パケットキャプチャ部30と、の両者に入力される。トラフィック監視装置10はコンピュータなどからなり、コンピュータのCPUなどのプロセッサがプログラムを実行することで、情報処理部20及びパケットキャプチャ部30として動作する。時刻源40は、リアルタイムクロックなどにより構成されている。
 情報処理部20は、パケット解析部21と、フロー識別部22と、統計部23と、統計情報ファイル生成部24と、記憶部25と、自動障害検出部26と、閾値更新部27と、ルールテーブル29と、を備える。
 パケット解析部21は、監視対象ネットワーク80から入力された入力パケットを解析する。パケット解析部21は、この解析により、入力パケットに含まれる、その入力パケットのフローの識別に必要なヘッダの情報を抽出する。抽出されるヘッダの情報は、後述のルールテーブル29で規定されているルールと一致、不一致を比較可能な情報である。このヘッダの情報及びルールとしては、例えば、送信元/宛先MACアドレス及び送信元/宛先IPアドレス、送信元/宛先ポート番号、又は、プロトコル種別などが挙げられる。
 フロー識別部22は、パケット解析部21により抽出されたヘッダに基づいて、その入力パケットのフローを識別する。フロー識別部22は、フローに対応するルールを記録したルールテーブル29を参照する。ルールテーブル29には、フローの登録番号nと、当該フローを識別するための上述のルールと、当該フローのパケットのキャプチャの有無を指示するキャプチャフラグと、当該フローで障害が発生しているか否かを判別するための上限閾値UTHn及び下限閾値LTHnと、がフロー毎に互いに対応付けられて記憶されている。ここで、nは、1~Nの整数であり、Nは、ルールテーブル29に登録されたフローの数である(以下、nについて同じ)。パケットキャプチャフラグは、「1」のときにキャプチャすることを指示し、「0」のときにキャプチャしないことを指示する。フロー識別部22は、ルールテーブル29を参照し、上記ヘッダの情報と一致するルールに対応する、登録番号nと、キャプチャフラグの値と、を取得する。登録番号nの取得により、その入力パケットのフローが識別される。
 フロー識別部22は、取得したキャプチャフラグの値をパケットキャプチャ部30に出力する。詳細は後述するが、キャプチャフラグが「1」の場合、パケットキャプチャ部30は、対応する入力パケットのキャプチャを行う。さらに、フロー識別部22は、取得した登録番号nを入力パケットとともに統計部23に出力する。フロー識別部22は、上記のルールテーブル29の参照により登録番号nを取得できなかった場合、登録外フローとしてパケット数又はデータ量(バイト数など)を統計部23へ出力する。
 統計部23は、フロー識別部22からの登録番号n及び入力パケットに基づいて、登録番号nごとつまりフローごとに、入力パケットのパケット数又はデータ量(バイト数など)を集計する。統計部23は、フロー識別部22から登録番号n及び入力パケットが入力されるたびに集計を行っていく。統計部23は、この集計により、そのフローのトラフィックの状態を表すトラフィック統計情報であるトラフィック量を得る。トラフィック量は、ここでは、単位時間当たりのパケット数又はデータ量である。統計部23は、登録外フローとして入力されたパケット数又はデータ量(バイト数など)についても上記と同様に集計を行う。
 統計情報ファイル生成部24は、統計部23での集計結果であるトラフィック量(トラフィック統計情報)を統計部23から定期的に取得して記憶部25に記録する。統計情報ファイル生成部24は、この記録時の時刻を時刻源40から取得し、取得した時刻を打刻したトラフィック量を記憶部25に保存する。時刻が打刻されたトラフィック量は、登録番号nごとに保存される。時刻が打刻されたトラフィック量は、統計情報ファイルを構成する。この統計情報ファイルにより、フローごとのトラフィック量の時間変化が特定される。
 自動障害検出部26は、トラフィック量と、当該トラフィック量に対応する登録番号nと、を統計部13から取得する。自動障害検出部16は、ルールテーブル29を参照し、登録番号nに対応する上限閾値UTHn及び下限閾値LTHnを取得する。自動障害検出部26は、取得した上限閾値UTHn及び下限閾値LTHnと、トラフィック量とを比較する。自動障害検出部16は、トラフィック量が上限閾値UTHnを上回るか下限閾値LTHnを下回った場合、ルールテーブル29における、取得した登録番号nに対応するキャプチャフラグを「1」に更新する。すでに「1」の場合には、後述の入力パケットのキャプチャがすでに開始されているため、当該「1」が維持される。自動障害検出部26は、トラフィック量が上限閾値UTHnを上回っておらずかつ下限閾値LTHnも下回っていない場合、ルールテーブル29の登録番号nに対応するキャプチャフラグを「0」に更新する。すでに「0」の場合には、これが維持される。
 トラフィック量が上限閾値UTHnを上回った場合、トラフィック量が多いことになる。例えば、トラフィック量が急増している。このような場合、そのフローにおいて多数のメールを送りつける攻撃、又は、サーバへの輻輳などの障害が生じている可能性がある。また、トラフィック量が下限閾値LTHnを上回った場合、トラフィック量が少ないことになる。例えば、トラフィック量が急減している。このような場合、そのフローにおいてサーバダウンなどの障害が生じている可能性がある。
 自動障害検出部26は、トラフィック量が上限閾値UTHnを上回るか下限閾値LTHnを下回った場合、外部装置(表示装置など)にその旨(障害が発生している旨を含む)の情報を出力して、ユーザに対してその旨を提示する。
 閾値更新部27は、時刻源40からの時刻に基づいて、定期的に上限閾値UTHn及び下限閾値LTHnを更新する。この点については後述する。
 パケットキャプチャ部30は、フィルタ部31と、キャプチャファイル生成部32と、記憶部33と、を備える。
 フィルタ部31は、パケットキャプチャ部30に入力された入力パケットを一旦バッファし、フロー識別部22からキャプチャフラグの値が通知されてくるまで待機する。このキャプチャフラグの値は、バッファしている入力パケットについてフロー識別部22により取得及び出力された値である。フィルタ部31は、キャプチャフラグの値が「1」の場合、バッファしている入力パケットを後段のキャプチャファイル生成部32に出力する。フィルタ部31は、キャプチャフラグの値が「0」の場合、バッファしている入力パケットを後段のキャプチャファイル生成部32に出力せずに廃棄する。これにより、キャプチャフラグの値が「1」のときの入力パケットがファイル化される。なお、フロー識別部22が上記のルールテーブル29の参照により登録番号nを取得できなかった場合を考慮し、一定期間、フロー識別部22からキャプチャフラグの値が通知されてこない場合、バッファしている入力パケットは廃棄されてもよい。他の例として、フロー識別部22が上記のルールテーブル29の参照により登録番号nを取得できなかった場合、フロー識別部22は、キャプチャフラグの値として「0」を通知してもよい。
 キャプチャファイル生成部32は、フィルタ部31からの入力パケットと、時刻源40からの入力パケットの入力時の時刻と、を用いて、複数パケット分束ねたキャプチャデータをファイル化して、記憶部25に保存する。これにより、入力パケットがキャプチャされたことになる。キャプチャは、キャプチャフラグの値に従って自動で行われる。キャプチャファイル生成部32は、ヘッダなどに基づいて、フロー毎に入力パケットをファイル化してもよい。
 フロー識別部22は、上記で取得した登録番号nをフィルタ部31に出力してもよく、この場合、フィルタ部31は、キャプチャフラグの値が「1」のときに、登録番号nもキャプチャファイル生成部32に生成してもよい。キャプチャファイル生成部32は、登録番号ごとつまりフローごとに入力パケットをキャプチャファイル化してもよい。
 上述のように、閾値更新部27は、時刻源40からの時刻に基づいて、定期的に上限閾値UTHn及び下限閾値LTHnを更新する。閾値更新部27は、情報処理部20の稼働中に動的に上限閾値UTHn及び下限閾値LTHnを更新する。ここで、同じフローのトラフィック量は、異なる日にちの間で、同じ時間帯同士では大きく変わらないと考えられる。そこで、本実施の形態の閾値更新部27は、上限閾値UTHn及び下限閾値LTHnを所定の期間で区切って変更する。図2に、登録番号nのフローでの上限閾値UTHn及び下限閾値LTHnの設定例を示す。図2中のグラフは、登録番号nのフローでの障害の発生していない1日の平均的なトラフィック量を示している。本実施の形態では、1日が3つの時間帯に区切られ、当該区切りごとに上限閾値UTHn及び下限閾値LTHnが設定されている。
 閾値更新部27は、例えば、登録番号nごとつまりフローごとに時刻に対応した上限閾値UTHn及び下限閾値LTHnが定義されたテーブル27Aを備える。閾値更新部27は、時刻源40にて前記のテーブルに対応した時刻が観測されたときに、ルールテーブル29のその登録番号nに対応する上限閾値UTHn及び下限閾値LTHnを、テーブル27Aにて、その時刻に対応付けられた上限閾値UTHn及び下限閾値LTHnに更新する。
 上限閾値UTHnと下限閾値LTHnとを更新する時刻は、フロー毎に同じであっても、異なってもよい。また、同じフローで上限閾値UTHnと下限閾値LTHnとで更新のタイミングをずらしてもよい。
 入力パケットのキャプチャが開始されてからの終了指示、つまり、ルールテーブル29のパケットキャプチャの値を「0」に更新する契機は、外部からの終了指示でもよい。また、上述のように、トラフィック量が、上限閾値以下/下限閾値異常になったことを検出して、自動障害検出部が終了指示を出すようにしても良い。もしくは、フロー数分のタイマを情報処理部20にもたせ、キャプチャ開始指示がされてから当該タイマが満了するまでキャプチャを継続し、満了後に終了指示を出すようにしてもよい。
 上限閾値UTHn及び下限閾値LTHnの決定方法は任意である。例えば、これら閾値の対象となるフローの数日間の平均的なトラフィック量から標準偏差σを計算し、上限閾値UTHn=2σ、下限閾値LTHn=-2σとしてもよい。適用先によっては下限閾値をゆるくして-3σなどとしてもよい。また、数日間の各タイミングにおけるトラフィック量の平均値を基準として、当該平均値±一定値を上限閾値UTHn及び下限閾値LTHnに設定してもよい。
 図2に示すように、トラフィック量は、正常なときであっても、1日の時間帯に応じて変動する。上限閾値及び下限閾値を固定とすると、1日におけるトラフィック量の変動に対応できず、障害の誤検出又は障害の未検出が発生してしまう。本実施の形態のように、時間に応じて上限閾値及び下限閾値を変更することで、1日のトラフィック変動にあった適切な閾値によって異常トラフィックを検知し、不要な入力パケットのキャプチャ発生を防ぎながら、本当に必要な入力パケットだけを障害発生時のパケットとしてキャプチャすることができる。これにより、障害発生時のパケットのキャプチャが精度良く行われる。さらに、この実施の形態では、下限閾値も設定されていることにより、トラフィック量が異常に低下した障害の検出可能となっている。
<第2の実施の形態>
 第1の実施の形態では、時刻に連動して上限閾値UTHn及び下限閾値LTHnを変更する構成について示した。第2の実施の形態においては、現状のトラフィック量にあわせて細かく上限閾値UTHn及び下限閾値LTHnを変更する。
 図3に示すように、第2の実施の形態に係るトラフィック監視装置110は、第1の実施の形態に係るトラフィック監視装置10と比較して、情報処理部20の代わりに情報処理部120を備える。情報処理部120は、情報処理部20の構成に加えて閾値決定部128をさらに備える。閾値決定部128は、登録番号nフロー毎、つまり、登録番号nごとのトラフィック量をもとにリアルタイムで上限閾値UTHn及び下限閾値LTHnを決定する。
 閾値決定部128は、予め定められた閾値更新周期ごとに、上限閾値UTHn及び下限閾値LTHnを計算し、計算結果を閾値更新部27に通知する。閾値更新部27はその通知を受け、ルールテーブル29のルール毎の上限閾値UTHn及び下限閾値LTHnを更新する。閾値決定部128は、トラフィック量と、当該トラフィック量に対応する登録番号nと、を統計部13から取得し、これらに基づいて、上限閾値UTHn及び下限閾値LTHnを、フローごと、つまり、登録番号nごとに計算する。
 閾値更新周期は、10秒以上、10分以下の短周期とする。従って、上限閾値UTHn及び下限閾値LTHnは、短周期で細かく変更される。これにより、リアルタイムで更新されるトラフィック量に応じた上限閾値UTHn及び下限閾値LTHnの設定が可能となり、異常トラフィック契機によるパケットキャプチャ実行の確度をあげることができる。
 ここで、上限閾値UTHn及び下限閾値LTHnの決定例について、図4~図6を参照して説明する。閾値決定部128は、図4の閾値決定処理を実行する。下記の計算つまり上限閾値UTHn及び下限閾値LTHnの決定は、登録番号nつまりフローごとに行われる。下記の計算に必要な値は、閾値決定部128により記憶部25に記録された統計情報ファイルのトラフィック量などに基づいて算出されるものとする。また、閾値決定部128が上限閾値UTHn及び下限閾値LTHnの決定に必要な値などを保持していてもよい。
 閾値決定部128は、まず、下記(1)~(3)のいずれかの計算方法により、次周期の上限閾値UTHn及び下限閾値LTHnを仮値として計算する(ステップS11)。下記の計算方法のうちのいずれを採用するかは、ユーザにより設定可能とすることができる。
(1)次周期(Δt3)の上限閾値UTHn(Δt3)及び下限閾値LTHn(Δt3)を、前周期(Δt1)の平均トラフィック量Tave n(Δt1)と、現周期(Δt2)の平均トラフィック量Tave n(Δt2)と、現周期(Δt2)の上限閾値UTHn(Δt2)及び下限閾値LTHn(Δt2)とに基づいて計算(各値については図5参照)。計算式は、例えば、下記式とする。
(式1) UTHn(Δt3)=(Tave n(Δt2)/Tave n(Δt1))×UTHn(Δt2)
(式2) LTHn(Δt3)=(Tave n(Δt2)/Tave n(Δt1))×LTHn(Δt2)
(2)次周期(Δt3)の上限閾値UTHn(Δt3)及び下限閾値LTHn(Δt3)を、閾値更新周期のうちの基準となる基準周期(Δtbase)の平均トラフィック量Tave n(Δtbase)と、現周期(Δt2)の平均トラフィック量Tave n(Δt2)、基準周期(Δtbase)の基準上限閾値UTHn(Δtbase)及び基準下限閾値LTHn(Δtbase)を用いて計算(各値については図6参照)。計算式は、例えば、下記式とする。平均トラフィック量Tave n(Δtbase)、及び、基準上限閾値UTHn(Δtbase)及び基準下限閾値LTHn(Δtbase)は、予め任意の方法で算出及び設定されているものとする。上記の計算式は、例えば、下記式とする。基準周期(Δtbase)は、任意に決定される。
(式3) UTHn(Δt3)=(Tave n(Δt2)/Tave n(Δtbase))×UTHn(Δtbase)
(式4) LTHn(Δt3)=(Tave n(Δt2)/Tave n(Δtbase))×LTHn(Δtbase)
(3)次周期(Δt3)の上限閾値UTHn(Δt3)及び下限閾値LTHn(Δt3)を、前周期(Δt1)でのあるタイミング(開始タイミング、終了タイミングなど)でのトラフィック量Tn(Δt1)と、現周期(Δt2)でのあるタイミング(開始タイミング、終了タイミングなど)のトラフィック量Tn(Δt2)と、現周期(Δt2)の上限閾値UTHn(Δt2)及び下限閾値LTHn(Δt2)とに基づいて計算(各値については図5参照)。計算式は、例えば、下記式とする。
(式5) UTHn(Δt3)=(Tn(Δt2)/Tn(Δt1))×UTHn(Δt2)
(式6) LTHn(Δt3)=(Tn(Δt2)/Tn(Δt1))×LTHn(Δt2)
 ステップS11では、閾値更新周期の平均トラフィック量などの増減で新しい上限閾値及び下限閾値を計算しているため、計算時点で障害が発生している場合も考えられる。つまり、そのときにトラフィック量が一時的に増減している可能性がある。よって、閾値決定部128は、当日と前日との同じフローの同時刻周期の平均トラフィック量との比較を行い(ステップS12)、その差分が所定の閾値を超えて大きいかを判定する(ステップS13)。その差分が所定の閾値を超えず大きくない場合は(ステップS13;No)、閾値決定部128は、障害が発生していないとして、ステップS11で求めた上限閾値UTHn(Δt3)及び下限閾値LTHn(Δt3)を次周期の上限閾値及び下限閾値に採用する(ステップ15)。閾値決定部128は、大きな差分がある場合(ステップS13;Yes)、閾値更新周期からなる短周期と複数の閾値更新周期からなる長周期の平均トラフィック量を比較することで障害の有無を判定する(ステップS14)。比較した結果、両者のトラフィック量の差が所定値以下であれば“障害発生なし”と判定され(ステップS14;No)、ステップS15の処理が行われる。両者のトラフィック量の差が所定値を超えている場合は“異常発生の可能性あり”と判定され(ステップS14;Yes)、上限閾値及び下限閾値を同じフローの前日の同時刻周期の上限閾値及び下限閾値と同じ閾値に設定する(ステップS16)。なお、閾値決定部128は、大きな差分がある場合(ステップS13;Yes)、ステップS15を経由せずにステップS16を実行してもよい。
 上記ではルールテーブル29に記載してある全フローに対して計算する例を示したが、これに限ることはなく、ユーザがいくつかのフローを指定し、当該フローについてのみ、上限閾値及び下限閾値を計算・更新するようにしても良い。
 短周期で動的に上限/下限閾値を変更する構成及び手法により、実際のトラフィック量に応じた閾値が設定されていることとなり、不要なキャプチャ発生を防ぐことができる。また、閾値決定部128が、上記式1~式6に例示するように、閾値を決定する次周期よりも前での短周期のトラフィック量に基づくトラフィック量の変動度合いと、前記次周期の前での閾値(特に現在の閾値)と、に基づいて閾値を決定することで、閾値の精度を向上させることができる。
 上記では、前日の同時刻周期の平均トラフィック量をトラフィック監視装置10の内部で保有している前提であった。しかしフローによっては当該データが存在しない場合も考えられる。そこで、長周期の平均トラフィック量を観測した場合は、異常で増減したトラフィック量の影響が少なくみえることを考慮し、閾値決定部128は、長周期的な平均トラフィック量の変動に基いて上限閾値及び下限閾値を決定するように構成されてもよい。
 例えば、閾値決定部128は、図7に示す閾値更新周期(上記短周期よりも長い任意の周期であってもよい)ごとに、下記の方法で次周期の上限閾値UTHn(Δt3)及び下限閾値LTHn(Δt3)を算出する。
 例えば、閾値決定部128は、複数の連続した閾値更新周期からなり最新の周期として現周期Δt2を含む観測周期T2(例えば、1時間以上の周期)での平均トラフィック量Tave n(ΔT2)と、複数の連続した閾値更新周期からなり最新の周期として前周期Δt1を含む観測周期T1(例えば、1時間以上の周期)での平均トラフィック量Tave n(ΔT1)と、現周期の上限閾値UTHn(Δt2)及び下限閾値LTHn(Δt2)と、に基づいて上限閾値UTHn(Δt3)及び下限閾値LTHn(Δt3)を計算する(例えば、下記式7及び式8参照)。観測周期T2と観測周期T1とは同じ長さであるとよい。
(式7) UTHn(Δt3)=(Tave n(ΔT2)/Tave n(ΔT1))×UTHn(Δt2)
(式8) LTHn(Δt3)=(Tave n(ΔT2)/Tave n(ΔT1))×LTHn(Δt2)
 例えば、閾値決定部128は、図6と同様に、基準となる閾値更新周期(又は、基準となる観測周期であってもよい)の平均トラフィック量Tave n(Δtbase)と、複数の連続した閾値更新周期からなり最新の周期として現周期Δt2を含む観測周期T2での平均トラフィック量Tave n(ΔT2)と、基準となる閾値更新周期の上限閾値UTHn(Δtbase)及び下限閾値LTHn(Δtbase)と、に基づいて上限閾値UTHn(Δt3)及び下限閾値LTHn(Δt3)を計算する(例えば、下記式9及び式10参照)。
(式9) UTHn(Δt3)=(Tave n(Δ2)/Tave n(ΔTbase))×UTHn(Δt2)
(式10) LTHn(Δt3)=(Tave n(ΔT2)/Tave n(ΔTbase))×LTHn(Δt2)
 長周期的なトラフィック量を用いて閾値を計算することにより、トラフィックの障害発生の有無の影響を軽減しつつ新閾値を更新できる。また、閾値決定部128が、上記式7~式10に例示するように、閾値を決定する次周期よりも前での観測周期のトラフィック量に基づくトラフィック量の変動度合いと、前記次周期よりも前での閾値と、に基づいて閾値を決定することで、閾値の精度を向上させることができる。
<第3の実施の形態>
 第3の実施の形態に係るトラフィック監視装置210は、図8に示すように、トラフィック監視装置110の構成に加え、サンプリングキャプチャ部251と、ルール登録部252と、を備える。トラフィック監視装置210は、ルールテーブル29に登録されていないフローである登録外フローをルールテーブル29に上限閾値及び下限閾値とともに登録するように構成されている。
 フロー識別部22は、パケット解析部21により抽出されたヘッダの情報と一致するルールがない場合、フィルタ部31にその旨を通知する。フィルタ部31は、この通知があると、入力パケットをサンプリングキャプチャ部251に出力する。
 サンプリングキャプチャ部251は、登録外フローのフロー単位での分布を特定するために等間隔もしくはランダム間隔で登録外フローのパケットをキャプチャする。ルール登録部252は、統計部23から出力されるトラフィック量の合計から登録されているルールのトラフィック量を引いた登録外のルールのトラフィック量と、サンプリングキャプチャ機能部から出力されるサンプリング結果とを用いて、ルールテーブルに登録するルールを抽出する。例えば、サンプリング結果に含まれる各パケットのヘッダの情報(フローを特定するパケットの送信元、送信先を特定する情報)が登録ルールとして抽出される。ルール登録部252は、抽出したルールをルールテーブル29に登録する。また、これを受けて閾値更新部27は、初期の上限閾値及び下限閾値をルールテーブル29に登録する。これら閾値は、閾値更新部27が内部に持つデータベースなどで定義されたルール毎に異なる値でも良いし、ルールによらず共通の値でも良い。初期の閾値登録後は上記フローと同様の手法で、動的に上限閾値及び下限閾値が変更される。
 以上のような構成により、登録フローのみならず、システム初動時には登録外フローだったトラフィックに対してもシステム運用中にルールを登録し、動的に上限閾値及び下限閾値を更新することが可能となる。
<トラフィック監視装置のハードウェア構成>
 トラフィック監視装置10、110、210の上記は、CPU(Central Processing Unit)などのプログラムを実行するプロセッサ、FPGA(Field-Programmable Gate Array)、又は、ASIC(Application Specific Integrated Circuit)などの各種回路により実現される。情報処理部、及び、パケットキャプチャ部などは、情報処理回路、及び、パケットキャプチャ回路でもある。
 トラフィック監視装置10、110、210は、例えば、図9に示すコンピュータ900から構成されてもよい。プロセッサ901は、1又は複数のCPUなどからなる。プロセッサ901は、記憶装置902に記憶されているトラフィック監視プログラムを実行することで、上記各部として動作する。記憶装置902は、プロセッサ901のメインメモリなどを有してもよい。記憶装置902は、ルールテーブル29などのテーブルを記憶し、記憶部25及び記憶部33を構成している。上記各部は、記憶装置902の一部を有してもよい。
 自動障害検出部26として動作するプロセッサ901は、トラフィック量が上限閾値UTHnを上回るか下限閾値LTHnを下回った場合、出力装置904にその旨(障害が発生している旨を含む)の情報を出力して、ユーザに対してその旨を提示する。監視対象ネットワーク80からの入力パケットは、I/O(Input/Output)903から入力される。
<上記実施の形態を一例とする構成など>
 監視対象ネットワークのトラフィックを監視するトラフィック監視装置は、例えば、情報処理部と、パケットキャプチャ部と、を備えればよい。前記情報処理部は、例えば、前記監視対象ネットワークにおけるフローのトラフィック統計情報を取得し、取得した前記トラフィック統計情報が障害検出のための所定基準を満たしているかを判別する。トラフィック統計情報は、上記実施の形態ではトラフィック量としているが、他の統計情報であってもよい。トラフィック統計情報の他の例としては、単位時間当たりバイト数、ジッタ、レイテンシ、パケット数又はバイト数の変化度合い(トラフィック量の変化の傾きなど)がある。前記の変化度合いと比較される所定基準は、トラフィック量の急増又は急減を検出するための上限閾値及び下限閾値として設定されてもよい。前記パケットキャプチャ部は、例えば、前記所定基準を満たしていると判別された前記フローのパケットを前記フローの障害発生時のパケットとしてキャプチャする。前記情報処理部は、前記所定基準を当該情報処理部の稼働中に動的に更新する。このような構成により、所定基準が動的に変更されるので、障害発生時のパケットが精度良くキャプチャされる。キャプチャされたパケットは、記憶部に記憶され、ユーザの要求に応じて出力される。このとき、当該パケットの内容が表示部などに適宜表示される。
 前記情報処理部は、例えば、前記フローを含む複数のフローのそれぞれのトラフィック統計情報を取得する。前記情報処理部は、フローを一意に特定可能なルールと、このフローが前記パケットキャプチャ部によるキャプチャの対象のときに第1数値をとり前記対象でないときに第2数値をとるキャプチャフラグと、このフローについての前記所定基準と、がフローごとに対応付けられたルールテーブルを参照して、前記所定基準を満たしたフローに対応する前記キャプチャフラグ値を前記第1数値に更新する。前記パケットキャプチャ部は、前記キャプチャフラグ値が前記第1数値に変更されたあとの前記フローのパケットをキャプチャする。パケットキャプチャ部は、入力パケットを所定量バッファし、前記第1数値に変更された前後の前記フローのパケットをキャプチャしてもよい。ルールテーブルにより、所定基準の管理が容易となっている。
 前記トラフィック統計情報は、トラフィック量であり、前記所定基準は、上限閾値及び下限閾値であるとよい。前記情報処理部は、前記トラフィック量が前記上限閾値を超えるか前記下限値を下回ったときに前記トラフィック統計情報が前記所定基準を満たしたと判別してもよい。下限閾値を設けることで、サーバダウンなどの障害の検出も可能となる。なお、トラフィック量は、単位時間当たりのパケット数又はデータ量(バイト数)などの他、当該パケット数又はデータ量の変化度であってもよい。
 前記情報処理部は、時刻源からの時刻が予め定められた時刻となったときに前記所定基準を更新する。これにより、簡便な構成で所定基準を変化させることができる。
 前記情報処理部は、例えば、所定周期ごとに前記所定基準を更新し、前記所定基準を更新する次の所定周期よりも前の前記トラフィック統計情報及び前記次の所定周期よりも前の前記所定基準に基づいて前記所定基準を更新する(例えば、図4の閾値決定処理)。これにより、所定基準を好適に更新でき、障害発生時のパケットのキャプチャの精度が向上する。特に、前記情報処理部は、上記式1~式10に例示するように、所定基準を更新する次の所定周期よりも前のトラフィック統計情報の変動度合い(例えば、ある所定周期のトラフィック量と、その前の所定周期のトラフィック量との比)と、前記次の所定周期よりも前での閾値(例えば、現在の閾値)と、に基づいて閾値を決定してもよい。これにより、所定基準を好適に更新でき、障害発生時のパケットのキャプチャの精度が向上する。
 前記所定基準を更新する次の所定周期よりも前の前記トラフィック統計情報は、前記所定周期よりも長い期間におけるトラフィック量であってもよい。これにより、長周期のトラフィック量を観測した場合は、異常で増減したトラフィック量の影響が少なくみえることを利用して、所定基準の更新時にトラフィック異常があったとしても、当該以上の影響を低減した所定基準の更新が可能となる。特に、前記情報処理部は、上記式7~式10に例示するように、所定基準を更新する次の所定周期よりも前の、前記長い期間でのトラフィック量に基づく、トラフィック量の変動度合い(例えば、ある前記長い期間のトラフィック量と、その前の特定期間のトラフィック量との比)と、前記次の所定周期よりも前での閾値(例えば、現在の閾値)と、に基づいて閾値を決定してもよい。これにより、所定基準を好適に更新でき、障害発生時のパケットのキャプチャの精度が向上する。
 等間隔もしくはランダム間隔で登録外フローのパケットをキャプチャするサンプリングキャプチャ部と、キャプチャされた前記パケットに含まれるフローを特定するルールを前記ルールテーブルに登録するルール登録部と、を備えてもよい。前記情報処理部は、前記ルールが前記ルールテーブルに登録されたときに当該ルールに対応付けて所定条件を前記ルールテーブルに新たに登録する。これにより、ルールテーブルに登録されていないフロー及び所定基準についても新規登録が可能となる、
 本発明は、上記の実施の形態及び変形例に限定されるものではない。例えば、本発明には、本発明の技術思想の範囲内で当業者が理解し得る、上記の実施の形態及び変形例に対する様々な変更が含まれる。上記実施の形態及び変形例に挙げた各構成は、矛盾の無い範囲で適宜組み合わせることができる。
10…トラフィック監視装置、13…統計部、15…ステップ、16…自動障害検出部、20…情報処理部、21…パケット解析部、22…フロー識別部、23…統計部、24…統計情報ファイル生成部、25…記憶部、26…自動障害検出部、27…閾値更新部、27A…テーブル、29…ルールテーブル、30…パケットキャプチャ部、31…フィルタ部、32…キャプチャファイル生成部、33…記憶部、40…時刻源、80…監視対象ネットワーク、110…トラフィック監視装置、120…情報処理部、128…閾値決定部、210…トラフィック監視装置、251…サンプリングキャプチャ部、252…ルール登録部、900…コンピュータ、901…プロセッサ、902…記憶装置、904…出力装置。

Claims (8)

  1.  監視対象ネットワークのトラフィックを監視するトラフィック監視装置であって、
     前記監視対象ネットワークにおけるフローのトラフィック統計情報を取得し、取得した前記トラフィック統計情報が障害検出のための所定基準を満たしているかを判別するように構成された情報処理部と、
     前記所定基準を満たしていると判別された前記フローのパケットを前記フローの障害発生時のパケットとしてキャプチャするように構成されたパケットキャプチャ部と、を備え、
     前記情報処理部は、前記所定基準を当該情報処理部の稼働中に動的に更新するように構成されている、
     トラフィック監視装置。
  2.  前記情報処理部は、
      前記フローを含む複数のフローのそれぞれのトラフィック統計情報を取得し、
      フローを一意に特定可能なルールと、このフローが前記パケットキャプチャ部によるキャプチャの対象のときに第1数値をとり前記対象でないときに第2数値をとるキャプチャフラグと、このフローについての前記所定基準と、がフローごとに対応付けられたルールテーブルを参照して、前記所定基準を満たしたフローに対応する前記キャプチャフラグ値を前記第1数値に更新する、ように構成されており、
     前記パケットキャプチャ部は、前記キャプチャフラグ値が前記第1数値に変更されたあと又は前記第1数値に変更された前後の前記フローのパケットをキャプチャする、ように構成されている、
     請求項1に記載のトラフィック監視装置。
  3.  前記トラフィック統計情報は、トラフィック量であり、
     前記所定基準は、上限閾値及び下限閾値であり、
     前記情報処理部は、前記トラフィック量が前記上限閾値を超えるか前記下限値を下回ったときに前記トラフィック統計情報が前記所定基準を満たしたと判別する、
     請求項1又は2に記載のトラフィック監視装置。
  4.  前記情報処理部は、時刻源からの時刻が予め定められた時刻となったときに前記所定基準を更新する、
     請求項1~3のいずれか1項に記載のトラフィック監視装置。
  5.  前記情報処理部は、所定周期ごとに前記所定基準を更新し、前記所定基準を更新する次の所定周期よりも前の前記トラフィック統計情報及び前記次の所定周期よりも前の前記所定基準に基づいて前記所定基準を更新する、
     請求項1~4のいずれか1項に記載のトラフィック監視装置。
  6.  前記所定基準を更新する次の所定周期よりも前の前記トラフィック統計情報は、前記所定周期よりも長い期間におけるトラフィック量である、
     請求項5に記載のトラフィック監視装置。
  7.  等間隔もしくはランダム間隔で登録外フローのパケットをキャプチャするサンプリングキャプチャ部と、
     キャプチャされた前記パケットに含まれるフローを特定するルールを前記ルールテーブルに登録するルール登録部と、を備え、
     前記情報処理部は、前記ルールが前記ルールテーブルに登録されたときに当該ルールに対応付けて所定条件を前記ルールテーブルに新たに登録する、
     請求項1~6のいずれか1項に記載のトラフィック監視装置。
  8.  監視対象ネットワークのトラフィックを監視するコンピュータに、
     前記監視対象ネットワークにおけるフローのトラフィック統計情報を取得し、取得した前記トラフィック統計情報が障害検出のための所定基準を満たしているかを判別する情報処理ステップと、
     前記所定基準を満たしていると判別された前記フローのパケットを前記フローの障害発生時のパケットとしてキャプチャするパケットキャプチャステップと、を実行させ、
     前記情報処理ステップは、前記所定基準を当該情報処理部の稼働中に動的に更新するステップを含む、
     トラフィック監視プログラム。
PCT/JP2021/041180 2021-11-09 2021-11-09 トラフィック監視装置およびトラフィック監視プログラム WO2023084599A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2021/041180 WO2023084599A1 (ja) 2021-11-09 2021-11-09 トラフィック監視装置およびトラフィック監視プログラム
JP2023559231A JPWO2023084599A1 (ja) 2021-11-09 2021-11-09

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/041180 WO2023084599A1 (ja) 2021-11-09 2021-11-09 トラフィック監視装置およびトラフィック監視プログラム

Publications (1)

Publication Number Publication Date
WO2023084599A1 true WO2023084599A1 (ja) 2023-05-19

Family

ID=86335295

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/041180 WO2023084599A1 (ja) 2021-11-09 2021-11-09 トラフィック監視装置およびトラフィック監視プログラム

Country Status (2)

Country Link
JP (1) JPWO2023084599A1 (ja)
WO (1) WO2023084599A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005323183A (ja) * 2004-05-10 2005-11-17 Nippon Telegr & Teleph Corp <Ntt> ネットワーク攻撃検知装置および方法ならびにプログラム
JP2018142197A (ja) * 2017-02-28 2018-09-13 沖電気工業株式会社 情報処理装置、方法およびプログラム
WO2020230265A1 (ja) * 2019-05-14 2020-11-19 日本電信電話株式会社 パケットキャプチャ装置および方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005323183A (ja) * 2004-05-10 2005-11-17 Nippon Telegr & Teleph Corp <Ntt> ネットワーク攻撃検知装置および方法ならびにプログラム
JP2018142197A (ja) * 2017-02-28 2018-09-13 沖電気工業株式会社 情報処理装置、方法およびプログラム
WO2020230265A1 (ja) * 2019-05-14 2020-11-19 日本電信電話株式会社 パケットキャプチャ装置および方法

Also Published As

Publication number Publication date
JPWO2023084599A1 (ja) 2023-05-19

Similar Documents

Publication Publication Date Title
JP6535809B2 (ja) 異常検出装置、異常検出システム、及び、異常検出方法
US10021007B2 (en) Measuring latency within a networking device
US7752307B2 (en) Technique of analyzing an information system state
US20200259731A1 (en) Process and apparatus for identifying and classifying video-data
CN111181798B (zh) 网络时延测量方法、装置、电子设备及存储介质
US10505952B2 (en) Attack detection device, attack detection method, and attack detection program
CN108737333A (zh) 一种数据检测方法以及装置
US9992117B2 (en) Network apparatus, communication system, abnormal traffic detection method, and program
US20150264071A1 (en) Analysis system and analysis apparatus
CN106713307B (zh) 一种检测sdn中流表一致性的方法和系统
JP5963974B2 (ja) 情報処理装置及び情報処理方法及びプログラム
WO2023084599A1 (ja) トラフィック監視装置およびトラフィック監視プログラム
WO2021234764A1 (ja) バーストトラフィック検出装置、バーストトラフィック検出方法およびバーストトラフィック検出プログラム
JP5684748B2 (ja) ネットワーク品質監視装置及びネットワーク品質監視方法
US9645877B2 (en) Monitoring apparatus, monitoring method, and recording medium
US10887241B2 (en) Communication device, communication system, and communication method
JP7535951B2 (ja) コレクタ装置、ネットワーク監視方法、プログラム、及びネットワーク監視システム
TW201928747A (zh) 伺服器及其監控方法
US20230188439A1 (en) Traffic Monitoring Device, Traffic Monitoring Method, and Traffic Monitoring Program
Peng et al. Design and implementation of network instruction detection system based on snort and NTOP
JP5362769B2 (ja) ネットワーク監視装置及びネットワーク監視方法
KR20090072436A (ko) 패킷 망에서의 트래픽 관리 방법 및 시스템
US20230067780A1 (en) Flow information collection apparatus and method of generating flow information
JP6577893B2 (ja) 同期判定装置及び同期判定プログラム
CN115811433A (zh) 一种提升Flow攻击检测准确性和性能方法及装置

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2023559231

Country of ref document: JP

Kind code of ref document: A