计算机网络概念
计算机网络(Computer networking)是一个分散的、自治的计算机系统,通过
通信设备
与线路
连接起来,由功能完善的软件
实现资源共享和信息传递的系统。
计算机网络(简称网络):由若干结点(node)
和连接这些结点的链路(link)
组成。
- 结点可以是计算机、集线器、交换机、路由器等
- 链路可以是有线链路、无线链路
- 集线器(Hub):
- 可以把多个结点连接起来,组成一个计算机网络
- 普通民用领域已很少用集线器
- 交换机(Switch)
- 可以把多个结点连接起来,组成一个计算机网络
- 家庭、公司、学校通常用交换机组建内部网络
- 路由器(router)
- 可以把两个或多个计算机网络互相连接起来,形成规模更大的计算机网络,也可称“互连网”
- 路由器工作在网络层
计算机网络课程中的“路由器”和“家用路由器”有一些区别。
家用路由器=路由器+交换机+其他功能
交换机的作用是组建一个计算机网络,路由器的作作用是连接两个或多个计算机网络。
互联网(因特网,Internet)
ISP:Internet Service Provider,即互联网服务提供商,如中国电信/移动/联通
互联网(因特网,Internet):由各大ISP和国际机构组建的,覆盖全球范围的互连网(internet)
- 互联网必须使用TCP/IP协议通信
- 互连网可使用任意协议通信
计算机网络的组成
计算机网络的功能
三种数据交换技术
- 电路交换(用于电话网络)
- 报文交换(用于电报网络)
- 分组交换(用于现代计算机网络)
电路交换(Circuit Switching)
通过物理线路的连接、动态地分配传输线路资源
电路交换过程:
- 建立连接(尝试占用通信资源)
- 通信(一直占用通信资源)
- 释放连接(归还通信资源)
电路交换的优点:
- 数据直达,传输速率高。通信前从主叫端到被叫端建立一条专用的物理通路,在通信的全部时间内,两个用户始终占用端到端的线路资源。
电路交换的缺点:
- 建立/释放;连接,需要额外的时间开销
- 线路被通信双方独占,利用率低
- 线路分配的灵活性差
- 交换节点不支持“差错控制”(无法发现传输过程中发生的数据错误)
电路交换更适用于:低频次、大量传输数据
计算机之间数据往往是“突发式”传输,即往往会高频词、少量地传输数据。
报文交换(message)
报文交换的优点:
- 通信前无需建立连接
- 数据以“报文”为单位被交换节点间“存储转发”,通信线路可以灵活分配
- 在通信时间内,两个用户无需独占一整条物理线路。相比于电路交换,线路利用率高
- 交换节点支持“差错控制”(通过校验技术)
报文交换缺点:
- 报文不定长,不方便存储转发管理
- 长报文的存储转发时间开销大、缓存开销大
- 长报文容易出错、重传代价高
分组交换
报文(不定长)的控制信息包含源地址、目的地址等
分组(定长)的控制信息包含源地址、目的地址:分组号等。
分组交换的优点:
- 分组前无需建立连接
- 数据以“分组”为单位被交换节点间“存储转发”,通信线路可以灵活分配
- 在通信时间内,两个用户无需独占一整条物理线路。相比于电路交换,线路利用率高
- 交换节点支持“差错控制”(通过校验技术)
相比于报文交换,分组交换改进了如下问题:
- 分组定长,方便存储转发管理
- 分组的存储转发时间开销小、缓存开销小
- 分组不易出错,重传代价高
分组交换的缺点:
- 相比于报文交换,控制信息占比增加
- 相比于电路交换,依然存在存储转发时延
- 报文被拆分为多个分组,传输过程中可能出现失序、丢失等问题,增加处理 的复杂度。
虚电路交换技术(基于分组交换)
虚电路交换的过程
- 建立连接(虚拟电路)
- 通信(分组按序、按已建立好的既定线路发送,通信双方不独占线路)
- 释放连接
三种交换方式性能对比
计算机网络的分类
按分布范围分类
- 广域网(WAN)
- 城域网(MAN):与局域网类似
- 局域网(LAN):交换机
- 个域网(PAN):蓝牙、zigbee
按传输技术分类
- 广播式网络:当一台计算机发送数据分组时,广播范围内所有计算机都会收到该分组,并通过检查分组的目的地址决定是否接收该分组。(所有无线网络都是广播式)
- 点对点网络:数据只会从发送方“点对点”发到接受法,精准送达。(路由器转发的数据分组)
按拓扑结构分类
- 总线形结构:数据“广播式”传送,存在“总线争用”问题(典型代表:集线器连接的设备)
- 环形结构:数据“广播式”传输,通过“令牌”解决总线争用问题,令牌顺环形依次传递,拿到令牌者可使用总线(典型代表:令牌环网流行语2000年以前的局域网技术)
- 星形结构:由中央设备实现数据的“点对点”传输,不存在”总线争用“问题(典型代表:以太网交换机连接的设备)
- 网状结构:数据通过各中间节点逐一存储转发,属于“点到点”传输(典型代表:由众多路由器构建的广域网)
按使用者分类
- 公用网——向公众开放的网络。如:办宽带、交手机话费即可使用的互联网
- 专用网——仅供某个组织内部使用的网络。如:政府、军队、电力、银行的内部网络。
按传输介质分类
- 有线网络——如:网线、光纤
- 无线网络——如:5G、WIFI、卫星
计算机网络的性能指标
- 速率、带宽、吞吐量
- 时延、时延带宽积、往返时延
- 信道利用率
信道(Channel):表示向某一方向传送信息的通道(信道≠通信线路)一条通信线路在逻辑上旺旺对应一条发送信道和一条接收信道。
性能指标1:速率
速率(Speed):指连接到网络上的节点在信道上传输数据的速率。也称数据率
或比特率
、数据传输速率
。
速率单位:bit/s或b/s或bps
性能指标2:带宽
带宽(bandwidth):某信道所能传送的最高数据率。
上行信道、下行信道
节点间通信实际能达到的最高速率,由带宽、节点性能共同限制。
带宽在《通信原理》中表示某信道允许通过的信号频带范围。单位Hz。
带宽在《计算机网络》中表示某信道所能通过的最高数据率。单位bps。
本质一样:信道带宽越大,传输数据的能力越强。
性能指标3:吞吐量
吞吐量(Throughput):指单位时间内通过某个网络(或信道、接口)的实际数据量。
吞吐量收带宽限制、受复杂的网络负载情况影响。
性能指标4:时延
时延(Delay):指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所粗的时间。有时也称为延迟
或迟延
。
总时延=发送时延+传播时延+处理时延+排队时延
-
发送时延又名传输时延,节点将数据推向信道所花的时间
数据长度(bit) / 发送速率(bit/s)
-
传播时延电磁波在信道中传播一定的距离所花的时间
信道长度(m)/电磁波在信道中的传播速度(m/s)
-
处理时延被路由器处理所花的时间(分析首部、查找存储转发表)
-
排队时延数据排队进入、排队发出路由器所花的时间
处理时延和排队时延受网络负载、路由器性能等诸多因素影响。考试中一般不用考虑。
性能指标5:时延带宽积
时延带宽积:一条链路中,已从发送端发出但尚未到达接收端的最大比特数。
时延带宽积 = 传播时延 × 带宽
理解:传播时延相当于水管长度,带宽相当于水管横截面,时延带宽积就是水管所能容纳的最大水量。
性能指标6:往返时延
游戏延迟,反映的就是“手机——服务器”之间的往返时延RTT
往返时间RTT(Round-Trip Time):表示从发送方发送完数据,到发送方收到来自接收方的确认总共经历的时间。
不包括发送方发送数据的发送时延
性能指标7:信道利用率
信道利用率:某个信道有百分之多少的时间是有数据通过的。
信道利用率不能太低,浪费资源
信道利用率也不能太高,容易导致网络拥塞
计算机网络分层结构
- 将复杂的计算机网络在逻辑上划分为多个层次,并将各种“功能”安排在合适的层次中。
- 不同类型的节点,实现的功能层次可能不一样
-
网络的体系结构是计算机网络的各层及其协议的集合,就是这个计算机网络及其构件所应完成的功能的精确定义(不涉及实现)。
-
实现是遵循这种体系结构的前提下,用何种硬件或软件完成这些功能的问题。
体系结构是抽象的,而实现则是具体的
实体:在计算机网络的分层结构中,第n层中的活动元素(软件+硬件)通常称为第n层实体。不同机器上的同一层称为对等层,同一层的实体称为对等实体。
协议:即 网络协议,是控制对等实体之间进行通信的规则的集合,是水平的。
接口:即同一节点内相邻两层的实体交换信息的逻辑接口,又称为服务访问点(Service Access Point, SAP)。
服务:服务是指下层为紧邻的上层提供的功能调用,它是垂直的。
上一层实体通过接口,请求相邻下层的服务
PDU、SDU、PCI的概念
- 协议数据单元(PDU):对等层次之间传送的数据单位。第n层的PDU记为n-PDU。
- 服务数据单元(SDU):为完成上一层实体所要求的功能而传送的数据。第n层的SDU记为n-SDU。
- 协议控制信息(PCI):控制协议操作的信息。第n层的PCI记为n-PCI。
三者之间的关系:n-SDU + n-PCI =n-PDU = (n-1)-SDU
协议三要素
协议:即 网络协议,是控制对等实体之间进行通信的规则的集合,是水平的。
协议由语法、语义和同步(或时序)三部分组成。
- 语法,数据与控制信息的格式。例如,协议控制信息(首部)部分占几个字节、每个字节是什么含义;协议的数据部分最多由多少字节。
- 语义,即需要发出何种控制信息、完成何种动作及做出何种应答。例如,协议中需要明确规定:发送方完数据后,接收方是否需要“应答”,以及应答的种类有哪些(如:传输成功、传输失败)
- 同步(或时序),执行各种操作的条件、时序关系等,即事件实现顺序的详细说明。例如,发送方发完数据后,接收方需要立即应答。如果发送方在10秒内未收到“传输成功”应答,则发送方会再次发送数据。
OSI参考模型
记住各层的名称和顺序(物联网叔会使用)
TCP/IP模型
记住各层的名称和顺序
TCP/IP模型各层功能
TCP/IP模型和OSI模型的区别