RSVP authentication verifies digest messages carried in RSVP messages to defend against attacks initiated by modified or forged messages. Authentication enhancements can also be used to prevent replay attacks and packet mis-sequencing. RSVP authentication and its enhancements improve MPLS TE network security.
RSVP uses raw IP to transmit packets. Raw IP has no security mechanism and is prone to attacks. RSVP authentication verifies packets using keys to prevent attacks. When the local RSVP router receives a packet with a sequence number smaller than the local maximum sequence number, the neighbor relationship is terminated.
Key authentication cannot prevent replay attacks or neighbor relationship termination resulting from RSVP message mis-sequencing. The RSVP authentication enhancements are used to address these problems. RSVP authentication enhancements add authentication lifetime, handshake, and message window mechanisms to enhance RSVP security. The enhancements also improve RSVP's capability to verify neighbor relationships in a harsh network environment, such as a congested network.
Key authentication
RSVP authentication protects RSVP nodes from spoofing attacks by verifying keys in packets exchanged between neighboring nodes. The same key must be configured on two neighboring nodes before they perform RSVP authentication. A local node uses the configured key and the Keyed-Hashing for Message Authentication Message Digest 5 (HMAC-MD5) algorithm to calculate a digest for a message, adds this digest as an integrity object into the message, and then sends the message to the remote node. After the remote node receives the message, it uses the same key and algorithm to calculate a digest and checks whether the local digest is the same as the received one. If they match, the remote node accepts the message. If they do not match, the remote node discards the message.
Authentication lifetime
Controls the lifetime of an RSVP neighbor relationship when no CR-LSP exists between the RSVP neighbors. The RSVP neighbor relationship is retained until the RSVP authentication lifetime expires. The RSVP-TE authentication lifetime does not affect the status of existing CR-LSPs.
Prevents continuous RSVP authentication. For example, after RSVP authentication is enabled between RTA and RTB, RTA continuously sends tampered RSVP messages with an incorrect key to RTB. As a result, RTB continuously discards the messages. The authentication relationship between neighbors, however, cannot be terminated. The authentication lifetime can prevent this situation. When neighbors receive valid RSVP messages within the lifetime, the RSVP authentication lifetime is reset. Otherwise, the authentication relationship is deleted after the authentication lifetime expires.
Handshake mechanism
Message window
A message window saves the received RSVP messages. If the window size is 1, the system saves only the largest sequence number. If the window size is set to a value greater than 1, the system saves the specified number of largest sequence numbers. For example, the window size is set to 10, and the largest sequence number of received RSVP messages is 80. The sequence numbers from 71 to 80 can be saved if there is no packet mis-sequencing. If packet mis-sequencing occurs, the local node sequences the messages and records the 10 largest sequence numbers.
For example, the window size is 10, and the window stores sequence numbers 71, 75, and 80. If the local RSVP node receives an RSVP message with sequence number 72, it adds the sequence number to the window and correctly processes the RSVP message. If the local RSVP node receives an RSVP message with sequence number 75, it directly discards the RSVP message. If the local RSVP node receives an RSVP message with sequence number 70, RSVP determines whether both ends are enabled with the handshake mechanism. The local and remote ends start the handshake process again only when they are both enabled with the handshake mechanism.
MD5 key
Each protocol is configured with a separate key and cannot share a key with another protocol.
An interface or a node is assigned only one key. To change the key, you must delete the original key and configure a new one.
Keychain key
Keychain is an enhanced encryption algorithm. It allows you to define a group of passwords to form a password string, and to specify encryption and decryption algorithms and a validity period for each password. When the system sends or receives a packet, the system selects a valid password. Within the validity period of the password, the system uses the encryption algorithm configured for the password to encrypt the packet before sending it out, or the system uses the decryption algorithm configured for the password to decrypt the packet after receiving it. In addition, the system uses a new password after the previous one expires, minimizing the risks of password cracking.
A keychain authentication password and the encryption and decryption algorithms must be configured. The password validity period can also be configured.
Keychain settings can be shared by protocols and managed uniformly.
Keychain can be used on an RSVP interface or node and supports only HMAC-MD5.
MD5 key cannot ensure key. You are advised to use Keychain key.
RSVP defines the following authentication modes:
Neighbor-oriented authentication
You can configure authentication information, such as authentication keys, based on different neighbor addresses. RSVP then authenticates each neighbor separately.
IP address of an interface on an RSVP neighboring node
LSR ID of an RSVP neighboring node
Interface-oriented authentication
Authentication is configured on interfaces, and RSVP authenticates messages based on inbound interfaces.
Neighbor-oriented authentication takes precedence over interface-oriented authentication. A node discards messages if neighbor-oriented authentication fails, and performs interface-oriented authentication only if neighbor-oriented authentication is not enabled.