US20060123031A1 - Prefiltering method and apparatus for prefiltering data stream for pattern matching - Google Patents

Prefiltering method and apparatus for prefiltering data stream for pattern matching Download PDF

Info

Publication number
US20060123031A1
US20060123031A1 US11/244,188 US24418805A US2006123031A1 US 20060123031 A1 US20060123031 A1 US 20060123031A1 US 24418805 A US24418805 A US 24418805A US 2006123031 A1 US2006123031 A1 US 2006123031A1
Authority
US
United States
Prior art keywords
data stream
filtering
prefiltering
additional
information
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US11/244,188
Inventor
Seung Shin
Jin Oh
Ki Kim
Jong Jang
Sung Sohn
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
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
Priority claimed from KR1020050046162A external-priority patent/KR20060063591A/en
Application filed by Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Assigned to ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSITUTE reassignment ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSITUTE ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: JANG, JONG SOO, KIM, KI YOUNG, OH, JIN TAE, SHIN, SEUNG WON, SOHN, SUNG WON
Publication of US20060123031A1 publication Critical patent/US20060123031A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9017Indexing; Data structures therefor; Storage structures using directory or table look-up
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies

Definitions

  • the present invention relates to a prefiltering method and apparatus for prefiltering a data stream for pattern matching, and more particularly, to a prefiltering method and apparatus for prefiltering a data stream which enhance the performance of a pattern matching algorithm in a high-performance network system that compares an entire data stream with a predetermined pattern and searches for a portion of the data stream that matches the predetermined pattern.
  • Pattern matching methods of matching a data stream with a predetermined pattern are widely used in a variety of devices, such as a router for looking up Internet Protocol (IP) addresses, a switch, and a security device for analyzing network data content.
  • IP Internet Protocol
  • a longest common subsequence (LCS) which is widely used in dynamic programming algorithms such as a hash algorithm is used.
  • Conventional pattern matching methods used in a pattern matching system that searches a data stream for a match for a predetermined pattern use a variety of algorithms, and one of the algorithms is a hash function.
  • perfect matching is performed by obtaining a hash value for each of a plurality of data streams using a hash function and then primarily comparing each of the hash values with a predetermined pattern.
  • a hash value is generated for an input data stream based on all of a plurality of data values of the input data stream, thereby reducing the probability of a plurality of input data streams being allotted the same hash value.
  • a pattern matching system in a high-performance network system that uses the conventional pattern matching method using a hash function may not be able to properly process a series of input data streams unless quickly comparing hash values of the input data streams with a predetermined pattern.
  • FIG. 1 is a schematic block diagram of a conventional pattern matching system used in a high-performance network system.
  • the conventional pattern matching system generates a hash value for only some of a plurality of input data streams that are N bytes long instead of generating a hash value for each of the input data streams. Thereafter, the conventional pattern matching system primarily compares the generated hash values with a predetermined pattern and then performs a perfect matching operation based on the primary comparison results.
  • a data stream when a data stream is input via a high-performance network, it is input to each of a first delayer 101 , a second delayer 102 , . . . , an N-th delayer 10 N, thereby generating time shifts among the data streams output from the first through N-th delayers 101 through 10 N.
  • the data streams output from the first through N-th delayer 10 N are input to first through N-th hash functions 121 through 12 N, respectively, thereby generating a total of N hash values, i.e., first through N-th hash values.
  • the first through N-th hash values are input to first through N-th comparators 141 through 14 N, respectively.
  • the first through N-th comparators 141 through 14 N download comparison information required for pattern matching from first through N-th tables 161 through 16 N, respectively.
  • the comparison information may be a hash value stored in each of the first through N-th tables 161 through 16 N in advance.
  • the first through N-th comparators 141 through 14 N primarily compare the first through N-th hash values with the comparison information downloaded from the first through N-th tables 161 through 16 N.
  • the probability of the randomly input M-byte data stream being incorrectly represented by a hash value is 0.13%.
  • the probability of a data stream being incorrectly represented by a hash value may vary depending on the type of an input data stream. However, it is almost impossible to anticipate what type of data stream is to be input, and thus, Equation (1) is still meaningful when calculating the probability of a data stream being incorrectly represented by a hash value.
  • the probability of a data stream being incorrectly represented by a hash value is generally very low, and thus, it may be difficult to achieve a high precision of pattern matching by using a hash function. Therefore, additional information other than a hash value of an input data stream is needed when primarily comparing the hash value with a predetermined pattern for pattern matching.
  • the present invention provides a prefiltering method and apparatus for prefiltering a data stream in a pattern matching system that searches an input data stream for a match for a predetermined pattern through comparison.
  • additional information required for pattern matching is generated by compressing and/or filtering the input data stream, and the generated additional information is provided to a search engine apparatus so that it can be used in pattern matching performed by the search engine apparatus.
  • a prefiltering apparatus for prefiltering a data stream for pattern matching.
  • the prefiltering apparatus includes: a reception unit which receives a data stream; a filtering policy storage unit which stores predefined filtering policies for a data stream; a filtering unit which loads the filtering policies stored in the filtering policy storage unit therein, filters the data stream received by the reception unit according to the loaded filtering policies, and generates additional filtering information regarding the filtered data stream; and a transmission determination unit which receives the additional filtering information and the data stream received by the reception unit from the filtering unit and determines whether to transmit the received data stream to a search engine apparatus that performs pattern matching.
  • a prefiltering apparatus for prefiltering a data stream for pattern matching.
  • the prefiltering apparatus includes: a reception unit which receives a data stream; a division unit which divides the data stream received by the reception unit into a header portion and a content portion; and a compression unit which generates a compressed data stream by inputting the header portion and the content portion to a predefined compression algorithm, generates additional compression information regarding the compressed data stream, and transmits the compressed data stream and the additional compression information to a search engine apparatus that performs pattern matching.
  • a prefiltering method of prefiltering a data stream for pattern matching includes: receiving a data stream; loading previously stored filtering policies; filtering the data stream according to the loaded filtering policies and generating additional filtering information regarding the filtered data stream; determining whether to transmit the data stream to a search engine apparatus that performs pattern matching based on the additional filtering information; and transmitting the data stream to the search engine apparatus if the data stream is determined as requiring transmission.
  • a prefiltering method for prefiltering a data stream for pattern matching includes: receiving a data stream; dividing the data stream into a header portion and a content portion; generating a compressed data stream by inputting the header portion and the content portion to a predefined compression algorithm; generating additional compression information regarding the compressed data stream; and transmitting the compressed data stream and the additional compression information to a search engine apparatus that performs pattern matching.
  • FIG. 1 is a schematic block diagram of a conventional pattern matching system
  • FIG. 2 is a schematic block diagram of a pattern matching system including a prefiltering apparatus for prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention
  • FIG. 3 is a block diagram of a prefiltering apparatus for prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention
  • FIG. 4 is a detailed block diagram of a filtering unit of FIG. 3 ;
  • FIG. 5 is a detailed block diagram of a compression unit of FIG. 3 ;
  • FIG. 6 is a flowchart illustrating a prefiltering method of prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention.
  • FIG. 7 is a flowchart illustrating a prefiltering method of prefiltering a data stream for pattern matching according to another exemplary embodiment of the present invention.
  • FIG. 2 is a schematic block diagram of a pattern matching system including a prefiltering apparatus 200 for prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention.
  • the pattern matching system includes the prefiltering apparatus 200 and a search engine apparatus 220 .
  • the prefiltering apparatus 200 receives a data stream via a network, compresses the data stream, and transmits the compressed data stream and additional compression information regarding the compressed data stream to the search engine apparatus 220 .
  • the prefiltering apparatus 200 receives a data stream via the network, filters the received data stream, and transmits additional filtering information regarding the filtered data stream to the search engine apparatus 220 .
  • the prefiltering apparatus 200 may perform a compression operation and a filtering operation in parallel on a data stream received via the network and may transmit the compressed data stream and additional compression information and additional filtering information regarding the compressed data stream to the search engine apparatus 220 .
  • the search engine apparatus 220 performs a pattern matching operation based on determining factors provided by the prefiltering apparatus 200 , including the compressed data stream, the additional compression information and the additional filtering information. Therefore, the pattern matching system can perform a pattern operation precisely and quickly using the determining factors provided by the prefiltering apparatus 200 .
  • FIG. 3 is a block diagram of a prefiltering apparatus 200 for prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention.
  • the prefiltering apparatus 200 includes a reception unit 310 , a filtering unit 320 , a compression unit 330 , a filtering policy storage unit 340 , and a transmission determination unit 350 .
  • the reception unit 310 receives a data stream via a network and transmits the data stream to the filtering unit 320 and the compression unit 330 .
  • the filtering policy storage unit 340 stores predetermined filtering policies for a data stream.
  • the filtering policies stored in the filtering policy storage unit 340 may have been received from an external system via the network or from a user via a user interface.
  • the filtering policies stored in the filtering policy storage unit 340 may include a filtering policy for a header portion of a data stream and a filtering policy for a content portion of a data stream, both of which are stored in the filtering policy storage unit 340 separately from each other.
  • the filtering policy for a header portion of a data stream may be established to specify that transmission of only one of TCP and IP with which a pattern matching operation is desired to be performed is allowed by preparing an IP header or a TCP header for a MAC address.
  • the filtering policy for a content portion of a data stream may be established to specify that a data stream whose content portion includes predetermined content should be prevented from being transmitted to the search engine apparatus 220 of FIG. 2 .
  • the filtering unit 320 loads the filtering policies stored in the filtering policy storage unit 340 therein, filters the data stream transmitted by the reception unit 310 according to the loaded filtering policies, and generates additional filtering information regarding the filtered data stream. Thereafter, the filtering unit 320 transmits the additional filtering information to the transmission determination unit 350 .
  • the operation and structure of the filtering unit 320 will be described below in further detail with reference to FIG. 4 .
  • the compression unit 330 compresses the data stream transmitted by the reception unit 310 and transmits the compressed data stream and additional compression information regarding the compressed data stream to the transmission determination unit 350 .
  • the operation and structure of the compression unit 330 will be described below in further detail with reference to FIG. 5 .
  • the compressed data stream and the additional compression information are illustrated in FIG. 3 as being transmitted from the compression unit 330 to the transmission determination unit 350 , they may be directly transmitted to the search engine apparatus 220 as indicated by a dotted line in FIG. 3 .
  • the transmission determination unit 350 receives the compressed data stream and the additional compression information transmitted by the compression unit 330 and determines whether to transmit the compressed data stream and the additional compression information to the search engine apparatus 220 by analyzing the additional filtering information transmitted by the filtering unit 320 . If the transmission determination unit 350 decides to transmit the compressed data stream and the additional compression information to the search engine apparatus 220 , it transmits the compressed data stream and the additional compression information to the search engine apparatus 220 . The transmission determination unit 350 may also transmit the additional filtering information to the search engine apparatus 220 when transmitting the compressed data stream and the additional compression information to the search engine apparatus 220 . When transmitting the compressed data stream and the additional compression information directly to the search engine apparatus 220 as described above, the prefiltering apparatus 200 may not include the filtering policy storage unit 340 , the filtering unit 320 , and the transmission determination unit 350 .
  • the prefiltering apparatus 200 may not include the compression unit 330 , in which case, the transmission determination unit 350 receives the data stream and the additional filtering information from the filtering unit 320 and determines whether to transmit the received data stream to the search engine apparatus 220 by analyzing the additional filtering information.
  • FIG. 4 is a detailed block diagram of the filtering unit 320 of FIG. 3 .
  • the filtering unit 320 includes a divider 321 , a header filter 322 , and a content filter 323 .
  • the divider 321 receives a data stream from the reception unit 310 and divides the data stream into a header portion and a content portion. Thereafter, the divider 321 transmits the header portion to the header filter 322 and transmits the content portion to the content filter 323 .
  • the header filter 322 loads therein a filtering policy for a header portion of a data stream stored in the filtering policy storage unit 340 . Thereafter, the header filter 322 determines whether to filter the header portion received from the divider 321 according to whether the received header portion satisfies the filtering policy loaded therein.
  • the header filter 322 filters the header portion according to the filtering policy loaded therein, thereby generating additional header filtering information indicating whether the header portion has been filtered.
  • the header filter 322 transmits the additional header filtering information to the transmission determination unit 350 .
  • the content filter 323 loads therein a filtering policy for a content portion of a data stream stored in the filtering policy storage unit 340 . Thereafter, the content filter 323 determines whether to filter the content portion received from the divider 321 according to whether the received content portion satisfies the filtering policy loaded therein. If the content portion transmitted by the divider 321 satisfies the filtering policy loaded in the content filter 323 , the content filter 323 filters the content portion according to the filtering policy loaded therein, thereby generating additional content filtering information indicating that the content portion has been filtered. Thereafter, the content filter 323 transmits the additional content filtering information to the transmission determination unit 350 .
  • FIG. 5 is a detailed block diagram of the compression unit 330 of FIG. 3 .
  • the compression unit 330 includes a divider 331 and a compressor 332 .
  • the divider 331 receives a data stream from the reception unit 310 and divides the data stream into a header portion and a content portion. Thereafter, the divider 331 transmits the header portion and the content portion to the compressor 332 .
  • the compressor 332 inputs the header portion and the content portion to a predefined compression algorithm, thereby generating a compressed data stream. Thereafter, the compressor 332 also generates additional compression information regarding the compressed data stream and transmits the compressed data stream and the additional compression information to the transmission determination unit 350 , in which case, the prefiltering apparatus 200 includes the filtering unit 320 .
  • the predefined compression algorithm may output a data stream for each of the header portion and the content portion or may output a data stream for both of the header portion and the content portion.
  • the compressor 332 may compress the header portion and the content portion together, thereby generating a compressed data stream for both of the header portion and the content portion, or may compress the header portion and the content portion separately from each other, thereby generating a compressed data stream for each of the header portion and the content portion.
  • the predefined compression algorithm include the Message Digest 5 (MD5) algorithm and the Huffman algorithm.
  • the compressor 332 transmits the compressed data stream and the additional compression information directly to the search engine apparatus 220 .
  • the additional compression information may include at least one of information regarding the predefined compression algorithm, the size of the compressed data stream, and header information of the compressed data stream.
  • FIG. 6 is a flowchart illustrating a prefiltering method of prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention.
  • a data stream is received via a network.
  • the data stream is filtered according to the filtering policies, thereby generating additional filtering information.
  • operation S 630 it is determined whether to transmit the received data stream to the search engine apparatus 220 of FIG. 3 based on the additional filtering information generated in operation S 620 .
  • the data stream is transmitted to the search engine apparatus 220 in operation S 640 . Otherwise, the prefiltering method proceeds to operation S 650 . In operation S 650 , the transmission of the received data stream to the search engine apparatus 220 is blocked.
  • a data stream received via a network is filtered according to previously stored filtering policies. However, it may be determined whether to transmit the data stream to the search engine apparatus 220 based on using a compression algorithm, additional compression information regarding the compressed data stream, and additional filtering information regarding a filtered data stream obtained by filtering the received data stream. In other words, if the compressed data stream does not satisfy the loaded filtering policies and thus is determined not to be output, the compressed data stream and the additional compression information are prevented from being transmitted to the search engine apparatus 220 .
  • the detailed description of the prefiltering apparatus as illustrated in FIGS. 2 through 5 is applied to the prefiltering method as illustrated in FIG. 6 .
  • FIG. 7 is a flowchart illustrating a prefiltering method of prefiltering a data stream for pattern matching according to another exemplary embodiment of the present invention.
  • a data stream is received via a network.
  • the data stream is divided into a header portion and a content portion.
  • the header portion and the content portion are input to a predefined compression algorithm, thereby generating a compressed data stream.
  • the additional compression information is transmitted to the search engine apparatus 220 that performs pattern matching.
  • a data stream received via a network is filtered according to previously stored filtering policies. However, it may be determined whether to transmit the data stream to the search engine apparatus 220 based on a compressed data stream obtained by compressing the data stream using a compression algorithm, additional compression information regarding the compressed data stream, and additional filtering information regarding a filtered data stream obtained by filtering the received data stream. In other words, if the compressed data stream does not satisfy the loaded filtering policies and thus is determined not to be output, the compressed data stream and the additional compression information are prevented from being transmitted to the search engine apparatus 220 .
  • the detailed description of the prefiltering apparatus as illustrated in FIGS. 2 through 5 is applied to the prefiltering method as illustrated in FIG. 7 .
  • the present invention can be realized as computer-readable code written on a computer-readable recording medium.
  • the computer-readable recording medium may be any type of recording device in which data is stored in a computer-readable manner. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disc, an optical data storage, and a carrier wave (e.g., data transmission through the Internet).
  • the computer-readable recording medium can be distributed over a plurality of computer systems connected to a network so that a computer-readable code is written thereto and executed therefrom in a decentralized manner. Functional programs, code, and code segments needed for realizing the present invention can be easily deduced by one of ordinary skill in the art.
  • the preset invention it is possible to prevent pattern matching rates from drastically decreasing in accordance with an increase of amounts of data streams processed by a high-performance network system and to equalize the amounts of data streams to be compared with a predetermined pattern. Therefore, it is possible to provide a high-performance pattern matching system.

Abstract

A prefiltering method and apparatus for prefiltering a data stream for pattern matching are provided. The prefiltering method includes: receiving a data stream; loading previously stored filtering policies; filtering the data stream according to the loaded filtering policies and generating additional filtering information regarding the filtered data stream; determining whether to transmit the data stream to a search engine apparatus that performs pattern matching based on the additional filtering information; and transmitting the data stream to the search engine apparatus if the data stream is determined as requiring transmission. Therefore, it is possible to provide a high-performance pattern matching system that can achieve a high precision of pattern matching.

Description

    CROSS-REFERENCE TO RELATED PATENT APPLICATION
  • This application claims the benefit of Korean Patent Application No. 10-2004-0102508 and 10-2005-0046162, filed on Dec. 7, 2004 and May 31, 2005, respectively, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • The present invention relates to a prefiltering method and apparatus for prefiltering a data stream for pattern matching, and more particularly, to a prefiltering method and apparatus for prefiltering a data stream which enhance the performance of a pattern matching algorithm in a high-performance network system that compares an entire data stream with a predetermined pattern and searches for a portion of the data stream that matches the predetermined pattern.
  • 2. Description of the Related Art
  • Pattern matching methods of matching a data stream with a predetermined pattern are widely used in a variety of devices, such as a router for looking up Internet Protocol (IP) addresses, a switch, and a security device for analyzing network data content. In pattern matching methods, a longest common subsequence (LCS) which is widely used in dynamic programming algorithms such as a hash algorithm is used. When there is a need to enhance pattern matching performance by, for example, quickly comparing a data stream with a predetermined pattern, amounts of data stream portions to be compared with the predetermined pattern must be reduced by using various pattern matching algorithms or other pattern matching methods. However, the harder the pattern matching algorithms or methods try to enhance the speed of pattern matching, the lower their precision of pattern matching. Therefore, the pattern matching algorithms or methods may not be able to enhance the general performance of pattern matching.
  • Conventional pattern matching methods used in a pattern matching system that searches a data stream for a match for a predetermined pattern use a variety of algorithms, and one of the algorithms is a hash function. In a conventional pattern matching method using a hash function, perfect matching is performed by obtaining a hash value for each of a plurality of data streams using a hash function and then primarily comparing each of the hash values with a predetermined pattern.
  • In the conventional pattern matching method using a hash function, input data streams must not be allotted the same hash value in order to enhance the precision of the primary comparison of the hash values of the input data streams with the predetermined pattern. Therefore, a hash value is generated for an input data stream based on all of a plurality of data values of the input data stream, thereby reducing the probability of a plurality of input data streams being allotted the same hash value.
  • In addition, a pattern matching system in a high-performance network system that uses the conventional pattern matching method using a hash function may not be able to properly process a series of input data streams unless quickly comparing hash values of the input data streams with a predetermined pattern.
  • FIG. 1 is a schematic block diagram of a conventional pattern matching system used in a high-performance network system. Referring to FIG. 1, the conventional pattern matching system generates a hash value for only some of a plurality of input data streams that are N bytes long instead of generating a hash value for each of the input data streams. Thereafter, the conventional pattern matching system primarily compares the generated hash values with a predetermined pattern and then performs a perfect matching operation based on the primary comparison results.
  • In detail, when a data stream is input via a high-performance network, it is input to each of a first delayer 101, a second delayer 102, . . . , an N-th delayer 10N, thereby generating time shifts among the data streams output from the first through N-th delayers 101 through 10N. The data streams output from the first through N-th delayer 10N are input to first through N-th hash functions 121 through 12N, respectively, thereby generating a total of N hash values, i.e., first through N-th hash values.
  • The first through N-th hash values are input to first through N-th comparators 141 through 14N, respectively.
  • The first through N-th comparators 141 through 14N download comparison information required for pattern matching from first through N-th tables 161 through 16N, respectively. The comparison information may be a hash value stored in each of the first through N-th tables 161 through 16N in advance.
  • The first through N-th comparators 141 through 14N primarily compare the first through N-th hash values with the comparison information downloaded from the first through N-th tables 161 through 16N.
  • However, assuming that the input data stream is M bytes long only an N-byte portion of the input data stream is subjected to the primary comparison operation. Given that one byte can represent up to 256 different characters, the remaining (M-N) bytes of the input data stream may imply up to (M-N)*256 different characters even when represented by the same hash value. Therefore, the probability of a randomly input M-byte data stream being incorrectly represented by a hash value can be calculated using Equation (1): Pr ( M , N ) = 1 ( M - N ) × 256 .
  • For example, assuming that M=5 and N=2, the probability of the randomly input M-byte data stream being incorrectly represented by a hash value is 0.13%. The greater the difference between M and N, the lower the probability of the randomly input M-byte data stream being incorrectly represented by a hash value. The probability of a data stream being incorrectly represented by a hash value may vary depending on the type of an input data stream. However, it is almost impossible to anticipate what type of data stream is to be input, and thus, Equation (1) is still meaningful when calculating the probability of a data stream being incorrectly represented by a hash value. However, the probability of a data stream being incorrectly represented by a hash value is generally very low, and thus, it may be difficult to achieve a high precision of pattern matching by using a hash function. Therefore, additional information other than a hash value of an input data stream is needed when primarily comparing the hash value with a predetermined pattern for pattern matching.
  • SUMMARY OF THE INVENTION
  • The present invention provides a prefiltering method and apparatus for prefiltering a data stream in a pattern matching system that searches an input data stream for a match for a predetermined pattern through comparison. In the prefiltering method and apparatus, additional information required for pattern matching is generated by compressing and/or filtering the input data stream, and the generated additional information is provided to a search engine apparatus so that it can be used in pattern matching performed by the search engine apparatus.
  • According to an aspect of the present invention, there is provided a prefiltering apparatus for prefiltering a data stream for pattern matching. The prefiltering apparatus includes: a reception unit which receives a data stream; a filtering policy storage unit which stores predefined filtering policies for a data stream; a filtering unit which loads the filtering policies stored in the filtering policy storage unit therein, filters the data stream received by the reception unit according to the loaded filtering policies, and generates additional filtering information regarding the filtered data stream; and a transmission determination unit which receives the additional filtering information and the data stream received by the reception unit from the filtering unit and determines whether to transmit the received data stream to a search engine apparatus that performs pattern matching.
  • According to another aspect of the present invention, there is provided a prefiltering apparatus for prefiltering a data stream for pattern matching. The prefiltering apparatus includes: a reception unit which receives a data stream; a division unit which divides the data stream received by the reception unit into a header portion and a content portion; and a compression unit which generates a compressed data stream by inputting the header portion and the content portion to a predefined compression algorithm, generates additional compression information regarding the compressed data stream, and transmits the compressed data stream and the additional compression information to a search engine apparatus that performs pattern matching.
  • According to another aspect of the present invention, there is provided a prefiltering method of prefiltering a data stream for pattern matching. The prefiltering method includes: receiving a data stream; loading previously stored filtering policies; filtering the data stream according to the loaded filtering policies and generating additional filtering information regarding the filtered data stream; determining whether to transmit the data stream to a search engine apparatus that performs pattern matching based on the additional filtering information; and transmitting the data stream to the search engine apparatus if the data stream is determined as requiring transmission.
  • According to another aspect of the present invention, there is provided a prefiltering method for prefiltering a data stream for pattern matching. The prefiltering method includes: receiving a data stream; dividing the data stream into a header portion and a content portion; generating a compressed data stream by inputting the header portion and the content portion to a predefined compression algorithm; generating additional compression information regarding the compressed data stream; and transmitting the compressed data stream and the additional compression information to a search engine apparatus that performs pattern matching.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The above and other features and advantages of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings in which:
  • FIG. 1 is a schematic block diagram of a conventional pattern matching system;
  • FIG. 2 is a schematic block diagram of a pattern matching system including a prefiltering apparatus for prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention;
  • FIG. 3 is a block diagram of a prefiltering apparatus for prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention;
  • FIG. 4 is a detailed block diagram of a filtering unit of FIG. 3;
  • FIG. 5 is a detailed block diagram of a compression unit of FIG. 3;
  • FIG. 6 is a flowchart illustrating a prefiltering method of prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention; and
  • FIG. 7 is a flowchart illustrating a prefiltering method of prefiltering a data stream for pattern matching according to another exemplary embodiment of the present invention.
  • DETAILED DESCRIPTION OF THE INVENTION
  • The present invention will now be described more fully with reference to the accompanying drawings in which exemplary embodiments of the invention are shown.
  • FIG. 2 is a schematic block diagram of a pattern matching system including a prefiltering apparatus 200 for prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention. Referring to FIG. 2, the pattern matching system includes the prefiltering apparatus 200 and a search engine apparatus 220. The prefiltering apparatus 200 receives a data stream via a network, compresses the data stream, and transmits the compressed data stream and additional compression information regarding the compressed data stream to the search engine apparatus 220. In addition, the prefiltering apparatus 200 receives a data stream via the network, filters the received data stream, and transmits additional filtering information regarding the filtered data stream to the search engine apparatus 220. The prefiltering apparatus 200 may perform a compression operation and a filtering operation in parallel on a data stream received via the network and may transmit the compressed data stream and additional compression information and additional filtering information regarding the compressed data stream to the search engine apparatus 220.
  • The search engine apparatus 220 performs a pattern matching operation based on determining factors provided by the prefiltering apparatus 200, including the compressed data stream, the additional compression information and the additional filtering information. Therefore, the pattern matching system can perform a pattern operation precisely and quickly using the determining factors provided by the prefiltering apparatus 200.
  • The operation and structure of the prefiltering apparatus 200 will now be described in further detail with reference to FIG. 3.
  • FIG. 3 is a block diagram of a prefiltering apparatus 200 for prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention. Referring to FIG. 3, the prefiltering apparatus 200 includes a reception unit 310, a filtering unit 320, a compression unit 330, a filtering policy storage unit 340, and a transmission determination unit 350.
  • The reception unit 310 receives a data stream via a network and transmits the data stream to the filtering unit 320 and the compression unit 330.
  • The filtering policy storage unit 340 stores predetermined filtering policies for a data stream. The filtering policies stored in the filtering policy storage unit 340 may have been received from an external system via the network or from a user via a user interface. The filtering policies stored in the filtering policy storage unit 340 may include a filtering policy for a header portion of a data stream and a filtering policy for a content portion of a data stream, both of which are stored in the filtering policy storage unit 340 separately from each other. For example, if the prefiltering apparatus 200 uses TCP/IP in an Ethernet environment, the filtering policy for a header portion of a data stream may be established to specify that transmission of only one of TCP and IP with which a pattern matching operation is desired to be performed is allowed by preparing an IP header or a TCP header for a MAC address. The filtering policy for a content portion of a data stream may be established to specify that a data stream whose content portion includes predetermined content should be prevented from being transmitted to the search engine apparatus 220 of FIG. 2.
  • The filtering unit 320 loads the filtering policies stored in the filtering policy storage unit 340 therein, filters the data stream transmitted by the reception unit 310 according to the loaded filtering policies, and generates additional filtering information regarding the filtered data stream. Thereafter, the filtering unit 320 transmits the additional filtering information to the transmission determination unit 350. The operation and structure of the filtering unit 320 will be described below in further detail with reference to FIG. 4.
  • The compression unit 330 compresses the data stream transmitted by the reception unit 310 and transmits the compressed data stream and additional compression information regarding the compressed data stream to the transmission determination unit 350. The operation and structure of the compression unit 330 will be described below in further detail with reference to FIG. 5. Even though the compressed data stream and the additional compression information are illustrated in FIG. 3 as being transmitted from the compression unit 330 to the transmission determination unit 350, they may be directly transmitted to the search engine apparatus 220 as indicated by a dotted line in FIG. 3.
  • The transmission determination unit 350 receives the compressed data stream and the additional compression information transmitted by the compression unit 330 and determines whether to transmit the compressed data stream and the additional compression information to the search engine apparatus 220 by analyzing the additional filtering information transmitted by the filtering unit 320. If the transmission determination unit 350 decides to transmit the compressed data stream and the additional compression information to the search engine apparatus 220, it transmits the compressed data stream and the additional compression information to the search engine apparatus 220. The transmission determination unit 350 may also transmit the additional filtering information to the search engine apparatus 220 when transmitting the compressed data stream and the additional compression information to the search engine apparatus 220. When transmitting the compressed data stream and the additional compression information directly to the search engine apparatus 220 as described above, the prefiltering apparatus 200 may not include the filtering policy storage unit 340, the filtering unit 320, and the transmission determination unit 350.
  • Alternatively, the prefiltering apparatus 200 may not include the compression unit 330, in which case, the transmission determination unit 350 receives the data stream and the additional filtering information from the filtering unit 320 and determines whether to transmit the received data stream to the search engine apparatus 220 by analyzing the additional filtering information.
  • FIG. 4 is a detailed block diagram of the filtering unit 320 of FIG. 3. Referring to FIG. 4, the filtering unit 320 includes a divider 321, a header filter 322, and a content filter 323.
  • The divider 321 receives a data stream from the reception unit 310 and divides the data stream into a header portion and a content portion. Thereafter, the divider 321 transmits the header portion to the header filter 322 and transmits the content portion to the content filter 323. The header filter 322 loads therein a filtering policy for a header portion of a data stream stored in the filtering policy storage unit 340. Thereafter, the header filter 322 determines whether to filter the header portion received from the divider 321 according to whether the received header portion satisfies the filtering policy loaded therein. If the header portion transmitted by the divider 321 satisfies the filtering policy loaded in the header filter 322, the header filter 322 filters the header portion according to the filtering policy loaded therein, thereby generating additional header filtering information indicating whether the header portion has been filtered. The header filter 322 transmits the additional header filtering information to the transmission determination unit 350.
  • The content filter 323 loads therein a filtering policy for a content portion of a data stream stored in the filtering policy storage unit 340. Thereafter, the content filter 323 determines whether to filter the content portion received from the divider 321 according to whether the received content portion satisfies the filtering policy loaded therein. If the content portion transmitted by the divider 321 satisfies the filtering policy loaded in the content filter 323, the content filter 323 filters the content portion according to the filtering policy loaded therein, thereby generating additional content filtering information indicating that the content portion has been filtered. Thereafter, the content filter 323 transmits the additional content filtering information to the transmission determination unit 350.
  • FIG. 5 is a detailed block diagram of the compression unit 330 of FIG. 3. Referring to FIG. 5, the compression unit 330 includes a divider 331 and a compressor 332. The divider 331 receives a data stream from the reception unit 310 and divides the data stream into a header portion and a content portion. Thereafter, the divider 331 transmits the header portion and the content portion to the compressor 332.
  • The compressor 332 inputs the header portion and the content portion to a predefined compression algorithm, thereby generating a compressed data stream. Thereafter, the compressor 332 also generates additional compression information regarding the compressed data stream and transmits the compressed data stream and the additional compression information to the transmission determination unit 350, in which case, the prefiltering apparatus 200 includes the filtering unit 320. The predefined compression algorithm may output a data stream for each of the header portion and the content portion or may output a data stream for both of the header portion and the content portion. In short, by using the predefined compression algorithm, the compressor 332 may compress the header portion and the content portion together, thereby generating a compressed data stream for both of the header portion and the content portion, or may compress the header portion and the content portion separately from each other, thereby generating a compressed data stream for each of the header portion and the content portion. Examples of the predefined compression algorithm include the Message Digest 5 (MD5) algorithm and the Huffman algorithm.
  • If the prefiltering apparatus 200 does not include the filtering policy storage unit 340 and the filtering unit 320 but includes the compression unit 330, the compressor 332 transmits the compressed data stream and the additional compression information directly to the search engine apparatus 220. The additional compression information may include at least one of information regarding the predefined compression algorithm, the size of the compressed data stream, and header information of the compressed data stream.
  • FIG. 6 is a flowchart illustrating a prefiltering method of prefiltering a data stream for pattern matching according to an exemplary embodiment of the present invention. Referring to FIG. 6, in operation S600, a data stream is received via a network.
  • In operation S610, previously stored filtering policies are loaded.
  • In operation S620, the data stream is filtered according to the filtering policies, thereby generating additional filtering information.
  • In operation S630, it is determined whether to transmit the received data stream to the search engine apparatus 220 of FIG. 3 based on the additional filtering information generated in operation S620.
  • If it is determined to transmit the data stream to the search engine apparatus 220 in operation S630, the data stream is transmitted to the search engine apparatus 220 in operation S640. Otherwise, the prefiltering method proceeds to operation S650. In operation S650, the transmission of the received data stream to the search engine apparatus 220 is blocked.
  • In the prefiltering method illustrated in FIG. 6, a data stream received via a network is filtered according to previously stored filtering policies. However, it may be determined whether to transmit the data stream to the search engine apparatus 220 based on using a compression algorithm, additional compression information regarding the compressed data stream, and additional filtering information regarding a filtered data stream obtained by filtering the received data stream. In other words, if the compressed data stream does not satisfy the loaded filtering policies and thus is determined not to be output, the compressed data stream and the additional compression information are prevented from being transmitted to the search engine apparatus 220. The detailed description of the prefiltering apparatus as illustrated in FIGS. 2 through 5 is applied to the prefiltering method as illustrated in FIG. 6.
  • FIG. 7 is a flowchart illustrating a prefiltering method of prefiltering a data stream for pattern matching according to another exemplary embodiment of the present invention. Referring to FIG. 7, in operation S700, a data stream is received via a network.
  • In operation S710, the data stream is divided into a header portion and a content portion.
  • In operation S720, the header portion and the content portion are input to a predefined compression algorithm, thereby generating a compressed data stream.
  • In operation S730, additional compression information regarding the compressed data stream is generated.
  • In operation S740, the additional compression information is transmitted to the search engine apparatus 220 that performs pattern matching.
  • In the prefiltering method as illustrated in FIG. 7, a data stream received via a network is filtered according to previously stored filtering policies. However, it may be determined whether to transmit the data stream to the search engine apparatus 220 based on a compressed data stream obtained by compressing the data stream using a compression algorithm, additional compression information regarding the compressed data stream, and additional filtering information regarding a filtered data stream obtained by filtering the received data stream. In other words, if the compressed data stream does not satisfy the loaded filtering policies and thus is determined not to be output, the compressed data stream and the additional compression information are prevented from being transmitted to the search engine apparatus 220. The detailed description of the prefiltering apparatus as illustrated in FIGS. 2 through 5 is applied to the prefiltering method as illustrated in FIG. 7.
  • The present invention can be realized as computer-readable code written on a computer-readable recording medium. The computer-readable recording medium may be any type of recording device in which data is stored in a computer-readable manner. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disc, an optical data storage, and a carrier wave (e.g., data transmission through the Internet). The computer-readable recording medium can be distributed over a plurality of computer systems connected to a network so that a computer-readable code is written thereto and executed therefrom in a decentralized manner. Functional programs, code, and code segments needed for realizing the present invention can be easily deduced by one of ordinary skill in the art.
  • As described above, according to the preset invention, it is possible to prevent pattern matching rates from drastically decreasing in accordance with an increase of amounts of data streams processed by a high-performance network system and to equalize the amounts of data streams to be compared with a predetermined pattern. Therefore, it is possible to provide a high-performance pattern matching system.
  • In addition, it is possible to provide a high-performance pattern matching system that can achieve a high precision of pattern matching cooperating with other devices.
  • While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the following claims.

Claims (23)

1. A prefiltering apparatus for prefiltering a data stream for pattern matching comprising:
a reception unit which receives a data stream;
a filtering unit which filters the data stream received by the reception unit according to predefined filtering policies, and generates additional filtering information regarding the filtered data stream; and
a transmission determination unit which receives the additional filtering information and the data stream received by the reception unit from the filtering unit and determines whether to transmit the received data stream to a search engine apparatus that performs pattern matching.
2. The prefiltering apparatus of claim 1, wherein the filtering unit comprises:
a divider which divides the data stream received by the reception unit into a header portion and a content portion;
a header filter which loads the filtering policies stored in the filtering policy storage unit therein, receives the header portion from the divider, filters the received header portion according to the loaded filtering policies, and generates additional header filtering information regarding the filtered header portion; and
a content filter which loads the filtering policies, receives the content portion from the divider, filters the received content portion according to the loaded filtering policies, and generates additional content filtering information regarding the filtered content portion.
3. The prefiltering apparatus of claim 2, wherein the header filter loads a predefined filtering policy for the header portion of the data stream received by the reception unit therein, and the content filter loads a predefined filtering policy for the content portion of the data stream received by the reception unit therein.
4. The prefiltering apparatus defined by claim 3 further comprising:
a filtering policy storage unit which stores said predefined filtering policies;
wherein said filtering unit loads the filtering policies stored in the filtering policy storage unit; and
wherein the filtering policy storage unit stores a filtering policy for the header portion of the data stream received by the reception unit and a filtering policy for the content portion of the data stream received by the reception unit.
5. The prefiltering apparatus of claim 1, wherein the additional filtering information comprises information specifying whether any of a plurality of portions of the data stream received by the reception unit matches the predefined filtering policies.
6. The prefiltering apparatus of claim 1 further comprising a compression unit which receives the data stream received by the reception unit, compresses the received data stream, generates additional compression information regarding the compressed data stream, and transmits the compressed data stream and the additional compression information to the transmission determination unit,
wherein the transmission determination unit receives the additional filtering information from the filtering unit and determines whether to transmit the compressed data stream and the additional compression information to a search engine apparatus that performs pattern matching based on the received additional filtering information.
7. The prefiltering apparatus of claim 6, wherein the compression unit comprises:
a divider which divides the data stream received by the reception unit into a header portion and a content portion; and
a compressor which generates a compressed data stream by inputting the header portion and the content portion to a predefined compression algorithm, generates additional compression information regarding the compressed data stream, and transmits the compressed data stream and the additional compression information to the transmission determination unit.
8. The prefiltering apparatus of claim 7, wherein the additional compression information comprises at least one of information regarding the predefined compression algorithm, information regarding the size of the compressed data stream, and the header portion of the compressed data stream.
9. The prefiltering apparatus of claim 6, wherein the transmission determination unit receives the additional filtering information from the filtering unit, determines whether to transmit the compressed data stream and the additional compression information to a search engine apparatus that performs pattern matching based on the received additional filtering information, and transmits the compressed data stream and the additional compression information to the search engine apparatus together with the additional filtering information when deciding to transmit the compressed data stream and the additional compression information to the search engine apparatus.
10. The prefiltering apparatus of claim 1, wherein, if the transmission determination unit decides to transmit the data stream received by the reception unit to a search engine that performs pattern matching based on the additional filtering information, it transmits the data stream received by the reception unit to the search engine apparatus together with the additional filtering information.
11. The prefiltering apparatus defined by claim 1 further comprising:
a filtering policy storage unit which stores said predefined filtering policies; and
wherein said filtering unit loads the filtering policies stored in the filtering policy storage unit.
12. A prefiltering apparatus for prefiltering a data stream for pattern matching comprising:
a reception unit which receives a data stream;
a division unit which divides the data stream received by the reception unit into a header portion and a content portion; and
a compression unit which generates a compressed data stream by inputting the header portion and the content portion to a predefined compression algorithm, generates additional compression information regarding the compressed data stream, and transmits the compressed data stream and the additional compression information to a search engine apparatus that performs pattern matching.
13. The prefiltering apparatus of claim 12, wherein the additional compression information comprises at least one of information regarding the predefined compression algorithm, information regarding the size of the compressed data stream, and the header portion of the compressed data stream.
14. The prefiltering apparatus of claim 12, wherein the predefined compression algorithm outputs a compressed data stream for each of the header portion and the content portion of the data stream received by the reception unit.
15. The prefiltering apparatus of claim 12, wherein the predefined compression algorithm outputs a compressed data stream for both of the header portion and the content portion of the data stream received by the reception unit.
16. A prefiltering method of prefiltering a data stream for pattern matching comprising:
receiving a data stream;
filtering the data stream according to predefined filtering policies and generating additional filtering information regarding the filtered data stream;
determining whether to transmit the data stream to a search engine apparatus that performs pattern matching based on the additional filtering information; and
transmitting the data stream to the search engine apparatus if the data stream is determined as requiring transmission.
17. The prefiltering method of claim 16, wherein the transmitting comprises transmitting the data stream to the search engine apparatus together with the additional filtering information.
18. The prefiltering method of claim 16, wherein the filtering comprises:
dividing the data stream into a header portion and a content portion;
loading the previously stored filtering policies, receiving the header portion, filtering the header portion according to the loaded filtering policies, and generating additional header filtering information regarding the filtered header portion; and
loading the previously stored filtering policies, receiving the content portion, filtering the content portion according to the loaded filtering policies, and generating additional content filtering information regarding the filtered content portion.
19. The prefiltering method of claim 16, wherein the additional filtering information comprises information specifying whether any of a plurality of portions of the received data stream matches the loaded filtering policies.
20. The prefiltering method of claim 16, wherein the determining comprises determining to transmit the data stream to the search engine apparatus if the additional filtering information specifies that none of the portions of the received data stream match the loaded filtering policies.
21. The method defined by claim 16 further comprising loading previously stored filtering policies, said previously stored filtering policies being said predefined filtering policies.
22. A prefiltering method for prefiltering a data stream for pattern matching comprising:
receiving a data stream;
dividing the data stream into a header portion and a content portion;
generating a compressed data stream by inputting the header portion and the content portion to a predefined compression algorithm;
generating additional compression information regarding the compressed data stream; and
transmitting the compressed data stream and the additional compression information to a search engine apparatus that performs pattern matching.
23. The prefiltering method of claim 22, wherein the additional compression information comprises at least one of information regarding the predefined compression algorithm, information regarding the size of the compressed data stream, and the header portion of the compressed data stream.
US11/244,188 2004-12-07 2005-10-05 Prefiltering method and apparatus for prefiltering data stream for pattern matching Abandoned US20060123031A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2004-0102508 2004-12-07
KR20040102508 2004-12-07
KR10-2005-0046162 2005-05-31
KR1020050046162A KR20060063591A (en) 2004-12-07 2005-05-31 Method and apparatus for pre-filtering of data-stream for pattern matching

Publications (1)

Publication Number Publication Date
US20060123031A1 true US20060123031A1 (en) 2006-06-08

Family

ID=36575626

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/244,188 Abandoned US20060123031A1 (en) 2004-12-07 2005-10-05 Prefiltering method and apparatus for prefiltering data stream for pattern matching

Country Status (1)

Country Link
US (1) US20060123031A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100146511A1 (en) * 2008-12-09 2010-06-10 Electronics And Telecommunications Research Institute Policy based data processing method and system
US20110216769A1 (en) * 2010-03-08 2011-09-08 Brocade Communications Systems, Inc. Dynamic Path Selection
US20180267914A1 (en) * 2015-05-05 2018-09-20 Oath Inc. Device interfacing
US10599355B2 (en) * 2017-05-12 2020-03-24 Seagate Technology Llc Data compression with redundancy removal across boundaries of compression search engines

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020003775A1 (en) * 2000-07-10 2002-01-10 Masayoshi Nakano Method and node apparatus for filtering ICMP data frame
US6345307B1 (en) * 1999-04-30 2002-02-05 General Instrument Corporation Method and apparatus for compressing hypertext transfer protocol (HTTP) messages
US6456328B1 (en) * 1996-12-18 2002-09-24 Lucent Technologies Inc. Object-oriented adaptive prefilter for low bit-rate video systems
US20040215972A1 (en) * 2003-04-14 2004-10-28 Sung Andrew H. Computationally intelligent agents for distributed intrusion detection system and method of practicing same
US20050135469A1 (en) * 2003-12-23 2005-06-23 Tyurin Michail F. Method and system for adaptive prefiltering of a signal for transmission

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6456328B1 (en) * 1996-12-18 2002-09-24 Lucent Technologies Inc. Object-oriented adaptive prefilter for low bit-rate video systems
US6345307B1 (en) * 1999-04-30 2002-02-05 General Instrument Corporation Method and apparatus for compressing hypertext transfer protocol (HTTP) messages
US20020003775A1 (en) * 2000-07-10 2002-01-10 Masayoshi Nakano Method and node apparatus for filtering ICMP data frame
US20040215972A1 (en) * 2003-04-14 2004-10-28 Sung Andrew H. Computationally intelligent agents for distributed intrusion detection system and method of practicing same
US20050135469A1 (en) * 2003-12-23 2005-06-23 Tyurin Michail F. Method and system for adaptive prefiltering of a signal for transmission

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100146511A1 (en) * 2008-12-09 2010-06-10 Electronics And Telecommunications Research Institute Policy based data processing method and system
US20110216769A1 (en) * 2010-03-08 2011-09-08 Brocade Communications Systems, Inc. Dynamic Path Selection
US20180267914A1 (en) * 2015-05-05 2018-09-20 Oath Inc. Device interfacing
US10810148B2 (en) * 2015-05-05 2020-10-20 Oath Inc. Device interfacing
US10599355B2 (en) * 2017-05-12 2020-03-24 Seagate Technology Llc Data compression with redundancy removal across boundaries of compression search engines

Similar Documents

Publication Publication Date Title
US7752155B2 (en) System and computer program for compressing multi-field classification rules
US7643505B1 (en) Method and system for real time compression and decompression
JP5566888B2 (en) Optimized data stream compression using data-dependent chunking
US8073973B2 (en) Method of processing data packets
US5414650A (en) Parsing information onto packets using context-insensitive parsing rules based on packet characteristics
EP1334560B1 (en) Communication method for shared context compression
US20060230081A1 (en) Backing up a wireless computing device
US8086675B2 (en) Generating a fingerprint of a bit sequence
US9083708B2 (en) Asymmetric end host redundancy elimination for networks
JP2005269618A (en) Data compression
US8639662B2 (en) Methods and apparatus for content based notification using hierarchical groups
CN111262876B (en) Data processing method, device and equipment based on block chain and storage medium
US20060123031A1 (en) Prefiltering method and apparatus for prefiltering data stream for pattern matching
US20030026251A1 (en) Method and apparatus for protocol pattern identification in protocol data units
US7609722B2 (en) Method and apparatus for transmitting and receiving compressed frame of data over a wireless channel
US20100287169A1 (en) Method, device, and system for realizing fingerprint technology
WO2020258942A1 (en) Data compression method and device
CN111414339A (en) File processing method, system, device, equipment and medium
CN107800653B (en) Message compression method and device
US7464185B2 (en) Method and apparatus for transfering data from a sending system to a receiving system, and program storage devices
WO2010017322A1 (en) Two stage differencing algorithm with adaptive compression
CN110545107B (en) Data processing method and device, electronic equipment and computer readable storage medium
CN110798222B (en) Data compression method and device
JPH10341221A (en) File transmission system
US20120102086A1 (en) Processing node selection system, information processing node, processing execution method and program

Legal Events

Date Code Title Description
AS Assignment

Owner name: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSITU

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHIN, SEUNG WON;OH, JIN TAE;KIM, KI YOUNG;AND OTHERS;REEL/FRAME:017071/0605

Effective date: 20050808

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION