US5790799A - System for sampling network packets by only storing the network packet that its error check code matches with the reference error check code - Google Patents

System for sampling network packets by only storing the network packet that its error check code matches with the reference error check code Download PDF

Info

Publication number
US5790799A
US5790799A US08/871,059 US87105997A US5790799A US 5790799 A US5790799 A US 5790799A US 87105997 A US87105997 A US 87105997A US 5790799 A US5790799 A US 5790799A
Authority
US
United States
Prior art keywords
network
check code
error check
monitoring device
packet
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.)
Expired - Lifetime
Application number
US08/871,059
Inventor
Jeffrey Clifford Mogul
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.)
Hewlett Packard Development Co LP
Original Assignee
Digital Equipment Corp
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 Digital Equipment Corp filed Critical Digital Equipment Corp
Priority to US08/871,059 priority Critical patent/US5790799A/en
Application granted granted Critical
Publication of US5790799A publication Critical patent/US5790799A/en
Priority to US09/151,903 priority patent/US6115281A/en
Priority to US09/488,023 priority patent/US6265230B1/en
Assigned to COMPAQ INFORMATION TECHNOLOGIES GROUP, L.P. reassignment COMPAQ INFORMATION TECHNOLOGIES GROUP, L.P. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: COMPAQ COMPUTER CORPORATION, DIGITAL EQUIPMENT CORPORATION
Assigned to HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. reassignment HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: COMPAQ INFORMANTION TECHNOLOGIES GROUP LP
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • 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/022Capturing of monitoring data by sampling
    • H04L43/024Capturing of monitoring data by sampling by adaptive sampling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5629Admission control
    • H04L2012/5631Resource management and allocation
    • H04L2012/5636Monitoring or policing, e.g. compliance with allocated rate, corrective actions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0847Transmission error

Definitions

  • the present invention relates to computer networks, and more particularly, to an efficient method for random sampling of network packets.
  • a computer network is an interconnected connection of autonomous computers.
  • the computer network allows these computers to exchange information and share resources such as files, printers, modems, and storage units.
  • data transmitted from computer to computer in the network consists of the transmission of data packets and is referred to in the art as traffic.
  • Traffic on the computer network is typically monitored to collect information about the computer network and the traffic on the computer network. More specifically, network managers typically use passive network monitors to collect statistical information and debugging information about packets on the computer network. Passive techniques completely avoid perturbing the network traffic and do not require modifications to network devices such as host computer systems or network routers.
  • LAN local area networks
  • FDDI ring networks
  • ATM asynchronous transfer mode
  • switch-based Ethernet and FDDI use centralized switching to allow higher aggregate traffic rates than could be carried on any one link of the computer network. This means that there is no longer any single point in the computer network to observe all the packets, except in the switch itself.
  • a sampled stream of packets would require far less of the resources of the switch, and would not require a super high-speed link to deliver the packets to the monitor.
  • a sampled set of packets has to be representative of the full packet flow.
  • a method in a computer network for random sampling of a plurality of network packets, each of the plurality of network packets containing a unique error check value including the steps of providing a network switch, providing a monitoring device, the monitoring having a memory and a data storage unit, providing a network interface to connect the network switch to the monitoring switch, selecting a reference error check code value in the monitoring device, receiving a first network packet from the network switch, comparing, in the network monitoring device, the reference error check code with an error check code of a first network packet, storing the first network packet in the monitoring device if the error check code value of the first network packet equals the reference error check code of the first network packet, and repeating the steps of receiving, comparing and storing for subsequent network packets.
  • the sampled set of packets is representative of the full packet flow in the computer network.
  • FIG. 1 is a block diagram of an exemplary asynchronous transfer mode (ATM) network containing a sampling device in accordance with the present invention
  • FIG. 2 is a block diagram of the network monitoring device of FIG. 1;
  • FIG. 3 is a block diagram of an exemplary message filed with CRC.
  • FIG. 4 is block diagram of a flow chart of a first embodiment of the present invention.
  • FIG. 5 is a block diagram of a flow chart of an alternate embodiment of the present invention.
  • an exemplary asynchronous transfer mode (ATM) local area network is shown to include four stations labeled 10A, 10B, 10C, and 10D.
  • the exemplary ATM LAN is also shown to include two ATM switches labeled as 12 and 13, respectively.
  • the exemplary ATM LAN is also shown to include a monitoring device 14 connected to the ATM switch.
  • packets of data may be transferred from station 10A to station 10D in the following manner. Packets of data are sent from station 10A to ATM switch 12, then to ATM switch 13, and out to station 10D. While the packets of data are passing through ATM switch 12, they are monitored by the monitoring device 14.
  • the monitoring device 14 of FIG. 1 is shown to include a storage unit 16 connected to a memory 18 and a network interface 20.
  • the network interface 20 provides connection of the network monitoring device 14 to the ATM switch 12 of FIG. 1.
  • Each of the packets of data being transferred in the exemplary ATM LAN of FIG. 1 may occur in any of several formats.
  • an exemplary data packet is shown to include an information field 30 and a cyclic redundancy check (CRC) field 32.
  • CRC cyclic redundancy check
  • the customary way of determining the validity of a message in the information field 30 is for a receiver to perform a mathematical operation upon the incoming data in the information field 30, i.e., calculate a cyclic redundancy check or CRC, and compare the results of that calculation with the calculation results sent by the transmitting station at the end of the message in the CRC field 32.
  • the desired result may be all zeros or some predetermined value.
  • CRC calculation may be performed in hardware or in software. A particular CRC calculation that produces a 32-bit result has been rarely found to improperly indicate that a complexly altered message is correct. This CRC calculation may be implemented as a single large scaled integrated (LSI) part, or in software with exclusive-OR instructions and tables.
  • LSI scaled integrated
  • the present method takes advantage of the fact that most network packet formats, as shown and described with reference to FIG. 3, include a header error check code or Cyclic Redundancy Check (CRC) over the entire packet.
  • CRC Cyclic Redundancy Check
  • an error check code reference value is selected by the monitoring device 14. Then, as packets of data flow through ATM switch 12, each of their individual error check codes are compared to the error check code reference value in the monitoring device 14. If the packet check code matches the error check code reference value, the packet is copied and stored in the storage unit 16 of the monitoring device 14. Alternatively, if the packet of data passing through the ATM switch 12 does not contain an error check code, the memory 18 of the monitoring device 14 is capable of calculating its error check code and then comparing it to the error check code reference value.
  • an error check code reference value is selected by the monitoring device.
  • the monitoring device receives a packet of data and compares the received packet error check code and the check code reference value.
  • the process determines whether a match has occurred.
  • the match need not be mathematical identity. In fact, if the CRC codes are large and truly random, looking for an exact match would yield very low sampling rates. Instead, in the preferred embodiment, "match” is understood to mean “some efficiently computed Boolean function of the two codes yields ⁇ true ⁇ .” Such functions include simple equality checks, and also include, as an example, comparison of bit fields.
  • the comparison function can be chosen to yield approximately any desired sampling rate, by changing the matching rate. If the two check codes match, at step 106 the received packet is stored in the storage unit of the monitoring device. If no match occurs, then at step 108 the monitoring device determines whether there is another packet to compare. If there is another packet to compare, the process repeats steps 102 through 108. If no more packets need to be checked, at step 110 sampling is complete.
  • an error check code reference value is selected by the monitoring device.
  • a packet is received by the monitoring device from the network.
  • the monitoring device calculates a packet check code for the received packet.
  • the monitoring device compares the error check code reference value with the calculated error check code value of the received packet.
  • the monitoring device determines whether a match of the calculated packet error check code and the check code reference value has occurred. If the two check codes match, at step 130 the packet is stored in the storage unit of the monitoring device. If no match occurs, then at step 132 the monitoring device determines whether there is another packet to compare. If there is another packet to compare, the process repeats steps 122 through 132. If no more packets need to be checked, at step 134 sampling is complete.
  • the output of the comparing step 126 may be used to control the sampling of future packets, rather than the packet whose value was fed into the matching step. This may be of use if the ATM switch needs to start duplicating a sampled packet early in the receiving process, but the check code value appears at the end of the packet (or the internally calculated value appears after the entire packet is processed).

Abstract

In a computer network, a method of random sampling of network packets is provided including the steps of providing a network switch, providing a monitoring device, the monitoring having a memory and a data storage unit, providing a network interface to connect the network switch to the monitoring switch, selecting a reference error check code value in the monitoring device, receiving a first network packet from the network switch, comparing, in the network monitoring device, the reference error check code with an error check code of a first network packet, storing the first network packet in the monitoring device if the error check code value of the first network packet matches the reference error check code of the first network packet, and repeating the steps of receiving, comparing and storing for subsequent network packets. In such a method, the reference error check value may be selected from a first network packet, or from one of any of the plurality of network packets received, whether previous to or subsequent to, any particular received network packet.

Description

This application is a continuation of application Ser. No. 08/443,299 filed on May 17, 1995, now abandoned.
FIELD OF THE INVENTION
The present invention relates to computer networks, and more particularly, to an efficient method for random sampling of network packets.
BACKGROUND OF THE INVENTION
In general, a computer network is an interconnected connection of autonomous computers. The computer network allows these computers to exchange information and share resources such as files, printers, modems, and storage units. Typically, data transmitted from computer to computer in the network consists of the transmission of data packets and is referred to in the art as traffic. Traffic on the computer network is typically monitored to collect information about the computer network and the traffic on the computer network. More specifically, network managers typically use passive network monitors to collect statistical information and debugging information about packets on the computer network. Passive techniques completely avoid perturbing the network traffic and do not require modifications to network devices such as host computer systems or network routers.
As is well known in the art, passive monitoring techniques are only feasible on computer networks where all the packets are visible at a single point. An example of such a network is bus-based local area networks (LAN) such as Ethernet, and ring networks such as FDDI. However, modern networks, such as asynchronous transfer mode (ATM) networks, and switch-based Ethernet and FDDI, use centralized switching to allow higher aggregate traffic rates than could be carried on any one link of the computer network. This means that there is no longer any single point in the computer network to observe all the packets, except in the switch itself.
As is also well known in the art, observing the traffic at the switch is not passive because it requires modifying the switch, and probably using the resources of the switch. In addition, if the network manager wants to monitor the full traffic flow through a switch with N links at X bits per second, the network manager would need a link of N times X bits per second to funnel the data to a monitoring subsystem. This is very expensive so as to make it almost infeasible.
Many statistics gathering applications might work with a properly chosen sample of packets, but this would not be useful for debugging applications. A sampled stream of packets would require far less of the resources of the switch, and would not require a super high-speed link to deliver the packets to the monitor.
To be useful, a sampled set of packets has to be representative of the full packet flow.
SUMMARY OF THE INVENTION
In accordance with the present invention, a method in a computer network for random sampling of a plurality of network packets, each of the plurality of network packets containing a unique error check value, is provided including the steps of providing a network switch, providing a monitoring device, the monitoring having a memory and a data storage unit, providing a network interface to connect the network switch to the monitoring switch, selecting a reference error check code value in the monitoring device, receiving a first network packet from the network switch, comparing, in the network monitoring device, the reference error check code with an error check code of a first network packet, storing the first network packet in the monitoring device if the error check code value of the first network packet equals the reference error check code of the first network packet, and repeating the steps of receiving, comparing and storing for subsequent network packets. With such an arrangement, the sampled set of packets is representative of the full packet flow in the computer network.
BRIEF DESCRIPTION OF THE DRAWINGS
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as features and advantages thereof, will be best understood by reference to the detailed description of specific embodiments which follows, when read in conjunction with the accompanying drawings, wherein:
FIG. 1 is a block diagram of an exemplary asynchronous transfer mode (ATM) network containing a sampling device in accordance with the present invention;
FIG. 2 is a block diagram of the network monitoring device of FIG. 1;
FIG. 3 is a block diagram of an exemplary message filed with CRC; and
FIG. 4 is block diagram of a flow chart of a first embodiment of the present invention; and
FIG. 5 is a block diagram of a flow chart of an alternate embodiment of the present invention.
DETAILED DESCRIPTION
Referring to FIG. 1, an exemplary asynchronous transfer mode (ATM) local area network (LAN) is shown to include four stations labeled 10A, 10B, 10C, and 10D. The exemplary ATM LAN is also shown to include two ATM switches labeled as 12 and 13, respectively. The exemplary ATM LAN is also shown to include a monitoring device 14 connected to the ATM switch. By way of example, packets of data (not shown) may be transferred from station 10A to station 10D in the following manner. Packets of data are sent from station 10A to ATM switch 12, then to ATM switch 13, and out to station 10D. While the packets of data are passing through ATM switch 12, they are monitored by the monitoring device 14.
Referring to FIG. 2, the monitoring device 14 of FIG. 1 is shown to include a storage unit 16 connected to a memory 18 and a network interface 20. The network interface 20 provides connection of the network monitoring device 14 to the ATM switch 12 of FIG. 1.
Each of the packets of data being transferred in the exemplary ATM LAN of FIG. 1 may occur in any of several formats. Referring to FIG. 3, an exemplary data packet is shown to include an information field 30 and a cyclic redundancy check (CRC) field 32. The customary way of determining the validity of a message in the information field 30 is for a receiver to perform a mathematical operation upon the incoming data in the information field 30, i.e., calculate a cyclic redundancy check or CRC, and compare the results of that calculation with the calculation results sent by the transmitting station at the end of the message in the CRC field 32. Depending on how the comparison is done and the type of local area network, the desired result may be all zeros or some predetermined value.
CRC calculation may be performed in hardware or in software. A particular CRC calculation that produces a 32-bit result has been rarely found to improperly indicate that a complexly altered message is correct. This CRC calculation may be implemented as a single large scaled integrated (LSI) part, or in software with exclusive-OR instructions and tables.
The present method takes advantage of the fact that most network packet formats, as shown and described with reference to FIG. 3, include a header error check code or Cyclic Redundancy Check (CRC) over the entire packet. Although these check codes are not cryptographically strong, the present invention assumes that they are essentially random in practice. That is, there is no strong correlation between the check code values and the semantics of the packet.
Referring again to FIG. 1, before packets of data are sent through ATM switch 12, an error check code reference value is selected by the monitoring device 14. Then, as packets of data flow through ATM switch 12, each of their individual error check codes are compared to the error check code reference value in the monitoring device 14. If the packet check code matches the error check code reference value, the packet is copied and stored in the storage unit 16 of the monitoring device 14. Alternatively, if the packet of data passing through the ATM switch 12 does not contain an error check code, the memory 18 of the monitoring device 14 is capable of calculating its error check code and then comparing it to the error check code reference value.
Referring now to FIG. 4, the method of the present invention is shown in block format. At step 100, an error check code reference value is selected by the monitoring device. At step 102, the monitoring device receives a packet of data and compares the received packet error check code and the check code reference value. At step 104, the process determines whether a match has occurred. The match need not be mathematical identity. In fact, if the CRC codes are large and truly random, looking for an exact match would yield very low sampling rates. Instead, in the preferred embodiment, "match" is understood to mean "some efficiently computed Boolean function of the two codes yields `true`." Such functions include simple equality checks, and also include, as an example, comparison of bit fields. Moreover, the comparison function can be chosen to yield approximately any desired sampling rate, by changing the matching rate. If the two check codes match, at step 106 the received packet is stored in the storage unit of the monitoring device. If no match occurs, then at step 108 the monitoring device determines whether there is another packet to compare. If there is another packet to compare, the process repeats steps 102 through 108. If no more packets need to be checked, at step 110 sampling is complete.
Referring to FIG. 5, a second embodiment of the present invention is shown in block format. At step 120, an error check code reference value is selected by the monitoring device. At step 122, a packet is received by the monitoring device from the network. At step 124, the monitoring device calculates a packet check code for the received packet. At step 126, the monitoring device compares the error check code reference value with the calculated error check code value of the received packet. At step 128, the monitoring device determines whether a match of the calculated packet error check code and the check code reference value has occurred. If the two check codes match, at step 130 the packet is stored in the storage unit of the monitoring device. If no match occurs, then at step 132 the monitoring device determines whether there is another packet to compare. If there is another packet to compare, the process repeats steps 122 through 132. If no more packets need to be checked, at step 134 sampling is complete.
In another aspect of the present invention, the output of the comparing step 126 may be used to control the sampling of future packets, rather than the packet whose value was fed into the matching step. This may be of use if the ATM switch needs to start duplicating a sampled packet early in the receiving process, but the check code value appears at the end of the packet (or the internally calculated value appears after the entire packet is processed).
Having described a preferred embodiment of the invention, it will now become apparent to those skilled in the art that other embodiments incorporating its concepts may be provided. It is felt therefore, that this invention should not be limited to the disclosed invention, but should be limited only by the spirit and scope of the appended claims.

Claims (20)

What is claimed is:
1. A method in a computer network for random sampling of a plurality of network packets, the method comprising the steps of:
providing a network switch for receiving the network packets;
providing a monitoring device, the monitoring device having a memory and a data storage unit;
providing a network interface to connect the network switch to the monitoring device, the monitoring device receiving network packets from the network switch;
selecting a reference error check code in the monitoring device;
comparing, in the monitoring device, the reference error check code with an error check code of each network packet received by the monitoring device; and
selecting a sample of network packets from the network packets received by the monitoring device by storing each received network packet in the monitoring device if the error check code of that network packet matches the reference error check code.
2. The method in a computer network for random sampling of a plurality of network packets according to claim 1 wherein the reference error check code is selected from a first network packet.
3. The method in a computer network for random sampling of a plurality of network packets according to claim 1 wherein the reference error check code is selected from one of any of the plurality of network packets.
4. The method in a computer network for random sampling a plurality of network packets according to claim 1 wherein the error check code of a particular network packet matches the reference error check code when that error check code equals the reference error check code.
5. The method in a computer network for random sampling of a plurality of network packets according to claim 1 wherein the error check code of a particular network packet matches the reference error check code when a comparison function is satisfied, the comparison function comprising the steps of:
applying a first function to the reference error check code to produce a first computed value;
applying a second function to the error check code to produce a second computed value;
comparing the first computed value and the second computed value; and
signaling a match if the first computed value equals the second computed value.
6. The method in a computer network for random sampling of a plurality of network packets according to claim 5 wherein the first function and the second function are mathematical functions.
7. The method in a computer network for random sampling of a plurality of network packets according to claim 5 wherein the first function and the second function are logical functions.
8. The method in a computer network for random sampling of a plurality of network packets according to claim 1 wherein the reference error check code is selected from a previously received network packet.
9. The method in a computer network for random sampling of a plurality of network packets according to claim 1 wherein a new reference error check code is selected from a subsequently received network packet.
10. A method in a computer network for random sampling of a plurality of network packets, the method comprising the steps of:
providing a network switch for receiving the network packets;
providing a monitoring device, the monitoring device having a memory and a data storage unit;
providing a network interface to connect the network switch to the monitoring device;
selecting a reference error check code in the monitoring device;
receiving a first network packet, the first network packet lacking an error check code;
calculating an error check code for the first network packet;
comparing, in the monitoring device, the reference error check code with the calculated error check code of the first network packet; and
storing the first network packet in the monitoring device if the reference error check code matches the calculated error check code of the first network packet.
11. The method in a computer network for random sampling of a plurality of network packets according to claim 10 wherein the reference error check code is selected from one of any of the plurality of network packets.
12. The method in a computer network for random sampling a plurality of network packets according to claim 10 wherein the calculated error check code of the first network packet matches the reference error check code when that calculated error check code equals the reference error check code.
13. The method in a computer network for random sampling of a plurality of network packets according to claim 10 wherein the calculated error check code of the first network packet matches the reference error check code when a comparison function is satisfied, the comparison function comprising the steps of:
applying a first function to the reference error check code to produce a first computed value;
applying a second function to the calculated error check code to produce a second computed value;
comparing the first computed value and the second computed value; and
signaling a match if the first computed value equals the second computed value.
14. The method in a computer network for random sampling of a plurality of network packets according to claim 13 wherein the first function and the second function are mathematical functions.
15. The method in a computer network for random sampling of a plurality of network packets according to claim 13 wherein the first function and the second function are logical functions.
16. The method in a computer network for random sampling of a plurality of network packets according to claim 10 wherein the reference error check code is selected from a previously received network packet.
17. The method in a computer network for random sampling of a plurality of network packets according to claim 10 wherein the reference error check code is selected from a subsequently received network packet.
18. A method for randomly sampling network packets in a computer network, comprising the steps of:
selecting a reference value;
comparing the reference value to an error check code associated with each network packet arriving at a monitoring device; and
selecting a sample of network packets from the network packets that arrive at the monitoring device, each network packet being selected for the sample if the error check code associated with that network packet satisfies a predetermined relationship when compared to the reference value.
19. The method of claim 18 wherein the error check code associated with a particular network packet arriving at the monitoring device is included in the particular network packet.
20. The method of claim 18, further comprising the step of:
generating the error check code associated with a particular network packet from data in the particular network packet after the particular network packet arrives at the monitoring device.
US08/871,059 1995-05-17 1997-06-09 System for sampling network packets by only storing the network packet that its error check code matches with the reference error check code Expired - Lifetime US5790799A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US08/871,059 US5790799A (en) 1995-05-17 1997-06-09 System for sampling network packets by only storing the network packet that its error check code matches with the reference error check code
US09/151,903 US6115281A (en) 1997-06-09 1998-09-11 Methods and structures to cure the effects of hydrogen annealing on ferroelectric capacitors
US09/488,023 US6265230B1 (en) 1997-06-09 2000-01-20 Methods to cure the effects of hydrogen annealing on ferroelectric capacitors

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US44329995A 1995-05-17 1995-05-17
US08/871,059 US5790799A (en) 1995-05-17 1997-06-09 System for sampling network packets by only storing the network packet that its error check code matches with the reference error check code

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US44329995A Continuation 1995-05-17 1995-05-17

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US09/151,903 Continuation-In-Part US6115281A (en) 1997-06-09 1998-09-11 Methods and structures to cure the effects of hydrogen annealing on ferroelectric capacitors

Publications (1)

Publication Number Publication Date
US5790799A true US5790799A (en) 1998-08-04

Family

ID=23760250

Family Applications (1)

Application Number Title Priority Date Filing Date
US08/871,059 Expired - Lifetime US5790799A (en) 1995-05-17 1997-06-09 System for sampling network packets by only storing the network packet that its error check code matches with the reference error check code

Country Status (1)

Country Link
US (1) US5790799A (en)

Cited By (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085347A (en) * 1998-01-07 2000-07-04 Pocketscience, Inc. System and method for enhancing modem performance using digital signal processing techniques
WO2001015371A2 (en) * 1999-08-23 2001-03-01 Thomson-Csf Sextant Device for securely monitoring data switching
US6321338B1 (en) * 1998-11-09 2001-11-20 Sri International Network surveillance
US20020059078A1 (en) * 2000-09-01 2002-05-16 Valdes Alfonso De Jesus Probabilistic alert correlation
US20020075809A1 (en) * 2000-12-20 2002-06-20 Peter Phaal Method to associate input and output interfaces with packets read from a mirror port
US20020165956A1 (en) * 2001-05-07 2002-11-07 Peter Phaal Traffic driven scheduling of active tests
US20020163934A1 (en) * 2001-04-30 2002-11-07 Moore Todd A. Apparatus and method for network analysis
US6567379B1 (en) * 1999-06-09 2003-05-20 Cisco Technology, Inc. Traffic monitor using leaky bucket with variable fill
US20030226085A1 (en) * 2002-05-31 2003-12-04 Tucker S. Paul Apparatus and methods for combinational error detection in an InfiniBand switch
FR2846171A1 (en) * 2002-10-21 2004-04-23 France Telecom Data capturing device for data-processing bond, has sampler coupled to bond by coupler and designed to perform sampling outside bond, high-flow interface between coupler and sampler and low-flow interface at exit of sampler
US6789127B1 (en) * 2000-02-15 2004-09-07 Lucent Technologies Inc. Preparation for network interface recognition of network packet portion with declarative notation for field thereof and constraint therefor
US6894972B1 (en) 1999-11-12 2005-05-17 Inmon Corporation Intelligent collaboration across network system
US20050286434A1 (en) * 2004-06-25 2005-12-29 Inmon Corporation Methods and computer programs for generating data traffic matrices
US20060053331A1 (en) * 2004-09-03 2006-03-09 Chou Norman C Slave device having independent error recovery
US7016951B1 (en) 1999-04-30 2006-03-21 Mantech Ctx Corporation System and method for network security
WO2006067772A1 (en) * 2004-12-23 2006-06-29 Corvil Limited A method and apparatus for monitoring events in network traffic
US7130466B2 (en) 2000-12-21 2006-10-31 Cobion Ag System and method for compiling images from a database and comparing the compiled images with known images
US7146305B2 (en) 2000-10-24 2006-12-05 Vcis, Inc. Analytical virtual machine
US7162649B1 (en) 2000-06-30 2007-01-09 Internet Security Systems, Inc. Method and apparatus for network assessment and authentication
US7178166B1 (en) 2000-09-19 2007-02-13 Internet Security Systems, Inc. Vulnerability assessment and authentication of a computer by a local scanner
US20070041332A1 (en) * 2005-08-19 2007-02-22 Jorgensen Steven G Mirroring of a random subset of network traffic
US7237264B1 (en) 2001-06-04 2007-06-26 Internet Security Systems, Inc. System and method for preventing network misuse
US20080016569A1 (en) * 2000-10-10 2008-01-17 Internet Security Systems, Inc. Method and System for Creating a Record for One or More Computer Security Incidents
US7340776B2 (en) 2001-01-31 2008-03-04 International Business Machines Corporation Method and system for configuring and scheduling security audits of a computer network
US7370360B2 (en) 2002-05-13 2008-05-06 International Business Machines Corporation Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine
CN100466622C (en) * 2006-07-21 2009-03-04 华为技术有限公司 Method and system for random packet interval sampling on network
US20090094489A1 (en) * 2007-10-09 2009-04-09 Soon Seng Seh System, method and apparatus for tracing source of transmission error
US7519990B1 (en) 2002-07-19 2009-04-14 Fortinet, Inc. Managing network traffic flow
US20090116398A1 (en) * 2007-11-07 2009-05-07 Juniper Networks, Inc. Systems and methods for flow monitoring
US7565549B2 (en) 2002-01-04 2009-07-21 International Business Machines Corporation System and method for the managed security control of processes on a computer system
US7574740B1 (en) 2000-04-28 2009-08-11 International Business Machines Corporation Method and system for intrusion detection in a computer network
US7657938B2 (en) 2003-10-28 2010-02-02 International Business Machines Corporation Method and system for protecting computer networks by altering unwanted network data traffic
US7657419B2 (en) 2001-06-19 2010-02-02 International Business Machines Corporation Analytical virtual machine
US20100027430A1 (en) * 2001-04-30 2010-02-04 Netwitness Corporation Apparatus and Method for Network Analysis
US7770225B2 (en) 1999-07-29 2010-08-03 International Business Machines Corporation Method and apparatus for auditing network security
US7913303B1 (en) 2003-01-21 2011-03-22 International Business Machines Corporation Method and system for dynamically protecting a computer system from attack
US7921459B2 (en) 2000-04-28 2011-04-05 International Business Machines Corporation System and method for managing security events on a network
US7934254B2 (en) 1998-12-09 2011-04-26 International Business Machines Corporation Method and apparatus for providing network and computer system security
US7936687B1 (en) * 2004-03-30 2011-05-03 Extreme Networks, Inc. Systems for statistics gathering and sampling in a packet processing system
US8006243B2 (en) 1999-12-07 2011-08-23 International Business Machines Corporation Method and apparatus for remote installation of network drivers and software
US8605732B2 (en) 2011-02-15 2013-12-10 Extreme Networks, Inc. Method of providing virtual router functionality
US9485144B2 (en) 2004-06-25 2016-11-01 InMon Corp. Network traffic optimization
US9509583B2 (en) 2013-01-24 2016-11-29 InMon Corp. Method for asynchronous calculation of network traffic rates based on randomly sampled packets
US9712443B1 (en) 2004-06-25 2017-07-18 InMon Corp. Distributed traffic quota measurement and enforcement
US9722926B2 (en) 2014-01-23 2017-08-01 InMon Corp. Method and system of large flow control in communication networks

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4486877A (en) * 1982-06-25 1984-12-04 At&T Bell Laboratories Packet switching loop-around network and facilities testing
US5101402A (en) * 1988-05-24 1992-03-31 Digital Equipment Corporation Apparatus and method for realtime monitoring of network sessions in a local area network
US5247517A (en) * 1989-10-20 1993-09-21 Novell, Inc. Method and apparatus for analyzing networks
US5315580A (en) * 1990-09-28 1994-05-24 Hewlett-Packard Company Network monitoring device and system
US5467359A (en) * 1992-05-21 1995-11-14 International Business Machines Corporation Apparatus for generating and checking the error correction codes of messages in a message switching system
US5515376A (en) * 1993-07-19 1996-05-07 Alantec, Inc. Communication apparatus and methods

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4486877A (en) * 1982-06-25 1984-12-04 At&T Bell Laboratories Packet switching loop-around network and facilities testing
US5101402A (en) * 1988-05-24 1992-03-31 Digital Equipment Corporation Apparatus and method for realtime monitoring of network sessions in a local area network
US5247517A (en) * 1989-10-20 1993-09-21 Novell, Inc. Method and apparatus for analyzing networks
US5315580A (en) * 1990-09-28 1994-05-24 Hewlett-Packard Company Network monitoring device and system
US5467359A (en) * 1992-05-21 1995-11-14 International Business Machines Corporation Apparatus for generating and checking the error correction codes of messages in a message switching system
US5515376A (en) * 1993-07-19 1996-05-07 Alantec, Inc. Communication apparatus and methods

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Cheng et al, "ISDN Access Line Data Link Layer & Network Layer Maintenance", 1988, pp. 362-366.
Cheng et al, ISDN Access Line Data Link Layer & Network Layer Maintenance , 1988, pp. 362 366. *
Dravida et al, "Error Performance of IEEE 802.6 Metropolitan Area Networks", 1990, pp. 105-115.
Dravida et al, Error Performance of IEEE 802.6 Metropolitan Area Networks , 1990, pp. 105 115. *

Cited By (88)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6085347A (en) * 1998-01-07 2000-07-04 Pocketscience, Inc. System and method for enhancing modem performance using digital signal processing techniques
US6704874B1 (en) 1998-11-09 2004-03-09 Sri International, Inc. Network-based alert management
US9407509B2 (en) 1998-11-09 2016-08-02 Sri International Network surveillance
US7594260B2 (en) 1998-11-09 2009-09-22 Sri International Network surveillance using long-term and short-term statistical profiles to determine suspicious network activity
US6321338B1 (en) * 1998-11-09 2001-11-20 Sri International Network surveillance
US20100050248A1 (en) * 1998-11-09 2010-02-25 Sri International Network surveillance
US20040221191A1 (en) * 1998-11-09 2004-11-04 Porras Phillip Andrew Network surveillance
US7694115B1 (en) 1998-11-09 2010-04-06 Sri International Network-based alert management system
US6711615B2 (en) 1998-11-09 2004-03-23 Sri International Network surveillance
US6708212B2 (en) 1998-11-09 2004-03-16 Sri International Network surveillance
US7934254B2 (en) 1998-12-09 2011-04-26 International Business Machines Corporation Method and apparatus for providing network and computer system security
US7016951B1 (en) 1999-04-30 2006-03-21 Mantech Ctx Corporation System and method for network security
US6567379B1 (en) * 1999-06-09 2003-05-20 Cisco Technology, Inc. Traffic monitor using leaky bucket with variable fill
US7770225B2 (en) 1999-07-29 2010-08-03 International Business Machines Corporation Method and apparatus for auditing network security
US7483382B1 (en) 1999-08-23 2009-01-27 Thales Avionics S.A. Device for securely monitoring data switching
WO2001015371A2 (en) * 1999-08-23 2001-03-01 Thomson-Csf Sextant Device for securely monitoring data switching
WO2001015371A3 (en) * 1999-08-23 2002-02-07 Thomson Csf Sextant Device for securely monitoring data switching
FR2797964A1 (en) * 1999-08-23 2001-03-02 Thomson Csf Sextant SECURE DATA SWITCHING CONTROL DEVICE
US6894972B1 (en) 1999-11-12 2005-05-17 Inmon Corporation Intelligent collaboration across network system
US20050190695A1 (en) * 1999-11-12 2005-09-01 Inmon Corporation Intelligent collaboration across network systems
US7164657B2 (en) 1999-11-12 2007-01-16 Inmon Corporation Intelligent collaboration across network systems
US8006243B2 (en) 1999-12-07 2011-08-23 International Business Machines Corporation Method and apparatus for remote installation of network drivers and software
US6789127B1 (en) * 2000-02-15 2004-09-07 Lucent Technologies Inc. Preparation for network interface recognition of network packet portion with declarative notation for field thereof and constraint therefor
US7574740B1 (en) 2000-04-28 2009-08-11 International Business Machines Corporation Method and system for intrusion detection in a computer network
US7921459B2 (en) 2000-04-28 2011-04-05 International Business Machines Corporation System and method for managing security events on a network
US7634800B2 (en) 2000-06-30 2009-12-15 International Business Machines Corporation Method and apparatus for network assessment and authentication
US7162649B1 (en) 2000-06-30 2007-01-09 Internet Security Systems, Inc. Method and apparatus for network assessment and authentication
US20020059078A1 (en) * 2000-09-01 2002-05-16 Valdes Alfonso De Jesus Probabilistic alert correlation
US7917393B2 (en) 2000-09-01 2011-03-29 Sri International, Inc. Probabilistic alert correlation
US7178166B1 (en) 2000-09-19 2007-02-13 Internet Security Systems, Inc. Vulnerability assessment and authentication of a computer by a local scanner
US9027121B2 (en) 2000-10-10 2015-05-05 International Business Machines Corporation Method and system for creating a record for one or more computer security incidents
US20080016569A1 (en) * 2000-10-10 2008-01-17 Internet Security Systems, Inc. Method and System for Creating a Record for One or More Computer Security Incidents
US7146305B2 (en) 2000-10-24 2006-12-05 Vcis, Inc. Analytical virtual machine
US7245587B2 (en) 2000-12-20 2007-07-17 Inmon Corporation Method to associate input and output interfaces with packets read from a mirror port
US20020075809A1 (en) * 2000-12-20 2002-06-20 Peter Phaal Method to associate input and output interfaces with packets read from a mirror port
US7499590B2 (en) 2000-12-21 2009-03-03 International Business Machines Corporation System and method for compiling images from a database and comparing the compiled images with known images
US7130466B2 (en) 2000-12-21 2006-10-31 Cobion Ag System and method for compiling images from a database and comparing the compiled images with known images
US7340776B2 (en) 2001-01-31 2008-03-04 International Business Machines Corporation Method and system for configuring and scheduling security audits of a computer network
US7712138B2 (en) 2001-01-31 2010-05-04 International Business Machines Corporation Method and system for configuring and scheduling security audits of a computer network
US7634557B2 (en) 2001-04-30 2009-12-15 Netwitness Corporation Apparatus and method for network analysis
US20020163934A1 (en) * 2001-04-30 2002-11-07 Moore Todd A. Apparatus and method for network analysis
US20100046391A1 (en) * 2001-04-30 2010-02-25 Netwitness Corporation Apparatus and method for network analysis
US20100027430A1 (en) * 2001-04-30 2010-02-04 Netwitness Corporation Apparatus and Method for Network Analysis
US20020165956A1 (en) * 2001-05-07 2002-11-07 Peter Phaal Traffic driven scheduling of active tests
US7237264B1 (en) 2001-06-04 2007-06-26 Internet Security Systems, Inc. System and method for preventing network misuse
US7657419B2 (en) 2001-06-19 2010-02-02 International Business Machines Corporation Analytical virtual machine
US7565549B2 (en) 2002-01-04 2009-07-21 International Business Machines Corporation System and method for the managed security control of processes on a computer system
US7673137B2 (en) 2002-01-04 2010-03-02 International Business Machines Corporation System and method for the managed security control of processes on a computer system
US7370360B2 (en) 2002-05-13 2008-05-06 International Business Machines Corporation Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine
US6898752B2 (en) * 2002-05-31 2005-05-24 Agilent Technologies, Inc. Apparatus and methods for combinational error detection in an InfiniBand switch
US20030226085A1 (en) * 2002-05-31 2003-12-04 Tucker S. Paul Apparatus and methods for combinational error detection in an InfiniBand switch
US9118705B2 (en) 2002-07-19 2015-08-25 Fortinet, Inc. Detecting network traffic content
US8244863B2 (en) 2002-07-19 2012-08-14 Fortinet, Inc. Content pattern recognition language processor and methods of using the same
US8918504B2 (en) 2002-07-19 2014-12-23 Fortinet, Inc. Hardware based detection devices for detecting network traffic content and methods of using the same
US8239949B2 (en) 2002-07-19 2012-08-07 Fortinet, Inc. Managing network traffic flow
US7519990B1 (en) 2002-07-19 2009-04-14 Fortinet, Inc. Managing network traffic flow
US20090168651A1 (en) * 2002-07-19 2009-07-02 Fortinent, Inc Managing network traffic flow
US8788650B1 (en) 2002-07-19 2014-07-22 Fortinet, Inc. Hardware based detection devices for detecting network traffic content and methods of using the same
US10645097B2 (en) 2002-07-19 2020-05-05 Fortinet, Inc. Hardware-based detection devices for detecting unsafe network traffic content and methods of using the same
US9930054B2 (en) 2002-07-19 2018-03-27 Fortinet, Inc. Detecting network traffic content
US8140660B1 (en) 2002-07-19 2012-03-20 Fortinet, Inc. Content pattern recognition language processor and methods of using the same
US9906540B2 (en) 2002-07-19 2018-02-27 Fortinet, Llc Detecting network traffic content
US10404724B2 (en) 2002-07-19 2019-09-03 Fortinet, Inc. Detecting network traffic content
US9374384B2 (en) 2002-07-19 2016-06-21 Fortinet, Inc. Hardware based detection devices for detecting network traffic content and methods of using the same
US8789183B1 (en) * 2002-07-19 2014-07-22 Fortinet, Inc. Detecting network traffic content
FR2846171A1 (en) * 2002-10-21 2004-04-23 France Telecom Data capturing device for data-processing bond, has sampler coupled to bond by coupler and designed to perform sampling outside bond, high-flow interface between coupler and sampler and low-flow interface at exit of sampler
EP1414188A2 (en) * 2002-10-21 2004-04-28 France Telecom Capturing data from a data-link with sampling
EP1414188A3 (en) * 2002-10-21 2004-09-15 France Telecom Capturing data from a data-link with sampling
US7913303B1 (en) 2003-01-21 2011-03-22 International Business Machines Corporation Method and system for dynamically protecting a computer system from attack
US7657938B2 (en) 2003-10-28 2010-02-02 International Business Machines Corporation Method and system for protecting computer networks by altering unwanted network data traffic
US7936687B1 (en) * 2004-03-30 2011-05-03 Extreme Networks, Inc. Systems for statistics gathering and sampling in a packet processing system
US8005009B2 (en) 2004-06-25 2011-08-23 InMon Corp. Methods and computer programs for generating data traffic matrices
US9485144B2 (en) 2004-06-25 2016-11-01 InMon Corp. Network traffic optimization
US20050286434A1 (en) * 2004-06-25 2005-12-29 Inmon Corporation Methods and computer programs for generating data traffic matrices
US9712443B1 (en) 2004-06-25 2017-07-18 InMon Corp. Distributed traffic quota measurement and enforcement
US7526676B2 (en) 2004-09-03 2009-04-28 Avago Technologies General Ip (Singapore) Pte. Ltd. Slave device having independent error recovery
US20060053331A1 (en) * 2004-09-03 2006-03-09 Chou Norman C Slave device having independent error recovery
US20080225739A1 (en) * 2004-12-23 2008-09-18 Corvil Limited Method and Apparatus for Monitoring Events in Network Traffic
WO2006067772A1 (en) * 2004-12-23 2006-06-29 Corvil Limited A method and apparatus for monitoring events in network traffic
US20070041332A1 (en) * 2005-08-19 2007-02-22 Jorgensen Steven G Mirroring of a random subset of network traffic
US8155118B2 (en) * 2005-08-19 2012-04-10 Hewlett-Packard Development Company, L.P. Mirroring of a random subset of network traffic
CN100466622C (en) * 2006-07-21 2009-03-04 华为技术有限公司 Method and system for random packet interval sampling on network
US20090094489A1 (en) * 2007-10-09 2009-04-09 Soon Seng Seh System, method and apparatus for tracing source of transmission error
US20090116398A1 (en) * 2007-11-07 2009-05-07 Juniper Networks, Inc. Systems and methods for flow monitoring
US8072894B2 (en) * 2007-11-07 2011-12-06 Juniper Networks, Inc. Systems and methods for flow monitoring
US8605732B2 (en) 2011-02-15 2013-12-10 Extreme Networks, Inc. Method of providing virtual router functionality
US9509583B2 (en) 2013-01-24 2016-11-29 InMon Corp. Method for asynchronous calculation of network traffic rates based on randomly sampled packets
US9722926B2 (en) 2014-01-23 2017-08-01 InMon Corp. Method and system of large flow control in communication networks

Similar Documents

Publication Publication Date Title
US5790799A (en) System for sampling network packets by only storing the network packet that its error check code matches with the reference error check code
US5706348A (en) Use of marker packets for synchronization of encryption/decryption keys in a data communication network
US6804257B1 (en) System and method for framing and protecting variable-lenght packet streams
US6798740B1 (en) Method and apparatus for switch core health monitoring and redundancy
US6671832B1 (en) Method and apparatus for performing error checking in a network
US6876669B2 (en) Packet fragmentation with nested interruptions
US7007208B1 (en) Systems and methods for data unit modification
US8014281B1 (en) Systems and methods for limiting the rates of data to/from a buffer
US8031700B2 (en) PPP terminating equipment, network equipment and method of responding to LCP echo requirement
US5642421A (en) Encryption of low data content ATM cells
US20100195663A1 (en) Fabric Channel Control Apparatus and Method
EP0469812A1 (en) Detection of duplicate alias addresses
WO2003085908A2 (en) Method computer-readable medium and systems for resorting traffic during failover in a cable head end
EP0853399A1 (en) Report stream data rate regulation
US20040098655A1 (en) Rolling CRC scheme for improved error detection
US6732317B1 (en) Apparatus and method for applying multiple CRC generators to CRC calculation
US4910777A (en) Packet switching architecture providing encryption across packets
EP0786881A2 (en) Method and system for synchronisation of encryption/decryption keys in a data communications network using marker packets
CA2344175A1 (en) Paging system having optional forward error correcting code transmission at the data link layer
US7971008B2 (en) Flexible queue and stream mapping systems and methods
JPH05191454A (en) Data transfer system
US7100078B1 (en) Method and apparatus for restoration of lost blocks in a multicast data transmission
Birch et al. A programmable 800 Mbit/s CRC check/generator unit for LANs and MANs
US6381245B1 (en) Method and apparatus for generating parity for communication between a physical layer device and an ATM layer device
Cisco Interface Commands

Legal Events

Date Code Title Description
STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: COMPAQ INFORMATION TECHNOLOGIES GROUP, L.P., TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DIGITAL EQUIPMENT CORPORATION;COMPAQ COMPUTER CORPORATION;REEL/FRAME:012447/0903;SIGNING DATES FROM 19991209 TO 20010620

FPAY Fee payment

Year of fee payment: 4

AS Assignment

Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., TEXAS

Free format text: CHANGE OF NAME;ASSIGNOR:COMPAQ INFORMANTION TECHNOLOGIES GROUP LP;REEL/FRAME:014102/0224

Effective date: 20021001

FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FEPP Fee payment procedure

Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 12