1 / 10

An Introduction to UDT

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

werner
Télécharger la présentation

An Introduction to UDT

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. 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

  3. Layered Architecture Applications UDT Socket API User Space UDT Memory Copy Avoidance OS Socket Interface Kernel UDP

  4. 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

  5. Performance Characteristics • Efficiency • Approximately constant time to probe 90% of available bandwidth • Fairness • Intra-protocol fairness (max-min) • RTT independent • TCP friendly

  6. Configurable Congestion Control Applications CC UDT Socket API User Space UDT OS Socket Interface Kernel UDP

  7. 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

  8. 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)

  9. http://udt.sf.net • UDT Source Code • Stable release (v2.0) • CVS (most recent update and bug fixes) • Technical papers • Online documentation

  10. Questions?http://udt.sf.nethttp://www.ncdm.uic.edugu@lac.uic.eduQuestions?http://udt.sf.nethttp://www.ncdm.uic.edugu@lac.uic.edu

More Related