Font Size: a A A

Network Application Performance Optimization

Posted on:2010-01-24Degree:DoctorType:Dissertation
Country:ChinaCandidate:Q WangFull Text:PDF
GTID:1118360275491234Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
We are now living in an Internet Age. Our work and life increasingly dependon the development of Internet. The expected performance of network applicationsand services is higher and higher with the rapid growth of Internet, whichcould not only rely on hardware boost. Therefore, the optimization on networkapplications and services is very important to improve the performance and ensurethe quality.On the network and transport layer, high performance applications are desiredwith the rapid growth of Internet users. In order to meet the requirement,network processors are designed combining the characteristics of GPP and ASIC.However, its unique architecture and programming model usually make programmersunable to write efficient code on it in a short time. On the application layer,although P2P Live Video Streaming becomes one of the most popular Internetservices, its quality on WLAN usually could not be satisfied due to the big differencebetween wired and wireless networks. This thesis tries to conclude thedifficulties of optimization and indicate the performance bottleneck of above twocategories of network applications. Several effective optimization algorithms arealso proposed for improving their performance.For applications on network processors, there are two difficulties in front ofthe optimizations:1. Most network processors only have software cache on chip for each processordue to the chip area, cost and power constraints. Therefore, programmersshould take full responsibility for software cache management which is neitherintuitive nor easy to most of them. Furthermore, different cache typesalso make it hard to reuse the code on x86 machines.2. For most programmers, they are used to dividing the application into severalmodules by the nature of it. Each module synchronizes with others bysynchronization locks. When one module needs more locks than the processorhas, several synchronization sections should be combined to use onelock. This will reduce the parallelism and affect the performance of packetprocessing applications.In this thesis, following optimizing algorithms are proposed to help programmers to enhance their development of packet processing applications on Intel IXP.1. Two algorithms - Critical Path Based Analysis (CPBA) and Global AdaptiveLocalization (GAL) are proposed to optimize the intra-module and intermodulesoftware cache performance, respectively.2. A program partitioning approach is proposed to optimize the synchronizationproblems caused by the combination of synchronization sections.All of the above algorithms and approaches have been implemented in Agassiz, asource to source compiler tool for C programs. The experimental results on thesimulator of Intel IXP demonstrate that these optimization techniques are veryeffective to real benchmark programs.In order to design and optimize future wireless video services, it is importantto understand principles, characteristics and limitations of current P2P Live VideoStreaming under WLANs.In this thesis, we show the system architecture and communication protocolof PPStream. Furthermore, based on the analysis of experimental results, weconclude two reasons which affect the data delivery of PPStream under WLANs:●Common 802.11x WLANs operated in half-duplex mode cannot transmitdata simultaneously in both upstream and downstream directions. Uploadtraffic thus consumes a lot of bandwidth, resulting in a severe reduction ofthe available bandwidth for downloading.●P2P is an upload encouragement methodology. Thus, it will lead to lots of"neighbors" as well as control traffic. The control traffic will also competewith download traffic for bandwidth, which will further worsen the videodata downloading.In this thesis, to address these problems, a caching proxy is proposed to cacherecent video data and upload certain data instead of WLAN clients when theyare requested by other peers on the wired Internet. Moreover, a download collaborationamong WLAN clients is promoted to further improve their downloadqualities when they are watching the same video. Finally, a self adjust connectionpolicy is used to restrict the connections of each clinet dynamically in response tothe changes of the network status.
Keywords/Search Tags:Network Processor, software cache, optimization, P2P Live Video Streaming, Wireless LAN, caching proxy
PDF Full Text Request
Related items