Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Protocol stack
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==General protocol suite description== T ~ ~ ~ T [A] [B]_____[C] Imagine three computers: ''A'', ''B'', and ''C''. ''A'' and ''B'' both have radio equipment and can communicate via the airwaves using a suitable network protocol (such as [[IEEE 802.11]]). ''B'' and ''C'' are connected via a cable, using it to exchange data (again, with the help of a protocol, for example [[Point-to-Point Protocol]]). However, neither of these two protocols will be able to transport information from ''A'' to ''C'', because these computers are conceptually on different networks. An [[Internetworking|inter-network]] protocol is required to connect them. One could combine the two protocols to form a powerful third, mastering both cable and wireless transmission, but a different super-protocol would be needed for each possible combination of protocols. It is easier to leave the base protocols alone and design a protocol that can work on top of any of them (the [[Internet Protocol]] is an example). This will make two stacks of two protocols each. The inter-network protocol will communicate with each of the base protocols in their simpler language; the base protocols will not talk directly to each other. A request on computer ''A'' to send a chunk of data to ''C'' is taken by the upper protocol, which (through whatever means) knows that ''C'' is reachable through ''B''. It, therefore, instructs the wireless protocol to transmit the data packet to ''B''. On this computer, the lower layer handlers will pass the packet up to the inter-network protocol, which, on recognizing that ''B'' is not the final destination, will again invoke lower-level functions. This time, the cable protocol is used to send the data to ''C''. There, the received packet is again passed to the upper protocol, which (with ''C'' being the destination) will pass it on to a higher protocol or application on ''C''. In practical implementation, protocol stacks are often divided into three major sections: 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 and is associated with a [[device driver]]. For example, this interface level would define how [[TCP/IP]] transport software would talk to the [[network interface controller]]. Examples of these interfaces include [[Open Data-Link Interface|ODI]] and [[Network Driver Interface Specification|NDIS]] in the [[Microsoft Windows]] and [[DOS]] environment. 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 System V [[STREAMS]] in [[Unix-like]] environments, and [[Winsock]] for Microsoft Windows.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)