Packet Encapsulation

Here is an oversimplified depiction of how packet headers are "stacked" as a packet moves down the internet protocol stack.

At the top of the protocol stack, applications make data. As the data is passed down the stack, new headers are added that contain information pertinaent to the particular layers. A layer basically treats the information from the layers above it as packet data since that information is irrelevant on the given level. Of course, the layers do "talk" to each other to some extent to get the correct information into the headers.

Way down at the network level, even the internet addressing information is obscured. the next level down is electrons (or light) flowing. As a packet goes back up the stack, headers are stripped and discarded to re-expose the header pertinent to that level. As a packet jumps around to different routers, the network level header may be repeatedly stripped and recreated as necessary to negotiate different network links. By the time the packet makes it to the destination application, all the extra baggage is removed and the application gets its data.