SIP Using SDP with Offer/Answer Model
根据RFC3261-13.2.1所述,SIP使用的Offer/Answer模型是建立在对话环境下的。RFC中还特意对Offer/Answer交互有限制:
1. 初始Offer必须在INVITE消息或者第一个可靠的非失败型响应中。注:当时RFC3261中可靠效应只有2**,接下来将讲到1**(除100外)也可为可靠性效应。
2. 如果初始Offer在INVITE消息中,Answer必须出现在一个可靠的非失败型响应中。可能在1**中就带有Answer(但该Answer必须与之后的2**中的一致),UAC将忽略同一事务之后出现的回应中的Answer。
3. 如果初始Offer出现在第一个可靠的非失败型响应中,Answer必须出现在对该响应的确认消息中(ACK)。
4. 如果已经发送或接受对于第一个Offer的Answer,UAC可以继续发送新的Offer;相反的,如果没有确认对前一个Offer的Answer,不能发送新的Offer。
5. 如果已经发送或接受对于初始Offer的Answer,UAS禁止在之后同一个事务的响应消息中带上新的Offer。
根据RFC3262-5所述,对于Offer/Anwer模型引入了新的扩展。