sip协议

折月煮酒 提交于 2019-12-26 14:23:17

INVITE sip:bob@biloxi.com SIP/2.0

Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds

Max-Forwards: 70

To: Bob <sip:bob@biloxi.com>

From: Alice <sip:alice@atlanta.com>;tag=1928301774

Call-ID: a84b4c76e66710@pc33.atlanta.com

CSeq: 314159 INVITE

Contact: <sip:alice@pc33.atlanta.com>

Content-Type: application/sdp

Content-Length: 142

(Alice’s SDP not shown)

atlanta.com . . . biloxi.com

.      proxy                           proxy           .

.                                                                   .

Alice’s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . Bob’s

softphone                                                                            SIP Phone

|                                  |                                  |                                  |

| INVITE F1                  |                                 |                                  |

|--------------->                 | INVITE F2                  |                                  |

| 100 Trying F3             |--------------->                 | INVITE F4                  |

|<---------------                 | 100 Trying F5             |--------------->                 |

|                                  |<--------------                  | 180 Ringing F6           |

|                                  | 180 Ringing F7           |<---------------                 |

| 180 Ringing F8           |<---------------                 | 200 OK F9                 |

|<---------------                 | 200 OK F10               |<---------------                 |

| 200 OK F11               |<---------------                 |                                  |

|<---------------                 |                                  |                                  |

|                                                ACK F12                                          |

|                                  ------------------------------------------------->            |

|                                         Media Session                                         |

|<================================================>    |

|                                                BYE F13                                          |

|                                  <-------------------------------------------------            |

|                                         200 OK F14                                             |

|                                  ------------------------------------------------->            |

|                                                                                                        |

图一:SIP矩形表达的SIP会话建立例子。

在文本消息的第一行,包含了请求的类型(INVITE)。在这行之后的是这个请求的头域。这个例子中包含了最少需要的头域集合。简单介绍一下:

VIA域包含了Alice接收发送请求的服务器地址(pc33.atlanta.com)。同样这个包含了一个分支参数来标志Alice和这个服务器的会话事务。

TO域包含了显示姓名(Bob)和一个SIP或者SIPS URI(sip:bob@biloxi.com)请求将首先传输到这个URI中。显示姓名(Display names)在RFC 2822中描述。

From域也同样包含一个显示姓名(Alice)和一个SIP或者SIPS URI(sip:alice@atlanta.com)这个URI用来标志请求的原始发起者。

这个域也包含了一个TAG参数,这个TAG参数是一个随鸡字串(1928301774),是软电话(softphone)在URI上增加的一个随鸡串。用来做标志用途的。

Call_ID包含一个全局的唯一标志,用来唯一标志这个呼叫,通过随机字串和softphone的自己名字或者IP抵制混和产生的。通过TO TAG, FROM TAG和CALL-ID完整定义了Alice和Bob之间的端到端的SIP关系,并且表示这个是一个对话性质的关系。

CSEQ或者Command Sequence包含了一个整数和一个请求名字。这个Cseq数字是顺序递增的。每当对话中发起一个新的请求都会引起这个数字的顺序递增。

Contact域包含一个SIP或者SIPS URI用来表示访问Alice的直接方式,通常由用户名和一个主机的全名(Fully Qualified Domain Name FQDN)组成。当FQDN作为首选的时候,许多终端用户由于不会由名字登记(而导致不能访问Alice的主机),所以IP地址是可选的。

VIA域告诉大家本请求发送到哪里并且应答到哪里,Contract域告诉大家将来的请求将发送到哪里(奇怪…不是Alice发起的么,将来的请求应该是Bob才对啊)。

Max-Forwards:最大转发数量限制了通讯中转发的数量。它是由一个整数组成,每转发一次,整数减一。

Content-type包含了消息正文的描述(消息正文在本范例中没有列出)

Content-length:包含消息正文的长度(字节数)

完整的SIP包头域的定义在20节。
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!