WO2008062787A1 - Appareil et procédé de restriction d'informations de flux - Google Patents

Appareil et procédé de restriction d'informations de flux Download PDF

Info

Publication number
WO2008062787A1
WO2008062787A1 PCT/JP2007/072456 JP2007072456W WO2008062787A1 WO 2008062787 A1 WO2008062787 A1 WO 2008062787A1 JP 2007072456 W JP2007072456 W JP 2007072456W WO 2008062787 A1 WO2008062787 A1 WO 2008062787A1
Authority
WO
WIPO (PCT)
Prior art keywords
flow information
flow
information
aggregation
item
Prior art date
Application number
PCT/JP2007/072456
Other languages
English (en)
French (fr)
Inventor
Hitoshi Irino
Masaru Katayama
Original Assignee
Nippon Telegraph And Telephone Corporation
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 Nippon Telegraph And Telephone Corporation filed Critical Nippon Telegraph And Telephone Corporation
Priority to CN2007800423057A priority Critical patent/CN101536437B/zh
Priority to EP07832186A priority patent/EP2086183B1/en
Priority to US12/514,883 priority patent/US8239565B2/en
Publication of WO2008062787A1 publication Critical patent/WO2008062787A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/34Signalling channels for network management communication
    • H04L41/344Out-of-band transfers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/41Flow control; Congestion control by acting on aggregated flows or links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/129Avoiding congestion; Recovering from congestion at the destination endpoint, e.g. reservation of terminal resources or buffer space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Definitions

  • the present invention relates to a network device used in an open network environment represented by the Internet and the like, and in particular, can collect information (flow information) for measuring traffic on the network. , Information communication equipment represented by nodes, etc.
  • IP Internet Protocol
  • Flow measurement is a method of classifying the type of communication based on information held by such packets.
  • a packet having the same attribute for example, a packet having the same information for each information item of protocol, source IP address, destination IP address, source port, and destination port is regarded as a packet belonging to the same communication.
  • a set of packets belonging to the same communication is called a flow.
  • the Internet is constructed by interconnecting multiple networks including multiple routers that perform route control, and packets sent from the source reach the destination via several routers. To do.
  • a router transfers packets by referring to the packet IP header and, in some cases, the transport layer header, and is therefore suitable as a device for classifying flows.
  • NetFlow see Non-Patent Document 1
  • IPFIX IP Flow Information eXport
  • a measurement packet obtained by packetizing flow information according to a specific format is sent from a router. By transmitting to a measurement terminal on the network, it is possible to grasp the communication contents of that node.
  • attack traffic called DDoS that keeps sending a large amount of data with distributed source addresses, and connection status to all ports of the target host called port scan are attempted.
  • attack traffic that detects vulnerabilities occurs, the number of flows increases rapidly.
  • Non-Patent Document 3 in IPFK that performs flow information notification, UDP (User Datagram Protocol) without congestion control and Fransmission Control Protocol (D) for congestion control are used as transport protocols.
  • TP Stream Control Transmission Protocol
  • the flow transmitter / receiver transmits using UDP without congestion control function, if the number of flows increases rapidly, the number of packets transmitted from the flow transmitter such as a router to the measurement terminal also increases. As a result, congestion may occur in the measurement network between the flow transmitter and the measurement terminal.
  • Non-Patent Document 1 [Accessed on Sep. 8, 2006 Internet. Claise. Cisco Systems Net Flow Services export Version 9. RrC 3954 (Informational), October 2004. http: //www.ietf. Org / rfc / rfc3954 .TXT
  • Non-Patent Document 2 Cristian Eatan, Ken Keys, David Moore, George Varghese: “Building a better netflow”, ACM SIGCOMM Computer Communication Review, 34, Issue 4, pp. 245-256 (2004)
  • Non-Patent Document 3 B. Claise. IPFIX Protocol Specification. Internet Draft, June 2006. H YPERLINK "http: // tools. Ietf. Org / id / draft-ietf—ipfix—protocoto 22 ⁇ txt" htt: // tools. i etf.org/id/draft-ietf-ipfix-protocol-22.txt(22 ⁇ 3 ⁇ 4) Disclosure of the invention
  • FIG. 20 shows an information communication system that performs packet communication through the Internet including a measurement network.
  • the Internet 10 is formed by connecting a plurality of networks including a plurality of nodes 12 to; Nodes 12 to 14 and 111 are connected to be able to communicate with each other.
  • the node 111 is connected to the measurement terminal 20 and the terminal 30.
  • a terminal 14 is connected to the node 12, a terminal 42 is connected to the node 13, and a terminal 43 is connected to the node 14.
  • Each of measurement terminal 20 and terminals 30, 4;! -43 is a computer system having a communication function.
  • the main parts of the computer system are storage devices that store programs, input devices such as keyboards and mice, display devices such as CRTs and LCDs, communication devices such as modems that communicate with the outside, output devices such as printers, and It has a control device that receives input from the input device and controls the operation of the communication device, output device, and display device.
  • Terminal 4;! To 43 are client terminals, and terminal 30 is a server that provides communication services to clients, and communication is performed between server clients.
  • Terminal 4;!-43 may be infected with a virus or worm or may be illegally controlled by a third party. In such a case, the terminal 4;! To 43 performs a network attack on the terminal 30.
  • the source address is distributed.
  • the source address may be distributed due to the spoofing of the source address. A large amount of data with distributed source addresses arrives at the node in this way, and abnormal traffic occurs.
  • Traffic flowing on the network where node 111 serves as a gateway, such as traffic addressed to 30, will increase. This increase in traffic causes the following problems such as congestion in the communication on the measurement network at node 111 and failure to transmit information on the entire observed traffic.
  • the node 111 transmits a measurement packet obtained by packetizing the flow information to the measurement terminal 20.
  • UDP without congestion control is used as a transport protocol, as the number of flows observed on the node 111 increases, the amount of measurement packet transmission increases accordingly. For this reason, congestion occurs in the measurement network between the node 111 and the measurement terminal 20, and secondary damage of the attack occurs.
  • the measurement terminal 20 When a line used for normal communication between the node 111 and the terminal 30 or between the node 111 and the Internet 10 is in an abnormal state, the measurement terminal 20 is used to detect abnormal traffic. Is arranged. However, if congestion occurs in communication between the node 111 and the measurement terminal 20 due to a rapid increase in flow, the loss of measurement packets increases, making it difficult to perform sufficient measurements at the measurement terminal 20. Become. In addition, if other communications are performed, the communications may be adversely affected. In some cases, the measurement terminal 20 may fall into a resource shortage state.
  • An object of the present invention is to solve the above problems and to provide a flow information limiting device that can limit the number of flow information to be transmitted while maintaining measurement information of the entire traffic.
  • the flow information limiting device of the present invention is arranged on a network that connects a plurality of terminals to each other, and is connected to a measurement terminal that measures traffic in the network via a measurement network.
  • a flow information restriction device connected to each other, wherein a set of packets having the same attribute is defined as the same communication flow, and flow information is generated for each flow based on the header information of the packet.
  • a flow information transmitting unit that packetizes the flow information output from the information number limiting unit and transmits the packet on the measurement network.
  • the report number limiting unit converts the stored flow information into the non-aggregated flow information and the traffic measurement. It is divided into aggregation candidates whose necessity is lower than that of the non-aggregated flow information, and the flow information determined as the aggregation candidates is aggregated so that the number of flow information held in the management buffer becomes a certain number or less. Control.
  • the number of flow information transmitted on the flow information transmission unit force measurement network is also limited to a certain number or less.
  • the present invention since only a certain number of pieces of flow information are transmitted on the measurement network related to the increase in flow, the case where V or UDP having a congestion control function is used for the transport protocol.
  • the power S can be used to control communication congestion in the measurement network.
  • FIG. 1 is a block diagram showing an example of an information communication system to which the present invention is applied.
  • FIG. 2 is a block diagram showing a configuration of a node which is an embodiment of the flow information restriction device of the present invention.
  • FIG. 3 is a schematic diagram showing an example of the structure of a management buffer managed by the flow information number limiting function unit shown in FIG. 2.
  • FIG. 4 is a diagram for explaining flow information and data structure definition information.
  • FIG. 5 is a diagram for explaining a notification method using option information.
  • FIG. 6 is a schematic diagram showing an example of definition information to which condition priority is given and conditions that are expanded and used by the definition information.
  • FIG. 7 is a schematic diagram showing another example of definition information to which condition priority is given and conditions that are expanded and used by the definition information.
  • FIG. 8 is a block diagram showing the configuration of a flow information processing unit that can accept external inputs related to priority.
  • FIG. 9 is a diagram for explaining an input format of definition information.
  • FIG. 10 is a diagram for explaining another input format of definition information.
  • FIG. 11 is a flowchart showing a procedure of flow information aggregation processing performed by the flow information number limiting function unit shown in FIG.
  • FIG. 12 is a schematic diagram showing an example of flow information aggregation by the flow information number limiting function unit shown in FIG. 2.
  • FIG. 13 is a schematic diagram showing another example of flow information aggregation by the flow information number limiting function unit shown in FIG. 2.
  • FIG. 14 is a schematic diagram showing another example of aggregation of flow information by the flow information number limiting function unit shown in FIG. 2.
  • FIG. 15 is a diagram for explaining a procedure for creating a search index.
  • FIG. 16 is a diagram for explaining another procedure for creating a search index.
  • FIG. 17 is a diagram for explaining a method for suppressing a decrease in efficiency when a tree structure is recreated for each condition.
  • FIG. 18 is a schematic diagram showing an example of collecting ports.
  • FIG. 19 is a schematic diagram showing an example of collecting addresses.
  • FIG. 20 is a block diagram showing a general configuration of an information communication system including a measurement network.
  • FIG. 1 is a diagram illustrating an example of an information communication system to which the present invention is applied.
  • the communication system is the same as the system shown in FIG. 20 except that node 11 is provided instead of node 111.
  • the Internet 10 is a network in which a plurality of networks including a plurality of nodes 11 to 14 that perform packet transfer are connected to each other. Nodes 11 to 14 are connected to communicate with each other. The node 11 is connected to the measurement terminal 20 and the terminal 30.
  • the node 11 has a flow information processing unit 200 having a flow information aggregation function, which is different from the information communication system shown in FIG.
  • FIG. 2 shows the configuration of the flow information processing unit 200 of the node 11 which is an embodiment of the flow information limiting device of the present invention.
  • the flow information processing unit 200 includes a measurement network interface 201, a flow generation function unit 202, a flow information number limiting function unit 203, a flow transmission function unit 204, and an output network interface 205.
  • the measurement network interface 201 is composed of a plurality of network interfaces that respectively collect packets that arrive from each terminal through the Internet 100. Packets collected by the measurement network interface 201 are supplied to the flow generation function unit 202.
  • the flow generation function unit 202 is a flow generation function unit included in an existing transmission device that uses a flow notification protocol such as NetFlow, IPFK, and the like.
  • the flow generation function unit 202 collects packets collected through the measurement network interface 201. Generate flow information based on the header information. Specifically, the flow generation function unit 202 is determined from information included in a packet header such as a protocol, a source IP address, a destination IP address, a source port and a destination port, or a packet header such as route information.
  • a packet with the same information is regarded as a packet belonging to the same communication, and information (flow information) about a flow that is a set of the packets is generated.
  • flow information generation processing such as updating of time information based on the conditions for making a flow is also performed.
  • flow information often includes protocol, source IP address, destination IP address, source port, and destination port information.
  • the flow information generated by the flow generation function unit 202 is supplied to the flow information number limiting function unit 203.
  • the flow information number limit function unit 203 receives the flow information input from the flow generation function unit 202.
  • a management buffer unit for temporarily storing and managing information is provided, and flow information is read from the management buffer unit and supplied to the flow transmission function unit 204.
  • the upper limit value of the number of flow information managed by the management buffer is set in advance, and the flow information limit function unit 203 increases the number of flow information supplied from the flow generation function unit 202 per fixed time.
  • the flow information group stored in the management buffer unit is divided into aggregation candidates and non-aggregated flow information, Aggregation processing is performed on the aggregation candidates.
  • the upper limit takes into account the communication capacity of the measurement network (network communication capacity between the node 11 and the measurement terminal 20), the processing capacity of the flow transmission function unit 204, the reading speed from the management buffer unit, etc.
  • the values are set such that the management buffer unit and the internal buffer of the flow transmission function unit 204 do not fail, and congestion of the measurement network communication does not occur.
  • the importance of measuring aggregation candidate traffic is less important than non-aggregated flow information.
  • the flow transmission function unit 204 is a flow transmission function unit provided in an existing transmission device that uses a flow notification protocol such as NetFlow or IPFK, and is supplied from the flow information number limiting function unit 203.
  • the internal buffer for temporarily storing the flow information is generated, and the flow information read from the internal buffer is packetized to an appropriate size to generate a measurement packet, and a dedicated header is attached to the measurement packet.
  • the data is sent out from the output network interface 205 to the network.
  • the measurement packet sent from the output network interface 205 is supplied to the measurement terminal 20.
  • the measurement network interface 201 and the output network interface 205 may be physically the same.
  • These buffers are partly or entirely part of the storage area independently! /, But are also shared! /, Even! /.
  • the flow information number limiting function unit 203 sends a flow less than a certain number to the flow transmission function unit 204 related to the number of flow information input from the flow generation function unit 202. Since only one piece of information is transmitted, the amount of measurement buckets transmitted from the node 11 to the measurement terminal 20 is also limited to a certain number or less.
  • FIG. 3 shows an example of the structure of the management buffer managed by the flow information number limiting function unit 203.
  • the management buffer is composed of a combination of a buffer B1 in which the flow information input from the flow generation function unit 202 is rearranged and stored based on the ranking according to the measurement purpose, and each item of the flow generation condition.
  • buffers B2 to B7 provided corresponding to each of a plurality of aggregation conditions with different comparison items included in the conditions to be aggregated
  • the noffer B1 includes a non-aggregation B1-1 and an aggregation candidate B1-2.
  • Each flow information stored in the buffer B1 is flow information that satisfies the condition (flow generation condition) for identifying packets belonging to the same communication used in the flow information generation in the flow generation function unit 202.
  • the flow generation conditions are conditions related to five items: protocol, source IP address, destination IP address, source port, and destination port.
  • the flow generation conditions are not limited to the above five items.
  • Information based on packet headers such as the MAC address, IP address, port number, etc., or information related to routing such as the next hop and AS number determined from such information, can be used as the flow generation condition. it can.
  • the buffer for managing the aggregated information is also created by deleting some of the items of the original condition, and is not limited to the conditions exemplified in the buffers B2 to B7 in FIG.
  • FIG. 4 shows an example of flow information and data structure definition information. According to this definition information, the 4-byte header common to definition information 'flow information' is followed by a 4-byte header for definition information, followed by items that make up the flow information.
  • SetlD In the 4-byte header common to the definition information 'flow information', the ID called SetlD is indicated by 2 bytes, and the length of the information is indicated by the next 2 bytes.
  • SetlD can be either normal definition information or It is used to distinguish the definition information power for options and the flow information and option information power corresponding to those definition information.
  • 0 corresponds to normal definition information
  • 1 corresponds to option information
  • values of 256 or more correspond to flow information / option information.
  • IPFIX 2 corresponds to normal definition information
  • 3 corresponds to option information
  • 256 or more corresponds to flow information 'option information.
  • the header for normal definition information following the 4-byte header common to the definition information 'flow information is composed of a 2-byte template ID and a 2-byte field count.
  • the 2-byte template ID is used to indicate which flow information data structure is defined, and is the same as the SetID of the corresponding flow information.
  • the field count indicates the number of items that follow.
  • Each item constituting the field information represents one piece of information for every 4 bytes.
  • the first 2 bytes of the 4 bytes represent the item ID, and the last 2 bytes represent the item size (number of bytes).
  • there are 12 items that make up the field information and the ID and number of bytes for each item are shown.
  • the first item indicates sourceIPv4Address (ID: 8) power bytes indicating the IPv4 source address
  • the second item is destinationIPv4Address (ID: 12) power bytes indicating the IP v4 destination address. It is shown that.
  • the data structure of the flow information is defined by each item.
  • Not all items constituting the field information shown in FIG. 4 are used as flow generation conditions. For example, counters (packetDeltaCount (ID: No. 2), octetDeltaCount (ID: No. 1) in Fig. 4) and time information (flowStartSysUpTime (ID: No. 22, flowEndSysUpTime (Fig. 4)) ID: No. 21)) cannot be used as a flow generation condition, and all other items are not necessarily used as a flow generation condition. In addition, NetFlow does not have such a notification function, so it depends on the device implementation In IPFK, the item that is the flow generation condition is called a flow key. .
  • FIG. 5 schematically shows a notification method using option information.
  • option information is indicated, the relationship between option data structure definition information and option information is the normal flow data. This is the same as the relationship between the structure definition information and the flow information.
  • option information is given information indicating the scope of information called a scope.
  • a 2-byte scope field count is given following the field count, and items are enumerated thereafter.
  • the scope is the number of items with the first scope field count.
  • the scope is Templat elD (same usage as the template ID above).
  • a flowKeylndicator that indicates the flow generation condition is defined.
  • option information is created according to the option data structure definition information, and specific values are set as option information. For example, to indicate optional information for the flow information shown in FIG. 4, the value corresponding to TemplatelD is 256.
  • the flow Keylndicator is a 64-bit bitmap, and indicates whether one item can be used as a flow generation condition for each lbit. In other words, the flowKeylndicator uses the force S to set information indicating whether or not it is used as a flow generation condition for up to 64 items from the top.
  • sourceIPv4Address Destination IPv4Address
  • protocolIdentiner SourceTransportPort
  • destinationTransportPort force throw generation conditions if any, 1st, 2nd, 6th, 7th, 8th from the top, respectively Because of the position, the data of the flow key indicator is 1 for the 1st, 2nd, 6th, 7th and 8th bits.
  • the user designates the ID and size of the item to be included in the flow information to be transmitted.
  • the priority set by the user is further assigned to the conditions used for the flow generation conditions.
  • a new condition is created by deleting a condition from a low priority item.
  • FIG. 6 and FIG. 7 show examples of definition information to which condition priorities are assigned and conditions that are expanded and used.
  • Figure 6 In this column, the five items of sourceIPv4Address, destinationIPv4Aadress, protocolldentifier, sourceTransportPort, and destinationTransportPort are given different values as the priority of the measurement condition. According to the ranking, when the reduction number is 0, the reduction number is 1, the reduction number is 2, the reduction number is 3, and the reduction power is that Since one condition set is generated for each, a maximum of five condition sets will be generated.
  • the items having the same priority are used exclusively.
  • the priority of the item of sourceIPv4Address and destinationIPv4 Address is 2
  • the priority of the item of protocolldentifier is 1
  • the priority J injection position of the item of sourceTransportPort and destinationTransportPort is 4.
  • one set of conditions is generated when the number of reductions is 0
  • two sets of conditions are generated when the number of reductions is 1
  • one condition is set when the number of reductions is 2.
  • a pair is generated and two condition pairs are generated when the reduction number is 3, and one condition pair is generated when the power is reduced. become.
  • the flow information processing unit 200 may be configured as shown in FIG.
  • a flow information processing unit 200 illustrated in FIG. 8 includes a control unit 206 in addition to the configuration illustrated in FIG.
  • Each of the flow generation function unit 202, the flow information number limiting function unit 203, and the flow transmission function unit 204 transmits and receives information to and from the control unit 206.
  • the definition information input format can be cvs (comma-separated text) as shown in Fig. 9 or space or tab-delimited text, or it can use a description language such as XML as shown in Fig. 10. There may be.
  • the information generated by the flow generation function unit 202 is supplied to the flow information number limiting function unit 203, and before being transmitted to the flow transmission function unit 204, items deleted in the flow aggregation condition are deleted. Force removed from the template or excluded from the flowKeylndicator bitmap. Since all of these need to be handled as different templates, different template IDs are assigned by the flow transmission function unit 204 and transmitted via the output network interface 205. In this way, the flow information number limiting function unit 203 holds the items corresponding to the attributes of the packets used for generating the flow information performed by the flow generation function unit 202 and the priority order of the externally input items, The item with the lowest priority The comparison items are changed step by step by repeating the process of deleting from the row information generation item.
  • the measurement purpose when the measurement purpose is to detect traffic with an increased amount of data communicated by an attack such as DoS, the amount of data included in the flow information is reduced. Rearrange flow information based on magnitude relationship. Measurement objectives When detecting traffic related to attacks such as STCP SYN Do S, the flow information is rearranged based on the size relationship of the number of messages such as SYN included in the flow information. When the measurement purpose consists of multiple items, the flow information is rearranged after giving priority and weighting to the number of data of each item included in the flow information. In addition, statistical values such as standard deviation and variance of these values can also be used as sorting indices. The sorting method can be switched between descending and ascending order according to the purpose.
  • Non-aggregated B1-1 stores the number of upper non-aggregated pieces of flow information in the flow information group that has been rearranged based on the non-aggregated number given from the outside as non-aggregated flow information.
  • candidate B12 flow information other than non-aggregated flow information of the sorted flow information group is stored as an aggregation candidate.
  • the information flows stored in the non-aggregation B1-1 and aggregation candidate B12 are ranked lower toward the left side of the drawing and higher toward the right side.
  • Buffer B2 stores an aggregated flow information group in which flow information that matches four items (aggregation conditions) of the protocol, source address, destination address, and destination port in the flow generation conditions is aggregated.
  • the Buffer B3 stores an aggregated flow information group in which flow information that matches the four items (aggregation conditions) of the protocol generation, source address, destination address, and source port among the flow generation conditions is stored.
  • the buffer B4 stores an aggregated flow information group obtained by aggregating flow information that matches three items (aggregation conditions) of a protocol, a source address, and a destination address among the flow generation conditions.
  • Buffer B5 stores an aggregated flow information group in which flow information that matches two items (aggregation conditions) of the protocol and destination address in the flow generation conditions is aggregated.
  • the aggregated flow information that aggregates the flow information that matches the two items (aggregation condition) of the protocol and the source address in the flow generation conditions.
  • a row information group is stored.
  • Buffer B7 stores an aggregated flow information group in which the flow information that matches the protocol (aggregation condition) in the flow generation conditions is aggregated.
  • Aggregation conditions are in the order of notifiers B2, B3, B4, B5, B6, and B7, starting from the one with more items.
  • Fig. 3 the number of items that constitute the condition increases as it goes upward in the drawing, and the number of items that constitute the condition decreases as it goes down.
  • the flow information number limiting function unit 203 sequentially reads the flow information from the buffer B1 and transmits the flow information. Supplied to the functional unit 204.
  • the flow information limit function unit 203 uses the flow information stored in the notifier B1 for measurement purposes. Reordering is performed, and the upper flow information is stored in the non-aggregation B1-1, and the lower flow information is stored in the aggregation candidate B1-2. Then, the flow information aggregation process is executed for the flow information (aggregation candidate) stored in the aggregation candidate B1-2.
  • the flow information stored in the non-aggregated B1-1 is sequentially read out without being aggregated and supplied to the flow transmission function unit 204.
  • the flow information stored in the buffer B 1 is rearranged! /
  • the flow information supplied from the flow generation function unit 202 may be stored in the buffer B1 in a rearranged state using an algorithm such as force S or insertion sort! /.
  • Figure 11 shows the flow information aggregation process.
  • step Sl it is determined whether or not the number of pieces of flow information stored and managed in the management buffer unit has exceeded the upper limit value. This determination is made at regular time intervals or whenever flow information is input from the flow generation function unit 202.
  • the flow information stored in the buffer B1 is rearranged to be divided into aggregation candidates and non-aggregated flow information (step S2).
  • the flow information with the lowest rank among the aggregation candidates is extracted as an aggregation target (step S3).
  • initial aggregation conditions are set (step S4).
  • the initial aggregation condition is a condition with one item less than the flow generation condition. Specifically, the buffer condition shown in Fig. 3 A Aggregation condition for B2.
  • a noffer corresponding to the aggregation condition is set as a search target buffer (step S5).
  • buffer B2 is the search target buffer.
  • step S6 it is determined whether or not there is aggregated flow information in the search target buffer that matches all items of the aggregation condition set as the aggregation target (step S6). If there is aggregated flow information that matches all items of the aggregation condition, the aggregation target is aggregated with the aggregated flow information and stored in the buffer corresponding to the currently set aggregation condition (step S7). If multiple aggregated flow information that matches all items of the aggregation condition is searched at the time of retrieval, all the aggregated flow information and the aggregation target are aggregated.
  • step S6 If it is determined in step S6 that there is no aggregated flow information that matches all items in the aggregation condition! /, Whether or not the target buffer set in step S5 is aggregation candidate B1-2 (Step S8). If the target buffer is not the aggregation candidate B1-2, the buffer that is one higher than the current buffer (the buffer with many items that constitute the condition) is set as the search target buffer (step S9), and the process proceeds to step S6.
  • step S8 If it is determined in step S8 that the target buffer is aggregation candidate B1-2, is the aggregation condition that is currently set! /, The condition that has the fewest items constituting the condition! /, The condition? It is determined whether or not (Step S10). If the aggregation condition has the least number of items that make up the condition! / Is not a condition! / ⁇ , change the aggregation condition to a condition with one less item than the current condition (Step S11), and go to Step S5 To do. If the aggregation condition is the condition with the fewest items constituting the condition, the aggregation target is stored in the condition buffer with the least number of items constituting the condition (step S12).
  • step S2 the upper flow information is stored in non-aggregation B1-1, and the lower flow information is stored in aggregation candidate B1-2. Then, in step S3, the flow information stored in aggregation candidate B1-2 is stored. The flow information with the lowest rank is extracted as the aggregation target. In Fig. 3, the leftmost flow information in aggregation candidate B1-2 is targeted for aggregation.
  • a condition is configured as an initial aggregation condition compared to the flow generation condition.
  • the condition to be reduced by one item (buffer B2 aggregation condition) is set.
  • buffer B2 aggregation condition four items of protocol, source address, destination address, and destination port are set as the initial aggregation conditions.
  • step S5 a buffer corresponding to the set aggregation condition is set as a search target buffer, and in step S6, the buffer is searched. At this stage, it is determined whether or not there is aggregated flow information in the buffer B2 corresponding to the initial aggregation condition set in step S4 that matches all items of the aggregation target and the initial aggregation condition.
  • Figure 12 shows the state where the fourth aggregated flow information from the left in buffer B2 matches the aggregation target.
  • the aggregation target is aggregated into the fourth aggregated flow information.
  • the aggregation target is deleted from the aggregation candidate B1-2.
  • step S8 it is determined in step S8 whether or not the search target noffer is the aggregation candidate B1-2. If the search target buffer is not the aggregation candidate B 1-2, the buffer one level higher than the current buffer is set as the search target buffer in step S8, and the process proceeds to step S6 to determine whether there is a corresponding flow.
  • Figure 13 shows the fifth flow information power S from the left in the aggregation candidate B1-2, which matches the aggregation target. In this case, the aggregation target and the fifth flow information are aggregated and stored in the buffer B2 as aggregated flow information. The aggregation target and the fifth flow information are deleted from aggregation candidate B1-2. Note that there may be multiple flow information that matches the aggregation target when searching for higher-level buffers. In such a case, all the multiple pieces of flow information are aggregated with the aggregation target.
  • step S6 If the determination in step S6 is "No applicable flow" and the determination in step S8 determines that the target buffer is an aggregation candidate, the aggregation condition is an item that constitutes the condition in step S10. Is the least condition (aggregation condition corresponding to buffer B7). If the aggregation condition is not the condition that has the least number of items, the aggregation condition is changed to a condition that has one item less than the current condition in step S11, and the process moves to step S5 to change to the changed aggregation condition. Set the corresponding buffer as the search target buffer.
  • the aggregation condition for buffer B2 is set as the initial aggregation condition, there is no aggregated flow information that matches the search target and aggregation condition in buffer B2, and aggregation candidate B1 If there is no flow information that matches the search target and the aggregation condition in 2, the aggregation condition is changed to the aggregation condition of buffer B3, which is one condition less than the current item, and the aggregation target buffer is changed to buffer B3. Is set. Then, the search in the buffer B3 is performed with the changed aggregation condition.
  • Figure 14 shows the search status for buffer B3. In this example, since there is no aggregated flow information in the buffer B3 that matches the aggregation target and the aggregation condition, the determination in step S6 is “no corresponding flow”.
  • the condition of the target buffer is changed step by step with the aggregation condition set in step S4 or step S11.
  • the aggregation conditions are changed step by step in the loop of steps S5 to S11. This step-by-step change in the target buffer and aggregation conditions makes it possible to minimize the amount of flow information lost due to aggregation and retain important information on the traffic to be measured.
  • the number of items of the aggregation condition is not reduced more than necessary, and the aggregation targets can be aggregated, and the number of flow information is reduced by the aggregated amount.
  • the force S that moves by moving a plurality of buffers, and the buffer itself is one.
  • a value corresponding to the template ID may be used as the ID indicating the aggregation condition.
  • flow information that has been aggregated and is no longer used can be deleted from the buffer, or it can be deleted without giving a special significant ID that is not actually deleted and the information is invalid.
  • initial flow information is aggregated between steps S2 and S3.
  • Flow information may be counted as a different flow when the flow ends even if the items used as the flow generation 'aggregation condition have the same value. For example, there are the following two conditions.
  • connection type protocol such as TCP
  • F1N RST for TCP
  • the other is to provide a timeout period to send data at regular intervals.
  • the flow exceeding this timeout time is temporarily terminated, and the item used as the flow generation 'aggregation condition is counted as another flow information with the same value.
  • the timeout times are the non-duration for connectionless protocols such as UDP (final packet force, elapsed time) and the duration for connection-oriented protocols such as TCP (starting packet force, elapsed time).
  • UDP final packet force, elapsed time
  • TCP starting packet force, elapsed time
  • the initial aggregation condition set in step S4 is not limited to the four items of protocol, source address, destination address, and source port.
  • the condition of reduction number 0 (same as flow generation condition) derived from conditions and priorities, and aggregation of flows divided by time-out is not performed In this case, it becomes an item that constitutes the condition of 1 reduction.
  • the above is the basic condition reduction method.
  • a search index By using a search index, the number of searches can be reduced.
  • a binary tree algorithm can be used to create a search index. With a balanced binary tree, it is possible to search at Log2N speed.
  • two binary tree construction methods can be considered. In general, in the binary tree construction method, the value of the already stored element is compared with the value of the newly inserted element, and the storage location is determined by the magnitude relationship.
  • the first construction method is a method in which a size comparison is performed from an item having a higher priority among a plurality of items.
  • this first construction method as a result, the priority of multiple items is mapped to the higher-order item powers and values, converted into one value, and the values are compared in magnitude.
  • FIG. 15 is a diagram for explaining a search index created by the first construction method.
  • items related to flow information A to E include protocolldenti bomb (f3 ⁇ 4 Sagawa is 1), destinationTransportPort (fe is 2), sourceIPv4Address is priority 3), destinationIPv4Address (priority is 4) and 5 items of sourceTransportPort (priority is 5) are given.
  • protocolldenti bomb f3 ⁇ 4 Sagawa is 1
  • destinationTransportPort fe is 2)
  • sourceIPv4Address is priority 3
  • destinationIPv4Address priority is 4
  • 5 items of sourceTransportPort priority is 5
  • a search index is created by the following procedure.
  • the flow of B is added to the index. Then, compare the magnitude relationships of the items in each flow of A and B in order from the highest priority!
  • the first priority protocollden tifier and second priority destinationTransportPort items are the same between A and B flows.
  • the value “10.0.0.2” in the B flow is larger than the value “10.0.0.1” in the A flow. Therefore, instead of A, B is the root, and A is the left leaf.
  • the flow D is added to the index. And for each flow item of B and D Compare the size relationships in descending order of priority! For the first priority protocollden tifier item, the value “17” in the D flow is larger than the value “6” in the B flow. Therefore, D is arranged on the right side. Here, since C already exists on the right side, the magnitude relationship between the items of each flow of C and D is compared in order of item power with the highest priority. For the second priority destinationTransportPort item, the value “192.168.0.1” in the C flow is greater than the value “10.0.0.1” in the D flow. Therefore, D is the left leaf of C.
  • the second construction method is a method in which a binary tree is created from the highest-level item, and the items below that are rooted at the leaf of the higher-level item.
  • FIG. 16 is a diagram for explaining a search index created by the second construction method. Also in the example shown in FIG. 16, five items having the same priority as the example shown in FIG. 15 are given as items related to the flow information A to E. Based on these items, the search index is as follows. It is created by the procedure.
  • the first priority protocolldentifier element (value: 6) is added as a pointer at the top of the tree, and the pointer at the top of this tree points to that element. The element also holds a pointer to the second priority.
  • second priority destinationTransportPort element (value: 192.168.0.1)
  • third priority sourceIPv4Addres element (value: 10.0.0.1)
  • fourth priority destinationIPv4 Address element (value: 80)
  • 5th priority sourceTransportPort element value: 23456) force S is added, and an element indicating the element number (value: A) is added under the tree.
  • First priority protocolldentifier element value: 6
  • the second priority destinationTransportPort element value: 192 ⁇ 168.0.1
  • the 3rd priority sourceIPv4Addres element value: 10.0.0.2
  • the 3rd priority sourceIPv4Addres element value: 10.0.0.2
  • Subsequent priority elements are added to the right leaf element in the same way as the flow of A, and an element indicating the element number (value: B) is added below the tree. .
  • the first priority protocolldentifier element (value: 17) is the same as the C flow, so it follows the same tree element as C.
  • the second priority destina tionTransportPort element (value: 10.0.0.1) is smaller than the existing element (value: 192.168.0.1)! /.
  • Subsequent priority elements are added to the left leaf element in the same procedure as the flow of A, and an element indicating the element number (value: D) is added under the tree.
  • the first priority protocolldentifier element (value: 1) is smaller than the existing element (value: 6), so it is considered as the left leaf. Subsequent priority elements are added to the left leaf element in the same procedure as the flow of A, and an element indicating the element number (value: E) is added below the tree.
  • the tree structure is simple, the tree does not have to be deep, and a tolerance (balanced tree) can be created.
  • a tolerance balanced tree
  • the tree is deepened, but as long as there are no overlapping priorities, once the tree structure is created, even if the conditions are reduced, some leaves are removed. Since they can be aggregated, there is no need to recreate the tree structure again. In addition, for example, when a specific port is excluded, the information handling method can be changed for each item. However, the second construction method cannot be applied when the priorities overlap. [0099] An index is created and held by the first or second construction method described above, and the conditions are reduced by referring to the held index when generating and aggregating flow information. It is possible to improve the efficiency of the generation and aggregation processes.
  • the flow generation function unit for the flow information stored in the management buffer, for each item held by the flow information based on the priority order of the items input externally.
  • the size comparison is repeated to determine the size of the flow information, the result is stored as a search index, and flow information is generated by referring to the search index.
  • the flow information number limiting function unit determines the size of each item stored in the flow information based on the priority order of the items input externally with respect to the flow information stored in the management buffer. The comparison is repeated to determine the size of the flow information, the result is held as a search index, and the flow information is aggregated with reference to the search index. As a result, the number of comparisons of conditions (combination of items) when collecting flow information can be reduced, and as a result, processing efficiency can be improved.
  • the first construction method as a method of minimizing the reduction in efficiency when the tree structure is recreated for each condition, the past number of aggregation candidates under the same condition and the number of flow information holdings per condition are set. There is a way to have it.
  • each of the flow information number limiting function unit sets the number of aggregation candidates and the number of aggregation results calculated using the already held upper limit value and the number of non-aggregation, and the aggregation condition when the flow information is limited. Records the number of flows for each item, and estimates the initial number of items to be used when creating the search index based on the recorded information at the next and subsequent aggregations, thereby reducing the number of times the search index is created. .
  • the upper limit value is determined internally from the number of flow information finally passed from the flow information number limiting function unit to the flow transmission function unit (force given from the outside, or the capacity of the management buffer). Is).
  • the non-aggregated number is the number of non-aggregated flow information (given from the outside) that is positioned higher after sorting.
  • the number of aggregation candidates is a value obtained by subtracting the non-aggregation number from the total number of flow information generated by the flow generation function unit.
  • the number of aggregated results The result value, that is, the value obtained by subtracting the upper limit force non-aggregation number.
  • the flow information number limit function unit subtracts the non-aggregation number from the total number of generated flow information, and the aggregation information obtained by subtracting the non-aggregation number from the upper limit.
  • the number of flow information is held for each information item (Information Element) in the number of results and the condition (flow key) used for aggregation.
  • FIG. 17 shows an example of information held by the flow information number limiting function unit. In the example shown in Fig.
  • protocolldentifier (priority is 1)
  • destinationTransportPort (priority is 2)
  • sourceIPv4Address (priority is 3)
  • destinationIPv4Address (priority is 4)
  • sourceTransportPort ( The priorities are 5) and! /, And the information for each item is recorded for the past 5 times.
  • the number of aggregation candidates is 120034, and the number of aggregation results is 20000.
  • the number of flows resulting from aggregation using only protocolldentifier (condition of 4 reductions in Fig. 6), where the aggregation condition includes items up to the first priority, is included.
  • the number of flows as a result of aggregation using the condition that includes items up to the second priority order (condition of 3 reductions in Fig. 6) is 6442, and the aggregation condition is the 3rd priority.
  • the number of flows as a result of aggregation using the conditions including items up to the rank (condition of reduction number 2 in Fig.
  • aggregation conditions include conditions up to the fourth priority level (Fig.
  • the number of flows resulting from aggregation using 6 reductions (1 condition) is 123 3 and the aggregation condition includes conditions up to the 5th priority (conditions with 0 reductions in Figure 6).
  • the number of flows as a result of aggregation is set to 0.
  • Aggregation with the number of flows set to 0 is regarded as unnecessary aggregation as a result.
  • the previous one-time aggregation omits conditions that include items up to the fifth priority, and starts creating a conditional force index that includes items up to the fourth priority. This reduces the number of processes and improves the processing speed.
  • the flow information number limiting function unit determines whether aggregation can be omitted from past records.
  • the items up to the 5th priority are displayed in the previous 1, 3 and 5 times.
  • the number of flows is 0 when the included condition is used.
  • the numbers of intensive weather in the intensive day temple at 1, 3 and 5 are 120034, 93898 and 108270, respectively.
  • the fourth priority It can be inferred that it is sufficient to start creating an in- stance based on the conditions including the items up to the rank (that is, the string of protocolIdentifier, protocolldentifier, destinationTransportPort, destinationIPv4Address). In this case, it is no longer necessary to create an index based on conditions including items up to the fifth priority level.
  • FIG. 18 shows an example of port aggregation.
  • a and B are the flow information generated by the conditions (flow generation conditions) of the five items of protocol, source address, destination address, source port and destination port, and C is the flow information
  • a , B are aggregated flow information in which each item of the flow generation condition is aggregated as an aggregation condition.
  • the source port is deleted from the items constituting the aggregation condition.
  • SA is the source address
  • DA is the destination address
  • SAMask” and “DAMask” are the netmask
  • SP is the source port
  • DP is the destination port.
  • Packets is the number of packets
  • octets is the number of bytes
  • First is the start time of the flow
  • “Last” is the end time of the flow.
  • the value of the source port “SP” is set to “0”, and the number of packets “Packets s” and the number of bytes “octets” are added to the corresponding values of the flow information A and B, respectively.
  • the start time “First” and the end time “Last” are set to a range that is the union of the corresponding times of the flow information A and B.
  • the start time “First J” and end time “Last” of flow information A are “134598098987” and “134598100384”, respectively
  • the start time “First” and end time “Last” of flow information B are “13459809”, respectively.
  • the start time“ First J ”and the end time“ Last ”of the aggregated flow information C are“ 134598098222 ”and“ 134598100384 ”, respectively.
  • the source port “SP” the number of packets “Packets”, the number of bytes “octets”, the start time “First”, and the end time “Last” are aggregated.
  • Flow information C is obtained.
  • each flow information In the example of a source port that can use the aggregated item value of the flow that has the largest amount of any monitoring item such as the data amount as a representative value, set the source port number that has the largest amount of data. Also good.
  • information on the first packet in the flow may be used as a representative value, or information indicating that aggregation has been performed may be added.
  • FIG. 19 shows an example of collecting addresses.
  • a and B are flow information generated under the conditions (flow generation conditions) of five items of protocol, source address, destination address, source port and destination port, and C is flow information A , B is aggregated flow information that aggregates three items of protocol, source address, and destination address among the flow generation conditions as aggregation conditions.
  • the value of the source port “SP” is set to “0” and the number of packets “Packets” and the number of bytes “octets” are respectively flow information, as shown in FIG.
  • the corresponding values of A and B are added, and the start time “First” and the end time “Last” are set to a range that is the union of the corresponding times of the flow information A and B.
  • the address is a new value obtained from the intersection of the address values of flow information A and B.
  • a new destination address “192 ⁇ 168.0.0” is obtained by a product set of the destination address “192.168.0.2” of the flow information A and the destination address “192.168.0.254” of the flow information B.
  • the netmask “SAMask” is also changed to “24” with this change in address value.
  • the information regarding the deleted item power that constitutes the aggregation condition is not transmitted, so it may have any value internally as described above.
  • the item to be sent must be expressed as a prefix (sourceIPv4Prefix) instead of an address (sourceIPv4Address). If the prefix is not changed, the representative value should be used, and the representative value before taking the intersection set (the value of the first packet is preferable according to the protocol specification as described above). In this case, 32 indicating the host address is also used for SAMask.
  • the total number of values that can be taken by the items constituting the aggregation condition in the state where the number of reductions is the largest is limited to a certain number or less as the upper limit. It will be the minimum to ensure that.
  • the force S that increases the number of flow information generated by the flow generation function unit along with the flow due to attack traffic, and the flow information number limiting function unit When the number of flow information input from the flow generation function unit increases, a part of the currently stored flow information (aggregation candidates) is aggregated. By collecting this flow information, the number of flow information supplied to the flow transmission function unit per fixed time is limited to a certain number or less. Therefore, the number of flow information sent by the flow transmission function unit on the measurement network per fixed time is also limited to a predetermined number or less. In this way, since only a certain number of flow information is sent on the measurement network related to the increase in flow, the measurement that occurred when UDP without the congestion control function was used for the transport protocol. Communication congestion in the network
  • flow information that includes information that is important in traffic measurement is excluded from the target of aggregation, and the flow information that is not important is aggregated. Characterizing flow information is retained.
  • the flow information restriction device (node) of the present embodiment described above is an example of the present invention.
  • each of the function units of the flow generation function unit, the flow information number limiting function unit, and the flow transmission function unit is performed by executing a program stored in a storage device by a control device configuring the computer system. It is possible to realize.
  • the program may be provided through a disk-type recording medium such as a CD-ROM or DVD, or may be provided by downloading a necessary program through the Internet.
  • the flow generation condition and aggregation condition items may include items other than these as long as they include information based on header information, or may not include these items.
  • Information based on header information includes information judged from header information even if it is not included in the header itself.
  • routing control information is also included in the information based on header information.
  • the header information is not limited to the network layer and the transport layer, but includes lower and higher protocols.
  • the number of items of flow generation conditions and aggregation conditions can be set as appropriate as long as flow generation and aggregation are possible.

Description

明 細 書
フロー情報制限装置および方法
技術分野
[0001] 本発明は、インターネットなどに代表されるオープンなネットワーク環境上で使用さ れるネットワーク装置に関し、特に、ネットワーク上のトラフィックを測定するための情 報 (フロー情報)を収集することの可能な、ノードなどに代表される情報通信機器に関 する。
背景技術
[0002] インターネットで使用される IP (Internet Protocol)では、プロトコル、ソース IPァドレ ス、宛先 IPアドレスの情報が管理され、また一部のトランスポートプロトコルでは、ソー スポートや宛先ポートの情報が管理される。これらのプロトコルを使用して伝送される パケットは、それぞれのプロトコルで管理されている情報を含む。そのようなパケットが 持つ情報に基づいて、通信の種別を分類する方法がフロー計測である。
[0003] フロー計測では、同一の属性のパケット、例えばプロトコル、ソース IPアドレス、宛先 IPアドレス、ソースポートおよび宛先ポートの各情報項目について同じ情報を持つパ ケットを同一の通信に属するパケットと見なす。同一の通信に属するパケットの集合を フローと呼ぶ。フローのデータ量やパケット量を計測することで、複数の地点間で複 数の通信サービスを監視することができ、通信量が異常に多い地点間や通信サービ スを特定したり、通信傾向を把握したりすることができる。
[0004] インターネットは、経路制御を行う複数のルータを含む複数のネットワークを相互に 接続することで構築されており、送信元から送出されたパケットはいくつかのルータを 経由して送信先に到達する。ルータは、パケットの IPヘッダや、場合によっては、トラ ンスポートレイヤーのヘッダを参照してパケットの転送を行うので、フローの分類を行 う機器として適している。ルータを通過したパケットのフロー情報を他の機器に通知す る技術として、 NetFlow (非特許文献 1参照)や IPFIX (IP Flow Information eXport)が ある。
[0005] フロー情報を特定のフォーマットに従ってパケット化した計測用パケットをルータか らネットワーク上の計測用端末に送信することで、そのノードの通信内容を把握するこ と力 Sできる。しかし、非特許文献 2によると、 DDoSと呼ばれる、ソースアドレスを分散さ せて大量のデータを送り続ける攻撃トラフィックや、ポートスキャンと呼ばれる、対象の ホストの全ポートへの接続を試みてサービス状態及び脆弱性を検出する攻撃トラフィ ック等が発生したときに、フロー数が急激に増大する。
[0006] また、非特許文献 3によると、フロー情報の通知を行う IPFKにおいては、トランスポ ートプロトコルとして、輻輳制御のない UDP (User Datagram Protocol)と輻輳制御の ¾> Tし F ransmission Control Protocol) し TP (Stream Control Transmission Pro tocol)を使用することができる。フローの送受信装置が輻輳制御機能のない UDPを利 用して送信を行う場合、フロー数が急激に増大すると、それに伴ってルータなどのフ ロー送信装置から計測用端末に送信されるパケットも増大し、その結果、フロー送信 装置と計測用端末の間の計測用ネットワークにおいて輻輳が発生する可能性がある
[0007] 一方、フローの送受信装置が輻輳制御機能を持つ TCPや SCTPを利用して送信を 行う場合は、フロー数が急激に増大しても、輻輳は発生しない。しかし、フロー送信装 置において、輻輳制御機能によって送信できるフロー情報数が限定されるため、生 成されるフロー情報数に対して送信されるフロー情報数が少なくなり、内部の送信バ ッファが溢れる場合がある。この結果、送信された情報は先に生成したフロー情報に 限られ、観測したトラフィック全体の情報が送信できなくなる。
非特許文献 1: [平成 18年 9月 8日閲覧 インターネット . Claise. Cisco Systems Net Flow Services export Version 9. RrC 3954 (Informational), October 2004.http://ww w. ietf. org/ rfc/ rfc3954.txt
非特許文献 2 : Cristian Eatan, Ken Keys, David Moore, George Varghese: "Building a better netflow", ACM SIGCOMM Computer Communication Review, 34, Issue 4, pp. 245-256 (2004)
非特許文献 3 : B. Claise. IPFIX Protocol Specification. Internet Draft, June 2006. H YPERLINK "http: //tools . ietf. org/id/draft-ietf—ipfix— protocoト 22 · txt" htt : //tools . i etf.org/id/draft-ietf-ipfix-protocol-22.txt(22}¾) 発明の開示
発明が解決しょうとする課題
[0008] 上述したように、 NetFlow (非特許文献 1参照)や IPFIXのフロー技術を採用する通 信システムにおいては、攻撃トラフィックによりフローが増大した場合に、計測用ネット ワークにおける通信に輻輳が発生する、という問題が生じる。もしくは、輻輳は発生し なレ、が、観測したトラフィック全体の情報が送信できな!/、ために不正確な情報送信が 発生する、という問題が生じる。以下に、この問題を具体的に説明する。
[0009] 図 20に、計測用ネットワークを含むインターネットを通じてパケットによる通信を行う 情報通信システムを示す。図 20において、インターネット 10は、パケット転送を行う複 数のノード 12〜; 14、 111を含む複数のネットワーク同士を相互に接続したものである 。ノード 12〜; 14、 111は相互に通信可能に接続されている。ノード 111には、計測用 端末 20および端末 30が接続されている。ノード 12には端末 14が接続され、ノード 1 3には端末 42が接続され、ノード 14には端末 43が接続されている。
[0010] 計測用端末 20および端末 30、 4;!〜 43のそれぞれは、通信機能を備えたコンビュ ータシステムである。コンピュータシステムの主要部は、プログラムなどを蓄積する記 憶装置、キーボードやマウスなどの入力装置、 CRTや LCDなどの表示装置、外部と の通信を行うモデムなどの通信装置、プリンタなどの出力装置および入力装置からの 入力を受け付けて通信装置、出力装置、表示装置の動作を制御する制御装置を有 する。端末 4;!〜 43はクライアント端末であり、端末 30はクライアントに通信サービスを 提供するサーバであり、サーバークライアント間で通信が行われる。
[0011] 端末 4;!〜 43は、ウィルスやワームに感染したり、第三者による不正な制御が行わ れたりする場合がある。そのような場合、端末 4;!〜 43は、端末 30に対するネットヮー ク攻撃を行う。複数の端末が同時にネットワーク攻撃を開始した場合は、ソースァドレ スが分散する。また、単一の端末がネットワーク攻撃を行った場合も、ソースアドレス の詐称によりソースアドレスが分散する場合がある。ノードには、このようにソースアド レスが分散した大量のデータが到達し、異常なトラフィックが発生する。
[0012] 加えて、 IPスキャンやポートスキャンなどの攻撃に準ずる行動、ウィルスやワーム等 の感染活動などでは、ノードの存在とは無関係に宛先アドレスを分散させて通信が行 われて、異常なトラフィックが発生する場合がある。この場合も、ソースアドレスは詐称 などにより分散する場合がある。
[0013] 上記のような攻撃等によってインターネット 10全体における通信量が増大し、端末
30宛のトラフィックなど、ノード 111がゲートウェイとなるネットワーク上を流れるトラフィ ックが増大する。このトラフィックの増大は、ノード 111における、計測用ネットワークに おける通信に輻輳が発生したり、観測したトラフィック全体の情報が送信できなかった りする、といった以下のような問題を引き起こす。
[0014] ノード 111は、フロー情報をパケット化した計測用パケットを計測用端末 20に送信 する。輻輳制御を行わない UDPをトランスポートプロトコルとして用いる場合は、ノード 111上で観測されるフロー数が増えると、それに伴って計測用パケットの送信量も増 大する。このため、ノード 111と計測用端末 20の間の計測用ネットワークにおいて輻 輳が発生し、攻撃の二次被害が発生する。
[0015] ノード 111と端末 30の間やノード 111とインターネット 10の間の通常の通信に利用 する回線が異常状態になった場合に、異常性のあるトラフィックを発見するために、 計測用端末 20が配置されている。しかし、フローの急激な増大により、ノード 111と計 測用端末 20の間の通信において輻輳が発生すると、計測用パケットのロスが高まり、 計測用端末 20にて十分な計測を行うことが困難になる。加えて、他の通信が行われ ている場合には、その通信に悪影響を及ぼす場合がある。場合によっては、計測用 端末 20が資源不足状態に陥る場合がある。
[0016] また、計測用端末 20が複数台のノードからフロー情報を受信するようなシステムを 構築した場合には、輻輳の被害はさらに大きくなる。
[0017] 一方、輻輳制御機能を持つ TCPや SCTPをトランスポートプロトコルとして利用した 場合は、ノード 111と計測用端末 20の間の通信において輻輳は発生しない。しかし 、輻輳制御機能によりノード 111の出力フロー数が制限されるため、上記異常時に観 測されたフロー数に対してノード 111が出力できるフロー数が少なくなる場合がある。 このように出力フロー数に比べて入力フロー数が多くなると、ノード 111の内部バッフ ァが破綻して計測情報の一部が欠落し、ノード 111は、計測したトラフィック全体の情 報を計測用端末 20へ正確に送信できない。 [0018] 本発明の目的は、上記問題を解決し、トラフィック全体の計測情報を保持したまま、 送信するフロー情報の数を制限することのできるフロー情報制限装置を提供すること にめ ·ο。
課題を解決するための手段
[0019] 上記目的を達成するため、本発明のフロー情報制限装置は、複数の端末を相互に 接続するネットワーク上に配置され、該ネットワークにおけるトラフィックを計測する測 定用端末に測定用ネットワークを介して接続されるフロー情報制限装置であって、同 一の属性を持つパケットの集合を同一の通信のフローとし、該フロー毎に、前記パケ ットのヘッダ情報に基づいてフロー情報を生成するフロー情報生成部と、前記フロー 情報生成部で生成したフロー情報を一時的に格納する管理用バッファを備え、該管 理用バッファからフロー情報を読み出して出力するフロー情報数制限部と、前記フロ 一情報数制限部から出力されたフロー情報をパケット化して前記測定用ネットワーク 上に送出するフロー情報送信部と、を有し、前記フロー情報数制限部は、前記管理 用バッファに格納されているフロー情報の数が予め設定された上限値を超えると、該 格納されているフロー情報を、非集約フロー情報と前記トラフィックの計測における重 要性が該非集約フロー情報より低い集約候補とに分け、該集約候補とされたフロー 情報を集約して、前記管理用バッファに保持されているフロー情報の数が一定数以 下になるように制御する。
[0020] 上記の構成にお!/、ては、攻撃トラフィックによりフローが増大し、それに伴ってフロ 一情報生成部によって生成されるフロー情報の数が増大する力 フロー情報数制限 部が、フロー情報生成部から入力されるフロー情報の数が増大すると、現在、格納し ているフロー情報を集約する。このフロー情報の集約により、フロー情報送信部には
、一定数以下のフロー情報しか供給されない。したがって、フロー情報送信部力 計 測用ネットワーク上に送出するフロー情報の数も一定数以下に制限される。
[0021] また、フロー情報送信部には、一定数以下のフロー情報しか供給されないので、フ ロー情報送信部内のバッファが溢れてフロー情報が欠落することもない。したがって 、トランスポートプロトコルに輻輳制御機能のある TCPや SCTPを用いた場合に生じて いた、フロー情報送信部内のバッファの破綻によるフロー情報の欠落のために、観測 したトラフィック全体の情報を正確に送信できない、と!/、つた問題も生じな!/、。
発明の効果
[0022] 本発明によれば、フローの増大に関係なぐ計測用ネットワーク上には、一定数以 下のフロー情報しか送信されないので、トランスポートプロトコルに輻輳制御機能のな V、UDPを用いた場合にお!/、て発生して!/、た計測用ネットワークにおける通信の輻輳 を才卬制すること力 Sでさる。
[0023] また、トランスポートプロトコルに輻輳制御機能のある TCPや SCTPを用いた場合に 生じていた、フロー情報送信部内のバッファの破綻によるフロー情報の欠落を抑制 することができるので、観測したトラフィック全体の情報を正確に測定用端末に送信 すること力 Sでさる。
図面の簡単な説明
[0024] [図 1]本発明が適用される情報通信システムの一例を示すブロック図である。
[図 2]本発明のフロー情報制限装置の一実施形態であるノードの構成を示すブロック 図である。
[図 3]図 2に示すフロー情報数制限機能部にて管理される管理用バッファの構造の一 例を示す模式図である。
[図 4]フロー情報およびデータ構造定義情報を説明するための図である。
[図 5]オプション情報による通知方法を説明するための図である。
[図 6]条件優先度を付与した定義情報およびそれにより展開されて使用される条件の 一例を示す模式図である。
[図 7]条件優先度を付与した定義情報およびそれにより展開されて使用される条件の 別の例を示す模式図である。
[図 8]優先順位に関する外部入力を受け付けることのできるフロー情報処理部の構成 を示すブロック図である。
[図 9]定義情報の入力形式を説明するための図である。
[図 10]定義情報の別の入力形式を説明するための図である。
[図 11]図 2に示すフロー情報数制限機能部にて行われるフロー情報集約処理の一 手順を示すフローチャートである。 [図 12]図 2に示すフロー情報数制限機能部によるフロー情報の集約の一例を示す模 式図である。
[図 13]図 2に示すフロー情報数制限機能部によるフロー情報の集約の別の例を示す 模式図である。
[図 14]図 2に示すフロー情報数制限機能部によるフロー情報の集約の他の例を示す 模式図である。
[図 15]検索用インデックスの作成手順を説明するための図である。
[図 16]検索用インデックスの別の作成手順を説明するための図である。
[図 17]条件毎にツリー構造を作り直す場合の効率低下を抑制する方法を説明するた めの図である。
[図 18]ポートを集約する例を示す模式図である。
[図 19]アドレスを集約する例を示す模式図である。
[図 20]計測用ネットワークを含む情報通信システムの一般的な構成を示すブロック図 である。
符号の説明
[0025] 10 インターネット
11— 14 ノード
20 計測用端末
30, 41—43 端末
200 フロー情報処理部
201 計測用ネットワークインタフェース
202 フロー生成機能部
203 フロー情報数制限機能部
204 フロー送信機能部
205 出力用ネットワークインタフェース
発明を実施するための最良の形態
[0026] 次に、本発明の実施形態について図面を参照して説明する。
[0027] 図 1は、本発明が適用される情報通信システムの一例を示す図である。この情報通 信システムは、ノード 111に代えてノード 11を設けた以外は、図 20に示したシステム と同様のものである。インターネット 10は、パケット転送を行う複数のノード 11〜; 14を 含む複数のネットワーク同士を相互に接続したものである。ノード 11〜; 14は相互に 通信可能に接続されている。ノード 11には、計測用端末 20および端末 30が接続さ れている。
[0028] この情報通信システムでは、ノード 11がフロー情報集約機能を備えたフロー情報処 理部 200を有しており、この点が、図 20に示した情報通信システムと異なる。
[0029] 図 2に、本発明のフロー情報制限装置の一実施形態であるノード 11のフロー情報 処理部 200の構成を示す。図 2を参照すると、フロー情報処理部 200は、計測用ネッ トワークインタフェース 201、フロー生成機能部 202、フロー情報数制限機能部 203、 フロー送信機能部 204および出力用ネットワークインタフェース 205を有する。
[0030] 計測用ネットワークインタフェース 201は、各端末からインターネット 100を通じて到 達するパケットをそれぞれ収集する複数のネットワークインタフェースからなる。計測 用ネットワークインタフェース 201で収集されたパケットはフロー生成機能部 202に供 糸 m る。
[0031] フロー生成機能部 202は、 NetFlow, IPFK等のフロー通知プロトコルを利用する既 存の送信機器が備えているフロー生成機能部であって、計測用ネットワークインタフ エース 201を通じて収集されたパケットのヘッダ情報に基づいてフロー情報を生成す る。具体的には、フロー生成機能部 202は、プロトコル、ソース IPアドレス、宛先 IPァ ドレス、ソースポートおよび宛先ポートなど、パケットのヘッダに含まれる情報、または 経路情報などのパケットのヘッダから判断される情報が同一のパケットを同一の通信 に属するパケットと見なして、そのパケットの集合であるフローについての情報(フロ 一情報)を生成する。このフロー情報の生成では、フロー化するための条件に基づく 時間情報の更新などの処理も行われる。一般的にフロー情報は、プロトコル、ソース I Pアドレス、宛先 IPアドレス、ソースポートおよび宛先ポートの各情報を含む場合が多 い。フロー生成機能部 202で生成されたフロー情報は、フロー情報数制限機能部 20 3に供給される。
[0032] フロー情報数制限機能部 203は、フロー生成機能部 202から入力されるフロー情 報を一時的に格納して管理するための管理用バッファ部を備え、該管理用バッファ 部からフロー情報を読み出してフロー送信機能部 204へ供給する。管理用バッファ 部にて管理するフロー情報の数の上限値が予め設定されており、フロー情報数制限 機能部 203は、フロー生成機能部 202から一定時間あたりに供給されるフロー情報 の数が増大して、管理用バッファ部に格納されて管理されているフロー情報の数が 上限値を超えると、管理用バッファ部に格納されているフロー情報群を集約候補と非 集約フロー情報とに分け、集約候補について集約処理を行う。上限値は、計測用ネ ットワークの通信能力(ノード 11と計測用端末 20の間のネットワークの通信能力)、フ ロー送信機能部 204の処理能力および管理用バッファ部からの読み出し速度などを 考慮し、管理用バッファ部やフロー送信機能部 204の内部バッファが破綻せず、計 測用ネットワークの通信に輻輳が生じないような値とされる。集約候補のトラフィックの 計測における重要性は、非集約フロー情報より低い。
[0033] フロー送信機能部 204は、 NetFlow, IPFK等のフロー通知プロトコルを利用する既 存の送信機器が備えてレ、るフロー送信機能部であって、フロー情報数制限機能部 2 03から供給されたフロー情報を一時的に格納するための内部バッファを備え、内部 ノ ッファから読み出したフロー情報を適切なサイズにパケット化して計測用パケットを 生成し、該計測用パケットに専用のヘッダを付与して出力用ネットワークインタフエ一 ス 205からネットワーク上に送出する。出力用ネットワークインタフェース 205から送出 された計測用パケットは、計測用端末 20に供給される。計測用ネットワークインタフエ ース 201と出力用ネットワークインタフェース 205は物理的に同じものであってもよい
[0034] フロー生成機能部 202が生成したフロー情報を格納するバッファ、フロー情報制限 機能部 203が管理するための管理用バッファ部、フロー送信機能部 204がフロー情 報を一時的に格納するためのバッファはその記憶領域の一部または全体がそれぞ れ独立して!/、ても共有されて!/、てもよ!/、。
[0035] 次に、ノード 11の動作を具体的に説明する。
[0036] ノード 11では、フロー情報数制限機能部 203が、フロー生成機能部 202から入力さ れるフロー情報の数に関係なぐフロー送信機能部 204に対して、一定数以下のフロ 一情報しか送信しないので、ノード 11から計測用端末 20へ送信される計測用バケツ トの量も一定数以下に制限される。
[0037] 図 3に、フロー情報数制限機能部 203にて管理される管理用バッファの構造の一 例を示す。管理用バッファは、フロー生成機能部 202から入力されるフロー情報が計 測目的に応じた順位付けに基づいて並び替えられて格納されるバッファ B1と、フロ 一生成条件の各項目の組み合わせからなる、集約する条件に含まれる比較項目の 異なる複数の集約条件のそれぞれに対応して設けられたバッファ B2〜B7とを有す
[0038] ノ ッファ B1は、非集約 B1— 1と集約候補 B1— 2とからなる。バッファ B1に格納され る各フロー情報は、フロー生成機能部 202でのフロー情報の生成において用いた、 同一の通信に属するパケットを識別するための条件 (フロー生成条件)を満たすフロ 一情報である。ここでは、フロー生成条件は、プロトコル、ソース IPアドレス、宛先 IPァ ドレス、ソースポートおよび宛先ポートの 5つの項目に関する条件とされている。
[0039] なお、フロー生成条件は、上記の 5つの項目に限定されるものではない。マックアド レス、 IPアドレス、ポート番号などを始めとしたパケットヘッダに基づく情報、または、 それら情報から判断されるネクストホップや AS番号などの経路制御に関する情報な どを、フロー生成条件として利用することができる。同様に、集約済みの情報を管理 するバッファも元の条件の項目の一部を削除して作成されるため、図 3中のバッファ B 2〜B7に例示する条件に限定されるものではない。
[0040] NetFlow, IPFKといったフロー情報を他の機器に通知するためのプロトコルを用い た場合、計測用端末 20に対しては、観測されたトラフィックのフロー情報と、そのフロ 一情報のフォーマットを定義するためのデータ構造定義情報(テンプレートと呼ばれ る)力送られる。
[0041] 図 4に、フロー情報およびデータ構造定義情報の一例を示す。この定義情報によ れば、定義情報'フロー情報共通の 4バイトのヘッダの後に、定義情報用の 4バイトの ヘッダが続き、その後に、フロー情報を構成する項目が列挙される。
[0042] 定義情報'フロー情報共通の 4バイトのヘッダでは、 SetlDと呼ばれる IDが 2バイトで 示され、次の 2バイトで情報の長さが示される。 SetlDは、通常の定義情報か、後述す るオプション用定義情報力、、それら定義情報に対応するフロー情報 ·オプション情報 力、を区別するために用いられる。 NetFlowの場合は、 0が通常の定義情報に対応し、 1がオプション情報に対応し、 256以上の値がフロー情報.オプション情報に対応す る。 IPFIXの場合は、 2が通常の定義情報に対応し、 3がオプション情報に対応し、 25 6以上の値がフロー情報 'オプション情報に対応する。
[0043] 定義情報'フロー情報共通の 4バイトのヘッダに続く通常の定義情報用のヘッダは 、 2バイトのテンプレート IDと 2バイトのフィールドカウントで構成される。 2バイトのテン プレート IDは、どのフロー情報のデータ構造を定義するかを示すためのものであり、 対応するフロー情報の SetIDと同一になる。フィールドカウントは、これに続く項目数を 示す。
[0044] フィールド情報を構成する各項目は 4バイトごとに 1つの情報を表す。 4バイトのうち の前半の 2バイトは項目の IDを表し、後半の 2バイトは項目のサイズ (バイト数)を表す 。図 4に示した例では、フィールド情報を構成する項目が 12個あり、それぞれの項目 の IDおよびバイト数が示されている。例えば、最初の項目では、 IPv4のソースアドレス を示す sourceIPv4Address (ID: 8番)力 バイトであることが示され、次の項目では、 IP v4の宛先アドレスを示す destinationIPv4Address (ID: 12番)力 バイトであることが示 されている。このように各項目によりフロー情報のデータ構造が定義されている。
[0045] 図 4に示したフィールド情報を構成する各項目の全てがフロー生成条件として利用 されるわけではない。例えば、パケット量やバイト量を示すカウンタ(図 4中の packetD eltaCount (ID: 2番)、 octetDeltaCount(ID: 1番))や時間情報(図 4中の flowStartSysU pTime (ID: 22番、 flowEndSysUpTime (ID: 21番) )は、フロー生成条件として利用する ことはできない。これ以外の項目についても、必ずしも全てフロー生成条件として利 用するわけではなぐ IPFKの場合、別のオプション情報によって明示的にフロー生 成条件となる項目が通知される。なお、 NetFlowでは、そのような通知機能はないた め、機器実装依存となる。 IPFKの場合、フロー生成条件となる項目はフローキーと呼 ばれている。
[0046] 図 5に、オプション情報による通知方法を模式的に示す。オプション情報を示す場 合、オプションデータ構造定義情報とオプション情報の関係は、通常のフローデータ 構造定義情報とフロー情報の関係と同じである。但し、オプション情報には、スコープ と呼ばれる情報の範囲を示す情報が付与される。
[0047] オプションデータ構造定義情報は、フィールドカウントに続いて、 2バイトのスコープ フィールドカウントが付与され、その後に項目が列挙される。項目のうち最初のスコー プフィールドカウントが付与された数がスコープになる。図 5に示した例では、 Templat elD (上述のテンプレート IDと用途は同じ)がスコープとなる。また、フロー生成条件を 示す flowKeylndicatorが定義される。
[0048] オプションデータ構造定義情報に従ってオプション情報のフォーマットが作成され、 オプション情報として具体的な値が設定される。例えば、図 4に示したフロー情報に 対するオプション情報を示すためには、 TemplatelDに対応する値は 256になる。 flow Keylndicatorは、 64bitのビットマップになっており、 lbitずつ 1項目がフロー生成条件 として利用することができるかを示す。つまり、 flowKeylndicatorは、先頭から最大 64 個の項目に関して、フロー生成条件として利用しているか否かを示す情報を設定す ること力 Sでさる。
[0049] 図 4に示した定義情報のうち、 sourceIPv4Address、 destinationIPv4Address、 protoc olIdentiner、 sourceTransportPort、 destinationTransportPort力スロー生成条件で、ある 場合、それぞれ先頭から 1番目、 2番目、 6番目、 7番目、 8番目に位置するため、 flow Keylndicatorのデータは lbit目、 2bit目、 6bit目、 7bit目、 8bit目がそれぞれ 1になる。
[0050] これらのフロー情報通知用プロトコルを用いる場合、利用者は、送信したいフロー 情報に含める項目の IDとサイズを指定することになる。本実施形態では、さらに、フロ 一生成条件に用いる条件に対して、利用者によって設定された優先順位を付与する 。この優先順位の低レ、ものから条件を削除することで新しレ、条件を作成する。
[0051] 図 6および図 7に、条件優先度を付与した定義情報およびそれにより展開されて使 用される条件の一例を示す。
[0052] 図 6 ίこ不す列で (ま、 sourceIPv4Address、 destinationIPv4Aadress、 protocolldentifier 、 sourceTransportPort、 destinationTransportPortの 5つの項目にメ寸し飞条件の優先 順位として異なる値が与えられて!/、る。この優先順位に従えば、削減数が 0の場合、 削減数が 1の場合、削減数が 2の場合、削減数が 3の場合、削減数力 の場合のそれ ぞれで 1つの条件の組が生成されるので、最大で 5つの条件の組が生成されることに なる。
[0053] 複数の項目に対して同じ優先順位が与えられた場合は、同一優先順位の項目は 排他的に利用される。図 7に示す例では、 sourceIPv4Addressおよび destinationIPv4 Addressの項目の優先順位が 2とされ、 protocolldentifierの項目の優先順位が 1とされ 、 sourceTransportPortおよび destinationTransportPortの項目の優先 J噴位が 4とされ ている。この優先順位に従えば、削減数が 0の場合に 1つの条件の組が生成され、削 減数が 1の場合に 2つの条件の組が生成され、削減数が 2の場合に 1つの条件の組 が生成され、削減数が 3の場合に 2つの条件の組が生成され、削減数力 の場合に 1 つの条件の組が生成されるので、最大で 7つの条件の組が生成されることになる。
[0054] これら優先順位に関する外部入力を受け付けるために、フロー情報処理部 200を 図 8に示すような構成としてもよい。図 8に示すフロー情報処理部 200は、図 2に示し た構成に加えて制御部 206を備える。フロー生成機能部 202、フロー情報数制限機 能部 203およびフロー送信機能部 204のそれぞれは、制御部 206との間で情報を送 受信する。定義情報の入力形式は、図 9に示すような cvs (カンマ区切りテキスト)ゃス ペース ·タブ区切りテキストであてもよぐまた、図 10に示すような、 XMLなどの記述 言語を用いたものであってもよい。図 10に示す例は、 IETFに提案されている" Config uration Data Model for IPFIX and PSAMP" (http://tools.ietf.org/wg/ipfix/draft_mue nz_ipfix_configuration_01.txt (2006年 5月 15曰入手) )の記述方式に、 flowKeyPrece denceという条件の優先順位を示す要素を独自に追加したものである。
[0055] フロー生成機能部 202で生成された情報は、フロー情報数制限機能部 203に供給 され、そこで、フロー送信機能部 204に送信される前に、フロー集約条件において削 除された項目がテンプレートから削除される力、、または、 flowKeylndicatorのビットマツ プから除外される。これらは全て、異なるテンプレートとして扱う必要があるため、フロ 一送信機能部 204で異なったテンプレート IDが付与されて出力用ネットワークインタ フェース 205経由で送信される。このように、フロー情報数制限機能部 203が、フロー 生成機能部 202が行うフロー情報の生成に用いられるパケットの属性に対応する項 目と外部入力された該項目の優先順位とを保持し、該優先順位が最下位の項目をフ ロー情報の生成の項目から削除する処理を繰り返して行うことで、比較項目を段階的 に変更する。
[0056] 計測目的に応じた並び替えでは、例えば、計測目的が DoS等の攻撃により通信さ れるデータ量が増大したトラフィックの検出である場合は、フロー情報に含まれてレ、る データ量の大小関係に基づいてフロー情報を並び替える。計測目的力 STCP SYN Do S等の攻撃に関するトラフィックの検出である場合は、フロー情報に含まれている SYN 等のメッセージの数の大小関係に基づいてフロー情報を並び替える。計測目的が複 数の項目からなる場合は、フロー情報に含まれている、それぞれの項目のデータの 数に対して、優先順位や重み付けを行った上で、フロー情報を並び替える。さらにそ れらの値の標準偏差 ·分散値などの統計値も並び替えの指標として利用できる。並 び替えの方法も目的に応じて降順、昇順を切り替えることが可能である。
[0057] 非集約 B1— 1には、外部から与えられた非集約数に基づき、並び替えが行われた フロー情報群の上位非集約数個のフロー情報が非集約フロー情報として格納され、 集約候補 B1 2には、並び替えが行われたフロー情報群の非集約フロー情報以外 のフロー情報が集約候補として格納される。図 3中、非集約 B1— 1および集約候補 B 1 2に格納された情報フローは、図面に向かつて左側に行くほど順位が低く、右側 ほど順位が高くなつている。
[0058] バッファ B2には、フロー生成条件のうちの、プロトコル、ソースアドレス、宛先アドレ スおよび宛先ポートの 4つの項目(集約条件)が合致するフロー情報を集約した集約 済みフロー情報群が格納される。バッファ B3には、フロー生成条件のうちの、プロトコ ノレ、ソースアドレス、宛先アドレスおよびソースポートの 4つの項目(集約条件)が合致 するフロー情報を集約した集約済みフロー情報群が格納される。
[0059] バッファ B4には、フロー生成条件のうちの、プロトコル、ソースアドレスおよび宛先ァ ドレスの 3つの項目(集約条件)が合致するフロー情報を集約した集約済みフロー情 報群が格納される。バッファ B5には、フロー生成条件のうちの、プロトコルおよび宛先 アドレスの 2つの項目(集約条件)が合致するフロー情報を集約した集約済みフロー 情報群が格納される。ノ ッファ B6には、フロー生成条件のうちの、プロトコルおよびソ ースアドレスの 2つの項目(集約条件)が合致するフロー情報を集約した集約済みフ ロー情報群が格納される。バッファ B7には、フロー生成条件のうちのプロトコル (集約 条件)が合致するフロー情報を集約した集約済みフロー情報群が格納される。
[0060] 集約条件は、条件を構成する項目が多い方から、ノ ッファ B2、 B3、 B4、 B5、 B6、 B7の順番となっている。図 3中では、図面に向かって上側ほど、条件を構成する項 目が多くなつており、下側ほど、条件を構成する項目が少なくなつている。
[0061] 管理用バッファ部に格納されて管理されているフロー情報の数が上限値以下であ る場合は、フロー情報数制限機能部 203は、バッファ B1からフロー情報を順次読み 出してフロー送信機能部 204に供給する。管理用バッファ部に格納されて管理され ているフロー情報の数が上限値を超えた場合は、フロー情報数制限機能部 203は、 ノ ッファ B1に格納されているフロー情報に対して計測目的に応じた並び替えを行い 、上位のフロー情報を非集約 B1— 1に格納し、下位のフロー情報を集約候補 B1— 2 に格納する。そして、集約候補 B1— 2に格納したフロー情報 (集約候補)に対して、 フロー情報集約処理を実行する。非集約 B1— 1に格納したフロー情報は、集約され ることなぐ順次読み出されて、フロー送信機能部 204に供給される。
[0062] なお、ここでは、管理されているフロー情報の数が上限値を超えた場合にバッファ B 1に格納されて!/、るフロー情報の並び替えを行うようになって!/、る力 S、揷入ソート等の アルゴリズムを用いて、フロー生成機能部 202から供給されるフロー情報を並び替え た状態でバッファ B1に格納するようにしてもよ!/、。
[0063] 次に、フロー情報数制限機能部 203にて行われるフロー情報集約処理について具 体的に説明する。図 11に、そのフロー情報集約処理の一手順を示す。
[0064] まず、管理用バッファ部に格納されて管理されているフロー情報の数が上限値を超 えたか否かを判断する (ステップ Sl)。この判断は、一定時間おき、または、フロー生 成機能部 202からフロー情報が入力されるたびに行われる。
[0065] 管理されているフロー情報の数が上限値を超えた場合は、バッファ B1に格納され ているフロー情報の並び替えを行って集約候補と非集約フロー情報に分ける (ステツ プ S2)。次に、集約候補のうちの順位の一番低いフロー情報を集約対象として抽出 する (ステップ S3)。次に、初期集約条件を設定する (ステップ S4)。初期集約条件は 、フロー生成条件より 1つ項目の少ない条件であり、具体的には、図 3に示したバッフ ァ B2に関する集約条件である。次に、検索対象バッファとして集約条件に対応する ノ ッファを設定する(ステップ S 5)。図 3に示したバッファ B2に関する集約条件が設定 された場合は、バッファ B2が検索対象バッファとなる。
[0066] 次に、検索対象バッファ内に、集約対象と設定された集約条件の全項目が一致す る集約済みフロー情報があるか否力、を判定する (ステップ S6)。集約条件の全項目が 一致する集約済みフロー情報がある場合は、集約対象をその集約済みフロー情報と 集約して現在設定されている集約条件に対応するバッファに格納する(ステップ S7) 。検索時に集約条件の全項目がー致する集約済みフロー情報が複数検索された場 合は、それら全ての集約済みフロー情報と集約対象とを集約する。
[0067] ステップ S6で集約条件の全項目がー致する集約済みフロー情報がな!/、と判断され た場合は、ステップ S 5で設定した対象バッファが集約候補 B1— 2であるか否かを判 断する(ステップ S8)。対象バッファが集約候補 B1— 2でない場合は、検索対象バッ ファとして現在より 1つ上位のバッファ(条件を構成する項目が多いバッファ)を設定し (ステップ S9)、ステップ S6に移行する。
[0068] ステップ S8で対象バッファが集約候補 B1—2であると判断した場合は、現在設定さ れて!/、る集約条件が、条件を構成する項目が最も少な!/、条件であるか否かを判断す る(ステップ S10)。集約条件が、条件を構成する項目が最も少な!/、条件でな!/ヽ場合 は、集約条件を現在よりも項目が 1つ少ない条件に変更し (ステップ S 11)、ステップ S 5に移行する。集約条件が、条件を構成する項目が最も少ない条件である場合は、 集約対象を、条件を構成する項目が最も少な!/、条件のバッファに格納する (ステップ S 12)。
[0069] 以上のフロー情報集約処理を、図 3に示した管理用バッファを例に、具体的に説明 する。
[0070] ステップ S2で、上位のフロー情報を非集約 B1— 1に格納し、下位のフロー情報を 集約候補 B1— 2に格納した後、ステップ S3で、集約候補 B1— 2に格納したフロー情 報のうちから順位の一番低いフロー情報を集約対象として抽出する。図 3中、集約候 補 B1— 2内の、最も左側に位置するフロー情報が集約対象となる。
[0071] 次に、ステップ S4で、初期集約条件として、フロー生成条件に比べて、条件を構成 する項目が 1つ少ない条件 (バッファ B2の集約条件)が設定される。すなわち、初期 集約条件として、フロー生成条件のうちの、プロトコル、ソースアドレス、宛先アドレス および宛先ポートの 4つの項目が設定される。次に、ステップ S5で、検索対象バッフ ァとして、設定された集約条件に対応するバッファを設定し、ステップ S6で、そのバッ ファを検索する。この段階では、ステップ S4で設定した初期集約条件に対応するバ ッファ B2内に、集約対象と初期集約条件の全項目がー致する集約済みフロー情報 があるか否かの判定が行われる。図 12に、バッファ B2内の左から 4番目の集約済み フロー情報が、集約対象と一致する状態が示されている。この場合、集約対象は、そ の 4番目の集約済みフロー情報に集約される。なお、集約対象は、集約候補 B1— 2 力 削除される。
[0072] ステップ S6での判定で「該当フロー無し」となった場合は、ステップ S8で、検索対象 ノ ッファが集約候補 B1— 2であるか否か判断される。検索対象バッファが集約候補 B 1—2でない場合は、ステップ S8で現在より 1つ上位のバッファを検索対象バッファに 設定し、ステップ S6に移行して該当フローがあるか否かを判断する。図 13に、集約 候補 B1— 2内の左から 5番目のフロー情報力 S、集約対象と一致する状態が示されて いる。この場合、集約対象および 5番目のフロー情報が集約されて集約済みフロー 情報としてバッファ B2に格納される。なお、集約対象および 5番目のフロー情報は、 集約候補 B1— 2から削除される。なお、上位のバッファの検索において、集約対象と 合致するフロー情報が複数存在する場合がある。そのような場合は、それら複数のフ ロー情報のすべてを集約対象と集約する。
[0073] ステップ S6での判定で「該当フロー無し」となり、ステップ S8での判定で対象バッフ ァが集約候補であると判断された場合は、ステップ S10で、集約条件が、条件を構成 する項目が最も少ない条件 (バッファ B7に対応する集約条件)であるかが判断される 。集約条件が、条件を構成する項目が最も少ない条件でない場合は、ステップ S11 で、集約条件を現在より 1つ項目の少ない条件に変更し、ステップ S5に移行して、そ の変更した集約条件に対応するバッファを検索対象バッファに設定する。例えば、バ ッファ B2の集約条件が初期集約条件として設定された場合において、バッファ B2内 に検索対象と集約条件の一致する集約済みフロー情報がなぐかつ、集約候補 B1 2にも検索対象と集約条件の一致するフロー情報がない場合は、集約条件は、現 在より 1つ項目の少ない条件であるバッファ B3の集約条件に変更され、集約対象バ ッファはバッファ B3に設定される。そして、変更された集約条件で、バッファ B3内の 検索が行われる。図 14に、バッファ B3に対する検索の状態が示されている。この例 では、バッファ B3には、集約対象と集約条件の一致する集約済みフロー情報はない ため、ステップ S6での判断は「該当フロー無し」となる。
[0074] ステップ S6〜S9のループで、ステップ S4またはステップ S 11で設定した集約条件 で、対象となるバッファの条件を段階的に変更する。また、ステップ S5〜S 11のルー プで、集約条件を段階的に変更する。この対象バッファおよび集約条件の段階的な 変更により、集約に伴うフロー情報の欠落量を最小限にし、計測対象であるトラフイツ クにおける重要な情報を保持することが可能となっている。
[0075] また、この集約処理によれば、集約条件の項目数が必要以上に少なくならずに、集 約対象を集約することができ、集約した分だけフロー情報の数が減少する。なお、図 3、図 12〜図 14に示したバッファの構成の例、図 11に示したアルゴリズムの例では、 複数のバッファを移動して処理を行っている力 S、バッファ自体は 1つでバッファ内の各 フロー情報に集約の条件を示す IDを記録して識別する方法もある。全て集約の条件 を構成する項目が異なる場合は、基本的にフロー送信機能部で創出されるテンプレ ートが異なることになり、その際、テンプレート IDが異なる。したがって、集約の条件を 示す IDはテンプレート IDに相当する値を使えば良い。また、同様に集約され使わなく なったフロー情報は、バッファから削除する方法と、実際には削除せず、情報が無効 である特別な有意の IDを付与して参照しない方法とがある。
[0076] 図 11に示した集約処理の変形例として、ステップ S2と S3の間で、初期のフロー情 報の集約を行うことも考えられる。フロー情報は、フロー生成'集約条件として使われ る項目が同じ値であっても、フローの終了によって別のフローとして数えられることが ある。例えば、次のような 2つの条件がある。
[0077] 一つは、 TCPなどのコネクション型プロトコルを用いる場合で、終了を示すメッセ一 ジ (TCPであれば、 F1N RSTなど)を観測した場合に、フローの終了として見なされる 。もう 1つは、一定時間毎にデータ送信を行うために、タイムアウト時間が設けられて いる場合で、このタイムアウト時間を越えたフローは一旦終了して、フロー生成'集約 条件として使われる項目が同じ値の別のフロー情報として数えられる。タイムアウト時 間としては、 UDPなどのコネクションレス型プロトコル用の非継続時間(最終パケット 力、らの経過時間)と TCPなどのコネクション型プロトコル用の継続時間(開始パケット 力、らの経過時間)の 2種類がある。これらの条件によって、フロー生成'集約条件とし て使われる項目が同じ値であっても、別々のフローとして分断される可能性がある。
[0078] フロー集約条件を必要以上に小さくせずに、フロー情報をできる限り保持することを 目的とする場合、集約条件削減の処理を行う前に、メッセージやタイムアウトによって 分断されたフローの集約を行うことで、集約条件削減の処理を行う必要がなくなる場 合がある。この場合は、フロー集約による情報の損失を最小限にとどめることができる
[0079] なお、図 11に示した集約処理の、集約条件の段階的な変化の処理過程において 、あらかじめ集約条件の項目が排他的である場合は、その項目についての検索は行 わない。例えば、バッファ B2の集約条件(プロトコル、ソースアドレス、宛先アドレスお よび宛先ポート)とバッファ B3の集約条件(プロトコル、ソースアドレス、宛先アドレス およびソースポート)は、項目数が同じであり、排他的である。したがって、ノ ッファ B3 に対応する集約条件での検索処理においてバッファ B2の検索はスキップすることが 望ましい。
[0080] また、ステップ S4で設定する初期集約条件は、プロトコル、ソースアドレス、宛先ァ ドレスおよびソースポートの 4つの項目に限定されるものでは当然ない。タイムアウト によって分断されたフローの集約を行う場合は、条件や優先度から導出される削減 数 0 (フロー生成条件と同一)の条件を構成する項目となり、タイムアウトによって分断 されたフローの集約を行わない場合は、削減数 1の条件を構成する項目となる。
[0081] 以上が基本的な条件削減方法である。この条件削減方法における処理の高速化を 行うために、検索用のインデックス(索引)を作成することが考えられる。検索用インデ ックスを利用することで、検索回数を削減することができる。
[0082] 検索用インデックスの作成には、例えば二分木のアルゴリズムを用いることができる 。バランスの取れた二分木によれば、 Log2Nの速度で検索を行うことが可能である。 複数の項目毎に情報を持つフロー情報を二分木に保持する場合、 2つの二分木の 構築方法が考えられる。一般に、二分木の構築方法では、既に格納済みの要素の 値と新規に揷入する要素の値を比較し、その大小関係によって格納位置を決定する
[0083] 第 1の構築方法は、複数項目のうち、優先順位が上位の項目から大小比較を行う 方法である。この第 1の構築方法では、結果として複数項目の優先順位が上位の項 目力、ら値を上位の桁にマッピングしていき、 1つの値に変換して、その値を大小比較 する。
[0084] 図 15は、第 1の構築方法によって作成される検索用インデックスを説明するための 図である。図 15に示す例では、フロー情報 A〜Eに関する項目として、 protocolldenti fier (f¾先川貝位は 1)、 destinationTransportPort (fe先)頓 は 2)、 sourceIPv4Address 優先順位は 3)、 destinationIPv4Address (優先順位は 4)、 sourceTransportPort (優先 順位は 5)の 5つの項目が与えられている。フロー情報 A〜Eの間には、優先順位は 設定されていない。これら項目に基づいて、検索用インデックスが以下の手順で作成 される。
[0085] まず、 Aのフローをインデックスに追加する。この Aは 1つめのフローとなるので、根 として設定される。
[0086] 次に、 Bのフローをインデックスに追加する。そして、 Aおよび Bの各フローの項目の 大小関係を優先順位の高!/、項目から順番に比較する。第 1優先順位の protocollden tifierおよび第 2優先順位の destinationTransportPortの項目は、 Aおよび Bのフロー 間で同じである。第 3優先順位の sourceIPv4Addressの項目について、 Aのフローに おける値「10.0.0.1」より Bのフローにおける値「10.0.0.2」の方が大きい。よって、 Aに 代えて Bを根とし、 Aは左側の葉とされる。
[0087] 次に、 Cのフローをインデックスに追加する。そして、 Bおよび Cの各フローの項目の 大小関係を優先順位の高!/、項目から順番に比較する。第 1優先順位の protocollden tifierの項目について、 Bのフローにおける値「6」より Cのフローにおける値「17」の方 が大きい。よって、 Cは右側の葉とされる。
[0088] 次に、 Dのフローをインデックスに追加する。そして、 Bおよび Dの各フローの項目の 大小関係を優先順位の高!/、項目から順番に比較する。第 1優先順位の protocollden tifierの項目について、 Bのフローにおける値「6」より Dのフローにおける値「17」の方 が大きい。よって、 Dは右側の配置となる。ここで、右側には既に Cが存在するので、 この Cと Dの各フローの項目の大小関係を優先順位の高い項目力、ら順番に比較する 。第 2優先順位の destinationTransportPortの項目について、 Dのフローにおける値「 10.0.0.1」より Cのフローにおける値「192.168.0.1」の方が大きい。よって、 Dは Cの左 側の葉とされる。
[0089] 最後に、 Eのフローをインデックスに追加する。そして、 Bおよび Eの各フローの項目 の大小関係を優先順位の高!/、項目から順番に比較する。第 1優先順位の protocolld entifierの項目について、 Eのフローにおける値「1」より Bのフローにおける値「6」の方 が大きい。よって、 Eは左側の配置となる。ここで、左側には既に Aが存在するので、 この Aと Eの各フローの項目の大小関係を優先順位の高い項目力、ら順番に比較する 。第 1優先順位の protocolldentifierの項目について、 Eのフローにおける値「1」より A のフローにおける値「6」の方が大きい。よって、 Eは、 Aの左側の葉とされる。
[0090] 第 2の構築方法は、最上位の項目から二分木を作成し、それ以下の項目は、上位 の項目の葉を根とする方法である。図 16に、第 2の構築方法によって作成される検 索用インデックスを説明するための図である。図 16に示す例においても、フロー情報 A〜Eに関する項目として、図 15に示した例と同様の優先順位を有する 5つの項目 が与えられており、これら項目に基づいて、検索用インデックスが以下の手順で作成 される。
[0091] まず、 Aのフローをインデックスに追加する。ツリーの頂点となるポインタとして第 1優 先順位の protocolldentifierの要素(値: 6)が追加され、このツリーの頂点となるポイン タはその要素を指す。さらにその要素は、第 2優先順位を指すポインタを保有する。 同様にして、第 2優先順位の destinationTransportPortの要素(値: 192.168.0.1)、第 3 優先順位の sourceIPv4Addresの要素(値: 10.0.0.1)、第 4優先順位の destinationIPv4 Addressの要素(値: 80)、第 5優先順位の sourceTransportPortの要素(値: 23456)力 S 追加され、そのツリーの下に要素番号 (値: A)を示す要素が追加される。
[0092] 次に、 Bのフローを追加する。第 1優先順位の protocolldentifierの要素(値: 6)、 第 2優先順位の destinationTransportPortの要素(値: 192· 168.0.1)は、 Aのフローと 同じであるため、 Aと同じツリーの要素をたどる。第 3優先順位の sourceIPv4Addresの 要素(値: 10.0.0.2)は、既存の要素の「10.0.0.1」の右側の葉とされる。これ以降の優 先順位の要素は、 Aのフローと同様の手順で、右側の葉とされた要素に追加され、そ のツリーの下に要素番号 (値: B)を示す要素が追加される。
[0093] 次に、 Cのフローを追加する。第 1優先順位の protocolldentifierの要素(値: 17)は 既存の要素 (値: 6)より大きいため、右側の葉とされる。これ以降の優先順位の要素 は、 Aのフローと同様の手順で、右側の葉とされた要素に追加され、そのツリーの下 に要素番号 (値: C)を示す要素が追加される。
[0094] 次に、 Dのフローを追加する。第 1優先順位の protocolldentifierの要素(値: 17)は 、 Cのフローと同じであるため、 Cと同じツリーの要素をたどる。第 2優先順位の destina tionTransportPortの要素(値: 10.0.0.1)は、既存の要素(値: 192.168.0.1)より小さ!/、 ため、左側の葉とされる。これ以降の優先順位の要素は、 Aのフローと同様の手順で 、左側の葉とされた要素に追加され、そのツリーの下に要素番号 (値: D)を示す要素 が追加される。
[0095] 最後に、 Eのフローを追加する。第 1優先順位の protocolldentifierの要素(値: 1)は 既存の要素 (値: 6)より小さいため、左側の葉とされる。これ以降の優先順位の要素 は、 Aのフローと同様の手順で、左側の葉とされた要素に追加され、そのツリーの下 に要素番号 (値: E)を示す要素が追加される。
[0096] 上述した第 1および第 2の構築方法には、以下のような特徴がある。
[0097] 第 1の構築方法によれば、ツリー構造が単純で、ツリーが深くならずに済み、かつ、 ノ ランス(平衡木)を作成することができる。しかし、条件を構成する項目を削減して 新たな条件を作成する場合に、再度、ツリー構造を作り直す必要がある。
[0098] 一方、第 2の構築方法によれば、ツリーが深くなるが、重複する優先順位が存在し ない限り、一度ツリー構造を作成すれば、条件を削減しても、一部の葉を集約するこ とが可能であるので、再度ツリー構造を作り直す必要はない。また、例えば特定のポ ートを除外するといつた、項目毎に情報の取り扱い方を変更することができる。ただし 、第 2の構築方法は、優先順位が重複する場合には適用することができない。 [0099] 上述した第 1または第 2の構築方法によりインデックスを作成して保持し、フロー情 報の生成および集約の際にその保持しているインデックスを参照して条件の削減を 行うことで、生成および集約の処理の効率化を行うことが可能である。
[0100] 具体的には、フロー生成機能部は、管理用バッファに格納されているフロー情報に 対して、外部入力された項目の優先順位の順序に基づき、フロー情報が保持する項 目毎に大小比較を繰り返してフロー情報間の大小を判定し、その結果を検索用索引 として保持し、該検索用索引を参照してフロー情報の生成を行う。これにより、フロー 情報の生成の際の条件(項目の組み合わせ)の比較回数を削減することができ、結 果として、処理の効率化を図ることができる。
[0101] また、フロー情報数制限機能部は、管理用バッファに格納されているフロー情報に 対して、外部入力された項目の優先順位の順序に基づき、フロー情報が保持する項 目毎に大小比較を繰り返してフロー情報間の大小を判定し、その結果を検索用索引 として保持し、該検索用索引を参照してフロー情報の集約を行う。これにより、フロー 情報の集約の際の条件(項目の組み合わせ)の比較回数を削減することができ、結 果として、処理の効率化を図ることができる。
[0102] なお、第 1の構築方法において、条件毎にツリー構造を作り直す場合の効率低下 を最小限に抑制する方法として、過去の同一条件の集約候補数と条件毎のフロー情 報保持数を持つ方法がある。
[0103] この方法では、フロー情報数制限機能部が、既に保持している上限値と非集約数 を用いて算出される集約候補数と集約結果数及び、フロー情報制限時の集約条件 の各項目毎のフロー数の履歴を記録し、次回以降の集約時にその記録情報に基づ いて、検索用インデックスの作成時に用いる初期項目数を推測することで、検索用ィ ンデッタスの作成回数を削減する。
[0104] ここで、上限値は、最終的にフロー情報数制限機能部がフロー送信機能部に渡す フロー情報の数 (外部から与えられる力、、もしくは管理用バッファの容量から内部的に 決定される)である。非集約数は、並び替え後に上位に位置する非集約となるフロー 情報の数 (外部から与えられる)である。集約候補数は、フロー生成機能部が生成し たフロー情報の総数から非集約数を減算した値である。集約結果数は、集約した結 果の値、即ち上限値力 非集約数を減算した値である。
[0105] 以下、フロー情報数制限機能部による初期項目数の推測の処理を具体的に説明 する。
[0106] フロー情報数制限機能部は、各回毎に、生成されたフロー情報の総数から非集約 数を減算して求められる集約候補数、上限値から非集約数を減算して求められる集 約結果数、及び集約に用いた条件(フローキー)のうちの各情報の項目(Information Element)のそれぞれに関して、フロー情報の数を保持する。図 17に、フロー情報数 制限機能部が保持する情報の一例を示す。図 17に示す例では、集約候補数、集約 結果数、 protocolldentifier (優先順位は 1)、 destinationTransportPort (優先順位は 2 )、 sourceIPv4Address (優先順位は 3)、 destinationIPv4Address (優先順位は 4)、 sou rceTransportPort (優先順位は 5)と!/、つた各項目の情報につ!/、て、過去 5回分の情 報が記録される。
[0107] 例えば、直前の 1回の情報を参照すると、集約候補数が 120034とされ、集約結果 数が 20000とされる。そして、その集約結果数の内訳として、集約条件が第 1優先順 位までの項目を含んだ条件である protocolldentifierのみ(図 6の削減数 4の条件)を 用いて集約された結果のフロー数が 4とされ、集約条件が第 2優先順位までの項目を 含んだ条件(図 6の削減数 3の条件)を用いて集約された結果のフロー数が 6442とさ れ、集約条件が第 3優先順位までの項目を含んだ条件(図 6の削減数 2の条件)を用 いて集約された結果のフロー数が 12321とされ、集約条件が第 4優先順位までの項 目を含んだ条件(図 6の削減数 1の条件)を用いて集約された結果のフロー数が 123 3とされ、集約条件が第 5優先順位までの項目を含んだ条件(図 6の削減数 0の条件) を用いて集約された結果のフロー数が 0とされる。
[0108] フロー数が 0となった集約は結果的に必要のない集約とみなす。つまり、直前の 1回 の集約は、第 5優先順位までの項目を含んだ条件を省略し、第 4優先順位までの項 目を含んだ条件力 インデックスの作成を開始する。これにより、処理数が減り、処理 速度が向上する。
[0109] フロー情報数制限機能部では、過去の記録から集約を省略できる場合を判定する 。図 17に示した例では、直前の 1回、 3回、 5回において、第 5優先順位までの項目を 含んだ条件を用いた場合にフロー数が 0となっている。そして、 1回、 3回、 5回におけ る集約日寺の集約候ネ甫数はそれぞれ、 120034、 93898、 108270となっている。これ らの情報を参照すると、集約結果数力 ¾0000個である場合で、集約対象となるフロ 一情報数が、省略可能な状態の最小値である 93898個以上である場合は、第 4優 先順位までの項目を含んだ条件(すなわち、 protocolIdentifier、 protocolldentifier, de stinationTransportPort、 destinationIPv4Addressの項目の糸且み合わせ)力、らインアツク スを作り始めればよいと推測できる。この場合、第 5優先順位までの項目を含んだ条 件によるインデックスを作成する必要がなくなるので、その分、全体の処理を速くする こと力 Sでさる。
[0110] 以下、集約の一例を説明する。図 18に、ポートを集約する例を示す。図 18におい て、 Aおよび Bは、プロトコル、ソースアドレス、宛先アドレス、ソースポートおよび宛先 ポートの 5つの項目の条件(フロー生成条件)で生成されたフロー情報であり、 Cは、 これらフロー情報 A、 Bを、そのフロー生成条件の各項目を集約条件として集約した 集約済みフロー情報であり、この例ではソースポートが集約条件を構成する項目から 削除されている。「SA」はソースアドレスであり、「DA」は宛先アドレスであり、「SAMask 」および「DAMask」はネットマスクであり、「SP」はソースポートであり、「DP」は宛先ポ ートであり、「Packets」はパケット数であり、「octets」はバイト数であり、「First」はフロー の開始時間であり、「Last」はフローの終了時間である。
[0111] 集約済みフロー情報 Cでは、ソースポート「SP」の値は「0」とされ、パケット数「Packet s」およびバイト数「octets」はそれぞれ、フロー情報 A、 Bの対応する値を加算したもの とされる。また、開始時間「First」および終了時間「Last」は、フロー情報 A、 Bの対応 する時間の和集合となる範囲に設定される。この例では、フロー情報 Aの開始時間「 First Jおよび終了時間「Last」はそれぞれ「134598098987」および「134598100384」と され、フロー情報 Bの開始時間「First」および終了時間「Last」はそれぞれ「13459809 8222」および「134598100001」とされているので、集約済みフロー情報 Cの開始時間「 First Jおよび終了時間「Last」はそれぞれ「134598098222」および「134598100384」と される。このように、フロー情報 A、 Bについて、ソースポート「SP」、パケット数「Packets 」、バイト数「octets」、開始時間「First」および終了時間「Last」を集約することで集約 済みフロー情報 Cを得る。なお、この例では、フロー情報 A、 Bでソースポートに共通 項がないため、集約済みフロー情報 Cでは、ソースポートを「0」とした力 複数のフロ 一を集約する場合は、各フロー情報のうちデータ量など監視項目における任意の量 が最も多かったフローの集約項目の値を代表値として利用してもよぐソースポートの 例においては最もデータ量の多かったソースポート番号を設定してもよい。また、フロ 一の先頭パケットの情報を代表値として利用してもよいし、集約を行ったことを示す情 報を追加してもよい。集約条件を構成する項目を削減した際に、テンプレートから該 当するフィールド情報を構成する項目を削除する方式と、テンプレートからは削除せ ずにフローキーから削除する方式が考えられる。前者の場合は、削除された項目は 送信されないため、内部的にどのような値を持っていても構わない。後者の場合は、 削除された項目の代表値が送信される。なお、 IPFKプロトコルの規定によると、フロ 一キーとして用いなかった項目は、最初に観測された値を使うことを推奨している。
[0112] 図 19に、アドレスを集約する例を示す。図 19において、 Aおよび Bは、プロトコル、 ソースアドレス、宛先アドレス、ソースポートおよび宛先ポートの 5つの項目の条件(フ ロー生成条件)で生成されたフロー情報であり、 Cは、これらフロー情報 A、 Bを、その フロー生成条件のうちの、プロトコル、ソースアドレスおよび宛先アドレスの 3つの項目 を集約条件として集約した集約済みフロー情報である。
[0113] 集約済みフロー情報 Cでは、図 18に示した場合と同様に、ソースポート「SP」の値は 「0」とされ、パケット数「Packets」およびバイト数「octets」はそれぞれ、フロー情報 A、 Bの対応する値を加算したものとされ、開始時間「First」および終了時間「Last」は、フ ロー情報 A、 Bの対応する時間の和集合となる範囲に設定される。アドレスは、フロー 情報 A、 Bの対応するアドレスの値を積集合により得られる新たな値とされる。この例 では、フロー情報 Aの宛先アドレス「192.168.0.2」とフロー情報 Bの宛先アドレス「192. 168.0.254」の積集合により、新たな宛先アドレス「192· 168.0.0」を得る。このアドレス値 の変更に伴い、ネットマスク「SAMask」も「24」に変更される。上記のテンプレートから 削除する方式の場合は、集約条件を構成する項目力 削除された項目に関する情 報は送信されないため、上記同様に内部的にどのような値を持っていても構わない。 フローキーから除外する方式の場合は、ここで例示している IPv4環境下においては、 SAMaskが 32ビット以外の場合は、送出する項目はアドレスを示す項目(sourceIPv4A ddress)ではなく、プリフィックスを示す項目(sourceIPv4Prefix)に変更して表現しなけ ればならない。プリフィックスに変更しないのであれば、代表値を用いるべきであり、 積集合をとる前の代表値(上記の通りプロトコル規定によると先頭パケットの値が好ま しい。)を用いることになる。また、この場合は、 SAMaskもホストアドレスを示す 32が用 いられることになる。
[0114] なお、本方式において、一定数以下に制限する場合に、削減数が最も多い状態に おける集約条件を構成する項目が取りうる値の総数が上限値として一定数以下に制 限でさることを保障する最低ィ直となる。
[0115] 以上説明した本発明によれば、攻撃トラフィックによりフローが増大し、それに伴つ てフロー生成機能部によって生成されるフロー情報の数が増大する力 S、フロー情報 数制限機能部が、フロー生成機能部から入力されるフロー情報の数が増大すると、 現在、格納しているフロー情報の一部 (集約候補)を集約する。このフロー情報の集 約により、フロー送信機能部に供給されるフロー情報の一定時間あたりの数が一定 数以下に制限される。したがって、フロー送信機能部が、計測用ネットワーク上に送 出するフロー情報の一定時間あたりの数も一定数以下に制限される。このように、フ ローの増大に関係なぐ計測用ネットワーク上には、一定数以下のフロー情報しか送 信されないので、トランスポートプロトコルに輻輳制御機能のない UDPを用いた場合 において発生していた計測用ネットワークにおける通信の輻輳を抑制することができ
[0116] 加えて、トラフィックの計測において重要な情報を含むフロー情報は、集約の対象 から除外され、重要でないフロー情報を集約するようになっているので、計測目的に ぉレ、て、トラフィックを特徴付けるフロー情報は保持される。
[0117] さらに、集約する条件に含まれる比較項目が段階的に変更されるので、必要以上 に項目が少ない条件で集約されることがなぐ集約後のフロー情報における情報の 損失を必要最小限に抑えることができる。
[0118] また、フロー送信機能部には、一定数以下のフロー情報しか供給されないので、フ ロー送信機能部の内部バッファが溢れてフロー情報が欠落することもない。したがつ て、トランスポートプロトコルに輻輳制御機能のある TCPや SCTPを用いた場合に生 じていた、フロー送信機能部の内部バッファの破綻によるフロー情報の欠落のために 、観測したトラフィック全体の情報を正確に送信できない、といった問題も生じない。こ のように、トランスポートプロトコルに輻輳制御機能のある TCPや SCTPを用いた場合 に生じていた、フロー送信機能部の内部バッファの破綻によるフロー情報の欠落を抑 制することができるので、観測したトラフィック全体の情報を正確に測定用端末に送 信すること力 Sでさる。
[0119] 以上説明した本実施形態のフロー情報制限装置(ノード)は、本発明の一例であり
、その構成および動作は、本発明の趣旨を逸脱しない範囲で適宜に変更することが できる。
[0120] また、フロー生成機能部、フロー情報数制限機能部およびフロー送信機能部の各 機能部における処理は、コンピュータシステムを構成する制御装置が記憶装置に格 納されたプログラムを実行することで実現することが可能である。プログラムは、 CD— ROMや DVDなどのディスク型の記録媒体を通じて提供されてもよぐまた、インター ネットを通じて必要なプログラムをダウンロードすることで提供されてもよい。
[0121] また、フローの生成条件および集約条件の項目の一例として、プロトコル、ソース IP アドレス、宛先 IPアドレス、ソースポートおよび宛先ポートの 5つの項目を挙げたが、 本発明はこれに限定されるものではない。フローの生成条件および集約条件の項目 は、ヘッダ情報に基づいた情報を含むならば、これら以外の他の項目を含むもので あっても、これら項目を含まないものであってもよい。ヘッダ情報に基づく情報とは、 ヘッダそのものに含まれていなくても、ヘッダ情報から判断される情報も含まれる。一 例としては、経路制御情報などもヘッダ情報に基づく情報に含まれる。また、ヘッダ 情報は、ネットワーク層、トランスポート層に限定されず、それより下位及び上位のプ ロトコルも含む。また、フローの生成条件および集約条件の項目の数は、フローの生 成および集約が可能な範囲で適宜に設定することができる。
[0122] 本国際出願は、 2006年 11月 21日に出願された日本国特許出願第 2006— 3142 99号、及び 2007年 7月 31日に出願された日本国特許出願第 2007— 199499号 に基づく優先権を主張するものであり、その全内容を本国際出願に援用する。

Claims

請求の範囲
[1] 複数の端末を相互に接続するネットワーク上に配置され、該ネットワークにおけるト ラフィックを計測する測定用端末に測定用ネットワークを介して接続されるフロー情報 制限装置であって、
同一の属性を持つパケットの集合を同一の通信のフローとし、該フロー毎に、前記 パケットのヘッダ情報に基づいてフロー情報を生成するフロー情報生成部と、 前記フロー情報生成部で生成したフロー情報を一時的に格納する管理用バッファ を備え、該管理用バッファからフロー情報を読み出して出力するフロー情報数制限 部と、
前記フロー情報数制限部から出力されたフロー情報をパケット化して前記測定用ネ ットワーク上に送出するフロー情報送信部と、を有し、
前記フロー情報数制限部は、前記管理用バッファに格納されているフロー情報の 数が予め設定された上限値を超えると、該格納されているフロー情報を、非集約フロ 一情報と前記トラフィックの計測における重要性が該非集約フロー情報より低い集約 候補とに分け、該集約候補とされたフロー情報を集約して、前記管理用バッファに保 持されているフロー情報の数が一定数以下になるように制御する、フロー情報制限 装置。
[2] 前記フロー情報は、前記トラフィックの計測に必要な計測情報を含み、
前記フロー情報数制限部は、前記管理用バッファに格納されているフロー情報を 前記計測情報の量または統計値の大小関係に基づいて順位付けして並び替え、該 並び替えたフロー情報のうちの、上位のフロー情報を前記非集約フロー情報とし、下 位のフロー情報を前記集約候補とする、請求項 1に記載のフロー情報制限装置。
[3] 前記フロー情報数制限部は、前記フロー情報を集約する条件に含まれる比較項目 を段階的に変更する、請求項 1または 2に記載のフロー情報制限装置。
[4] 前記フロー情報数制限部は、前記フロー情報生成部が行うフロー情報の生成に用 いられるパケットの属性に対応する項目と外部入力された該項目の優先順位とを保 持し、該優先順位が最下位の項目を前記フロー情報の生成の項目から削除する処 理を繰り返して前記比較項目を段階的に変更する、請求項 3に記載のフロー情報制 限装置。
[5] 前記フロー情報生成部は、前記管理用バッファに格納されているフロー情報に対し て、外部入力された項目の優先順位の順序に基づき、該フロー情報が保持する項目 毎に大小比較を繰り返してフロー情報間の大小を判定し、該判定結果を検索用索引 として保持し、該検索用索引を参照して前記フロー情報の生成を行う、請求項 1に記 載のフロー情報制限装置。
[6] 前記フロー情報数制限部は、前記管理用バッファに格納されているフロー情報に 対して、外部入力された項目の優先順位の順序に基づき、該フロー情報が保持する 項目毎に大小比較を繰り返してフロー情報間の大小を判定し、該判定結果を検索用 索引として保持し、該検索用索引を参照して前記フロー情報の集約を行う、請求項 1 に記載のフロー情報制限装置。
[7] 前記フロー情報数制限部は、前記フロー情報生成部が生成したフロー情報の総数 力、ら並び替え後に上位に位置する非集約となるフロー情報の数である非集約数を減 算した値である集約候補数と、前記上限値力 前記非集約数を減算した値である集 約結果数と、フロー情報制限時の集約条件の各項目毎のフロー数とを含む情報の 履歴を記録し、該履歴に基づいて、次回の集約時における前記検索用索引の作成 に用いられる初期項目数を推測する、請求項 6に記載のフロー情報制限装置。
[8] 前記検索用索引が、優先度が上位の項目の葉を優先度が下位の項目の根とする 二分木のデータ構造を有する、請求項 5から 7のいずれか 1項に記載のフロー情報 制限装置。
[9] 前記フロー情報生成部は、前記ヘッダ情報を構成する、前記通信に使用されたプ ロトコル、ソースアドレス、宛先アドレス、ソースポートおよび宛先ポートの各項目が合 致するパケットの集合をフローとし、該フローの情報として、該各項目に関する情報を 含むフロー情報を生成し、
前記フロー情報数制限部は、前記各項目の組み合わせからなる、集約する条件に 含まれる比較項目の異なる複数の集約条件の範囲において、集約条件を変更して 前記集約候補とされたフロー情報を集約する、請求項 3に記載のフロー情報制限装 置。 複数の端末を相互に接続するネットワーク上に配置され、該ネットワークにおけるト ラフィックを計測する測定用端末に測定用ネットワークを介して接続される通信装置 において行われるフロー情報制限方法であって、
同一の属性を持つパケットの集合を同一の通信のフローとし、該フロー毎に、前記 パケットのヘッダ情報に基づいてフロー情報を生成する第 1のステップと、
前記第 1のステップで生成したフロー情報を一時的に管理用バッファに格納し、該 管理用バッファからフロー情報を読み出す第 2のステップと、
前記第 2のステップで出力したフロー情報をパケット化して前記測定用ネットワーク 上に送出する第 3のステップと、を含み、
前記第 2のステップは、前記管理用バッファに格納されているフロー情報の数が予 め設定された上限値を超えると、該格納されているフロー情報を、非集約フロー情報 と前記トラフィックの計測における重要性が該非集約フロー情報より低い集約候補と に分け、該集約候補とされたフロー情報を集約して、前記管理用バッファに保持され ているフロー情報の数が一定数以下になるように制御するステップを含む、フロー情 報制限方法。
PCT/JP2007/072456 2006-11-21 2007-11-20 Appareil et procédé de restriction d'informations de flux WO2008062787A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN2007800423057A CN101536437B (zh) 2006-11-21 2007-11-20 流信息限制装置以及方法
EP07832186A EP2086183B1 (en) 2006-11-21 2007-11-20 Flow information restricting apparatus and method
US12/514,883 US8239565B2 (en) 2006-11-21 2007-11-20 Flow record restriction apparatus and the method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2006314299 2006-11-21
JP2006-314299 2006-11-21
JP2007-199499 2007-07-31
JP2007199499A JP4658098B2 (ja) 2006-11-21 2007-07-31 フロー情報制限装置および方法

Publications (1)

Publication Number Publication Date
WO2008062787A1 true WO2008062787A1 (fr) 2008-05-29

Family

ID=39429717

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/072456 WO2008062787A1 (fr) 2006-11-21 2007-11-20 Appareil et procédé de restriction d'informations de flux

Country Status (6)

Country Link
US (1) US8239565B2 (ja)
EP (1) EP2086183B1 (ja)
JP (1) JP4658098B2 (ja)
KR (1) KR100997182B1 (ja)
CN (1) CN101536437B (ja)
WO (1) WO2008062787A1 (ja)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9026674B1 (en) * 2010-03-22 2015-05-05 Satish K Kanna System and method for accurately displaying communications traffic information
KR20090099519A (ko) * 2006-12-19 2009-09-22 인터내셔널 비지네스 머신즈 코포레이션 네트워크 흐름을 분석하기 위한 장치 및 방법
US9258217B2 (en) * 2008-12-16 2016-02-09 At&T Intellectual Property I, L.P. Systems and methods for rule-based anomaly detection on IP network flow
US8125920B2 (en) * 2009-03-04 2012-02-28 Cisco Technology, Inc. System and method for exporting structured data in a network environment
US8443434B1 (en) * 2009-10-06 2013-05-14 Palo Alto Networks, Inc. High availability security device
US8724487B1 (en) 2010-02-15 2014-05-13 Cisco Technology, Inc. System and method for synchronized reporting in a network environment
CN102075412B (zh) * 2010-10-22 2013-06-19 北京神州绿盟信息安全科技股份有限公司 一种网络数据传输速率控制设备及方法
KR101433420B1 (ko) * 2010-11-16 2014-08-28 한국전자통신연구원 플로우 기반 데이터 병렬 처리 장치 및 방법
EP2530874B1 (en) * 2011-06-03 2020-04-29 AirMagnet, Inc. Method and apparatus for detecting network attacks using a flow based technique
US9674207B2 (en) * 2014-07-23 2017-06-06 Cisco Technology, Inc. Hierarchical attack detection in a network
US10536357B2 (en) * 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US10674394B2 (en) * 2017-10-27 2020-06-02 Futurewei Technologies, Inc. Method and apparatus for reducing network latency
US10999167B2 (en) * 2018-04-13 2021-05-04 At&T Intellectual Property I, L.P. Varying data flow aggregation period relative to data value
US11546185B2 (en) * 2020-04-27 2023-01-03 Hewlett Packard Enterprise Development Lp Multicast route summarization
WO2023105647A1 (ja) * 2021-12-07 2023-06-15 日本電信電話株式会社 フロー情報収集システム、フロー情報収集方法、および、フロー情報収集プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003244321A (ja) * 2002-02-15 2003-08-29 Nippon Telegr & Teleph Corp <Ntt> トラヒックデータ生成装置
JP2005210756A (ja) * 2005-04-08 2005-08-04 Hitachi Ltd ネットワーク監視方法
JP2006050442A (ja) * 2004-08-06 2006-02-16 Nippon Telegr & Teleph Corp <Ntt> トラヒック監視方法及びシステム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7466703B1 (en) * 1998-05-01 2008-12-16 Alcatel-Lucent Usa Inc. Scalable high speed router apparatus
US6570875B1 (en) * 1998-10-13 2003-05-27 Intel Corporation Automatic filtering and creation of virtual LANs among a plurality of switch ports
US6671258B1 (en) * 2000-02-01 2003-12-30 Alcatel Canada Inc. Dynamic buffering system having integrated random early detection
JP3994614B2 (ja) * 2000-03-13 2007-10-24 株式会社日立製作所 パケット交換機、ネットワーク監視システム及びネットワーク監視方法
US6836466B1 (en) * 2000-05-26 2004-12-28 Telcordia Technologies, Inc. Method and system for measuring IP performance metrics
WO2002013486A2 (en) * 2000-08-07 2002-02-14 Xacct Technologies Limited System and method for processing network accounting information
US20020032793A1 (en) * 2000-09-08 2002-03-14 The Regents Of The University Of Michigan Method and system for reconstructing a path taken by undesirable network traffic through a computer network from a source of the traffic
US7039013B2 (en) * 2001-12-31 2006-05-02 Nokia Corporation Packet flow control method and device
US7286482B2 (en) * 2002-11-29 2007-10-23 Alcatel Lucent Decentralized SLS monitoring in a differentiated service environment
US7701863B2 (en) * 2002-12-12 2010-04-20 Alcatel Lucent Decentralized SLS monitoring for throughput in a differentiated service environment
JP2005010756A (ja) 2003-05-23 2005-01-13 Olympus Corp 光学系
US7453806B2 (en) * 2003-06-26 2008-11-18 International Business Machines Corporation Dynamic data packet flow control for packet switching node
US7385924B1 (en) * 2003-09-30 2008-06-10 Packeteer, Inc. Enhanced flow data records including traffic type data
US7515591B1 (en) * 2004-08-31 2009-04-07 Adtran, Inc. Primary channel bank-resident mechanism for scheduling downstream data transmissions to ports of multiple channel banks
US7738375B1 (en) * 2005-08-19 2010-06-15 Juniper Networks, Inc. Shared shaping of network traffic
US20070140282A1 (en) * 2005-12-21 2007-06-21 Sridhar Lakshmanamurthy Managing on-chip queues in switched fabric networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003244321A (ja) * 2002-02-15 2003-08-29 Nippon Telegr & Teleph Corp <Ntt> トラヒックデータ生成装置
JP2006050442A (ja) * 2004-08-06 2006-02-16 Nippon Telegr & Teleph Corp <Ntt> トラヒック監視方法及びシステム
JP2005210756A (ja) * 2005-04-08 2005-08-04 Hitachi Ltd ネットワーク監視方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2086183A4 *

Also Published As

Publication number Publication date
JP4658098B2 (ja) 2011-03-23
EP2086183A4 (en) 2010-01-06
US8239565B2 (en) 2012-08-07
JP2008154204A (ja) 2008-07-03
CN101536437B (zh) 2012-02-01
CN101536437A (zh) 2009-09-16
KR20090079945A (ko) 2009-07-22
EP2086183B1 (en) 2013-01-30
KR100997182B1 (ko) 2010-11-29
EP2086183A1 (en) 2009-08-05
US20100070647A1 (en) 2010-03-18

Similar Documents

Publication Publication Date Title
JP4658098B2 (ja) フロー情報制限装置および方法
JP5958570B2 (ja) ネットワークシステム、コントローラ、スイッチ、及びトラフィック監視方法
EP3304853B1 (en) Detection of malware and malicious applications
US7580356B1 (en) Method and system for dynamically capturing flow traffic data
US7639613B1 (en) Adaptive, flow-based network traffic measurement and monitoring system
US7706296B2 (en) Lightweight packet-drop detection for ad hoc networks
US10075371B2 (en) Communication system, control apparatus, packet handling operation setting method, and program
JP4267633B2 (ja) ネットワークシステム及びトラヒック情報集約装置
JP5050781B2 (ja) マルウエア検出装置、監視装置、マルウエア検出プログラム、およびマルウエア検出方法
JP2007336512A (ja) 統計情報収集システム及び統計情報収集装置
CN102498694A (zh) 通信系统、转发节点、路径管理服务器、通信方法和程序
JP2006352831A (ja) ネットワーク制御装置およびその制御方法
JP2011146920A (ja) トポロジーツリー作成装置、プログラム、及び方法
JP5017440B2 (ja) ネットワーク制御装置およびその制御方法
US7266088B1 (en) Method of monitoring and formatting computer network data
JP4938042B2 (ja) フロー情報送信装置、中間装置、フロー情報送信方法およびプログラム
JP2018029303A (ja) 通知システムおよび通知方法
JP4489714B2 (ja) パケット集約方法、装置、およびプログラム
JP2012151689A (ja) トラヒック情報収集装置、ネットワーク制御装置およびトラヒック情報収集方法
Lan et al. Passive overall packet loss estimation at the border of an ISP
JP4871330B2 (ja) フロー判定方法、通信装置及びプログラム
Henke et al. Evaluation of header field entropy for hash-based packet selection
JP2005117213A (ja) 経路表および経路検索方法
JP2009130686A (ja) フロー判定方法、通信装置及びプログラム
WO2021052554A1 (en) Network node for supporting performance evaluation using a performance bitmap

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200780042305.7

Country of ref document: CN

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

Ref document number: 07832186

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 1020097009813

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 12514883

Country of ref document: US

Ref document number: 2007832186

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE