美文网首页
【opensips学习笔记】【一】sip flow在script

【opensips学习笔记】【一】sip flow在script

作者: 安安爸Chris | 来源:发表于2021-02-19 12:37 被阅读0次

    对应关系

    如图

    Mapping
    1. 所有进入opensips的信令,一般为INVITE,REGISTER, MESSAGE, OPTIONS 等,都是图示中1和2.这一部分称之为Request Route
    2. 当在Request Route中调用t_relay时,会触发Branch Route。 顾名思义,它是一个分支;Opensips在转发消息时,它可以同时发送多条腿,那么每一条腿就是一个Branch。
    3. 每一个Branch Route的回复消息,就是Reply Route。如图中的5,回复INVITE消息的180 Ringing;以及11,404 Not Found.
    4. 回复消息中所有异常消息(4xx-6xx),都时Failure Route
    5. 消息17,ACK发来的时候,dialog已经建立,此时的to header是有tag的。 它也是Request Route,但是是带有to tag的。所以会走到has_totag()分支逻辑中。

    stateless and stateful routing 有状态和无状态路由

    区别

    • stateful
      顾名思义,Opensips会在内存中记录routing中的request和对应的reply,同时会保持transaction过程中的变量信息。
      同时,会有如下能力:
      1. Retransmission detection(重复消息检测)
      2. Performing retransmissions(有效重发机制)
      3. Timeout(transaction timeout检测)
      4. Parallel and serial forking(并行/串行分发)
    • stateless
      Opensips不做任何记录,只做功能上的routing,也不会触发Branch Route, Reply Route, Failure Route

    stateless routing由Opensips的Stateless Module(SL)提供,而stateful routing由Transaction Module(TM)提供

    routing method

    相关文章

      网友评论

          本文标题:【opensips学习笔记】【一】sip flow在script

          本文链接:https://www.haomeiwen.com/subject/xctaxltx.html