We are working on new protocol that we’re calling the “Asset Transfer Protocol” (atp://). This will be a system to store and serve content over UDP that we are currently only able to serve via HTTP/HTTPS. We hope to make it easier for domain owners to quickly serve their content files to incoming viewers and to be able ask for help from extra assignment-clients to more quickly serve those files to more viewers.
To reliably and quickly serve files over UDP we’re adopting the UDT protocol (http://udt.sourceforge.net/). Although UDT has a library, we unfortunately can’t use it because it prefers to assume total control of a network socket and we need our hole punched socket to carry all network communication. We’ll be building what UDT does for reliable congestion controlled packet sending as an option into the network library - the first use of this will likely be for the asset-server but we imagine there are other packet types we would pretty quickly want to move over to UDT.
We’re aiming to have our first mergeable pull request well tested and ready to go Wednesday. So far we have been refactoring the existing networking code (packet creation and packet transfer) to create a good foundation to add UDT on top of. We believe the new API will make it a lot easier to send and receive all types of packets (including unreliable packets and packets that break over MTU boundaries).
I will talk more about this, tomorrow at the Alpha meetup.