Tài liệu Supporting Configurable Congestion Control in Data Transport Services ppt

23 461 0
Tài liệu Supporting Configurable Congestion Control in Data Transport Services ppt

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 :: 23 udt.sourceforge.net Supporting Configurable Congestion Control in Data Transport Services Yunhong Gu and Robert L. Grossman Laboratory for Advanced Computing National Center for Data Mining University of Illinois at Chicago November 16, 2005 udt.sourceforge.net 2 :: 23 udt.sourceforge.net Outline OVERVIEW DESIGN OF UDT/CCC PERFORMANCE EVALUATION CONCLUSIONS AND FUTURE WORK 3 :: 23 udt.sourceforge.net >> OVERVIEW DESIGN OF UDT/CCC PERFORMANCE EVALUATION CONCLUSIONS AND FUTURE WORK 4 :: 23 udt.sourceforge.net From UDT to Composable UDT  UDT (UDP-based Data Transfer Protocol)  New application level protocol: add reliability and congestion control to UDP  New congestion control algorithm designed for high performance data transfer over high-speed wide area networks  Open source: http://udt.sourceforge.net  Composable UDT  An expansion to UDT with ability to allow users to configure the UDT library: congestion control, data reliability, etc.  Compile time option: no performance drop for the original UDT 5 :: 23 udt.sourceforge.net UDT with Configurable Congestion Control (CCC)  CCC support is the first step of Composable UDT  UDT/CCC allows user to implement or assign a specific congestion control algorithm to a UDT connection  Per connection control  Dynamically configurable 6 :: 23 udt.sourceforge.net Motivations  Easy implementation and deployment of new control algorithms  Easy evaluation of new control algorithms  Application awareness support and dynamic configuration 7 :: 23 udt.sourceforge.net >> DESIGN OF UDT/CCC PERFORMANCE EVALUATION CONCLUSIONS AND FUTURE WORK OVERVIEW 8 :: 23 udt.sourceforge.net UDT with Configurable Congestion Control UDP Socket API Applications UDT UDT Socket CC CC Callbacks Memory Copy Bypass 9 :: 23 udt.sourceforge.net Methodologies  Packet sending control  Window-based, rate-based, and hybrid  Control event handling  onACK, onLoss, onTimeout, onPktSent, onPktRecved, etc.  Protocol parameters access  RTT, loss rate, RTO, etc.  Packet extension  User-defined control packets 10 :: 23 udt.sourceforge.net Supported Protocols  Reliable UDP-based Protocols  Standard TCP (TCP NewReno)  Loss-based TCP Variants  Delay-based TCP Variants  Group-based Protocols  And more… [...]... protocol with support for configurable congestion control  Easy implementation and deployment of new control algorithms  Easy evaluation of new control algorithms  Application awareness support and dynamic configuration  Pros  Simplicity and expressiveness  Easily deployable  Cons  CPU overhead udt.sourceforge.net 21 Future Work  Keep improving  More built -in congestion control package  More... BiC TCP TCP Westwood 73 / +132-6 11 / +192-29 8 / +27-1 11 / +192-29 27 / +145-2 CFAST FAST TCP 37 / +351-2 udt.sourceforge.net 17 Similarity and Overhead  CTCP vs Linux TCP  Aggregate throughput  Jain’s fairness index  Stability index (standard deviation) Flow # Throughput TCP CTCP Fairness TCP CTCP Stability TCP CTCP 1 112 122 1 1 0.517 0.415 2 191 208 0.997 0.999 0.476 0.426 4 322 323 0.949... monitoring function  Support a large variety of protocols  Reliable UDT blast  TCP and its variants (both loss and delay based)  Group transport protocols udt.sourceforge.net 16 Simplicity & Expressiveness CCC Base Congestion Control Class CGTP CTCP TCP NewReno CUDPBlast Group Transport Protocol Reliable UDP Blast 28 CVegas CScalable CHS CBiC CWestwood TCP Vegas Scalable TCP HighSpeed TCP BiC TCP TCP Westwood... udt.sourceforge.net 21 Future Work  Keep improving  More built -in congestion control package  More configuration abilities (e.g., data reliability and timeliness) udt.sourceforge.net 22 The End Thank You! For More Information Please visit: SC|05 Exhibition Booth 2430 Or online at http://udt.sf.net udt.sourceforge.net 23 ... CTCP uses about 100% more times of CPU as Linux TCP Receiver: CTCP uses about 20% more CPU than Linux TCP  Source of overheads  Additional memory copy and context switch  ACK Frequencies is one of the major factors Flow # 1 2 4 8 16 32 64 2 3.28 3.91 4.32 4.05 4.59 5.41 6.63 4 3.15 3.77 4.36 4.87 5.07 5.31 6.58 8 3.20 3.95 1.45 4.32 5.60 5.27 6.15 ACK Intervals 16 3.43 3.59 3.08 3.84 4.41 4.99 5.89... public: CUDPBlast() {m_dCWndSize = 83333.0;} public: void setRate(int mbps) { m_dPktSndPeriod = (m_iSMSS * 8.0) / mbps; } protected: static const int m_iSMSS = 1500; }; udt.sourceforge.net 11 Examples: Reliable UDP Blast UDT::setsockopt(usock, 0, UDT_CC, new CCCFactory, sizeof(CCCFactory)); CUDPBlast* cchandle = NULL; int size = sizeof(CUDPBlast); UDT::getsockopt(usock, 0, UDT_CC,... Can it be used to implement most control protocols?  Similarity  Can Composable UDT based implementations reproduce the performance of their native implementations?  Overhead  Will the overhead added by Composable UDT be too large? udt.sourceforge.net 15 Simplicity & Expressiveness  Eight event handlers, four protocol control functions, and one performance monitoring function  Support a large variety... sizeof(CUDPBlast); UDT::getsockopt(usock, 0, UDT_CC, &cchandle, &size); if (NULL != cchandle) cchandle->setRate(500); cchandle->setRate(1000); udt.sourceforge.net 12 Examples: TCP NewReno virtual void onACK(const int& ack) { if (three duplicate ACK detected) { // ssthresh = max{flight_size / 2, 3} // cwnd = ssthresh + 3 * SMSS } else if (further duplicate ACK detected) { // cwnd = cwnd + SMSS } else if (end fast . 23 udt.sourceforge.net Supporting Configurable Congestion Control in Data Transport Services Yunhong Gu and Robert L. Grossman Laboratory for Advanced Computing National. Computing National Center for Data Mining University of Illinois at Chicago November 16, 2005 udt.sourceforge.net 2 :: 23 udt.sourceforge.net Outline OVERVIEW DESIGN

Ngày đăng: 15/01/2014, 15:59

Từ khóa liên quan

Mục lục

  • Supporting Configurable Congestion Control in Data Transport Services

  • Outline

  • >> OVERVIEW

  • From UDT to Composable UDT

  • UDT with Configurable Congestion Control (CCC)

  • Motivations

  • >> DESIGN OF UDT/CCC

  • UDT with Configurable Congestion Control

  • Methodologies

  • Supported Protocols

  • Examples: Reliable UDP Blast

  • Slide 12

  • Examples: TCP NewReno

  • >> PERFORMANCE EVALUATION

  • Evaluation

  • Simplicity & Expressiveness

  • Slide 17

  • Similarity and Overhead

  • CPU Overhead vs. ACK Frequencies

  • >> CONCLUSIONS AND FUTURE WORK

Tài liệu cùng người dùng

Tài liệu liên quan