在做硬件终端与服务器通信时,由于没有服务器、没有TCP或UDP服务后台,非常不方便进行TCP、UDP协议的测试,我这里为大家分别提供TCP和UDP测试平台。
TCP测试服务平台信息:
TCP协议硬件地址(报文上报地址)IP:47.107.99.203 端口:8002
客户端TCP报文查看和报文下发地址: http://47.107.99.203:8012/
UDP测试服务平台信息:
UDP协议硬件地址(报文上报地址)IP:47.107.99.203 端口:5003
客户端UDP报文查看和报文下发地址: http://47.107.99.203:8013/
如下进行简单演示硬件终端与服务平台的交互过程
1、TCP协议终端与平台交互过程演示
1.1 打开浏览器输入客户端地址: http://47.107.99.203:8012/ ,即可访问到测试TCP协议的前端页面,如下图所示
1.2 用TCP调试工具进行测试,输入终端测试服务器地址IP:47.107.99.203 端口:8002,建立SOCKET连接,并向服务器发送报文,如下图所示
1.3 服务器接收到终端发送的报文,并实时的展示出来,如下图所示
1.4 在下发输入框,输入需要下发的报文,然后点击”SEND”按钮,服务平台将向终端发送报文,如下图所示,终端接收到服务平台发送的报文
2、UDP协议终端与平台交互过程演示
2.1 打开浏览器输入客户端地址: http://47.107.99.203:8013/ ,即可访问到测试UDP协议的前端页面,如下图所示
2.2 用UDP调试工具进行测试,输入终端测试服务器地址IP:47.107.99.203 端口:5003,建立UDP连接,并向服务器发送报文,如下图所示
2.3 服务器接收到终端发送的报文,并实时的展示出来,如下图所示
2.4 在下发输入框,输入需要下发的报文,然后点击”SEND”按钮,服务平台将向终端发送报文,如下图所示,终端接收到服务平台发送的报文
1 可以用专用工具测试,例如:Netperf(www.netperf.org):网络性能测试。主要针对基于TCP或
UDP的传输。Netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data
transfer)模式和请求/应答(request/reponse)模式。Netperf测试结果所反映的是一个系统能够以多快的速度向另外一个系统
发送数据,以及另外一个系统能够以多块的速度接收数据。Netperf工具以client/server方式工作。
server端是netserver,用来侦听来自client端的连接,client端是 netperf,用来向server发起网络测试。
2 自己写代码测试,参考:
http://kmplayer.iteye.com/blog/673226。
小熊派开发板右上角的开关拨到AT-PC一端,则模组直接与PC相连,方便调试。
指令:AT
功能:测试AT指令功能是否正常
示例:
指令:AT+CPIN?
功能:查询SIM卡是否正常,返回ready则表示SIM卡正常
示例:
指令:AT+CSQ
功能:查询模组的信号强度,第一个值为0-31则正常,99为不正常
示例:
指令:AT+CREG?
功能:查询模组是否注册上GSM网络,+CREG:0,1 表示已注册上本地网,+CREG:0,5表示注册上漫游网。
示例:
指令:AT+CERGE?
功能:查询模组是否注册上GPRS网络,+CGREG:0,1 表示已注册上本地网,+CGREG:0,5表示注册上漫游网。
示例:
指令:AT+QIFGTCNT=0
功能:配置当前场景
示例:
指令:AT+QICSGP=1, "CMNET"
功能:设置GPRS的APN,移动CMNET,联通UNINET
示例:
指令:AT+QIMODE=0
功能:设置数据传输模式,0表示非透传模式,1表示透传模式
示例:
指令:AT+QIDEACT
功能:在激活GPRS场景之前先关闭GPRS场景,确保连接正确
示例:
指令:AT+QIREGAPP
功能:启动任务并设置接入点APN、用户名和密码
示例:
指令:AT+QIACT
功能:激活移动场景
示例:
指令:AT+QILOCIP
功能:查看模组获取的IP地址
示例:
首先我们需要搭建一个TCP服务器,有两种方式:
因为M26模组直接注册的是公网ip地址,所以这里我们使用第一种方式,在Linux服务器上运行一个Python编写的tcp测试服务器:
这里的Python程序如下:
运行:
效果如下:
查询ip地址:
使用AT命令连接TCP服务器,其中第一个参数是协议类型,“TCP”则表示使用TCP协议,第二个参数是TCP服务器ip地址,也可以使用域名,最一个参数是TCP服务器开启监听的端口:
示例:
连接之后,在服务器端也可以看到:
模组连接到服务器后,服务器会自动发送消息,模组会打印出收到的信息:
使用如下的命令即可向TCP服务器发送消息,首先设置要发送数据的字节数,等待模组返回 >后,输入要发送的数据即可,如果发送的数据超过了设置的n个字节,则只发送前n个字节,后面的数据被认为是无效数据,不会发送:
示例:
发送成功看服务器上运行的TCP服务器是否收到:
通信完毕之后,可以使用下面的命令关闭TCP连接:
示例:
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)