计算机网络系列–基础知识(1)

kayokoi 发布于 28 天前 80 次阅读


一, 网络、互联网、因特网的区别与关系

  • 一般笔记本电脑、服务器等称为主机,而路由器是网络互联的专用设备。

  • 总结:

    • 若干节点和链路互连 (通过交换机) 形成网络。
    • 若干网络通过路由器互连形成互联网。
    • 因特网是当今世界最大的互联网。

二、计算机网络的分类

  • 按 交换方式 分类:

  • 按 传输介质 分类: 有线网络(光纤通信)和无线网络(wifi技术)

  • 按 范围 划分:

    • 广域网(WAN): 可以横跨国家、地区。是因特网的核心部分,它为因特网核心路由器提供远距离的高速连接。互连分布在不同国家和地区的城域网或局域网。

    • 城域网(MAN): 通常互连大量机构、企业以及校园局域网。

    • 局域网(LAN): 一个企业或者学校,可能会有多个互连的局域网,这样的网络常称为校园网/企业网。

      比如你们宿舍几台电脑连起来打游戏,或者你家里所有设备连到同一个Wi-Fi, 或者公司办公室里用网线连接起来的电脑。。

三, URI URL和URN

好的,我们来聊聊 URL 和 URI 这两个在网络中经常听到,也容易混淆的概念。

简单来说:

  • URI (Uniform Resource Identifier - 统一资源标志符):它是一个总称,就像“身份证号”一样,用来唯一标识一个资源。这个资源可以是网页、图片、视频,甚至是现实世界中的一本书。URI 的核心在于“标识”。
  • URL (Uniform Resource Locator - 统一资源定位符):它是 URI 的一个子集。URL 不仅标识一个资源,更重要的是它还指明了如何找到 (定位) 这个资源。它就像一个完整的“家庭住址”,告诉你资源在哪里,以及用什么方法(协议)去获取它。

所以,所有的 URL 都是 URI,但并非所有的 URI 都是 URL。

可以这样理解它们的关系:

URI (统一资源标志符 - "我是谁?")
├── URL (统一资源定位符 - "我在哪?怎么去?")
└── URN (统一资源名称 - "我的永久名字是?" - 较少见于日常网页浏览)

URN (Uniform Resource Name - 统一资源名称) 也是 URI 的一种。它的目标是为资源提供一个持久的、位置无关的名称。例如,一本书的 ISBN 号(如 urn:isbn:0451450523​)就是一个 URN,它唯一标识了这本书,无论这本书在哪家书店或图书馆。在日常的网页浏览中,我们接触 URN 的机会相对较少,主要打交道的还是 URL。

详细解析

1. URI (统一资源标志符)

URI 是一个用于标识某一互联网资源名称的字符串。这种标识可以是名称、定位器(locator)、或两者兼备。URI 的目标是提供一种标准的方式来引用资源,而不论其访问方式或位置。

它有两种主要形式:

  • URL: 通过描述其位置来标识资源。
  • URN: 通过名称在特定命名空间中唯一地标识资源,与其当前位置无关。
2. URL (统一资源定位符)

URL 是我们最常接触到的。它详细说明了如何获取一个资源。一个典型的 URL 包含以下部分:

​scheme:[//[user:password@]host[:port]][/]path[?query][#fragment]​

  • Scheme (方案/协议): 如 http​, https​, ftp​, file​。它告诉浏览器用什么协议去获取资源。
  • Host (主机名): 域名 (如 www.example.com​) 或 IP 地址 (如 93.184.216.34​)。
  • Port (端口号): 服务器上监听的特定端口。HTTP 默认80,HTTPS 默认443。如果省略,则使用默认端口。
  • Path (路径): 服务器上资源的具体路径 (如 /path/to/resource.html​)。
  • Query (查询字符串): 以 ?​ 开头,提供给资源的参数 (如 key1=value1&key2=value2​)。
  • Fragment (片段/锚点): 以 #​ 开头,指向资源内部的特定部分 (如 #section1​)。

示例:

  • ​https://www.example.com/news/index.html?lang=cn#latest​

    • 这是一个 URL,因为它指明了用 https​ 协议,在 www.example.com​ 主机上,获取 /news/index.html​ 资源,并带有查询参数和片段标识。
    • 它同时也是一个 URI,因为它可以唯一标识这个资源。
3. URN (统一资源名称)

URN 提供了一种持久的、位置无关的标识方式。即使资源的位置改变了,它的 URN 仍然有效。

示例:

  • ​urn:isbn:0-486-27557-4​ (标识莎士比亚的《哈姆雷特》某一版本)
  • ​urn:ietf:rfc:2616​ (标识 HTTP/1.1 协议的 RFC 文档)

这些也是 URI,因为它们唯一标识了资源,但它们不包含如何定位这些资源的信息。

总结与类比

  • URI 是标识符:就像一个人的名字或身份证号,它唯一地指代这个人。
  • URL 是定位符 (也是标识符):就像一个人的详细住址(包括国家、城市、街道、门牌号),它不仅指代这个人,还告诉了你如何找到他/她。
  • URN 是名称 (也是标识符):就像一个人的学号或某个组织内的唯一ID,它唯一地指代这个人,但这个ID本身不包含地址信息。

在日常Web开发和浏览中,我们所说的“网址”几乎都是指URL。因为我们需要知道如何去访问那个资源。由于所有的URL都是URI,所以在很多技术文档或讨论中,有时会用URI这个更宽泛的术语来指代Web地址,虽然实际上它是一个URL。

关键点:

  • URL 强调的是位置 (Location)。
  • URN 强调的是名称 (Name)。
  • URI 是一个更广泛的概念,包含了 URL 和 URN。