Writing network interconnection (API, images, video streaming) on UDP.
TCP was originally implemented in 1970s and was doing a great job in the times of wired internet. But wireless networks have variable bandwidth, high random packet loss, IP and MTU change on the go and other things which cause TCP connection degradation.
In this talk, we'll discuss:
- problems of wireless networks and TCP/IP stack;
- transition of network interconnection (API, images, video streaming) from TCP to UDP;
- writing your own UDP protocols;
- forward error correction (FEC), fast retransmit vs negative ack, MTU discovery, IPMigration, packet pacer, etc.;
- specific aspects of QUIC protocol by Google. We'll also write a Wi-Fi/3G wireless network-oriented protocol.
As an example we'll use Odnoklassniki mobile client and OK Live application — first Android application for 1080p mobile streaming.