Skip to content
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

InterfaceListenAddresses called way too often #112

Open
whyrusleeping opened this issue Sep 14, 2016 · 4 comments
Open

InterfaceListenAddresses called way too often #112

whyrusleeping opened this issue Sep 14, 2016 · 4 comments
Labels
exp/novice Someone with a little familiarity can pick up help wanted Seeking public contribution on this issue status/deferred Conscious decision to pause or backlog

Comments

@whyrusleeping
Copy link
Contributor

whyrusleeping commented Sep 14, 2016

InterfaceListenAddresses gets called quite a lot, and its a method that makes syscalls to resolve 0.0.0.0 addresses into real IP addresses. These should probably be cached in some way to aleviate the stress on the kernel we cause with so many syscalls here

@whyrusleeping whyrusleeping added the help wanted Seeking public contribution on this issue label Sep 14, 2016
@ghost ghost added status/deferred Conscious decision to pause or backlog and removed status/deferred Conscious decision to pause or backlog labels Nov 12, 2016
@whyrusleeping whyrusleeping added the status/deferred Conscious decision to pause or backlog label Nov 28, 2016
@daviddias daviddias added the exp/novice Someone with a little familiarity can pick up label Aug 19, 2017
@Stebalien Stebalien added exp/wizard Extensive knowledge (implications, ramifications) required and removed exp/novice Someone with a little familiarity can pick up labels Aug 31, 2017
@Stebalien
Copy link
Member

Doing this properly is pretty difficult unless we're willing to ignore interface changes (until our cache expires). On Linux, at least, we'd need to subscribe to udev events 😨. We should do this eventually but this will be a real PITA.

@Kubuxu
Copy link
Member

Kubuxu commented Aug 31, 2017

I would say, it would be better to discover why it is called so frequently and how frequently really. If we use it to tell other nodes our addresses, I would say there would be no hard in having some short (few second) cache.

@Stebalien
Copy link
Member

I believe that is the use-case, so yes, a few second cache should be fine. However, we really should subscribe to interface changes so we can change our announced addresses (but we can do that later).

@Stebalien Stebalien added exp/novice Someone with a little familiarity can pick up and removed exp/wizard Extensive knowledge (implications, ramifications) required labels Aug 31, 2017
@Kubuxu
Copy link
Member

Kubuxu commented Aug 31, 2017

IMO then 1. it should be separate package 2. should handle BSDs, Windows and hopefully Mobile with sane fallback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
exp/novice Someone with a little familiarity can pick up help wanted Seeking public contribution on this issue status/deferred Conscious decision to pause or backlog
Projects
None yet
Development

No branches or pull requests

4 participants