SLIDING FRAME COMPARATOR IN A NETWORK DIAGNOSTIC DEVICE

Information

  • Patent Application
  • 20070189173
  • Publication Number
    20070189173
  • Date Filed
    February 14, 2007
    17 years ago
  • Date Published
    August 16, 2007
    17 years ago
Abstract
A network diagnostic component that is placed in-line between a first and second node. The diagnostic component is used to perform a comparison operation on any specified portion of a network data frame. For example, the first node may communicate with the second node using a network data frame that includes one or more data units. The network diagnostic component uses a starting and ending address that specify where in the network data frame to begin and end the comparison operation. A match template that specifies a particular condition for comparison is also used. The network diagnostic component then performs the comparison operation by searching for a data unit that at least partially matches the comparison condition in the portion of the network data frame specified by the starting and ending addresses. The data unit may be located at any location in the specified portion of the data frame.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

To further clarify the above and other advantages and features of the present invention, a more particular description of the invention will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. It is appreciated that these drawings depict only typical embodiments of the invention and are therefore not to be considered limiting of its scope. The invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:



FIG. 1 illustrates a block diagram of a network including a network diagnostic component placed in-line between two nodes;



FIG. 2 illustrates a detailed view of a particular embodiment of the network diagnostic component of FIG. 1; and



FIG. 3 illustrates a method for a network diagnostic component placed in-line between two nodes to perform a comparison operation on any specified portion of a data frame.


Claims
  • 1. A method for one or more hardware modules of a network diagnostic component that is placed in-line between first and second nodes in a network to perform a real time comparison operation on any specified portion of full line rate network data traffic, the method comprising: an act of receiving a network data frame from the first node for communication with the second node, the network data frame comprising one or more data units;an act of using a starting address that specifies where in the data frame to begin the comparison operation;an act of using an ending address that specifies where in the data frame to end the comparison operation;an act of using a match template that specifies a particular condition for comparison; andan act of performing a comparison operation by searching for a data unit in the portion of the data frame specified by the starting and ending addresses that at least partially matches the comparison condition of the match template, wherein the data component may occur in any location within the specified portion of the data frame.
  • 2. The method in accordance with claim 1, wherein the comparison operation is performed on substantially every data frame of the full line rate network data traffic.
  • 3. The method in accordance with claim 1, wherein the one or more data units of the data frame are four bytes in size and wherein the comparison operation comprises: an act of the network diagnostic component comparing the four bytes of a single data unit.
  • 4. The method in accordance with claim 1, wherein the one or more data units of the data frame are four bytes in size and wherein the comparison operation comprises: an act of the network diagnostic component comparing the last three bytes of a first data unit and the first byte of an adjoining second data unit.
  • 5. The method in accordance with claim 1, wherein the one or more data units of the data frame are four bytes in size and wherein the comparison operation comprises: an act of the network diagnostic component comparing the last two bytes of a first data unit and the first two bytes of an adjoining second data unit.
  • 6. The method in accordance with claim 1, wherein the one or more data units of the data frame are four bytes in size and wherein the comparison operation comprises: an act of the network diagnostic component comparing the last byte of a first data unit and the first three bytes of an adjoining second data unit.
  • 7. The method in accordance with claim 1, wherein the network diagnostic component includes a memory and wherein the data frame further includes non-data units that are interspersed with the data units, the method further comprising: an act of reading a first data unit;an act of storing the read first data unit in the memory;an act of reading a second data unit while ignoring any non-data units interspersed between the first and second data units; andan act of comparing the condition specified by the match template with the first data unit in the memory and the second data unit.
  • 8. The method in accordance with claim 1, wherein the network diagnostic component is a SAS/SATA network diagnostic component.
  • 9. The method in accordance with claim 1, wherein the network data frame is of the SAS/SATA protocol.
  • 10. The method in accordance with claim 1, wherein the one or more data units of the data frame are a plurality of bytes in size and wherein the comparison operation comprises: an act of the network diagnostic component comparing the plurality of bytes of a single data unit.
  • 11. The method in accordance with claim 1, wherein the one or more data units of the data frame are a plurality of bytes in size and wherein the comparison operation comprises: an act of the network diagnostic component comparing a first number of bytes of a first data unit and a second number of bytes of an adjoining second data unit.
  • 12. A network diagnostic device placed in-line between first and second nodes in a network comprising: a sliding comparator module configured to: receive a network data frame from the first node for communication with the second node, the network data frame comprising one or more data units;use a starting address that specifies where in the data frame to begin the comparison operation;use an ending address that specifies where in the data frame to end the comparison operation;use a match template that specifies a particular condition for comparison; andperform a comparison operation by searching for a data unit in the portion of the data frame specified by the starting and ending addresses that at least partially matches the comparison condition of the match template, wherein the data unit may occur in any location within the specified portion of the data frame.
  • 13. The network diagnostic device in accordance with claim 12, wherein the sliding comparator module is a state machine.
  • 14. The network diagnostic device in accordance with claim 12, further comprising: a frame comparator module that is configured to perform a comparison operation on a determined number of data units of the data frame; anda match comparator module that is configured to receive the results of the comparison operation performed by both the frame comparator module and the sliding comparator module and determine whether a successful match has occurred.
  • 15. The network diagnostic device in accordance with claim 14, wherein the match comparator module is a state machine.
  • 16. The network diagnostic device in accordance with claim 12, wherein the one or more data units of the data frame are four bytes in size and wherein the sliding comparator is further configured to: compare the four bytes of a single data unit.
  • 17. The network diagnostic device in accordance with claim 12, wherein the one or more data units of the data frame are four bytes in size and wherein the sliding comparator is further configured to: compare the last three bytes of a first data unit and the first byte of an adjoining second data unit.
  • 18. The network diagnostic device in accordance with claim 12, wherein the one or more data units of the data frame are four bytes in size and wherein the sliding comparator is further configured to: compare the last two bytes of a first data unit and the first two bytes of an adjoining second data unit.
  • 19. The network diagnostic device in accordance with claim 12, wherein the one or more data units of the data frame are four bytes in size and wherein the sliding comparator is further configured to: compare the last byte of a first data unit and the first three bytes of an adjoining second data unit.
  • 20. The network diagnostic device in accordance with claim 12, wherein the first and second nodes are SAS/SATA nodes and the network diagnostic component is a SAS/SATA network component.
  • 21. The network diagnostic device in accordance with claim 12, wherein the network diagnostic device is one of a bit error rate tester, a protocol analyzer, a generator, a jammer, and a monitor.
  • 22. The network diagnostic device in accordance with claim 12, wherein the one or more data units of the data frame are a plurality of bytes in size and wherein the sliding comparator is further configured to: compare the plurality of bytes of a single data unit.
  • 23. The network diagnostic device in accordance with claim 12, wherein the one or more data units of the data frame are a plurality of bytes in size and wherein the sliding comparator is further configured to: compare a first number of bytes of a first data unit and a second number of bytes of an adjoining second data unit.
  • 24. A diagnostic network comprising: a first node;a second node;a network diagnostic device placed in-line between the first and second nodes comprising: receive a network data frame from the first node for communication with the second node, the network data frame comprising one or more data units;use a starting address that specifies where in the data frame to begin the comparison operation;use an ending address that specifies where in the data frame to end the comparison operation;use a match template that specifies a particular condition for comparison; andperform a comparison operation by searching for a data unit in the portion of the data frame specified by the starting and ending addresses that at least partially matches the comparison condition of the match template, wherein the data unit may occur in any location within the specified portion of the data frame.
  • 25. The diagnostic network in accordance with claim 24, wherein the first and second nodes are SAS/SATA nodes and the network diagnostic device is a SAS/SATA network component.
Provisional Applications (1)
Number Date Country
60773507 Feb 2006 US