
简介这份《短信发送流程学习教案.pptx》面向通信工程、网络运维方向的初学者与IT从业者系统梳理短信在移动网络中的端到端传递机制帮助读者理解各网元交互逻辑、排查短信收发异常。教案以幻灯片形式逐页拆解漫游用户MO、省内互通MO、省内用户MT、漫游用户MT、省外用户MT等典型场景并延伸至本地与异地互通短信MT流程清晰标注BSC、MSC、LSTP、HSTP、SMSC、HLR、ISMG等节点间的信令走向与应答顺序。资源包共1个pptx文件约158KB内容精炼、结构分明适合课堂讲授或自学对照。目前已有67人学习读者可借此掌握短信中心鉴权、计费话单生成、跨省转发等关键环节为优化通信服务、定位网络故障提供清晰的流程参照。1. 短信发送流程学习教案从一条短信的旅程看通信系统的分层设计你按下手机上的发送键一条短信在几秒内抵达对方屏幕。这个看似简单的动作背后藏着通信系统最经典的分层协作模型。短信发送流程学习教案.pptx 这个标题指向的正是把这套流程拆解成可教学、可复现的技术文档。它要解决的核心问题是如何让学习者不仅知道“短信能发出去”还能说清楚信令在哪一层交互、协议在哪个节点转换、失败时该查哪张表。这套内容适合通信专业教师、企业内训师以及刚入行的核心网运维人员——你需要把一条短信从终端到终端的完整路径讲清楚而不是停留在“基站转发”这种模糊表述上。教案的价值在于把抽象协议变成可观测的步骤让学员能对着信令图找到每一个网元的位置。2. 短信发送流程的协议栈与网元分工谁在什么阶段做什么事2.1 从终端到短信中心的四段链路一条短信的起点是手机终端终点是接收方终端中间要穿过无线接入网、核心网和短信中心。常见做法是把这条路径切成四段终端到基站、基站到核心网、核心网到短信中心、短信中心到接收方。每一段用的协议不同承载的信令也不同。终端到基站这一段走的是空口协议短信内容被封装在 NAS 消息里通过 RRC 连接传给基站。基站不解析短信内容只负责把 NAS 消息透传给核心网。这里的关键参数是 TMSI 和 IMSI——终端用哪个标识接入决定了后续鉴权和路由的走向。我一般会提醒学员如果终端侧发送失败先看空口信令里有没有 RRC Connection Setup 完成没有的话问题在无线侧不在短信中心。基站到核心网这一段短信走的是 S1-MME 接口上的 NAS 传输消息。核心网里的 MME 负责移动性管理它把短信相关的 NAS 消息转给 SMS-IWMSC。这里有个容易混淆的点MME 不存储短信内容它只做信令转发。短信内容真正落地是在短信中心也就是 SMSC。所以排查时如果 MME 侧信令正常但短信没到问题大概率在 SMSC 的入库或路由环节。核心网到短信中心这一段协议从 NAS 切换成 MAP 或 Diameter。传统 2G/3G 用 MAP4G/5G 用 Diameter 的 S6c 或 SGd 接口。教案里需要把这两种协议的消息名对应起来比如 MAP 的 mt-ForwardSM 对应 Diameter 的 SRRSend Routing Request。学员如果只记一种协议遇到混合组网就会卡住。短信中心到接收方这一段SMSC 先向接收方归属的 HLR/HSS 查询路由信息拿到接收方当前所在的 MSC/MME 地址再把短信投递过去。投递失败时 SMSC 会重试重试策略和有效期决定了短信最终是“已送达”还是“过期丢弃”。这部分是教案里最值得展开的因为重试参数直接关系到用户感知。2.2 教案里必须画清楚的三张表第一张表是网元与协议对照表。把终端、基站、MME、SMSC、HLR/HSS、接收方 MSC/MME 列出来每一行标注它参与的接口和协议。这张表能让学员在抓包时快速定位“这个包是谁发的”。网元参与接口主要协议关键消息终端空口NAS/RRCCP-DATA基站S1-MMES1APUplink NAS TransportMMES6c/SGdDiameterSRR/SRASMSCMAP/DiameterMAP/Diametermt-ForwardSMHLR/HSSS6c/SGdDiameterULR/ULA接收方 MSCMAP/DiameterMAP/Diametermt-ForwardSM第二张表是消息流与状态码对照表。短信发送过程中会出现各种状态码比如 0x00 表示成功0x01 表示未知用户0x0D 表示设备不支持。教案里要把这些状态码和具体排查动作绑在一起学员看到码就知道下一步查什么。第三张表是重试参数表。SMSC 的重试次数、重试间隔、短信有效期这三个参数决定了投递行为。常见配置是重试 3 次、间隔 30 秒、有效期 24 小时。但不同运营商差异很大教案里要留出调整空间让学员理解参数背后的权衡。2.3 用 Wireshark 抓一次短信信令的最小步骤教案不能只讲理论必须让学员动手抓一次包。下面是在实验环境里用 Wireshark 抓短信信令的最小步骤。假设你已经有一个包含 MME 和 SMSC 的测试网络并且终端已经附着成功。# 在 MME 的 S1-MME 接口上抓包 tcpdump -i eth0 -w sms_s1mme.pcap port 36412 # 在 SMSC 的 Diameter 接口上抓包 tcpdump -i eth1 -w sms_diameter.pcap port 3868 # 用 Wireshark 打开 pcap 文件过滤 NAS 消息 # 过滤条件nas_eps.nas_msg_emm_type 0x00 或 diameter.cmd_code 8388622第一段命令在 MME 的 S1-MME 接口上抓 S1AP 包端口 36412 是 S1AP 的标准端口。第二段在 SMSC 的 Diameter 接口上抓包端口 3868 是 Diameter 的标准端口。第三段是 Wireshark 的显示过滤条件nas_eps.nas_msg_emm_type 0x00 过滤的是 NAS 消息diameter.cmd_code 8388622 过滤的是 Diameter 的 SRR 消息。抓完包后学员需要按时间顺序排列消息找到 CP-DATA、Uplink NAS Transport、SRR、SRA、mt-ForwardSM 这几条关键消息。如果中间缺了某一条就说明那个环节出了问题。比如有 SRR 但没有 SRA说明 HLR/HSS 没响应要查 HSS 的 Diameter 路由配置。提示实验环境里抓包前先确认终端已经附着成功否则空口信令里连 RRC 连接都看不到更别说短信了。3. 把教案变成可复现的实验从信令流到参数配置3.1 搭建最小短信实验环境的三个组件要让学员真正理解短信流程光看信令图不够得让他们自己搭一个能跑通的最小环境。常见做法是用开源核心网加一个短信中心模拟器。三个核心组件是终端模拟器、核心网、短信中心。终端模拟器可以用 srsRAN 或者 Open5GS 自带的 UE 模拟器。核心网用 Open5GS 或者 free5GC这两个都支持 4G/5G 的 MME/AMF 和 SMSC 功能。短信中心可以用开源的 SMSC 模拟器比如 smsc-simulator它支持 MAP 和 Diameter 两种协议。搭建步骤分三步先启动核心网再启动短信中心最后启动终端模拟器并触发短信发送。每一步都有配置文件要改教案里要把关键配置项列出来。# Open5GS 的 MME 配置片段 mme: s1ap: address: 192.168.1.10 gummei: - plmn_id: mcc: 001 mnc: 01 mme_gid: 1 mme_code: 1 sms: center: 192.168.1.20 # SMSC 地址 protocol: diameter # 使用 Diameter 协议这段配置里s1ap.address 是 MME 监听 S1AP 的地址gummei 是 MME 的全局唯一标识sms.center 指向 SMSC 的地址sms.protocol 指定用 Diameter。学员如果改成 map就需要把 SMSC 模拟器也切到 MAP 模式否则协议不匹配短信发不出去。3.2 触发一次短信发送并观察信令序列环境搭好后用终端模拟器发送一条短信。下面是触发命令和观察点。# 启动 UE 模拟器并发送短信 ./ue_simulator --imsi 001010000000001 --smsc 192.168.1.20 --message test sms # 在 MME 侧观察 S1AP 消息 tail -f /var/log/open5gs/mme.log | grep -E Uplink NAS|Downlink NAS # 在 SMSC 侧观察 Diameter 消息 tail -f /var/log/smsc/smsc.log | grep -E SRR|SRA|mt-ForwardSM第一条命令启动 UE 模拟器指定 IMSI 和 SMSC 地址发送一条内容为 test sms 的短信。第二条命令在 MME 日志里过滤 NAS 消息看上行和下行有没有正常传输。第三条命令在 SMSC 日志里过滤 Diameter 消息看 SRR、SRA 和 mt-ForwardSM 有没有按顺序出现。正常的信令序列应该是UE 发 CP-DATAMME 收到后转成 Diameter SRR 发给 HSSHSS 回 SRA 带上接收方路由信息MME 再把短信转给 SMSCSMSC 发 mt-ForwardSM 给接收方 MSC。如果中间某一步缺失日志里会留下痕迹。比如 SRR 发了但 SRA 没回就要查 HSS 的 Diameter 配置和用户签约数据。3.3 教案里要留出的参数调整空间实验环境跑通后教案要引导学员调整参数观察变化。三个最值得调的参数是短信有效期、重试次数、重试间隔。短信有效期决定短信在 SMSC 里最多存多久。设成 1 小时接收方 1 小时内没上线短信就被丢弃。设成 24 小时接收方第二天上线还能收到。这个参数直接影响用户体验教案里要让学员对比不同设置下的投递结果。重试次数和重试间隔决定 SMSC 在投递失败后多久重试一次、重试几次。常见配置是重试 3 次、间隔 30 秒。但如果接收方长时间不在线3 次重试可能不够。教案里可以设计一个实验把接收方关机观察 SMSC 重试几次后放弃然后调整参数再试一次。注意调整重试参数时不要设得太激进否则 SMSC 会在短时间内产生大量信令实验环境可能扛不住。4. 短信发送流程教学中的五个血泪坑4.1 坑一把 MME 当成短信中心现象学员在 MME 日志里找不到短信内容以为短信丢了。原因MME 只转发 NAS 消息不存储短信内容短信内容在 SMSC 才落地。解决教案里明确标注每个网元的数据留存范围让学员知道去 SMSC 查内容去 MME 查信令。4.2 坑二Diameter 和 MAP 混用导致路由失败现象SRR 发出去了但 HSS 没回 SRA短信卡在 MME。原因MME 配了 Diameter但 HSS 只支持 MAP或者反过来。解决教案里要求学员先确认两端协议一致再检查 Diameter 的 Origin-Host 和 Destination-Realm 配置是否正确。4.3 坑三忽略 TMSI 和 IMSI 的区别现象终端附着成功但短信发不出去空口信令里看不到 CP-DATA。原因终端用 TMSI 接入但教案里的抓包过滤条件只认 IMSI导致漏看消息。解决抓包时同时过滤 TMSI 和 IMSI或者在 MME 日志里按 S-TMSI 搜索。4.4 坑四短信有效期设得太短导致误判现象实验时短信偶尔能收到、偶尔收不到学员以为环境不稳定。原因短信有效期设成了 5 分钟接收方终端启动慢一点就过期了。解决教案里把有效期默认设成 1 小时并提醒学员在对比实验时记录每次的有效期设置。4.5 坑五抓包位置不对导致信令缺失现象Wireshark 里只看到 S1AP 消息看不到 Diameter 消息。原因抓包接口选错了S1AP 和 Diameter 走的是不同物理接口或 VLAN。解决教案里画出实验环境的接口拓扑标注每个接口对应的抓包命令让学员先确认接口再抓包。5. 用状态码反推故障点一个可以带走的排查习惯教案的最后我一般会教一个具体技巧用状态码反推故障点。短信发送过程中每个环节都会返回状态码这些码就是排查的线索。比如 MME 返回 0x01 表示未知用户说明 HSS 里没有这个 IMSI 的签约数据SMSC 返回 0x0D 表示设备不支持说明接收方终端的能力集里没有短信功能。我习惯把状态码分成三类终端侧、网络侧、短信中心侧。终端侧的状态码通常和空口信令一起出现网络侧的状态码在 Diameter 或 MAP 消息里短信中心侧的状态码在 SMSC 日志里。学员只要看到状态码先判断它属于哪一类再去对应的日志里找上下文。下面这张表是我在教案里常用的状态码对照表学员可以打印出来贴在工位上。状态码含义排查方向0x00成功无需排查0x01未知用户查 HSS 签约数据0x0D设备不支持查终端能力集0x15短信中心拥塞查 SMSC 负载0x29有效期过期查短信有效期设置0x3A路由失败查 HLR/HSS 路由配置这个习惯的价值在于它把“短信发不出去”这个模糊问题变成了“哪个环节返回了什么码”的具体问题。学员不需要背下所有信令流只要会看状态码就能定位到大致范围再结合日志缩小到具体网元。我自己带新人时会让他们先跑通一次成功流程然后故意改错一个参数比如把 SMSC 地址改错让他们观察状态码变化。改错一次比看十遍信令图印象更深。希望帮到你。本文还有配套的精品资源点击获取