作者的碎碎念: 你以为打视频电话只是点个按钮那么简单?Too young too simple!背后可是有个超级英雄在默默工作——它就是SIP协议!今天,就让我带你揭开这位"通信界扛把子"的神秘面纱!🎪
📖 目录
- 什么是SIP?——先认识这位"老朋友"
- SIP的工作原理——比追女神还复杂的流程
- SIP的组成部分——认识这些"幕后工作者"
- SIP消息类型——它们的"语言体系"
- 实际应用场景——原来你无处不在
- 手把手教你用SIP——实战演练
- 常见问题解答——你关心的都在这里
🎬 第一章:什么是SIP?——先认识这位"老朋友"
1.1 SIP的全称与定义
SIP = Session Initiation Protocol(会话发起协议)
听起来很高大上?别怕!让我用人话翻译一下:
📞 SIP就是互联网上的"电话接线员"!
在古代(好吧,其实就是几十年前),打电话需要真人接线员帮你接线。现在,SIP就是那个数字化的"超级接线员",帮你在互联网上建立、管理和结束各种通话!
1.2 一个生活化的比喻
想象一下,你要在学校食堂找你的朋友吃饭:
你的任务:找到朋友 → 一起吃饭 → 吃完说再见
传统方式:
1. 😰 在人山人海的食堂里瞎找
2. 😫 大喊"小明!小明!"
3. 😓 终于找到了,累死...
有了SIP:
1. 📱 发个消息:"在哪儿?"
2. 🎯 朋友回复:"三楼靠窗"
3. 😎 精准定位,轻松会合!
SIP就是那个帮你快速定位、建立联系的"神器"!
1.3 SIP的历史小八卦 🕰️
- 1996年:SIP诞生于IETF(互联网工程任务组)
- 1999年:发布RFC 2543标准
- 2002年:发布RFC 3261(现行标准)
- 现在:每天有数亿人在用,而你可能还不知道!😂
🎯 第二章:SIP的工作原理——比追女神还复杂的流程
2.1 完整通话流程图解 📊
让我们用追女神的场景来理解SIP的工作流程:
┌─────────────┐ ┌─────────────┐
│ 你 (Alice) │ │ 女神 (Bob) │
│ 😊 │ │ 💁♀️ │
└──────┬──────┘ └──────┬──────┘
│ │
│ ① INVITE (约吗?我请你看电影!) │
│─────────────────────────────────────────────────>│
│ │
│ ② 100 Trying (消息收到了,等等...) │
│<─────────────────────────────────────────────────│
│ │
│ ③ 180 Ringing (让我想想...考虑中...) │
│<─────────────────────────────────────────────────│
│ │
│ ④ 200 OK (好啊!我同意!❤️) │
│<─────────────────────────────────────────────────│
│ │
│ ⑤ ACK (太好了!那就这么定了!) │
│─────────────────────────────────────────────────>│
│ │
│ ⑥ RTP 媒体流 (开始愉快地聊天 💕💕💕) │
│<═════════════════════════════════════════════════>│
│ │
│ ⑦ BYE (时间不早了,回见!) │
│─────────────────────────────────────────────────>│
│ │
│ ⑧ 200 OK (好的,拜拜!) │
│<─────────────────────────────────────────────────│
│ │
2.2 详细步骤拆解 🔍
第一步:INVITE(发起邀请)
你: "嘿,在吗?咱们视频聊聊呗?"
技术语言: INVITE sip:bob@example.com SIP/2.0
生活例子: 就像你在微信上发起视频通话请求!
第二步:100 Trying(处理中)
系统: "消息已送达,对方正在处理中..."
技术语言: SIP/2.0 100 Trying
生活例子: 外卖小哥说"订单已接收,正在准备中"
第三步:180 Ringing(振铃中)
对方手机: "嘟...嘟...嘟..." 📳
技术语言: SIP/2.0 180 Ringing
生活例子: 打电话时听到的"嘟嘟"声
第四步:200 OK(接受通话)
对方: "喂?你好!"
技术语言: SIP/2.0 200 OK
生活例子: 对方接听了电话!🎉
第五步:ACK(确认建立)
你: "太好了,听得到我说话吗?"
技术语言: ACK sip:bob@example.com SIP/2.0
生活例子: 确认双方都在线,可以开始聊天了!
第六步:RTP媒体流(正式通话)
你们: "哈哈哈...最近怎么样...巴拉巴拉..." 💬
技术语言: RTP/RTCP 数据包传输
生活例子: 开始愉快地聊天!(这部分不是SIP负责,而是RTP协议)
第七步:BYE(挂断请求)
你: "好了,先这样,改天再聊!"
技术语言: BYE sip:bob@example.com SIP/2.0
生活例子: 说拜拜,挂电话!
第八步:200 OK(确认挂断)
对方: "好的,拜拜!"
技术语言: SIP/2.0 200 OK
生活例子: 双方都挂断了电话,通话结束!
2.3 核心三件套:INVITE、ACK、BYE 🎯
记住这个口诀:
┌──────────────────────────────────┐
│ INVITE → 我要找你! │
│ ACK → 好的,连上了! │
│ BYE → 拜拜,我挂了! │
└──────────────────────────────────┘
就像:
- 🚪 INVITE = 敲门("有人在吗?")
- 👋 ACK = 握手("你好你好!")
- 🚶 BYE = 挥手再见("拜拜咯!")
🎪 第三章:SIP的组成部分——认识这些"幕后工作者"
3.1 用户代理(User Agent, UA)
角色定位: 你和你朋友的手机/电脑
┌─────────────────────┐
│ 用户代理 (UA) │
│ │
│ ┌───────────────┐ │
│ │ UAC (客户端) │ │ → 发起请求的一方(打电话的人)
│ │ 😊 → 📞 │ │
│ └───────────────┘ │
│ │
│ ┌───────────────┐ │
│ │ UAS (服务端) │ │ → 接收请求的一方(接电话的人)
│ │ 📞 ← 😊 │ │
│ └───────────────┘ │
└─────────────────────┘
生活例子:
- UAC(客户端):你拿着手机拨号 📱
- UAS(服务端):朋友的手机响铃 🔔
3.2 代理服务器(Proxy Server)
角色定位: 中间人、快递员、邮递员
你 代理服务器 朋友
😊 ──────────> 🏢 ──────────> 💁♀️
"帮我送给她" "送到啦!"
职责:
- 📮 接收请求
- 🔍 查找目标地址
- 📤 转发请求
- 📥 转发响应
生活例子: 就像快递小哥,你把包裹给他,他帮你送到朋友家!
3.3 注册服务器(Registrar Server)
角色定位: 电话簿、通讯录管理员
┌─────────────────────────────┐
│ 注册服务器(电话簿)📖 │
├─────────────────────────────┤
│ Alice → 192.168.1.100 │
│ Bob → 192.168.1.101 │
│ Carol → 192.168.1.102 │
│ David → 192.168.1.103 │
└─────────────────────────────┘
工作流程:
1. 你开机 → 向注册服务器报到:"我是Alice,我的地址是xxx"
2. 注册服务器记录:"好的,记下了!"
3. 别人找你 → 查电话簿:"Alice在哪?" → "在xxx!"
生活例子: 就像你搬家后,去派出所更新户籍地址!
3.4 重定向服务器(Redirect Server)
角色定位: 导航员、GPS
你: "小明在哪?"
重定向服务器: "他换号码了,新号码是 xxx-xxxx-xxxx"
你: "好的,谢谢!" → 直接拨打新号码
生活例子: 就像快递员说"收件人搬走了,新地址是xxx"!
3.5 组件协作图 🎭
┌───────────────────┐
│ 注册服务器 📖 │
│ (记录用户位置) │
└─────────┬─────────┘
│ 查询
↓
你的手机 ┌───────────────────┐ 朋友的手机
┌─────┐ │ 代理服务器 🏢 │ ┌─────┐
│ 😊 │ ────────>│ (转发消息) │────────> │ 💁♀️ │
│ UAC │ └───────────────────┘ │ UAS │
└─────┘ └─────┘
↑ ↓
│ │
│ ┌─────────────────┐ │
└────────────│ RTP 媒体流 🎵 │────────────────┘
│ (语音/视频) │
└─────────────────┘
团队分工:
- 🏢 代理服务器:快递公司
- 📖 注册服务器:地址簿
- 🔄 重定向服务器:客服(告诉你新地址)
- 📱 用户代理:你和你的朋友
📬 第四章:SIP消息类型——它们的"语言体系"
4.1 请求方法(Request Methods)
SIP有6种核心请求方法(想象成6种不同的"指令"):
┌─────────────────────────────────────────────────────┐
│ 方法 │ 作用 │ 生活例子 │
├─────────────────────────────────────────────────────┤
│ INVITE │ 发起会话 │ "约吗?" 📞 │
│ ACK │ 确认 │ "收到!" ✅ │
│ BYE │ 结束会话 │ "拜拜!" 👋 │
│ CANCEL │ 取消请求 │ "算了,不找了" ❌ │
│ REGISTER │ 注册 │ "我到了!" 📝 │
│ OPTIONS │ 查询能力 │ "你支持视频吗?" 🤔 │
└─────────────────────────────────────────────────────┘
详细说明:
① INVITE(邀请)
场景:你想和朋友视频聊天
你: "喂,咱们开视频吧?"
SIP消息:
INVITE sip:friend@example.com SIP/2.0
Content-Type: application/sdp
(附带:我支持哪些编码格式、我的IP地址等)
② ACK(确认)
场景:对方同意了,你确认收到
你: "好的,那咱们开始吧!"
SIP消息:
ACK sip:friend@example.com SIP/2.0
③ BYE(再见)
场景:聊完了,要挂断
你: "好了,先这样,拜拜!"
SIP消息:
BYE sip:friend@example.com SIP/2.0
④ CANCEL(取消)
场景:打了电话,突然不想打了
你: "算了算了,不找他了..."
SIP消息:
CANCEL sip:friend@example.com SIP/2.0
⑤ REGISTER(注册)
场景:你开机上线,告诉服务器你在这儿
你: "我是Alice,我的地址是xxx"
SIP消息:
REGISTER sip:example.com SIP/2.0
Contact: <sip:alice@192.168.1.100>
⑥ OPTIONS(查询选项)
场景:你想知道对方支持什么功能
你: "你能视频吗?能发文件吗?"
SIP消息:
OPTIONS sip:friend@example.com SIP/2.0
4.2 响应码(Response Codes)
就像HTTP状态码(404找不到),SIP也有自己的响应码系统:
┌───────────────────────────────────────────────────────┐
│ 1xx - 临时响应(我知道了,等等...) │
│ ├─ 100 Trying → "收到,正在处理..." ⏳ │
│ ├─ 180 Ringing → "电话响了!" 📳 │
│ └─ 183 Progress → "处理中..." 🔄 │
├───────────────────────────────────────────────────────┤
│ 2xx - 成功(搞定!) │
│ ├─ 200 OK → "好的!同意!" ✅ │
│ └─ 202 Accepted → "已接受" 👍 │
├───────────────────────────────────────────────────────┤
│ 3xx - 重定向(去别的地方找) │
│ ├─ 301 Moved → "永久搬家了" 🚚 │
│ └─ 302 Temporarily → "临时去别的地方了" 🏃 │
├───────────────────────────────────────────────────────┤
│ 4xx - 客户端错误(你的问题) │
│ ├─ 400 Bad Request → "你说的啥?听不懂" 😵 │
│ ├─ 401 Unauthorized→ "没权限!" 🚫 │
│ ├─ 404 Not Found → "找不到这个人" 🔍 │
│ ├─ 408 Timeout → "等太久了,不等了" ⏰ │
│ ├─ 486 Busy Here → "占线中..." ☎️ │
│ └─ 487 Cancelled → "你取消了" ❌ │
├───────────────────────────────────────────────────────┤
│ 5xx - 服务器错误(我的问题) │
│ ├─ 500 Server Error→ "服务器出错了" 💥 │
│ ├─ 503 Unavailable → "服务不可用" 🔧 │
│ └─ 504 Timeout → "服务器超时了" ⏱️ │
├───────────────────────────────────────────────────────┤
│ 6xx - 全局失败(彻底不行) │
│ ├─ 600 Busy → "所有线路都忙" 📵 │
│ ├─ 603 Decline → "拒绝接听" 🙅 │
│ └─ 604 Not Exist → "用户不存在" 👻 │
└───────────────────────────────────────────────────────┘
4.3 实际消息例子 📝
一个真实的INVITE消息长这样:
INVITE sip:bob@example.com SIP/2.0
Via: SIP/2.0/UDP pc33.example.com;branch=z9hG4bK776asdhds
Max-Forwards: 70
To: Bob <sip:bob@example.com>
From: Alice <sip:alice@example.com>;tag=1928301774
Call-ID: a84b4c76e66710@pc33.example.com
CSeq: 314159 INVITE
Contact: <sip:alice@pc33.example.com>
Content-Type: application/sdp
Content-Length: 142
(下面是SDP协议内容,描述媒体信息)
v=0
o=alice 2890844526 2890844526 IN IP4 pc33.example.com
s=会话
c=IN IP4 pc33.example.com
t=0 0
m=audio 49170 RTP/AVP 0
a=rtpmap:0 PCMU/8000
翻译成人话:
嘿Bob,我是Alice!
我想跟你视频通话!
我的地址是 pc33.example.com
我支持 PCMU 音频编码
我的音频端口是 49170
你同意吗?
🌍 第五章:实际应用场景——原来你无处不在
5.1 应用场景大盘点
┌─────────────────────────────────────────┐
│ 🏢 企业IP电话系统 │
│ "老板,王总来电话了!" │
│ → 公司内部座机、分机系统 │
└─────────────────────────────────────────┘
┌─────────────────────────────────────────┐
│ 💻 视频会议(Zoom、Teams、钉钉) │
│ "大家好,今天开个会..." │
│ → 远程办公、在线会议 │
└─────────────────────────────────────────┘
┌─────────────────────────────────────────┐
│ 📱 VoIP网络电话(Skype、微信通话) │
│ "喂?听得到吗?" │
│ → 免费网络通话 │
└─────────────────────────────────────────┘
┌─────────────────────────────────────────┐
│ 🏠 智能家居对讲系统 │
│ "谁在按门铃?" │
│ → 可视门铃、智能音箱 │
└─────────────────────────────────────────┘
┌─────────────────────────────────────────┐
│ 🎮 游戏内语音(吃鸡、LOL) │
│ "队友,快来支援!" │
│ → 实时语音聊天 │
└─────────────────────────────────────────┘
┌─────────────────────────────────────────┐
│ 🏥 远程医疗(在线问诊) │
│ "医生,我这里有点不舒服..." │
│ → 视频问诊、远程会诊 │
└─────────────────────────────────────────┘
┌─────────────────────────────────────────┐
│ 🎓 在线教育(腾讯课堂、ZOOM) │
│ "同学们,今天我们讲..." │
│ → 在线直播课、一对一教学 │
└─────────────────────────────────────────┘
5.2 真实案例:一天中的SIP
早上 7:00 ☀️
闹钟响了,你的智能音箱说:
"早上好!今天天气晴朗..."
→ 使用SIP协议连接云端服务
上午 9:30 💼
到公司,老板打来座机分机:
"小李,来我办公室一下"
→ 企业IP-PBX系统(基于SIP)
中午 12:00 🍜
用美团外卖点餐,骑手打来电话:
"您好,您的外卖到了!"
→ 虚拟号码呼叫(SIP中继)
下午 2:00 👨💻
远程会议,和客户视频沟通:
"各位下午好,我们今天..."
→ Zoom/Teams 视频会议(SIP/WebRTC)
晚上 6:00 🏠
到家门口,可视门铃响了:
"有快递!" → 你用手机查看
→ 智能门铃(SIP对讲)
晚上 8:00 🎮
打开游戏,和队友语音:
"兄弟们,冲啊!"
→ 游戏内置语音(基于SIP)
晚上 10:00 📱
微信视频通话,和家人聊天:
"妈,我在这边挺好的..."
→ 微信通话(类SIP协议)
看到了吗?SIP已经渗透到生活的方方面面! 🌟
🛠️ 第六章:手把手教你用SIP——实战演练
6.1 准备工作 📋
你需要准备:
- ✅ 一台电脑或手机
- ✅ 网络连接(WiFi或流量)
- ✅ SIP客户端软件
- ✅ 一个SIP账号
6.2 选择SIP客户端
Windows/Mac电脑推荐:
┌──────────────────────────────────┐
│ 🥇 Zoiper(初学者友好) │
│ - 界面简洁 │
│ - 免费版够用 │
│ - 支持音频+视频 │
└──────────────────────────────────┘
┌──────────────────────────────────┐
│ 🥈 MicroSIP(轻量级) │
│ - 超级小巧(2MB) │
│ - 开源免费 │
│ - 仅支持音频 │
└──────────────────────────────────┘
┌──────────────────────────────────┐
│ 🥉 3CX Phone(专业级) │
│ - 功能强大 │
│ - 适合企业 │
│ - 完全免费 │
└──────────────────────────────────┘
手机App推荐:
📱 Android:
- Linphone(开源)
- Zoiper
- Groundwire(付费,专业)
📱 iPhone:
- Linphone
- Zoiper
- Bria(付费,功能强大)
6.3 获取SIP账号
方法一:使用免费测试账号
一些网站提供免费SIP测试账号:
🌐 sip2sip.info(免费)
🌐 ekiga.net(免费)
🌐 voip.ms(付费,稳定)
方法二:自己搭建SIP服务器(进阶)
使用Asterisk(开源SIP服务器):
1. 安装Linux系统(Ubuntu推荐)
2. 安装Asterisk: sudo apt install asterisk
3. 配置用户和分机
4. 开始使用!
→ 适合技术爱好者和企业
6.4 配置步骤(以Zoiper为例)
第一步:下载安装
1. 访问 https://www.zoiper.com/
2. 下载对应系统版本
3. 安装(一路Next就行)
第二步:添加SIP账号
打开Zoiper,点击"设置":
┌─────────────────────────────────┐
│ 账号类型:SIP │
├─────────────────────────────────┤
│ 用户名:your_username │
│ 密码:your_password │
│ 域名:sip.example.com │
├─────────────────────────────────┤
│ [√] 启用账号 │
│ [ ] 使用加密 │
└─────────────────────────────────┘
实际例子:
假设你在 sip2sip.info 注册了账号:
用户名:alice
密码:mypassword123
域名:sip2sip.info
那么你的完整SIP地址就是:
📧 sip:alice@sip2sip.info
第三步:注册成功
看到绿色的"已注册"图标:✅
状态栏显示:
┌──────────────────┐
│ alice@sip2sip.info│
│ ✅ 已注册 │
└──────────────────┘
6.5 拨打第一个电话 📞
拨打SIP地址:
1. 在拨号框输入:bob@sip2sip.info
2. 点击"呼叫"按钮 📞
3. 等待对方接听...
4. 开始通话!🎉
拨号框示例:
┌────────────────────────────────┐
│ bob@sip2sip.info │
│ [📞 呼叫] │
└────────────────────────────────┘
拨打普通电话号码(需要支持):
如果你的SIP提供商支持PSTN网关:
直接输入:+86 138 1234 5678
点击呼叫即可!
6.6 接听电话
来电时:
┌────────────────────────────────┐
│ 📞 来电 │
│ bob@sip2sip.info 正在呼叫... │
│ │
│ [✅ 接听] [❌ 拒绝] │
└────────────────────────────────┘
点击"接听"就可以开始通话!
6.7 常见问题排查 🔧
❌ 问题1:注册失败
→ 检查用户名密码是否正确
→ 检查网络连接
→ 检查防火墙设置
❌ 问题2:听不到声音
→ 检查麦克风和扬声器设置
→ 检查系统音量
→ 测试音频设备
❌ 问题3:对方听不到我的声音
→ 检查麦克风权限
→ 检查路由器NAT设置
→ 尝试使用STUN服务器
❌ 问题4:通话延迟大
→ 检查网络速度
→ 选择更近的服务器
→ 降低音频质量设置
🤔 第七章:常见问题解答
Q1: SIP和传统电话有什么区别?
传统电话 🏢 SIP电话 💻
├─ 需要电话线 ├─ 只需要网络
├─ 按时长/次数收费 ├─ 通常按流量或包月
├─ 音质稳定但有限 ├─ 音质取决于网络
├─ 功能单一 ├─ 可扩展功能多
└─ 设备固定 └─ 任何设备都可以
总结: SIP更灵活、更便宜、功能更强大!
Q2: SIP安全吗?会不会被窃听?
⚠️ 潜在风险:
├─ 未加密的SIP消息可能被截获
├─ 恶意攻击者可能伪造身份
└─ 媒体流可能被窃听
✅ 安全措施:
├─ 使用TLS加密SIP信令(SIPS)
├─ 使用SRTP加密媒体流
├─ 强密码 + 定期更换
└─ 使用可信赖的服务商
建议: 重要通话使用加密连接!
Q3: SIP免费吗?
🆓 免费部分:
├─ SIP协议本身是免费的
├─ 很多开源SIP软件
└─ 一些免费的SIP服务商
💰 可能收费的部分:
├─ SIP到普通电话(PSTN)
├─ 高级功能(录音、转接等)
└─ 商业级服务(稳定性保证)
总结: SIP对SIP通话通常免费,打外线可能收费!
Q4: SIP对网络要求高吗?
最低要求(语音):
├─ 带宽:100 Kbps(上传+下载)
├─ 延迟:< 150ms
└─ 丢包率:< 1%
推荐配置(高清视频):
├─ 带宽:2-4 Mbps
├─ 延迟:< 50ms
└─ 丢包率:< 0.1%
生活例子:
📱 4G网络 → 完全够用 ✅
🏠 家庭宽带 → 很流畅 ✅
🚇 地铁WiFi → 可能卡顿 ⚠️
📡 卫星网络 → 延迟较大 ⚠️
Q5: 为什么有时候听不到声音?
常见原因:
1️⃣ NAT穿透问题
你的路由器 🏠 → 挡住了数据
解决:配置STUN/TURN服务器
2️⃣ 防火墙阻拦
防火墙 🚧 → "SIP?不认识,拦截!"
解决:添加防火墙规则
3️⃣ 编码器不匹配
你: "我说普通话" 🗣️
对方: "我只听得懂粤语" 👂
解决:协商共同支持的编码器
4️⃣ 网络质量差
丢包严重 📶 → 语音断断续续
解决:改善网络环境
Q6: SIP可以拨打110、120等紧急电话吗?
⚠️ 注意:大部分SIP服务不支持紧急电话!
原因:
├─ SIP没有固定地理位置
├─ 紧急服务需要定位功能
└─ 法律法规要求
建议:
🚨 紧急情况请使用传统电话或手机!
Q7: 企业如何部署SIP系统?
方案一:云端托管(简单)☁️
├─ 选择云服务商(如3CX Cloud)
├─ 注册账号,配置用户
├─ 员工下载客户端即可
└─ 优点:快速部署,无需维护
方案二:本地部署(专业)🏢
├─ 搭建Asterisk/FreeSWITCH服务器
├─ 配置PBX系统
├─ 连接PSTN网关(打外线)
└─ 优点:完全控制,更安全
方案三:混合方案(折中)🌐
├─ 本地核心服务器
├─ 云端备份和远程接入
└─ 优点:兼顾安全和便利
🎓 总结:你已经是SIP大师了!
恭喜你看到这里!🎉 现在你已经:
✅ 了解了SIP是什么
✅ 知道了SIP的工作原理
✅ 认识了SIP的各个组件
✅ 学会了如何使用SIP
✅ 能够解决常见问题
最后的碎碎念 💭
SIP协议就像是互联网上的"瞬移术"✨,让我们能够:
- 📞 随时随地打电话
- 🎥 高清视频面对面
- 💰 省下大笔话费
- 🌍 连接全世界
记住这个公式:
SIP = 互联网 + 电话 + 视频 + 更多可能
下一步学习建议 📚
入门级 👶
├─ 尝试使用免费SIP服务
├─ 体验不同的SIP客户端
└─ 和朋友测试通话
进阶级 👨💻
├─ 学习SIP消息结构
├─ 了解SDP协议
└─ 研究NAT穿透技术
专家级 🧙
├─ 搭建自己的SIP服务器
├─ 开发SIP应用
└─ 优化通话质量
推荐资源 🔗
📖 RFC 3261 - SIP协议标准(英文)
🎓 Asterisk官方文档
💻 Github上的SIP开源项目
🎥 YouTube上的SIP教程视频
🎊 结束语
"通信的未来是开放的、灵活的、智能的——而SIP正是通往这个未来的钥匙!" 🗝️
感谢你的耐心阅读!如果这篇文档对你有帮助,别忘了分享给你的朋友!
有任何问题欢迎继续探索和实践!记住:
┌────────────────────────────────┐
│ 最好的学习方法就是动手实践! │
│ 💪 Go Go Go! 💪 │
└────────────────────────────────┘
版本: 1.0
最后更新: 2025年10月
作者: 你的AI小助手 🤖
授权: 自由分享,注明出处即可!
📎 附录
附录A:常用SIP端口
5060 - SIP信令(UDP/TCP)
5061 - SIP信令(TLS加密)
10000-20000 - RTP媒体流
附录B:音频编码器对照表
┌─────────────────────────────────┐
│ 编码器 │ 带宽 │ 音质 │
├─────────────────────────────────┤
│ G.711 │ 64kbps │ 高(电话) │
│ G.729 │ 8kbps │ 中(压缩) │
│ Opus │ 变化 │ 极高(推荐)│
│ GSM │ 13kbps │ 低(老旧) │
└─────────────────────────────────┘
附录C:SIP响应码速查表
1xx - 信息性 (Provisional)
2xx - 成功 (Success)
3xx - 重定向 (Redirection)
4xx - 客户端错误 (Client Error)
5xx - 服务器错误 (Server Error)
6xx - 全局失败 (Global Failure)
完整列表参见RFC 3261第21章
🎉 恭喜你完成了SIP协议的学习之旅! 🎉
___
|___|
|.| "通信世界因你而更精彩!"
|||
/___\
现在,去打个SIP电话试试吧! 📞✨