Content deleted Content added
m change see also |
Opening definition: stack is implementation of a suite. Interfaces between layers. Much of this should go to protocol suite. |
||
Line 1:
A '''protocol stack''' is a particular software implementation of a [[computer network]]ing [[protocol suite]].
In [[computer network]]ing, [[network protocol|protocols]] are often designed with a single purpose in mind. This [[modularisation]] makes design, and evaluation easier. Because each protocol module usually communicates with two others, they are commonly imagined as ''layers'' in a stack of protocols. The lowest protocol always deals with "low-level", physical interaction of the hardware. Every higher layer adds more features. User applications habitually deal only with the topmost layers.▼
▲
In practical implementation, protocol stacks are often divided into three major sections for media, transport, and applications. A particular [[operating system]] or platform will often have two well-defined software interfaces, one between the media and transport layers, and one between the transport layers and applications.
The media-to-transport interface defines how transport protocol software makes use of particular media and hardware types ("card drivers"). For example, this interface level would define how [[TCP/IP]] transport software would talk to [[Ethernet]] hardware. Examples of these interfaces include [[ODI]] and [[NDIS]] in the [[Microsoft Windows]] and DOS world.
The application-to-transport interface defines how application programs make use of the transport layers. For example, this interface level would define how a [[web browser]] program would talk to [[TCP/IP]] transport software. Examples of these interfaces include [[Berkeley sockets]] and [[SysV Streams]] in the [[Unix]] world, and [[Winsock]] in the Microsoft world.
''General protocol suite description:''
T ~ ~ ~ T
|