The Setup:
Imagine a building which houses five businesses; let's say: Pete's Pet Supplies, The Law
Offices of Dewey, Cheatum, & Howe, Edna Kruk's House of Beauty, Things On A Stick, and
Melvin's Mansion of Music. The only thing these businesses have in common is that they all use
UPS (and happen to rent space in the same building). Phil is the friendly, capable UPS driver who
makes the pickups and deliveries at these businesses.
Receiving:
Every day Phil delivers packages to the five businesses. Each business has different
methods (or protocols) of dealing with the packages; how they sort, store, distribute, &/or use the
contents. None of this is Phil's concern, however. Once the package has reached its destination,
Phil's interaction with it is done.
Shipping:
Each business has various packages that they need to ship out. Phil doesn't know or care
what's in the packages (Phil is friendly and capable, but not very curious). As long as the packages
have the proper label, and conform to UPS's standards for size and weight, Phil is happy to carry
them to his brown van.
In turn, the businesses really don't know or care about the details of how their packages are
shipped. The routes, regulations, and logistics of shipping the packages are UPS's concern.
The Relevance:
If the building in the scene above was actually a computer, the businesses would be
programs, and UPS would be the TCP/IP protocol.
A bag of kibble and a jar of cold cream are two very different products, but if they're boxed
and addressed properly then UPS will ship both. All UPS sees is a package that needs to be
delivered somewhere.
Likewise, an e-mail program uses, manipulates, and stores data differently than a Web
browser does, but they both use TCP/IP as their delivery service. TCP/IP doesn't care what the data
is that it's transporting; its only job is to see that the data is properly delivered.