Patent ID: 9716658
Date: 2017-07-25
CPC Classifications: H04L

Claim:
1. A method comprising: generating, by a data switch, a first hash value based on a header of a data packet; performing a lookup in a first equal cost multi-path (ECMP) table using the first hash value, the first ECMP table including a weighted listing of at least two secondary ECMP tables, the lookup in the first ECMP table selecting a secondary ECMP table of the at least two secondary ECMP tables; generating, by the data switch, a second hash value based on the header of the data packet; performing a lookup in the selected secondary ECMP table based on the second hash value to select an egress port of a plurality of egress ports of the data switch; and forwarding the data packet on the selected egress port, wherein: a first secondary ECMP table of the at least two secondary ECMP tables includes an un-weighted listing of a first set of egress ports of the plurality of egress ports, and the first set of egress ports includes egress ports of the plurality of egress ports having a highest routing weight of the plurality of egress ports, a second secondary ECMP table of the at least two secondary ECMP tables includes an un-weighted listing of a second set of egress ports of the plurality of egress ports, the second set of egress ports being different than the first set of egress ports and the second set of egress ports includes egress ports of the plurality of egress ports having a second highest routing weight of the plurality of egress ports, a weight for the first secondary ECMP table in the first ECMP table is a fixed value, and a weight for the second secondary ECMP table in the first ECMP table is based on a ration of: