Help and Support
Ask a question, report a problem, request a feature...
<<  Back To Forum

New default channel directives (proposal)

by notaLamer on 2021/07/24 06:44:58 PM    
These channel directives do significantly reduce the required bandwidth (IN and OUT):
Careful setting: ##ctrl:sr=161,159,157,155,123&ir=27
Aggressive setting: ##ctrl:sr=500,1206,271,305,260&ir=167
I do not see any downsides compared to default and it's troublesome to ask each big channel owner individually to apply them. The settings have been in effect for over 2 months. I'd like to see them implemented as the new defaults for channels (or similar).

Bandwidth savings? Depends on channel, but can be 50% (from ~20KB/s to 10) or 600% (from 6KB/s to 1) depending on channel size and settings applied.

How the above was derived:
"Normal" and below usually are not long-term users, it's appropriate for them to have a lower refresh interval
"Trusted" usually are but aren't changing their shares often
Users above that are heavy-duty and may change their shares more often, hence slightly faster propagation time.

I know this is arbitrary and can be changed at will to more appropriate values.
However: I tried to select the individual numbers such that they'd not have multiple common multipliers i.e. on average no more than 1 (max. 2) groups are updated at the same time. This simple principle is not followed by  default values.

The full explanation as posted in Tixati User Group Channel is copy-pasted below.
Time: May 2nd, 2021
From: notaLamer
Topic: Tixati Channel bandwidth optimization via directives - Results!
This is important to everyone who wants to host their own channel! Spare your users from high bandwidth: read on!

There's a wiki page that details so called 'channel directives' that control channel behavior:

If you dig deeper you will find there're settings controlling how often information is shared between joined users. This directly affects the bandwidth consumed by a channel.
And yes: it's possible to reduce the bandwidth. drastically!

> 'Why am I sending/receiving 3 times as much data in the omega channel compared to any other channel.'
> There are 189 people in there compared to this channel, and still 3 times as much data. I know 30KB/s isn't "A lot" but I have pretty limited bandwidth.

hehe :)

Currently TUG is at ~9-13KB/s, 170 users, 57k shares. It used to be at over 20KB/s. Not many can afford to idle in such a channel 24/7.

Today I tested dsc:cqtrmrfvac3nta3ndtoo3n2trq6wxa6aef7bleragj4evcjvcscq?dn=Tixati%20User%20Group%20-%20Help%20and%20Support and dsc:sc5u346if5uic4vwxjqrwyzt36sfg3bqf3rdk2jjeqakj7fa7qdq?dn=Another%20World%20Is%20Possible by joining with a fresh Tixati 2.81 client without port-forwarding (behind NAT).

TUG has an older version of the settings applied. Ask a manager/owner for current. Gotta be along the lines of ##ctrl:sr=161,159,157,155,123&ir=27
To my knowledge, dsc:2u7altl2sd2qy7h2d6emmabxpyutnpsqunkkmufmlrhdgcgpu4ua?dn=Sexati has latest: ##ctrl:sr=500,1206,271,305,260&ir=167 (4.6k shares, 36 users, ~1.1KB/s)
Same settings were now applied to Another World is Possible.

Note: TUG's current settings are already a big improvement over default.

=== Findings

Channels stabilized at after 30 minutes:
- TUG: 170 users, 57k shares, 7 / 9 KB/s bandwidth (down/up)
- AWIS: 314 us, 93k sh, 5 / 7 KB/s

Latest settings: Twice as many users, 1.6x shares and much less bandwidth! Win-win!

Forum/Chat/Private messages are instant despite these changes.
Channel join, MOTD, chat were instant.
Information tab was fetched immediately (the burning logo in ASCII took some time to be downloaded though)

Stop reading here if you are convinced and apply the settings to your channel now :)

It'd be nice to know what kind of improvement it made (please capture the new figures ~20min after applying new settings)


Surprisingly, the channel shares peaked before 30min. It looks like the client clears up old user info although it is still propagated by other users (who have retained this data and not yet removed).

AWIS: 12min in, 118k shares
TUG: 9min in, 83k shares

Maybe this marks the point when ALL share data has been successfully fetched and if we observe for longer (30min mark), we will see Tixati will eventually remove stale data of long offline users.

Both channels peaked at around 80KB/s download when fetching share info albeit at different times.

=== Explanation

As far as I understand these...

sr: share rate. How often in seconds are shares rebroadcast? Per-group settings
ir: information rate. How often in s is channel information rebroadcast? Gotta be responsible for MOTD/Information tab at least

Now neither info nor shares change often. We don't need to update them often. It's unclear how long previously broadcasted messages are retained 'in the network' and whether new users can start sharing immediately when they change theirs.
However since most users stay connected to channels 24/7, it's more important to keep bandwidth low, at the expense of update propagation taking like 3-10 minutes.

There's also the "maximum broadcast rate" (mr) ... I deleted my explanation attempt. This needs clarification from the dev. If it's in "broadcast/minute" then why are normal users allowed 30bc/min but stars and mod+ only 10bc/min?

Anyway these settings are a great optimization and you should give them a try! Report any issues if you encounter them.

Thanks for reading to the end :)

This web site is powered by Super Simple Server