Skip to main content
SHARE
Publication

The Common Communication Interface (CCI)...

Publication Type
Conference Paper
Journal Name
Hot Interconnects
Publication Date
Page Number
1
Volume
N/A
Conference Name
Hot Interconnects
Conference Location
Santa Clara, California, United States of America
Conference Date
-

There are many APIs for connecting and exchanging
data between network peers. Each interface varies wildly based
on metrics including performance, portability, and complexity.
Specifically, many interfaces make design or implementation
choices emphasizing some of the more desirable metrics (e.g.,
performance) while sacrificing others (e.g., portability). As a
direct result, software developers building large, network-based
applications are forced to choose a specific network API based
on a complex, multi-dimensional set of criteria. Such trade-offs
inevitably result in an interface that fails to deliver some desirable
features.
In this paper, we introduce a novel interface that both supports
many features that have become standard (or otherwise generally
expected) in other communication interfaces, and strives to
export a small, yet powerful, interface. This new interface draws
upon years of experience from network-oriented software development
best practices to systems-level implementations. The goal
is to create a relatively simple, high-level communication interface
with low barriers to adoption while still providing important
features such as scalability, resiliency, and performance. The
result is the Common Communications Interface (CCI): an
intuitive API that is portable, efficient, scalable, and robust to
meet the needs of network-intensive applications common in HPC
and cloud computing.