eli5: TCP/IP vs. 803.11?



I do not understand how they are not the same thing? Is it that TCP/IP uses 803.11?

In: Technology

IEEE80:.11 is a suite of MAC and PHY protocols that can encapsulate TCP/IP (among other L3 protocols).

IEEE803.11 is the envelope, TCP/IP is the letter inside the envelope.

If you mean 802.11, like in wifi, it is a way to create a wireless network to transmit data. But it is the physical media, you need to have an abstraction layer over it to connect with other devices, in particular the ones that are not in your physical network, and another layer to put “meaning” into that communication (like are you talking to a web server or a mail server?). IP does the first of those layers, and TCP the second.

The wires and signals that form the transport layer are an independent thing from TCP/IP.

TCP/IP is a network protocol that defines how computers on the network will talk to one another in a logical manner. It doesn’t define the signals and wires and whatnot that get the packets from point A to point B.

You can think of it sort of like a web api. The api defines how you can interact with the services provided by the server, but it says nothing about what the server actually does to provide that service.

To put a wrapper on the more complicated explanations here:

IP is the language.

802.11 is the mouth and ears.

The Internet doesn’t use a single protocol. It uses a bunch of protocols, stacked up on top of one another, each of which does something different. These protocols are organized into layers.

The *physical layer* is basically a decision of how you’re going to connect two computers. Cat5 cable, radio waves, fiber optics, coaxial cable, infrared, and sometimes more exotic methods all fall into this category.

The *link layer* takes whatever physical layer you’ve decided upon, and organizes the actual way you send signals across that medium. 802.11 is an example of this: it tells two computers how to connect over radio waves in a particular frequency band, using agreed-upon signals inside that band. Another example is the Point-to-Point protocol, which is popular with landline phones. 802.3 is basically Ethernet.

The *network layer* (sometimes called the *internet layer*) handles the problem of getting a signal between two computers that aren’t connected, using a series of computers that are. This is where a lot of the magic in the Internet happens: because the link and network layers are separate, the computers in this chain don’t have to be connected the same way. A request to a given Website may go through differents kinds of cables, microwave or satellite uplinks, or possibly more exotic links before reaching the Website, and I don’t have to worry about the route it takes. IP (part of TCP/IP) lives in this layer, and it handles getting everything between different machines.

But that’s just for getting signals across. The *transport layer* is all about organizing those signals into meaningful data. TCP (another part of TCP/IP) lives here, and it deals with the logistics of making sure signals arrive in the right order, detecting if something goes wrong with a signal and re-sending it if needed, and other things. UDP is another popular protocol: it doesn’t handle all the reliability stuff that TCP does, but *because* it doesn’t try to do that, it can be faster than TCP in many circumstances, and that can be useful if you don’t need the connection to be rock-solid.

Lastly, there’s the *application layer*, which is all about what this data means. HTTP, which Websites use to communicate, lives here. So do the protocols used by E-mail. These protocols can be simpler, because they’re stacked on top of other protocols that handle the mundane aspects of running a network: HTTP doesn’t have to worry about how to connect to a machine halfway across the world, because IP already made that happen. And that’s how this layered model works.