sip协议INVITE分析-1003拨打1004 whaleswitch
实际抓包分析
INVITE 协议:
��)!�}ڌ4�E�t@1$���n*c���a����INVITE sip:1004@sip.z88j.com SIP/2.0
Via: SIP/2.0/UDP 10.211.55.3:55845;rport;branch=z9hG4bKPjab6315d5acbf49b2ba16830591db8b2d
Max-Forwards: 70
From: "1003" <sip:1003@sip.z88j.com>;tag=7afa334b873041219c800ce332bc1c77
To: <sip:1004@sip.z88j.com>
Contact: "1003" <sip:1003@10.211.55.3:55845;ob>
Call-ID: 24eaf45eec6d41e4a77955784304bbbc
CSeq: 27765 INVITE
Route: <sip:sip.z88j.com:25060;lr>
Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Supported: replaces, 100rel, timer, norefersub
Session-Expires: 1800
Min-SE: 90
User-Agent: MicroSIP/3.21.6
Content-Type: application/sdp
Content-Length: 336
v=0
o=- 3960974513 3960974513 IN IP4 10.211.55.3
s=pjmedia
b=AS:84
t=0 0
a=X-nat:0
m=audio 4000 RTP/AVP 8 0 101
c=IN IP4 10.211.55.3
b=TIAS:64000
a=rtcp:4001 IN IP4 10.211.55.3
a=sendrecv
a=rtpmap:8 PCMA/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ssrc:358429035 cname:4cec658f3c4c3498
1. INVITE sip: SIP/2.0
INVITE:SIP 方法类型,表示这是一个发起会话请求的消息。用于邀请目标加入会话。
sip::目标地址,表示呼叫的目的地是
sip:1004@sip.z88j.com。这是被叫方。SIP/2.0:SIP 协议版本 2.0,指明使用的 SIP 协议版本。
2. Via: SIP/2.0/UDP 10.211.55.3:55845;rport;branch=z9hG4bKPjab6315d5acbf49b2ba16830591db8b2d
SIP/2.0/UDP:该消息通过 SIP 协议版本 2.0 使用 UDP 传输。
10.211.55.3:55845:发起请求的 IP 地址和端口。
rport:请求响应时,返回的端口是由接收方填写的,这有助于确保响应能够到达正确的端口。
branch=z9hG4bKPjab6315d5acbf49b2ba16830591db8b2d:标识事务的唯一性,用于区分不同的请求事务。
3. Max-Forwards: 70
Max-Forwards:此字段用来防止消息在网络中无限循环。它指明消息最多可以跳转多少个代理服务器或中继设备,超过这个数值后消息会被丢弃。
4. From: "1003" sip:1003@sip.z88j.com ;tag=7afa334b873041219c800ce332bc1c77
**"1003" sip:1003@sip.z88j.com **:发起呼叫的用户
1003。tag=7afa334b873041219c800ce332bc1c77:
tag是区分同一发起者的标识。一个From地址可能会有多个请求,因此通过tag来区分不同的请求。
**5. To: sip:1004@sip.z88j.com **
sip::呼叫的目标地址(被叫方)为
sip:1004@sip.z88j.com。
**6. Contact: "1003" sip:1003@10.211.55.3:55845;ob **
**"1003" sip:1003@10.211.55.3:55845;ob **:发起呼叫者的联系地址,用于回复。
ob是呼叫外部的标志,表示这是一个外部呼叫。
7. Call-ID: 24eaf45eec6d41e4a77955784304bbbc
Call-ID:每一个 SIP 会话都有一个唯一的标识符(
Call-ID)。它确保后续的消息(如响应、ACK)能与此会话相关联。
8. CSeq: 27765 INVITE
CSeq:序列号,用于标识请求的顺序。
INVITE请求的序列号是27765,同一会话中的请求序列号会递增。
**9. Route: sip:sip.z88j.com:25060;lr **
Route:指定请求的路由地址。通过此地址,SIP 消息被路由到
sip.z88j.com:25060。lr表示这是松散路由(Loose Routing)。
10. Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, SUBSCRIBE, NOTIFY, REFER, MESSAGE, OPTIONS
Allow:该字段列出了支持的 SIP 方法。这些方法表示发起方愿意接受的 SIP 消息类型,如
INVITE(请求呼叫)、BYE(挂断)、UPDATE(更新会话)等。
11. Supported: replaces, 100rel, timer, norefersub
Supported:列出发起方支持的扩展功能,如:
replaces:支持呼叫替换(呼叫转移)。
100rel:支持可靠的临时响应。
timer:支持会话定时器。
norefersub:表示不订阅 refer(引用)消息。
12. Session-Expires: 1800
Session-Expires:会话的过期时间,单位为秒。在此为 1800 秒(30 分钟)。如果会话在此时间内未更新,则会话会被终止。
13. Min-SE: 90
Min-SE:会话最小刷新时间,指定最小的会话过期时间,在此为 90 秒。
14. User-Agent: MicroSIP/3.21.6
User-Agent:发起请求的 SIP 客户端软件,表示为
MicroSIP/3.21.6。
15. Content-Type: application/sdp
Content-Type:表示消息体的格式是 SDP(Session Description Protocol),用于描述媒体会话的详细信息。
16. Content-Length: 336
Content-Length:消息体的长度,单位为字节。此消息体包含 336 字节数据。
SDP (Session Description Protocol) 部分:
该部分详细描述了媒体会话的信息,包括音频流的参数:
v=0:协议版本,
0表示 SDP 协议的版本。o=- 3960974513 3960974513 IN IP4 10.211.55.3:会话标识符,
3960974513是会话的唯一标识,10.211.55.3是发起者的 IP 地址。s=pjmedia:会话的名称,这里为
pjmedia,通常是媒体会话的名称。b=AS:84:带宽限制,表示音频流的带宽为 84 kbps。
t=0 0:会话的起始和结束时间,这里表示会话是永久的(
0 0)。a=X-nat:0:关于 NAT(网络地址转换)的设置。
m=audio 4000 RTP/AVP 8 0 101:媒体类型为音频,使用端口
4000,RTP 协议,支持的编码格式是PCMA(编码类型 8),PCMU(编码类型 0),telephone-event(编码类型 101)。c=IN IP4 10.211.55.3:媒体的发送地址,指向
10.211.55.3。b=TIAS:64000:目标信息传输速率(TIAS),即目标带宽为 64000 bps。
a=rtcp:4001 IN IP4 10.211.55.3:RTCP(RTP 控制协议)的端口为
4001。a=sendrecv:表示该媒体流既可以发送也可以接收数据。
a=rtpmap:8 PCMA/8000:编码类型
8是PCMA,采样率为 8000 Hz。a=rtpmap:0 PCMU/8000:编码类型
0是PCMU,采样率为 8000 Hz。a=rtpmap:101 telephone-event/8000:编码类型
101是telephone-event,用于信号事件,采样率为 8000 Hz。a=fmtp:101 0-16:
telephone-event编码的有效载荷类型(0-16 表示可以使用的事件范围)。a=ssrc:358429035 cname:4cec658f3c4c3498:
ssrc是同步源标识符,cname是通话的唯一标识符,确保该媒体流的唯一性。


评论