Adjustable bit mask for high-speed native load balancing on a switch
AssigneeCisco Technology, Inc.
InventorsRajendra Kumar Thirumurthi, Samar Sharma, Mouli Vytla
Life of this patent
Estimating the term…
Abstract
In an example, a network switch is configured to natively act as a high-speed load balancer. Numerous load-balancing techniques may be used, including one that bases the traffic “bucket” on a source IP address of an incoming packet. This particular technique provides a network administrator a powerful tool for shaping network traffic. For example, by assigning certain classes of computers on the network particular IP addresses, the network administrator can ensure that the traffic is load balanced in a desirable fashion. To further increase flexibility, the network administrator may apply a bit mask to the IP address, and expose only a portion, selected from a desired octet of the address.
Claims20
A switch comprising:
- at least one processor;
- and
- a memory storing instructions which when executed by the at least one processor, causes the at least one processor to:
- receive an incoming network packet;
- identify whether to load balance the incoming network packet across a plurality of service nodes;
- in response to identifying whether to load balance the incoming network packet, mask, by a bitmask, a portion of a source address or a destination address of the incoming network packet to expose a fragment of the source address or the destination address, respectively;
- adjust the bitmask to select a specific number of bits of the source address to be masked;
- and
- assign the incoming network packet to a service node of the plurality of service nodes by identifying an address of the service node from the fragment of the source address or the destination address based on a mapping of fragments of source addresses or destination addresses to addresses of traffic buckets of the plurality of service nodes.
A method comprising:
- receiving an incoming network packet;
- identifying whether to load balance the incoming network packet across a plurality of service nodes;
- in response to identifying whether to load balance the incoming network packet, masking, by a bitmask, a portion of a source address or a destination address of the incoming network packet to expose a fragment of the source address or the destination address, respectively;
- adjusting the bitmask to select a specific number of bits of the source address to be masked;
- and
- assigning the incoming network packet to a service node of the plurality of service nodes by identifying an address of the service node from the fragment of the source address or the destination address based on a mapping of fragments of source addresses or destination addresses to addresses of traffic buckets of the plurality of service nodes.
One or more non-transitory tangible computer-readable mediums storing instructions, which when executed by at least one processor of a switch, causes the at least one processor to:
- receive an incoming network packet;
- identify whether to load balance the incoming network packet across a plurality of service nodes;
- in response to identifying whether to load balance the incoming network packet, mask, by a bitmask, a portion of a source address or a destination address of the incoming network packet to expose a fragment of the source address or the destination address, respectively;
- adjust the bitmask to select a specific number of bits of the source address to be masked;
- and
- assign the incoming network packet to a service node of the plurality of service nodes by identifying an address of the service node from the fragment of the source address or the destination address based on a mapping of fragments of source addresses or destination addresses to addresses of traffic buckets of the plurality of service nodes.
Dependencies are inferred from the claim text.