IP Library Granted Patent US 9,172,602
Granted Patent B1
US 9,172,602 · App. 13/678,418 · Granted Oct 27, 2015

Method and system for auto-negotiation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,172,602
App. No.
13/678,418
Granted
Oct 27, 2015
Kind
B1
Abstract

Methods and systems for negotiating between a first network device and a second network device connected to a network, is provided. The method determining if a first port of the first network device having a plurality of Sub-Ports, is auto-negotiation enabled; wherein the plurality of Sub-Ports can be configured to operate independently as a port for sending and receiving information using one of a plurality of network links at a plurality of rates complying with a plurality of protocols; configuring any one or more of the Sub-Ports as one quad lane, two dual lane, one dual lane and two single lane, or four single lane ports; determining if lanes of the first port are physically swapped by identifying which one or more of the Sub-Ports will operate as a lane 0 for communicating with a particular lane 0 of the second network device; and processing auto-negotiation on all lanes.

Claims (29)

1. A machine implemented method for auto-negotiation between a first network device and a second network device connected to a network, comprising:

determining if auto-negotiation is enabled for a first port of the first network device having a plurality of Sub-Ports; wherein each of the plurality of Sub-Ports is coupled to a network link from among a plurality of network links and can be configured to operate as independent ports for sending and receiving information using one or more of the plurality of network links at a plurality of rates complying with a plurality of protocols including a network protocol and a storage protocol;

configuring the plurality of Sub-Ports as one quad lane port using at least four network links, two dual lane ports each using two network links, one dual lane port using two network links and two single lane ports each using a single network link, or four single lane ports each using a single network link;

identifying an auto-negotiation lane for the first port communicating with an auto-negotiation lane of the second network device, when lanes of the first port are physically swapped, where the identified auto-negotiation lane for the first port is based on the configuration of the plurality of Sub-Ports of the first port as one quad lane port, two dual lane ports, one dual lane and two single lane ports and four single lane ports; and

performing auto-negotiation for the first port using the identified auto-negotiation lane.

2. The method of claim 1 , further comprising setting capabilities of each Sub-Port.

3. The method of claim 1 , wherein performing auto-negotiation further comprising: obtaining capabilities of the second network device for the auto-negotiation.

4. The method of claim 1 , wherein performing auto-negotiation further comprising: matching capabilities of the first and second network devices; and selecting highest priority of the matching capabilities.

5. The method of claim 1 , wherein the plurality of Sub-Ports share hardware logic of the first port and use dedicated logic for each Sub-port for sending and receiving information.

6. The method of claim 1 , wherein the network device is a switch coupled to one or more devices.

7. The method of claim 1 , wherein one of the plurality of Sub-Ports is configured to operate as an Ethernet port and perform Clause 73 Auto-Negotiation after the auto-negotiation lane is identified.

8. A first network device coupled to a second network device via a plurality of network links, comprising:

a processor for executing firmware code; and a first port having a plurality of Sub-Ports where of the plurality of Sub-Ports is coupled to a network link from among a plurality of network links and can be configured to operate as independent ports for sending and receiving information using one or more of the plurality of network links at a plurality of rates complying with a plurality of protocols including a network protocol and a storage protocol;

wherein the processor executable firmware: determines if auto-negotiation is enabled for the first port; configures the plurality of Sub-Ports as one quad lane port using at least four network links, two dual lane ports each using two network links, one dual lane port using two network links and two single lane ports each using a single network link, or four single lane ports each using a single network link; identifies an auto-negotiation lane for the first port communicating with an auto-negotiation lane of the second network device, when lanes of the first port are physically swapped, where the identified auto-negotiation lane for the first port is based on the configuration of the plurality of Sub-Ports of the first port as one quad lane port, two dual lane ports, one dual lane and two single lane ports and four single lane ports; and performs auto-negotiation for the first port using the identified auto-negotiation lane; and

wherein the processor sets capabilities of each Sub-Port; obtains capabilities of the second network device; matches capabilities of the first and second network devices and selects highest priority of matching capabilities.

9. The network device of claim 8 , wherein port configurations of each network device are set.

10. The network device of claim 8 , wherein the network device is a switch coupled to one or more devices.

11. The network of claim 8 , wherein one of the plurality of Sub-Ports is configured to operate as an Ethernet port and perform Clause 73 Auto-Negotiation after the auto-negotiation lane is identified.

12. A non-transitory, machine readable storage medium having stored thereon instructions for performing a method for auto-negotiation between a first network device and a second network device connected to a network, comprising machine executable code which when executed by at least one machine, causes the machine to:

determine if auto-negotiation is enabled for a first port of the first network device having a plurality of Sub-Ports; wherein each of the plurality of Sub-Ports is coupled to a network link from among a plurality of network links and can be configured to operate as independently-as-a ports for sending and receiving information using one or more of the plurality of network links at a plurality of rates complying with a plurality of protocols including a network protocol and a storage protocol;

configure the plurality of Sub-Ports as one quad lane port using at least four network links, two dual lane ports each using two network links, one dual lane port using two network links and two single lane ports each using a single network link, or four single lane ports each using a single network link;

identify an auto-negotiation lane for the first port communicating with an auto-negotiation lane of the second network device, when lanes of the first port are physically swapped, where the identified auto-negotiation lane for the first port is based on the configuration of the plurality of Sub-Ports of the first port as one quad lane port, two dual lane ports, one dual lane and two single lane ports and four single lane ports; and

perform auto-negotiation for the first port using the identified auto-negotiation lane.

13. The non-transitory, storage medium of claim 12 , the machine executable code further causes the machine to set capabilities of each Sub-Port.

14. The non-transitory, storage medium of claim 12 , wherein performing auto-negotiation further comprising: obtaining capabilities of the second network device for the auto-negotiation.

15. The non-transitory, storage medium of claim 12 , wherein performing auto-negotiation further comprising: matching capabilities of the first and second network devices; and selecting highest priority of the matching capabilities.

16. The non-transitory, storage medium of claim 12 , wherein the plurality of Sub-Ports share hardware logic of the first port and use dedicated logic for each Sub-port for sending and receiving information.

17. The non-transitory, storage medium of claim 12 , wherein the network device is a switch coupled to one or more devices.

18. The non-transitory, storage medium of claim 12 , wherein one of the plurality of Sub-Ports is configured to operate as an Ethernet port and perform Clause 73 Auto-Negotiation after the auto-negotiation lane is identified.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CHANGE OF NAME Recorded Oct 8, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047205/0953 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
MERGER Recorded Oct 18, 2017
From: QLOGIC CORPORATION
To: CAVIUM, INC.
Reel/Frame 044812/0504 →
SECURITY AGREEMENT Recorded Mar 1, 2017
From: QLOGIC CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 041854/0119 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2012
From: DROPPS, FRANK R.; KOHLWEY, ERNEST G.
To: QLOGIC, CORPORATION
Reel/Frame 029307/0319 →