# Patent

## Title
Network cable tracking system

## Abstract

Embodiments relate to a system and method of identifying a cable terminal plug and port on a computer system. An aspect includes a method having a step of positioning a cable plug adjacent to a computer port, the cable plug having a passive transponder. An RF signal is transmitted to the passive transponder. The passive transponder is activated with the RF signal. An identification signal is transmitted based on receiving the RF signal. It is determined that identification signal matches an identification value of the computer port.

## Background
DOMESTIC PRIORITY
The present application is a continuation application of U.S. patent application Ser. No. 14/040,023 filed on Dec. 12, 2013, the contents of which is incorporated herein in its entirety.


BACKGROUND
The present invention relates generally to a method for tracking cables, and more specifically, to a method for matching a cable terminal plug with a server port.
Modern high performance computer systems often involve the interconnections between printed circuit boards or individual servers that comprise the system. These types of interconnects can provide high performance and density—supporting hundreds and in some cases up to thousands of interconnection wires, operating at rates potentially greater than 1-10 Gbps. However, these interconnections are difficult to install, typically using either backplane-style boards that the interconnecting circuit boards plug into using backplane connectors, or cables. This results in the use of cable connectors (or backplane-style connectors) and bulk cable with wires or flex circuitry. It should be appreciated that a large computing system or supercomputer may involve a large number of interconnections with terminal plugs and ports arranged in a confined area. The installation of the interconnections involves properly identifying the corresponding ports for each end of the cable.
SUMMARY
Embodiments include a method for identifying a cable terminal plug and port on a computer system. An aspect includes a method having a step of positioning a cable plug adjacent to a computer port, the cable plug having a passive transponder. An RF signal is transmitted to the passive transponder. The passive transponder is activated with the RF signal. An identification signal is transmitted based on receiving the RF signal. It is determined that identification signal matches an identification value of the computer port.
A computer program product for implementing an identification of a cable terminal plug and a port on a computer system is provided. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising: transmitting, by a processor, an RF signal to a passive transponder positioned adjacent a computer port; activating the passive transponder with the RF signal; transmitting an identification signal based on receiving the RF signal; and determining, with the processor, that the identification signal matches an identification value of the computer port.



BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
The subject matter which is regarded as embodiments is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The forgoing and other features, and advantages of the embodiments are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:
FIG. 1 depicts a schematic illustration of a system for identifying a cable and a port in accordance with an embodiment;
FIG. 2 depicts a schematic illustration of a system for identifying a cable and a port in accordance with another embodiment; and
FIG. 3 depicts a process flow for identifying a cable and a port for a computer system in accordance with an embodiment.



DETAILED DESCRIPTION
Embodiments of the disclosure may be used in connection with interconnection networks for computers, switches and other information technology equipment, such as high-density networks for large clustered systems, high-performance computing and supercomputing systems, and cloud computing systems, for example. Embodiments of the disclosure may be applied in the area of electrical backplanes or optical backplanes, arrays of cables, connector arrays, and cable harnesses that interconnect, e.g., dozens or hundreds of switching elements, also termed switches or switch ICs or switch chips.
Embodiments of the disclosure may be used in connection with so-called “all-to-all” or “full mesh” networks, in one or more levels, where a multiplicity of switching elements (on the order of 16 to 64 or 128 switching elements in some embodiments) each have links to most or all of the other switching elements. Such networks, with ports interconnecting each switching element or with a large number of other switching elements (i.e., “high-radix” switching elements) are only recently technically feasible and cost-effective. Previously, integrated circuit switching chips could only be cost-effectively constructed using commonly-available CMOS integrated circuit technology, with a moderate number (e.g., 8-24) of ports. Such “all-to-all” or “full mesh” networks may be used to avoid or mitigate against deficiencies, such as congestion and extra latency that may be inherent in Multi-stage Interconnection networks using other topologies, such as Torus (in 2, 3, 4, 5, 6, or more dimensions), or Omega (also called “Butterfly” or “Clos”, or “Fat Tree”) topologies, where traffic must traverse several intermediate switching elements to traverse the network.
While all-to-all or full-mesh networks may have advantages over other network topologies in terms of performance, routing simplicity, and robustness against link failures, they might have several disadvantages or deficiencies. Such deficiencies may include one or more of: (a) each switching element must support a large number of ports, which must be tightly-packed, requiring high-density connector packing, (b) the network requires a large number (on the order of n2) of interconnecting cables, and (c) the interconnecting cables form a complex topology, since the links connecting to each of the switching elements are “shuffled” and distributed across all of the other switching elements.
In order to address or alleviate one or more of the aforementioned deficiencies, embodiments of the disclosure may be used to simplify the construction and manufacturing of such all-to-all interconnection networks. In some embodiments, a generic decomposition of a single all-to-all interconnection network topology into a multiplicity of smaller all-to-all interconnection network elements may be provided, which can be replicated in a modular fashion, to construct the full topology. In this manner, an all-to-all topology may be broken down into units that can be replicated, where each unit may be larger or include more connections than a base-unit of a wire.
In the specific illustrative instance of optical networks with even numbers of drawers or books or blades, each containing a multiple of four (4) switching elements, use of multiple “shuffle cables” may be provided, where each shuffle cable may implement a 4×4 all-to-all topology, with a link width of one (1) or more fibers per link direction. Embodiments may include a topology with a drawer that contains eight (8) switching elements, and each link encompasses (6+6) fibers (i.e., six (6) fibers in each of the two directions), which implies that the entire structure may incorporate a modular aggregation of twenty-four (24) shuffle cables, with each shuffle cable implementing a 4×4×(6+6) all-to-all topology, incorporating one-hundred ninety-two (192) separate optical fibers or waveguides channels. Since each of the twenty-four (24) shuffle cables incorporates four (4) connectors on each of the two (2) ends, this complete optical backplane assembly may incorporate a total of one-hundred ninety-two (192) connectors, each of which may be a 48-fiber connector, using a standard “MT” or “MPO” Multi-fiber Push On/Pull Off optical connector design.
Embodiments of the disclosure may include one or more cables, such as a fiber optic cable 20 for example. A cable may be configured to convey multiple arrays of signals from multiple multi-fiber optical connectors associated with a first printed circuit board (PCB) to multiple multi-fiber optical connectors associated with a second or another PCB. It should be appreciated that while embodiments herein may refer to fiber optic cables, the claimed invention should not be so limited and embodiments may also be used with copper cables for example.
Referring now to FIG. 1, an exemplary system 22 is shown that assists the user with identifying a desired computer port in a printed circuit board or computer 24 having multiple ports adapted to receive a terminal plug 26 of cable 20. The cable 20 includes at least the first terminal plug 26 on one end. The terminal plug 26 is sized and shaped to be received into the ports of computer 24. In one embodiment, the cable 20 further includes a second terminal plug 28 arranged on an opposite end from the first terminal plug 26. The second terminal plug 28 may also have a passive transducer 31. As discussed above, the cable 20 may include either fiber optic media or copper media for transmitting signals there through. The cable 20 may be similar to that described in U.S. Pat. No. 8,559,781 entitled “Removable Sleeve for Fiber Optic Connectors for High Density Applications” filed on Nov. 6, 2009, which is incorporated herein by reference.
The terminal plug 26 includes a passive transponder 30. The passive transponder 30 may be integrated into the body 32 of the terminal plug 26. In one embodiment, the passive transponder 30 is coupled to the surface of the body 32, such as with an adhesive for example. This provides advantages in allowing embodiments to be used with existing cables. The passive transponder 30 is configured to be activated by electromagnetic induction in response to a radio frequency (RF) signal. Upon activation, the passive transponder 30 transmits an identification signal (via electromagnetic radiation). In the exemplary embodiment, the passive transponder 30 is configured to transmit a 16-32 bit identification signal. In one embodiment, the passive transponder 30 may be field programmable (re-writable) with a serial number or identification parameter that is transmitted in the identification signal. In some embodiments, the passive transponder 30 may be configured to have at least two modules: an integrated circuit for storing and processing information, modulating and demodulating RF signal, collecting DC power from the incident reader signal; and an antenna for receiving and transmitting the identification signal. In one embodiment, the second terminal plug 28 may also have a passive transponder 31.
The computer 24 includes a plurality of ports 34, the ports 34 being substantially identical and configured to receive the terminal plug 26. In the exemplary embodiment, the computer 24 is configured to couple with the terminal plug 26 at a designated port 36. Each of the ports 34 includes an active transponder 38 that is coupled to a power source 40. In one embodiment, the power source 40 is a broadband RF source. The active transponder 38 is configured to transmit a radio frequency signal and includes a transmitter circuit, a reader circuit, and an antenna 44. The transmitter or the reader circuit may include an integrated circuit that is configured for storing and processing information, and modulating/demodulating the RF signal. In the exemplary embodiment, the antenna 44 is short in length, meaning that it is configured to receive a signal from a source 2-4 centimeters from the active transponder 38. It should be appreciated that radio frequency signals when transmitted above a predetermined level or beyond the 2-4 centimeter range can interfere with the operation of the computer 24. It has been found that conventional radio frequency identification (RFID) tags produce signals at too high an energy level and could cause undesired interference with the computer 24. In one embodiment, the RF power threshold output by the active transponder 38 is on the order of tens of a mW. In the exemplary embodiment, the RF signal transmitted by the active transponder 38 and the passive transponder 30 may be a low frequency (120-150 kHz) or in another embodiment a high frequency (up to 13.56 MHz).
Each port 34 further includes an indicator 42, such as a light emitting diode for example. The indicator 42 is operably coupled to the active transponder 38 and is configured to emit a light when a terminal plug 26 is brought within a range 46 of the antenna 44. In the exemplary embodiment, the indicator 42 is configured to emit a red light when the terminal plug's identification signal does not match a predetermined identification value of the port 36, and emit a green light when the identification signal matches the identification value.
It should be appreciated that while the indicator 42 is illustrated as being separate from the ports 34, this is for exemplary purposes and the claimed invention should not be so limited. In other embodiments, the indicator 24 may integrated into the port 34 or with the active transponder 38. In still other embodiments, the indicator 42 may be comprised of multiple LED's, each with a single color.
In operation, the user moves the terminal plug 26 within the range 46 of one of the ports 34. When the terminal plug 26 is within the range 46, the RF signal from the active transponder 38 is received by the passive transponder 30. The receipt of the RF signal activates the passive transponder 30 causing the passive transponder 30 to transmit an identification signal. The active transponder 38 receives the identification signal and compares the identification signal with the predetermined identification value of the particular port. When the identification signal and identification value match, the indicator 42 is activated to communicate (e.g. a green light) with the user that this particular port is a match for the cable 20. When the identification signal and the identification value do not match, the indicator 42 is activated to communicate (e.g. a red light) that the adjacent port is the incorrect port. In one embodiment, the indicator 42 does not emit a light when the identification signal and the identification value do not match.
Turning now to FIG. 2, another embodiment of the system 22 is shown using a portable identification device 50. In this embodiment, the computer 24 includes a plurality of ports 34. Each of the ports 34 is sized and shaped to receive a terminal plug 26. As discussed above, the computer 24 is configured to receive signals from the cable 20 through only one of the ports 34, such as port 36 for example. Each of the ports 34 includes a transponder 52. In one embodiment, the transponder 52 is a passive transponder that transmits an identification signal in response to receiving an external RF signal. The cable 20 includes a terminal plug 26 having a passive transponder 30 that similarly transmits an identification signal in response to receiving an external signal.
In this embodiment, the portable device 50 includes an active transponder 54 that is coupled to a power source 56. The power source 56 may be a broadband RF source. Similar to that described above, the active transponder 54 includes an antenna 62 that is sized to receive an identification signal transmitted from a short distance (2-4 centimeters) from the device 50. The portable device 50 further includes an indicator 58 that is configured to emit a colored light. In one embodiment, the portable device 50 includes a display 60 that is configured to display the identification values received by the active transponder 54. It should be appreciated that while the illustrated embodiment discloses a passive transponder 52, in other embodiments an active transponder may be used.
In operation, the user first moves the portable device 50 within range of either the terminal plug 26 or one of the ports 34. The RF signal from the active transponder 54 activates the passive transponder 30, 52 and which transmits an identification signal in return. Once the identification signal is received by the active transponder 54, the user then moves the portable device 50 within range of the other passive transponder 30, 52. Once again, the RF signal from the portable device 50 activates the other passive transponder 30, 52 and receives an identification signal in return. If the two identification signals match, the indicator 42 is activated to communicate with the user that the scanned port is correct for the particular cable 20. In one embodiment, the user scans the passive transponder 30 of the cable 20 first, and then moves the portable device along the plurality of ports 34 until the indicator 58 illuminates to communicate that the correct port has been located.
It should be appreciated that the portable device 50 may also be used to identify each end of the cable 50. This could provide advantages in assisting the user in identifying a lengthy cable having remotely located ends.
Turning now to FIG. 3, a method 70 is shown for matching a cable 20 with the correct port 36 from among a plurality of ports 34 of computer 24. The method 70 starts at block 72 and proceeds to block 74 where the terminal plug 26 is moved adjacent to one of the computer ports 34 within the range 46. In the exemplary embodiment, the range 46 is 2-4 centimeters to decrease the risk of the RF signal from the active transponder 38 interfering with the operation of the computer 24. The method 70 then proceeds to block 76 where the active transponder 38 emits an RF signal which activates the passive transponder 30 in block 78. Once activated, the passive transponder 30 transmits an identification signal in block 80. Upon receiving the identification signal, the active transponder 38 compares in query block 82 the identification signal with an identification value of the computer port the active transponder 38 is associated with. If query block 82 returns a negative (the identification signal and the identification value do not match), then the method 70 proceeds to block 84 where the indicator 42 is activated to communicate a negative response. The method 70 then loops back to block 74 where the user moves the terminal plug 26 to another port and the process repeats.
If the query block 82 returns a positive (the identification signal and the identification value match), the method 70 proceeds to block 86 where the indicator 42 is activated to communicate to the user that this computer port is the correct computer port for cable 20. The user may then install the cable and method 70 terminates in block 88.
Technical effects and benefits include facilitating the identification of a desired computer port for interconnection with a particular cable.
As will be appreciated by one of average skill in the art, aspects of embodiments may be embodied as a system or a method or computer program product. Accordingly, aspects of embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as, for example, a “circuit,” “module” or “system.” Furthermore, aspects of embodiments may take the form of a computer program product embodied in one or more computer readable storage device(s) having computer readable program code embodied thereon.
One or more of the capabilities of embodiments can be implemented in software, firmware, hardware, or some combination thereof. Further, one or more of the capabilities can be emulated.
An embodiment may be a computer program product for enabling processor circuits to perform elements of the invention, the computer program product comprising a computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method.
The computer readable storage medium (or media), being a tangible, non-transitory, storage medium having instructions recorded thereon for causing a processor circuit to perform a method. The “computer readable storage medium” being non-transitory at least because once the instructions are recorded on the medium, the recorded instructions can be subsequently read one or more times by the processor circuit at times that are independent of the time of recording. The “computer readable storage media” being non-transitory including devices that retain recorded information only while powered (volatile devices) and devices that retain recorded information independently of being powered (non-volatile devices). An example, non-exhaustive list of “non-transitory storage media” includes, but is not limited to, for example: a semi-conductor storage device comprising, for example, a memory array such as a RAM or a memory circuit such as latch having instructions recorded thereon; a mechanically encoded device such as punch-cards or raised structures in a groove having instructions recorded thereon; an optically readable device such as a CD or DVD having instructions recorded thereon; and a magnetic encoded device such as a magnetic tape or a magnetic disk having instructions recorded thereon.
A non-exhaustive list of examples of computer readable storage medium include the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a portable compact disc read-only memory (CD-ROM). Program code can be distributed to respective computing/processing devices from an external computer or external storage device via a network, for example, the Internet, a local area network, wide area network and/or wireless network. The network may comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and/or edge servers. A network adapter card or network interface card in each computing/processing device receives a program from the network and forwards the program for storage in a computer-readable storage device within the respective computing/processing device.
Computer program instructions for carrying out operations for aspects of embodiments may be for example assembler code, machine code, microcode or either source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
Aspects of embodiments are described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions.
These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer program instructions may also be stored in a computer readable storage medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular.
The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

## Claims

1. A method for identifying a cable terminal plug and a port on a computer system, the method comprising:
transmitting a first radio frequency (RF) signal with a portable device to a first passive transponder coupled to a first cable plug, the portable device having an active transponder and an indicator light, the portable device being movable relative to the computer system, the first cable plug being coupled to a cable having a second cable plug at an opposing end, the second cable plug having a second passive transponder;
activating the first passive transponder with the first RF signal;
transmitting a first identification signal with the first passive transponder based on receiving the first RF signal;
positioning the second cable plug adjacent to a computer port;
transmitting a second radio frequency (RF) signal to the second passive transponder with the portable device;
activating the second passive transponder with the second RF signal;
transmitting a second identification signal with the second passive transponder based on receiving the second RF signal, the first identification signal being received by the portable device prior to the second identification signal;
determining that the second identification signal matches an identification value of the computer port;
moving the portable device from the first cable plug to the second cable plug;
emitting a first light having a first color from the indicator light based on the first identification signal matches the second identification signal; and
emitting a second light having a second color from the indicator light based on the computer port is an incorrect port, wherein the first color is different than the second color.

2. The method of claim 1 wherein the step of transmitting the first identification signal includes transmitting the first identification signal from the first passive transponder to the active transponder.

3. The method of claim 2 wherein the second light is emitted based on the second identification signal not matching the identification value.

4. The method of claim 2 wherein the first identification signal is a 16 bit to 32 bit signal.

5. The method of claim 2 wherein the step of positioning the second cable plug adjacent the portable device includes moving the cable plug within 2-4 centimeters of the portable device.

6. A computer program product for implementing an identification of a cable terminal plug and a port on a computer system, the computer program product comprising:
a tangible and non-transitory storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising:
transmitting, by a processor, a first RF signal to a first passive transponder, the first passive transponder being coupled to a first cable plug, the first cable plug being coupled to a cable having a second cable plug at an opposing end, the second cable plug having a second passive transponder;
activating the first passive transponder with the first RF signal;
transmitting a first identification signal based on receiving the first RF signal;
transmitting, by a processor, a second RF signal to the second passive transponder positioned adjacent a computer port;
activating the second passive transponder with the second RF signal;
transmitting a second identification signal based on receiving the second RF signal; and
determining, with the processor, that the second identification signal matches an identification value of the computer port;
providing an active transponder in a portable device, wherein the steps of transmitting the first RF signal and second includes transmitting the first RF signal and second RF signal with the active transponder, wherein the portable device includes an indicator light;
moving the portable device from the first cable plug to the second cable plug;
receiving with the portable device the first identification signal;
receiving with the portable device the second identification signal; and
emitting a first light having a first color from the indicator light based on the first identification signal matches the second identification signal; and
emitting a second light having a second color from the indicator light based on the computer port is an incorrect port, wherein the first color is different than the second color.

7. The method of claim 1 further comprising a display operably coupled to the active transponder, the display configured to display identification values received by the active transponder.

8. The method of claim 7 further comprising displaying identification values on the display based on the active transponder receiving the first identification signal and the second identification signal.

9. The method of claim 8 further comprising activating the second passive transponder based on the passive transponder being within 2-4 centimeters of the active transponder.