目录

  • 第一章 概述
    • 1.1 计算机网络在信息时代的作用
    • 1.2 互联网概述
    • 1.3 互联网的组成
    • 1.5 计算机网络的类别
      • 1.5.2几种不同类别的计算机网络
    • 1.6 计算机网络的性能
      • 1.6.1 计算机网络的性能指标
      • 1.6.2 计算机网络的非性能特征
    • 1.7 计算机网络体系结构
      • 1.7.2 协议与划分层次
      • 1.7.3 具有五层协议的体系结构
      • 1.7.4 实体、协议、服务和服务访问点
  • 第二章 物理层
    • 2.1 物理层的基本概念
    • 2.2 数据通信的基础知识
      • 2.2.1数据通信的基础知识
      • 2.2.2 有关信道的基本概念
      • 2.2.3 信道的极限容量
    • 2.4 信道复用技术
      • 2.4.2 波分复用
      • 2.4.3 码分复用
    • 2.5 数字传输系统
  • 第三章 数据链路层
    • 3.1 使用点对点信道的数据链路层
    • 3.2 点对点协议PPP
      • 3.2.1 PPP协议的特点
      • 3.2.3 PPP协议的工作状态
    • 3.3 使用广播信道的数据链路层
    • 3.3.1 局域网中的数据链路层
      • 3.3.2 CSMA/CD协议
    • 3.4 拓展以太网
      • 3.4.1 在物理层拓展以太网
      • 3.4.2 在数据链路层拓展以太网
  • 第四章 网络层
    • 4.1 网络层提供的两种服务
    • 4.2 网际协议IP
      • 4.2.1 虚拟互连网络
      • 4.2.2 分类的IP地址
      • 4.2.3 IP地址与硬件地址
      • 4.2.4 地址解析协议ARP
      • 4.2.6 IP层转发分组的流程
    • 4.3 划分子网和构造超网
      • 4.3.1 划分子网
      • 4.3.2 使用子网时分组的转发
      • 4.3.3 无分类编制CIDR(构造超网)
    • 4.4 网际控制报文协议ICMP
      • 4.4.1 ICMP报文的种类
    • 4.5 互联网的路由选择协议
      • 4.5.1 有关路由选择协议的几个基本概念
      • 4.5.2 内部网关协议RIP
      • 4.5.3 内部网关协议OSPF
    • 4.6 IPv6
    • 4.7 IP多播
  • 第五章 运输层
    • 5.1运输层协议概述
      • 5.1.1 进程之间的通信
      • 5.1.2 运输层的两个主要协议
      • 5.1.3 运输层的端口
    • 5.2 用户数据报协议UDP
      • 5.2.1 UDP概述
      • 5.2.2 UDP的首部格式
    • 5.3 传输控制协议TCP概述
      • 5.3.1 TCP最主要的特点
      • 5.3.2 TCP的连接
    • 5.4 可靠传输的工作原理
      • 5.4.1 停止等待协议
      • 5.4.2 连续ARQ协议
    • 5.5 TCP报文段的首部格式
    • 5.6 TCP可靠传输的实现
      • 5.6.1 以字节为单位的滑动窗口
    • 5.7 TCP的流量控制
    • 5.8 TCP的拥塞控制
      • 5.8.1 拥塞控制的一般原理
      • 5.8.2 TCP的拥塞控制方法
    • 5.9 TCP的运输连接管理
      • 5.9.1 TCP连接的建立
  • 第六章 应用层
    • 6.1 域名系统DNS
      • 6.1.1 域名系统概述
      • 6.1.2 互联网的域名结构
      • 6.1.3 域名服务器
    • 6.2 文件传送协议
      • 6.2.1 FTP概述
      • 6.2.2 FTP基本工作原理
    • 6.3 远程终端协议TELNET
    • 6.4 万维网WWW
      • 6.4.1 万维网概述
      • 6.4.2 统一资源定位符URL
      • 6.4.3 超文本传送协议HTTP
    • 6.5 电子邮件
      • 6.5.1 电子邮件概述
      • 6.5.2 简单邮件传送协议SMTP
    • 6.6 动态主机配置DHCP

第一章 概述

1.1 计算机网络在信息时代的作用

21世纪的重要特征是数字化、网络化和信息化,它是一个以网络为核心的信息时代。

互联网具有两个重要基本特点,即联通性和共享

1.2 互联网概述

计算机网络由若干结点和连接这些结点的链路组成。

1.3 互联网的组成

互联网的拓扑结构虽然非常复杂,并且在地理上覆盖了全球,但从其工作方式上看,可以划分为两大块:

(1)边缘部分 由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信和资源共享。

(2)核心部分 由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的。

在网络边缘的端系统之间的通信方式通常可以划分为两大类:客户-服务器方式对等方式

1.客户-服务器方式

特征:客户是服务请求方,服务器是服务提供方。

客户程序在通信时主动向远程服务器发起通信,因此客户程序必须知道服务器程序的地址。

服务器程序时一种专门用来提供某种服务的程序,可同时处理多个远地或本地客户的请求·。

2.对等连接方式

特征:两台主机在通信时并不区分哪一个是服务请求哪一个是服务提供方。

在互联网的核心部分起特殊作用的是路由器

路由器是实现分组交换的关键构件,其任务是转发收到的分组

分组交换采用存储转发技术。通常我们把要发送的整块数据称为一个报文。分组是在互联网中传送的数据单元,分组的首部包含了诸如目的地址源地址等重要信息。

分组交换的优点:

  1. 高效 在分组传输的过程中动态分配传输带宽,对通信链路是逐段占用。
  2. 灵活 为每一个分组独立地选择最合适的转发路由。
  3. 迅速 以分组作为传送单位,可以不先建立链接就能向其他主机发送分组。
  4. 可靠 保证可靠性的网络协议,分布式多路由的分组交换网,使网络有很好的生存性。

三种交换方式:电路交换、报文交换、分组交换

1.5 计算机网络的类别

1.5.2几种不同类别的计算机网络

按照网络的作用范围进行分类

  • 广域网WAN
  • 城域网MAN
  • 局域网LAN
  • 个人区域网PAN

按照网络的使用者进行分类

  • 公用网
  • 专用网

用来把用户接入到互联网的网络

接入网AN,它又称为本地接入网或居民接入网。接入网本身既不属于互联网核心部分,也不属于互联网的边缘部分。

1.6 计算机网络的性能

1.6.1 计算机网络的性能指标

速率

比特是信息量的单位

网络技术中的速率指的是数据的传送速率,它也称为数据率

带宽

在计算机网络中,带宽用来表示网络中某通道传送数据的能力,因此网络带宽表示在单位时间内网络中的某信道能通过的最高数据率

带宽的单位是比特每秒

吞吐量

吞吐量表示在单位时间内通过某个网络的实际数据量

时延

时延是指数据从网络的一端传送到另一端所需的时间

  • 发送时延

    主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间

    发送时延=数据帧长度(bit)发送速率(bit/s)发送时延=\frac{数据帧长度(bit)}{发送速率(bit/s)}发送时延=发送速率(bit/s)数据帧长度(bit)​

  • 传播时延

    电磁波在信道中传播一定的距离需要花费的时间

    传播时延=信道的长度(m)电磁波在信道上点的传播速率(m/s)传播时延=\frac{信道的长度(m)}{电磁波在信道上点的传播速率(m/s)}传播时延=电磁波在信道上点的传播速率(m/s)信道的长度(m)​

  • 处理时延

    主机和路由器在接受到分组时要花费一定的时间进行处理

  • 排队时延

    分组在经过网络传输时,要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。在路由器确定了转发接口后,还要在输出队列中排队等待转发

时延带宽积

时延带宽积=传播时延∗带宽时延带宽积=传播时延*带宽时延带宽积=传播时延∗带宽

往返时间RTT

有效数据率=数据长度发送时间+RTT有效数据率=\frac{数据长度}{发送时间+RTT}有效数据率=发送时间+RTT数据长度​

利用率

利用率有信道利用率网络利用率两种

完全空闲的信道的利用率是零

网络利用率是全网络的信道利用率的加权平均值

信道利用率并非越高越好

信道或网络利用率过高会产生非常大的时延

1.6.2 计算机网络的非性能特征

  • 费用
  • 质量
  • 标准化
  • 可靠性
  • 可拓展性和可升级性
  • 易于管理和维护

1.7 计算机网络体系结构

1.7.2 协议与划分层次

网络协议:为进行网络中的数据交换而建立的规则、标准或约定

网络协议主要由三个要素组成

  • 语法
  • 语义
  • 同步

分层带来的好处

  • 各层之间是独立的
  • 灵活性好
  • 结构上可分割开
  • 易于实现和维护
  • 能促进标准化工作

通常各层所要完成的功能主要有

  • 差错控制
  • 流量控制
  • 分段和重装
  • 复用和分用
  • 连接建立和释放

计算机网络的各层及其协议的集合就是网络的体系结构

体系结构是抽象的,而现实则是具体的,是真正在运行的计算机硬件和软件

1.7.3 具有五层协议的体系结构

  • 应用层

    应用层的任务是通过应用进程间的交互来完成特定网络应用

    应用层协议定义的是应用进程间通信和交互的规则

    我们把应用层交互的数据单元称为报文

  • 运输层

    运输层的任务就是负责向两台主机中进程之间的通信提供通用的数据传输服务

    运输层主要使用以下两种协议

    • 传输控制协议TCP
    • 用户数据报协议UDP
  • 网络层

    网络层负责为分组交换网上的不同主机提供通信服务

    网络层把运输层产生的报文段或用户数据封装成分组进行传送

    互联网是由大量的异构网络通过路由器相互连接起来的

  • 数据链路层

    数据链路层将网络层交下来的IP数据组装成帧,每一帧都包括数据和必要的控制信息

  • 物理层

    在物理层上所传的数据的单位是比特

1.7.4 实体、协议、服务和服务访问点

实体

表示任何发送或接收信息的硬件或软件进程

协议

控制两个对等实体进行通信的规则的集合

在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务

协议是水平的,服务是垂直的

在同一系统中相邻两层的实体进行交互的地方,通常称为服务访问点SAP

第二章 物理层

2.1 物理层的基本概念

物理层的作用:尽可能屏蔽掉传输媒体和通信手段的差异,使物理层上面的数据链路层感觉不到这些差异

用于物理层的协议也常称之为物理层规程

可以将物理层的主要任务描述为确定与传输媒体的接口有关的一些特性

  • 机械特性
  • 电气特性
  • 功能特性
  • 过程特性

数据在计算机内部是并行传输,但在通信路线上是串行传输

2.2 数据通信的基础知识

2.2.1数据通信的基础知识

一个数据通信系统可划分为三大部分

  • 源系统

    • 源点
    • 发送器
  • 传输系统
  • 目的系统
    • 接收器
    • 终点

通信的目的是传送消息数据是运送消息的实体,信号是数据的电气或电磁的表现

根据信号中代表消息的参数的取值方式不同,信号可以分为两大类

  • 模拟信号(连续信号)

  • 数字信号(离散信号)

2.2.2 有关信道的基本概念

从通信双方的信息交互来看,可以有以下三种基本方式:

  • 单向通信
  • 双向交替通信
  • 双向同时通信

来自信源的信号常称为基带信号

基带信号往往包含较多的低频成分,因此可以对基带信号进行调制

调制的两种方法:

  • 常用编码方式

    数字信号转化为数字信号

    • 不归零制
    • 归零制
    • 曼彻斯特编码
    • 差分曼彻斯特编码
  • 基本的带通调制方法

    数字信号转化为模拟信号

    • 调幅
    • 调频
    • 调相

2.2.3 信道的极限容量

信号失真因素

  • 码元传输的速率高

  • 信号传输的距离远

  • 噪声干扰越大

  • 传输媒体质量差

限制码元在信道上传输速率的因素有以下两个

  • 信道能够通过的频率范围

    在任何信道中,码元传输的速率是有上限的,传输速率超过此上限就会出现严重的码间串扰的问题,使接收端对码元的判决称为不可能

  • 信噪比

信噪比(dB)=10log10(S/N)(dB)信噪比(dB)=10log_{10}(S/N) (dB)信噪比(dB)=10log10​(S/N)(dB)

香农公式

信道的极限信息传输率C=Wlog2(1+S/N)信道的极限信息传输率C=Wlog_2(1+S/N)信道的极限信息传输率C=Wlog2​(1+S/N)

W为信道的带宽,S为信道内所传信号的平均功率,N为信道内部的高斯噪声功率

信道的带宽或信道中的信噪比越大,信息的极限传输速率就越高

2.4 信道复用技术

复用

  • 频分复用

    频分复用的所有用户在同样的时间占用不同的带宽资源

  • 时分复用

    时分复用的所有用户是在不同的时间占用同样的频带宽度

    更有利于数字信号的传输

    可能会造成线路资源的浪费

在进行通信时,复用器总是和分用器成对的使用,在复用器和分用器之间是用户共享的高速信道

统计时分复用STDM(异步时分复用)是一种改进的时分复用,它能明显提高信道的利用率(STDM帧按需动态分配时隙)

集中器常使用这种统计时分复用

2.4.2 波分复用

波分复用是光的频分复用

使用一根光纤来同时传输多个频率很接近的光载波信号

密集波分复用

在一根光纤上复用几十路或更多路数的光载波信号

2.4.3 码分复用

码分复用CDM是另一种共享信道的方法

各用户使用经过特殊挑选的不同码型,因此各用户之间不会造成干扰

2.5 数字传输系统

早期的数字传输系统存在许多缺点,其中最主要的是以下两个:

  • 速率标准不统一
  • 不是同步传输

第三章 数据链路层

信道:

  • 点对点信道
  • 广播信道

3.1 使用点对点信道的数据链路层

链路就是从一个结点到相邻结点的一段物理线路

数据链路层的协议数据单元——

数据链路层把网络层交下来的数据构成发送到链路上,以及把接收到的中的数据取出并上交给网络层

网络层协议数据单元是IP数据报

三个基本问题

  • 封装成帧

    在一段数据的前后分别添加首部和尾部(帧定界)

    每一种链路层协议都规定了所能传送的帧的数据部分长度上限——最大传送单元MTU

  • 透明传输

    使传输过程中数据中出现的控制字符"SOH"和"EOT"在接收端不被解释为控制字符

    具体实现方法:字节填充,插入转义字符

  • 差错检测

    循环冗余检验CRC

    1. 添加n位冗余码,将M变为2n2^n2n M
    2. 求出冗余码=2n2^n2n M % P,即FCS

    除数P=1101,P(x)生成多项式为X3+X2+1X^3+X^2+1X3+X2+1

3.2 点对点协议PPP

3.2.1 PPP协议的特点

  • 简单,只检验差错,而不是纠正差错
  • 不使用序号,也不进行流量控制
  • 可同时支持多种网络协议

PPP协议应该满足的需求

  • 简单
  • 封装成帧
  • 透明性
  • 多种网络层协议
  • 多种类型链路
  • 差错检验
  • 检测连接状态
  • 最大传送单元
  • 网络层地址协商
  • 数据压缩协商

PPP协议的组成

  • 一个将IP数据报封装到串行链路的方法。PPP既支持异步链路,也支持面向比特的同步链路。IP数据报就是在PPP帧中的信息部分
  • 一个用来建立、配置和测试数据链路连接的链路控制协议LCP
  • 一套网络控制协议NCP

PPP的首部和尾部分别为四个字段和两个字段。

标志字段表示一个帧的开始和结束,如果连续出现两个标志字段就表示一个空帧

3.2.3 PPP协议的工作状态

双方建立了物理层连接后,PPP就进入链路建立状态,其目的是建立链路层的LCP连接

此时发送LCP的配置请求帧。链路的另一端可以发送以下几种响应的一种:

  • 配置确认帧 所有选项都接受
  • 配置否认帧 所有选项都能理解但不接受
  • 配置拒绝帧 选项有的无法识别或不能接受

协商结束后进入鉴别状态

鉴别成功进入网络层协议状态

当网络层配置完毕后,链路就进入可进行数据通信的链路打开状态

数据传输结束后,可以由链路的一端发送终止请求LCP分组,在收到对方发来的终止确认LCP分组后转到链路终止

可见,PPP协议已不是纯粹的数据链路层的协议,它还包含了物理层网络层的内容

3.3 使用广播信道的数据链路层

3.3.1 局域网中的数据链路层

局域网的主要特点

  • 网络为一个单位所拥有,且地理范围和站点数目均有限

局域网的主要优点

  • 具有广播功能,从一个站点很方便地访问全网,局域网上的主机可以共享连接在局域网上的各种硬件和软件资源
  • 便于系统的拓展和逐渐演变,各设备的位置可灵活调整和改变
  • 提高了系统的可靠性可用性生存性

局域网可以按网络拓扑图进行分类

  • 星形网
  • 环形网
  • 总线网

共享信道

  • 静态划分信道

    • 频分复用
    • 时分复用
    • 波分复用
    • 码分复用
  • 动态媒体接入控制(多点接入)
    • 随机接入
    • 接受接入,如多点线路探询,或轮询

以太网的两个标准

  • DIX Ethernet V2 是世界上第一个局域网产品(以太网)的规约

  • IEEE 802.3 是第一个 IEEE 的以太网标准

数据链路层的两个子层

  • 逻辑链路控制 LLC子层
  • 媒体接入控制 MAC子层

与接入到传输媒体有关的内容都放在MAC子层,而LLC子层则与传输媒体无关

不管采用何种协议的局域网,对LLC子层来说都是透明的(LLC子层看不见下面的局域网)

配适器的作用

网络接口板又称为通信适配器网络接口卡

以太网的适配器有过滤功能,它只接收单播帧广播帧多播帧

适配器的重要功能

  • 进行串行/并行转换
  • 对数据进行缓存
  • 在计算机的操作系统安装设备驱动程序
  • 实现以太网协议

3.3.2 CSMA/CD协议

最初的以太网是将许多计算机都连接到一根总线上。易于实现广播通信

为了实现一对一通信,将接收站的硬件地址写入帧首部中的目的地址字段中。仅当数据帧中的目的地址与适配器的硬件地址一致时,才能接收这个数据帧

为了通信方便,以太网采取以下两种措施:

  • 采用较为灵活的无连接的工作方式

    **缺点:**若多台计算机或多个站点同时发送时,会产生发送碰撞或冲突,导致发送失败

    解决方案:CSMA/CD协议 (载波监听多点接入/碰撞检测)

    • 多点接入:总线型网络,许多计算机以多点接入的方式连接在一根总线上
    • 载波监听:每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞
    • 碰撞检测:计算机边发送数据边检测信道上的信号电压大小,看是否有碰撞发生
  • 使用曼彻斯特编码

3.4 拓展以太网

3.4.1 在物理层拓展以太网

使用集线器可以在物理层拓展以太网

优点

  • 使原来属于不同碰撞域的以太网上的计算机能够进行跨碰撞域的通信
  • 扩大了以太网覆盖的地理范围

缺点

  • 碰撞域增大了,但总的吞吐量并未提高
  • 如果不同的碰撞域使用不同的数据率,那么就不能用集线器将它们互连起来

3.4.2 在数据链路层拓展以太网

使用以太网交换机可以在数据链路层拓展以太网

以太网交换机实质上是一个多接口的网桥

以太网交换机具有并行性

第四章 网络层

网络层协议数据单元是IP数据报

重要内容

  • 虚拟互连网络的概念
  • IP地址与物理地址的关系
  • 传统的分类的IP地址和无分类域间路由选择CIDR
  • 路由选择协议的工作原理

4.1 网络层提供的两种服务

  • 虚电路服务
  • 数据报服务

网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务

4.2 网际协议IP

与IP协议配套使用的还有三个协议:

  • 地址解析协议 ARP
  • 网际控制报文协议 ICMP
  • 网际组管理协议 IGMP

4.2.1 虚拟互连网络

将网络互相连接在一起要使用一些中间设备

  • 物理层使用的中间设备叫做转发器
  • 数据链路层使用的中间设备叫做网桥桥接器
  • 网络层使用的中间设备叫做路由器
  • 在网络层以上使用的中间设备叫做网关

互联网可以由多种异构网络互连组成

4.2.2 分类的IP地址

IP地址的编址方法共经过了三个历史阶段

  • 分类的IP地址
  • 子网的划分
  • 构成超网

每一类地址都有两个固定长度的字段组成

第一个字段是网络号

第二个字段是主机号

IP地址指派范围

网络类别 可指派的网络数 第一个可指派的网络号 最后一个可指派的网络号 每个网络中可指派的主机数
A 126(27−22^7-227−2) 1 126 16777214(224−22^{24}-2224−2)
B 16384(2142^{14}214) 128.0 191.255 65534(216−22^{16}-2216−2)
C 2097152(2212^{21}221) 192.0.0 233.255.255 254(28−22^8-228−2)

IP地址的重要特点

  • 每一个IP地址都有网络号和主机号两部分组成
  • 实际上IP地址是标志一台主机和一条链路的接口(多归属主机
  • 用转发器或网桥连接起来的若干个局域网仍然为一个网络
  • 在IP地址中,所有分配到网络号的网络都是平等的

4.2.3 IP地址与硬件地址

物理地址是数据链路层物理层使用的地址

IP地址是网络层和以上各层使用的地址,是一种逻辑地址

4.2.4 地址解析协议ARP

ARP协议的用途:从网络层使用的IP地址,解析出在数据链路层使用的硬件地址

ARP高速缓存:本局域网上的各主机和路由器的IP地址硬件地址的映射表

工作过程:

  1. ARP进程在本局域网上广播发送一个ARP请求分组
  2. 在本局域网上的所有主机上运行ARP进程都收到此ARP请求分组
  3. 主机B的IP地址与ARP请求分组中查找的IP地址一致,就收下这个ARP分组,并向主机A发送ARP响应分组,同时在这个ARP响应分组中写入自己的硬件地址
  4. 主机A收到主机B的ARP响应分组后,就在其ARP高速缓存中写入主机B的IP地址到硬件地址的映射

4.2.6 IP层转发分组的流程

  1. 从数据报的首部提取目的的主机IP地址D,得出目的的网络地址N
  2. 若N就是与此路由器直接相连的某个网络地址,则进行直接交付,否则间接交付,执行3
  3. 若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行4
  4. 若路由表中有到达网络N的路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行5
  5. 若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器,否则执行6
  6. 报告转发分组出错

4.3 划分子网和构造超网

4.3.1 划分子网

从两级IP地址到三级IP地址

  • IP地址的利用率有时很低
  • 给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏
  • 两级IP地址不够灵活

两级IP地址在本单位内部变成了三级IP地址:网络号子网号主机号

子网掩码

子网掩码中网络号+子网号全为1,主机号全为0

A类地址的默认子网掩码是255.0.0.0

B类地址的默认子网掩码是255.255.0.0

C类地址的默认子网掩码是255.255.255.0

子网掩码是一个网络或一个子网的重要属性

划分子网增加了灵活性,但却减少了能够连接在网络上的主机总数

4.3.2 使用子网时分组的转发

使用子网划分后,路由表必须包含

  • 目的网络地址
  • 子网掩码
  • 下一跳地址

4.3.3 无分类编制CIDR(构造超网)

使用变长子网掩码VLSM可以进一步提高IP地址资源利用率

无分类域间路由选择CIDR主要特点

  • CIDR消除了传统的A、B、C类地址以及划分子网的概念
  • CIDR把网络前缀都相同的连续IP地址组成一个CIDR地址块

4.4 网际控制报文协议ICMP

用途:为了有效地转发IP数据报和提高交付成功的机会

4.4.1 ICMP报文的种类

ICMP报文的种类有两种

  • ICMP差错报告报文

    • 终点不可达
    • 时间超过
    • 参数问题
    • 改变路由
  • ICMP询问报文
    • 回送请求和回答
    • 时间戳请求和问答

ICMP的重要应用:PING

4.5 互联网的路由选择协议

4.5.1 有关路由选择协议的几个基本概念

理想的路由算法

  • 算法必须是正确的和完整的
  • 算法在计算上应简单
  • 算法应能适应通信量和网络拓扑的变化
  • 算法应具有稳定性
  • 算法应是公平的
  • 算法应是最佳的

分层次的路由选择协议

互联网采用的路由选择协议主要是自适应的、分布式路由选择协议

为此,可以把整个互联网划分为许多较小的自治系统,一般都记作AS。一个AS对其他AS表现出的是一个单一的和一致的路由选择策略

互联网把路由选择协议划分为两大类

  • 内部网关协议IGP

    • RIP、OSPF
  • 外部网关协议EGP
    • BGP

自治系统之间的路由选择也叫作域间路由选择,而在自治系统内部的路由选择叫做域内路由选择

4.5.2 内部网关协议RIP

适用小型互联网

RIP的中文名称叫路由信息协议,是一种分布式的基于距离向量的路由选择协议

RIP协议的特点

  • 仅和相邻路由器交换信息
  • 路由器交换的信息是当前本路由器所知道的全部信息,即自己现在的路由表
  • 按固定的时间间隔交换路由信息

路由表更新的原则是找出到每个目的网络的最短距离,这种更新算法又称为距离向量算法

RIP协议的报文格式

RIP协议由首部路由部分组成

RIP存在的一个问题是当网络出现故障时,要经过比较长的时间才能将此信息传送到所有的路由器

RIP协议最大的优点是实现简单、开销较小

4.5.3 内部网关协议OSPF

适用大型互联网

开放最短路优先OSPF是基于Dijkstra提出的最短路径算法SPF

OSPF最主要的特征就是使用分布式的链路状态协议,而不是向RIP那样的距离向量协议

工作原理

  1. 向本自治系统中所有路由器发送信息,使用洪泛法
  2. 发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息
  3. 只有当链路状态发生变化时,路由器才向所有路由器用洪泛法发送此信息

所有的路由器最终都能建立一个链路状态数据库,这个数据库实际上就是全网的拓扑结构图

OSPF不用UDP而是直接用IP数据报传送

OSPF其他特点

  • OSPF允许管理员给每条路由指派不同的代价

  • 如果到同一个目的网络有多条相同代价的路径,那么可以将通信量分配给这几条路径,这叫做多路径间的负载平衡

  • 所有在 OSPF 路由器之间交换的分组都具有鉴别的功能,保证在可信赖的路由器之间交换信息

  • 支持可变长度的子网划分和无分类编址 CIDR

  • 每一个链路状态都带上一个 32 位的序号,序号越大状态就越新

OSPF五种分组类型

  • 问候分组
  • 数据库描述分组
  • 链路状态请求分组
  • 链路状态更新分组
  • 链路状态确认分组

4.6 IPv6

协议数据单元:分组

IPv4:数据报

变化

  • 更大的地址空间,IPv6把地址从IPv4的32位增大到4倍,即128位

  • 扩展的地址层次结构

  • 灵活的首部格式

  • 改进的选项

  • 允许协议继续扩充

  • 支持即插即用

  • 支持资源的预分配

  • 首部改为8字节对齐

组成:基本首部有效载荷

目的地址:单播、多播、任播

地址使用冒号十六进制记法

4.7 IP多播

与单播相比,在一对多的通信中,IP多播可大大节约网络资源

IP多播使用D类地址

IP多播需要使用网际组管理协议IGMP多播路由选择协议

第五章 运输层

5.1运输层协议概述

5.1.1 进程之间的通信

从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务

通信真正的端点并不是主机而是主机中的进程

网络层为主机之间提供逻辑通信,而运输层为应用进程之间提供端到端逻辑通信

运输层有一个很重要的功能:复用分用

运输层需要有两种不同的运输协议,即面向连接的TCP无连接的UDP

5.1.2 运输层的两个主要协议

  • 用户数据报协议UDP
  • 传输控制协议TCP

UDP在传送数据之前不需要先建立连接不可靠信道

TCP则提供面向连接的服务,在传送数据之前必须建立连接,全双工的可靠信道

5.1.3 运输层的端口

复用:应用层所有的应用进程都可以通过运输层再传送到IP层

分用:运输层从IP层收到发送给各应用进程的数据后,必须分别交付指明的各应用进程

硬件端口是不同硬件设备之间进行交互的接口,而软件端口是应用层的各种协议进程与运输实体进行层间交互的一种地址

TCP/IP的运输层用一个16位端口号来标志一个端口

5.2 用户数据报协议UDP

5.2.1 UDP概述

UDP主要特点

  • UDP是无连接
  • UDP使用尽最大努力交付
  • UDP是面向报文
  • UDP没有拥塞控制
  • UDP支持一对一、一对多、多对一和多对多的交互通信
  • UDP的首部开销小

5.2.2 UDP的首部格式

UDP有两个字段:数据字段首部字段

各字段意义:

  • 源端口
  • 目的端口
  • 长度
  • 检验和

5.3 传输控制协议TCP概述

5.3.1 TCP最主要的特点

TCP主要特点

  • TCP是面向连接的运输层协议
  • 每一条TCP连接只能有两个端点
  • TCP提供可靠交付的服务
  • TCP提供全双工通信
  • 面向字节流

5.3.2 TCP的连接

TCP把连接作为最基本的抽象

TCP的连接端口叫套接字插口

每一条TCP连接唯一地被通信两端的两个端点所确定

5.4 可靠传输的工作原理

5.4.1 停止等待协议

使用确认重传机制我们就可以在不可靠的传输网络上实现可靠的通信

自动重传请求ARQ

信道利用率:U=TDTD+RTT+TAU=\frac{T_D}{T_D+RTT+T_A}U=TD​+RTT+TA​TD​​

TDT_DTD​ A发送分组的时间

TAT_ATA​ B确认分组的时间

RTT 往返时间

5.4.2 连续ARQ协议

连续ARQ协议规定,发送方没收到一个确认,就把发送窗口向前滑动一个分组的位置

接收方一般都是采用累积确认的方式,这就是说,接收方不必对收到的分组逐个发送确认,而是在收到几个分组后,对按序号到达的最后一个分组发送确认

优点:容易实现,即使确认丢失也不必重传

缺点:不能向发送方反映出接收方已经正确收到所有分组的信息

5.5 TCP报文段的首部格式

5.6 TCP可靠传输的实现

5.6.1 以字节为单位的滑动窗口

发送窗口和接收窗口

发送窗口中有三个指针P1、P2、P3

x<P1x<P1x<P1 已发送并且已经收到确认

P1≤x<P2P1≤x<P2P1≤x<P2 已发送但未收到确认

P2≤x<P3P2≤x<P3P2≤x<P3 允许发送但未发送

x≥P3x≥P3x≥P3 不允许发送

5.7 TCP的流量控制

利用滑动窗口机制实现流量控制

流量控制:让发送方的发送速率不要太快,要让接收方来得及接收

TCP的窗口单位是字节

5.8 TCP的拥塞控制

5.8.1 拥塞控制的一般原理

某段时间内,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏。这种情况叫做拥塞

所谓的拥塞控制就是防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载

拥塞控制是一个全局性的过程

当网络的吞吐量明显小于理想的吞吐量时,网络就进入轻度的拥塞状态

当提供的负载达到某一数值时,网络的吞吐量反而随着提供的负载的增大而下降,这时网络就进入拥塞状态

当提供的负载继续增大到某一数值时,吞吐量下降到0,这就是死锁

从控制理论的角度看,分为开环控制闭环控制两种方法

5.8.2 TCP的拥塞控制方法

TCP的拥塞控制方法有四种:慢开始拥塞避免快重传快恢复

慢开始和拥塞避免

发送方维持一个叫做拥塞窗口cwnd的状态变量

判断网络拥塞的依据就是出现了超时

慢开始:由小到大逐渐增大发送窗口,也就是说由小到大逐渐增大拥塞窗口数值

拥塞窗口cwnd每次的增加量为min(N,SMSS)min(N,SMSS)min(N,SMSS)

每经过一个传输轮次,拥塞窗口cwnd就加倍

为了防止拥塞窗口cwnd增长过大引起网络拥塞,还需设置一个慢开始门限ssthresh

拥塞避免算法的思路是上拥塞窗口cwnd缓慢地增大,即经过一个RTT就把cwnd加1

当出现超时时,新的ssthresh变成cwnd/2

快重传

采用快重传算法可以让发送方尽早知道发生了个别报文段的丢失

比如接收方没有收到M3,但收到了M4,接收方会一直重复确认M2,直到收到M3为止

快恢复

发送方知道只是丢失了个别报文后,不启动慢开始,而是执行快恢复,发送方调整ssthresh为cwnd/2,同时设置cwnd=ssthresh,并开始执行拥塞避免算法

一旦出现超时3个重复的确认,就把门限ssthresh设置为当前cwnd的一半

注意点:超时后执行慢开始3个重复确认后执行快重传

在网络层,也可以使路由器采用适当的分组丢弃策略(如主动队列管理AQM),以减少网络拥塞的发生

5.9 TCP的运输连接管理

运输连接有三个阶段

  • 连接建立
  • 数据传送
  • 连接释放

5.9.1 TCP连接的建立

三次握手

A到B: SYN=1,seq=x

B到A: SYN=1,ACK=1,seq=y,ack=x+1

A到B: ACK=1,seq=x+1,ack=y+1

为什么A最后还要发送一次确认?

防止已失效的连接请求报文突然又传送到了B,因而产生了错误

第六章 应用层

6.1 域名系统DNS

6.1.1 域名系统概述

域名系统DNS是互联网使用的命名系统

域名到IP地址的解析是由分布在互联网上的许多域名服务器程序共同完成的。域名服务器程序在专设的节点上运行,而人们也常把运行域名服务器程序的机器称为域名服务器

6.1.2 互联网的域名结构

互联网采用了层次树状结构的命名方式

任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名

每一个域名都由标号序列组成

6.1.3 域名服务器

一个服务器负责管辖的范围叫

每一个区设置相应的权限域名服务器,用来保存该区中的所有主机的域名到IP地址的映射。

根据域名服务器所起的作用分为四种类型

  • 根域名服务器
  • 顶级域名服务器
  • 权限域名服务器
  • 本地域名服务器

域名解析过程

  1. 主机向本地域名服务器的查询一般都是采用递归查询。如果主机所询问的本地域名服务器不知道被查询域名的 IP 地址,那么本地域名服务器就以 DNS 客户的身份,向其他根域名服务器继续发出查询请求报文
  2. 本地域名服务器向根域名服务器的查询通常是采用迭代查询。当根域名服务器收到本地域名服务器的迭代查询请求报文时,要么给出所要查询的 IP 地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询

每个域名服务器都维护一个高速缓存,存放最近用过的名字以及如何从何处获得名字映射信息的记录

作用:可大大减轻根域名服务器的负荷,使因特网上的DNS查询请求和回答报文的数量大为减少

网络运营商植入广告

原因在于DNS被当地运营商劫持,DNS服务器掌握在运营商,因此运营商可以很轻易就在用户的电脑上插入广告。比如运营商可以让在用户登录时,让DNS向用户发出一个含有广告的网站。又或是当用户访问某个网站,就将用户要访问的网站嵌入到广告页面中。

6.2 文件传送协议

6.2.1 FTP概述

文件传送协议FTP是互联网上使用最广泛的文件传送协议

6.2.2 FTP基本工作原理

FTP只提供文件传送的一些基本服务,它使用TCP可靠的运输服务

FTP的主要功能是减少或消除在不同操作系统下处理文件的不兼容性

FTP使用客户服务器方式

FTP的服务器进程由两大部分组成:一个主进程、若干个从属进程

FTP两个从属进程:控制进程数据传送进程

FTP客户端和服务器之间要建立两个并行的TCP连接

6.3 远程终端协议TELNET

6.4 万维网WWW

6.4.1 万维网概述

万维网是一个大规模的、联机式的信息储藏所

万维网是一个分布式的超媒体系统,它是超文本系统的扩充

6.4.2 统一资源定位符URL

URL是用来表示从互联网上得到的资源位置和访问这些资源的方法

URL的一般形式由一下四个部分组成

<协议>://<主机>:<端口>/<路径>

HTTP的默认端口号是80

6.4.3 超文本传送协议HTTP

HTTP是面向事务的应用层协议,它是万维网上能够可靠地交换文件的重要基础

HTTP虽然使用TCP作为传输层协议,但HTTP本身是无连接的

HTTP是无状态的

HTTP的报文结构:请求报文响应报文

请求行格式:方法、URL、版本

响应行格式:版本、状态码、短语

6.5 电子邮件

6.5.1 电子邮件概述

电子邮件的两个重要的标准就是:简单邮件传送协议SMTP互联网文本报文格式

一个电子邮件系统的三个主要组成构件:用户代理邮件服务器邮件发送协议和读取协议

POP3是邮局协议

用户代理发送邮件到发送方服务器(SMTP协议/TCP连接)

发送方服务器发送邮件到接收方服务器(SMTP协议/TCP连接)

接收方服务器读取文件到用户代理(POP3协议/TCP连接)

6.5.2 简单邮件传送协议SMTP

  1. 建立连接
  2. 邮件传送
  3. 连接释放

6.6 动态主机配置DHCP

互联网现在广泛使用的是动态主机配置协议DHCP,它提供了一种机制,称为即插即用连网

DHCP中继代理收到主机先以广播形式发送的发现报文后,就以单播形式向DHCP服务器转发报文

计算机网络期末复习(已完结)相关推荐

  1. 计算机网络期末复习资料(一)单选题

    计算机网络期末复习资料(一) 一.单选题 1. 当一个以太网中的一台源主机要发送数据给同一网络中的另一台目的主机时,以太帧头部的目的地址是() A.路由器的IP地址      B.路由器的MAC地址 ...

  2. 计算机网络期末复习提纲(全知识点总结)

    计算机网络期末复习提纲全知识点总结 第一章 概述 1.基本概念 - 链路,结点,协议和服务,实体和对等实体,各层PDU - C/S模式,B/S模式,P2P模式 - LAN,WAN,MAN,PAN的划分 ...

  3. 计算机网络期末复习资料(一)

    计算机网络期末复习资料(一) 一.单选题 1. 当一个以太网中的一台源主机要发送数据给同一网络中的另一台目的主机时,以太帧头部的目的地址是() A.路由器的IP地址      B.路由器的MAC地址 ...

  4. 计算机网络期末复习攻略

    计算机网络期末复习攻略 一.名词解释 IP:Internet Protocol 网际互连协议 IPCP:IP Control Protocol IP控制协议 ARP:Address Resolutio ...

  5. (52 90) 简答 什么叫计算机网络,计算机网络期末复习试卷.doc

    计算机网络期末复习试卷 计算机网络模拟试题及参考答案 一.填空题 1.数据链路层的主要任务是在相邻结点间的线路上无差错地传送以帧为单位的数据,网络层的主要任务是选择合适的路由,应用层的主要任务就是将各 ...

  6. 中南大学计算机网络期末试卷,中南大学计算机网络期末复习试卷1

    中南大学计算机网络期末复习试卷1 计算机网络复习习题 1一.选择题1. 采用全双工工作,数据的传输方向为:()A.双向 B.单向 C.双向,但不能同时传输 D.都不对2.BSC 规程采用的成帧方式为( ...

  7. 哈工大计算机网络期末复习资料知识点总结

    根据慕课和上课的笔记整理的资料,由于时间跨度较大可能会出现详略不得当和错误等情况,望指正 下载地址:[免费]哈工大计算机网络期末复习资料知识点总结.pdf-网络基础文档类资源-CSDN下载根据慕课和上 ...

  8. 郑州轻工业大学软件学院计算机网络期末复习

    如果今后不能陪在你身边,祝你早安午安晚安 -- <楚门的世界> I guess it comes down to a simple choice:get busy living or ge ...

  9. 计算机网络期末复习整理

    前言: 本复习笔记基于王相林的<计算机网络>第二版整理 只针对与期末复习所作 *为可能重点考察内容 文章目录 1.计算机网络概述 1.1计算机网络的定义 2. 计算机网络协议和体系结构 2 ...

  10. 大学计算机网络期末重点,中南大学计算机网络期末复习重点

    计算机网络课复习要点 第一章 绪论 1.计算机网络体系结构的定义 层和协议的集合.它描述的是每一层的功能,必须有足够的信息,以便实现者可以为每一层编写程序或设计硬件,使之遵守有关的协议.注意:协议实现 ...

最新文章

  1. android4.0 菜单,Android 4.0.4系统曝光 增新Power菜单
  2. 全面介绍Windows内存管理机制及C++内存分配实例(一):进程空间
  3. Java 常用负载均衡算法解析
  4. APP搜索如何又快又准?
  5. PTA 1003 Emergency
  6. C++ malloc new 的区别
  7. 五脏六腑在脸上的反射区图片_痘痘脸部反射区图痘痘的位置反射五脏六腑的病症 [哈哈镜]...
  8. Base64 编码整理
  9. CSDN实训第一天-《植物大战僵尸》游戏存档与账户充值
  10. trove 配置文件
  11. ERP的工单(MO)
  12. ASP.NET Core 3.x 学习笔记(7)——Blazor
  13. java环境搭建安装
  14. 机房收费系统之简单的逻辑(上)下机费用运算
  15. 《大数据之路:阿里巴巴大数据实践》-第2篇 数据模型篇 -第8章 大数据领域建模综述
  16. 深入浅出谈人脸识别技术
  17. 2022张宇考研基础30讲 线性代数 第二讲 矩阵
  18. 【ISCA17】SCNN:AnAcceleratorforCompressed-sparseConvolutionalNeuralNetworks_一只神秘的大金毛_新浪博客...
  19. javascript-2020-0702
  20. 10、XCTF xff_referer

热门文章

  1. 3d旋转立方体特效,可自由旋转,超强透视效果的html页面源码
  2. matlab平衡小车数学模型PID,自平衡小车控制系统设计.doc
  3. 用AutoHotkey写电脑屏幕监控软件
  4. 数电大作业—简易抢答器设计
  5. 数据结构与算法基本概念总结
  6. 【Xbox360】 Party Buffalo Xbox360 硬盘读写程序 使用教程
  7. 合同诈骗与普通诈骗有什么区别
  8. webmatrix mysql_WebMatrix教程(一) (关注Microsoft 的最新武器:建立你的第一个WebMatrix网站)...
  9. 计算机网络Wireshark实验-棋歌教学网
  10. 新浪短信webservice