From e7db0adf07fdd2c16b7fdbdef5a5bff59d09456c Mon Sep 17 00:00:00 2001 From: Dries C Date: Sat, 4 May 2024 20:31:54 +0200 Subject: [PATCH] Update readme --- README.md | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 339efc3..3deb660 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Proxy Transport -Proxy Transport is a TCP transport protocol implementation to replace the inefficient RakNet protocol implementation +Proxy Transport is a TCP & QUIC transport protocol implementation to replace the inefficient RakNet protocol implementation between proxies and downstream servers. ## Format @@ -8,17 +8,14 @@ between proxies and downstream servers. Packet frames have the following format: - frameLength: int -- leadingByte: byte (compression indicator. 0 is Zlib, 1 is ZSTD) -- buffer: ByteBuf (the packets are formatted in the MCPE batch packet format) +- buffer: ByteBuf (the packets are formatted in the MCPE batch packet format with compression type byte in front of it) -## Dynamic Compression +## Compression -The `leadingByte` (internally referred to as `compressionType`) gives us the ability to use faster compression methods -than zlib if possible. - -### Compression ProxyTransport leverages different compression algorithms to improve bandwidth usage and CPU Usage. -The three algorithms supported are: Zlib, Zstd, Snappy +Three compression algorithms are supported: Zlib, Snappy, and Zstd. + +The compression byte has been extended with type `254` to support ZSTD as compression algorithm. #### General rule Packets are bi-directional. A packet can be sent from the client (or proxy) to the downstream server (Serverbound) or from the downstream server to the client (Clientbound).