proprietary P2P streaming systems using different
streaming protocols and it’s hard for a peer
communicating with the other peers located in the
other P2P overlay to save the bandwidth, the storage
resource and computing resource.
To solve the above problems, in this paper, we
propose two solutions. The first solution is oriented
for enabling the peers in different proprietary P2P
systems to communicate with each other aiming for
accessing the data. By using this solution, it adds a
logical layer in the existing P2P systems. And the
other solution proposes a service-oriented
architecture for developing the P2P systems
avoiding the above problems. And this architecture
has using the network storage for storing the
contents which brings the architecture some new
features.
In the following sections, we will first introduce
the two solutions and then we will outlook the future
solution for the P2P systems which interacts with
cloud storage and cloud computing.
2 THE ADDITIONAL LAYER
In this section, we descript the additional layer to the
existing P2P systems mentioned in the first solution.
We mainly define its location in the P2P systems, its
inner construction and its functions. But before that,
we first have to define the preconditions of adding
this layer.
2.1 Preconditions
Before implementing the additional layer, there have
to be some preconditions to be described first. The
entities including in a specific P2P system will be
defined as below.
The peer: A peer is an end user on which
processing the P2P system and not only receives
contents and streaming, but also stores and uploads
contents and streaming to other participant peers.
The chunk: An integrating content is divided
into several chunks by last time or the certain size. A
chunk is considered as the basic unit of the
partitioned content or streaming. Peers may use a
chunk as a unit of storage, advertisement and
exchange among peers. Note that a P2P system may
use different units for advertisement and data
exchange, maybe a chunk or several chunks.
The tracker: A tracker is a server on which
processing the software to provide a directory
service which maintains a list of peers storing
chunks for a specific content and answer the queries
from peers for the peer lists.
Above, we describe the three main entities of a
specific P2P system. Although there are enough
hardware components, we should have
corresponding protocols and mechanisms to enable
the communications between them. The main
protocols of a specific P2P system including the
below ones.
Tracker protocol: For enabling the
communication between the tracker and the peer, we
define this protocol. And this protocol defines the
standard format/encoding of information between
peers and the tracker, such as peer list, content
availability, peers’ status and streaming status
including online time, link status, peers’ capability
and some other parameters. And it also defines the
standard messages between the peers and the tracker.
By using these messages, peers report streaming
status and request to the tracker, and the tracker
reply to the requests.
The peer protocol: The peers can use this
protocol for requesting more potential peers from
the other peers. In this protocol, we define the
standard format/encoding of information among
peers, such as chunk description. And we also
define the standard messages among peers defining
how peers advertise chunk availability and their
neighbor peers’ information to each other, as well as
the signaling for requesting chunks among peers
(Zhang et al.).
Above, we define and describe the main entities
and protocols in a specific P2P system. Before
enabling the communication between the different
proprietary P2P systems, the preconditions include
the following ones.
(1)Including the same main entities. There are
peers and track in the system. And the contents and
the streaming are partitioned by chunks.
(2)Using the same format/encoding of
information in the track protocol and the peer
protocol. So the messages can be transmitted
between different P2P systems and be translated
correctly.
By the above conditions, we can show the
architecture of a specific P2P system in the
following figure.
SOLUTIONS FOR ENABLING COMMUNICATION BETWEEN DIFFERENT PROPRIETARY PEER-TO-PEER
SYSTEMS
581