RRC messages may be extended in future versions of the standard, either by adding values for choices, enumerated types, and size constrained types, or by adding information elements. Two kinds of protocol extensions are defined:
• Non-critical extensions – New values for choices, enumerated types, and size constrained types may be added where “reserved” values have been allocated in the current protocol version. New information elements may be added to the end of a message. If a message includes non-critical extensions not supported by the receiver, the receiver processes the message as if the extensions were absent.
• Critical Extensions – For all critical extensions, a new version of the message is defined and indicated at the beginning of the message. These messages may be modified completely, e.g., IEs may be inserted at any place, and IEs may be removed or redefined. If a message includes critical extensions, which are not supported by the receiver, the receiver rejects the entire message.