广告
返回顶部
首页 > 资讯 > 服务器 >【SIP协议介绍】
  • 399
分享到

【SIP协议介绍】

网络网络协议服务器 2023-10-03 08:10:01 399人浏览 泡泡鱼
摘要

1. 概述 SIP(Session Initiation Protocol)中文名为初始会话协议,是一个在IP网络上进行多媒体通信的应用层控制协议,它被用来创建、修改、和终结一个或多个参加者参加的会话

1. 概述

SIP(Session Initiation Protocol)中文名为初始会话协议,是一个在IP网络上进行多媒体通信的应用层控制协议,它被用来创建、修改、和终结一个或多个参加者参加的会话进程。是一种通信协议,定义了如何在通信设备(计算机,电话,手机,PDA等)之间相互连接和信息交换。

SIP 是为Internet 制定设计的协议,像Http协议一样是基于文本UTF-8字符集;采用事务机制(请求/应答机制),每一个请求触发Server的操作方法,请求 和响应构成一个事务,事务间彼此独立;SIP协议承载在IP网,网络层协议为IP,传输层协议可用tcp或UDP,一般使用比较多的为UDP协议。
在这里插入图片描述
SIP协议在TCP/IP的位置

2. SIP协议基本概念

•事务(transations):一个SIP 事务由一个单个请求和这个请求的所有应答组成,这些应答包括了零个或者多个临时应答以及一个终结应答。如何标识一个事务?可以根据FROM 、TO 的tag 与 CALL-ID、 CSEQ的信息来确定一个事务。也可以根据VIA头域中的branch的值来确定一个事务。

•对话(dialog):对话是表现为两个用户代理(UA)之间的持续一段时间的点对点的SIP关系。一个对话中可以有多个事务,比如一个对话中可以有invite与bye事务。如何标识一个对话?一个对话由CALL-ID,本地tag与远程的tag来标识,保证点对点之间的对话是唯一的。

•会话(session):一个会话由INVITE建立的时候,每一个由不同UAS的1xx或者2xx的应答创建一个对话,并且当完成了会话描述的请求/应答(offer/answer)交互之后,它也就创建了一个会话。也就是说会话是端对端的概念。使用BYE请求结束一个会话。

3.SIP方法(method)

INVITE:用于发起一个新的会话

ACK:用于完成会话的建立

BYE:用于结束一个会话

CANCEL:用于取消一个请求(一般是针对INVITE)

OPTIONS:用于查询服务器的能力

REGISTER:用于发送注册请求消息

以上方法以外,还有其他扩展的方法,如INFO、NOTIFY等等.

4.SIP响应(respones)

响应消息的起始行为状态行(Status-Line),状态行由协议版本、状态码和状态原因短语组成,各个部分之间用一个空格字符进行分隔。

SIP协议中共定义了6类状态码,其中状态码的第1位数字用于指示响应类型,后两位数字表示具体响应。下面用“1xx”标识状态码为“100-199”之间的响应。

1xx:临时响应,表示请求消息正在被处理;

2xx:成功响应,表示请求已被成功接收,完全理解并被接受;

3xx:重定向响应,表示需采取进一步以完成该请求;

4xx:客户机错误,表示请求消息中包含语法错误信息或服务器无法完成客户机请求;

5xx:服务器错误,表示服务器无法完成合法请求;

6xx:全局故障,表示任何服务器无法完成该请求;

5.SIP头域(heads)

From头域包含了请求发起者的逻辑标志,可能是用户的address-of-record。就像To头域一样,From头域也包含一个URI并且可以包含一个显示的姓名(sip display info);

To头域是第一个并且也是最先指定请求的”逻辑”接收地( “第一”是因为可能会refer to到另外一个接受地 );

Call-ID是一个在一系列消息中,区分一组消息的唯一标志。在dialog的任一UA的所有请求和所有应答的Call-ID必须一致;

Cseq由顺序号码和一个方法(method)组成。方法(method)必须和请求的方法一致。用来区分和作为事务(Transaction)的顺序;

Via头域是标志了用于事务(Transaction)传输的传输设备,并且也标志了应答送回的地址。只有当需要通过选择传输设备到达下一个节点(hop)的时候,才需要在头域中包含Via域;

Contact头域提供了访问后续请求的特定UA实例的联系方法;

6. SIP基本流程

1 发起呼叫流程
在这里插入图片描述

2 结束呼叫流程
在这里插入图片描述
3 取消呼叫流程
在这里插入图片描述
4 一个完整的SIP会话流程
在这里插入图片描述
SIP协议在互联网VOIP系统中应用广泛,希望本文能给读者对SIP协议有基本的了解,下文介绍SIP协议的灵魂——路由机制。

来源地址:https://blog.csdn.net/qq_25137439/article/details/124579213

--结束END--

本文标题: 【SIP协议介绍】

本文链接: https://www.lsjlt.com/news/422935.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 【SIP协议介绍】
    1. 概述 SIP(Session Initiation Protocol)中文名为初始会话协议,是一个在IP网络上进行多媒体通信的应用层控制协议,它被用来创建、修改、和终结一个或多个参加者参加的会话...
    99+
    2023-10-03
    网络 网络协议 服务器
  • ZigBee协议栈介绍
    ZigBee协议栈是一种无线通信协议栈,主要用于低功耗、短距离的物联网(IoT)应用。它基于IEEE 802.15.4标准,提供了一...
    99+
    2023-09-20
    ZigBee
  • Swift协议Protocol介绍
    目录协议(Protocol)协议中的属性static、classmutatinginitinit、init、init!协议的继承协议组合CaseIterableCustomStrin...
    99+
    2022-11-13
  • HTTP协议详细介绍
    我们日常生活中经常会使用浏览器访问Web站点这个过程中到底发生了什么吗?为什么我们在浏览器地址栏上面输入要访问的URL后就可以访问到Web页面呢?这几乎是面试过程中的高频问题。 简单...
    99+
    2022-11-13
  • redis通信协议protocol介绍
    redis的ping pong登录redis cli客户端后, 输入ping, 服务器会返回pong, 来表示连接状况是完好的, 也表示了服务器大体上是正常运转的.其中的第一行是我用docker 启动的客户...
    99+
    2022-10-18
  • 文件传输协议介绍
    文件传输协议介绍文件传输协议是一种极为普遍的档案分享服务,让你可以将你的档案从储存装置传送到ASUSTOR NAS。ASUSTOR NAS 所支援的文件传输协议可分为:CIFS (网络文件共享系统)通常是指 SMB,SAMBA 或 Wind...
    99+
    2023-06-03
  • 安卓蓝牙GATT协议介绍
    前言 现在低功耗蓝牙(BLE)连接都是建立在 GATT (Generic Attribute Profile) 协议之上。GATT 是一个在蓝牙连接之上的发送和接收很短的数据段的通用规范,这些很短的数据段被称为属性(Attribute)。 ...
    99+
    2023-08-24
    android
  • modbus tcp协议介绍及分析
    一、modbus tcp协议介绍 Modbus TCP协议是基于TCP/IP网络的Modbus协议的一种变体。它将Modbus协议封装在TCP/IP协议栈中,使用以太网作为物理层,通过TCP连接来实现设备之间的通信。 Modbus TC...
    99+
    2023-09-20
    tcp/ip 网络 服务器 网络协议 运维
  • PHP伪协议基本原理介绍
    目录前言常见的php伪协议php://inputphp://filterzip://与bzip2://与zlib://协议data://phar://前言 引用一张比较清晰易懂的图 ...
    99+
    2022-11-16
    PHP伪协议 PHP伪协议原理
  • Android开发之音视频协议介绍
    目录什么是视频文件什么是264了解音视频协议有啥用?两大电信联盟ITU-TISOITU-T 视频编码发展历程H.26X系列(由ITU[国际电传视讯联盟]主导)其他音视频协议Googl...
    99+
    2022-11-13
  • SIP协议详解&eXosip源码库用法分析
    SIP(Session Initiation Protocol)是一个用于建立、修改和终止多媒体会话的协议。在互联网上,SIP被广泛...
    99+
    2023-09-13
    SIP
  • PHP phar:协议对象注入技术介绍
    前言在之前的BlackHat 2018大会上公布了一款针对PHP应用程序的全新攻击技术。我们将通过这篇文章简单介绍下。来自Secarma的安全研究员Sam Thomas发现了一种新的开发技术,它可以导致PHP对象注入漏洞——而无需使用PHP...
    99+
    2023-06-04
  • 软件开发架构介绍||OSI七层协议之物理
    一、网络编程  软件开发架构   C/S架构     C:客户端 想体验服务的时候才会去找服务端体验服务     S:服务端   24小时不间断的提供服务,即时监听,随时待命   B/S架构     B:浏览器    想体验服务的时候才会...
    99+
    2023-01-31
    架构 七层 物理
  • 基于隐私保护技术的DNS通信协议介绍
    本文提出了一种基于用户数据报协议的DNS传输中用户隐私保护的加密方法:DNSDEA。该方法采用PKI加密体系与DNS协议相融合,不仅解决了域名隐私保护问题,而且与传统DNS体系相兼容,保持了DNS系统的简单、高效的技术特点。域名系统(DNS...
    99+
    2023-06-04
  • C#操作串口通信协议Modbus的常用方法介绍
    一、读线圈状态 /// <summary> /// 读线圈状态测试 /// </summary> ...
    99+
    2022-11-13
  • windows 7系统中正确配置ipv6协议地址的方法介绍
        &nbs   事实上,与以前的那些操作系统相比,Windows 7操作系统已经在支持IPV6协议上做出了很好了;但是,仍然有一些瑕疵。   首先想到的一个问题是在Windo...
    99+
    2023-05-29
    windows 7 系统 正确配置 ipv6协议 协议 ipv6 地址 7系统 方法
  • 高级消息队列协议AMQP简介
    历史: Message Queue的需求由来已久,80年代最早在金融交易中,高盛等公司采用Teknekron公司的产品,当时的Message queuing软件叫做:the info...
    99+
    2022-11-13
  • Kotlin协程的启动方式介绍
    目录1.GlobalScope.launch2.runBlocking 启动协程3.async启动协程启动协程的基本方式 1.GlobalScope.launch 代码示例: fun...
    99+
    2022-11-13
  • 云服务器有哪几种协议类型的网络设备和功能介绍
    云服务器提供了许多不同类型的网络设备,以满足不同类型的网络需求。以下是云服务器的主要三种协议类型和它们的特点: HTTP/FTP 协议:这个协议提供了一种在互联网上访问其他服务器的方法。它使用了 TCP/IP 网络协议。这个协议是在 2...
    99+
    2023-10-27
    几种 网络设备 协议
  • 华为---PPP协议简介及示例配置
    PPP协议简介         PPP是Point-to-Point Protocol的简称,中文翻译为点到点协议。与以太网协议一样,PPP也是一个数据链路层协议。以太网协议定义了以太帧的格式,PPP协议也定义了自己的帧格式,这种格式的帧称...
    99+
    2023-10-24
    网络
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作