# 简介
- 计算机网络,是指将多台计算机,通过通信线路连接起来,实现数据通信、资源共享。
- 计算机网络不但使用了计算机硬件、软件技术,也使用了通信技术,因此涉及的知识很广。
- 在计算机发明之前,人类就发明了电报、有线电话、无线电通信、电视等通信技术。因此计算机网络,借鉴了这些通信技术。
- 早期的计算机网络,使用电话线进行通信。后来发明了双绞线、光纤等专用线路。
# 架构
- 从功能架构上看,计算机网络分为两部分:
- 通信子网
- 由通信结点、通信线路组成。负责传输数据。
- 通信结点:比如路由器、交换机,负责转发数据包。
- 通信线路:比如双绞线、光纤,负责将数据从一个地方传输到另一个地方。
- 资源子网
- 由主机、终端等设备组成。负责通过通信子网,提供计算机资源、服务。
- 比如一个主机存储了一个文件,通过通信子网,分享给其它主机。
- 主机(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 相似,但概念不同。