The simulation follows message processing rules specified in RFC3036 (LDP Specification). A summary of the algorithm used in the RFC is presented below.
Label Request Message processing
An LSR may transmit a Request message under any of the conditions below:
Upon receiving a Label Request message, the following procedures will be performed:
Step 1: Extract the FEC from the message and locate the incoming interface of the message. Step 2: Check whether the FEC is an outstanding FEC. Alternative 1: This FEC is outstanding Step 1: Return Alternative 2: This FEC is not outstanding Step 1: Continue Step 3: Check if there is an exact match of the FEC in the routing table. Alternative 1: There is an exact match Step 1: Continue Alternative 2: There is no match Step 1: Construct a Notification message of No route and send this message back to the sender. Step 4: Make query to local LIB to find out the corresponding label. Alternative 1: The label found Step 1: Construct a Label Mapping message and send over the incoming interface. Alternative 2: The label cannot be found for this FEC Step 1: Construct a new Label Request message and send the message out using L3 routing. Step 2: Construct a Notification message indicating that the label cannot be found.
Label Mapping Message processing
Upon receiving a Label Mapping message, the following procedures will be performed:
Step 1: Extract the FEC and the label from the message. Step 2: Check whether this is an outstanding FEC Alternative 1: This FEC is outstanding Step 1: Continue Alternative 2: This FEC is not outstanding Step 1: Send back the server an Notification of Error message. Step 3: Install the new label to the local LIB using the extracted label, FEC and the message incoming interface.