100 likes | 257 Views
Internet2 Spring Meeting. An Introduction to UDT. Yunhong Gu gu@lac.uic.edu Robert L. Grossman (Advisor) National Center for Data Mining University of Illinois at Chicago. What's UDT?. UDT: U DP-based D ata T ransfer Protocol
E N D
Internet2 Spring Meeting An Introduction to UDT Yunhong Gugu@lac.uic.edu Robert L. Grossman (Advisor) National Center for Data Mining University of Illinois at Chicago
What's UDT? • UDT: UDP-based Data Transfer Protocol • Application level, end-to-end, unicast, reliable, connection-oriented, streaming data transport protocol. • Successor of SABUL • Open source C++ Implementation
Layered Architecture Applications UDT Socket API User Space UDT Memory Copy Avoidance OS Socket Interface Kernel UDP
Flow/Congestion Control • AIMD: Additive Increases Multiplicative Decreases • Increase Parameter • Related to available bandwidth • Bandwidth estimation: automatic parameter tuning • Decrease Factor • Randomized decrease factor: alleviate loss synchronization problem
Performance Characteristics • Efficiency • Approximately constant time to probe 90% of available bandwidth • Fairness • Intra-protocol fairness (max-min) • RTT independent • TCP friendly
Configurable Congestion Control Applications CC UDT Socket API User Space UDT OS Socket Interface Kernel UDP
How to Use UDT? • Linux • Ported to Windows, UNIX, BSD, and OS X • C++ API • socket-like API • Transport Middleware • XIO UDT Driver • C API • No changes for existing applications, just recompilation and link • Limitation: no "fork" • Java and Python wrapper
Non-objectives and limitations • Not a replacement to TCP • For bulk data transfer over high-speed wide area networks, where TCP does not work well • UDT is designed to co-exist with TCP • Built-in control algorithm is not suitable for applications requires real-time, messaging, lossy, or smooth data traffic. • Not suitable for high concurrency (a large number of flows sharing the network)
http://udt.sf.net • UDT Source Code • Stable release (v2.0) • CVS (most recent update and bug fixes) • Technical papers • Online documentation
Questions?http://udt.sf.nethttp://www.ncdm.uic.edugu@lac.uic.eduQuestions?http://udt.sf.nethttp://www.ncdm.uic.edugu@lac.uic.edu