I’m trying to solve a problem we are having with Automatic Relay Selection, and in researching the issue, I have come across reference to several Settings that appear to have an impact on which Relay a client will attempt to register with.
When I attempt to find additional information about these settings … there’s LITTLE to NOTHING available about them.
Two examples are “BESRelaySelection_RelayWeight” & “BESRelaySelection_RelayPriority”. I find them referenced in a few older Forum Posts, but nothing in the Settings documentation or the Relay Affiliation documentation. Is this a setting that is not supposed to be public? If not, why is it not documented? What other client settings exist that are not documented? Is there better documentation that lists all the available Client/Relay/Server settings available?
The knowledge center also includes some random references to client settings that are not documented in the above wiki page.
You should add these and any other settings you find to the wiki page, even if you don’t have any info other than just the name of the setting. Think of it as a stub that needs to be completed at a later time.
I also think it is a good idea to link to this post and any similar posts that mention client settings on the bottom of that page under a “Related” and “Related Forum Posts” heading.
There have been discussions on this and many settings give very fine control and often should be used with the guidance of someone who knows the ramifications.
The settings you mention are Relay specific settings (the client ignores them)
For the priority setting the best description is: All relays of priority 0 are selected before all relays of priority 1, etc.
For the RelayWeight, I’m not even sure the document I can see makes sense so I’ll have to find a better way of explaining it when I know what it does…
This is purely a guess, but I think this is what RelayWeight does:
If the RelayWeight is the same for all relays, which it should be by default, then when the client performs relay selection, all other things being equal, it will pick one of the relays at random.
If the RelayWeight is not the same for all relays and all other things being equal when the client does relay selection, then it will tend to pick the relay with the higher weight more often and those with lower weight less often.
Example:
If you have multiple relays in the same building, and some are desktop computers, while others are proper servers, the servers can handle more clients than the desktops, so giving the servers more weight would automatically cause them to take a larger load of clients.
I find the lack of documentation of client settings quite annoying. A while back I thought of checking all of the strings in the BES Client executable for possible client settings, and then I just moved on and forget about doing that.
Ironic enough, I just emailed our platform agent developer regarding this, literally 15 minutes ago. I am waiting for a response on updated internal documentation for newer releases and a time line for these updates. I may just proceed forward on releasing existing internal client setting documentation we have this week after reviewing and sanitizing it a little. Will keep the community here posted.
There has always been a fear that customers will start messing around with some of the more impacting settings and shoot their deployments in the foot. I think we already give our customers enough to shoot themselves in the foot with so I think some of the fear is misplaced. Disclaimers and best practices to follow on the release will be prominent.
For “BESRelaySelection_RelayWeight” & “BESRelaySelection_RelayPriority”:
These one’s, I do not see, so maybe they are hidden internally as well (maybe they were published around the time older version of the agents and are now deprecated and untested in current agent versions, don’t know).
I posted a subset of strings of the BES Client. My guess is that the other settings are in the Root & Relay EXEs. I haven’t gotten that far yet to get those as well.
I would guess that the BES Client only contains the strings that it reads, not ones that it doesn’t. Even so it is possible that you are correct and they are just missing.
The documentation seems to suggest that this doesn’t have to be a onetime password and can instead be a static password that any client could use to get going.