记录几个关键的地方,经常容易忘掉。
1。rport :VIA头域的一个字段,一种解决nat穿透方案,sip扩展。
2。虽然ack属于Invite的一个确认响应,但ACK与invite不属于一个 transaction。属于一个会话。
3。 sip 中的事务 branch IDs 都由固定字符串z9hG4bK开始
4。call-id ,实际上call-id唯一标识一路通话,但是在某些sip proxy 里同一个会话可能同时发出(proxy forking),所以又添加了
from-tag, 及to-tag ,用来唯一标识一路通话。
5. 100 trying 临时响应 不是 被叫返回给服务器,服务器转发给 主叫,而是 服务器 接到请求后还没有真正请求被叫时发给主叫的一个
临时响应。
6。
<--- Transmitting (no NAT) to 10.10.10.84:9060 --->
SIP/2.0 100 Trying
Via: SIP/2.0/UDP 10.10.10.84:9060;branch=z9hG4bK-d87543-93246c4e512dc949-1--d87543-;received=10.10.10.84;rport=9060
From: "1501159973"<sip:1501159973@10.10.10.182>;tag=7953ac38<

本文详细介绍了SIP消息的关键点,包括rport在VIA头域中的作用,ACK与INVITE的交易独立性,SIP事务的branch ID,以及100 Trying响应的发送时机。此外,还讲解了如何通过received和rport解决NAT问题,183 Session Progress响应在彩铃中的应用,以及SDP协商过程。

480

被折叠的 条评论
为什么被折叠?



