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.

[参考译文] CC3120MOD:CC3120MOD IP 收购时间

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/964617/cc3120mod-cc3120mod-ip-acquired-time

器件型号:CC3120MOD
主题中讨论的其他器件: CC3120

您好!

Wi-Fi 模块 CC3120MOD 角色 STA。

与 AP 的连接类型-间歇性连接。

发送到 AP 的数据包- UDP  

IP 地址- DHCP。

连接策略-自动_快速。

在 CC3120MOD 的初始化期间、STA 会从 AP 断开、扫描 会被禁用。

问题是:

当器件启动时、首次尝试连接和传输数据(从 AP 获取的 IP)需要更多时间(可能是因为之前断开 STA 的原因)。 首次成功连接"wlan"后、下一个连接速度非常快(由于内部算法)。

AP 的 DTIM 默认为-100ms。

设备可能超出 W-Fi 路由器(AP)的覆盖范围。

因此、IP 获取的代码等待示例2或1秒。 当存在 AP 时、这不是问题、但当 AP 不存在时、对于电池供电的器件而言、这段时间相对较长。

当获取 IP 的时间间隔小于1秒时、设备无法获取首次尝试或第二次尝试的 IP 地址。

哪个器件应该等待停止尝试连接到 AP 的最优超时是多少?   

此致、

Ilian

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

    Ilian、您好!

    它不能准确回答您的问题、具体取决于网络配置和负载。 在大型网络中,可以从 DHCP 服务器获取响应5秒或更多秒。 例如,许多 Linux 发行版已将 DHCP 客户机超时设置为60秒。

    1月

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

    您好、Jan、

    我知道。

    谢谢!

    此致、

    Ilian

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

    您好、Jan、

    还有一个问题。

     LAN 网络、路由具有一定范围的 IP 地址、用于静态使用和动态 IP 地址。

    当 CC3120MOD 首次连接时、DHCP 服务器会从 "动态 IP"范围为其提供 IP 地址。 之后进行下一次连接(根据 CC3120MOD 的内部算法) 它使用某些 IP 地址。如果增加了器件数量(CC3120MOD)、并且每次尝试连接时都使用所有可能的动态 IP 地址、CC3120MOD 将等待 e "new" IP 地址、因为该模块使用的最后一个地址已经指定了另一个地址。

    这意味着、CC3120MOD 在尝试连接时通常会等待很长的时间?  

    此致、

    Ilian

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

    Ilian、您好!

    我不确定您的问题是什么。 我想您正在询问当 DHCP 池范围已满并且 DHCP 服务器无法为网络中的设备分配任何新的 IP 地址时会发生什么情况。 在这种情况 下、CC3120的行为取决于设置(请参阅 SWRU455上的第5.3.1章)。

    1月

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

    您好、Jan、

    是的、这是问题的一部分。

    另一部分是:

    当有多个器件时(在我的情况下,器件连接发送并断开连接(CC3120MOD 处于休眠模式))。

    在这种情况下、当 CC3120MOD 尝试连接以接收新的 IP 地址(与上一个用于上一个连接的 IP 地址不同)时、很可能会经常发生这种情况?

    获取 IP 时使用的方法是- "快速续订功能"+"无等待"*/

    此致、

    Ilian

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

    Ilian、您好!

    这取决于 DHCP 服务器的设置。 当 DHCP 服务器为客户端分配 IP 地址时、它作为响应 DHCP 租用时间的一部分发送。 当租用时间到期时,DHCP 客户端再次请求 IP 地址。 DHCP 服务器根据自己的策略分配 IP 地址。 通常的做法是 DHCP 服务器记住客户端的 MAC 地址并分配与以前相同的 IP 地址。 但这取决于 DHCP 池已满多少。

    1月

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

    您好、Jan、

    谢谢、明白!

    在 swru455 和"C:\ti\simplelink_sdk_wi_plugin_2_40_00_22\docs\wi_host_driver_api"中、没有有关 sl_netcfg_ADDR_enable_fast_renew 设置的说明。

    您能给我指出一些文档吗、当详细说明此设置时?

    谢谢!

    此致、

    Ilian

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

    Ilian、您好!

    我无法说出宏的确切含义:

    #define SL_netcfg_ADDR_ENABLE_FAST_REALE (9) 

    我发现这个宏在 CC32xx SDK 的 power_measure 演示中使用、顺便说一下、这对我来说有点令人困惑。

    //
    //
    //! \brief 为连接的用例设置 IP 地址分配方法。
    //!
    //! \param 模式(分配方法)
    //!
    //! 返回成功或失败
    //
    //*********
    int32_t setIpAddrAllocMode (uint8_t 模式)
    {
    int32_t status =-1;
    SlNetCfgIpV4Args_t IPv4;
    
    开关(模式)
    {
    case static_ip:
    IPVL.IP =(uint32_t) SRC_IP_ADDR;
    IPVL.IpsMask =(uint32_t) sl_IPv4_VAL (255、255、255、0);
    IPv4.IpsGateway =(uint32_t) gateway_ip_ADDR;
    IPv4.IpsServer =(uint32_t) gateway_ip_ADDR;
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、SL_netcfg_ADDR_STATIC、
    sizeof (slNetCfgIpV4Args_t)、
    (uint8_t *)&IPv4);
    中断;
    案例 DHCP_NO_FAST_RESAVE_:
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、SL_netcfg_ADDR_DHCP、0、
    0);
    /*禁用"快速续订功能"*/
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、
    sl_netcfg_ADDR_DISABLE_FAST_REALREW、
    0、
    0);
    中断;
    案例 DHCP_FAST_REOP_NO_ACK:
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、SL_netcfg_ADDR_DHCP、0、
    0);
    /*启用"快速续订功能"+"无等待"*/
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、
    sl_netcfg_ADDR_ENABLE_FAST_REAL_RELEW、
    0、
    0);
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、
    SL_netcfg_ADDR_FAST_REOP_MODE_NO_WAIT_ACK、
    0、
    0);
    中断;
    案例 DHCP_FAST_REOPENE_WAIT_ACK:
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、SL_netcfg_ADDR_DHCP、0、
    0);
    /*启用"快速续订功能"+"等待 ack"*/
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、
    sl_netcfg_ADDR_ENABLE_FAST_REAL_RELEW、
    0、
    0);
    状态=
    SL_NetCfgSet (SL_netcfg_IPV4_STA_ADDR_MODE、
    SL_netcfg_ADDR_FAST_REOPENE_MODE_WAIT_ACK、
    0、
    0);
    中断;
    }
    return (status);
    } 

    1月

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

    您好、Jan、

    是的、在 TI 示例中使用了它、但没有有关此设置的信息。

    我还使用 DHCP_FAST_REOP_NO_ACK :)

    sl_netcfg_ADDR_ENABLE_FAST_REALATE 的用法类似于 sl_NetCfgSet 的配置参数。

    此致、

    Ilian

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

    请参阅编程人员指南中的第5.4章:

    Opportunistic Renew 进程–此模式类似于完全续订进程模式、但主机会在从 DHCP 服务器接收到 ACK 之前立即收到 IP 通知、并且流量也会启用。 如果发生续订失败、则会触发 IP 丢失事件、并阻止流量、直到通过完整的 DHCP 进程获取新的 IP 地址。 此模式允许主机与设备的通信速度比其他 DHCP 模式快。

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

    您好、Kobi、

    感谢您的回答!  

    CC3120MOD 用于器件、这些器件将异步连接到 Wi-Fi 路由器并发送短消息。 器件可能会有很多。

    我现在使用此 DHCP 模式。

    /*启用"快速续订功能"+"无等待"*/
    状态= sl_NetCfgSet (sl_netcfg_IPv4_STA_ADDR_MODE、sl_netcfg_ADDR_ENABLE_FAST_REAL_RELEV、0、0);
    状态= sl_NetCfgSet (sl_netcfg_IPv4_STA_ADDR_MODE、sl_netcfg_ADDR_FAST_RESAVE_MODE_NO_WAIT_ACK、0、0);

    CC3120MOD 器件的数量可能超过池中可能的 DHCP IP 地址。

    CC3120MOD 可能 超出 Wi-Fi AP 的覆盖区域。 并尝试连接。

    您能不能告诉我、在这种情况下、根据电流消耗、这是 DHCP 的最佳模式。 (获取 IP 的时间)

    我已经为获取的 IP 抽出了时间、即2.5秒。

    此致、

    Ilian

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

    如果您不在 AP 区域、则不会触发 DHCP。

    如果您是交换机 AP -快速 DHCP 续订并不理想。

    它针对与同一 AP 的静态连接的用例进行了优化-在这种情况下、您可以在偶尔断开连接的情况下更快地重新连接和获取 IP 地址。

    BR、

    Kobi

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

    您好!

    谢谢!

    在实际情况下、CC3120MOD 将切换 AP (这是可移动设备)、AP 具有一些 SSID 和 Pass (但 MAC 地址不同)。

    下一种情况是、AP 是某些 AP、但 从 DHCP 服务器使用的 IP 地址池为空。

    在这种情况下、IP 获取的时间将很长。

    这将是实际使用情况。 该器件可在一个 AP 区域内长时间进行双向传输、但移动时将切换。

    在这种情况下、应该使用不同的方法。

    在我们的情况下、静态 IP 不是方便的选择。 (限制设备数量、提前写入 IP 地址)。

    可能是快速续订应该更改吗?

    此致、

    Ilian

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

    您是否建议在迁移到新 AP 时、即使配置了快速续订也不会使用?

    您是否对此进行了测试?  

    至少当您切换到不同的配置文件时、它应该以这种方式工作。 如果您使用相同的配置文件连接、则可能会使用快速续订。

    BR、

    Kobi

      

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

     当切换到新 AP 时、我看到已执行完全扫描(时间大约为3秒)、即使新 AP 具有某些 SSID、密码和射频通道。

    我执行以下测试。 两个 AP 具有一些 SSID、PASS 和 RF 通道。

    第一个危险是打开的。 连接发送消息。

    2.打开第一个 AP,然后打开第二个 AP。

    尝试连接时、时间为~3秒。

    配置为: 快速续订功能"+"等待

    用于 WLAN 连接-自动+快速

    此致、

    Ilian

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

    对于移动用例来说似乎还可以。

    如果您希望改进此功能(并且您可以完全控制您正在使用的所有 AP)、您可以按照我们在第二个主题(https://e2e.ti.com/support/wireless-connectivity/wifi/f/968/p/966321/3571301)上讨论的那样操作扫描的信道。

    我将关闭这个话题、因为在你的另一个话题上、似乎讨论了相同的主题。

    BR、

    Kobi