Protocol (computer): Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Nick Johnson
(Expanded it a lot, wrote about the OSI model)
imported>Paul Derry
Line 14: Line 14:
# [[transport layer (OSI Model)|Transport Layer]] -- Defines further abstractions to the network layer, hiding implementation details such as network congestion or maximum frame sizes.
# [[transport layer (OSI Model)|Transport Layer]] -- Defines further abstractions to the network layer, hiding implementation details such as network congestion or maximum frame sizes.
# [[session layer (OSI Model)|Session Layer]] -- Defines further abstractions to the transport layer, yielding the illusion that each channel of communications is a continuous [[stream]] of information instead of discrete frames or packets.
# [[session layer (OSI Model)|Session Layer]] -- Defines further abstractions to the transport layer, yielding the illusion that each channel of communications is a continuous [[stream]] of information instead of discrete frames or packets.
# [[presentation layer (OSI Model)|Presentation Layer]] -- Defines conventions for representing common types of information.  For instance,  [[ASCII]] is a convention which specifies, among other things, how to represent each letter of the alphabet as an integer, in a [[operating system|platform-]] and [[computer architecture|artchitecture-]] independant manner.  Under this definition, any [[file format]] could be considered a presentation layer, if that file format were integral to the operation of the protocol.
# [[presentation layer (OSI Model)|Presentation Layer]] -- Defines conventions for representing common types of information.  For instance,  [[ASCII]] is a convention which specifies, among other things, how to represent each letter of the alphabet as an integer, in a [[operating system|platform-]] and [[computer architecture|architecture-]] independent manner.  Under this definition, any [[file format]] could be considered a presentation layer, if that file format were integral to the operation of the protocol.
# [[application layer (OSI Model)|Application Layer]] -- Defines application specific uses for the network.  Common examples of this are [[HTTP]] or [[FTP]].
# [[application layer (OSI Model)|Application Layer]] -- Defines application specific uses for the network.  Common examples of this are [[HTTP]] or [[FTP]].



Revision as of 00:43, 24 February 2007

In computer science a Protocol is a formally defined method of communication between two or more computing devices. What is commonly referred to as a protocol is generally a stack of specifications, each building upon the others to define all aspects of communication.

Protocols have a wide range in complexity. On one end of the spectrum, the electrical characteristics of ones and zeros within a particular digital logic family might be considered a protocol. Similarly, the sequence of modulated infrared light emitted by a television remote control is also a protocol. A more complicated example of a protocol is the Transfer Control Protocol over Internet Protocol used extensively in the internet, or even higher level protocols built on top of TCP/IP.

A Stack of Protocols

Main article: OSI model

The Open Systems Interconnection initiative suggests a seven-layer model to define a protocol. In their model, a protocol is defined (from lowest to highest level):

  1. Physical Layer -- Defines electrical and/or physical specifications for the communications. For instance, it may specify disjoint voltage ranges for binary ones or zeros. This layer would also specify things such as baud rate, transmission line termination, and many other things.
  2. Data Link Layer -- Defines for communications between two adjacent (i.e. directly connected) devices. Specifies things such as how packets are framed, and how to detect and correct errors which occur in the physical layer.
  3. Network Layer -- Defines how individual communications can be routed between non-adjacent devices. This is only necessary if more than two devices need to communicate (i.e. a network).
  4. Transport Layer -- Defines further abstractions to the network layer, hiding implementation details such as network congestion or maximum frame sizes.
  5. Session Layer -- Defines further abstractions to the transport layer, yielding the illusion that each channel of communications is a continuous stream of information instead of discrete frames or packets.
  6. Presentation Layer -- Defines conventions for representing common types of information. For instance, ASCII is a convention which specifies, among other things, how to represent each letter of the alphabet as an integer, in a platform- and architecture- independent manner. Under this definition, any file format could be considered a presentation layer, if that file format were integral to the operation of the protocol.
  7. Application Layer -- Defines application specific uses for the network. Common examples of this are HTTP or FTP.

List of Protocols

  1. Transmission Control Protocol / Internet Protocol (TCP/IP)
  2. File Transfer Protocol

And a many, many more.