Selective Instrumentation and Packet Association for Profiling and Debugging Network Protocol Stacks

碩士 === 國立交通大學 === 資訊科學與工程研究所 === 98 === New network communication applications such as cloud computing boost the need of the small and compact interaction gadgets. Such gadgets are compact and small devices that developers have tried hard to make them more reliable and powerful. Tools like kernal pr...

Full description

Bibliographic Details
Main Authors: Li, Tsung-Hung, 李宗鴻
Other Authors: Tsao, Shiao-Li
Format: Others
Language:zh-TW
Published: 2010
Online Access:http://ndltd.ncl.edu.tw/handle/44070773642326286652
Description
Summary:碩士 === 國立交通大學 === 資訊科學與工程研究所 === 98 === New network communication applications such as cloud computing boost the need of the small and compact interaction gadgets. Such gadgets are compact and small devices that developers have tried hard to make them more reliable and powerful. Tools like kernal profilers and packet tracer help developers to analyze the behavior of the device internally and externally, respectively.. However, there still does not have any tool that can capture the overall networking behavior and help us to investigate and debug the network protocol stack or networking protocol. This thesis aims to develop a selective instrumentation and packet association mechanism that can automatically select network kernel functions and patch instructions to record the times functions start or termine as well as the information used to associate kernel function log with packet tracers's outputs. The selection instrumentation uses the special data-structure Linux Kernels use to maintain packets being processed to identify the network kernel functions. Experimental results show that the selective instrumentation and packet association mechanism is very effective and can indeed help to derive the overall networking behavior, including both internal network kernel operations and external communication behaviors. In the future, we could extend the work of this thesis to develop an analyzer that can fileter irrelated information and automatically thynthesize the networking behavior of interest, and help users to identy design flaws or the bottlenecks of the networking protocols or network kernels.