voip sip的最简单最标准的过程应该是这样
seq 1
src invite
dst ring
dst ok
src ack
....通话...
seq 2
src(dst) bye
dst(src) ok
....结束...
seq 1
双方的包 from , to 不变。
via ,dst增加自己的信息,如rport,用分号;分隔。
contact 始终是自己的sip完整地址。
call-id 始终是整个通话过程中的唯一值。它代表一个request从开始到结束。不管seq增加多少 。
seq 2
from , to 由seq变方重新生成,sip地址和tag都不变,只是To和From可能顺序换一下。 在seq下一次改变前,双方一致。
via 重新生成。里面的branch也重新生成。
sdp相关记录
v=0
o=IpPhone 2890844526 8000 IN IP4 192.168.84.121
s=IpPhone CALL
c=IN IP4 192.168.84.121
t=0 0
m=audio 10000 RTP/AVP 0 101
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=ptime:20
a=sendrecv
Origin
o=<username> <session id> <version> <network type> <address type> <address>
Connection Data
c=<network type> <address type> <connection address>
Media Announcements
m=<media> <port> <transport> <fmt list>
a=rtpmap:<payload type> <encoding name>/<clock rate>[/<encoding
parameters>]
rtpmap是fmt list 的详细解释
a=recvonly
This specifies that the tools should be started in receive-only
mode where applicable. It can be either a session or media
attribute, and is not dependent on charset.
a=sendrecv
This specifies that the tools should be started in send and
receive mode. This is necessary for interactive conferences with
tools such as wb which defaults to receive only mode. It can be
either a session or media attribute, and is not dependent on
charset.
a=sendonly
This specifies that the tools should be started in send-only
mode. An example may be where a different unicast address is to
be used for a traffic destination than for a traffic source. In
such a case, two media descriptions may be use, one sendonly and
one recvonly. It can be either a session or media attribute, but
would normally only be used as a media attribute, and is not
dependent on charset.
rtp 大小计算
根据ptime值,
比如ptime=20, media = pcma 表示 20ms发一个包,内容容量为160byte
计划方法
pcm a律为 8000hz 每次8bit,则秒秒发送包大小 8000(hz) * 8bit = 64kbps
64kbps/8 = 8k byte /s
因为ptime=20,即每次 1/20 * 8kbyte = 160byte(20ms)
分享到:
相关推荐
《3GPP对SIP的私有头(P-Header)扩展》 SIP(Session Initiation Protocol)是一种用于建立、修改和终止多媒体通信会话的协议,广泛应用于VoIP、视频会议等领域。3GPP(3rd Generation Partnership Project)为了...
标题 "C#基于SIP协议的一些实例" 描述了如何在C#编程环境中利用SIP(Session Initiation Protocol)协议实现通信功能。SIP是一种应用层控制协议,用于建立、修改和终止多媒体通信会话,如语音通话、视频会议等。这个...
6. **From/To Header**: 这些头信息在SIP消息中定义了呼叫的发起者和接收者。 7. **Request/Response**: SIP协议基于请求-响应模型,客户端发起请求(如INVITE),服务器回应(如200 OK或180 Ringing)。 8. **...
sip 协议题库,有关于sip的一些基本的基础知识,考试或者面试等专业
在IT行业中,SIP(Session Initiation Protocol)是一种用于控制多媒体通信会话(如语音和视频通话)的信令协议。这个"sip.rar"压缩包文件包含与C#和C++相关的SIP实现以及源码,是深入学习和理解SIP协议的好资源。...
- `gov.nist.javax.sip.header.*`:提供了各种SIP头部的实现。 - `gov.nist.javax.sip.message.*`:用于创建和处理SIP消息。 - `java.util.*`:包含了Java集合框架、实用工具类以及日期和时间模型。 #### 3. **...
### 基于JAIN SIP的SIP实现技术 #### 1. 引言 当前,在构建电话网络的过程中,存在两大主流信令体系:H.323与SIP(Session Initiation Protocol,会话启动协议)。H.323是由ITU-T(国际电信联盟电信标准化部门)...
SIP Inspector 是一个用来模拟不同的SIP消息和通讯情景的工具,可用来创建 SIP 信令、定制 SIP 消息以及兼容输入和输出的消息包,该工具还可以直接从 pcap 文件中播放 RTP 流。
以下是一些关键的Java SIP API组件: 1. **SIP Stack**:这是SIP协议的核心,负责处理网络传输、消息路由、事务管理和会话管理。在Java中,`SipFactory`用于创建`SipStack`对象,而`SipStack`则用于创建`Sip...
SIP.js是一个强大的JavaScript库,专门用于实现Session Initiation Protocol(SIP)的应用,它使得在Web浏览器中构建VoIP(Voice over Internet Protocol)应用程序变得简单。标题中的"SIP.js-master"可能指的是该...
- **基于文本**:与HTTP类似,SIP采用文本格式,这使得它更容易理解和实现。 - **信令协议**:SIP主要用于处理会话的发起、更改和终止,而具体的媒体流则通过其他协议(如RTP)来承载。 - **扩展性强**:除了基本的...
迷你SIP服务器(miniSipServer)是一款专为Windows操作系统设计的免费SIP服务器软件,主要功能是提供语音-over-IP(VoIP)服务。在本文中,我们将深入探讨SIP协议、miniSipServer的特点及其在实际应用中的重要性。 ...
标题"SIP Phone_sip_phone_"和描述"Manual fonte supplier"暗示了我们正在讨论与SIP(Session Initiation Protocol)电话相关的技术知识,特别是可能涉及一个SIP电话软件的源代码或开发文档。SIP是一种互联网协议,...
在IT行业中,SIP(Session Initiation Protocol)是一种用于控制多媒体通信会话(如语音和视频通话)的应用层协议。这个“SIP呼叫_linux_sip_”的主题涉及到使用C语言在Linux操作系统上实现SIP呼叫的功能。以下是...
《SIP揭密》由IETF最早的SIP发起人之一撰写,深入解释了当今人们谈论最多的关于SIP协议是什么以及起草它的标准的原因,评价了SIP究竟能够做什么以及传递什么,评估了SIP同其他标准和系统的兼容度,设计了新的支持SIP...
**JAIN-SIP简介** JAIN-SIP(Java API for Internet Multimedia Subsystems - Session Initiation Protocol)是Java平台上的一个开源API,它为开发者提供了一种处理和实现SIP(Session Initiation Protocol)协议的...
SIP(Session Initiation Protocol)协议是一种用于控制多媒体通信会话(如语音和视频通话)的信令协议。在IT领域,特别是在VoIP(Voice over Internet Protocol)行业中,SIP被广泛应用于创建、修改和终止多媒体...
**华为SIP协议详解** SIP(Session Initiation Protocol)是一种用于控制多媒体通信会话(如语音、视频通话)的信令协议。华为在通信领域广泛使用SIP协议,为网络设备提供高效的通信能力。本篇文章将深入探讨华为...