Skip to content

概述

overview-summary

计算机网络的概念

计算机网络:是一个将分散的、具有独立功能的计算机系统,通过通信设备线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。

这里需要注意的是,按分布范围,计算机网络里有局域网 LAN 和广域网 WAN, 其中局域网的代表以太网,以及这两种网络最重要的区分点, 局域网基于广播技术广域网基于分组交换技术。

计算机网络性能的衡量指标

overview-graph-1

速率

定义:连接在计算机网络上的主机在数字信道上传送数据位数的速率

单位: b/s, Kb/s, Mb/s, Tb/s

如果用字节表示,则是 B/s, KB/s, MB/s, TB/s

大写 B 是字节,小写是 b 是比特

1 Byte = 8Bit

带宽

带宽原本指某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)

计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的“最高数据率”

单位:“比特每秒”,b/s, kb/s, Mb/s, Gb/s

也可以说是网络设备所支持的最高速度

比如说你家的电信网络是 100兆 比特,意思是,一秒内最大的传输速率是 100兆 比特。

吞吐量

表示在单位时间内通过某个网络(或信道、接口)的数据量。单位是b/s, kb/s, Mb/s等

吞吐量受网络的带宽或网络的额定速率的限制

提示

吞吐量是一个或多个设备的综合速率,比如说 1000m 宽带的路由器连着三部手机,每部手机都是 10mb/s 上网, 那么速率就是 10mb/s,带宽是宽带的 1000m,路由器吞吐量是 30mb/s,即三者之和

时延

时延是指数据(报文/分组/比特流)从网络(或链路)的一端传送到另一端所需的时间

时延包括四大类

名称描述计算公式
发送时延数据从主机到信道上所用的时间发送的数据长度/发送速率
传播时延数据在信道上传播所花费的时间信道长度/电磁波在信道上传播的速率
排队时延数据在路由器前等待前面数据处理的时间,取决于网络当前的通信量。-
处理时延数据在路由器中收到分组时进行处理需求的时间-

使用高速链路(提高网速),只能减小发送时延,无法减少其他三个时延

时延带宽积

公式:时延带宽积 = 传播时延 x 带宽

意思是链路上一共有多少比特的数据

往返时延RTT

发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认),总共经历的时延

RTT越大,在收到确认之前,可以发送的数据越多

因为时延大了,这段时间就长了,能发的数据自然就多了

RTT包括:

  • 往返传播时延 = 传播时延 * 2
  • 末端处理时间

利用率

信道利用率 = 有数据通过时间 / 有+无数据通过时间

网络利用率 = 所有信道利用率加权求平均值

分层结构

为什么要分层?分层要做什么?

  • 发起通信的计算机必须将数据通信的通路进行激活
  • 要告诉网络如何识别目的主机。
  • 发起通信的计算机要查明目的主机是否开机,并且与网络连接正常。
  • 发起通信的计算机要弄清楚,对方计算机中文件管理程序是否已经做好准备工作
  • 确保差错和意外可以解决。

分层的基本原则

  1. 各层之间相互独立,每层只实现一种相对独立的功能
  2. 每层之间界面自然清晰,易于理解,相互交流尽可能少
  3. 结构上可分割开。每层都采用最合适的技术来实现
  4. 保持下层对上层的独立性,上层单向使用下层提供的服务
  5. 整个分层结构应该能促进标准化工作

概念总结

  • 网络体系结构是从功能上描述计算机网络结构
  • 计算机网络体系结构简称网络体系结构是分层结构
  • 每层遵循某个/些网络协议以完成本层功能
  • 计算机网络体系结构是计算机网络的各层及其协议的集合
  • 第 n 层在向 n+1 层提供服务时,此服务不仅包含第 n 层本身的功能,还包含由下层服务提供的功能。
  • 仅仅在相邻层间有接口,且所提供服务的具体实现细节对上一层完全屏蔽。
  • 体系结构是抽象的,而实现是指能运行的一些软件和硬件

OSI 参考模型

overview-e2e

  • 网络层、传输层、回话层、表示层、应用层,每一层都要对上一层发送的数据进行处理(加个头部)
  • 数据链路层不仅需要加头部,还需要加尾部
  • 物理层什么都不加,只管发送数据(比特流)

overview-osi

应用层

用户与网络的界面,所有能和用户交互产生网络流量的程序

典型应用层服务:文件传输(FTP)、电子邮件(SMTP)、万维网(HTTP)...

表示层

用于处理在两个通信系统中交换信息的表示方式(语法和语义)

  • 功能一:数据格式变换
  • 功能二:数据加密解密
  • 功能三:数据压缩和恢复

会话层

向表示层实体/用户进程提供建立连接并在连接上有序地传输数据,这是会话,也是建立同步(SYN)

  • 功能一:建立、管理、终止会话
  • 功能二:使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信,实现数据同步

适用于传输大文件,就是在传输失败的时候,可以直接从校验点继续传输

传输层

负责主机中两个进程的通信,即端到端的通信。传输单位是报文段或用户数据报。

  • 功能一:可靠传输、不可靠传输
  • 功能二:差错控制
  • 功能三:流量控制
  • 功能四:复用分用

复用:多个应用层进程可同时使用下面运输层的服务

分用:运输层把收到的信息分别交付给上面应用层中相应的进程

网络层

主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。 网络层传输单位是数据报

  • 功能一:路由选择
  • 功能二:流量控制
  • 功能三:差错控制
  • 功能四:拥塞控制

若所有结点都来不及接受分组,而要丢弃大量分组的话,网络就处于拥塞状态,因此要采取一定措施,缓解这种拥塞。

数据链路层

主要任务是把网络层传下来的数据报组装成帧。 数据链路层/链路层的传输单位是帧

  • 功能一:成帧(定义帧的开始和结束)
  • 功能二:差错控制 帧错+位错
  • 功能三:流量控制
  • 功能四:访问(接入)控制 控制对信道的访问

物理层

主要任务是在物理媒体上实现比特流的透明传输

物理层传输单位是比特

透明传输:指不管所传数据是什么样的比特组合,都应当能够在链路上传送。

  • 功能一:定义接口特性
  • 功能二:定义传输模式 单工、半双工、双工
  • 功能三:定义传输速率
  • 功能四:比特同步
  • 功能五:比特编码

五层协议

overview-osi-tcp-5

  • 应用层 :为特定应用程序提供数据传输服务,例如 HTTP、DNS 等协议。数据单位为报文。

  • 传输层 :为进程提供通用数据传输服务。由于应用层协议很多,定义通用的传输层协议就可以支持不断增多的应用层协议。运输层包括两种协议:传输控制协议 TCP,提供面向连接、可靠的数据传输服务,数据单位为报文段;用户数据报协议 UDP,提供无连接、尽最大努力的数据传输服务,数据单位为用户数据报。TCP 主要提供完整性服务,UDP 主要提供及时性服务。

  • 网络层 :为主机提供数据传输服务。而传输层协议是为主机中的进程提供数据传输服务。网络层把传输层传递下来的报文段或者用户数据报封装成分组。

  • 数据链路层 :网络层针对的还是主机之间的数据传输服务,而主机之间可以有很多链路,链路层协议就是为同一链路的主机提供数据传输服务。数据链路层把网络层传下来的分组封装成帧。

  • 物理层 :考虑的是怎样在传输媒体上传输数据比特流,而不是指具体的传输媒体。物理层的作用是尽可能屏蔽传输媒体和通信手段的差异,使数据链路层感觉不到这些差异。

TCP / IP 参考模型

overview-tcp

它只有四层,相当于五层协议中数据链路层和物理层合并为网络接口层。

TCP/IP 体系结构不严格遵循 OSI 分层概念,应用层可能会直接使用 IP 层或者网络接口层。

总结

overview-summary

Released under the MIT License.