Typowe opóźnienie UDP na telefonie iPhone przez 3G - czy moje numery są prawidłowe?

Aby ocenić TCP w porównaniu z UDP na iPhonie, napisałem mały serwer echa na moim komputerze i użyłem biblioteki AsyncUdpSocket na iPhonie, ale opóźnienia są zaskakująco duże i zastanawiam się, czy coś jest nie tak z moją implementacją.

Moja konfiguracja ma router wifi (Apple Airport), który ma zewnętrzny statyczny adres IP. Port używany przez serwer echa jest przekazywany do mojego komputera programistycznego.

Użyłem dwóch różnych ustawień:

iPhone -> Wifi -> Wifi Router -> Wifi -> KomputeriPhone -> 3G -> Wifi Router -> Wifi -> Komputer

Rozmiar pakietu wynosił około 10 bajtów.

W pierwszym przypadku roundtrip waha się od 9 ms do 600 ms. Głównie widziałem medianę około 300 ms, ale niektóre serie miałyby tylko 30 ms.

Drugi przypadek ... Najlepszy przypadek 2000 ms, ruch do 5000 ms.

Implementacja wyśle ​​pakiet UDP, poczekaj, aż wróci, a następnie wyślij następny.

Początkowo wierzyłem, że coś jest nie tak z implementacją, ale uruchomienie go z symulatora daje spójne opóźnienie zaledwie 7 ms.

Czy moje numery są prawidłowe, czy dzieje się coś dziwnego?

questionAnswers(2)

yourAnswerToTheQuestion