CMUX协议学习总结

CMUX协议学习总结

五个月前初刚开始接触CMUX时我在网上查找了很多资料以及文档,当时自认为对这个协议理解的还可以,现在回过头发现之前学的已经都忘的差不多了,借此机会回顾一下。不过CMUX协议的核心就是学习它的帧结构。本文参考了以下文档:

废话少说,来看CMUX吧。


1.什么是CMUX

CMUX是指串口多路复用。串口的多路复用器模式,就是使一个串行接口能够将数据传输到四个不同的客户应用程序。
实际的应用中,一个物理串口某一时间段内只能传输一个上层应用的数据流,如果有多个数据流同时要发送怎么办?除了访问多个UART还有别的方法吗?
CMUX协议的功能就是利用一个底层物理串口,向上层系统提供多个逻辑串口,每个逻辑串口对应着一个数据链路连接(DLC)。这样就可以同时在一条串行接口上存在多个会话,比如语音、FAX、数据、SMS、GPRS、USSD等。当正在进行传真/数据/ GPRS呼叫时,这是特别有利的,例如控制模块或使用SMS服务可以通过附加信道完成,而不会干扰数据流; 不需要访问第二个UART。
多路复用协议提供在单个物理通信通道之上虚拟出多个并行的逻辑通信通道的能力,一般应用于TE(Terminal Equipment)与MS(Mobile Station)之间,TE相当于智能手机的AP端,MS相当于智能手机的MODEM端,下图给出了典型的协议层次关系:协议层次关系

蓝色部分就是MUX多路复用层,它利用底层的物理串口链接收发数据,同时向上层提供若干个逻辑上独立使用的收发通道(上图中提供了四个逻辑通道,不同颜色表示)。每个逻辑通道独立创建,可以拥有软件流控制。在实际使用中,TE端的MUX向MS端的MUX发起通道建立请求,设置通道参数等,是主动的一方;MS端的MUX等待TE端的服务请求,根据自身能力提供相应服务。也就是说,两者的角色是不对称的。
TE终端和MS终端之间的每个通道,称作一个DLC链路,它们是先后相互独

  • 6
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CMUX(Channel Multiplexer)多路复用协议是一种网络协议,用于在传输层将多个独立的串行数据流复用到一个单一的通信链路上。 CMUX协议主要用于解决串行通信中的带宽利用问题。在传统串行通信中,每个串口只能连接一个设备或进行单个数据流的传输。而使用CMUX协议后,可以将多个串口的数据流复用到一个物理通信链路上,实现了多个数据流同时传输,从而提高了带宽利用率。 CMUX协议的工作原理如下:首先,通过一个控制信道进行通信链路的建立和管理。然后,将传输数据流分为多个虚拟通道,每个虚拟通道都有一个唯一的标识符。在发送端,将来自不同串口的数据分别封装在不同的虚拟通道中,并添加相应的标识符进行区分。在接收端,根据标识符将接收到的数据流分配到对应的串口中进行处理。 CMUX协议的优点在于它可以有效地利用串行通信的带宽资源,提高通信效率。同时,它能够支持多种串行通信协议,使得不同类型的设备可以共享同一个物理通信链路。此外,CMUX协议还具备良好的扩展性,可以根据实际需求自由添加或删除虚拟通道。 总之,CMUX多路复用协议是一种可以将多个串行数据流复用到一个单一通信链路上的网络协议。它通过提高带宽利用率、支持多种串行通信协议以及具备良好的扩展性等特点,为串行通信领域带来了更高效、更灵活的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值