-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multiple IP address support in ResolvedNodeData structure and cache #11149
Multiple IP address support in ResolvedNodeData structure and cache #11149
Conversation
Added expiry time to ResolvedNodeId, which the resolvers should set as appropriate from the TTL. Using ResolvedNodeData for the DNS-SD cache directly means we don't need to copy everything over, which is becoming more cumbersome as we add support for more addresses. Also change test to use test time structure.
Right now, just use addr0, but we should really push all the addresses and interfaces toconnectedhomeip/src/controller/CHIPDeviceController.cpp Lines 557 to 567 in bd58613
This comment was generated by todo based on a
|
For now, just provide addr 0, but this should really provide all and
This comment was generated by todo based on a
|
Expand the results to include all the addresses.connectedhomeip/src/lib/dnssd/Discovery_ImplPlatform.cpp Lines 580 to 589 in bd58613
This comment was generated by todo based on a
|
use pool to allow dynamicconnectedhomeip/src/lib/dnssd/Resolver.h Lines 40 to 50 in bd58613
This comment was generated by todo based on a
|
Maintaining size for darwin, linux and android, other have the cache size called out explicitly in the platform config so the platform maintainers can set this as appropriate.
PR #11149: Size comparison from eddd4f7 to 2ebc4fa Increases above 0.2%:
Increases (27 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, qpg)
Decreases (27 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, qpg)
Full report (37 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
@cecille Can you resolve the conflicts? Should be able to get this in then! |
…tiple_addresses Includes changes to previous code to deal with clock changes.
Use seconds?connectedhomeip/src/lib/dnssd/Discovery_ImplPlatform.cpp Lines 583 to 589 in e195b11
This comment was generated by todo based on a
|
PR #11149: Size comparison from 613f27f to e195b11 Increases above 0.2%:
Increases (27 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, qpg)
Decreases (27 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, qpg)
Full report (38 builds for efr32, esp32, k32w, linux, mbed, nrfconnect, p6, qpg, telink)
|
This is rebased now. If we're happy to continue the discussion on the linked issue, I think we can resolve the conversation from earlier and put this in. |
…roject-chip#11149) * Add multiple addresses to ResolvedNodeData * Use ResolvedNodeData directly for cache. Added expiry time to ResolvedNodeId, which the resolvers should set as appropriate from the TTL. Using ResolvedNodeData for the DNS-SD cache directly means we don't need to copy everything over, which is becoming more cumbersome as we add support for more addresses. Also change test to use test time structure. * Update src/lib/dnssd/DnssdCache.h Co-authored-by: Boris Zbarsky <[email protected]> * Address review comments. * Reduce mdns cache size for platforms. Maintaining size for darwin, linux and android, other have the cache size called out explicitly in the platform config so the platform maintainers can set this as appropriate. * Restyled by whitespace Co-authored-by: Boris Zbarsky <[email protected]> Co-authored-by: Restyled.io <[email protected]>
Problem
Two(ish) related issues (in two commits)
Change overview
Not yet done - any time of multiple address support in device or session layers
Testing
Cache tests cover cache changes, operational addresses covered by cirque tests. Also tested manually.