  In this paper, we present a communication protocol between a pair of
biological nanomachines, transmitter and receiver, built upon molecular
communications in an aqueous environment. In our proposal, the receiver, acting
as a control node, sends a connection setup signal to the transmitter, which
stokes molecules, to start molecule transmission. The molecules transmitted by
the transmitter propagate in the environment and are absorbed by the receiver
through its receptors. When the receiver absorbs the desired quantity of
molecules, it releases a tear-down signal to notify the transmitter to stop the
transmission. The proposed protocol implements a bidirectional communication by
using a number of techniques originally designed for the TCP. In fact, the
proposed protocol is connection-oriented, and uses the TCP-like probing to find
a suitable transmission rate between transmitter and receiver so as to avoid
receiver congestion. Unlike the TCP, however, explicit acknowledgments are not
used, since they would degrade the communication throughput due to the large
delay, a characteristic feature of molecular communications. Thus, the proposed
protocol uses implicit acknowledgments, and feedback signals are sent by the
receiver to throttle the transmission rate at the transmitter, i.e., explicit
negative feedbacks. We also present the results of an extensive simulation
campaign, used to validate the proposed protocol and to properly dimension the
main protocol parameters.
