互联网基础设施是一个复杂而又精心编排的系统,它实现了无缝的全球通信和信息交换。自 1969 年创立以来,互联网已从四台主机系统发展为数千万台。事实上,每台连接到互联网的设备都是网络的一部分,包括你家中的设备。互联网的基本底层结构由什么组成?从名称服务器到网络接入点,再到骨干网络,互联网传输数据和信息的系统发生在我们所称的基础设施——互联网的构建模块上。首先,你需要了解你的计算机如何连接到其他计算机。另请阅读:什么是互联网基础设施?计算机网络层次结构 每台连接到互联网的设备都是网络的一部分,甚至包括你家中的设备。例如,你的计算机可能通过电缆或光纤调制解调器连接到互联网服务提供商(ISP)。在工作中,你的设备可能是局域网(LAN)的一部分,但你的互联网连接由雇主的 ISP 提供。一旦你连接计算机,它就成为了雇主网络的一部分。然后 ISP 可以连接到一个更大的网络。互联网只是网络的网络。大型通信公司拥有自己的专用骨干网,即始终在线的互联网连接,其带宽足以允许多人同时使用。在每个地区,公司都有一个本地办事处,将当地家庭和企业连接到其主网络。令人惊讶的是,并没有集中式网络。流量从一个点传输到另一个点,如果一台计算机断开网络,构成数字文件的数据包会被路由到另一台计算机。文件会按预期到达,你永远不会注意到流量模式的变化。这是一个互联网网络的例子:假设 A 公司是一家小公司,拥有一个配有服务器和联网打印机的办公网络。假设 B 公司是一家企业 ISP。B

公司在主要城市建造或租赁办公空间来存放其服务器和路由设备。B 公司规模如此之大,以至于它在建筑物之间铺设自己的光纤线路,从而使所有建筑都相互连接。在这种安排下,A 公司的所有客户可以相互通信,B 公司的所有客户也可以相互通信,但两家公司的网络并未连接。两家公司都可以内部通信,但无法相互通信。因此,A 公司和 B 公司同意连接到每个城市的互联网接入点或 IXP。现在,两家公司的网络可以通过互联网相互连接,也可以连接到其他组织。这个例子展示了两家公司的网络如何相互通信,但这只是它们两个网络加入庞大互联网的一个特写示例。要鸟瞰这些互联网络可能的样子,可以看看 Barrett Lyon 的 Opte 项目,该项目致力于创建一张不断演变的互联网管道地图。互联网路由器的功能 所有这些网络都依赖 IXP、骨干网络和路由器来相互通信。这一过程令人难以置信的是,一条消息可以从一台计算机发出,穿越半个地球,经过几个不同的网络,在几分之一秒内到达另一台计算机!路由器确定信息从一台计算机发送到另一台计算机的路径。路由器是专用设备,用来发送来自你和其他互联网用户的消息,这些消息沿着数千条路径加速到达目的地。路由器有两个独立但相关的任务:1.

它确保信息不会到达不需要的地方。这对于防止大量数据堵塞“无辜旁观者”的连接至关重要。2.

它确保信息到达预定目的地。在执行这两项任务时,路由器在处理两个独立的计算机网络时非常有用。它连接两个网络,将信息从一个网络传递到另一个网络。它还保护网络交互,防止一个网络上的流量不必要地溢出到另一个网络。无论连接多少个网络,路由器的基本操作和功能保持不变。由于互联网是由无数较小网络组成的巨大网络,因此必须使用路由器。互联网骨干网 美国国家科学基金会(NSF)于 1986 年创建了第一个高速骨干网络,称为 NSFNET,它是一条 T1 线路,连接了 170 个较小网络,运行速度为 1.5 Mbps(兆比特每秒)。IBM、MCI 和 Merit 与 NSF 合作创建了骨干网,并于次年开发了 T3(45 Mbps)骨干网。骨干网是互联网连接,可以承载比从你家到附近中心办公室的连接多得多的流量。在互联网早期,只有最大的电信公司有能力处理这种带宽。如今,越来越多的公司运营着自己的高容量骨干网,所有这些骨干网都在世界各地的各种 IXP 上相互连接。这样一来,互联网上的每个人,无论身在何处或使用哪个提供商,都可以与地球上的其他人通信。整个互联网是一个庞大、巨大的协议,用于人们之间的自由通信。互联网协议:IP 地址 互联网上的每台机器都有一个唯一的标识号,称为 IP 地址。IP 代表互联网协议,这是计算机通过互联网通信所使用的两种协议之一。另一个是传输控制协议,两者通常合称为 TCP/IP。协议是为想要使用服务的人连接到该服务而预定义的方式。“某人”可以是人,但更常见的是计算机程序,比如 Web

浏览器。一个典型的 IP 版本 4(IPv4)地址看起来像这样:216.27.61.137。为了便于人类记忆,IP 地址通常以十进制格式表示为点分十进制数,如上图所示。但计算机以二进制形式通信。查看同一 IPv4 地址的二进制形式:11011000.00011011.00111101.10001001。IPv4 地址中的每个数字序列称为一个八位位组,因为当以二进制形式查看时,每个数字序列有八个位置。如果将所有位置加起来,得到 32,因为 IPv4 地址被视为 32 位数字。由于这八个位置中的每一个都可以有两种不同的状态(1 或 0),因此每个八位位组的可能组合总数为 28 或 256。因此,每个八位位组可以包含 0 到 255 之间的任何值。将四个八位位组合在一起,你得到 232 或可能的 4,294,967,296 个唯一值!在 IPv4 地址的近 43 亿个可能组合中,某些值被限制用作典型的 IP 地址。例如,IP 地址 0.0.0.0.0 保留给本地网络上的计算机,地址 255.255.255.255 用于广播。尽管 43 亿个地址听起来很多,但互联网发展如此之快,以至于需要更新的 128 位地址系统来取代 IPv4。1998 年底,来自互联网工程任务组(IETF)的专家开始开发新系统。IP 版本 6(IPv6)于 2012 年 6 月 6 日正式推出,拥有 340 万亿个地址空间,因此我们应该为所有设备留出充足的空间。(目前是这样。顺便说一句,IPv5

从未被正式采纳为标准。)正如你可能预期的那样,IPv6 地址看起来与 20 世纪 70 年代创建的 IPv4 略有不同。IPv6 地址中的每个段使用四个数字,由冒号分隔。示例如下:ba5a:9a72:4aa5:522e:b893:78dd:a6c4:f033。由于 IPv6 使用十六进制表示法,因此需要表示 16 个单独的数字。因此,除了数字 0 到 9 之外,字母 A-F 也被征用来表示两位数字。目前仍在使用 IPv4,八位位组的目的不仅仅是分隔数字。它们用于创建 IP 地址类,这些类可以根据规模和需求分配给特定的企业、政府或其他实体。八位位组分为两部分:网络和主机。第一个八位位组标识计算机所属的网络。主机(有时称为节点)标识网络上的实际计算机。最后一个八位位组显示主机段。共有五个 IP 类和一些特殊地址。在互联网初期,它由少量通过调制解调器和电话线连接的计算机组成。你只能通过提供要建立链接的计算机的 IP 地址来建立连接。例如,一个典型的 IP 地址可能是 216.27.22.162。当只有少数主机时这没问题,但随着更多系统上线,它变得难以管理。这个问题的第一个解决方案是由网络信息中心(NIC)维护的一个简单文本文件,称为主机表,它将名称映射到 IP 地址。很快,这个文本文件变得如此之大,以至于难以管理。1983 年 11 月,Paul Mokapetris 向国际网络工作组提交了两份征求意见稿。RFC 882 概述了域名系统(DNS)的概念,该系统自动将文本名称映射到 IP

地址。RFC 883 提出了一种实现该系统的方法。由于他和许多其他人的努力,你现在只需记住 www.howstuffworks.com,例如,而不是 HowStuffWorks.com 的 IP 地址的一串数字和标点符号。另请阅读:如何像专业人士一样保护我的 IP 地址?URL:统一资源定位符 当你使用 Web 或发送电子邮件时,你可以使用域名来完成。例如,统一资源定位符(URL)“https://www.howstuffworks.com”包含域名 howstuffworks.com。这个电子邮件地址也是如此:一个公开的联络点。每次使用域名时,互联网的 DNS 服务器都会将人类可读的域名转换为机器可读的 IP 地址。参阅名称服务器如何工作以了解更多关于 DNS 的信息。顶级域名,也称为一级域名,包括.com、.org、.net、.edu 和.gov。在每个顶级域名下,都有大量的二级域名列表。例如,在.com 顶级域名中,有:HowStuffWorks、Yahoo、Microsoft。.com 顶级域名中的每个名称必须是唯一的。最左边的部分(如“www”)是主机名。它指定域中具有特定 IP 地址的特定计算机上的目录名。一个给定域可能包含数百万个主机名,只要它们在域内都是唯一的。DNS 服务器接受来自程序和其他名称服务器的请求,将域名转换为 IP 地址。当请求到来时,DNS 服务器可以执行以下四项操作之一:1.

它可以用 IP 地址回答请求,因为它已经知道所请求域的 IP 地址。2. 它可以联系另一个 DNS 服务器,并尝试查找所请求名称的 IP 地址。这可能需要进行多次。3. 它可以说:“我不知道你所请求域的 IP 地址,但这是我知道的比我更好的 DNS 服务器的 IP 地址。”4.

它可能会返回错误消息,因为所请求的域名无效或不存在。DNS 假设你在浏览器中输入 URL www.howstuffworks.com。浏览器联系 DNS 服务器以获取 IP 地址。DNS 服务器通过联系其中一个 DNS 根服务器开始搜索 IP 地址。根服务器知道处理顶级域名(.com、.net、.org 等)的所有 DNS 服务器的 IP 地址。你的 DNS 服务器向根服务器询问 www.howstuffworks.com,根服务器说:“我不知道 www.howstuffworks.com 的 IP 地址,但这是.COM DNS 服务器的 IP 地址。”然后,你的名称服务器去联系.COM DNS 服务器,发送查询询问它是否知道 www.howstuffworks.com 的 IP 地址。.com 域的 DNS 服务器知道处理 www.howstuffworks.com 域的名称服务器的 IP 地址,因此返回这些地址。然后你的名称服务器将联系 DNS 服务器以获取 www.howstuffworks.com,并询问它是否知道 www.howstuffworks.com 的 IP 地址。它知道,因此将 IP 地址返回给你的 DNS 服务器,你的 DNS 服务器再将其返回给浏览器,然后浏览器联系 www.howstuffworks.com 的服务器以获取网页。实现此目的的关键之一是冗余。每个级别都有多个 DNS

服务器,因此如果一个服务器发生故障,还有其他服务器可以处理请求。另一个关键是缓存。解析请求后,DNS 服务器会缓存收到的 IP 地址。一旦它向根 DNS 服务器发出任何.COM 域请求,它就会知道如何处理。COM 域的 DNS 服务器的 IP 地址,因此它不必再次向根 DNS 服务器询问该信息。DNS 服务器可以对每个请求都这样做,这种缓存有助于防止系统陷入困境。尽管它们完全不可见,但 DNS 服务器每天处理数十亿个请求,它们对于互联网的平稳运行至关重要。这个分布式数据库运行得如此良好并且日复一日地无形工作,这证明了设计的精妙。互联网服务器和客户端 互联网上的每台机器要么是服务器,要么是客户端。向其他计算机提供服务的计算机是服务器。用于连接这些服务的计算机是客户端。有 Web 服务器、电子邮件服务器、FTP 服务器等,以满足全世界互联网用户的需求。当你连接到 www.howstuffworks.com 阅读页面时,你是坐在客户端计算机上的用户。你正在访问 HowStuffWorks Web 服务器。服务器计算机将找到你请求的页面并将其发送给你。访问服务器计算机的客户端有特定意图,因此客户端将其请求定向到服务器计算机上运行的特定软件服务器。例如,如果你在计算机上运行 Web 浏览器,它将尝试与服务器计算机上的 Web 服务器通信,而不是电子邮件服务器。服务器具有静态 IP 地址,该地址不会更改。另一方面,通过调制解调器拨号的家用计算机通常具有每次登录时由 ISP 分配的 IP

地址。该 IP 地址对你的会话是唯一的,下次拨入时可能不同。这样,ISP 只需要为每个设备提供一个 IP 地址,而不是为每个客户提供一个。端口和 HTTP 任何服务器都使用编号端口提供服务,即服务器上可用的每个服务一个端口。例如,如果服务器计算机正在运行 Web 服务器和文件传输协议(FTP)服务器,则 Web 服务器通常在端口 80 上可用,而 FTP 服务器在端口 21 上可用。客户端使用特定 IP 地址和特定端口号连接到服务。一旦客户端连接到特定端口上的服务,它就使用特定协议访问该服务。该协议简单地描述了客户端和服务器将如何相互通信。互联网上的每台 Web 服务器都遵循超文本传输协议(HTTP)。你可以通过阅读 Web 服务器如何工作来了解更多关于互联网服务器、端口和协议的信息。另请阅读:加密在互联网服务器上起什么作用?网络、路由器、NAPs、ISP、DNS 和强大的服务器共同使互联网成为可能。当你意识到所有这些信息都在几毫秒内传输到世界各地时,这些组件在现代生活中极其重要——没有它们,就不会有互联网。没有互联网,我们许多人的生活将会大不相同。