CC-Tweaked/src/main/java/dan200/computercraft/shared
Jonathan Coates f74c4cc83c
Add config options for a global bandwidth limit
This uses Netty's global traffic shaping handlers to limit the rate at
which packets can be sent and received. If the bandwidth limit is hit,
we'll start dropping packets, which will mean remote servers send
traffic to us at a much slower pace.

This isn't perfect, as there is only a global limit, and not a
per-computer one. As a result, its possible for one computer to use
all/most bandwidth, and thus slow down other computers.

This would be something to improve on in the future. However, I've spent
a lot of time reading the netty source code and docs, and the
implementation for that is significantly more complex, and one I'm not
comfortable working on right now.

For the time being, this satisfies the issues in #33 and hopefully
alleviates server owner's concerns about the http API. Remaining
problems can either be solved by moderation (with help of the
//computercraft track` command) or future updates.

Closes #33
2021-07-28 15:53:22 +01:00
..
command Do not access the current server from the client 2021-07-23 23:35:13 +01:00
common Minor code style fixups 2021-06-12 22:18:35 +01:00
computer Minor code style fixups 2021-06-12 22:18:35 +01:00
data Reformat src/main/java 2021-01-14 09:09:02 +00:00
integration Minor code style fixups 2021-06-12 22:18:35 +01:00
media Better error handling in treasure disks 2021-05-31 19:24:38 +01:00
network Do not access the current server from the client 2021-07-23 23:35:13 +01:00
peripheral Ensure monitors are well-formed when placed 2021-07-25 14:18:07 +01:00
pocket Rewrite speaker networking code 2021-06-18 22:23:04 +01:00
turtle Rewrite speaker networking code 2021-06-18 22:23:04 +01:00
util Minor code style fixups 2021-06-12 22:18:35 +01:00
wired 2020 -> 2021 2021-01-06 17:13:40 +00:00
BundledRedstone.java Switch to Mojang mappings 2021-01-09 19:22:58 +00:00
Capabilities.java 2020 -> 2021 2021-01-06 17:13:40 +00:00
CommonHooks.java Add config options for a global bandwidth limit 2021-07-28 15:53:22 +01:00
Config.java Add config options for a global bandwidth limit 2021-07-28 15:53:22 +01:00
MediaProviders.java 2020 -> 2021 2021-01-06 17:13:40 +00:00
Peripherals.java Switch to Mojang mappings 2021-01-09 19:22:58 +00:00
PocketUpgrades.java Preserve registration order of upgrades 2021-01-15 15:32:11 +00:00
Registry.java Remove "*Proxy" classes 2021-06-05 10:09:28 +01:00
TurtlePermissions.java Switch to Mojang mappings 2021-01-09 19:22:58 +00:00
TurtleUpgrades.java Minor code style fixups 2021-06-12 22:18:35 +01:00