电子说
在使用T900数传模块的过程中,会遇到空中速率和串口速率如何配置的问题。下面就谈谈自己的一些体会。
传输速率、带宽、吞吐量的概念区别
一条路每秒最多能过100辆车 (宽带就相当于100辆/秒) ,而并不是每秒都会有100辆车过,假如第一秒有0辆,第二秒有10辆……(但是最多不能超过100辆)。所以有第1秒0辆/秒,第2秒10辆/秒,第3秒30辆/秒,这不能说带宽多少吧,于是就用吞吐量表示具体时间通过的量有多少(也有可能等于带宽的量)。由此可知:带宽是说的是最大速率,吞吐量说的是某时刻速率;但吞吐量不能超过最大速率。吞吐量不仅衡量带宽,同时也衡量主机的CPU处理能力、网络的拥堵程度、报文中数据字段的占有份额等信息。
在数据传输的过程中,两个设备之间数据流动的物理速度称为传输速率,单位bps。各种传输媒介中信号的流动速度是恒定的,即使数据链路的传输速率不同,也不会出现忽快忽慢的情况。传输速率不是指单位数据流动的速度有多快,而是指单位时间内传输的数据量有多少。以我们生活中的道路交通为例,低速数据链路如同车道较少无法让很多车同时通过的情况,与之相反,高速数据链路就相当于有多个车道,一次允许更多车辆行驶的道路。
带宽 | 单位时间内,从某处传输到另一处的最大数据量! 相当于最大速率 ,单位是bps。带宽越大,网络传输能力就越强。即:单位时间内最大的传输(发送到链路或从链路接收)的数据量,不会影响数据在链路上的传播(数据的移动)速度,通常是一种理想状态。 |
吞吐量 | 吞吐量属于主机之间实际的传输速率,也就是单位时间内某个信道或者端口实际的数据量。即:主机之间实际的传输速率。例如:主机要接收信息,两台服务器传输速率分别为20bps和10bps,此时主机的吞吐量就是30bps。 |
传输速率 | 表示两个设备之间数据流动的物理速度,单位是bps。即:单位时间内传输(发送到链路或从链路接收)的数据量。 |
---|
举个例子:
在日常生活中,一般都号称100M带宽,但实际上却没有那么多,这是因为运营商提供的衡量单位是bit。1兆宽带:1Mb/s=1000Kb/s=1000/8KB/s=125KB/s。此外,也会因为网路延迟,信号灯问题导致网络实际传输速率很低。
T900数传模块的空中速率和吞吐量的关系如下:
为什么无线的标称速率和实际速率不一致?
不少用户不理解无线AP标称速率和实际速率为什么会不一致,甚至在买了一些知名品牌的设备后发现依然有这个问题,还以为自己买到了假货、次品。实际上,无线AP的标称速率不等于实际使用速率,这个受很多因素的影响。比如说某无线AP的标称速率是150Mbps,但实际使用中速率通常达不到150Mbps。
1.WLAN的物理速率是指空口的物理层的速率,简单的说就是空口一直不停的发送,物理层可以达到的速率。常见的比如802.11b物理速率为11Mbps,802.11g物理速率为54Mbps,802.11n物理速率为150Mbps。
2.用户的理论速率和物理速率又有什么关系呢? 物理速率只是代表了空口的最佳性能,而理论速率则是在理想环境下无线AP的传输速率。 以802.11b协议为例子,假设用户的报文为1500字节,加在1500字节数据前面的报头是32字节,数据校验位为4字节,合计1536字节。在802.11b协议下,该1536字节的数据帧将以11Mbit/s的速度传输,计算出该数据帧的传输时间为1536B×8b÷11Mbps=1117us。而在WLAN中,在数据帧之前还要传输链接码和WLAN特有的PLCP报头;传输这两种信息的时间总计定为192us。另外,在WLAN中发送数据帧时除帧间隔的时间以外还必须等待一个 随机时间 (称为补偿时间),在802.11b协议中这个平均时间总计定为360us。此外,WLAN还规定,每发送一个数据帧就要从通信对象那里接收一个ACK帧以确认通信成功,在收到ACK帧之前不发送下一个数据帧,这个等待时间总计为213us。
所以,在WLAN中发送一个1500字节的数据帧所需时间为(理论上为1090.9us):
1117+192+360+213=1882us。
这样计算下来,理论上的最大UDP吞吐量(1500B)为6.5Mbps,约为802.11b协议物理速率的60%。
对应T900,应该是这样的:
3.上面的计算过程能看到,使用的是UDP模型,并且以1500的长帧计算的;现实中用户的使用场景远比这个复杂,并且终端的数量、无线干扰对无线AP的性能影响也很大,这时候通过专用工具实测用户的速率,802.11b协议一般可以达到6Mbps左右。
综上所述,实际使用中,无线AP实际传输速率最终都会低于物理速率,也就是低于无线AP的标称速率。
合理设置T900的空中速率和串口速率
智能型数传模块采用存储转发的工作模式,空中速率与串口速率可以分别设置。
串口速率S102 | 0 - 230400;1 - 115200;2 - 57600;3 - 38400;4 - 28800;5 - 19200;6 - 14400;7 - 9600;8 - 7200;9 - 4800;15 - 460800;16 - 921600 |
空中速率S103 | 0 - 172800;1 - 230400;2 - 276480;3 - 57600;4 - 115200 |
---|
S103决定了整个网络的通信速率,网络中每个设备必须配置成相同速率。 空中速率越大,网络吞吐量越大,但是灵敏度越差。 相邻模式灵敏度大约差别1dB左右。
空中速率越高,对数传模块的收发通道要求也越高,成本和售价也越高。 串口速率对数传模块的成本和售价没有影响。所以客户在选择数传模块时,应首先确定系统需要多高的空中速率,根据空中速率和需要传输的距离确定数传模块的主要配置。至于串口速率,它只是通过设置软件设定为所需要的速率就可以了。从成本核算角度考虑,串口速率一般不低于空中速率,通常选择串口速率等于或高于空中速率。如果一次发送的数据量比较大(例如传输数据大于500字节),则应选择串口速率等于或小于空中速率,这样就不会出现数传模块缓存溢出的情况,使性价比最大化。
举例说明:
在无人机系统中,1对6传输,要求地面端(1台)与机载端(≤6 台)通信,机载端之间不需要数据通信。地面端最大发送数据量1.0KB/s。每台机载端最大发送数据量2.0KB/s。
配置与分析:
选择点对多点模式,串口波特率115200bps,空口速率172800bps,对应的最大可传输数据量为10.25KB/s。
点对多点模式下,且主从都发,主端的可传输数据量是总数据量的1/8,即:
10.25/8=1.28125KB/s>1.0KB/s,满足要求。
点对多点模式下,且主从都发,从端数据量为总数据量的1/2,即:
10.25/2=5.125KB/s>2.0KB/s,满足要求。
主端接收到每一台从端数据的时延需要440ms,接收完最后一台从端,则需要的时间为440ms*6=2.7s。
主端的可发送的数据量100B/20ms (理论上的最大值!最小单向时延是20ms) 。如果主端发送一包小于300B,则每台从端接收到主端数据的时延为20ms~60ms (对应重传3次) 。440ms是怎么来的呢?(210248/82kbps+20ms)2=440ms。
综上,1对6传输,点对多点模式,串口波特率115200bps,空口速率172800bps,在这样的配置下,主端是每秒发送1024个字节,若发送周期是100ms,则每次只能发送102个字节,而接收到从端数据的时延是440ms2.7s;从端是每秒2048个字节,若发送周期是100ms,则每次只能发送204个字节,而接收到主端数据的时延是20ms60ms。
极限测试:
点对点模式,串口波特率115200bps,空口速率172800bps。
测试每秒发送5000个字节(加上报头、校验,实际是5007个字节),双向对发:
测试每秒发送5118个字节(加上报头、校验,实际是5125个字节),双向对发:
可以看出,此时已是可以发送的最大数据量了;这种情况下,主发从收的数据是正常的,而从发主收的数据有丢包。我有个“猜想”:主端是“先保证发”,以便实现和从端的同步; 从端是“保证先收” ,以便能和主端同步上。因此,主端的发送数据要是超过允许的最大数据量的时候,就收不到从端数据了。
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !