Set transport state UP/DOWN based on the state of the underlying network interface
#2989 implemented a minimal permanent UDP face that is always UP, i.e. does not perform any UP/DOWN transitions. We'd like to implement these state transitions based on the state of the "lower layer", for example:
wlan0goes down or is unplugged -> set all faces using
eth0loses an IP address -> set face using that address as its local endpoint to DOWN.
eth0reacquires an IP address -> set face back UP.
The implementation should rely on
ndn::net::NetworkMonitor signals to detect changes in the host network configuration.
Updated by Davide Pesavento about 4 years ago
Junxiao Shi wrote:
Question: how to determine which UDP faces are on
We're still working out the details of that mechanism, but the idea is that
FaceManager maintains a mapping from NICs to faces. Andrea will post a more detailed design once we get there.
Updated by Andrea Tosatto about 4 years ago
We've some design questions regarding permanent unicast faces, in particular how they behave when their face local address is removed from the interface. For example, when the permanent face local address is removed from the interface there could be the possibility to communicate with the face remote endpoint using a different local address. Is it the behavior we want for a permanent face?
Our proposed solution, that fits well our scenario, is to choose an address from the same interface when the face local address has been removed. If no other address is available the face will stick around until an address becomes available on that interface. Is this a good behavior for a permanent face? It could be strange if a user specify a local address when creating the permanent face(#3471).
Updated by Davide Pesavento almost 4 years ago
- Status changed from In Progress to Feedback
- Assignee deleted (
Andrea's internship with us is over. He already wrote most of the implementation of this feature in a local branch. I will polish the code and submit it for merging when/if time allows, most likely after the summer.
Updated by Junxiao Shi about 1 year ago
- Assignee deleted (
As I indicated, I don't know how to implement for non-Ethernet faces, so I'm releasing this issue to whoever interested.