×

Congestion avoidance in multipath routed flows using virtual output queue statistics

  • US 10,069,734 B1
  • Filed: 08/09/2016
  • Issued: 09/04/2018
  • Est. Priority Date: 08/09/2016
  • Status: Active Grant
First Claim
Patent Images

1. A device, comprising:

  • interfaces, each configured to output network packets;

    a memory storing;

    multipath groups, each associated with some of the interfaces;

    virtual output queues, each associated with one of the interfaces and configured to store information indicating network packets to be output by an associated interface; and

    histogram tables;

    shared-interface discovery logic configured to;

    generate a shared-interface list including members that each represents a union of interfaces between at least some of the multipath groups, wherein the multipath groups of the each member share at least one of the interfaces; and

    associate each of the histogram tables with one of the members;

    network routing logic configured to;

    generate a hash value for each network packet to be output by an interface of the device;

    select one of the interfaces to output each of the network packets including determining which of the interfaces is associated with a hash reference range that includes the hash value generated for the network packet; and

    statistics collection logic configured to;

    determine whether a number of network packets indicated by information of one of the virtual output queues meets a first threshold;

    upon determining that the number of network packets indicated by information of one of the virtual output queues meets the first threshold, populate one of the histogram tables with counts of hash values generated for the network packets, wherein the one histogram table is selected based on determining that a network packet to be output by an interface that is included in a member of the shared-interface list, wherein the included interface is associated with the one of the virtual output queues; and

    determine whether one of the interfaces is congested based on the counts of hash values.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×