Offer/answer restriction in the RFC3262
Rule 1: If an INVITE message contains an offer, the UAS must provide an answer in the reliable response that is not failed to be sent. The session is established before the call is complete. The answer can be contained in the 1xx message because the RFC3262 provides the Prack method to ensure that the 1xx message is reliable.
Analysis:
The reliable response is extended that the 1xx is allowed to be a reliable response. (In the RFC3261, the 2xx and 3xx messages are reliable responses, but the 1xx message is not reliable.) Then a reliable 1xx message can have the same offer/answer model as that in the reliable response. For details, see rule 1 in the RFC3261.
Rule 2: If the UAC receives the offer in the 1xx message, the Prack method must contain the answer. If the UAC receives the answer in the 1xx message, the Prack needs to carry a new offer. If the UAS receives the offer in the Prack, the 2xx message needs to carry the answer.
Analysis:
If a 1xx message, as a reliable message, provides an offer, the Prack must provide the answer. (The Prack must carry the SDP.) If the 1xx message provides an answer, the message can choose not to provide a new offer. (The Prack can choose not to carry the SDP.) If the Prack provides the offer, the corresponding response (200 OK) needs to provide the answer. (The 200 response of the Prack must carry the SDP.)
Example:

Rule 3: If the offer and answer interaction is complete, a session can be established before the INVITE transaction is complete.
Analysis:
When the interaction between the offer and answer is complete, the ACK message without an INVITE message ends the transaction, and the session can be established. That is, before the ACK is sent, media negotiation is complete, and the media channel is connected. (In fact, the RFC3262 expands the 1xx messages as reliable responses to reach the objective, that is, the early media.)

Rule 4: If the 1xx message contains the offer, the UAS cannot send a 2xx message before receiving the confirmation of the 1xx message.
Analysis:
Restriction: If the 1xx message carries an offer, the UAS cannot send a 200 message before the response of the 18x message. That is, the UAS cannot send a 200 message to end the transaction.
