计算点:

  • 时延。
  • 吞吐量。
  • 采用持续连接与非持续连接传输 Web 对象的 RTT。
  • 分组交换与电路交换相关计算。

    因特网

    定义

    物理观点

    因特网 = 端设备 + 分组交换机 + 通信链路。
    主机(host)或端系统(end system):连入互联网的设备,如智能手机、平板电脑、笔记本电脑、台式电脑、电视、游戏机等等。
    分组交换机:路由器和交换机。
    通信链路:同轴电缆、铜线、光纤、无线电频谱。
    分组:当一个端系统向另一个端系统发送数据时,发送端将数据分段并添加首部后,称为分组。
    路径:从发送端到接收端,一个分组所经历的一系列通信链路和分组交换机。
    因特网服务提供商(Internet Service Provider,ISP)

  • 每个 ISP 自身是由多台分组交换机和多段通信链路组成的网络。

  • 作用:提供端系统接入互联网服务。
  • 各大 ISP 之间也必须互联的。

RFC:Request For Comment,请求评论,IETE(Internet Engineering Task Force)的标准文档。IETE 是研发因特网标准的组织。

服务观点

因特网是为应用程序提供服务的基础设施,如编程接口、协议等等。
基础设施:Web、Email、games 等等。
编程接口:通信接口 socket,Java、python 等语言的应用程序编程接口。
协议:HTTP 协议、UDP / TCP协议、SMTP 协议、IP 协议、DHCP 协议、ICMP 协议、路由选择协议等等。

协议

两个或多个远程通信实体的所有网络活动的规约。
协议定义了两个或多个远程通信实体之间交换报文的格式顺序,以及报文发送和接受或对其他事件采取动作

三要素

  1. 语法:数据与控制信息的结构或格式。
  2. 语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
  3. 时序:事件实现顺序的详细说明。

形象理解:语法表示要做什么,语义表示怎么做,时序表示做的顺序。

网络边缘

端系统 + 接入网
端系统:一般分客户端和服务器,服务器一般在数据中心。
接入网:连接端系统到边缘路由器的网络。边缘路由器是端系统到其他远程端系统的路径上的第一台路由器。

  • 家庭接入网:DSL(Digital Subscriber Line)方式,基于现有电话专用线路,采用多路复用技术。Cable Modem 方式,基于共享的有线电视线路,采用频分复用技术。
  • 企业接入网:以太网,以太网交换机和机构路由器。
  • 无线接入网:WiFi 短距离,广域网无线接入如 3G、4G、LTE 等。

物理传输媒介:双绞铜线、同轴电缆、光纤、陆地无线电频谱、卫星无线电频谱。

网络核心

由互联因特网端系统的分组交换机和链路构成的网状网络。

分组交换

分组交换机在链路的输入端使用存储转发传输机制。
存储转发:交换机必须接收到完整的分组后,才能转发该分组。
路由:根据路由算法决定分组的目的路由器。
转发:根据转发表把分组放到合适的输出链路上。

时延

从一个端系统发送一个分组到另一个端系统完全接收该分组所花的时间。

传输时延

端系统把一个分组中全部比特推送到链路上所花的时间。
设一个分组的大小为 L 比特,链路的传输速率为 R 比特 / 秒
则该分组的传输时延 = 概述 - 图1
一个分组经过了 N 条链路(则有 N - 1 台路由器)到达端系统,则总的传输时延为 概述 - 图2
P 个分组经过了 N 条链路(则有 N - 1 台路由器)到达端系统的传输时延为

传播时延

比特在链路上传播所花时间。
设链路长度为 s 米,传播速度为 m 米 / 秒
则传播时延为

排队时延

在分组交换机的缓存队列中等待被处理所花的时间。

处理时延

分组被链路上的交换机处理所花的时间,

总时延

总时延 = 传输时延 + 传播时延 + 排队时延 + 处理时延

丢包

由于各种原因分组无法到达目的端系统。如路由器缓存队列已满丢弃分组、分组严重损坏被丢弃等等。

电路交换

资源预留。端到端通信过程中,预留了端系统沿路径通信所需的资源,如缓存、链路传输速率等。
一条链路分为多条电路,建立实实在在的连接。
概述 - 图3
如图为 1 号和 4 号端系统预留了第 1 条链路的第 2 条电路和 第 2 条链路的第 1 条电路,若一条链路的传输速率是 1 Mbps,那么这两个端系统获得了 1/4 即 250 kbps 的专用传输速率。

复用技术

把一条链路分为多条电路的技术有:

  1. 频分复用技术 FDM,Frequency-Division Multiplexing,将链路频谱划分为多个频段(带宽),一个用户用一个频段。
  2. 时分复用技术 TDM,Time-Division Multiplexing,链路分帧,帧中有时隙,一个用户对应一个时隙。

概述 - 图4

  1. 波分复用技术。
  2. 码分复用技术。

分组交换与电路交换对比

各有千秋。
分组交换的优点:

  1. 提供了比电路交换更好的带宽共享。
  2. 比电路交换的实现更简单,成本更低,不需要实现各种复用技术。

分组交换的缺点:

  1. 不适合实时服务。分组交换的端到端时延是变化的、不可预测的(主要是排队时延导致的)。
  2. 可能丢包。当网络拥塞时,分组可能丢失,因此要采取可靠传输和拥塞控制协议。

分组交换的适用范围:

  1. 突发性场合。瞬间有许多并发数据需要传输。

电路交换的优点:

  1. 公平性。为每个用户预留了同等的通信资源。
  2. 稳定性。每个用户拥有稳定的传输速率。

电路交换的缺点:

  1. 资源浪费。大多数时候,并非所有用户都会使用资源。
  2. 难以充分利用资源。当一个用户需要更多的传输速率时,即使有空闲资源也不能分配。

网络中的网络

端系统通过 ISP 接入因特网,ISP 本身是一个网络,ISP 之间必须互联,形成网络中的网络。

网络结构1

单个 global ISP
概述 - 图5
客户 ISP 和 global ISP 存在经济争议。

网络结构2

多个 global ISP
概述 - 图6
多个 global ISP 竞争。
层级结构,底层向上层付费,同层之间也存在付费。

网络结构3

引入 IXP(Internet Exchange Point)因特网交换点,对等同层 ISP,使得同层的 ISP 之间不需要互相付费。
概述 - 图7

网络结构4

通过局域 ISP 接入 global ISP
概述 - 图8

网络结构5

加入网络内容提供商
概述 - 图9

分组交换中的性能指标

时延

时延:从一个端系统发送一个分组到另一个端系统完全接收该分组所花的时间。
总时延:传输时延 + 传播时延 + 排队时延 + 处理时延
传输时延:端系统把一个分组中全部比特推送到链路上所花的时间。
传播时延:比特在链路上传播所花时间,一般略小于光速。
排队时延:在分组交换机的缓存队列中等待被处理所花的时间,如等待被传输。
处理时延:分组被链路上的交换机处理所花的时间,如检查首部。
概述 - 图10
注意传输时延和传播时延的区别。

概述 - 图11
流量强度:La /R
a:分组到达队列的平均速率
L:分组长度
R:传输速率
设计的系统流量强度不能大于 1,随着流量强度的靠近 1,排队时延指数上升。

丢包

由于各种原因分组无法到达目的端系统。如路由器缓存队列已满丢弃分组、分组严重损坏被丢弃等等。
丢包率可以反映网路的拥塞状况。

吞吐量

吞吐量是计算机网络中的主机在给定带宽或额定速率下,单位时间内通过某个网络(信道,接口)实际数据量,可以理解为获得的实际带宽,基本单位 bit / s 或 bps(bit per second)
概述 - 图12
吞吐量为 概述 - 图13

概述 - 图14

  1. 当 R 很大时,吞吐量为 概述 - 图15
  2. 当 R 和 Rs 和 Rc 相同量级时,瓶颈就在这条公共链路,有 M 个用户时,平均只能为每个用户提供 的传输速率。

协议

两个或多个远程通信实体的所有网络所有活动的规约。
协议定义了两个或多个远程通信实体之间交换报文的格式顺序,以及报文发送和接受或对其他事件采取动作

三要素

  1. 语法:数据与控制信息的结构或格式。
  2. 语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
  3. 时序:事件实现顺序的详细说明。

形象理解:语法表示要做什么,语义表示怎么做,时序表示做的顺序。

分层结构

为什么分层

采用分层结构设计网络协议,把大而复杂的问题简化,每一层只关注自己要实现的部分,易于维护、更新;一个层的改变对于另一个层是透明的(不可见的),不会影响其他层的功能。

分层特点

分层协议中,中间层向下调用服务,向上提供服务。最底层无调用只提供,最高层有调用有提供(提供给应用程序调用)。

分层模型

TCP/IP 模型

实践模型,共 5 层。
概述 - 图16
图片解释:

  1. 报文、报文段、数据报、帧分别是分组在各层的特有名称。
  2. 一个分组包含两部分:首部字段和有效载荷。有效载荷来通常来自上一层。
  3. 封装:传输层、网络层、数据链路层都会封装自己的首部字段。
  4. Ht 是传输层加入的首部。
  5. Hn 是网络层加入的首部。
  6. Hl 是数据链路层加入的首部。
  7. 链路层交换机没有网络层。
  8. 经过路由器时,从物理层开始,有数据链路层到网络层的拆包(去掉了 Hl)和网络层到数据链路层的装包(加上了 Hl)。

每一层简述:
应用层:两个端系统的应用程序通过调用应用层协议互相发送报文。

  • 例如使用 HTTP 协议传输 Web 文档;使用 SMTP 协议传输电子邮件;利用 FTP 协议传输文件;利用 DNS 协议解析主机名获取 IP 地址。

传输层:利用 TCP 或 UDP 协议,在两个端系统之间传输应用层报文。

  • TCP 提供可靠的、面向连接的、流量控制和拥塞控制的传输服务。
  • UDP 提供无连接、不可靠的传输服务。

网络层:利用 IP 协议、路由选择协议等将数据报在两个端系统之间传输。

  • IP 协议定义了数据报中各个字段以及端系统和路由器如何作用于这些字段。
  • 路由选择协议定义了如何将数据报从源传输到目的地。

数据链路层:将帧从一个节点传输到另一个节点。

  • PPP 协议,Point to Point Protocol,点对点协议,不可靠的协议。

物理层:基于物理媒介将帧中的比特从一个节点传输到另一个节点。

  • 同轴电缆,双绞铜线,光纤等等。

OSI 模型

理论模型,共 7 层,由国际化标准组织 ISO 提出。

概述 - 图17