Monday, March 31, 2008

TCP/IP Layers

In the last TCP/IP overview, we focused on getting an absolute basic understanding of the way information is transmitted from and to machines connected to the internet. Now we're going to look at some of the higher layers of network protocol. If we stay with the basic Mail analogy, we're now moving from the [disassembling, packing, addressing, shipping, routing, receiving, unpacking and assembling] set of standards to standards which apply to the nature of our packaged objects.

The only problem with this model of understanding is that there really isn't any "wrapping" going on in the various levels of protocol encapsulation. IP and TCP headers are more like stamps and stickers than the package material itself. In the world of data transmission, there is no package itself except the data itself, sent as a burst of bytes, a sequence of zeros and ones.

Anyway, right now we're not so much interested in the TCP/IP stamps (headers) as we are on the application-level data that forms the tail of our packet of transmitted bytes.

Like TCP/IP, these higher level layers in our data-stream are protocols, standards by which computers communicate and interpret what's going in and out of them via the network(s). Let's just run through the most interesting of these higher layers and see if we have any energy to talk about them individually. Probably not...
  • HTTP: Hyper Text Transfer Protocol; this is the obvious standard protocol governing the dynamics of transmission across the world wide web
  • HTTPS: Secure HTTP
  • SSL - Secure Sockets Layer: takes advantage of encryption technologies to ensure safe transmission of data across a network
  • SMTP - Simple Mail Transfer Protocol: enables you to send email
  • MIME - Multi-purpose Internet Mail Extensions: Originally developed for multimedia email attachments, now standardizes the transmission of multimedia anywhere on WWW
  • POP - Post Office Protocol: Used for downloading mail onto your machine
  • IMAP - Internet Mail Access Protocol: Used to store and retrieve email
  • FTP - File Transfer Protocol: Enables file transfer from computer to computer
Like I imagined, I don't care to try to elaborate on each one of these protocols at this point in time. Each one may well take up an summary article at a later date. Sounds good to me.

The main thing is to realize that these protocols are executed and then parsed by higher level applications like web browsers, mail clients and ftp clients (on the client side) and the developed framework on the server-side. They form all the access and interface points that make up the fabric of web technologies and UI.

Resources
W3Schools

No comments: