Skip to content

1 概述

历史阶段

  1. 1983 TCP/IP,分组交换网 ARPANET
  2. 未商业化三级树形结构: 主干网 - 地区网 - 局域网
  3. ISP (Internet Service Provider).
    • ISP 例如移动联通
    • IXP 允许地区 ISP 交换不经过主干 ISP
    • 90 年代 www 出现
    • 树形: 主干 ISP - 主干 ISP(可互连接) - 地区 ISP - 本地 ISP - 校园网 / 公司 - 主机

标准化机构

不说了。

边缘部分(终端,不负责转发数据)通信方式

  • CS(Client/Server)
  • P2P(Peer to Peer): 任何主机可以是客户端也可以是服务器

分组交换

打电话会独占链接,不适合网络传输。

路由器存储转发过程:

  • 暂存收到的分组
  • 检查分组头部
  • 查找转发表(由路由器动态维护)
  • 按头部的目的地址,找到合适的接口转发出去 #qm what's 接口?

分组交换缺点:

  • 排队延迟
  • 不保证带宽,不保证谁用的多谁用得少
  • 头部信息开销

复用技术: #qm for what?

  • 频分复用 - 不同包调频
  • 时分复用 - 时间片轮转
  • 统计复用

报文交换: 部分流水线化(太慢了)

计网分类

  • PAN (Personal Area Network) 10m 就是热点
  • LAN (Local) 一公里,高速通信线路例如学校内
  • MAN (Metropolitan) 城市
  • WAN (Wide) 很远

使用者: 分为公用网,专用网(校园公司网)

把终端接入网络的网络: AN. 居民不太方便直接接入 ISP,需要一个路由器中转

性能

  • 速率 bit/s 通常指额定速率,不是实际运行速率
  • 带宽 bit/s : 一个信道可通过的理论数据率,可以认为控制
  • 吞吐量: 就是实际带宽,还是 bit/s

注意 1M bit/s 是 1e6,而 1MB 是 $2^20$

  • 时延
    • 发送时延 = 数据长度 / 速率
    • 传播时延 = 传播距离 / 传播速率 (光纤为 2 / 3 光速)
    • 排队时延
    • 处理时延

三大类交换的区别

  • 报文交换可以一段路走到黑,也可以分开几段走
  • 分组交换
    • 数据报交换: 是最基本的分组交换
    • 虚电路交换: 不用分配带宽,不会占用固定线路(可交叉) #qm 啥玩意

交换时间计算

  • 分组交换网络: 如果有 n 个交换节点,总时间 T = 第一个节点发送所有组数据 + 剩下 (n - 1) 节点转发完最后一组的时间 (因为至少要接收到一组数据才能开始转发)
  • 报文交换,每个节点都要消耗全部分组时间
  • 电路交换,建立好链接的前提下只有一个节点的时间

时延带宽积

传播时延 × 带宽。这是对于传输链路计算的,衡量链路是否被充分利用。

  • 可理解为发送端发出但未到达接收端的 bit 量(管道里滞留的信息量)

往返时间 RTT

从发送方送完数据到发送方收到接收方回复的时间。计算方式,在这里就是 $2 times "传播时延" + "校验时间" + "确认包的发送时延"$:

计算有效数据率: $"有效数据率" = "数据长度" / "实际消耗总时间" = "数据长度" / "发送时间 + RTT"$,代表从开始发送到确认对方收到整个过程的速率。

题目可能会直接给 RTT,让你计算有效数据率之类的。

利用率

  • 信道利用率: 信道用多大比例的时间是被使用的。
  • 利用率也不是越高越好,$D_"网络当前时延" = D_(0 "空闲时延") / (1 - U_"利用率")$
  • 网络利用率: 全网络信道利用率的加权平均

体系结构

  • Arpanet 提出的抽象方法:
    1. 抽象分层
    2. 统一标准
    3. 模块独立

协议与划分层次

ISO 提出了 OSI(open system interconnection) 7 层理想模型,但是实际上不采用。

计网体系结构定义:

  1. 定义层次
  2. 定义层次内部协议,即这个层次要实现的功能
  3. 协议只是规则,具体实现由厂商来做

协议

  • 语法: 数据格式
  • 语义: 格式表达含义和功能
  • 同步: 完成一个任务需要的操作和时序,例如 TCP 的握手

  • 层内功能:

    • 差错控制: 可靠性
    • 流量控制: 发送速率必须使得接收端来得及接受
    • 分段和重装: 传输大数据时需要分段,接收端还原
    • 复用和分用: 发送端几个高层会话复用一个低层连接,接收端分用还原
    • 连接建立和释放: 交换数据前建立一条逻辑连接,数据传输完毕后释放

物流分层示例:

TCP/IP 四层模型不是严格的标准,现在通用的是五层模型:

  1. 应用层: 进程间交换信息,为用户服务 | https
  2. 传输层: 在两台主机的进程之间传输数据。上一层是用这个数据,传输层是传这个数据 | TCP(稳定链接,可靠数据) UDP (无连接,最快传输服务)
  3. 网络层: 为不同主机提供通信服务,包括路由选择(通过算法为路由器生成转发表)和转发(依据转发表将分组发送到下一个路由器) | IP 协议,数据单位为 IP 数据报
  4. 数据链路层: 实现相邻节点的可靠通信 | 以太网 or WiFi,数据单位为帧,做差错检验, MAC 地址
  5. 物理层: 传输 bit | 协议规定物理接口的规格,几根引脚,如何链接

应用层确定用法,传输层 tcp 确定进程,网络层 ip 确定主机,链路层从 bit 流中划分数据,物理层确定物理属性

每一层都有一种数据传输单元 (PDU),主机虽然不同,但协议和 PDU 封装解封规则一样.

路由器不需要最上面两层,顺着下面三层解析 IP 就行。

每多一层协议,↑就会多一层 header

实体,协议,服务,服务访问点

  1. 实体就是那一层东西
  2. 协议: 同一层实体之间沟通的约定
  3. 服务: 下层实体为上层实体提供功能接口服务
    • 上下层沟通需要用到交换服务原语 #qm
    • 接口就是服务访问点 SAP (Service Access Point)

OSI 七层架构与上述架构的区别

  • 将应用层拆层了三个,又称资源子网
    • 应用层: app
    • 表示层: 统一不同系统之间的数据格式差异
    • 会话层: 建立进程之间的通信会话
  • 传输层: 运行精简的的 tcp & udp 为会话层提供服务
  • 底下三层: 通信子网

流量控制在不同层的区别

考点

PDU & 功能

PDU 功能
物理层 bit bit 传输
链路层 保证帧内无差错
网络层 分组(数据报) 路由,连接异构网络
传输层 tcp: 报文段 udp: 用户数据报
会话层
应用层 各种应用协议

数据控制

  • 差错控制(内部校验),可靠传输,流量控制(点对点局部控制):链路层网络层传输层都有
  • 拥塞控制:链路层没有