那些让人看不懂的错误码和解决方法

GPRS通信模块,顾名思义,就是以通信为己任的模块。所以一旦连不上服务器,开发者会变得抓耳挠腮。故此,本文介绍一下那些常见的TCP错误码。

GPRS通信模块,顾名思义,就是以通信为己任的模块。所以一旦连不上服务器,开发者会变得抓耳挠腮。

 不论是AT还是Luat开发,如果连接服务器失败,模块底层返回的错误码都是难以解读的,开发者更是茫然无措。所以本文就介绍一下那些常见的错误码。

 

TCP错误码

《在AirM2M 无线模块AT命令手册》中,已有相关章节向开发者讲述了TCP连接时出错返回的错误码:


不过开发者可能还是一头雾水——即使有错误码提示,也没有可能的原因及其相关解释,无法从根本上解决问题。

在此给大家讲解一下常见的错误码和可能造成错误的原因,帮助开发者更好的排查错误,顺利连接到服务器:

4     空间不足       检查RAM/ROM是否被用尽

5     网络问题       检查是否附着成功

6     路由表问题    域名解析失败或者在某一跳中出错

8     服务器域名/IP有误

11    服务器主动拒绝连接

12    连接服务器超时    通常是服务器不在线,或者网络通信不畅造成超时造成的

13    服务器主动关闭连接

14    连接被ISP关闭    ISP向服务器和模块发rst包,使得服务器和模块同时关闭连接

 

SSL错误码

对于一些加密传输的场景,如果出现异常,也会返回错误码。而SSL的错误码,是和TCP不同的。


同样的,在这里给大家讲解一下常见的错误码和可能造成错误的原因,帮助开发者更好的排查错误,顺利连接到服务器:

4     域名解析出错       请检查域名A记录是否正确

9     分配内存失败       请检查内存是否不足,如果是,请进行垃圾回收:http://oldask.openluat.com/article/44

11    PDP没有激活       应先激活并附着

12    TCP连接失败              服务器不在线,或者连接超时

13    握手失败       服务器不支持SSL

21~24     本地文件读取失败       下载的时候没有完整对应的文件

25    证书不符

27~28     IO错误

29~32     内存不足       请检查内存是否不足,如果是,请进行垃圾回收:http://oldask.openluat.com/article/44

35    证书校验失败       通常是证书有效期错误(不应大于2032年,尤其是自签的证书要格外注意),或者模块本地时间错误造成(NTP校准模块时钟后,再进行连接

37    连接被关闭


结束语

通过错误码表和对应的解释,开发者就可以轻松的排查问题所在,顺利连接到服务器进行数据通信了。

  • 发表于 2018-09-12 11:05
  • 阅读 ( 3281 )
  • 分类:默认分类

0 条评论

请先 登录 后评论
不写代码的码农
技术销售Delectate

43 篇文章

作家榜 »

  1. 技术销售Delectate 43 文章
  2. 陈夏 26 文章
  3. 国梁 24 文章
  4. miuser 21 文章
  5. 晨旭 20 文章
  6. 朱天华 19 文章
  7. 金艺 19 文章
  8. 杨奉武 18 文章