Skip to content

Timeout after sending big payload with low MTU #74

Description

@fwflunky

Hello, I'm sending big packet to client (about 32MB) with mtu 576. After a few seconds after sending started CLIENT stops acking splitted packet parts and host disconnecting client with timeout. I found that if i change
ENET_PEER_FREE_RELIABLE_WINDOWS
in client to 32 instead of 8 and change
channel->usedReliableWindows & ((((1u<< (ENET_PEER_FREE_RELIABLE_WINDOWS + 2)) - 1) << reliableWindow) | (((1u<< (ENET_PEER_FREE_RELIABLE_WINDOWS + 2)) - 1) >> (ENET_PEER_RELIABLE_WINDOWS - reliableWindow)))))
to
channel->usedReliableWindows & ((((1ull << (ENET_PEER_FREE_RELIABLE_WINDOWS + 2)) - 1) << reliableWindow) | (((1ull << (ENET_PEER_FREE_RELIABLE_WINDOWS + 2)) - 1) >> (ENET_PEER_RELIABLE_WINDOWS - reliableWindow)))))
in
enet_protocol_check_outgoing_commands
everything will work fine, but without modification of code in
enet_protocol_check_outgoing_commands
function i will get number overflow warning so i guess that not how it supposed to be. What am I doing wrong?

Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions