Tunnel provisioning with link aggregation and hashing
AssigneeCorrigent Systems Ltd.
InventorRonen Solomon
Life of this patent
Estimating the term…
Abstract
A method for processing data packets in a communication network includes establishing a path for a flow of the data packets through the communication network. At a node along the path having a plurality of aggregated ports, a port is selected from among the plurality to serve as part of the path. A label is chosen responsively to the selected port. The label is attached to the data packets in the flow at a point on the path upstream from the node. Upon receiving the data packets at the node, the data packets are switched through the selected port responsively to the label.
Claims20
A method for assigning and utilizing an Ethernet physical data port in an Ethernet Link Aggregation Group (LAG) located downstream from a preceding node in a Multi-Protocol Label Switching (MPLS) network tunnel employing Resource Reservation Protocol Traffic Engineering (RSVP-TE) tunnel provisioning, the method comprising:
- sending downstream, by the preceding node, an RSVP-TE PATH message augmented with a LABEL_REQUEST object;
- receiving, by a first MPLS/LAG switch, said RSVP-TE PATH message and said LABEL_REQUEST object;
- designating a plurality of physical data ports in the LAG as a single logical port;
- selecting, by said first MPLS/LAG switch from said plurality of physical data ports in said single logical port, a single physical tunnel port which meets a bandwidth requirement of the network tunnel, wherein said single physical tunnel port has a port serial number;
- assigning said single physical tunnel port to the network tunnel;
- preparing, by said first MPLS/LAG switch, a data packet label by which said single physical tunnel port may be identified;
- selecting a hashing function, whose argument is said data packet label and whose value is the port serial number of said single physical tunnel port;
- obtaining an inverse of said hashing function, whose argument is said serial port number of said single physical tunnel port and whose value is said data packet label;
- performing said inverse of said hashing function on said serial port number of said single physical tunnel port to obtain said data packet label;
- sending said data packet label to the preceding node;
- attaching said data packet label to all data packets sent by the preceding node which are associated with the network tunnel;
- receiving a data packet having said data packet label at said first MPLS/LAG switch;
- performing said hashing function on said data packet label to obtain said serial port number of said single physical tunnel port;
- and
- switching said data packet to said single physical tunnel port according to said serial port number, and sending said data packet to a second MPLS/LAG switch via said single physical tunnel port.
An apparatus for assigning and utilizing an Ethernet physical data port in an Ethernet Link Aggregation Group (LAG) located downstream from a preceding node in a Multi-Protocol Label Switching (MPLS) network tunnel employing Resource Reservation Protocol Traffic Engineering (RSVP-TE) tunnel provisioning, the LAG having a first MPLS/LAG switch and a second MPLS/LAG switch, the apparatus comprising:
- a processor, which is configured to:
- receive an RSVP-TE PATH message augmented with a LABEL REQUEST object from the preceding node;
- receive a designation of a plurality of physical data ports in the LAG as a single logical port;
- make a selection from said plurality of physical data ports in said single logical port, of a single physical tunnel port which meets a bandwidth requirement of the network tunnel, wherein said single physical tunnel port has a port serial number;
- assign said single physical tunnel port to the network tunnel;
- perform an inverse function of a predetermined hashing function, whose argument includes said port serial number of said single physical tunnel port and computing thereby a data packet label;
- send said data packet label upstream to the upstream node, for attaching said data packet label to a data packet sent by the preceding node which is associated with the network tunnel;
- and
- a mapper, which is configured to:
- receive a data packet from the preceding node, detect said data packet label in said data packet, and if said data packet contains said data packet label, to perform said predetermined hashing function to obtain said port serial number of said single physical tunnel port;
- and
- direct the first MPLS/LAG switch to switch said data packet to said single physical tunnel port according to said port serial number, and send said data packet to the second MPLS/LAG switch via said single physical tunnel port.
A method for assigning and utilizing an Ethernet physical data port in an Ethernet Link Aggregation Group (LAG) located downstream from a preceding node in a Multi-Protocol Label Switching (MPLS) network tunnel employing Resource Reservation Protocol Traffic Engineering (RSVP-TE) tunnel provisioning, the method comprising the steps of:
- receiving from the preceding node, by a first MPLS/LAG switch, an RSVP-TE PATH message augmented with a LABEL_REQUEST object;
- designating by said first MPLS/LAG switch a plurality of physical data ports in said first MPLS/LAG switch as a single logical port;
- selecting, by said first MPLS/LAG switch, from said plurality of physical data ports in said single logical port, a single physical tunnel port which meets a bandwidth requirement of the network tunnel, wherein said single physical tunnel port has a port serial number;
- assigning, by said first MPLS/LAG switch, said single physical tunnel port to the network tunnel;
- preparing, by said first MPLS/LAG switch, a data packet label by which said single physical tunnel port may be identified;
- selecting, by said first MPLS/LAG switch, a hashing function, whose argument is said data packet label and whose value is the port serial number of said single physical tunnel port;
- obtaining, by said first MPLS/LAG switch, an inverse of said hashing function, whose argument is said serial port number of said single physical tunnel port and whose value is said data packet label;
- performing, by said first MPLS/LAG switch, said inverse of said hashing function on said serial port number of said single physical tunnel port to obtain said data packet label;
- sending, by said first MPLS/LAG switch, said data packet label to the preceding node;
- receiving, by said first MPLS/LAG switch, from the preceding node a data packet having said data packet label at said first MPLS/LAG switch;
- performing, by said first MPLS/LAG switch, said hashing function on said data packet label to obtain said serial port number of said single physical tunnel port;
- and
- switching, by said first MPLS/LAG switch, said data packet to said single physical tunnel port according to said serial port number, and sending said data packet to a second MPLS/LAG switch via said single physical tunnel port.
Dependencies are inferred from the claim text.