SIP 中会话、对话和事务之间的区别?

2024-01-02

会话、对话和事务之间到底有什么区别?

所有人都必须一起出现吗?


交易

事务由请求、收到的任何非最终 (1xx) 响应和最终响应(2xx、3xx、4xx、5xx 或 6xx)以及响应的确认(ACK 或 PRACK)组成,但以下内容除外:对 2xx 响应的 ACK。例如:

SIP peer A sends an INVITE Request to SIP peer B
SIP peer B returns a Response of 100 TRYING; this is a non-final Response, so the transaction is not completed yet
SIP peer B returns 200 OK (a final response), accepting the invitation; this completes the transaction

基本上,一个完整的请求-响应。

Dialogs

对话只是两个 SIP 对等点之间的一系列事务。对话框的目的是设置、可能修改然后拆除会话。由此得名会话发起协议。由于两个 SIP 对等方之间随时可能有许多对话正在进行(例如,两个 SIP 服务器之间可能有许多同时进行的呼叫),因此对话由标头中的 From、To 和 Call-ID 字段标识。因此,如果 SIP 对等方 A 同时收到两个 BYE 请求,它可以查看这些字段以确定它们属于哪个对话。
您可能在对话框中看到的一组典型事务可能包括:

SIP peer A invites SIP peer B to a session and suggests a certain codec, but does not include authentication and so is rejected
SIP peer A again invites SIP peer B to a session, this time supplying authentication, and the invitation is accepted
SIP peer B sends an invitation to change the codec used, and it is accepted
SIP peer A ends the session

Sessions

会话只是在对等点之间流动的媒体流(例如音频或视频),通常由 RTP(也可能是 RTCP)数据包组成。例如,如果使用 SIP 进行语音呼叫,则会话是端点之间发送的语音数据

要回答这个问题,您是否需要将这三者结合在一起,您需要事务和对话才能创建会话,而会话是协议的全部要点

这是一个线程的链接 http://sipforum.org/pipermail/discussion/2007-August/003046.html包含对话和事务的示例

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SIP 中会话、对话和事务之间的区别? 的相关文章

  • Roslyn,通过 hostObject 传递值

    我正在尝试通过 hostObject 发送一个类 但显然它不想工作 using Roslyn Compilers using Roslyn Compilers CSharp using Roslyn Scripting using Rosl
  • Paypal PDT交易ID有效期

    当我尝试使用交易 ID 检索付款信息时 我从 paypal PDT 收到错误 4003 虽然我这里有一个类似的线程 贝宝 PDT 错误 4003 https stackoverflow com questions 8521800 paypa
  • 在 Spring 中使用事务时创建提交后

    由于某些原因 我使用 Spring PlatformTransactionManager 手动执行事务提交和回滚 我需要做的是设置一个钩子 以便在提交事务后发生提交后操作 通过查看 void commit TransactionStatus
  • 使用 python3 和请求登录 Twitter

    我正在开发一个项目 要求使用用户名和密码登录网站 我必须在 python 中执行此操作 然后才能访问只有登录人员才能访问的网站部分 我尝试了几种编码变体来执行此操作 但无法成功登录然而 这是我的编码 登录它的功能 def 会话2 url r
  • Java 事务 API (JTA) 概述帮助

    有人可以给我一个关于 JTA 在现代 Java 应用程序中的动机和应用的很好的解释吗 我不需要过多的技术细节 但只是一段关于为什么我们需要 JTA JTA 能完成什么 也许还有一段伪代码显示如何使用 JTA 通常 应用程序对数据库 JMS
  • 如何查看任意 Oracle 会话正在使用的事务隔离级别

    我试图找出特定会话 不是我自己的会话 在 Oracle 服务器上的隔离级别 有 v 视图可以得到这个吗 您可以在中测试位 28flag列于v transaction 1 http forums oracle com forums threa
  • Firebase 中的每用户会话分布表

    这是第二篇文章 我的后续文章第一篇文章 https stackoverflow com questions 48670590 session duration distribution table in firebase 查看 Fireba
  • Windows 窗体中的提示对话框

    我在用System Windows Forms但奇怪的是没有能力创造它们 如何在没有 javascript 的情况下获得类似 javascript 提示对话框的内容 MessageBox 很好 但是用户无法输入内容 我希望用户输入任何可能的
  • 使用sipp播放音频文件

    所以使用类似的语法 sipp sn uac SERVER IP s DESTINATION NUMBER ap AUTH PASSWORD aa m 1 l 1 d 10000 我能够发起 sip 呼叫 我想要实现的是 被叫方接听电话后 播
  • Firebase 3.0 会话持久性

    在 firebase 3 0 中使用会话持久性似乎是不可能的 这在以前的版本中是可能的 https www firebase com docs web guide login password html https www firebase
  • 登录后,Codeigniter 会话数据在其他页面不可用

    因此 我设置了一个登录页面来验证用户的凭据 然后设置 codeigniter 会话数据 email 和 is logged in 以及其他一些项目 登录后第一页 数据即可访问 在该页面之后 我无法再访问会话数据 事实上 如果我尝试重新加载第
  • 如何在 Jersey RESTful Web 服务中放置 cookie?

    我想通过 Jersey API 将 cookie 从 PUT webservice result 放置到 POST webservice 这是我的代码 WebResource service1 client resource http te
  • Qt:关闭模式对话框关闭程序

    在我的 Qt 程序中 我有 2 个窗口 主窗口和子窗口 在程序中 一次仅显示这些窗口之一 主窗口有一个插槽 用于创建模式对话框 现在 假设子窗口中单击按钮的信号被发送到该插槽 在这种情况下 主窗口隐藏 子窗口可见 对话框显示得很好 但是当对
  • 当 JMS Prod 位于辅助 POJO 类中时,如何在事务中包含 JMS Producer

    简短的问题 有没有办法强制无状态 EJB 调用的 POJO 存在于 EJB 的上下文中 以便事务和资源注入可以在 POJO 中工作 具体来说 在我想要做的事情的上下文中 如何在 EJB 的事务中包含 POJO JMS 生产者 该生产者在调用
  • 如何配置Spring使JPA(Hibernate)和JDBC(JdbcTemplate或MyBatis)共享同一个事务

    我有一个数据源 我使用 Spring 3 0 3 Hibernate 3 5 1 作为 JPA 提供程序 我使用 MyBatis 3 0 2 进行一些查询 我的应用程序在 Tomcat 6 上运行 我有一个 HibernateDAO 和一个
  • SESSION 中存储的数组后面出现数字

    我正在对存储在会话变量上的数组执行 print r 由于某种未知的原因 它在数组打印后添加了一个数字 Example Array 0 gt 868 userid gt 868 1 如果我直接在函数本身中执行 print r 并且在变量存储在
  • Session_set_save_handler 未设置

    我在设置 session set save handler 时遇到问题 我将 php ini 配置为 session handler user 这个简单的测试失败了 Define custom session handler if sess
  • 拥有可重用对话框的最佳方法是什么?

    在 Android 中创建可重用对话框的最佳方法是什么 阅读通过对话框开发指南 http developer android com guide topics ui dialogs html 我知道我可以使用AlertDialog Buil
  • ASP.Net 使用状态服务器和缓存增加 MaxProcesses(网络花园)

    我在 IIS7 上有一个 ASP Net 网站 我计划增加 MaxProcesses 以匹配服务器上的核心数量 4 核心 64 位 Windows Server 2008 根据我的阅读 如果我增加 MaxProcesses 来创建一个网络花
  • Sails.js + Postgres:交易问题

    我试图使用 Postgres 作为数据库在 Sails 0 10 5 中实现事务 但操作最终没有提交 或回滚 这是我作为测试写下的一个简单的事务场景 使用 async js testTransaction function uri var

随机推荐