首页 > 编程知识 正文

思铂睿(java voip 的sip服务器搭建_SIP协议)

时间:2023-05-05 11:06:42 阅读:123688 作者:2980

此示例是基本的SIP四边传输,U1-P1-P2-U2,使用代理进行传输。 接下来是过程。

U1发送:

invites IP : callee @ domain.comsip/2.0

contact : sip : caller @ u1.example.com

发送到P1,P1的是目的地的代理。 因为P1不管辖domain.com,所以我会找到DNS并将请求发送到那里。 Record-Route标头字段的值也被添加。

invites IP : callee @ domain.comsip/2.0

contact : sip : caller @ u1.example.com

记录路由:

P2我收到了这个请求。 因为这是domain.com,所以找到位置服务器并重写Request-URI。 Record-Route标头字段的值也被添加。 由于请求没有Route头域,因此请分析新的Request-URI以确定将请求发送到何处。

invites IP : callee @ U2.domain.comsip/2.0

contact : sip : caller @ u1.example.com

记录路由:

记录路由:

u2.domain.com上的被叫方接收该请求并返回200OK响应:

SIP/2.0 200 OK

contact : sip : callee @ U2.domain.com

记录路由:

记录路由:

作为u2的调用方并设置对话状态的远程目标uri如下:

sip: caller@u1.example.com及其路由集合如下:

()、) )。

它从P2通过P1传输到U1。 当前,U1设置其交互状态的远程目标uri是sip:calle@u2.domain.com,其根集合如下:

()、) )。

U1将创建最后一个BYE请求,因为所有路由元素都包含lr参数。

bye sip : callee @ U2.domain.comsip/2.0

:号公路,

使用DNS分析顶级Route标头字段的URI值,以确定将此请求发送到何处,以便所有其他节点(包括proxy )执行。 这个送到了P1。 由于发现用P1请求uri标记的uri不是负责的域,因此不更改此请求uri。 然后,它发现它是Route头域的第一个值,并将其从Route头域中删除,然后将此请求转发到P2。

bye sip : callee @ U2.domain.comsip/2.0

路由:

P2还发现自己不是负责此Request-URI的域(P2负责的是domain.com而不是u2.domain.com),而P2不会改变它。 它自己看到Route的第一个值,将其删除,传输到u2.domain.com (根据在Request-URI中搜索DNS )。

bye sip : callee @ U2.domain.comsip/2.0

1.3.3改写记录路径头字段的值

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。