• DocumentCode
    2094919
  • Title

    Automatic specialization of protocol stacks in operating system kernels

  • Author

    Bhatia, Sapan ; Consel, Charles ; Le Meur, Anne-Françoise ; Pu, Calton

  • Author_Institution
    LaBRI/INRIA, Talence, France
  • fYear
    2004
  • fDate
    16-18 Nov. 2004
  • Firstpage
    152
  • Lastpage
    159
  • Abstract
    Fast and optimized protocol stacks play a major role in the performance of network services. This role is especially important in embedded class systems, where performance metrics such as data throughput tend to be limited by the CPU. It is common on such systems to have protocol stacks that are optimized by hand for better performance and smaller code footprint. We propose a strategy to automate this process. Our approach uses program specialization, and enables applications using the network to request specialized code based on the current usage scenario. The specialized code is generated dynamically and loaded in the kernel to be used by the application. We have successfully applied our approach to the TCP/IP implementation in the Linux kernel and used the optimized protocol stack in existing applications. These applications were minimally modified to request the specialization of code based on the current usage context, and to use the specialized code generated instead of its generic version. Specialization can be performed locally, or deferred to a remote specialization server using a novel mechanism. Experiments conducted on three platforms show that the specialized code runs about 25% faster and its size reduces by up to 20 times. The throughput of the protocol stack improves by up to 21%.
  • Keywords
    operating system kernels; performance evaluation; program compilers; telecommunication traffic; transport protocols; Linux kernel; TCP/IP implementation; automatic specialization; data throughput; embedded class systems; network services; operating system kernels; optimized protocol stacks; performance metrics; program specialization; specialized code generation; Data processing; Embedded system; Kernel; Linux; Measurement; Operating systems; Protocols; TCPIP; Testing; Throughput;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Local Computer Networks, 2004. 29th Annual IEEE International Conference on
  • ISSN
    0742-1303
  • Print_ISBN
    0-7695-2260-2
  • Type

    conf

  • DOI
    10.1109/LCN.2004.28
  • Filename
    1367213