Aspects of the present disclosure are best understood from the following detailed description when read with the accompanying figures. It is emphasized that, in accordance with the standard practice in the industry, various features are not drawn to scale. In fact, the dimensions of the various features may be arbitrarily increased or reduced for clarity of discussion.
For purposes of this disclosure, an IHS may include any instrumentality or aggregate of instrumentalities operable to compute, classify, process, transmit, receive, retrieve, originate, switch, store, display, manifest, detect, record, reproduce, handle, or utilize any form of information, intelligence, or data for business, scientific, control, entertainment, or other purposes. For example, an IHS may be a personal computer, a PDA, a consumer electronic device, a network server or storage device, a switch router or other network communication device, or any other suitable device and may vary in size, shape, performance, functionality, and price. The IHS may include memory, one or more processing resources such as a central processing unit (CPU) or hardware or software control logic. Additional components of the IHS may include one or more storage devices, one or more communications ports for communicating with external devices as well as various input and output (I/O) devices, such as a keyboard, a mouse, and a video display. The IHS may also include one or more buses operable to transmit communications between the various hardware components.
In one embodiment, IHS 100,
Assume that switch A (IHS 100a) has deployed the automatic detection and warning system and method described herein, and switch B is a peer switch that may or may not have implemented the automatic detection and warning system and method. There are two general scenarios—one in which switch A is set to auto-negotiate, and another in which switch A is set to a fixed speed and duplex configuration. In either scenarios, switch A is made to listen to its peer's advertisement of its speed and duplex capabilities.
In the first scenario, switch A is set to auto-negotiate. Switch A listens to switch B's advertisement and determines that switch B is advertising half duplex. If switch B is also set to auto-negotiate, then it is only capable of operating at half duplex. Since switch A is also set to auto-negotiate, then both switches will negotiate to operate at half duplex and there should not be any configuration mismatch problem. On the other hand, if switch B is actually operating in a fixed mode, then it may be advertising half duplex but is actually operating at full duplex per industry standard. In this instance, switch A would incorrectly negotiate to half duplex which would lead to a configuration mismatch problem. Because there is no practical way to determine whether switch B is set to auto-negotiate or fixed mode, the automatic detection system and method described herein always generate and convey a warning notification to the user if switch B is advertising as capable of operating only at half duplex.
In the second scenario, switch A is set to fixed mode. Again, switch A listens to switch B's advertisement and determines that switch B is advertising half duplex. If switch B is set to auto-negotiate, then it is only capable of operating at half duplex. In this case, switch A should generate and send a warning notification to the user only if its configured duplex does not match switch B's advertised duplex. On the other hand, if switch B is set to fixed mode then it may be advertising half duplex but is actually operating at full duplex per industry standard. In this instance, switch A should generate and send a warning notification only if its configured duplex does not match switch B's advertised duplex setting. In the second scenario, a warning notification should be generated and sent when the duplex setting fixed for switch A is different from what is advertised by the peer switch.
If, on the other hand, the port is not set to auto-negotiate as determined in block 132, then the port has a fixed speed and duplex setting. This port thus advertises that it is operating at half-duplex per industry standard in block 144. In step 146, the port listens to its peer's speed and duplex advertisement even though it is configured to a fixed speed and duplex setting. In block 148, a determination is made as to whether its peer is advertising as only capable of operating at half duplex. If the peer is advertising as operating at half duplex, then a determination is made as to its own duplex setting in block 150. If it is determined that its own duplex setting is fixed to half duplex, then no warning is needed to be given, as shown in block 152. No warning is necessary because both ports are operating at half duplex and there is no possibility of configuration mismatch. If in block 150 a determination is made that the port is not set to half duplex, then a warning is generated and conveyed in block 140 because there is a possibility of duplex mismatch. In this instance, the port has advertised itself as operating at half duplex yet it is not fixed to half duplex, its advertisement is thus not correct and may mislead the other port.
In block 148, if it is determined that the peer is not advertising as only capable of operating at half duplex, then a determination is made as to whether the peer is advertising that it is only capable of operating at full duplex in block 154. If so, then a warning is generated and conveyed to the user to indicate a possible duplex match problem in block 156. There is a possibility of duplex mismatch because the port is advertising as operating at half duplex but the peer is auto-negotiating and may end up configuring itself to half duplex, which may be incorrect. If in block 154 a determination is made that the peer is not advertising as only capable of operating at full duplex, then the peer is advertising multiple configuration options and a determination is made as to whether the port is fixed to operate at full duplex in block 158. If the port is fixed to operate at full duplex, then a warning is generated and conveyed to the user because there is a possibility of a duplex mismatch problem. In this instance, the peer is set to auto-negotiate but the port is advertising itself as operating at half duplex when it is actually operating at full duplex. If the port is not set to operate at full duplex, as determined in block 158, then no warning is needed because the peer is offering both half and full duplex configurations and the port is operating at half duplex. The result is that the peer will negotiate to operate at half duplex so there will not be a duplex mismatch problem.
Accordingly, the condition under which a warning about the possibility of duplex mismatch should be generated and conveyed to the user can be summarized in the following manner:
In this embodiment, the switch implementing the method described above listens to the advertisement of its peer even when it is not set for auto-negotiation. By listening to its peer and comparing its own duplex configuration setting to how the peer may be configured, the conditions in which the possibility of duplex mismatch may occur becomes evident. In these instances, a warning is generated and sent to the user. The warning may be in the form of an email or another suitable form of notification that is effective in informing the user. Upon receipt of the warning, the user may decide to verify the port configuration settings on both ends of the link prior to the occurrence of any failure. Alternatively, if a network error does develop, the user may look into duplex mismatch as a possible cause.
The embodiments described herein are operable to automatically detect and warn about possible port configuration mismatch even if implemented at only one end of the link.
Although illustrative embodiments have been shown and described, a wide range of modification, change and substitution is contemplated in the foregoing disclosure and in some instances, some features of the embodiments may be employed without a corresponding use of other features. Accordingly, it is appropriate that the appended claims be construed broadly and in a manner consistent with the scope of the embodiments disclosed herein.