This is archived documentation for an older version of Nirvana (v3.1). Please refer to documentation for the latest version if required.

Nirvana Peer to Peer Services

Overview

Nirvana provides a rich set of APIs that provide developers with the ability to create peer to peer (P2P) applications. We call these peer to peer applications 'services'.

There are 2 parts to a Peer to Peer service in Nirvana, a server service and a client service. The server service when running, is visible within the Nirvana Namespace, and available to any client service wishing to connect. The Nirvana realm server acts as the bridge that connects client services to server services. Each server service can support multiple client services.

To visualise this in terms of realm life applications, please read the following examples.

Further documentation on managing P2P services is also availabe the Nirvana Admin API guide.

Nirvana peer to peer services fall into 2 main categories, event based services or stream based services.

This guide will demonstrate how Nirvana peer to peer services work, and provide examples code snippets for all relevant concepts.

To find sample code for example p2p applications, please see the p2p examples section. These samples are provided as part of the Nirvana installation in the Nirvana bin directory.

The following sections will be covered:

Server Service

Client Service

Event Service

Stream Service