System and method for providing a bit indexed service chain
First Claim
1. A method comprising:
- receiving a packet at a node, wherein the packet comprises a bit indexed explicit replication (BIER) header identifying a bitstring, the bitstring comprising a plurality of bits each of which indicates a destination;
ANDing, in response to the receiving, the bitstring of the packet with a bitstring of a forwarding table of the node to yield a new bitstring, the new bitstring comprising at least a first bit indicating a first destination and a second bit indicating a second destination, the first bit and the second bit corresponding to respective bit positions associated with the first destination and the second destination;
forwarding the packet through one or more networks toward the first destination and the second destination based on the bitstring and a predetermined bit selection order, wherein the predetermined bit selection order and the bitstring yield a sequential delivery of the packet to the first destination and the second destination;
after the packet arrives at the first destination, setting the first bit to zero in the new bitstring to yield an updated bitstring;
ANDing, in response to the packet arriving at the first destination, the bitstring of the packet with a bitstring of a forwarding table of the first destination to yield a new updated bitstring; and
forwarding the packet through the one or more networks toward the second destination according to the new updated bitstring and the predetermined bit selection order.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed is a method that modifies a bit indexed explicit replication (BIER) algorithm. The method includes receiving a packet at a node, wherein the packet includes a BIER header identifying a bitstring, the bitstring including a first bit indicating a first destination and a second bit indicating a second destination and forwarding the packet through one or more networks toward the first destination and the second destination based on the bitstring and a predetermined bit selection order. The predetermined bit selection order causes a sequential delivery of the packet to the first destination and the second destination. After the packet arrives at the first destination, the method includes setting the first bit to zero in the bitstring and forwarding the packet through the one or more networks toward the second destination according to the updated bitstring.
352 Citations
15 Claims
-
1. A method comprising:
-
receiving a packet at a node, wherein the packet comprises a bit indexed explicit replication (BIER) header identifying a bitstring, the bitstring comprising a plurality of bits each of which indicates a destination; ANDing, in response to the receiving, the bitstring of the packet with a bitstring of a forwarding table of the node to yield a new bitstring, the new bitstring comprising at least a first bit indicating a first destination and a second bit indicating a second destination, the first bit and the second bit corresponding to respective bit positions associated with the first destination and the second destination; forwarding the packet through one or more networks toward the first destination and the second destination based on the bitstring and a predetermined bit selection order, wherein the predetermined bit selection order and the bitstring yield a sequential delivery of the packet to the first destination and the second destination; after the packet arrives at the first destination, setting the first bit to zero in the new bitstring to yield an updated bitstring; ANDing, in response to the packet arriving at the first destination, the bitstring of the packet with a bitstring of a forwarding table of the first destination to yield a new updated bitstring; and forwarding the packet through the one or more networks toward the second destination according to the new updated bitstring and the predetermined bit selection order. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system comprising:
-
at least one processor; and a computer-readable storage device storing instructions which, when executed by the at least one processor, cause the at least one processor to perform operations comprising; receiving a packet at a node, wherein the packet comprises a bit indexed explicit replication (BIER) header identifying a bitstring, the bitstring comprising a plurality of bits each of which indicates a destination; ANDing, in response to the receiving, the bitstring of the packet with a bitstring of a forwarding table of the node to yield a new bitstring, the new bitstring comprising at least a first bit indicating a first destination and a second bit indicating a second destination, the first bit and the second bit corresponding to respective bit positions associated with the first destination and the second destination; forwarding the packet through one or more networks toward the first destination and the second destination based on the bitstring and a predetermined bit selection order, wherein the predetermined bit selection order and the bitstring yield a sequential delivery of the packet to the first destination and the second destination; after the packet arrives at the first destination, setting the first bit to zero in the new bitstring to yield an updated bitstring; ANDing, in response to the packet arriving at the first destination, the bitstring of the packet with a bitstring of a forwarding table of the first destination to yield a new updated bitstring; and forwarding the packet through the one or more networks toward the second destination according to the new updated bitstring and the predetermined bit selection order. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A non-transitory computer-readable storage device storing instructions which, when executed by at least one processor, cause the at least one processor to perform operations comprising:
-
receiving a packet at a node, wherein the packet comprises a bit indexed explicit replication (BIER) header identifying a bitstring, the bitstring comprising a plurality of bits each of which indicates a destination; ANDing, in response to the receiving, the bitstring of the racket with a bitstring of a forwarding table of the node to yield a new bitstring, the new bitstring comprising at least a first bit indicating a first destination and a second bit indicating a second destination, the first bit and the second bit corresponding to respective bit positions associated with the first destination and the second destination; forwarding the packet through one or more networks toward the first destination and the second destination based on the bitstring and a predetermined bit selection order, wherein the predetermined bit selection order and the bitstring yield a sequential delivery of the packet to the first destination and the second destination; after the packet arrives at the first destination, setting the first bit to zero in the new bitstring to yield an updated bitstring; ANDing, in response to the packet arriving at the first destination, the bitstring of the packet with a bitstring of a forwarding table of the first destination to yield a new updated bitstring; and forwarding the packet through the one or more networks toward the second destination according to the new updated bitstring and the predetermined bit selection order. - View Dependent Claims (14, 15)
-
Specification