以前一提到短信(Short Message),人们会想到“拇指族(在社交移动APP诞生前,专指用手机高频发短信的一个群体)”、“拜年短信”。现在再提到短信,人们想到的变成了“验证码”、“垃圾短信”以及“我好久不发短信了”。短信这一信息承载的媒介是伴随着移动通信工具一并诞生的,它是“古老的” – 1992年,22岁的加大拿工程师Neil Papworth用电脑给同事Richard Jarvis发出了人类历史上的第一条短信,总共15个字符(包括空格):“merry christmas”;它也辉煌过,是曾经的“网红” – 2012年根据中国工信部(MIIT)的数据,中国手机用户共发送9000亿条短信,这是中国短信数量的高峰。2013年开始,短信开始走下坡路,社交APP(如微信)的出现,让短信业务出现断崖式下跌,直到2018年短信业务才有了些许恢复性的增长。

一. 什么是增值类短信

不可否认的是短信依旧(至少目前依然)是我们日常生活中不可缺少的信息获取媒介,只是我们不再主动发送(点对点短信: 手机用户A发给手机用户B的短信),而是被动接收(应用发给手机用户的验证码、通知信息以及垃圾短信)。

img{512x368}

而这类被动接收的短信,多数都属于我们要重点说明的“增值类短信业务”。所谓增值类短信业务,说白了就是用于应用与用户互动的短信

img{512x368}

在增值类短信最火爆的年代,你一定听说过电台或电视中出现类似:“请发送XXX到YYYYYYY参与平台互动、抽奖、起名、查询天气预报、交通信息甚至是“算命”….”的音频或电视滚动播放的提示文字,这些提供增值类短信应用的商户被称为SP(服务提供商Service Provider),那个时候各大互联网门户也都是SP,都有自己的短信平台与手机用户互动。在这场以短信为媒介发展起来的增值短信业务市场中,移动运营商(国内的移动、联通、电信)赚的盆满钵满,因为每条发送给SP的短信都要扣费,费用至少包含两部分:通信费业务费

  • 通信费是使用运营商短信通道的费用,是运营商收取的,好比汽车上高速要缴纳高速服务费,因为我们的车在行驶过程中占用了高速公路一定面积的路面,并造成了一定的高速路面损害;通信费一般是按条收取的,最常见的费用是1角/条;当然运营商最擅长提供“套餐”,套餐中包含一定数量的短信,如果每月发送的短信条数在套餐数量之下,就无需额外付费。

  • 业务费是使用这个增值短信业务(比如天气预报)产生的费用。这个费用是否都给SP,要看SP与运营商签订的分成协议。多数情况下,运营商还是要从这个费用中扣除一部分分成后,将剩余的打给SP。比如手机用户发送一条查询天气预报的短信花费的业务费为1元;如果运营商和SP的协议是4:6分成的话,那么这1元中,运营商赚4角,提供天气服务的SP赚6角。业务费还可以按条/次或包月收取。以天气预报服务为例,如果是包月,那么手机用户在当月可以无限次给SP发送短信查询天气预报而不用担心逐条扣费。

我们看到在短信增值业务时代,运营商才是最大赢家,他们既收取通信费,还收取部分业务费。在增值类短信最火的几年中,运营商相继推出了自己的移动数据服务品牌,比如中国移动的移动梦网。当然短信增值业务仅是运营商数据业务的一种而已,他们还提供诸如彩信、wap等数据业务。

2013年及以后,随着移动互联网社交APP(诸如微信、移动QQ)的诞生与迅猛发展,短信作为社交工具的职能被彻底剥夺了,点对点短信彻底没落;随着微博、公众号、服务号等平台工具的推出,短信的互动功能、通知服务功能也被大幅削弱,以前的媒体互动平台几乎全部由短信平台迁移到微信、微博平台,大家日常听到最多的是请关注微信公众号或微博参与互动,互动短信被彻底扔到了历史的垃圾桶中。运营商再也不能像以前那样躺着收取手机用户的通道费和业务费了,这也直接导致了运营商在短信业务营收方面的大幅下降,运营商也要开始学勒紧裤腰带过日子了(当然和普通企业相比,运营商还是有钱人)。

目前让增值类短信业务屹立不倒的是验证码短信,这还多亏了国家出台的手机卡办理实名制,实名制让手机与身份几乎一一对应,也助推了短信成为了现存的、可用的最靠谱的(但不是最先进的)身份识别信息载体。可以说目前人们生活离得开“短信”,但离不开增值类的“验证码短信”。

有人会问全国每年发送的验证码短信没有万亿条,也有千百亿条了,运营商怎么没有以前赚钱了呢?这是因为这种从SP发到手机用户的短信,运营商只能收取SP的通道费,对SP收取的通道费原本就很低廉,且在三大运营商疯狂争夺客户的竞争中,SP的通道费还在逐年下降,直接导致运营商的增值短信业务出现量增但收入反降的局面。

二. 增值类短信是如何发送到你的手机上的

接下来,我们将进入偏技术的领域,我们来看看这类增值类短信是如何发送到用户手机上的。这里我们不会深入到运营商无线网络侧作细致说明,我们关注的更多是IP网络侧。国际上通用的关于SP接入运营商进行短信收发的协议是SMPP协议(Short Message Peer-to-Peer)。在最新的5.0版本协议规范中,我们可以看到一幅网络拓扑图,这里将其简化一下:

img{512x368}

我们看到,在国际上通行的组网是这样的:

  • SP通过smpp协议与运营商IP侧网络的Routing Entity相连,收发短信;

  • Routing Entity这个网元的作用正如其名,它根据短信的相关信息,将短信路由转发到连接对应SMSC的Routing Entity上,然后下一个Routing Entity负责通过SMPP协议将短信下发到后面的SMSC;

  • SMSC即短信中心,负责接收Routing Entity的短信,并将短信通过运营商的无线侧发到手机用户。

这已经是一个足够简化的网络拓扑图。

在国内,Routing Entity由各大运营商的短信业务网关(SMS Gateway)充当,原则上每个运营商在每个省份会建立一套短信网关。短信会首先由接收该短信的短信网关进行转发(可通过目的号码路由),将短信转发到目的号码归属省的短信中心(SMSC),然后由SMSC将短信下发到手机用户。这里省略无线侧网元,可以更清晰看到全国短信网关(SMS Gateway)和短信中心(SMSC)组网(先不考虑不同运营商之间的短信收发):

img{512x368}

我们从图中可以看到,这是一个运营商在A省和B省的短信业务网元网络拓扑。SP从A省接入,因此A省也称为SP的接入省。手机用户A和手机用户B分别归属于A省和B省,因此称A省是手机用户A的归属地;B省市手机用户B的归属地。

我们看到:与国际通用方式不同的是,国内SP不是通过SMPP接入短信网关(SMS Gateway)(在没有短信网关之前,SP是通过SMPP直接接入smsc的),而是使用了运营商的专有协议(中国移动CMPP、中国联通SGIP、中国电信SMGP);短信网关之间是互联的,通信协议也是运营商专有协议。一个省的短信网关只会连接本省的SMSCs。

当SP下发一条短信给手机用户A时,短信流经的网元如下:

SP -> A省短信网关(SMS Gateway) -> A省某SMSC实例 -> A省基站 -> 手机用户A

当SP下发一条短信给手机用户B时,短信流经的网元如下:

SP -> A省短信网关(SMS Gateway) -> B省短信网关(SMS Gateway) -> B省某SMSC实例 -> B省基站 -> 手机用户B

如果手机用户收到短信后要与SP互动,即手机用户发送一条短信到SP的号码上时,流程是这样的。

当手机用户A给SP发送一条短信,该短信流经的网元如下:

手机用户A -> A省基站 -> A省某SMSC实例 -> A省短信网关(SMS Gateway) -> SP

当手机用户B给SP发送一条短信,该短信流经的网元如下:

手机用户B -> B省基站 -> B省某SMSC实例 -> B省短信网关(SMS Gateway) -> A省短信网关(SMS Gateway)  -> SP

现在我们粗略地知道了我们是如何收到一个SP发送的短信的了以及反向流程了(在同一运营商下面)。

三. 小结

从业增值类短信业务平台开发很多年,这算是第一次写有关短信业务相关的文章。这一篇算是一个科普类的增值类短信业务介绍。接下来,我将继续以图文方式介绍增值类短信的协议与不同类型增值类短信打包和解析的难点。


我的网课“Kubernetes实战:高可用集群搭建、配置、运维与应用”在慕课网上线了,感谢小伙伴们学习支持!

我爱发短信:企业级短信平台定制开发专家 https://tonybai.com/
smspush : 可部署在企业内部的定制化短信平台,三网覆盖,不惧大并发接入,可定制扩展; 短信内容你来定,不再受约束, 接口丰富,支持长短信,签名可选。

著名云主机服务厂商DigitalOcean发布最新的主机计划,入门级Droplet配置升级为:1 core CPU、1G内存、25G高速SSD,价格5$/月。有使用DigitalOcean需求的朋友,可以打开这个链接地址:https://m.do.co/c/bff6eed92687 开启你的DO主机之路。

我的联系方式:

微博:https://weibo.com/bigwhite20xx
微信公众号:iamtonybai
博客:tonybai.com
github: https://github.com/bigwhite

微信赞赏:
img{512x368}

商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。

© 2019, bigwhite. 版权所有.

Related posts:

  1. 解决一个IP路由选择问题