UDP Retry without Disconnect?

Options
CBernstein
edited September 2014 in DotNet
Is there any way to have Photon 4 .Net to the Photon Cloud retry failed UDP messages but never disconnect? We would like a reliable UDP message to try a few times and then abandon the message without a disconnect from exceeding either DisconnectTimeout or SendCountAllowance.

Comments

  • Tobias
    Options
    There is only the option to send something unreliable or reliable.
    In the background, we always use a few reliable messages to keep track of the connection and if the other side is still reacting. Even if you send nothing at all. So there is not really a way to keep the connection if packages don't get through.

    Some things you might try:

    Enable CRC Checks. Before you connect, set:
    loadBalancingClient.loadBalancingPeer.CrcCheckEnabled = true;
    This allows client and server to discard broken packages without disconnecting the other side.
    You can monitor a client's loss due to that by checking loadBalancingClient.loadBalancingPeer.PacketLossByCrc. Log it and check it it's high when a client drops.


    You could experiment with the lowest possible MTU size. Set:
    loadBalancingClient.loadBalancingPeer.MaximumTransferUnit = 520;
    This keeps all packages under a that size, which might be better in some networks. Using a higher value here does not make a lot of sense though.

    It's unclear if either helps but worth a try. Tomorrow I will check any logs and workflow descriptions you can send.