Content centric networking

Last updated

In contrast to IP-based, host-oriented, Internet architecture, Content-Centric Networking (CCN) emphasizes content by making it directly addressable and routable. Endpoints communicate based on named data instead of IP addresses. CCN is characterized by the basic exchange of content request messages (called "Interests") and content return messages (called "Content Objects"). It is considered an information-centric networking (ICN) architecture.

Contents

The goals of CCN are to provide a more secure, flexible, and scalable network, thereby addressing the Internet's modern-day requirements for protected content distribution on a massive scale to a diverse set of end devices. CCN embodies a security model that explicitly secures individual pieces of content rather than securing the connection or "pipe." It provides additional flexibility using data names instead of host names (IP addresses). Additionally, named and secured content resides in distributed caches automatically populated on demand or selectively pre-populated. When requested by name, CCN delivers named content to the user from the nearest cache, traversing fewer network hops, eliminating redundant requests, and consuming fewer resources overall. CCN began as a research project at the Palo Alto Research Center (PARC) in 2007. The first software release (CCNx 0.1) was made available in 2009. [1] CCN is the ancestor of related approaches, including named data networking. CCN technology and its open-source code base were acquired by Cisco in February 2017. [2]

History

The principles behind information-centric networks were first described in the original 17 rules of Ted Nelson's Project Xanadu in 1979. In 2002, Brent Baccala submitted an Internet-Draft differentiating between connection-oriented and data-oriented networking and suggested that the Internet web architecture was rapidly becoming more data-oriented. [3] In 2006, the DONA [4] project at UC Berkeley and ICSI proposed an information-centric network architecture, which improved TRIAD [5] by incorporating security (authenticity) and persistence as first-class primitives in the architecture. On August 30, 2006, PARC Research Fellow Van Jacobson gave a talk titled "A new way to look at Networking" at Google. [6] The CCN project was officially launched at PARC in 2007. In 2009, PARC announced the CCNx project (Content-Centric Network), publishing the interoperability specifications and an open-source implementation on the Project CCNx website on September 21, 2009. The original CCN design was described in a paper published at the International Conference on emerging Networking EXperiments and Technologies (CoNEXT) in December 2009. [7]

Annual CCNx Community meetings were held in 2011, [8] 2012, [9] 2013 [10] and 2015. [11]

The protocol specification for CCNx 1.0 has been made available for comment and discussion. Work on CCNx happens openly in the ICNRG IRTF research group.

Specification

The CCNx specification was published in some IETF drafts. The specifications included:

Seamless data integration within an open-run environment was proposed as a major contributing factor in protecting the security of cloud-based analytics and key network encryption. [12] The driving force in adopting these heuristics was twofold: Batch-interrupted data streams remaining confined to an optimal run environment, and secure shared cloud access depending upon integrative analytic processes. [13]

Software

The CCNx software was available on GitHub.

Motivation and benefits

The functional goal of the Internet Protocol as conceived and created in the 1970s was to enable two machines, one comprising resources and the other desiring access to those resources, to have a conversation with each other. The operating principle was to assign addresses to end points, thereby enabling these end points to locate and connect with one another.

Since those early days, there have been fundamental changes in the way the Internet is used — from the proliferation of social networking services to viewing and sharing digital content such as videos, photographs, documents, etc. Instead of providing basic connectivity, the Internet has become largely a distribution network with massive amounts of video and web page content flowing from content providers to viewers. Increasingly, today's internet users demand faster, more efficient, and more secure access to content without concern to where that content might be located.

Networks are also used in many environments where the traditional TCP/IP communication model doesn't fit. The Internet of Things (IoT) and sensor networks are environments where the source-destination communication model doesn't always provide the best solution.

CCN was designed to work in many environments from high-speed data centers to resource-constrained sensors. CCN aims to be:

Basic concepts

Content Object messages are named payloads that are network-sized chunks of data. Names are a hierarchical series of binary name segments that are assigned to Content Objects by content publishers. Signatures are cryptographic bindings between a name, a payload, and the Key Id of the publisher. This is used for provenance. Interest messages are requests for Content Objects that match the name along with some optional restrictions on that object.

The core protocol operates as follows: Consumers request content by sending an Interest message with the name of the desired content. The network routes the interest based on the name using longest prefix match. The interest leaves the state as it traverses the network. This state is stored in the Pending Interest Table (PIT). When a match is found (when an Interest matches a Content Object) the content is sent back on the reverse path of the Interest, following the PIT state created by the Interest.

Because the content is self-identifiable (via the name and the security binding) any Content Object can be cached. Interest messages may be matched against caches along the way, not only at the publishers.

Distributed caching within a content-centric network is also possible, requiring multi-functional access parameters across the database. This essentially enables shared network encryption algorithms to employ role-based access limitations to users based on defined authorization levels. [15]

CCNx releases

CCNx 0.x

Interests match Content Objects based on name prefixes. For example, an Interest for /a/b would match a Content Object named /a/b/c/d or /a/b. Interests include restrictions in the form of selectors. These help the network select which of the possible prefix matches are actual matches. For example, an Interest might exclude certain names, ask for a minimum or a maximum number of extra name segments, etc.

Content Objects have an implicit final name component that is equal to the hash of the Content Object. This may be used for matching to a name.

Packet encoding is done using CCNB (a proprietary format based on a type of binary XML).

The last version of this branch is 0.8.2 Software is available under a GPL license. Specifications and documentation are also available.

CCNx 1.x

CCNx 1.x differs from CCNx 0.x in the following ways: [16]

Interests match Content Objects on exact names, not name prefixes. Therefore, an Interest for /a/b/ will only match a Content Object with the name /a/b. Interests can restrict matches on the publisher KeyID or the object's ContentObjectHash.

A nested type–length–value (TLV) format is used to encode all messages on the wire. Each message is composed of a set of packet headers and a protocol message that includes the name, the content (or payload), and information used to cryptographically validate the message – all contained in nested TLVs.

The specification of CCNx 1.0 is available at: http://blogs.parc.com/ccnx/specifications/

Derivative works

See also

Related Research Articles

The Session Initiation Protocol (SIP) is a signaling protocol used for initiating, maintaining, and terminating communication sessions that include voice, video and messaging applications. SIP is used in Internet telephony, in private IP telephone systems, as well as mobile phone calling over LTE (VoLTE).

<span class="mw-page-title-main">World Wide Web</span> System of interlinked hypertext documents accessed over the Internet

The World Wide Web (WWW), commonly known as the Web, is an information system enabling documents and other web resources to be accessed over the Internet.

<span class="mw-page-title-main">Web server</span> Computer software that distributes web pages

A web server is computer software and underlying hardware that accepts requests via HTTP or its secure variant HTTPS. A user agent, commonly a web browser or web crawler, initiates communication by making a request for a web page or other resource using HTTP, and the server responds with the content of that resource or an error message. A web server can also accept and store resources sent from the user agent if configured to do so.

<span class="mw-page-title-main">Proxy server</span> Computer server that makes and receives requests on behalf of a user

In computer networking, a proxy server is a server application that acts as an intermediary between a client requesting a resource and the server providing that resource.

Universal Plug and Play (UPnP) is a set of networking protocols that permits networked devices, such as personal computers, printers, Internet gateways, Wi-Fi access points and mobile devices to seamlessly discover each other's presence on the network and establish functional network services. UPnP is intended primarily for residential networks without enterprise-class devices.

The Internet Architecture Board (IAB) is "a committee of the Internet Engineering Task Force (IETF) and an advisory body of the Internet Society (ISOC). Its responsibilities include architectural oversight of IETF activities, Internet Standards Process oversight and appeal, and the appointment of the Request for Comments (RFC) Editor. The IAB is also responsible for the management of the IETF protocol parameter registries."

<span class="mw-page-title-main">XMPP</span> Communications protocol for message-oriented middleware

Extensible Messaging and Presence Protocol is an open communication protocol designed for instant messaging (IM), presence information, and contact list maintenance. Based on XML, it enables the near-real-time exchange of structured data between two or more network entities. Designed to be extensible, the protocol offers a multitude of applications beyond traditional IM in the broader realm of message-oriented middleware, including signalling for VoIP, video, file transfer, gaming and other uses.

Message-oriented middleware (MOM) is software or hardware infrastructure supporting sending and receiving messages between distributed systems. MOM allows application modules to be distributed over heterogeneous platforms and reduces the complexity of developing applications that span multiple operating systems and network protocols. The middleware creates a distributed communications layer that insulates the application developer from the details of the various operating systems and network interfaces. APIs that extend across diverse platforms and networks are typically provided by MOM.

Representational state transfer (REST) is a software architectural style that describes the architecture of the Web. It was derived from the following constraints:

An overlay network is a computer network that is layered on top of another network.

OMA SpecWorks, previously the Open Mobile Alliance (OMA) is a standards organization which develops open, international technical standards for the mobile phone industry. It is a nonprofit Non-governmental organization (NGO), not a formal government-sponsored standards organization as is the International Telecommunication Union (ITU): a forum for industry stakeholders to agree on common specifications for products and services.

A gateway is a piece of networking hardware or software used in telecommunications networks that allows data to flow from one discrete network to another. Gateways are distinct from routers or switches in that they communicate using more than one protocol to connect multiple networks and can operate at any of the seven layers of the open systems interconnection model (OSI).

In networking, a black hole refers to a place in the network where incoming or outgoing traffic is silently discarded, without informing the source that the data did not reach its intended recipient.

Named Data Networking (NDN) is a proposed Future Internet architecture inspired by years of empirical research into network usage and a growing awareness of unsolved problems in contemporary internet architectures like IP. NDN has its roots in an earlier project, Content-Centric Networking (CCN), which Van Jacobson first publicly presented in 2006. The NDN project is investigating Jacobson's proposed evolution from today's host-centric network architecture IP to a data-centric network architecture (NDN). The belief is that this conceptually simple shift will have far-reaching implications for how people design, develop, deploy, and use networks and applications.

Web of Things (WoT) describes a set of standards by the World Wide Web Consortium (W3C) for the interoperability of different Internet of things (IoT) platforms and application domains.

Resource Public Key Infrastructure (RPKI), also known as Resource Certification, is a specialized public key infrastructure (PKI) framework to support improved security for the Internet's BGP routing infrastructure.

Deep content inspection (DCI) is a form of network filtering that examines an entire file or MIME object as it passes an inspection point, searching for viruses, spam, data loss, key words or other content level criteria. Deep Content Inspection is considered the evolution of Deep Packet Inspection with the ability to look at what the actual content contains instead of focusing on individual or multiple packets. Deep Content Inspection allows services to keep track of content across multiple packets so that the signatures they may be searching for can cross packet boundaries and yet they will still be found. An exhaustive form of network traffic inspection in which Internet traffic is examined across all the seven OSI ISO layers, and most importantly, the application layer.

Information-centric networking (ICN) is an approach to evolve the Internet infrastructure away from a host-centric paradigm, based on perpetual connectivity and the end-to-end principle, to a network architecture in which the focal point is identified information.

References

  1. CCNx Current Code Release, Retrieved 1 August 2014.
  2. Cisco Acquires PARC’s Content Centric Networking Platform Archived 2018-07-11 at the Wayback Machine , Retrieved 1 March 2017.
  3. Baccala, Brent (Aug 2002). "Data Oriented Networking"
  4. Koponen, Teemu; Chawla, Mohit; Chun, Byung-Gon; Ermolinskiy, Andrey; Kim, Kye Hyun; Shenker, Scott; and Stoica, Ion. (August 2007). "A data-oriented (and beyond) network architecture." SIGCOMM Comput. Commun. Rev. 37, 4, 181-192.
  5. TRIAD project page Archived 2016-03-05 at the Wayback Machine , Stanford University Distributed Systems Group, Retrieved 1 August 2014.
  6. Jacobson, Van. (Aug 30, 2006). "A new way of looking at networking."
  7. Jacobson, Van; Smetters, Diana K.; Thornton, James D.; Plass, Michael F.; Briggs, Nicholas H.; Braynard, Rebecca L. (Dec 1-4, 2009). "Networking named content." Proceedings of the 5th International Conference on Emerging Networking Experiments and Technologies. Rome, Italy. Retrieved 1 August 2014.
  8. "Cicn - fd.io".
  9. "Cicn - fd.io".
  10. "Cicn - fd.io".
  11. "CCNxCon 2015". Archived from the original on 2016-02-22. Retrieved 2016-02-22.
  12. Bartolomeo; et al. (2016). Identification and Management of Distributed Data: NGN, Content-Centric Networks and the Web. CRC Press. pp. 39–257.
  13. Ahmed, Hussein; et al. (2016). Content-Centric Networks: An Overview, Applications, and Research Challenges. Springer. pp. 17–64.
  14. Bilal, Muhammad; et al. (2019). "Secure Distribution of Protected Content in Information-Centric Networking". IEEE Systems Journal. 14 (2): 1921–1932. arXiv: 1907.11717 . Bibcode:2020ISysJ..14.1921B. doi:10.1109/JSYST.2019.2931813. S2CID   198967720.
  15. Fricker, C (2012). "Impact of traffic mix on caching performance in a content-centric network". Proceedings IEEE INFOCOM Workshops. arXiv: 1202.0108 .
  16. Solis, Ignacio (July 2014). "CCNx 1.0 Changes from 0.x", IETF-90 Proceedings. Toronto, Ontario. Retrieved 1 August 2014.