Welcome to the CCN-lite Project and Community!

CCN-lite is a lightweight (no bells & whistles), and functionally interoperable implementation of the Content Centric Networking protocol CCNx of XEROX PARC. It is meant for use in class room work, experimental extensions, CCN relays running on resource constraint devices, and for commercial products.

CN-lite features:
  • - tiny code base: core has less than 2.000 LoC, pure C, runs over UDP and raw Ethernet
  • - multiple Platforms: the same code runs in (UNIX) user space, Linux kernel, OMNeT++, Android, Arduino (Uno and AtMega328, 2 KiB RAM), RFduino (32 KiB RAM) and Docker
  • - current platform support includes IntelX86 as well as ARM (Raspberry Pi)
  • - multiple packet formats:ccnb, NDN, CCNx1.0, IoT-TLV, Cisco-TLV
  • - packet fragmentation support (possible native deployment, without any IP layer)
  • - multi-level scheduling support (at chunk level and packet level)
  • - Compile time options: memory debugging, HTTP server, remote configuration, fragmentation, scheduler, HMAC256 signature, etc.
  • - Python client library (rightnow, it only supports the ndn2013 wire format)
  • - comes with the fully permissive ISC license

CCN-lite currently is NOT:
  • - a full replacement of PARC's ccnd or NDN forwarding daemon (the base forwarding daemon is implemented)
  • - optimized for speed yet (data structures mostly rely on linked lists)

CCN-lite is being developed and maintained by the Computer Networks group at the Mathematics and Computer Science Dept of the University of Basel. It is completely free for academic, non-profit as well as profit use.

Documentation
As CCN-lite is a research effort, the documentation is to be found in various forms, collected in the doc/ directory of source tree and in README files. For the same reason writing documentation is driven by need or demand, so if you wish some aspect of the system better documented or a step-through example for some use case, we'll be happy to document it, just ask. Meanwhile one may use the following links to retrieve existing documentation directly from the source tree or other sources. 
  • General overview
  • CCN-lite internal data structures
  • How to getting things running (main README file)
  • Knowing about OMNeT++ integration and CCN-Lite for OMNeT++ installation
  • Getting start with CCN-Lite Docker
  • Getting start with CCN-Lite for Android devices
  • Getting start with CCN-Lite for Arduino
    More documentations are available at:
  • https://github.com/cn-uofbasel/ccn-lite/tree/master/doc
  • https://github.com/cn-uofbasel/ccn-lite/tree/master/doc/internal
 
Like it and wish to get involved ?
Should you wish to contribute in either system development efforts, in extending the current code base, or simply helping us with documenting better CCN-lite, we will be thankful. Just contact us at one of the addresses in the respective section further down.  
 
Publications
In the following list of publications/ talks/ posters are related to CCN-Lite project:
 
  • Publications

  • - M. Sifalakis, B. Kohler, C. Scherb, and C. Tschudin: An Information Centric Network for Computing the Distribution of Computations, 1st International ACM Conference in Information Centric Networking (ACM ICN 2014), September 2014, Paris, France.

  • - C. Tschudin and M. Sifalakis: "Named Functions and Cached Computations", 11th IEEE International Conference on Consumer Communications and Networking (IEEE CCNC 2013), January 2014 Las Vegas, Nevada, USA.
  • - E. Baccelli, C. Mehlis, O. Hahm, T.C. Schmidt, M. Wählisch: Information Centric Networking in the IoT: Experiments with NDN in the Wild, 1st ACM International Conference on Information-Centric Networking (ACM ICN 2014), September 2014, Paris, France.

  • - C. Tschudin and M. Sifalakis: Named Functions for Media Delivery Orchestration, Packet Video 2013 Workshop (PV2013), December 2013, San Jose, CA, USA.

  • - M. Sifalakis, S. Braun, M. Monti, and C. Tschudin: An Empirical Study of Receiver-based AIMD Flow-Control Strategies for CCN, International Conference on Computer Communications and Networks (ICCCN), July-August, 2013, Nassau, Bahamas.

  • - S. Braun, M. Monti, M. Sifalakis, and C. Tschudin: CCN and TCP co-existence in the Future Internet: Should CCN be compatible to TCP?, IFIP/IEEE International Symposium on Integrated Network Management (IM), 5th Workshop on Management of the future Internet (ManFI), May 2013, Ghent, Belgium.
  • Talks

  • - C.Tschudin with contributions from Claudio Marxer: Securing NFN-style data flow processing, NDN retreat, UCSD, Feb 2015

  • - C.Tschudin: Named Function Networking: Service chaining, big picture, division of labor boundaries, IRTF ICNRG interim meeting, Boston, Jan 2015

  • - M.Mosco and C.Tschudin: ICN Hope-By-Hope Fragmentation, CCNxCon, Palo Alto, May 2015

  • - C.Tschudin: The Name of the Networking Game . . . is Term Rewriting, ICNRG interim, Paris, Sep 2014

  • - C.Tschudin: Named Functions: Vertical or horizontal named-data extension?, NDN Community Meeting, Sep 2014.

  • - C.Tschudin and M.Sifalakis: Named Functions and Cached Computations, CCNx Community Meeting, Xerox PARC, Palo Alto, Sep 2013

  • - M. Sifalakis, M. Monti, C. Tschudin: Embedding Cloud-Centric-Networking in CCN, CCNXCon, France, Sep 2012

  • Posters

  • - CCN-lite poster 2015 at CCNxCon15 in PAlo Alto, Sep 2015

  • - CCN-lite poster 2013 at CCNxCon13 in Nice, May 2013

  • - CCN-lite poster 2012 at CCNxCon12 in Nice, Sep 2012
 
Related links
Following is a list of links that are related to the scope of CCN-lite (similar projects, relevant research, etc)  
  • Information-Centric Networking Research Group (ICNRG) @ Internet Research Task Force (IRTF)
  • CCNx project at XEROX PARC
  • Named Data Networking (NDN) project
  • Named Function Networking (NFN) project
  • Data Oriented Network Architecture (DONA)
  • Pursuing a Pub/Sub Internet (PURSUIT)
  • COntent Mediator architecture for content-aware nETworks (COMET)
  • Content-Oriented Networking (ANR Connect)
  • The CONVERGENCE Project
  • Architecture and Applications of Green Information Centric Networking (GreenICN)
  • Network of Information (NetInf)

  • NS-3 based Named Data Networking (NDN) simulator
  • Mini-CCNx simulator
  • ICN simulator
  • RIOT Operating system for the Internet of Things (IoT), with off-the-shelf CCN support
 
People and Contact Information
The following people are either currently involved or have been in the past involved in the development of CCN-lite.
 
Currently
  • Christian Tschudin - Principal Coordinator
  • Christopher Scherb
  • Dima Mansour
  • Lukas Beck
  • Manolis Sifalakis
  • Urs Schnurrenberger
In the past ..
  • Massimo Monti
  • Pierre Imai
  • Stefan Braun
  • Thomas Meyer

For any enquiries contact us at: firstname.lastname @ unibas.ch
 
Downloads
  • CCN-Lite release v.0.3.0 hosted at GitHub
  • Nightly updated development version.