US8225143B2 - Method and apparatus to inject noise in a network system - Google Patents

Method and apparatus to inject noise in a network system Download PDF

Info

Publication number
US8225143B2
US8225143B2 US12/021,026 US2102608A US8225143B2 US 8225143 B2 US8225143 B2 US 8225143B2 US 2102608 A US2102608 A US 2102608A US 8225143 B2 US8225143 B2 US 8225143B2
Authority
US
United States
Prior art keywords
switch
ethernet
noise
signal
control signal
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 - Fee Related, expires
Application number
US12/021,026
Other versions
US20090190674A1 (en
Inventor
Allen Keith Bates
Nils Haustein
Craig Klein
Daniel J. Winarski
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to US12/021,026 priority Critical patent/US8225143B2/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: WINARSKI, DANIEL J., BATES, ALLEN KEITH, HAUSTEIN, NILS, KLEIN, CRAIG
Publication of US20090190674A1 publication Critical patent/US20090190674A1/en
Application granted granted Critical
Publication of US8225143B2 publication Critical patent/US8225143B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Definitions

  • the disclosure relates to a method, system, and apparatus for performing diagnostic operations in a computerized network system.
  • Data storage system users may require a high degree of reliability and quick recovery from failures. Some data storage system users may require protection from data loss due to natural disasters or equipment failures. For example, data storage system users such as financial institutions, retailers, and the like may demand a high degree of reliability for financial transactions, inventory control, etc.
  • An enterprises storage system (“ESS”) such as the TotalStorage® Enterprise Storage Server® from IBM®, may be used by financial institutions and others businesses to store data where reliability is important.
  • ESS enterprise storage system
  • Such systems may be configured as a network.
  • an Ethernet network may be used in a data storage system to couple a plurality of data storage devices.
  • the Ethernet network may be configured as a storage area network (“SAN”).
  • the SAN may include communication links such as Ethernet cables, wires, switches, and connectors.
  • Sometimes a marginal Ethernet connection may occur in the data storage system. When this happens the information stream may be disrupted causing loss of data.
  • any loss of data may be critical. Thus, being able to test the integrity and reliability of data storage systems is beneficial.
  • the present invention is developed in response to the present state of the art, and in particular, in response to the problems and needs in the art that have not yet been fully solved by currently available methods, systems, and apparatuses. Accordingly, the present invention is developed to provide a reliable and cost effective apparatus, system, and method to perform diagnostics on a data storage system while the system is intact and active.
  • the present invention provides a method, system, and apparatus to inject noise in a communication link of a network. Additionally, the present invention provides a reliable and cost effective apparatus, system, and method to perform fault simulation on a data storage system while the system is intact and active. The present invention further provides a cost effective manner to inject noise into a cable such that the system is still intact, i.e., the cable is not pulled, but the information stream is disrupted. Thus, the present invention allows testing and verifying that a subsystem can detect, isolate, and handle noise.
  • an apparatus of the present invention for injecting noise onto a cable or link of a network.
  • the apparatus includes at least two jacks; a plurality of signal wires connecting the two jacks together; a switch connected to the two jacks by at least one of the plurality of signal wires; a parallel port connected to the switch via a control signal wire; and a power connector connected to the switch.
  • an apparatus of the present invention for injecting noise onto a cable or link of a network.
  • the apparatus includes at least two ports; a plurality of signal wires connecting the two ports together; and a plurality of switches connected to the two ports by the plurality of signal wires.
  • a method of the present invention for injecting noise onto a cable or link of a network.
  • the method includes proving an Ethernet network having an Ethernet infrastructure; embedding a noise injector card in the Ethernet infrastructure; entering a license key into the Ethernet infrastructure; activating the embedded noise injector card; and injecting noise onto an Ethernet link.
  • a method of the present invention for injecting noise onto a cable or link of a network.
  • the method includes, providing a noise injector card, connecting the noise injector card to the link, receiving a control signal to activate the noise injector card, switching a switch of the noise injector card, and injecting noise onto the link.
  • FIG. 1 is a schematic block diagram illustrating a computerized network environment, which may implement the present invention
  • FIG. 2 is a schematic block diagram illustrating an embodiment to inject noise in a computerized network in accordance with the present invention
  • FIG. 3 is a schematic diagram illustrating an embodiment to inject noise in computerized network accordance with the present invention
  • FIG. 4 is a schematic diagram illustrating an embodiment to inject noise in a computerized network in accordance with the present invention
  • FIG. 5 is a schematic flow chart diagram illustrating a method to inject noise in a computerized network in accordance with the present invention.
  • FIG. 6 is a schematic flow chart diagram illustrating a method to inject noise in a computerized network in accordance with the present invention.
  • modules may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components.
  • a module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.
  • Modules may also be implemented in software for execution by various types of processors.
  • An identified module of executable code may, for instance, comprise one or more physical or logical blocks of computer instructions which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together, but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.
  • a module of executable code may be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices.
  • operational data may be identified and illustrated herein within modules, and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed over different locations including over different storage devices, and may exist, at least partially, merely as electronic signals on a system or network.
  • Reference to a signal bearing medium may take any form capable of generating a signal, causing a signal to be generated, or causing execution of a program of machine-readable instructions on a digital processing apparatus.
  • a signal bearing medium may be embodied by a transmission line, a compact disk, digital-video disk, a magnetic tape, a Bernoulli drive, a magnetic disk, a punch card, flash memory, integrated circuits, or other digital processing apparatus memory device.
  • the schematic flow chart diagrams included herein are generally set forth as logical flow chart diagrams. As such, the depicted order and labeled steps are indicative of one embodiment of the presented method. Other steps and methods may be conceived that are equivalent in function, logic, or effect to one or more steps, or portions thereof, of the illustrated method. Additionally, the format and symbols employed are provided to explain the logical steps of the method and are understood not to limit the scope of the method. Although various arrow types and line types may be employed in the flow chart diagrams, they are understood not to limit the scope of the corresponding method. Indeed, some arrows or other connectors may be used to indicate only the logical flow of the method. For instance, an arrow may indicate a waiting or monitoring period of unspecified duration between enumerated steps of the depicted method. Additionally, the order in which a particular method occurs may or may not strictly adhere to the order of the corresponding steps shown.
  • the network system 100 may be configured as a Local Area Network (LAN), a Storage Area Network (“SAN”), Wide Area Network (WAN), the Internet, and Intranet etc.
  • the network system 100 may include a plurality of computing devices 104 , 106 , and 108 , such as computers, servers, storage devices, subsystems, etc., like IBM data storage devices.
  • the computing devices 104 , 106 , and 108 communicate with each other via communication lines or cables 102 a , 120 b , 120 c , respectively.
  • the network system 100 also includes at least one hub and/or switch 110 to facilitate the management and/or direction of data flow between computing devices 104 , 106 , 108 .
  • switch 110 is coupled to switch 120 via crossover cable 122 .
  • Switch 120 may also be attached to other devices 150 , such as edge devices, depending on the size of the network system 100 .
  • the edge devices 150 may be other computing devices, such as computers, servers, storage devices, etc.
  • Switch 110 is also coupled to computing devices 104 , 106 , 108 via cables 120 a , 120 b , and 120 c , respectively.
  • the switch 110 may direct or steer data flow, such as information packets like Ethernet packets, between the attached computing devices 104 , 106 , 108 .
  • Switch 120 may also direct data flow, such as Ethernet packets, to other devices or switches attached to network system 100 .
  • FIG. 2 depicts an exemplary embodiment to inject noise in a computerized system in accordance with the present invention.
  • the exemplary embodiment may be configured as apparatus 200 .
  • Apparatus 200 may be implemented, for example, in network system 100 as illustrated in FIG. 1 . Accordingly, description of the apparatus 200 refers to elements of FIG. 1 , like numbers referring to like elements.
  • apparatus 200 is deployed as part of a system test of a SAN system 100 .
  • the apparatus 200 injects noise onto the SAN system 100 to simulate and verify the system impact of having a marginal cable.
  • apparatus 200 may simulate a faulty cable in an RJ-45 Ethernet based network, such that noise is injected by apparatus 200 onto one of the interface cables that connects two subsystems within the system.
  • apparatus 200 allows testing and verifying that the storage subsystem is operable to detect, isolate, and handle disruptions in the information stream.
  • storage subsystems 104 , 106 , 106 comprise an enterprises storage system (“ESS”), such as the TotalStorage® Enterprise Storage Server® from IBM®,).
  • ESS enterprises storage system
  • apparatus 200 comprises an Ethernet noise injector 220 .
  • the Ethernet noise injector 220 may be inserted into an Ethernet network system, such as the network system 100 .
  • the Ethernet noise injector 220 is coupled to Ethernet switch 110 and computing device 108 via Ethernet cables 120 c , 120 d , respectively.
  • Ethernet noise injector 220 may be coupled to Ethernet cables 120 a , and/or 120 b , such that Ethernet traffic traveling between switch 110 and computing devices 104 , 106 , travel through Ethernet noise injector 220 .
  • Ethernet noise injector 220 may be coupled to Ethernet cable 122 , such that Ethernet traffic traveling between switches 110 , 120 travel through Ethernet noise injector 220 . Accordingly, the Ethernet noise injector 220 may be coupled to Ethernet network 100 as needed to test any one portion and/or the whole system.
  • Ethernet noise injector 220 is configured such that in operation, the network traffic and/or information packets (e.g., Ethernet packages) traveling between Ethernet switch 110 and computing device 108 also travel through Ethernet noise injector 220 .
  • the Ethernet noise injector 220 acts as a pass through device.
  • noise is injected by Ethernet noise injector 220 onto any one of the interface cables 120 a , 120 b , 120 c , that connects two subsystems (e.g., devices 104 , 106 , 108 ) while the network system 100 is active and operational.
  • apparatus 200 disrupts the information stream in the network without the need to pull an Ethernet cable.
  • the disruption of the information stream by apparatus 200 simulates a marginal cable or a pulling of a cable within the network during a systems test. This allows verification that the subsystems are operating properly to detect, isolate, and handle the noise.
  • apparatus 200 is deploy as part of a system test to simulate the pulling of a cable to verify the system can handle inadvertent and intentional re-cabling while the system is active. Accordingly, apparatus 200 provides a cost efficient manner to verify that a subsystem (e.g., 104 , 106 , and 108 ) can detect, isolate, and handle the noise.
  • a subsystem e.g., 104 , 106 , and 108
  • subsystems 104 , 106 , 108 are computer workstations such as IBM X-Series, storage subsystems such as IBM's DS8000 disk storage subsystem, and enterprise-class processor subsystems such as IBM's Z-Series computers.
  • FIG. 3 illustrates an exemplary embodiment of apparatus 200 in accordance with the present invention.
  • Apparatus 200 includes Ethernet noise injector card 220 configured to inject noise onto a communication or data link/cable, such as Ethernet cables 120 a , 120 b , 120 c , 120 d ( FIGS. 1 and 2 ).
  • the Ethernet noise injector 220 is coupled to a SAN system comprising at least one enterprises storage system (“ESS”), such as the TotalStorage® Enterprise Storage Server® from IBM®.
  • ESS enterprises storage system
  • the Ethernet noise injector 220 comprises a switch 340 , at least two Ethernet connectors, ports, or jacks 320 , 322 , and a plurality of signal wires 330 , 332 , 334 , and 336 , which couple the switch 340 to Ethernet jacks 320 , 322 .
  • the jacks 320 , 322 comprise an RJ45 jack.
  • jacks 320 , 322 are configured as RJ45 jack with a T-configuration.
  • the Ethernet noise injector 220 includes a parallel port or connector 324 , such as a PC port or DB25 connector, coupled to switch 340 via buffer 326 and switch control signal wire 328 .
  • a switch control signal communicates (via switch control signal wire 328 ) to switch 340 to activate and deactivate switch 340 .
  • the activation and deactivation of switch 340 connects or disconnects wire 336 a and 336 b .
  • wire 336 a is connected to wire 336 b such that an electronic signal travels from jack 320 to jack 322 .
  • the switch 340 includes an analog switch. In other embodiments, the switch 340 includes a digital switch.
  • Ethernet noise injector 220 comprises a power connector 344 to supply electrical power to apparatus 200 .
  • the power connector 344 may include a 5 volt power connector.
  • power is supplied to Ethernet noise injector 220 via Power over Ethernet (hereinafter PoE).
  • PoE Power over Ethernet
  • power is supplied to Ethernet noise injector 220 via an internal or external battery source.
  • the power connector 344 is configured to plug into a power supply, such as an AC/DC adapter.
  • the Ethernet noise injector 220 is configured as a small electronic card with at least two Ethernet ports 320 , 322 that link to the system Ethernet connection undergoing testing (e.g., see FIG. 2 ).
  • the PC parallel port 324 with a simple user application is used. For example, one side of the differential signal is electronically disconnected via analog switch 340 , and the other three signals are left intact (see FIG. 3 ). This allows the receiving interface to see state transitions on the interface, so it does not perceive a disconnection, but the data stream is corrupted. To simulate a disconnection, all four signals are disconnected electronically (e.g., see. FIG. 4 ).
  • Ethernet injector card 220 may be included or embedded in a switch, hub, jack, or any other connection device capable of connecting to an Ethernet cable.
  • the Ethernet injector card 220 may be included or embedded as part of the Ethernet switch 110 such that network Ethernet traffic between the Ethernet switch 110 and computing device 108 travels through the Ethernet injector card 220 .
  • Ethernet injector card 220 may be included as part of any one of the computing devices 104 , 106 , 108 such that network Ethernet traffic traveling between the Ethernet switch 110 and the computing devices 104 , 106 , 108 travels through the Ethernet injector card 220 .
  • computing devices 104 , 106 , 108 are storage subsystems, of a SAN network 100 .
  • an Ethernet jumper cable such as Ethernet cable 120 c
  • RJ45 jack 320 Ethernet signals TX+, TX ⁇ and RX+ are directly connected between RJ45 jack 320 and RJ45 jack 322 , via wires 330 , 332 , and 334 , respectively, so that they transmit these signals unaltered.
  • Signal RX ⁇ from RJ45 jack 320 is connected to analog switch 340 via wire 336 a
  • the other side of analog switch 340 is connected to RJ45 jack 322 via wire 336 b .
  • the signal RX ⁇ is connected and disconnected via analog switch 340 .
  • signal RX ⁇ is controlled by engaging and disengaging analog switch 340 .
  • control signal 328 The activation of analog switch 340 may be controlled by control signal 328 .
  • Control signal 328 is substantially buffered by buffer 326 .
  • the unbuffered control signal is generated by a parallel port, such as a PC parallel port, connected to a connector 324 , such as a DB25 female connector.
  • the connection and disconnection of signal RX ⁇ is thus controlled via the parallel port.
  • control signal 328 may be generated via other common computer interfaces, such as USB, RS-232, FireWire, etc.
  • the RJ45 jack 322 is connected to a subsystem (e.g., storage subsystem 108 ) via cable, such as Ethernet jumper cable 120 d , to complete the network 100 .
  • Power to analog switch 340 and buffer 326 may be provided externally from power connector 344 .
  • an external 5V power supply 344 may provide power to analog switch 340 .
  • power to activate the analog switch 340 may be provide via Power over Ethernet (hereinafter “PoE”).
  • PoE Power over Ethernet
  • the Ethernet noise injector 220 is configured to perform fault simulations on active systems. For example, Ethernet noise injector 220 performs fault simulations by simulating a marginal cable, a cable disconnection and/or re-cabling during operation of a system. Thus, the Ethernet noise injector 220 allows a cost-effective and economical diagnostic testing of an active and intact computing network system to verify performance parameters or to identify potential problem areas.
  • FIG. 4 illustrates another exemplary embodiment of apparatus 200 in accordance with the present invention.
  • the exemplary apparatus 200 comprises an Ethernet noise injector card 420 .
  • the Ethernet noise injector 420 is configured as a link pull simulator.
  • the Ethernet noise injector 420 includes at least two jacks 320 , 322 , a plurality of switches 440 , and a plurality of signal wires 330 a , 332 a , 334 a , 336 a connecting the jacks 320 , 322 to the switches 440 .
  • jacks 320 , 322 include RJ45 jacks and signal wires include four signal wires TX+ 330 a , TX ⁇ 332 a , RX+ 334 a , and RX ⁇ 336 a.
  • the Ethernet noise injector 420 includes a parallel port or connector 324 , such as a PC port or DB25 connector, coupled to switches 440 via buffer 326 and switch control signal wire 328 .
  • a switch control signal communicates (via switch control signal wire 328 ) to switches 440 to activate and deactivate switches 440 .
  • the switches 440 include analog switches. In other embodiments, the switches 440 include digital switches.
  • connector 324 is a DB25 female connector
  • switches 440 are configured as a bank of switches in which four signal wires TX+ 330 a , TX ⁇ 332 a , RX+ 334 a , and RX ⁇ 336 a connect one side of the bank of switches 440 to jack 320 . Also, the four signal wires TX+ 330 b , TX ⁇ 332 b , RX+ 334 b , and RX ⁇ 336 b connect the other side of the bank of switches 440 to jack 322 .
  • Ethernet noise injector 420 comprises a power connector 344 that supplies electrical power to apparatus 200 .
  • the power connector 344 may include a 5 volt power connector.
  • power is supplied to Ethernet noise injector 420 via Power over Ethernet (hereinafter PoE).
  • PoE Power over Ethernet
  • power is supplied to Ethernet noise injector 420 via an internal or external battery source.
  • the power connector 344 is configured to plug into a power supply, such as an AC/DC adapter.
  • an electrical or communication signal travels between jack 320 and jack 322 via the four signals TX+ 330 , TX ⁇ 332 , RX+ 334 , and RX ⁇ 336 .
  • the signal traveling between jack 320 and jack 322 may be interrupted by activating and deactivating switches 440 .
  • switches 440 are in an “on” position, the signal travels between jacks 320 , 322 .
  • the switches 440 are in an “off” position, the signal between jacks 320 , 322 is interrupted.
  • the Ethernet noise injector 420 when the switches 440 are in the “on” position, the Ethernet noise injector 420 appears as a straight cable between the switch 110 and the storage subsystem 108 (see e.g., FIG. 2 ). When the switches 440 are in the “off” position, because all four signals are disconnected substantially simultaneously, it appears to the storage subsystem 108 as though the connection has been lost via a cable pull. Thus, in one embodiment, the Ethernet noise injector 420 simulates a link pull.
  • At least one of the switches 440 may be activated between the on/off positions by control signal 328 .
  • At least one of the signal wires 330 , 332 , 334 , 336 may be interrupted via one of the switches 440 .
  • switch control signal 328 may signal an “off” position to one of the switches 440 such that only wire 330 a and wire 330 b are disconnected.
  • switch control signal 328 may comprise multiple wires, each wire controlling a separate switch, such that any or all of multiple wires 330 a and 330 b , 332 a and 332 b , 334 a and 334 b , and 336 a and 336 b may be separately or collectively switched “on” and “off” to simulate different failure modes.
  • FIG. 5 is a schematic flow chart diagram illustrating certain embodiments of a method 500 to inject noise in a system to simulate a marginal cable or cable pull.
  • Method 500 may be implemented in a network system, such as system 100 in FIG. 2 .
  • method 500 may be implemented in an apparatus, such as apparatus 200 in FIGS. 3 and 4 .
  • method 500 provides 510 a noise injector card comprising at least one switch and at least two jacks or ports.
  • the noise injector card corresponds to apparatus 220 ( FIG. 3 ).
  • the noise injector card corresponds to apparatus 420 ( FIG. 4 ).
  • the noise injector card is connected 520 to a link or cable of a network.
  • the noise injector card is connected to Ethernet cables 120 c and 120 d as shown in FIG. 2 .
  • a control signal is received 530 to activate the noise injector card.
  • the control signal is received through a port, such as parallel port 324 ( FIGS. 3 and 4 ).
  • the control signal travels through buffer 326 along switch control signal wire 328 (e.g., FIGS. 3 and 4 ).
  • At least one switch of the noise injector card is switch 540 between “on/off” positions to disrupt at least one signal traveling on at least one electrical wire of the noise injector card.
  • the switch corresponds to switch 340 where electrical wire 336 a and 336 b is connected and disconnected by switch 340 (e.g., see FIG. 3 ).
  • the switch corresponds to switches 440 where at least one of the switches 440 is turned on or off to connect or disconnect an electrical signal traveling on at least one electrical wire 330 , 332 , 334 , and 336 (e.g., see FIG. 4 ).
  • the noise injector card injects 550 noises onto a link or cable of a computerized network.
  • method 500 electronically disconnects one side of the differential signal by switching an analog switch such that the other three signals are left intact (e.g., FIG. 3 ).
  • Ethernet traffic is sent from computer subsystem 108 to Ethernet switch 110 through Ethernet Noise Injector 220 .
  • Ethernet Noise Injector 220 When the Ethernet Noise Injector 220 is “off”, Ethernet traffic travels through said injector from computer subsystem 108 to Ethernet switch 110 uninterrupted.
  • Ethernet Noise Injector 220 is “on”, one wire 336 a / 336 b is disrupted by Ethernet Noise Injector 220 and does not pass half of the differential Ethernet signal.
  • Ethernet switch 110 Because Ethernet is a level-based technology, the fact that the other half of the differential signal carried by wire 334 is successfully transmitted from computer subsystem 108 to Ethernet switch 110 means that Ethernet switch 110 detects level transitions and does not perceive that the connection has been broken, but because the data transitions are incorrect due to the disconnected wires 336 a and 336 b , the data is corrupted.
  • the injection of noise by method 500 allows computer subsystem 108 to resend the information that was interrupted previously by the Ethernet Noise Injector once the injector is turned “off”, testing the network system's ability to recover from temporary interface errors.
  • method 500 injects 550 noises to simulate a disconnection or cable pull by electronically disconnecting all four signals.
  • a bank of analog switches 440 are connected to four signal wires 330 , 332 , 334 , and 336 such that any one of the signals or combinations thereof, are disconnected by switching the bank of switches 440 .
  • FIG. 6 is a schematic flow chart diagram illustrating certain embodiments of a method 600 to deploy a system test for verifying the impact of having a marginal Ethernet cable or cable pull.
  • Method 600 may be deployed in a network system, such as system 100 in FIG. 2 .
  • method 600 may be implemented in an apparatus, such as apparatus 200 in FIGS. 3 and 4 .
  • method 600 provides an Ethernet network having an Ethernet infrastructure.
  • the Ethernet network corresponds to network 100 ( FIGS. 1 and 2 ).
  • a noise injector card is embedded 610 in the Ethernet infrastructure.
  • the Ethernet infrastructure includes at least one of a switch, a computing device, and a host bus adapter.
  • the noise injector card is embedded in an existing Ethernet infrastructure such as Ethernet host bus adapter (HBA), switches, hubs, or combinations thereof ( FIGS. 1 and 2 ).
  • the embedded noise injector card corresponds to noise injector card 220 or 420 (e.g., FIGS. 3 and 4 ).
  • HBA represents an outgoing interface of a computing device 104 , 106 , 108 (e.g., FIGS. 1 and 2 ).
  • the switches and/or hubs 110 , 120 are used to interconnect the computing devices 104 , 106 , 108 among each other and end-point devices 150 , such as storage systems ( FIGS. 1 and 2 ).
  • the HBA is connected to a storage system directly without a switch or hub.
  • the storage system includes the HBA, which is used to connect the storage system to other storage systems directly or via hubs and switches.
  • computing device 108 may comprise a storage system comprising a HBA, which connects device 108 to Ethernet jumper cable 120 c ( FIG. 1 ). In this configuration, because the noise injector card is embedded in the HBA there is no need to connect apparatus 200 with Ethernet jumper cable 120 c and 120 d , as shown in FIG. 2 .
  • a request is sent 630 for a license key to activate the embedded noise injector card.
  • a requester such as a customer or user, sends 630 a request to a supplier, such as IBM.
  • the supplier supplies 640 the license key to the requester.
  • the license key is entered 650 into the Ethernet infrastructure.
  • the embedded noise injector card is activated 620 .
  • At least one switch of the embedded noise injector card is switch 670 to connect or disconnect one or more electrical wires/lines.
  • the electrical wires/lines carry an electrical signal (e.g., FIGS. 3 and 4 ).
  • the electronic signal may be communicating data and information to be stored and retrieved from storage subsystems 104 , 106 , 108 in the Ethernet network 100 ( FIGS. 1 and 2 ).
  • storage subsystems 104 , 106 , 108 comprise ESS.
  • the activation of the noise injector card may be done externally or by management software.
  • control software which exists on one of the computer systems present on the Ethernet interface
  • the computer system may send a special Ethernet packet to the embedded Ethernet Noise Injector card that activates or deactivates the switches.
  • the activation of the embedded noise injector card is done via the license key.
  • a customer or user may obtain a license key from a supplier or vendor.
  • IBM supplies the license key to activate the embedded noise injector card.
  • the user enters the license key into the Ethernet infrastructure being tested. Once the license key is entered, the embedded noise injector card is activated.
  • the license key may be entered in accordance with standard methods, such as management and configuration interfaces.
  • the configuration software (which may be use to set up Ethernet switches in the network as known in the art) may also be used to configure and run the Ethernet Error Injector when an optional license code is entered.
  • method 500 or 600 maybe deployed as part of a complete system test of IBM storage systems or products to verify the system impact of having a marginal Ethernet cable in our storage systems.
  • the noise injector card e.g., apparatus 200 ; FIGS. 3 and 4
  • injects noise into a link/cable such that the system is still intact; i.e., the cable is not pulled, but the information stream is disrupted.
  • the injection of noise into the cable simulates the pulling of the cable to verify that the system can handle inadvertent and intentional re-cabling while the system is active.
  • methods 500 and 600 provides a reliable, cost effective manner to perform fault simulations and determine which Ethernet devices (e.g., 104 , 106 , and 108 ) are not performing properly while the system 100 is active and intact.
  • the present invention provides a method and apparatus to inject Ethernet noise into a computerized network system, such as IBM X-Series, P-Series, Z-Series, and I-Series computer systems. Also, as depicted in FIGS. 1-6 , embodiments of the present invention facilitate simulating a faulty and/or marginal cable in an Ethernet based network while the system, such as a storage system, is intact and active.
  • a computerized network system such as IBM X-Series, P-Series, Z-Series, and I-Series computer systems.
  • embodiments of the present invention facilitate simulating a faulty and/or marginal cable in an Ethernet based network while the system, such as a storage system, is intact and active.
  • certain embodiments of the present invention are configured to inject noise onto one of the interface cables that connects at least two subsystem within the storage system (see e.g., FIGS. 1-6 ). This allows one to verify that the subsystem can detect, isolate, and handle the noising be injected by the present invention.

Abstract

An apparatus, system, and method are disclosed for injecting noise onto a link of a network. The apparatus, system, and method include, providing a noise injector card, connecting the noise injector card to the link, receiving a control signal to activate the noise injector card, switching a switch of the noise injector card, and injecting noise onto the link.

Description

BACKGROUND OF THE INVENTION
1. Field of the Invention
The disclosure relates to a method, system, and apparatus for performing diagnostic operations in a computerized network system.
2. Description of the Related Art
Data storage system users may require a high degree of reliability and quick recovery from failures. Some data storage system users may require protection from data loss due to natural disasters or equipment failures. For example, data storage system users such as financial institutions, retailers, and the like may demand a high degree of reliability for financial transactions, inventory control, etc. An enterprises storage system (“ESS”), such as the TotalStorage® Enterprise Storage Server® from IBM®, may be used by financial institutions and others businesses to store data where reliability is important. Such systems may be configured as a network.
For example, an Ethernet network may be used in a data storage system to couple a plurality of data storage devices. The Ethernet network may be configured as a storage area network (“SAN”). The SAN may include communication links such as Ethernet cables, wires, switches, and connectors. Sometimes a marginal Ethernet connection may occur in the data storage system. When this happens the information stream may be disrupted causing loss of data. For some data storage system users, such as a financial institution or health care provider, any loss of data may be critical. Thus, being able to test the integrity and reliability of data storage systems is beneficial.
SUMMARY OF THE INVENTION
The present invention is developed in response to the present state of the art, and in particular, in response to the problems and needs in the art that have not yet been fully solved by currently available methods, systems, and apparatuses. Accordingly, the present invention is developed to provide a reliable and cost effective apparatus, system, and method to perform diagnostics on a data storage system while the system is intact and active.
The present invention provides a method, system, and apparatus to inject noise in a communication link of a network. Additionally, the present invention provides a reliable and cost effective apparatus, system, and method to perform fault simulation on a data storage system while the system is intact and active. The present invention further provides a cost effective manner to inject noise into a cable such that the system is still intact, i.e., the cable is not pulled, but the information stream is disrupted. Thus, the present invention allows testing and verifying that a subsystem can detect, isolate, and handle noise.
In one embodiment, an apparatus of the present invention is presented for injecting noise onto a cable or link of a network. The apparatus includes at least two jacks; a plurality of signal wires connecting the two jacks together; a switch connected to the two jacks by at least one of the plurality of signal wires; a parallel port connected to the switch via a control signal wire; and a power connector connected to the switch.
In one embodiment, an apparatus of the present invention is presented for injecting noise onto a cable or link of a network. The apparatus includes at least two ports; a plurality of signal wires connecting the two ports together; and a plurality of switches connected to the two ports by the plurality of signal wires.
In one embodiment, a method of the present invention is presented for injecting noise onto a cable or link of a network. The method includes proving an Ethernet network having an Ethernet infrastructure; embedding a noise injector card in the Ethernet infrastructure; entering a license key into the Ethernet infrastructure; activating the embedded noise injector card; and injecting noise onto an Ethernet link.
In one embodiment, a method of the present invention is presented for injecting noise onto a cable or link of a network. The method includes, providing a noise injector card, connecting the noise injector card to the link, receiving a control signal to activate the noise injector card, switching a switch of the noise injector card, and injecting noise onto the link.
Reference throughout this specification to features, advantages, or similar language does not imply that all of the features and advantages that may be realized with the present invention should be or are in any single embodiment of the invention. Rather, language referring to the features and advantages is understood to mean that a specific feature, advantage, or characteristic described in connection with an embodiment is included in at least one embodiment of the present invention. Thus, discussion of the features and advantages, and similar language, throughout this specification may, but do not necessarily, refer to the same embodiment.
Furthermore, the described features, advantages, and characteristics of the invention may be combined in any suitable manner in one or more embodiments. One skilled in the relevant art will recognize that the invention may be practiced without one or more of the specific features or advantages of a particular embodiment. In other instances, additional features and advantages may be recognized in certain embodiments that may not be present in all embodiments of the invention.
These features and advantages of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth hereinafter.
BRIEF DESCRIPTION OF THE DRAWINGS
In order that the advantages of the invention will be readily understood, a more particular description of the invention briefly described above will be rendered by reference to specific embodiments that are illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments of the invention and are not therefore to be considered to be 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 is a schematic block diagram illustrating a computerized network environment, which may implement the present invention;
FIG. 2 is a schematic block diagram illustrating an embodiment to inject noise in a computerized network in accordance with the present invention;
FIG. 3 is a schematic diagram illustrating an embodiment to inject noise in computerized network accordance with the present invention;
FIG. 4 is a schematic diagram illustrating an embodiment to inject noise in a computerized network in accordance with the present invention;
FIG. 5 is a schematic flow chart diagram illustrating a method to inject noise in a computerized network in accordance with the present invention; and
FIG. 6 is a schematic flow chart diagram illustrating a method to inject noise in a computerized network in accordance with the present invention.
DETAILED DESCRIPTION OF THE INVENTION
Many of the functional units described in this specification have been labeled as modules, in order to more particularly emphasize their implementation independence. For example, a module may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, off-the-shelf semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented in programmable hardware devices such as field programmable gate arrays, programmable array logic, programmable logic devices or the like.
Modules may also be implemented in software for execution by various types of processors. An identified module of executable code may, for instance, comprise one or more physical or logical blocks of computer instructions which may, for instance, be organized as an object, procedure, or function. Nevertheless, the executables of an identified module need not be physically located together, but may comprise disparate instructions stored in different locations which, when joined logically together, comprise the module and achieve the stated purpose for the module.
Indeed, a module of executable code may be a single instruction, or many instructions, and may even be distributed over several different code segments, among different programs, and across several memory devices. Similarly, operational data may be identified and illustrated herein within modules, and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single data set, or may be distributed over different locations including over different storage devices, and may exist, at least partially, merely as electronic signals on a system or network.
Reference throughout this specification to “one embodiment,” “an embodiment,” or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present invention. Thus, appearances of the phrases “in one embodiment,” “in an embodiment,” and similar language throughout this specification may, but do not necessarily, all refer to the same embodiment.
Reference to a signal bearing medium may take any form capable of generating a signal, causing a signal to be generated, or causing execution of a program of machine-readable instructions on a digital processing apparatus. A signal bearing medium may be embodied by a transmission line, a compact disk, digital-video disk, a magnetic tape, a Bernoulli drive, a magnetic disk, a punch card, flash memory, integrated circuits, or other digital processing apparatus memory device.
Furthermore, the described features, structures, or characteristics of the invention may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided, such as examples of programming, software modules, user selections, network transactions, database queries, database structures, hardware modules, hardware circuits, hardware chips, etc., to provide a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention may be practiced without one or more of the specific details, or with other methods, components, materials, and so forth. In other instances, well-known structures, materials, or operations are not shown or described in detail to avoid obscuring aspects of the invention.
The schematic flow chart diagrams included herein are generally set forth as logical flow chart diagrams. As such, the depicted order and labeled steps are indicative of one embodiment of the presented method. Other steps and methods may be conceived that are equivalent in function, logic, or effect to one or more steps, or portions thereof, of the illustrated method. Additionally, the format and symbols employed are provided to explain the logical steps of the method and are understood not to limit the scope of the method. Although various arrow types and line types may be employed in the flow chart diagrams, they are understood not to limit the scope of the corresponding method. Indeed, some arrows or other connectors may be used to indicate only the logical flow of the method. For instance, an arrow may indicate a waiting or monitoring period of unspecified duration between enumerated steps of the depicted method. Additionally, the order in which a particular method occurs may or may not strictly adhere to the order of the corresponding steps shown.
Referring to FIG. 1, an exemplary computerized network system 100 also referred to as an Ethernet network system is depicted. The network system 100 may be configured as a Local Area Network (LAN), a Storage Area Network (“SAN”), Wide Area Network (WAN), the Internet, and Intranet etc. The network system 100 may include a plurality of computing devices 104, 106, and 108, such as computers, servers, storage devices, subsystems, etc., like IBM data storage devices.
The computing devices 104, 106, and 108 communicate with each other via communication lines or cables 102 a, 120 b, 120 c, respectively. The network system 100 also includes at least one hub and/or switch 110 to facilitate the management and/or direction of data flow between computing devices 104, 106, 108.
As illustrated in FIG. 1, switch 110 is coupled to switch 120 via crossover cable 122. Switch 120 may also be attached to other devices 150, such as edge devices, depending on the size of the network system 100. The edge devices 150 may be other computing devices, such as computers, servers, storage devices, etc. Switch 110 is also coupled to computing devices 104, 106, 108 via cables 120 a, 120 b, and 120 c, respectively. The switch 110 may direct or steer data flow, such as information packets like Ethernet packets, between the attached computing devices 104, 106, 108. Switch 120 may also direct data flow, such as Ethernet packets, to other devices or switches attached to network system 100.
FIG. 2 depicts an exemplary embodiment to inject noise in a computerized system in accordance with the present invention. The exemplary embodiment may be configured as apparatus 200. Apparatus 200 may be implemented, for example, in network system 100 as illustrated in FIG. 1. Accordingly, description of the apparatus 200 refers to elements of FIG. 1, like numbers referring to like elements.
In one embodiment, apparatus 200 is deployed as part of a system test of a SAN system 100. As such, the apparatus 200 injects noise onto the SAN system 100 to simulate and verify the system impact of having a marginal cable. For example, apparatus 200 may simulate a faulty cable in an RJ-45 Ethernet based network, such that noise is injected by apparatus 200 onto one of the interface cables that connects two subsystems within the system. In this configuration, apparatus 200 allows testing and verifying that the storage subsystem is operable to detect, isolate, and handle disruptions in the information stream. Thus, maintaining the integrity of data being communicated between storage subsystems, such as storage subsystems 104, 106, 106. In one embodiment, storage subsystems 104, 106, 106 comprise an enterprises storage system (“ESS”), such as the TotalStorage® Enterprise Storage Server® from IBM®,).
As illustrated in FIG. 2, apparatus 200 comprises an Ethernet noise injector 220. The Ethernet noise injector 220 may be inserted into an Ethernet network system, such as the network system 100. The Ethernet noise injector 220 is coupled to Ethernet switch 110 and computing device 108 via Ethernet cables 120 c, 120 d, respectively. Likewise, Ethernet noise injector 220 may be coupled to Ethernet cables 120 a, and/or 120 b, such that Ethernet traffic traveling between switch 110 and computing devices 104, 106, travel through Ethernet noise injector 220. Similarly, Ethernet noise injector 220 may be coupled to Ethernet cable 122, such that Ethernet traffic traveling between switches 110, 120 travel through Ethernet noise injector 220. Accordingly, the Ethernet noise injector 220 may be coupled to Ethernet network 100 as needed to test any one portion and/or the whole system.
For example, Ethernet noise injector 220 is configured such that in operation, the network traffic and/or information packets (e.g., Ethernet packages) traveling between Ethernet switch 110 and computing device 108 also travel through Ethernet noise injector 220. The Ethernet noise injector 220 acts as a pass through device. As such, noise is injected by Ethernet noise injector 220 onto any one of the interface cables 120 a, 120 b, 120 c, that connects two subsystems (e.g., devices 104, 106, 108) while the network system 100 is active and operational. By injecting noise, apparatus 200 disrupts the information stream in the network without the need to pull an Ethernet cable. The disruption of the information stream by apparatus 200 simulates a marginal cable or a pulling of a cable within the network during a systems test. This allows verification that the subsystems are operating properly to detect, isolate, and handle the noise.
In certain embodiments, apparatus 200 is deploy as part of a system test to simulate the pulling of a cable to verify the system can handle inadvertent and intentional re-cabling while the system is active. Accordingly, apparatus 200 provides a cost efficient manner to verify that a subsystem (e.g., 104, 106, and 108) can detect, isolate, and handle the noise. In certain embodiments, subsystems 104, 106, 108 are computer workstations such as IBM X-Series, storage subsystems such as IBM's DS8000 disk storage subsystem, and enterprise-class processor subsystems such as IBM's Z-Series computers.
FIG. 3 illustrates an exemplary embodiment of apparatus 200 in accordance with the present invention. Apparatus 200 includes Ethernet noise injector card 220 configured to inject noise onto a communication or data link/cable, such as Ethernet cables 120 a, 120 b, 120 c, 120 d (FIGS. 1 and 2). In certain embodiments, the Ethernet noise injector 220 is coupled to a SAN system comprising at least one enterprises storage system (“ESS”), such as the TotalStorage® Enterprise Storage Server® from IBM®.
As illustrated in FIG. 3, the Ethernet noise injector 220 comprises a switch 340, at least two Ethernet connectors, ports, or jacks 320, 322, and a plurality of signal wires 330, 332, 334, and 336, which couple the switch 340 to Ethernet jacks 320, 322. In certain embodiments, the jacks 320, 322 comprise an RJ45 jack. In one embodiment, jacks 320, 322 are configured as RJ45 jack with a T-configuration.
The Ethernet noise injector 220 includes a parallel port or connector 324, such as a PC port or DB25 connector, coupled to switch 340 via buffer 326 and switch control signal wire 328. A switch control signal communicates (via switch control signal wire 328) to switch 340 to activate and deactivate switch 340. The activation and deactivation of switch 340, connects or disconnects wire 336 a and 336 b. For example, when switch 340 is in the “on” position, wire 336 a is connected to wire 336 b such that an electronic signal travels from jack 320 to jack 322. Similarly, when the switch is in the “off” position, wire 336 a is disconnected from wire 336 b such that there is no electronic signal traveling between jack 320 and jack 322. In certain embodiments, the switch 340 includes an analog switch. In other embodiments, the switch 340 includes a digital switch.
In certain embodiments, Ethernet noise injector 220 comprises a power connector 344 to supply electrical power to apparatus 200. The power connector 344 may include a 5 volt power connector. In certain embodiments, power is supplied to Ethernet noise injector 220 via Power over Ethernet (hereinafter PoE). In other embodiments, power is supplied to Ethernet noise injector 220 via an internal or external battery source. In certain embodiments, the power connector 344 is configured to plug into a power supply, such as an AC/DC adapter.
In certain embodiments, the Ethernet noise injector 220 is configured as a small electronic card with at least two Ethernet ports 320, 322 that link to the system Ethernet connection undergoing testing (e.g., see FIG. 2). To control the noise injection timing and duration, the PC parallel port 324 with a simple user application is used. For example, one side of the differential signal is electronically disconnected via analog switch 340, and the other three signals are left intact (see FIG. 3). This allows the receiving interface to see state transitions on the interface, so it does not perceive a disconnection, but the data stream is corrupted. To simulate a disconnection, all four signals are disconnected electronically (e.g., see. FIG. 4).
In certain embodiments, Ethernet injector card 220 may be included or embedded in a switch, hub, jack, or any other connection device capable of connecting to an Ethernet cable. For example, the Ethernet injector card 220 may be included or embedded as part of the Ethernet switch 110 such that network Ethernet traffic between the Ethernet switch 110 and computing device 108 travels through the Ethernet injector card 220. Similarly, Ethernet injector card 220 may be included as part of any one of the computing devices 104, 106, 108 such that network Ethernet traffic traveling between the Ethernet switch 110 and the computing devices 104, 106, 108 travels through the Ethernet injector card 220. In certain embodiments, computing devices 104, 106, 108 are storage subsystems, of a SAN network 100.
Referring again to FIG. 3, in operation, an Ethernet jumper cable, such as Ethernet cable 120 c, is plugged into or connected to RJ45 jack 320. Ethernet signals TX+, TX− and RX+ are directly connected between RJ45 jack 320 and RJ45 jack 322, via wires 330, 332, and 334, respectively, so that they transmit these signals unaltered. Signal RX− from RJ45 jack 320 is connected to analog switch 340 via wire 336 a, and the other side of analog switch 340 is connected to RJ45 jack 322 via wire 336 b. The signal RX− is connected and disconnected via analog switch 340. Hence, signal RX− is controlled by engaging and disengaging analog switch 340.
The activation of analog switch 340 may be controlled by control signal 328. Control signal 328 is substantially buffered by buffer 326. The unbuffered control signal is generated by a parallel port, such as a PC parallel port, connected to a connector 324, such as a DB25 female connector. The connection and disconnection of signal RX− is thus controlled via the parallel port. In alternate embodiments, control signal 328 may be generated via other common computer interfaces, such as USB, RS-232, FireWire, etc. The RJ45 jack 322 is connected to a subsystem (e.g., storage subsystem 108) via cable, such as Ethernet jumper cable 120 d, to complete the network 100. Power to analog switch 340 and buffer 326 may be provided externally from power connector 344. For example, an external 5V power supply 344 may provide power to analog switch 340. Alternatively, power to activate the analog switch 340 may be provide via Power over Ethernet (hereinafter “PoE”).
In certain embodiments, the Ethernet noise injector 220 is configured to perform fault simulations on active systems. For example, Ethernet noise injector 220 performs fault simulations by simulating a marginal cable, a cable disconnection and/or re-cabling during operation of a system. Thus, the Ethernet noise injector 220 allows a cost-effective and economical diagnostic testing of an active and intact computing network system to verify performance parameters or to identify potential problem areas.
FIG. 4 illustrates another exemplary embodiment of apparatus 200 in accordance with the present invention. The exemplary apparatus 200 comprises an Ethernet noise injector card 420. In certain embodiments, the Ethernet noise injector 420 is configured as a link pull simulator.
The Ethernet noise injector 420 includes at least two jacks 320, 322, a plurality of switches 440, and a plurality of signal wires 330 a, 332 a, 334 a, 336 a connecting the jacks 320, 322 to the switches 440. In one embodiment, jacks 320, 322 include RJ45 jacks and signal wires include four signal wires TX+ 330 a, TX− 332 a, RX+ 334 a, and RX− 336 a.
The Ethernet noise injector 420 includes a parallel port or connector 324, such as a PC port or DB25 connector, coupled to switches 440 via buffer 326 and switch control signal wire 328. A switch control signal communicates (via switch control signal wire 328) to switches 440 to activate and deactivate switches 440. In certain embodiments, the switches 440 include analog switches. In other embodiments, the switches 440 include digital switches. In one embodiment, connector 324 is a DB25 female connector
As illustrated in FIG. 4, switches 440 are configured as a bank of switches in which four signal wires TX+ 330 a, TX− 332 a, RX+ 334 a, and RX− 336 a connect one side of the bank of switches 440 to jack 320. Also, the four signal wires TX+ 330 b, TX− 332 b, RX+ 334 b, and RX− 336 b connect the other side of the bank of switches 440 to jack 322.
In certain embodiments, Ethernet noise injector 420 comprises a power connector 344 that supplies electrical power to apparatus 200. The power connector 344 may include a 5 volt power connector. In certain embodiments, power is supplied to Ethernet noise injector 420 via Power over Ethernet (hereinafter PoE). In other embodiments, power is supplied to Ethernet noise injector 420 via an internal or external battery source. In certain embodiments, the power connector 344 is configured to plug into a power supply, such as an AC/DC adapter.
In operation, an electrical or communication signal travels between jack 320 and jack 322 via the four signals TX+ 330, TX− 332, RX+ 334, and RX− 336. The signal traveling between jack 320 and jack 322 may be interrupted by activating and deactivating switches 440. For example, when switches 440 are in an “on” position, the signal travels between jacks 320, 322. When the switches 440 are in an “off” position, the signal between jacks 320, 322 is interrupted. Hence, there are no signals being transmitted through the bank of analog switches 440.
In one embodiment, when the switches 440 are in the “on” position, the Ethernet noise injector 420 appears as a straight cable between the switch 110 and the storage subsystem 108 (see e.g., FIG. 2). When the switches 440 are in the “off” position, because all four signals are disconnected substantially simultaneously, it appears to the storage subsystem 108 as though the connection has been lost via a cable pull. Thus, in one embodiment, the Ethernet noise injector 420 simulates a link pull.
In one embodiment, at least one of the switches 440 may be activated between the on/off positions by control signal 328. At least one of the signal wires 330, 332, 334, 336, may be interrupted via one of the switches 440. For example, switch control signal 328 may signal an “off” position to one of the switches 440 such that only wire 330 a and wire 330 b are disconnected. In another embodiment, switch control signal 328 may comprise multiple wires, each wire controlling a separate switch, such that any or all of multiple wires 330 a and 330 b, 332 a and 332 b, 334 a and 334 b, and 336 a and 336 b may be separately or collectively switched “on” and “off” to simulate different failure modes.
FIG. 5 is a schematic flow chart diagram illustrating certain embodiments of a method 500 to inject noise in a system to simulate a marginal cable or cable pull. Method 500 may be implemented in a network system, such as system 100 in FIG. 2. In certain embodiments, method 500 may be implemented in an apparatus, such as apparatus 200 in FIGS. 3 and 4.
Referring to FIG. 5, method 500 provides 510 a noise injector card comprising at least one switch and at least two jacks or ports. In one embodiment, the noise injector card corresponds to apparatus 220 (FIG. 3). In another embodiment, the noise injector card corresponds to apparatus 420 (FIG. 4).
The noise injector card is connected 520 to a link or cable of a network. For example, the noise injector card is connected to Ethernet cables 120 c and 120 d as shown in FIG. 2. A control signal is received 530 to activate the noise injector card. For example, the control signal is received through a port, such as parallel port 324 (FIGS. 3 and 4). The control signal travels through buffer 326 along switch control signal wire 328 (e.g., FIGS. 3 and 4).
At least one switch of the noise injector card is switch 540 between “on/off” positions to disrupt at least one signal traveling on at least one electrical wire of the noise injector card. In certain embodiments, the switch corresponds to switch 340 where electrical wire 336 a and 336 b is connected and disconnected by switch 340 (e.g., see FIG. 3). In certain embodiments, the switch corresponds to switches 440 where at least one of the switches 440 is turned on or off to connect or disconnect an electrical signal traveling on at least one electrical wire 330, 332, 334, and 336 (e.g., see FIG. 4).
The noise injector card injects 550 noises onto a link or cable of a computerized network. For example, in one embodiment, method 500 electronically disconnects one side of the differential signal by switching an analog switch such that the other three signals are left intact (e.g., FIG. 3). Illustratively referring to FIG. 2, Ethernet traffic is sent from computer subsystem 108 to Ethernet switch 110 through Ethernet Noise Injector 220. When the Ethernet Noise Injector 220 is “off”, Ethernet traffic travels through said injector from computer subsystem 108 to Ethernet switch 110 uninterrupted. When Ethernet Noise Injector 220 is “on”, one wire 336 a/336 b is disrupted by Ethernet Noise Injector 220 and does not pass half of the differential Ethernet signal. Because Ethernet is a level-based technology, the fact that the other half of the differential signal carried by wire 334 is successfully transmitted from computer subsystem 108 to Ethernet switch 110 means that Ethernet switch 110 detects level transitions and does not perceive that the connection has been broken, but because the data transitions are incorrect due to the disconnected wires 336 a and 336 b, the data is corrupted. The injection of noise by method 500 allows computer subsystem 108 to resend the information that was interrupted previously by the Ethernet Noise Injector once the injector is turned “off”, testing the network system's ability to recover from temporary interface errors.
In certain embodiments, method 500 injects 550 noises to simulate a disconnection or cable pull by electronically disconnecting all four signals. For example, as illustrated in FIG. 4, a bank of analog switches 440 are connected to four signal wires 330, 332, 334, and 336 such that any one of the signals or combinations thereof, are disconnected by switching the bank of switches 440.
FIG. 6 is a schematic flow chart diagram illustrating certain embodiments of a method 600 to deploy a system test for verifying the impact of having a marginal Ethernet cable or cable pull. Method 600 may be deployed in a network system, such as system 100 in FIG. 2. In certain embodiments, method 600 may be implemented in an apparatus, such as apparatus 200 in FIGS. 3 and 4.
Referring to FIG. 6, method 600 provides an Ethernet network having an Ethernet infrastructure. In one embodiment, the Ethernet network corresponds to network 100 (FIGS. 1 and 2). A noise injector card is embedded 610 in the Ethernet infrastructure. The Ethernet infrastructure includes at least one of a switch, a computing device, and a host bus adapter. For example, the noise injector card is embedded in an existing Ethernet infrastructure such as Ethernet host bus adapter (HBA), switches, hubs, or combinations thereof (FIGS. 1 and 2). In certain embodiments, the embedded noise injector card corresponds to noise injector card 220 or 420 (e.g., FIGS. 3 and 4).
In one embodiment, HBA represents an outgoing interface of a computing device 104, 106, 108 (e.g., FIGS. 1 and 2). The switches and/or hubs 110, 120 are used to interconnect the computing devices 104, 106, 108 among each other and end-point devices 150, such as storage systems (FIGS. 1 and 2).
In one embodiment, the HBA is connected to a storage system directly without a switch or hub. In this embodiment, the storage system includes the HBA, which is used to connect the storage system to other storage systems directly or via hubs and switches. For example, computing device 108 may comprise a storage system comprising a HBA, which connects device 108 to Ethernet jumper cable 120 c (FIG. 1). In this configuration, because the noise injector card is embedded in the HBA there is no need to connect apparatus 200 with Ethernet jumper cable 120 c and 120 d, as shown in FIG. 2.
A request is sent 630 for a license key to activate the embedded noise injector card. For example, a requester, such as a customer or user, sends 630 a request to a supplier, such as IBM. The supplier supplies 640 the license key to the requester. The license key is entered 650 into the Ethernet infrastructure.
Once the license key is entered, the embedded noise injector card is activated 620. At least one switch of the embedded noise injector card is switch 670 to connect or disconnect one or more electrical wires/lines. The electrical wires/lines carry an electrical signal (e.g., FIGS. 3 and 4). In certain embodiments, the electronic signal may be communicating data and information to be stored and retrieved from storage subsystems 104, 106, 108 in the Ethernet network 100 (FIGS. 1 and 2). In certain embodiments, storage subsystems 104, 106, 108 comprise ESS.
In certain embodiments, the activation of the noise injector card may be done externally or by management software. For example, control software (which exists on one of the computer systems present on the Ethernet interface) may loop through a continuous sequence of writing a register that activates the control signal, waiting a predetermined time, then again writing said register with a different value that deactivates the control signal. Alternatively, the computer system may send a special Ethernet packet to the embedded Ethernet Noise Injector card that activates or deactivates the switches.
In certain embodiments, the activation of the embedded noise injector card is done via the license key. For example, a customer or user may obtain a license key from a supplier or vendor. In one embodiment, IBM supplies the license key to activate the embedded noise injector card. The user enters the license key into the Ethernet infrastructure being tested. Once the license key is entered, the embedded noise injector card is activated. The license key may be entered in accordance with standard methods, such as management and configuration interfaces. For instance, the configuration software (which may be use to set up Ethernet switches in the network as known in the art) may also be used to configure and run the Ethernet Error Injector when an optional license code is entered.
As described, in certain embodiments, method 500 or 600 maybe deployed as part of a complete system test of IBM storage systems or products to verify the system impact of having a marginal Ethernet cable in our storage systems. By deploying method 500 or 600, the noise injector card (e.g., apparatus 200; FIGS. 3 and 4) injects noise into a link/cable such that the system is still intact; i.e., the cable is not pulled, but the information stream is disrupted. The injection of noise into the cable simulates the pulling of the cable to verify that the system can handle inadvertent and intentional re-cabling while the system is active. In certain embodiments, methods 500 and 600 provides a reliable, cost effective manner to perform fault simulations and determine which Ethernet devices (e.g., 104, 106, and 108) are not performing properly while the system 100 is active and intact.
As FIGS. 1-6 illustrate, the present invention provides a method and apparatus to inject Ethernet noise into a computerized network system, such as IBM X-Series, P-Series, Z-Series, and I-Series computer systems. Also, as depicted in FIGS. 1-6, embodiments of the present invention facilitate simulating a faulty and/or marginal cable in an Ethernet based network while the system, such as a storage system, is intact and active.
For example, certain embodiments of the present invention are configured to inject noise onto one of the interface cables that connects at least two subsystem within the storage system (see e.g., FIGS. 1-6). This allows one to verify that the subsystem can detect, isolate, and handle the noising be injected by the present invention.

Claims (22)

1. An apparatus to inject noise onto a cable of a network, the apparatus comprising:
at least two jacks;
a plurality of signal wires connecting the two jacks together;
a switch connected to the two jacks by at least one of the plurality of signal wires;
a parallel port connected to the switch via a control signal wire; and
a power connector connected to the switch, wherein a control signal activates the switch, and the timing and duration of the control signal is controlled to electronically disconnect a differential signal in the signal wires via an analog switch.
2. The apparatus of claim 1, further comprising a buffer to buffer a control signal of the control signal wire.
3. The apparatus of claim 1, wherein the plurality of wires comprises a first signal wire RX+, a second signal wire RX−, a third signal wire TX+, and a fourth signal wire TX−.
4. The apparatus of claim 3, wherein the second signal wire RX− is connected to the switch.
5. The apparatus of claim 1, wherein the two jacks comprise a RJ45 jack.
6. The apparatus of claim 1, wherein the switch comprises an analog switch.
7. The apparatus of claim 1, wherein the switch comprises a digital switch.
8. The apparatus of claim 1, wherein power is supplied to the apparatus via Power over Ethernet.
9. The apparatus of claim 1, wherein the parallel port comprises a DB25 connector.
10. An apparatus to inject noise onto a cable of a network, the apparatus comprising:
at least two ports;
a plurality of signal wires connecting the two ports together; and
a plurality of switches connected to the two ports by the plurality of signal wires, wherein a control signal activates one of the switches to inject noise in the network, and the timing and duration of the control signal is controlled to electronically disconnect a differential signal in the signal wires via an analog switch.
11. The apparatus of claim 10, further comprising a parallel port connected to the switch via a control signal wire.
12. The apparatus of claim 11, further comprising a buffer to buffer a control signal of the control signal wire.
13. The apparatus of claim 10, further comprising a power connector connected to the switch.
14. The apparatus of claim 10, wherein the plurality of wires comprises a first signal wire RX+, a second signal wire RX−, a third signal wire TX+, and a fourth signal wire TX−.
15. A method to inject noise onto a communication link of a network, the method comprising:
providing a noise injector card;
connecting the noise injector card to a link of a network;
receiving a control signal to activate the noise injector card;
injecting noise onto the link of the network; and
controlling the timing and duration of the control signal to electronically disconnect a differential signal in the communication link via an analog switch.
16. The method of claim 15, further comprising switching at least one switch of the noise injector card.
17. The method of claim 15, further comprising supplying power to the noise injector card.
18. A method to inject noise in a network, the method comprising:
proving an Ethernet network having an Ethernet infrastructure;
embedding a noise injector card in the Ethernet infrastructure;
entering a license key into the Ethernet infrastructure;
activating the embedded noise injector card with a control signal, wherein the timing and duration of the control signal is controlled to electronically disconnect a differential signal in the network via an analog switch; and
injecting noise onto the Ethernet infrastructure.
19. A method of claim 18, further comprising sending a request for the license key.
20. The method of claim 19, further comprising supplying the license key to a requestor.
21. The method of claim 20, further comprising entering the license key into the Ethernet infrastructure.
22. The method of claim 18, further comprising switching at least one switch in the embedded noise injector card to disrupt at least one signal traveling on an Ethernet link.
US12/021,026 2008-01-28 2008-01-28 Method and apparatus to inject noise in a network system Expired - Fee Related US8225143B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/021,026 US8225143B2 (en) 2008-01-28 2008-01-28 Method and apparatus to inject noise in a network system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/021,026 US8225143B2 (en) 2008-01-28 2008-01-28 Method and apparatus to inject noise in a network system

Publications (2)

Publication Number Publication Date
US20090190674A1 US20090190674A1 (en) 2009-07-30
US8225143B2 true US8225143B2 (en) 2012-07-17

Family

ID=40899204

Family Applications (1)

Application Number Title Priority Date Filing Date
US12/021,026 Expired - Fee Related US8225143B2 (en) 2008-01-28 2008-01-28 Method and apparatus to inject noise in a network system

Country Status (1)

Country Link
US (1) US8225143B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9122564B1 (en) * 2012-03-28 2015-09-01 Emc Corporation Evaluating a system event

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9720808B2 (en) * 2011-11-29 2017-08-01 Red Hat, Inc. Offline debugging using a replicated operating environment

Citations (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155440A (en) * 1989-12-04 1992-10-13 Huang George S K Hand-held cable tester
US5255267A (en) 1992-03-09 1993-10-19 First Pacific Networks, Inc. Apparatus for combining broadband and baseband signal transmissions
WO1998011692A1 (en) 1996-09-12 1998-03-19 Advanced Micro Devices, Inc. Method and system for indentifying an error condition due to a faulty cable connection in an ethernet network
US6201853B1 (en) * 1999-07-13 2001-03-13 Communications Manufacturing Company Telephone technician's remote assist apparatus and method
US20020149812A1 (en) * 2001-04-17 2002-10-17 Junhua Hong Method and procedures for system test and verification of optical networks using noise injection/loading
US20020194547A1 (en) 2001-05-07 2002-12-19 Christensen Daniel D. Wiring fault detection, diagnosis and reporting for process control systems
US20030103623A1 (en) * 2001-12-04 2003-06-05 Jung-Sik Kim Apparatus for reducing echoes and noises in telephone
US20030135681A1 (en) * 1999-07-08 2003-07-17 Laity Ian A. Computer port expansion
US6640272B1 (en) 2000-08-31 2003-10-28 Hewlett-Packard Development Company, L.P. Automated backplane cable connection identification system and method
US20030235090A1 (en) * 2002-06-24 2003-12-25 Jun-Keun Lee Semiconductor memory device with reduced package test time
US20040028144A1 (en) * 2002-08-07 2004-02-12 Dragan Golo Method and device for injecting a noise signal into a paired wire communication link
US20040041029A1 (en) * 1994-04-29 2004-03-04 Psc Scanning, Inc. PCMIA interface card for coupling input devices such as barcode scanning engines to personal digital assistants and palmtop computers
US20040083067A1 (en) * 2002-10-18 2004-04-29 Bisset David Alexander Apparatus and method for generating wander noise
US20050036277A1 (en) * 2000-09-22 2005-02-17 Adc Telecommunications, Inc. Multimedia patching box
US20050169186A1 (en) * 2004-01-30 2005-08-04 Microsoft Corporation What-if analysis for network diagnostics
US20050204243A1 (en) * 2004-01-21 2005-09-15 Meihong Hu Method and testing system for storage devices under test
US20060182014A1 (en) 2005-02-14 2006-08-17 Texas Instruments Incorporated Apparatus for and method of characterization of ethernet cable impairments
US20060209968A1 (en) * 2004-12-15 2006-09-21 Spirent Communications Method and device for injecting a differential current noise signal into a paired wire communication link
US20060233228A1 (en) * 2005-04-15 2006-10-19 Hon Hai Precision Industry Co., Ltd. Modem testing system and method
US20070005332A1 (en) * 2005-06-16 2007-01-04 International Business Machines Corporation Method and apparatus to simulate and verify signal glitching
US20070089006A1 (en) * 2005-09-28 2007-04-19 Zimmerman David J IO self test method and apparatus for memory
US20070162620A1 (en) * 2006-01-11 2007-07-12 Dell Products L.P. Power over ethernet powered management and diagnoses of information handling systems
US20080055067A1 (en) * 2006-09-01 2008-03-06 Walter Curt Method and apparatus for a power line communications test system
US20080074992A1 (en) * 2006-09-27 2008-03-27 David Sams Apparatus and method for point-to-point interconnect testing
US20080084218A1 (en) * 2006-10-04 2008-04-10 Hailey Jeffrey C System and Method for Information Handling System Peripheral EMC Test
US20080133489A1 (en) * 2005-10-26 2008-06-05 International Business Machines Corporation Run-time performance verification system
US20080170509A1 (en) * 2007-01-17 2008-07-17 Broadcom Corporation System and method for diagnosing a cabling infrastructure using a PHY
US20080198910A1 (en) * 2005-05-03 2008-08-21 Claes Tidestav Noise Estimation In Wireless Communication Systems
US20080274646A1 (en) * 2007-05-04 2008-11-06 Schneider Electric Gmbh Ethernet connectors
US20090108911A1 (en) * 2007-10-30 2009-04-30 Rohm Co., Ltd. Analog switch
US20090183229A1 (en) * 2005-09-13 2009-07-16 Canon Kabushiki Kaisha License Authentication Device and License Authentication Method

Patent Citations (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155440A (en) * 1989-12-04 1992-10-13 Huang George S K Hand-held cable tester
US5255267A (en) 1992-03-09 1993-10-19 First Pacific Networks, Inc. Apparatus for combining broadband and baseband signal transmissions
US20040041029A1 (en) * 1994-04-29 2004-03-04 Psc Scanning, Inc. PCMIA interface card for coupling input devices such as barcode scanning engines to personal digital assistants and palmtop computers
WO1998011692A1 (en) 1996-09-12 1998-03-19 Advanced Micro Devices, Inc. Method and system for indentifying an error condition due to a faulty cable connection in an ethernet network
US5862145A (en) 1996-09-12 1999-01-19 Advanced Micro Devices, Inc. Method and system for identifying an error condition due to a faulty cable connection in an ethernet network
US20030135681A1 (en) * 1999-07-08 2003-07-17 Laity Ian A. Computer port expansion
US6201853B1 (en) * 1999-07-13 2001-03-13 Communications Manufacturing Company Telephone technician's remote assist apparatus and method
US6640272B1 (en) 2000-08-31 2003-10-28 Hewlett-Packard Development Company, L.P. Automated backplane cable connection identification system and method
US20050036277A1 (en) * 2000-09-22 2005-02-17 Adc Telecommunications, Inc. Multimedia patching box
US20020149812A1 (en) * 2001-04-17 2002-10-17 Junhua Hong Method and procedures for system test and verification of optical networks using noise injection/loading
US20020194547A1 (en) 2001-05-07 2002-12-19 Christensen Daniel D. Wiring fault detection, diagnosis and reporting for process control systems
US20030103623A1 (en) * 2001-12-04 2003-06-05 Jung-Sik Kim Apparatus for reducing echoes and noises in telephone
US20030235090A1 (en) * 2002-06-24 2003-12-25 Jun-Keun Lee Semiconductor memory device with reduced package test time
US20040028144A1 (en) * 2002-08-07 2004-02-12 Dragan Golo Method and device for injecting a noise signal into a paired wire communication link
US20040083067A1 (en) * 2002-10-18 2004-04-29 Bisset David Alexander Apparatus and method for generating wander noise
US20050204243A1 (en) * 2004-01-21 2005-09-15 Meihong Hu Method and testing system for storage devices under test
US20050169186A1 (en) * 2004-01-30 2005-08-04 Microsoft Corporation What-if analysis for network diagnostics
US20060209968A1 (en) * 2004-12-15 2006-09-21 Spirent Communications Method and device for injecting a differential current noise signal into a paired wire communication link
US20060182014A1 (en) 2005-02-14 2006-08-17 Texas Instruments Incorporated Apparatus for and method of characterization of ethernet cable impairments
US20060233228A1 (en) * 2005-04-15 2006-10-19 Hon Hai Precision Industry Co., Ltd. Modem testing system and method
US20080198910A1 (en) * 2005-05-03 2008-08-21 Claes Tidestav Noise Estimation In Wireless Communication Systems
US20070005332A1 (en) * 2005-06-16 2007-01-04 International Business Machines Corporation Method and apparatus to simulate and verify signal glitching
US20080221853A1 (en) * 2005-06-16 2008-09-11 International Business Machines Corporation Simulating and verifying signal glitching
US20090183229A1 (en) * 2005-09-13 2009-07-16 Canon Kabushiki Kaisha License Authentication Device and License Authentication Method
US20070089006A1 (en) * 2005-09-28 2007-04-19 Zimmerman David J IO self test method and apparatus for memory
US20080133489A1 (en) * 2005-10-26 2008-06-05 International Business Machines Corporation Run-time performance verification system
US20070162620A1 (en) * 2006-01-11 2007-07-12 Dell Products L.P. Power over ethernet powered management and diagnoses of information handling systems
US20080055067A1 (en) * 2006-09-01 2008-03-06 Walter Curt Method and apparatus for a power line communications test system
US20080074992A1 (en) * 2006-09-27 2008-03-27 David Sams Apparatus and method for point-to-point interconnect testing
US20080084218A1 (en) * 2006-10-04 2008-04-10 Hailey Jeffrey C System and Method for Information Handling System Peripheral EMC Test
US20080170509A1 (en) * 2007-01-17 2008-07-17 Broadcom Corporation System and method for diagnosing a cabling infrastructure using a PHY
US20080274646A1 (en) * 2007-05-04 2008-11-06 Schneider Electric Gmbh Ethernet connectors
US20090108911A1 (en) * 2007-10-30 2009-04-30 Rohm Co., Ltd. Analog switch

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9122564B1 (en) * 2012-03-28 2015-09-01 Emc Corporation Evaluating a system event

Also Published As

Publication number Publication date
US20090190674A1 (en) 2009-07-30

Similar Documents

Publication Publication Date Title
US8074105B2 (en) High data availability SAS-based RAID system
US7111084B2 (en) Data storage network with host transparent failover controlled by host bus adapter
KR100244836B1 (en) Error recovery by isolation of peripheral components in a data processing system
US5210855A (en) System for computer peripheral bus for allowing hot extraction on insertion without disrupting adjacent devices
US6904544B2 (en) Method, system, program, and data structures for testing a network system including input/output devices
US20020133743A1 (en) Redundant controller data storage system having hot insertion system and method
US7490176B2 (en) Serial attached SCSI backplane and detection system thereof
US20100035461A1 (en) System and Method for Detecting Module Presence in an Information Handling System
US7228458B1 (en) Storage device pre-qualification for clustered systems
CN112306766A (en) Method, electronic device, storage system and computer program product for error detection
US6438639B1 (en) Computer system bus network providing concurrent communication and connection transition of peripheral devices
US7870374B2 (en) Validating physical and logical system connectivity of components in a data processing system
US6745145B2 (en) Methods and systems for enhanced automated system testing
CN109117342A (en) A kind of server and its hard disk health status monitoring system
US6943463B2 (en) System and method of testing connectivity between a main power supply and a standby power supply
CN105849702A (en) Cluster system, server device, cluster system management method, and computer-readable recording medium
CA2018069A1 (en) Method and apparatus for a rapid interconnection to a computer bus
US8225143B2 (en) Method and apparatus to inject noise in a network system
US7861123B1 (en) Managing loop interface failure
TW201602790A (en) Detecting the orientation of a multimedia link connected to a device
US6715019B1 (en) Bus reset management by a primary controller card of multiple controller cards
US7529980B2 (en) Method and apparatus for injecting errors into SAS domains through SAS expanders
JP2002196890A (en) Highly available storage system
CN112069002B (en) Server hot plug debugging device and method
US20080168302A1 (en) Systems and methods for diagnosing faults in a multiple domain storage system

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BATES, ALLEN KEITH;HAUSTEIN, NILS;KLEIN, CRAIG;AND OTHERS;REEL/FRAME:020424/0900;SIGNING DATES FROM 20080122 TO 20080123

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BATES, ALLEN KEITH;HAUSTEIN, NILS;KLEIN, CRAIG;AND OTHERS;SIGNING DATES FROM 20080122 TO 20080123;REEL/FRAME:020424/0900

REMI Maintenance fee reminder mailed
LAPS Lapse for failure to pay maintenance fees
STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20160717