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的更多相关文章

  1. Nginx 极简教程(快速入门)

    作者:dunwu github.com/dunwu/nginx-tutorial 推荐阅读(点击即可跳转阅读) 1. SpringBoot内容聚合 2. 面试题内容聚合 3. 设计模式内容聚合 4.  ...

  2. nginx极简教程

    Nginx 极简教程 本项目是一个 Nginx 极简教程,目的在于帮助新手快速入门 Nginx. examples 目录中的示例模拟了工作中的一些常用实战场景,并且都可以通过脚本一键式启动,让您可以快 ...

  3. CSharpGL(28)得到高精度可定制字形贴图的极简方法

    CSharpGL(28)得到高精度可定制字形贴图的极简方法 回顾 以前我用SharpFont实现了解析TTF文件从而获取字形贴图的功能,并最终实现了用OpenGL渲染文字. 使用SharpFont,美 ...

  4. Vim,极简使用教程,让你瞬间脱离键鼠切换的痛苦

    注:看大家对Vim仇恨极大,其实它只是一种文本操作方式,可以减少键鼠的切换,从而让编辑文本的操作更迅捷.并不等同于IDE,在我看来,它们是两个是包含关系,IDE可以有Vim编辑模式.Vim或许可以通过 ...

  5. CentOS下使用Postfix + Dovecot + Dnsmasq搭建极简局域网邮件系统

    背景 开发环境为局域网,工作内容需要经常查看邮件文件(*.eml),可恶的Foxmail必须验证账户才能进入主界面,才能打开eml文件查看. 无奈搭一个局域网内的邮件系统吧.极简搭建,仅用于通过Fox ...

  6. 在Web应用中接入微信支付的流程之极简清晰版

    在Web应用中接入微信支付的流程之极简清晰版 背景: 在Web应用中接入微信支付,我以为只是调用几个API稍作调试即可. 没想到微信的API和官方文档里隐坑无数,致我抱着怀疑人生的心情悲愤踩遍了丫们布 ...

  7. Snabbt.js – 极简的 JavaScript 动画库

    Snabbt.js 是一个简约的 JavaScript 动画库.它会平移,旋转,缩放,倾斜和调整你的元素.通过矩阵乘法运算,变换等可以任何你想要的方式进行组合.最终的结果通过 CSS3 变换矩阵设置. ...

  8. 在Web应用中接入微信支付的流程之极简清晰版 (转)

    在Web应用中接入微信支付的流程之极简清晰版 背景: 在Web应用中接入微信支付,我以为只是调用几个API稍作调试即可. 没想到微信的API和官方文档里隐坑无数,致我抱着怀疑人生的心情悲愤踩遍了丫们布 ...

  9. 基于 Node.js 平台,快速、开放、极简的 web 开发框架。

    资料地址:http://www.expressjs.com.cn/ Express 基于 Node.js 平台,快速.开放.极简的 web 开发框架. $ npm install express -- ...

随机推荐

  1. 线程——自定义多线程task

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  2. word20170101厨房家电kitchen appliances

    1. Microwave Ovens 2. Electric Kettles 3. Coffeemakers 4. Espresso Machines 5. Toasters 6. Sandwich ...

  3. vue 前端框架 (二) 表格增加搜索

    本章知识点 归纳: 1.定义全局过滤器 以及 私有过滤器 2.定义全局指令 以及 定义私有指令 3.定义键盘修饰符 4.v-for 的函数引入 5.字符串的incluede 方法,.toString( ...

  4. 剑指Offer编程题3——从尾到头打印链表

    题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList.   题目解析 方法1:建立两个vector,第一个用来存储正向访问的数据,第二个用来反向存储. /** * struct L ...

  5. JMX - JMX定义

    JMX定义 JMX超详细解读 https://www.cnblogs.com/dongguacai/p/5900507.html 开源框架是如何通过JMX来做监控的(一) - JMX简介和Standa ...

  6. Python multiprocessing

     推荐教程 官方文档 multiprocess各个模块较详细介绍 廖雪峰教程--推荐 Pool中apply, apply_async的区别联系 (推荐)python多进程的理解 multiproce ...

  7. Appnium-API-Dvice

    Device Activity Start Activity Start an Android activity by providing package name and activity name ...

  8. 014_IP专项研究监控

    一.数据demo cat /proc/net/snmp Ip: Forwarding DefaultTTL InReceives InHdrErrors InAddrErrors ForwDatagr ...

  9. [mysql] 修复问题表Table '.xxxx' is marked as crashed and should be repaired

    程序执行的过程中,出现   Table '.xxxx' is marked as crashed and should be repaired 错误,上网查了一下,原来是表遭到损坏所致,具体修复办法如 ...

  10. QT windeployqt

    qt发布release版本时需要打包一些dll,需要哪些呢?请看截图: 在qt的安装包下找到这些文件,放在release文件夹下即可,当然有些时候也会需要一些其他的,比如含有串口的程序还需要加入Qt5 ...