# 简介

  • 计算机网络,是指将多台计算机,通过通信线路连接起来,实现数据通信、资源共享。
  • 计算机网络不但使用了计算机硬件、软件技术,也使用了通信技术,因此涉及的知识很广。
    • 在计算机发明之前,人类就发明了电报、有线电话、无线电通信、电视等通信技术。因此计算机网络,借鉴了这些通信技术。
    • 早期的计算机网络,使用电话线进行通信。后来发明了双绞线、光纤等专用线路。

# 架构

  • 从功能架构上看,计算机网络分为两部分:
    • 通信子网
      • 由通信结点、通信线路组成。负责传输数据。
      • 通信结点:比如路由器、交换机,负责转发数据包。
      • 通信线路:比如双绞线、光纤,负责将数据从一个地方传输到另一个地方。
    • 资源子网
      • 由主机、终端等设备组成。负责通过通信子网,提供计算机资源、服务。
      • 比如一个主机存储了一个文件,通过通信子网,分享给其它主机。
      • 主机(host):指能进行网络通信的计算机设备,比如电脑、手机、智能手表。
      • 终端(terminal):位于计算机网络的最终环节,与用户直接交互的设备。
        • 早期的计算机昂贵,一台电脑,通常被多个用户同时使用,因此需要给每个用户分配一个终端。每个终端,通常是一套显示器+键盘。
        • 后来的计算机变得便宜。一台电脑,通常只被一个用户使用,此时只存在一个终端。

# 网络协议

  • 网络协议泛指计算机之间进行通信时需要遵守的规则。
  • 网络协议有很多种,用途也不同。例如:网络层的 ARP 协议常用于主机寻址,应用层的 HTTP 协议常用于 Web 服务。

# 网络设备

  • 计算机网络中,使用了很多种网络设备,比如交换机、路由器,从多个层面控制计算机网络。
  • 设备通常是一种硬件存在,不像网络数据、网络协议是逻辑中的存在。

# 服务器

  • 服务器:指网络中的某些主机,可以为其它主机提供某种服务。
    • 服务器通常要保持运行,以持续提供服务。
    • 不同用途的服务器通常采用不同的通信协议,比如采用 FTP 协议时,称为 FTP 服务器。

服务器常见的几种工作模式:

  • 客户端/服务器模式(Client/Server ,C/S)

    • 运行一个或多个主机作为服务器,再运行一个或多个主机作为客户端。
    • 客户端连接到服务器之后,便可以享受其提供的服务、功能。
  • 浏览器/服务器模式(Browser/Server ,B/S)

    • 属于 C/S 模式。使用特制的浏览器软件作为客户端,例如 Web 浏览器。
  • 点对点(Peer to Peer ,P2P)

    • 两个主机之间通信时身份对等,有相同的能力,而不区分服务器、客户端。
    • 大量 P2P 主机可组成 P2P 网络。与 C/S 网络相比,没有主机专门担任服务器,去中心化。
    • 线上到线下(Online to Offline ,O2O)的名字与 P2P 相似,但概念不同。