System for testing Ethernet paths and links without impacting non-test traffic

Information

  • Patent Grant
  • 9742579
  • Patent Number
    9,742,579
  • Date Filed
    Wednesday, July 30, 2014
    10 years ago
  • Date Issued
    Tuesday, August 22, 2017
    7 years ago
Abstract
A system for testing Ethernet paths or links without adversely impacting non-test traffic. The system includes a test traffic generator that includes a scheduler that determines when a new test packet is generated. The test traffic generator includes a packet creator that builds a test packet and a transmitter for transmitting the test packet via the Ethernet path or link. The packet creator sends the test packet to the transmitter. The traffic generator includes a transmit credit block coupled to the transmitter or to the scheduler. The transmit credit block stores an amount of credits representing a number of bytes that are available to transmit and decrements the amount each time a non-test packet is communicated via the Ethernet path or link.
Description
FIELD OF THE INVENTION

This invention relates generally to testing of Ethernet systems, and, more particularly, to systems for testing Ethernet paths and links without impacting non-test traffic.


BACKGROUND OF THE INVENTION

As depicted in FIG. 1, an Ethernet link 11 is a connection between two adjacent Ethernet devices 10A or 10B, while an Ethernet path 13, as depicted in FIG. 2, is a connection between two Ethernet devices 10A or 10B via a network 12 composed of multiples links, which may or may not be using Ethernet. The Ethernet device 10A, 10B, may be a network element device, such as a router, a switch, etc. or could be a simpler device, such as a personal computer (PC) or other terminal device. In case of a network element device, the Ethernet traffic may originate from or be destined for the device itself or from other devices behind it. The Ethernet link 11 and the Ethernet path 13 can be called an Ethernet circuit. The testing of an Ethernet circuit includes transmitting test traffic from one location toward an Ethernet device 10A or 10B. The test location may be anywhere on the Ethernet circuit. Test traffic reception processing, which may include validation, counting, bandwidth determination, etc., is not necessary, albeit useful, for the purpose of this invention.


The test traffic uses specified attributes (e.g., Ethernet ethertype, data payload, priority parameters, IP or MAC addresses, packet size, etc.) and specified transmission characteristics (such as bandwidth, burst size, test duration, etc.). The goal of the testing is to verify the ability of the Ethernet link 11 or path 13 to successfully convey Ethernet frames from one device 10A or 10B to another Ethernet device 10B or 10A under the specified conditions (packet attributes and transmissions characteristics). The traffic attributes or transmission characteristics used for a given test session may be set to any desired value as necessary but the operation of this invention does not depend on any setting. The Ethernet link 11 or path 13 is said to be in-use or in-service when traffic other than the test traffic is present on the said Ethernet link 11 or path 13 at the location where test traffic is transmitted.


SUMMARY OF THE INVENTION

Aspects disclosed herein relate to the testing of an Ethernet link 11 or Ethernet path 13, while it is being used by non-test traffic. In a typical test scenario, not using this invention, the non-test traffic is interrupted so that the validity of the test is not impaired. As a result, such a test is only performed at the installation time of the Ethernet link 11 or path 13 or when the Ethernet circuit is not in use or during non-normal business hours (night, week-ends, etc.). It is, however, desirable to be able to perform a test while non-test traffic is present, because problems (to be detected by the test) usually occur at the time of normal operation of the Ethernet circuit. But the test should be conducted in such a way that the normal non-test traffic is not affected. This invention relates to the methods and techniques used to perform a test while not impairing or impacting the normal operation of the non-test traffic. Impact or impairment occurs when non-test traffic is either excessively delayed or prevented from being delivered from one Ethernet device 10A or 10B to the other Ethernet device 10B or 10A due to the presence of test traffic. It is possible to execute a test, with non-test traffic present, without the use of this invention however some of the non-test traffic may either be dropped or excessively delayed.





BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be better understood from the following description of preferred embodiments together with reference to the accompanying drawings, in which:



FIG. 1 is a function block diagram of two Ethernet devices connected via an Ethernet link;



FIG. 2 is a functional block diagram of an Ethernet path between two Ethernet devices;



FIG. 3 is a functional block diagram of a test traffic generator in an Ethernet network comprising Ethernet links, an Ethernet path, and Ethernet devices;



FIG. 4 is a functional block diagram of a transmit generator and its functional blocks including a transmit block coupled to a transmit credit block; and



FIG. 5 is a functional block diagram of a transmit generator and its functional blocks like those shown in FIG. 4 except that the transmit credit block is responsive to a scheduler.





DETAILED DESCRIPTION

Although the invention will be described in connection with certain preferred embodiments, it will be understood that the invention is not limited to those particular embodiments. On the contrary, the invention is intended to cover all alternatives, modifications, and equivalent arrangements as may be included within the spirit and scope of the invention as defined by the appended claims.


An embodiment of the invention includes the test traffic generator 14A, 14B, or 14C of FIGS. 3-5, which dynamically adapts its transmission characteristics in such a way as to not impair or impact the non-test traffic. Non-test traffic transmission characteristics (bandwidth, burst size, duration, etc.) may be bound by a bandwidth profile of some sort or may only be limited by the physical characteristics of the Ethernet medium (link speed, etc.).


The dynamic test traffic generator 14A may be embedded in an Ethernet device 10A or 10B, or it may be located adjacent to the Ethernet link 11 as a generator 14B or it may be located in-line of the Ethernet link 11 as a generator 14C. In the case of generator 14C, there are at least two Ethernet ports that carry non-test traffic. Generator 14C must therefore forward non-test traffic between its ports. This function does not relate to the operation of this invention. In all cases, the information about the amount of non-test traffic flowing in the same direction as the test traffic is made available to the dynamic test traffic generator 14A, 14B, 14C. As an example, if the test traffic generator 14B sends test traffic toward the Ethernet device 10B, the information about the amount of non-test traffic flowing from Ethernet device 10A toward the Ethernet device 10B is made available to the generator 14B. The Ethernet path 13 and the network 12 may or may not be present. If the network 12 and the Ethernet path 13 are not present, the two Ethernet links 11 are connected together and form a single Ethernet link (as in FIG. 1).


The transmit generator 20 of FIG. 4 includes multiple functional building blocks, such as a scheduler 21, a packet creator 22, a transmit block 23 and a transmit credit block 24. Other functional building blocks not related to this invention may be included but are not illustrated. The scheduler 21 determines when a new test packet needs to be generated. It instructs the packet creator 22, which builds a valid test packet and sends it to the transmit block 23. The function of the transmit block 23 depends on where the traffic generator 20 is located. In the case of the traffic generator 14A, embedded in Ethernet device 10A, the function of the transmit block 23 is to sending the generated traffic to other functions within Ethernet device 10A. The exact scope and operation of these other functions do not relate to this invention. In the case of the traffic generator 14C, the function of the transmit block 23 is to send the generated traffic to other functions within the device. These other functions do not relate to the operation of this invention. In the case of the traffic generator 14B, the transmit block 23 includes an Ethernet port and is responsible for sending the Ethernet test packet on the Ethernet link 25 attached to it. Two different preferred embodiments are illustrated in FIGS. 4 and 5.


In the case of FIG. 4, the transmit block 23 queries the transmit credit block 24 and transmits a test packet if sufficient credits are available. Credits represent the number of bytes to transmit. Headers, preamble and other Ethernet frame fields, such as the inter-frame gap, may be included in the credit count depending on the mode of operation of the bandwidth associated with the test. As an example, a layer 2 test includes at least Ethernet headers but not the inter-packet gap. If a transmission occurs, the appropriate amount of credit is debited from the transmit credit block 24. If there is not enough transmit credit available, the transmission is delayed until enough credit is available. The information about the amount of non-test traffic is provided to the transmit credit block 24 via line 26. The method by which this information is made available to block 24 is not relevant to the operation of this invention. Credits are removed from the transmit credit block 24 for each non-test packet. This effectively reduces the amount of credit available to allow transmission of test traffic. The credit total may become negative, due to excessive non-test traffic. This will further delay the transmission of test traffic because more credits will need to be added before enough credit is available to start the transmission of a test packet. Transmission credits are added to the transmit credit block 24 using methods and techniques that are not pertinent to this invention.


In the case of FIG. 5, the scheduler 21 queries the transmit credit block 24 and only sends a request to the packet creator 22 if sufficient credits are available. Credits represent the number of bytes to transmit. Headers, preamble and other Ethernet frame fields, such as the inter-packet gap, may be included in the credit count depending on the mode of operation of the bandwidth associated with the test. As an example, a layer 2 test would include at least Ethernet headers but not the inter-frame gap. If a request occurs, the appropriate amount of credit is debited from the transmit credit block 24. If not enough transmit credit is available, the request is delayed until enough credit is available. The information about the amount of non-test traffic is provided to the transmit credit block 24 via the line 26. The method by which this information is made available to block 24 is not relevant to the operation of this invention. Credits are removed from the transmit credit block 24 for each non-test packet. This effectively reduces the amount of credit available to allow transmission of test traffic. The credit total may become negative, due to excessive non-test traffic. This will further delay the transmission of test traffic because more credits will need to be added before enough credit is available to start the transmission of a test packet. Transmission credits are added to the transmit credit block 24 using methods and techniques that are not pertinent to this invention.


While particular embodiments and applications of the present invention have been illustrated and described, it is to be understood that the invention is not limited to the precise construction and compositions disclosed herein and that various modifications, changes, and variations may be apparent from the foregoing descriptions without departing from the spirit and scope of the invention as defined in the appended claims.

Claims
  • 1. A system for testing Ethernet paths or links without adversely impacting non-test traffic, comprising: at least one pair of Ethernet devices coupled to opposite ends of an Ethernet path or link for transmitting non-test packets on said Ethernet path or link within a predetermined bandwidth limit,at least one test packet generator coupled to said Ethernet path or link for transmitting test packets on said Ethernet path or link to test the transmission characteristics of said Ethernet path or link, said at least one test packet generator including a scheduler that determines when a new test packet is to be created and a packet creator responsive to requests sent by said scheduler to build new test packets to be transmitted on said Ethernet path or link;a transmit credit block for storing an amount of credits representing a number of bytes that are available to transmit to be within said predetermined bandwidth limit, and decrementing said number of bytes available to transmit each time a test or non-test packet is transmitted via said Ethernet path or link; anda transmit block coupled to said packet creator and said transmit credit block for transmitting said new test packet on said Ethernet path or link when said amount of credits stored in said transmit credit block is sufficient to permit said new test packet to be transmitted without having said non-test packets exceed said predetermined bandwidth limit.
  • 2. The system of claim 1, wherein the transmit block queries the transmit credit block to determine whether sufficient credits are available from the transmit credit block to transmit the test packet.
  • 3. The system of claim 1, wherein the requests sent by said scheduler comprise a first request, the transmit credit block is coupled to the scheduler, the scheduler queries the transmit credit block prior to sending said first request to the packet creator to build the test packet, wherein said querying comprising querying whether there are sufficient credits available to the transmit credit block to transmit the test packet.
  • 4. The system of claim 1, wherein the credits include at least one field from an Ethernet frame.
  • 5. The system of claim 4, wherein the at least one field is a preamble field of the Ethernet frame.
  • 6. The system of claim 4, wherein the at least one field is an inter-frame gap of the Ethernet frame.
  • 7. The system of claim 1, further comprising an Ethernet device, the test packet generator being incorporated into the Ethernet device.
  • 8. The system of claim 1, wherein the test packet generator includes an Ethernet port, and wherein the test packet generator is connected to the Ethernet link via the Ethernet port.
  • 9. The system of claim 1, wherein the test packet generator includes at least two Ethernet ports for in-line connection of the test packet generator to the Ethernet link.
  • 10. A system for testing Ethernet paths or links without adversely impacting non-test traffic, comprising: at least one pair of Ethernet devices coupled to opposite ends of an Ethernet path or link for transmitting non-test packets on said Ethernet path or link within a predetermined bandwidth limit,at least one test packet generator coupled to said Ethernet path or link for transmitting test packets on said Ethernet path or link to test the transmission characteristics of said Ethernet path or link, said at least one test packet generator including a scheduler that determines when a new test packet is to be created, and a packet creator responsive to requests sent by said scheduler said scheduler for building said new test packet to be transmitted on said Ethernet path or link,a transmit credit block for storing an amount of credits representing a number of bytes that are available to transmit, and decrementing the amount of credits each time a non-test packet or a test packet is transmitted via the Ethernet path or link, and each time a test packet is transmitted via the Ethernet path or link; andwherein said scheduler is coupled to said transmit credit block and enables said packet creator to create said new test packet when said amount of credits stored in said transmit credit block is sufficient to transmit said new test packet via a transmit block coupled to said packet creator.
  • 11. A system for testing Ethernet paths or links without adversely impacting non-test traffic, comprising: a test traffic generator that includes a scheduler that determines when a new test packet is to be created;a packet creator responsive to a request sent by said scheduler for building said new test packet to be transmitted on said Ethernet path or link;a transmit credit block for storing an amount of credits representing a number of bytes that are available to transmit, and decrementing the amount of credits each time a non-test packet is transmitted via the Ethernet path or link, and each time a test packet is transmitted via the Ethernet path or link; anda transmit block coupled to said packet creator and said transmit credit block for transmitting said new test packet on said Ethernet path or link when said amount of credits stored in said transmit credit block is sufficient to transmit said new test packet, the test packet used to determine the quality of the Ethernet path or link.
  • 12. The system of claim 11, wherein the transmit block is configured to query the transmit credit block to determine whether sufficient credits are available from the transmit credit block to transmit the test packet.
  • 13. The system of claim 11, wherein the transmit credit block is coupled to the scheduler, wherein the scheduler queries the transmit credit block prior to sending said first request to the packet creator to build the test packet, said querying comprising querying the transmit credit block about whether there are sufficient credits available from the transmit credit block to transmit the test packet.
  • 14. The system of claim 11, wherein the credits include at least one field from an Ethernet frame.
  • 15. The system of claim 14, wherein the at least one field is a preamble field of the Ethernet frame.
  • 16. The system of claim 4, wherein the at least one field is an inter-frame gap of the Ethernet frame.
  • 17. The system of claim 14, further comprising an Ethernet device, the test traffic generator being incorporated into the Ethernet device.
  • 18. The system of claim 11, wherein the test traffic generator includes an Ethernet port, and wherein the test traffic generator is connected to the Ethernet link via the Ethernet port.
  • 19. The system of claim 11, wherein the test traffic generator includes at least two Ethernet ports for in-line connection of the test traffic generator to the Ethernet link.
CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of and claims priority to U.S. patent application Ser. No. 13/293,199, filed Nov. 10, 2011, which is a continuation of and claims priority to U.S. patent application Ser. No. 12/209,345, filed Sep. 12, 2008, now U.S. Pat. No. 8,139,494, which claims the benefit of U.S. Provisional Patent Application No. 60/993,622, filed Sep. 13, 2007, each of which is incorporated herein by reference in its entirety.

US Referenced Citations (27)
Number Name Date Kind
5937165 Schwaller Aug 1999 A
6052362 Somer Apr 2000 A
6075773 Clark et al. Jun 2000 A
6085248 Sambamurthy et al. Jul 2000 A
6625764 Dawson Sep 2003 B1
6950963 Parson Sep 2005 B1
7020807 Ehmann et al. Mar 2006 B2
7194661 Payson Mar 2007 B1
7313144 Kobayashi et al. Dec 2007 B2
7765290 Hua Jul 2010 B2
7792115 Dropps Sep 2010 B2
7826470 Aloni Nov 2010 B1
20020080723 Hoch et al. Jun 2002 A1
20030092394 Gray et al. May 2003 A1
20040015616 Chen Jan 2004 A1
20040071084 El-Hennawey et al. Apr 2004 A1
20040208129 Old Oct 2004 A1
20040230881 Gwak Nov 2004 A1
20050281392 Weeks et al. Dec 2005 A1
20060045121 Monk Mar 2006 A1
20070047448 Chiu et al. Mar 2007 A1
20070121504 Hellenthal et al. May 2007 A1
20070177517 Manabe Aug 2007 A1
20080117810 Stott May 2008 A1
20080195901 Solt Aug 2008 A1
20080225733 Hua Sep 2008 A1
20090207850 Osano et al. Aug 2009 A1
Foreign Referenced Citations (12)
Number Date Country
1 424 809 Jun 2004 EP
2 198 557 Apr 2014 EP
2000354046 Dec 2000 JP
2002057704 Feb 2002 JP
2002157949 May 2002 JP
2003169093 Jun 2003 JP
2005184709 Jul 2005 JP
2005236909 Sep 2005 JP
2007005160 Jan 2007 JP
2007189476 Jul 2007 JP
5318875 Oct 2013 JP
WO 2009034450 Mar 2009 WO
Non-Patent Literature Citations (5)
Entry
International Search Report corresponding to co-pending International Patent Application Serial No. PCT/IB2008/002365, dated Jan. 7, 2009, 4 pages.
Written Opinion corresponding to co-pending International Patent Application Serial No. PCT/IB2008/002365, dated Jan. 7, 2009, 5 pages.
Office Action corresponding to co-pending Japanese Patent Application No. 2010-524592, dated Feb. 27, 2013, 2 pages.
European Search Report, Application No. 08807052.9-1862, dated Jun. 21, 2013, 6 pages.
Office Action (w/English translation) corresponding to co-pending Japanese Patent Application No. 2013-141559, dated Jun. 20, 2014, 5 pages.
Related Publications (1)
Number Date Country
20140341020 A1 Nov 2014 US
Provisional Applications (1)
Number Date Country
60993622 Sep 2007 US
Continuations (2)
Number Date Country
Parent 13293199 Nov 2011 US
Child 14446708 US
Parent 12209345 Sep 2008 US
Child 13293199 US