From 7b89fc644317c89bba472c5457c1d4713a902a49 Mon Sep 17 00:00:00 2001 From: nathan Date: Thu, 10 Jan 2019 20:53:19 +0100 Subject: [PATCH] Added more explicit details on why UDP can fail --- src/dorkbox/network/connection/RegistrationWrapper.java | 4 ++-- .../registration/remote/RegistrationRemoteHandler.java | 2 +- test/dorkbox/network/ReconnectTest.java | 9 ++++++++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/dorkbox/network/connection/RegistrationWrapper.java b/src/dorkbox/network/connection/RegistrationWrapper.java index 086dfc2a..398a9f74 100644 --- a/src/dorkbox/network/connection/RegistrationWrapper.java +++ b/src/dorkbox/network/connection/RegistrationWrapper.java @@ -80,12 +80,12 @@ class RegistrationWrapper { } public - CryptoSerializationManager getSerializtion() { + CryptoSerializationManager getSerialization() { return endPoint.getSerialization(); } /** - * The amount of milli-seconds that must elapse with no read or write before {@link Listener:idle()} will be triggered + * The amount of milli-seconds that must elapse with no read or write before Listener.OnIdle() will be triggered */ public int getIdleTimeout() { diff --git a/src/dorkbox/network/connection/registration/remote/RegistrationRemoteHandler.java b/src/dorkbox/network/connection/registration/remote/RegistrationRemoteHandler.java index 1e9bf69a..5006a3cb 100644 --- a/src/dorkbox/network/connection/registration/remote/RegistrationRemoteHandler.java +++ b/src/dorkbox/network/connection/registration/remote/RegistrationRemoteHandler.java @@ -77,7 +77,7 @@ class RegistrationRemoteHandler extends RegistrationHandler { RegistrationRemoteHandler(final String name, final RegistrationWrapper registrationWrapper, final EventLoopGroup workerEventLoop) { super(name, registrationWrapper, workerEventLoop); - this.serializationManager = registrationWrapper.getSerializtion(); + this.serializationManager = registrationWrapper.getSerialization(); } /** diff --git a/test/dorkbox/network/ReconnectTest.java b/test/dorkbox/network/ReconnectTest.java index dd7ee876..a8580c66 100644 --- a/test/dorkbox/network/ReconnectTest.java +++ b/test/dorkbox/network/ReconnectTest.java @@ -154,7 +154,14 @@ class ReconnectTest extends BaseTest { if (waitingRetryCount-- < 0) { System.err.println("Aborting unit test... wrong count!"); if (useUDP) { - System.err.println("NOTE: UDP can fail, even on loopback!"); + // If TCP and UDP both fill the pipe, THERE WILL BE FRAGMENTATION and dropped UDP packets! + // it results in severe UDP packet loss and contention. + // + // http://www.isoc.org/INET97/proceedings/F3/F3_1.HTM + // also, a google search on just "INET97/proceedings/F3/F3_1.HTM" turns up interesting problems. + // Usually it's with ISPs. + + System.err.println("NOTE: UDP can fail, even on loopback! See: http://www.isoc.org/INET97/proceedings/F3/F3_1.HTM"); } stopEndPoints(); assertEquals(target, this.receivedCount.get());