Giter Site home page Giter Site logo

Comments (7)

SvenRoederer avatar SvenRoederer commented on July 3, 2024 1

I had a look into the code as I was interested in checking for support of the SRV-RR.
SRV-RRs might give some advantages:

  • you can define priorities --> e.g. 10 hosts with equal prio to shuffle around
  • you can define weighting inside a priority --> not sure if this can be useful
  • each referenced host can define it's own port --> flexible configuration than having to use the same port on all brokers in the RoundRobin-list

I think the SRV-RR lookup should be supplied with a separate parameter which can not be combined with "-b".

from tunneldigger.

kaechele avatar kaechele commented on July 3, 2024

What you're suggesting is to read all entries in a RRset and then add every one of the items to the list of broker candidates, right?
Because that would be something different than Round Robin DNS, which the tunneldigger client already does.

from tunneldigger.

pmelange avatar pmelange commented on July 3, 2024

Yes, exactly.

from tunneldigger.

kaechele avatar kaechele commented on July 3, 2024

Okay, looking at it, I think it can be done.

I found a corner case that would need to be checked:
Currently, there is a defined maximum of 10 brokers that the client will handle.
Given a situation in which a round-robin DNS query yields more than 10 brokers. What should the defined behaviour be?
Also we'd need to think about the case where more than one DNS name was given as a parameter and the collective number of responses is > 10. Do we just choose the first 10 or do we balance between the given DNS responses?

from tunneldigger.

pmelange avatar pmelange commented on July 3, 2024

It also depends on what type of broker selection is being used. I use 'usage' based.

With 'usage' and 'random' , I think it would make more sense to balance between the given dns entries.

But if the 'first' broker selection is used, then definitely go through all the dns entries of the first hostname before the others.

The limit of 10 brokers is a separate issue. In my personal situation it does not have an impact. But maybe it would be nice to allow setting MAX_BROKERS at compile time.

from tunneldigger.

pmelange avatar pmelange commented on July 3, 2024

The wikipedia link for "SRV record" is https://en.wikipedia.org/wiki/SRV_record

from tunneldigger.

pmelange avatar pmelange commented on July 3, 2024

I have recently modified the Freifunk tunneldigger init and hotplug scripts to be able to use SRV records. The changes can be seen here freifunk-berlin/falter-packages@29943b0

Instead of having tunneldigger itself get an SRV record, the init and horplug scripts get the SRV record and add them each as single "-b" options.

from tunneldigger.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.