IMS/SIP - 深入理解User Agent 概念及UAC/UAS的作用

计算机或通信里的概念对应的名词,很多来源于生活中,因此名词本身在生活中的含义对于理解概念非常具有启发性,名不顺则言不顺,一句说了几千年的话,多多少少是有点道理的。

因为虽然这个名词只是一个或几个字/单词,但实际是前辈们深入研究和实践之后发现最能体现这个概念的生活中的词汇

所以如果能真正理解这个名词的含义,实际对于理解这个概念就成功了一半。

比如TCP里的滑动窗口,操作系统里死锁C++里的继承...

还有,这篇文章的主角:User Agent --- 用户代理,字面意思就是用户的代理,没有别的意思(比如文章封面这个特工)

那么User很简单,就是使用手机的用户。

Agent是什么呢?就是代理,代理你去完成一些事情,这样你就不用亲自动手。

现在我们回到基于SIPIMS里。

我们说基于SIP Session的呼叫,通常是指之间的呼叫。

所以这个User一般是人,但是要建立这个呼叫,人肯定没法自己跑到手机里去搬动实现sip协议软件的二进制代码去发送消息以建立session(不过我两岁多的宝宝跟正在吃饭的外婆微信视频聊天时,看到外婆那边有好吃的,就对着视频窗口跟外婆说外婆,我要进来吃)

所以需要一个能在具备SIP能力的机器里运行的东西去做代理, User Agent就是这么来的,于是就有了User Agent的定义:

A SIP-enabled end device is called a SIP user agent (UA).

有了这个定义后,对于UA来说,只要有user就行了,这个user虽然大部分时候是人,也可以不是人,比如另一个需要SIP服务的上层协议。

User AgentClientServer(还记得我们在上篇《IMS - 深入理解PRACK消息》提到过吗?).

但是千万要注意,由于我们熟悉的HTTP协议的Client总是Web浏览器,而Server总是Web服务器(FTP协议也类似),我们通常容易有一个误解:认为在手机里的User Agent就叫UAC(User Agent Client), 而在Proxy ServerUser AgentUAS(User Agent Server).

实际上在一个会话当中,一个User Agent可以同时扮演UACUAS的角色:

UAC用于发起请求(request),而UAS用于产生响应(response)


笔者在公众号“协议工程师笔记”定期发布5G/LTE/IMS...学习笔记, 敬请关注、订阅和分享,谢谢!

                                                               图片

                                                                      一起努力,蒸蒸日上

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值