极简科普 1:什么是 VOIP
VoIP 的全称是 Voice over Internet Protocol。简单说,就是用过 IP 网络进行即时的语音/视频通信。注意,这里只强调了在传输过程中有使用 IP 网络,并没有说只通过 IP 网络。看下面一张图:

图来自知乎用户:幸运星,原文链接传送门
上图基本反映了国内 VOIP 的现状。这里有一个区分,就是传输音/视频消息仅通过 IP 网络,还是同时依靠 IP 网络和电信网络。而这个区分,就牵扯到是否需要运营商牌照的问题,此处就不展开了。
仅通过 IP 网络的 VOIP,在国内比较常见。比如我们用的微信、QQ的音频通话功能。它们的特征是,不管通信双方使用的终端是什么,其上一定会安装有相同的应用软件。表面上看,呼叫双方通过使用同一款软件进行通信。
而另一种情况,则应用得就不那么广泛了。除了企业飞信、易信,还有 skype、eSpace(一款华为内部使用的即时通信软件)等等。它们的特征是,呼叫方可以通过这款软件以拨打对方手机号的形式直接呼叫对方,而被叫一方的手机上不需要安装这个应用。沃天,那我以后给别人打电话完全可以通过这种形式了,岂不省了好多话费?不要高兴的太早,这种要么收费(花钱购买通话时长),要么登录软件有限制(需要企业内部账号)。不过还是可以研究下,跟手机套餐做下对比,看哪种省钱。
补充说明:以上提到的 IP 网络可简单理解为宽带(ADSL、光纤)、WiFi、4G 网络,电信网络可简单的理解为电话网、2G 网络、3G 网络。
扩展知识:
1. 我用 4G 手机、4G 套餐,打电话的时候,消息走的哪个网络?
从你的手机到附近的基站这段距离,话音消息通过 2G/3G 网络承载。
2. 我用 4G 手机、4G 套餐,上网(浏览网页、玩游戏、微信视频)的时候,消息走的哪个网络?
在你的手机未连接有效 WiFi 的情况下,从手机到附近的基站这段距离,消息走的是 4G 网络,会消耗你手机套餐中的流量。
极简科普 1:什么是 VOIP的更多相关文章
- Nginx 极简教程(快速入门)
作者:dunwu github.com/dunwu/nginx-tutorial 推荐阅读(点击即可跳转阅读) 1. SpringBoot内容聚合 2. 面试题内容聚合 3. 设计模式内容聚合 4. ...
- nginx极简教程
Nginx 极简教程 本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx. examples 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快 ...
- CSharpGL(28)得到高精度可定制字形贴图的极简方法
CSharpGL(28)得到高精度可定制字形贴图的极简方法 回顾 以前我用SharpFont实现了解析TTF文件从而获取字形贴图的功能,并最终实现了用OpenGL渲染文字. 使用SharpFont,美 ...
- Vim,极简使用教程,让你瞬间脱离键鼠切换的痛苦
注:看大家对Vim仇恨极大,其实它只是一种文本操作方式,可以减少键鼠的切换,从而让编辑文本的操作更迅捷.并不等同于IDE,在我看来,它们是两个是包含关系,IDE可以有Vim编辑模式.Vim或许可以通过 ...
- CentOS下使用Postfix + Dovecot + Dnsmasq搭建极简局域网邮件系统
背景 开发环境为局域网,工作内容需要经常查看邮件文件(*.eml),可恶的Foxmail必须验证账户才能进入主界面,才能打开eml文件查看. 无奈搭一个局域网内的邮件系统吧.极简搭建,仅用于通过Fox ...
- 在Web应用中接入微信支付的流程之极简清晰版
在Web应用中接入微信支付的流程之极简清晰版 背景: 在Web应用中接入微信支付,我以为只是调用几个API稍作调试即可. 没想到微信的API和官方文档里隐坑无数,致我抱着怀疑人生的心情悲愤踩遍了丫们布 ...
- Snabbt.js – 极简的 JavaScript 动画库
Snabbt.js 是一个简约的 JavaScript 动画库.它会平移,旋转,缩放,倾斜和调整你的元素.通过矩阵乘法运算,变换等可以任何你想要的方式进行组合.最终的结果通过 CSS3 变换矩阵设置. ...
- 在Web应用中接入微信支付的流程之极简清晰版 (转)
在Web应用中接入微信支付的流程之极简清晰版 背景: 在Web应用中接入微信支付,我以为只是调用几个API稍作调试即可. 没想到微信的API和官方文档里隐坑无数,致我抱着怀疑人生的心情悲愤踩遍了丫们布 ...
- 基于 Node.js 平台,快速、开放、极简的 web 开发框架。
资料地址:http://www.expressjs.com.cn/ Express 基于 Node.js 平台,快速.开放.极简的 web 开发框架. $ npm install express -- ...
随机推荐
- 线程——自定义多线程task
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- word20170101厨房家电kitchen appliances
1. Microwave Ovens 2. Electric Kettles 3. Coffeemakers 4. Espresso Machines 5. Toasters 6. Sandwich ...
- vue 前端框架 (二) 表格增加搜索
本章知识点 归纳: 1.定义全局过滤器 以及 私有过滤器 2.定义全局指令 以及 定义私有指令 3.定义键盘修饰符 4.v-for 的函数引入 5.字符串的incluede 方法,.toString( ...
- 剑指Offer编程题3——从尾到头打印链表
题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList. 题目解析 方法1:建立两个vector,第一个用来存储正向访问的数据,第二个用来反向存储. /** * struct L ...
- JMX - JMX定义
JMX定义 JMX超详细解读 https://www.cnblogs.com/dongguacai/p/5900507.html 开源框架是如何通过JMX来做监控的(一) - JMX简介和Standa ...
- Python multiprocessing
 推荐教程 官方文档 multiprocess各个模块较详细介绍 廖雪峰教程--推荐 Pool中apply, apply_async的区别联系 (推荐)python多进程的理解 multiproce ...
- Appnium-API-Dvice
Device Activity Start Activity Start an Android activity by providing package name and activity name ...
- 014_IP专项研究监控
一.数据demo cat /proc/net/snmp Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagr ...
- [mysql] 修复问题表Table '.xxxx' is marked as crashed and should be repaired
程序执行的过程中,出现 Table '.xxxx' is marked as crashed and should be repaired 错误,上网查了一下,原来是表遭到损坏所致,具体修复办法如 ...
- QT windeployqt
qt发布release版本时需要打包一些dll,需要哪些呢?请看截图: 在qt的安装包下找到这些文件,放在release文件夹下即可,当然有些时候也会需要一些其他的,比如含有串口的程序还需要加入Qt5 ...