As described and attempted to be resolved in PR #36, packets with sizes larger than the current MTU are likely to be discarded during transmission.
Currently, oversized Reliable Packets are retransmitted meaninglessly and eventually throw a "Reliable Packet not acked" error, leading to a disconnection. Oversized None (unreliable) packets are simply discarded without any guarantee of reception.
However, in the game Among Us, which uses Hazel as the underlying transport protocol, oversized packets are commonly generated under specific circumstances. Specifically, under protocol +25, the Host owns and spawns NetworkedPlayerinfo, which takes a huge packet payload. When there are more than 8 players, the Host starts sending oversized packets. These packets, sent reliably, are retransmitted ineffectively and eventually lead to loss errors, disconnecting the Host and affecting other players.
Therefore, I think it might be necessary to reconsider implementing PR #36 to fragment packets. This would help address the current issue at the transport layer.
As described and attempted to be resolved in PR #36, packets with sizes larger than the current MTU are likely to be discarded during transmission.
Currently, oversized Reliable Packets are retransmitted meaninglessly and eventually throw a "Reliable Packet not acked" error, leading to a disconnection. Oversized None (unreliable) packets are simply discarded without any guarantee of reception.
However, in the game Among Us, which uses Hazel as the underlying transport protocol, oversized packets are commonly generated under specific circumstances. Specifically, under protocol +25, the Host owns and spawns NetworkedPlayerinfo, which takes a huge packet payload. When there are more than 8 players, the Host starts sending oversized packets. These packets, sent reliably, are retransmitted ineffectively and eventually lead to loss errors, disconnecting the Host and affecting other players.
Therefore, I think it might be necessary to reconsider implementing PR #36 to fragment packets. This would help address the current issue at the transport layer.