Porting LibRIPC to iWARP

  • Type:Bachelor Thesis
  • Date:24.09.2012
  • Supervisor:

    Prof. Dr. Frank Bellosa, Dr. Jan Stoess

  • Graduand:Felix Pepinghege
  • Links:PDF
  • Abstract:

    Cloud computing has become a major economical factor in the recent development of computer systems. Companies tend to draw computational power for their data processing from the cloud, instead of hosting their own servers, in order to save costs. The providers of cloud systems run huge and cost efficient data centers, profiting from economies of scale. In order to further reduce the costs, these data centers currently move to more power efficient systems.

    Many applications that are now used in the cloud were not created with a cloud environment in mind, but have been "moved" to the cloud. These applications usually use TCP/IP for their intercommunication mechanisms, which is the defacto standard for current applications in the Internet. Unfortunately, these TCP/IP based implementations rely on the Berkeley socket API, which does not match the demands of power efficient systems. Sockets introduce much CPU involvement, taking away precious computational time from the real applications.

    Several specialized network architectures, such as InfiniBand, overcome this issue. They make use of offloading techniques, such as RDMA, in which the network hardware takes over the responsibility of protocol processing and I/O. As a drawback, the equipment for these fabrics is usually expensive, due to their high specialization. Furthermore, the corresponding interfaces for these architectures are extensive, making it expensive to adapt existing applications.

    LibRIPC is a network library introduced to overcome the efforts that are accompanied by the usage of these architecture’s interfaces. It provides a neat, message based interface, which abstracts from any specifics of the underlying network architecture. This provides ease of integration and portability to other network fabrics, and yet does not sacrifice performance. Currently, there exist a prototypeimplementation of LibRIPC for InfiniBand.

    In this thesis, we present our port of LibRIPC to iWARP, which enables the library for its use over Ethernet. Ethernet is one of the most cost efficient network fabrics and provides capabilities for high performance networking since the upcoming of standards that specify data rates of 10 Gbit/s and above. iWARP is a protocol stack that is based upon TCP/IP, thus compatible for use in Internet based WANs. Yet it is completely independent from the socket API and its corresponding drawbacks.

    We evaluated our implementation in terms of latency and data throughput, and achieved promising results. Despite using software based iWARP instead of better performing iWARP enabled hardware, LibRIPC over iWARP outperforms TCP sockets by far. We believe that our approach can achieve even better results on appropriate hardware.


     author = {Felix Pepinghege},
     title = {Porting LibRIPC to iWARP},
     type = {Bachelor Thesis},
     address = {System Architecture Group, Karlsruhe Institute of Technology (KIT), Germany},
     month = sep # "24",
     year = 2012,
     url = {http://os.ibds.kit.edu/}