There’s no way to understand today’s networks without knowing the history. Too often, network protocols are taught as ‘memorize the details of what is currently deployed’, which creates a lot of confusion, and certainly does not encourage critical thinking. Some decisions have made today’s networks unnecessarily complex and less functional. But surprisingly, mechanisms that were created out of necessity, to compensate for previous decisions, sometimes turn out to be useful for purposes other than the original reason they were invented. If the world had adopted a different approach originally, some very interesting technology may not have been invented. Given limited space in this article, we will not worry about exact details, but rather convey the main conceptual points, and only cover a few examples.