Source routed multicast LSP
First Claim
1. A computer implemented method performed in a first node for multi-casting a packet, the method comprising:
- receiving a first packet having a label stack including a plurality of labels compatible with MPLS (multi-protocol label switching), wherein the label stack is formed in a hierarchical structure based on levels of the label stack, including arranging substantially all nodes involved in a plurality of label switch paths (LSPs) into an array according to the hierarchical structure, from root to bottom and from left to right, andencoding the hierarchical structure into an offset based level order sequential representation (LOSR), wherein a pointer from a parent node to a child node is encoded as an offset representing a number of elements between the parent node and the child node;
duplicating by a processor the first packet into a second packet as a function of contents of a topmost label of the label stack;
forming by the processor a third packet by removing at least two labels from the top of the label stack of the second packet; and
transmitting by the processor the first and third packets to different destination nodes as a function of respective contents of the topmost labels of the first and third packets.
2 Assignments
0 Petitions
Accused Products
Abstract
Source routed multicast LSP is described herein. In one embodiment, when a first node receives a first packet having a label stack including a plurality of labels compatible with MPLS (multi-protocol label switching), in response to a first label on a top of the label stack, the first packet is duplicated into a second packet. In addition, at least two labels are popped from the top of the label stack of the second packet forming a third packet. Thereafter, the first and third packets are processed based on a label on the top of the label stack of the first and third packets respectively. Other methods and apparatuses are also described.
11 Citations
18 Claims
-
1. A computer implemented method performed in a first node for multi-casting a packet, the method comprising:
-
receiving a first packet having a label stack including a plurality of labels compatible with MPLS (multi-protocol label switching), wherein the label stack is formed in a hierarchical structure based on levels of the label stack, including arranging substantially all nodes involved in a plurality of label switch paths (LSPs) into an array according to the hierarchical structure, from root to bottom and from left to right, and encoding the hierarchical structure into an offset based level order sequential representation (LOSR), wherein a pointer from a parent node to a child node is encoded as an offset representing a number of elements between the parent node and the child node; duplicating by a processor the first packet into a second packet as a function of contents of a topmost label of the label stack; forming by the processor a third packet by removing at least two labels from the top of the label stack of the second packet; and transmitting by the processor the first and third packets to different destination nodes as a function of respective contents of the topmost labels of the first and third packets. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable storage medium for storing instructions, when executed by a machine, cause the machine to perform a method in a first node for multi-casting a packet, the method comprising:
-
receiving a first packet having a label stack including a plurality of labels compatible with MPLS (multi-protocol label switching), wherein the label stack is formed in a hierarchical structure based on levels of the label stack, including arranging substantially all nodes involved in a plurality of label switch paths (LSPs) into an array according to the hierarchical structure, from root to bottom and from left to right, and encoding the hierarchical structure into an offset based level order sequential representation (LOSR), wherein a pointer from a parent node to a child node is encoded as an offset representing a number of elements between the parent node and the child node; duplicating the first packet into a second packet as a function of contents of a topmost label of the label stack; forming a third packet by removing at least two labels from the top of the label stack of the second packet; and transmitting the first and third packets to different destination nodes as a function of respective contents of the topmost labels of the first and third packets. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification