2 research outputs found

    Application performance pitfalls and TCP's Nagle algorithm

    No full text

    A study of the effects of TCP designs on server efficiency and throughputs on wired and wireless networks.

    Get PDF
    Yeung, Fei-Fei.Thesis (M.Phil.)--Chinese University of Hong Kong, 2003.Includes bibliographical references (leaves 144-146).Abstracts in English and Chinese.Introduction --- p.1Chapter Part I: --- A New Socket API for Enhancing Server Efficiency --- p.5Chapter Chapter 1 --- Introduction --- p.6Chapter 1.1 --- Brief Background --- p.6Chapter 1.2 --- Deficiencies of Nagle's Algorithm and Goals and Objectives of this Research --- p.7Chapter 1.2.1 --- Effectiveness of Nagle's Algorithm --- p.7Chapter 1.2.2 --- Preventing Small Packets via Application Layer --- p.9Chapter 1.2.3 --- Minimum Delay in TCP Buffer --- p.10Chapter 1.2.4 --- Maximum Delay in TCP Buffer --- p.11Chapter 1.2.5 --- New Socket API --- p.12Chapter 1.3 --- Scope of Research and Summary of Contributions --- p.12Chapter 1.4 --- Organization of Part 1 --- p.13Chapter Chapter 2 --- Background --- p.14Chapter 2.1 --- Review of Nagle's Algorithm --- p.14Chapter 2.2 --- Additional Problems Inherent in Nagle's Algorithm --- p.17Chapter 2.3 --- Previous Proposed Modifications on Nagle's Algorithm --- p.22Chapter 2.3.1 --- The Minshall Modification --- p.22Chapter 2.3.1.1 --- The Minshall Modification --- p.22Chapter 2.3.1.2 --- The Minshall et al. Modification --- p.23Chapter 2.3.2 --- The Borman Modification --- p.23Chapter 2.3.3 --- The Jeffrey et al. Modification --- p.25Chapter 2.3.3.1 --- The EOM and MORE Variants --- p.25Chapter 2.3.3.2 --- The DLDET Variant --- p.26Chapter 2.3.4 --- Comparison Between Our Proposal and Related Works --- p.26Chapter Chapter 3 --- Min-Delay-Max-Delay TCP Buffering --- p.28Chapter 3.1 --- Minimum Delay --- p.29Chapter 3.1.1 --- Why Enabling Nagle's Algorithm Alone is Not a Solution? --- p.29Chapter 3.1.2 --- Advantages of Min-Delay TCP-layer Buffering versus Application-layer Buffering --- p.30Chapter 3.2 --- Maximum Delay --- p.32Chapter 3.2.1 --- Why Enabling Nagle's Algorithm Alone is Not a Solution? --- p.32Chapter 3.2.2 --- Advantages of Max-delay TCP Buffering versus Nagle's Algorithm --- p.33Chapter 3.3 --- Interaction with Nagle's Algorithm --- p.34Chapter 3.4 --- When to Apply Our Proposed Scheme? --- p.36Chapter 3.5 --- New Socket Option Description --- p.38Chapter 3.6 --- Implementation --- p.40Chapter 3.6.1 --- Small Packet Transmission Decision Logic --- p.42Chapter 3.6.2 --- Modified API --- p.44Chapter Chapter 4 --- Experiments --- p.46Chapter 4.1 --- The Effect of Kernel Buffering Mechanism on the Service Time --- p.47Chapter 4.1.1 --- Aims and Methodology --- p.47Chapter 4.1.2 --- Comparison of Transmission Time Required --- p.49Chapter 4.2 --- Performance of Min-Delay-Max-Delay Scheme --- p.56Chapter 4.2.1 --- Methodology --- p.56Chapter 4.2.1.1 --- Network Setup --- p.56Chapter 4.2.1.2 --- Traffic Model --- p.58Chapter 4.2.1.3 --- Delay Measurement --- p.60Chapter 4.2.2 --- Efficiency of Busy Server --- p.62Chapter 4.2.2.1 --- Performance of Nagle's algorithm --- p.62Chapter 4.2.2.2 --- Performance of Min-Delay TCP Buffering Scheme --- p.67Chapter 4.2.3 --- Limiting Delay by Setting TCP´ؤMAXDELAY --- p.70Chapter 4.3 --- Performance Sensitivity Discussion --- p.77Chapter 4.3.1 --- Sensitivity to Data Size per Invocation of send() --- p.77Chapter 4.3.2 --- Sensitivity to Minimum Delay --- p.83Chapter 4.3.3 --- Sensitivity to Round Trip Time --- p.85Chapter Chapter 5 --- Conclusion --- p.88Chapter Part II: --- Two Analytical Models for a Refined TCP Algorithm (TCP Veno) for Wired/Wireless Networks --- p.91Chapter Chapter 1 --- Introduction --- p.92Chapter 1.1 --- Brief Background --- p.92Chapter 1.2 --- Motivation and Two Analytical Models --- p.95Chapter 1.3 --- Organization of Part II --- p.96Chapter Chapter 2 --- Background --- p.97Chapter 2.1 --- TCP Veno Algorithm --- p.97Chapter 2.1.1 --- Packet Loss Type Identification --- p.97Chapter 2.1.2 --- Refined AIMD Algorithm --- p.99Chapter 2.1.2.1 --- Random Loss Management --- p.99Chapter 2.1.2.2 --- Congestion Management --- p.100Chapter 2.2 --- A Simple Model of TCP Reno --- p.101Chapter 2.3 --- Stochastic Modeling of TCP Reno over Lossy Channels --- p.103Chapter Chapter 3 --- Two Analytical Models --- p.104Chapter 3.1 --- Simple Model --- p.104Chapter 3.1.1 --- Random-loss Only Case --- p.105Chapter 3.1.2 --- Congestion-loss Only Case --- p.108Chapter 3.1.3 --- The General Case (Random + Congestion Loss) --- p.110Chapter 3.2 --- Markov Model --- p.115Chapter 3.2.1 --- Congestion Window Evolution --- p.115Chapter 3.2.2 --- Average Throughput Formulating --- p.119Chapter 3.2.2.1 --- Random-loss Only Case --- p.120Chapter 3.2.2.2 --- Congestion-loss Only Case --- p.122Chapter 3.2.2.3 --- The General Case (Random + Congestion Loss) --- p.123Chapter Chapter 4 --- Comparison with Experimental Results and Discussions --- p.127Chapter 4.1 --- Throughput versus Random Loss Probability --- p.127Chapter 4.2 --- Throughput versus Normalized Buffer Size --- p.132Chapter 4.3 --- Throughput versus Bandwidth in Asymmetric Networks --- p.135Chapter 4.3 --- Summary --- p.136Chapter Chapter 5 --- Sensitivity of TCP Veno Throughput to Various Parameters --- p.137Chapter 5.1 --- Multiplicative Decrease Factor (α) --- p.137Chapter 5.2 --- Number of Backlogs (β) and Fractional Increase Factor (γ) --- p.139Chapter Chapter 6 --- Conclusions --- p.142Bibliography --- p.14
    corecore