This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC3235SF:sl_connect 返回错误代码(-114)

Guru**** 2343440 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1503264/cc3235sf-sl_connect-returns-error-code--114

器件型号:CC3235SF

工具/软件:

下面是我尝试与服务器连接的顺序:

1.创建套接字:

_i16 sockID =-1;
SockAddr.sin_family = SL_AF_INET;
SockAddr.sin_port = sl_Htons ((uint16_t) 8001);

SockAddr.sin_addr.s_addr = sl_Htonl (
SL_IPV4_VAL ((ipaddr[0])、(ipaddr[1])、(ipaddr[2])、(ipaddr[3]));

SockAddrSize = sizeof (SockAddr);  

/*创建套接字 IPv4*/

sockID = sl_Socket (SL_AF_INET、SL_SOCK_STREAM、0);

2.设置为非阻塞套接字:

_i16 status =-1;
_i8 enableOption = 1;

状态= sl_SetSockOpt (sockID、SL_SOL_SOCKET、SL_SO_NONBLOCKING、
(_u8*)&enableOption、sizeof (enableOption);

3.尝试连接:

SlSockAddrIn_t SockAddr;
SlSocklen_t SockAddrSize;


status =  sl_Connect (sockID、(SlSockAddr_t*)&SockAddr、SockAddrSize);


当我尝试使用上述函数连接服务器时、我收到的错误代码是-114。 在检查网络处理器指南中的此错误代码时、据我了解、服务器正忙、无法接受请求。 这是正确的吗?  
有没有办法解决这个问题?
收到此错误代码后、我会等待大约2秒、然后再次尝试 sl_Connect。 我收到同样的-114。
出现此情况的原因是什么?解决此问题的方法是什么? 还是需要关闭此套接字并重试?  



  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    此错误意味着套接字连接正在进行、因为您在非阻塞模式下工作。

    在这种情况下、您通常会像以前一样等待并重试、但服务器连接不会占用太多时间、因此如果服务器的一切正常、您应该能够进行连接。

    如果切换到阻塞模式并尝试连接、会发生什么情况? 工作原理?

    如果没有、则服务器会损坏某些东西、空气嗅探器会发出一些光。

    有任何疑问吗?

    您是否能够从另一台设备连接到此服务器?

    此致、

    Shlomi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我尝试重新连接、这两者之间留出了两个时间间隔。
    我只想在非阻塞状态下运行
    如果我断开与服务器的连接。 并为服务器提供一些冷却(大约一小时)。 我可以连接到服务器。
    否、我也无法连接其他设备。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这听起来像是服务器有问题。

    不知道您所说的冷却是什么意思、但如果它最终连接、则肯定是服务器损坏了。

    特别是在其他客户端无法连接的情况下。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、
    您是否有任何想法、我需要在服务器中验证哪个区域?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    你看到的是完全错误的。 您的服务器不应以这种方式运行。 这可能是服务器本身、服务器配置或网关/防火墙和路由表问题。 谁知道...

    您可以尝试捕获 CC3235和服务器之间的网络通信(例如使用 Wireshark 或 tcpdump)、并在此处上传此日志。 但没有人能解决第三方服务器的问题。 我们只能为您提供一些提示。

    BTW ...你用什么作为服务器? 它是 Apache、IIS 或您自己的服务器代码? 其中是服务器所在的位置。 在您自己的硬件上还是在云端、例如 Azure 或 AWS?

    1月