On 1/3/2012 5:53 PM, Kaushal Shriyan wrote:
Can someone please explain me the term "Protocol". Does it also mean it
has some software code underlying beneath it. Please help me understand.
My 2 cents:
A protocol is a defined set of rules that function at multiple locations
(communication endpoints) that enable shared state (communication), and
is composed of:
a defined set of messages ("on the wire" part)
a defined set of states (localized endpoint state)
a set of rules that relate message arrival, message departure,
time (optionally), and state transition
It's a lot like computation where the input is the received message
sequence and the output is the transmitted message sequence.
A protocol is to communications as an algorithm is to computation.
Code can be used to implement an algorithm.
Code can be used to implement a protocol on an endpoint.
I.e., a protocol is just a special kind of algorithm - one that is used
to support communication.
A running algorithm is called a process or thread (typically). Since a
protocol *is* an algorithm, a running protocol is just called a
communicating process or thread, IMO.
A "session" or "connection" defines an association between multiple
parties running the same protocol and thus communicating.
Ietf mailing list