先来说明一下,什么是我理解的协议,所谓协议是一种解决双方理解不一致的方法。河南话,四川话,广东话,各自有各自的发音,互相之间理解会有障碍,那么普通话就是一种协议,解决了方言之间的理解难度。

SIP协议是什么?session initiation protocol ,会话初始化协议,sip协议不仅仅是用在了freeswitch,任何有会话管理的服务,均可以借鉴和使用SIP协议。

我们用非正式语言介绍一下sip协议的理解:

生活中,我们想要找一个人互相聊天,首先你到找到这个人、你的声音得传递到对方,对方能听到你的声音, 同时还得要去理解您的话语(同一个方言、同一个语种),帮你定位到对象的是sip,你们两个协商使用英语 沟通、还是汉语,使用电话设备、还是电脑web的是sdp, 最终说话的传递及传输介质是rtc。  sip协议做的是,能够让你定位到你想聊天的对象, 帮你检测你聊天对象是否可达, 帮你管理你们通话的会话 状态,帮你结束你们的聊天进程等。

举个例子:

你想谈一场跨国恋爱,你在中国,你的心仪对象在日本(OVER,阵亡)。

假设你知道你心仪对象的住址门牌号(有戏),然后你发现你找不到,也过不去(OVER,阵亡)

假设你知道你心仪对象的住址门牌号,然后你也借助了国际力量,分机飞往了日本,然后你发现,对象人家家里设置了门禁系统,(OVER,阵亡)

假设你知道你心仪对象的住址门牌号,然后你也借助了国际力量,分机飞往了日本,然后你发现,然后你有了安全密码,门打开了,你发现你不会日语(OVER,阵亡)

那么如何才能顺利的,和心仪的对象进行沟通交流,你需要知道对方的地址(通信唯一值),你需要获得对方是否在线状态,你需要有对方接受你信号的权限,你还需要拥有和对方理解一致的语言。

SIP协议中,每一个通信对象,首先得拥有一个类似邮件地址的协议ip,如果你心仪的对象就在你了解的范围内,你们两个可以直接通过sip直连,如果你的对象是不在你的接触范围内,你需要邮政公司、外交部机构等类似场景,告知你如何找到她。找到之后,你们得约定同一种沟通语言,然后你们才可以愉快的沟通交流。

我们借助sngrep,来抓包sip协议,来解释,上述流程sip协议概念

其中左边的 183.**.47:32979 就是一端的sip地址,另一端是172.**91:9060,sip协议地址规范写法如下:sip:你的号码@ip:port ,如, sip:15195751904@192.168.188.232:9060

sip类似http协议为文本协议,通用一个空行,来区分session管理和rtp。

一个完整版本的sip协议流程如下:

INVITE:表示邀请

From表示sip来源地址信息,因为我们使用freeswitch gateway方式外呼,同时配置网关为register false,默认为Freeswitch@ip:port

To 表示请求的地址方。

Contact 对方可以根据此进行回访。

1XX表示临时状态,一般可以用于振铃。 180,183用于SDP协商。

200表示成功响应,ACK进行确认,BYE表示挂断方,200表示成功响应

SIP类似于HTTP,也有状态码

.1XX 表示临时响应,比如180,183等,

. 2xx 表示成功响应

. 3XX 表示重定向

. 4XX表示客户端错误

. 5XX 表示服务器错误

. 6XX表示全局错误

什么是SIP协议,和Freeswitch什么关系相关推荐

  1. freeswitch系列四 通过实例学习sip协议的注册、呼叫、挂断流程

    1. 概述 本文通过tcpdump对真实环境里的软电话的注册.呼叫.挂断流程进行抓包,通过真实的例子学习SIP协议.本文主要包括以下方面: A. 详解软电话的注册时的SIP包和流程图 B. 详解软电话 ...

  2. 基于SIP协议的视频通讯

    1.sip协议及其发展 sip(session initiation protocal)称为会话发起协议,是由ietf(internet engineering task force)组织于1999年 ...

  3. SIP协议详解(中文)-6

    由于MIME包体是在"inner"消息中的,实现中通常会加密MIME指定的头域,包括:MIME-Version,Content-Type,Content-Length, Conte ...

  4. SIP协议简介(一)之SIP基本的概述

    本篇文章主要是对RFC3261翻译进行的,也包含着自己的一些理解.希望能给需要的人带来一些帮助 补充说明:RFC即Request For Comments(RFC),是一系列以编号排定的文件.文件收集 ...

  5. sip协议呼叫流程详解

    1.SIP业务基本知识 1.1 业务介绍 会话初始协议(Session Initiation Protocol)是一种信令协议,用于初始.管理和终止网络中的语音和视频会话,具体地说就是用来生成.修改和 ...

  6. SIP 协议的系统构架

    SIP协议是一种分层的协议,换句话说,SIP的应用实现,可以划分为一组不同的,相互独立的处理阶段,每个阶段间只有一些松散的耦合关系.如上图所示,从架构上划分,我们一般可以抽象出四个层:语法/编码层.T ...

  7. 国标28181:什么是SIP协议

    前言 对讲设备作为一种专业无线通信工具,能进行一对一,多对多的群组即时通信,在应急调度和突发事故处理中是其他通信工具所不能替代的,在城市治理.公安.运输等行业有广泛的应用. 对讲机按照通信方式分模拟对 ...

  8. SIP协议详解(中文)-1

    原文 1.SIP协议介绍 Internet的许多应用都需要建立和管理一个会话,会话在这里的含义是在参与者之间的数据的交换.由于考虑到参与者的实际情况,这些应用的实现往往是很复杂的:参与者可能是在代理间 ...

  9. VoIP通话之SIP协议

    一.前言 作为一名VoIP产品职业开发者,SIP可以说是我工作中接触最多的一种协议,是时候好好总结一下了. 二.概要 SIP(Session Initiation Protocol)属于应用层的控制协 ...

  10. SIP协议详解(中文)-3

    7.3.2 头域分类. 有一些头域是仅仅在请求(或者应答)中有效的.这些头域叫做请求头域或者应答头域.如果消息中的头域与这个消息的类型不匹配(比如在应答消息中出现的请求头域),这个头域必须被忽略.20 ...

最新文章

  1. mysql生产环境加索引_MySQl开发和生产环境索引对比
  2. 《IBM-PC汇编语言程序设计》(第2版)【沈美明 温冬婵】——第十章——自编解析与答案
  3. Redis快的原因:内存操作 单线程没有切换开销 多路复用IO
  4. Think in Java第四版 读书笔记9第15章 泛型
  5. CSS text-decoration 属性
  6. 重磅!百度飞桨开源语音基础模型库|中英文语音识别、语音翻译、语音合成、声音分类通通一行代码轻松搞定...
  7. Win 下面配置 memcache
  8. 资管运营BAND原创 | 他山之石:境外基金业绩报酬计算方法(二)
  9. oracle临时表空间占用率过高,ORACLE临时表空间太大,如何处理?
  10. epic怎么添加本地游戏_节奏大师怎么玩自制歌曲?节奏大师添加本地歌曲方法_APP教程...
  11. AI产业链的划分,主要可分为基础层、技术层和应用层
  12. Deepin20安装和配置NVIDIA显卡驱动
  13. unity Font字体替换
  14. SpringBoot集成JWT实现Token登录验证
  15. 从零开始实现放置游戏(十一)——实现战斗挂机(2)注册登陆和游戏主界面
  16. 布隆过滤器:一种低空间成本的判断元素是否存在的方式
  17. Soft(er)-NMS:非极大值抑制算法的两个改进算法
  18. 如何去除PDF的水印?【9种方法总结】
  19. 服务器是虚拟机好还是单机好,比较VMware和VirtualBox虚拟机的优缺点
  20. mythtype加载出错

热门文章

  1. java 打印收据_使用Java打印到收据打印机时修复文本拉伸
  2. 我就是为了小米刷机工具写的
  3. Cadence学习之路:寻找优秀的封装资源以及3D封装设置
  4. iOS gzip解压
  5. 【机器人学】正运动学详解
  6. 如何修改开机背光亮度
  7. Spring事务传播机制
  8. 计算机学院 统计学博士点,统计学 国家重点学科/博士点/硕士点
  9. 未来城市插画mac动态桌面壁纸
  10. 点扩散函数3D曲面绘图方法