通信网理论基础

北京交通大学《通信网理论基础》课程,讲解排队论、路由、网络设计的基本原理和算法,一路下来,带大家在动手中,走上网络建模、性能分析、优化设计的职业道路。详细课程信息请访问:https://yishuai.github.io/net

视频合集:B站链接

课本:Dimitri P. Bertsekas and Robert G. Gallager, Data Networks (2nd Edition), Prentice Hall, 1992, 全书下载网站排队论部分PDF

B站视频合集

目录

  1. 网络基础知识
  2. 数学模型
  3. 排队论
  4. 路由
  5. 网络设计

一、网络基础知识

1:骨干网

本节介绍中国骨干网的基本情况,包括传输网和业务网。你会发现自己每天都在用的网络,原来是这样构造的。

B站视频

2:自治域

互联网发展如此迅猛,彻底改变了人类的生活方式。它的成功,很大程度上来自它基于“自治域”的管理模式。本节介绍这种模式。相信它会给你带来启发。

B站视频

3:自治域关系

全世界的自治域连接在一起,形成了互联网。两个自治域互连时,可以是平等的,也可以是“客户-服务商”的关系。本节介绍这些概念,然后介绍最新的测量感知全球自治域关系的算法。

B站视频

二、数学模型

4:Flash Crowd 用户到达模型

Flash crowd 是直播业务中经常出现的一种用户到达模式,给网络系统带来很大的挑战。本节介绍该模型及其性能分析。

B站视频

5:负指数分布

本节介绍负指数分布,特别是它与长尾分布的区别。

B站视频

6:负指数分布的无记忆性

负指数分布最神奇的是它的无记忆性。本节告诉你买二手手机的时候,为什么要选择寿命符合负指数分布的手机。

B站视频

7:泊松过程

如何模型用户随机到达公园门口的过程?泊松过程。本节介绍泊松过程的定义,很有意思。

B站视频

8:泊松过程的等价定义

泊松过程还可以通过两个连续到达用户的到达时间间隔、极短时间内用户到达概率来描述。这些描述对我们建立排队模型非常有用。

B站视频

9:马尔科夫链

马尔科夫链让我们能很方便地建立起离散状态随机过程的数学模型,特别厉害,

B站视频

10:马尔科夫链平稳状态

马尔科夫链的平稳状态,让我们可以评估随机过程的稳态概率分布,感知其工作状态,具有很强的实际意义,

B站视频

11:稳态概率和平衡方程

基于平衡方程,我们可以快速计算出马尔科夫模型的稳态概率。有两种平衡方程:全局平衡方程和局部平衡方程。本节介绍这些方程。

B站视频

三、排队论

12:排队买票模型

排队买票如何模型?本节讨论这个问题。

B站视频

13:电话网排队模型

大家争抢着打电话,如何模型?本节讨论这个问题。

B站视频

14:缓存的设计和模型

缓存越大越好?缓存设计应考虑哪些因素?如何构建缓存性能模型?本节讨论这些问题。

B站视频

15:电话网性能模型

电话网如何模型?性能如何分析?排队论研究的是何种随机过程?本节讨论这些问题。

B站视频

16:排队买饭模型

排队买饭如何模型?这取决于食堂的管理策略。本节讨论这一问题。

B站视频

17:各种排队形式

本节介绍各种排队模型,讨论不同场合,比如售票大厅、银行,适用的不同的模型。

B站视频

18:延时和系统负荷的关系

基于排队模型,我们会发现一个神奇的现象:随着系统负荷的增长,用户平均时延会迅速增长。本节介绍这一现象,并基于一个有趣的仿真工具,形象地说明这是为什么。

B站视频

19:马尔科夫排队模型

本节利用马尔科夫链,建立一个服务员的缓存排队模型,由此获得系统中存在人数的概率分布、用户到达时的等待概率、和平均队长。

B站视频

20:排队模型的Kendall表示法

利用Kendall表示法,能够方便地描述各种各样的排队模型。本节我们来看看它。

B站视频

21:M/M/1排队模型的应用

本节利用我们前面学习的马尔科夫排队模型,来解决实际问题,包括:1)分组链路传输的排队模型;2)传真服务排队模型。

B站视频

22:Little定理

我们前面学习的马尔科夫排队模型,可以得到系统中的平均人数。Little定理,能够基于这个平均人数,算出用户在系统中平均呆的时间。这个时间,才是我们排队的时候最关心的,对吧?

B站视频

23:M/M/1排队系统的时延

基于Little定理,我们现在来分析M/M/1排队模型的平均用户等待时间和停留时间。它们是我们排队的时候最关心的

B站视频

24:Little定理的更多应用

Little定理有着非常广泛的应用。要发挥它的威力,灵活使用是关键。本节我们介绍它的各种应用,并练习习题

B站视频

25:M/M/m 排队系统

本节介绍多服务器、无限缓存时的排队系统,建立其马尔科夫链模型。基于该模型,我们可以得到一个重要的系统性能指标:用户等待概率。这是我们的好朋友爱尔兰同学在一百年前的研究成果,厉害吧?因此,计算它的公式被命名为爱尔兰C公式。

B站视频

26:M/M/m/m 排队系统

本节介绍多服务器、无缓存时的排队系统,建立其马尔科夫链模型。这就是通信工程中关于电话网性能的最重要模型:呼叫损失模型。基于该模型,我们可以得到一个重要的系统性能指标:用户阻塞概率。这也是我们的好朋友爱尔兰同学在一百年前的研究成果,因此,计算它的公式被命名为爱尔兰B公式。

B站视频

27:电话网性能分析和设计

本节利用 M/M/m/m 排队模型的分析结果,特别是关于用户阻塞概率的爱尔兰B公式,进行电话网中最重要的中继线数目设计。作为专业人士,我们要熟悉掌握基于表格的系统性能分析和设计方法。

B站视频

28:M/M/∞ 排队系统

本节分析一种实际中不会出现,但有理论价值的排队系统:系统中的服务器数目无限。用马尔科夫链对其进行分析后,你将发现它与泊松分布隐秘的联系。这个结果实在是太有意思了。

B站视频

29:排队论 Python 仿真实验

本节我们介绍法国著名的IMT大学的排队论课程配套的Python仿真实验。通过编程的方法把学习的理论进行实验,看到它的真实结果,无疑是令人激动的。课程链接:https://www.edx.org/course/queuing-theory-from-markov-chains-to-multi-server-systems-2

B站视频

四、路由

30:路由入门

本节我们学习路由的基本概念,比如:我打开手机上的地图软件,搜索回家的路,这就是一个路由问题哦。在我们身边的各种各样的网络中,都存在路由问题。我们将讨论它们的特点。

B站视频

31:路径、环、树

讨论路由的算法,需要了解一些基本的图论的概念,这样,我们讨论起来就会非常方便。本节介绍图的以下基本概念:路径、环、树

B站视频

32:最小重量生成树 和 Prim-Dijkstra 算法

生成树是能够生成网络的一棵树。最小重量生成树,是边权和最小的生成树。它们在网络的设计和通信中很有价值。本节介绍它们的基本概念和获得它的一个基本算法:Prim-Dijkstra 算法

B站视频

33:最小重量生成树 的 分布式 Kruskal 算法

在大数据时代,一个图的节点数可能是海量的,比如:几十亿个。此时,Prim-Dijkstra 算法就会很慢。这时候,我们就可以采用分布式方法。本节介绍最小重量生成树的 Kruskal 算法及其分布式实现,十分适合大数据的场景。

B站视频

34:最短路径生成树

网络中一个节点和其它所有节点的最短路径关系,可描述为一个最短路径生成树。本节介绍这一基本概念。注意它和最小重量生成树的区别哦。

B站视频

35:Bellman-Ford 最短路径算法

Bellman-Ford 最短路径算法通过不断迭代,可以得到网络中一个节点的最短路径生成树。本节我们介绍它的基本思想、算法描述、收敛条件和计算复杂度。

B站视频

36:距离矢量路由算法

距离矢量路由算法,是一种基于 Bellman-Ford 的分布式路由算法,在网络中有广泛的应用。本节我们就学习它。

B站视频

37:Dijkstra 最短路径算法

Dijkstra 算法能够让网络中的一个节点找到它的最短路径生成树。基于 Dijkstra 的分布式路由算法,被称为链路状态路由算法。本节我们学习它们。

B站视频

38:链路状态路由算法应用中的问题

基于 Dijkstra 的链路状态路由算法,因为需要在网络中广播链路状态信息,所以在网络不稳定时,会出现问题,导致网络故障。本节我们就来看看这些问题,并设计解决方案。

B站视频

39:距离矢量路由算法的计数到无穷问题

故障发生时,距离矢量路由算法可能会发生计数到无穷问题,导致网络故障。本节我们用两个例子,说明这一问题,然后介绍各种解决办法,如:水平分割,反向毒化

B站视频

40:路径矢量路由方法

计数到无穷,是路由环路问题中的一种。要更好地解决路由环路问题,我们有”路径矢量“方法。该方法要求节点向邻居发送路由信息的时候,要清楚地告知该路由的完整路径。这样其它节点就可以检查自己是不是在这条路径上,因此避免路由环路的问题。本节首先通过示例说明水平分割、反向毒化等常规方法,不能完全解决路由环路问题,然后介绍路径矢量方法的基本思想及其在BGP中的应用。

B站视频

41:自适应路由及其稳定性问题

自适应路由是根据当前网络状态(如流量),自适应调整路由,以获得最佳网络性能的路由方法。可是,因为根据网络状态调整的路由,反过来又会导致网络状态变化,所以,如果处理不好,很容易出现路由震荡的问题。本节我们先介绍自适应路由的基本概念,然后用示例说明其导致的路由震荡问题,最后介绍现有的解决方法。

B站视频

42:互联网结构与域间路由

互联网由很多自治域(AS)组成,结构非常灵活。其中,AS之间有两种典型的商业关系:对等、用户-提供商。数据包在这些AS之间传递,需要域间路由。本节介绍这些基本概念。

B站视频

43:BGP 边界网关协议

边界网关协议负责AS之间的路由更新。本节介绍BGP的基本设计,并用示例说明其发送路径矢量的过程。

B站视频

44:AS商业关系和BGP路由配置

本节首先介绍具体的三种AS之间的商业关系:用户-提供商、对等、兄弟,然后用示例说明其中的道理,以及如何通过配置BGP路由实现它。

B站视频

45:合法AS路径的判断方法和实现

VALLEY-FREE方法,可以直观地判断一条AS路径是否合法;而 GAO-REXFORD 准则告诉我们应该如何配置,以确保获得合法AS路径。本节介绍它们。

B站视频

46:BGP 操纵

在实践中,多个AS可能因为竞争的关系,进行 BGP 操纵,以提高自己的收益。本节介绍前缀劫持、AS路径预先计划、网络前缀拆分、AS路径毒化等方法。这些技巧在实际中非常重要。快来看看吧。

B站视频

五、网络设计

网络设计 1:线性规划

本节介绍线性规划,它是我们将要学习的网络设计问题的主要工具。

B站视频

网络设计 2:传送网

本节介绍我们将要设计的网络:传送网,包括它的模块化单位、需求矩阵、路径、链路的基本概念。

B站视频

网络设计 3:链路-路径模型

本节首先介绍网络设计问题的基本概念,然后介绍一种简单、直观的网络设计模型记法。这种记法能直观反映链路-路径经过的节点,因此很容易理解。

B站视频

网络设计 4:节点-链路模型

本节介绍另一种网络设计模型记法:节点-链路模型。这种记法有固定数目的变量下标,用简单的数据结构就可以实现它。

B站视频

网络设计 5:链路-需求-路径标识模型

本节介绍一种更常用的网络设计模型记法:链路-需求-路径标识模型。这种记法非常灵活,功能强大,是我们后面建模使用的记法。请一定掌握。

B站视频

网络设计 6:链路容量设计

本节介绍如何建立网络模型,获得最优的网络链路容量。该问题是各种网络优化设计问题的基础,请一定要掌握它。

B站视频

网络设计 7:各种网络优化问题

本节介绍各种网络优化问题:单路径约束;模块化链路容量;给定链路容量,分配网络流量。

B站视频

网络设计 8:流量分配方案的路由实现

本节介绍一个新的问题:如何设置最短路径路由的链路权重,实现我们的流量分配方案。这在实际中有各种挑战,因此,我们又设计了ECMP协议来帮助实施。

B站视频

网络设计 9:网络资源的公平分配

本节介绍网络资源分配中的各种公平:绝对公平、最大最小公平、比例公平。非常有意思。

B站视频

网络设计 10:拓扑设计

本节介绍如何设计网络拓扑,即:要不要在两个节点间敷设一条链路。

B站视频

网络设计 11:故障恢复

本节介绍如何在网络链路容量的设计中,留出足够的余量,在某一链路发生故障的情况下,继续为用户服务。请注意,在这种情况下,我们的成本会大大增加。

B站视频

网络设计 12:多径传输的好处

本节介绍多径传输的好处:可以节省故障恢复需要付出的成本。

B站视频

网络设计 13:多层网络设计

本节介绍多层网络的联合设计。我们要建立多层网络的联合优化模型,然后讨论它的最优解。

B站视频

网络设计 14:域内流量工程

本节介绍如何配置路由协议所依据的链路权重,降低链路利用率,改善用户质量。本节我们将学到一个建立优化模型的特别方法:通过引入一个变量,将非线性的优化方程,变为线性优化方程,以便我们更容易求解。

B站视频

网络设计 15:MPLS网络设计

本节首先介绍 MPLS 网络的原理,解释它的基本约束是标签数目的约束,然后给出其优化模型,其中包括:路径最小负载约束、路径使用指示变量、链路标签数均匀。

B站视频

网络设计 16:电话交换网设计

本节首先介绍电话交换网,包括汇接局和端局,然后利用爱尔兰公式,给出一定呼损率的条件下,话务量和所需中继线数目的关系,由此建立链路容量和网络流量(即话务量)的关系,获得电话交换网的优化模型。我们并讨论了时变用户需求下的模型设计。

B站视频

网络设计 17:SDH 光传输网设计

本节首先介绍 SDH 光传输网络的拓扑、速率等级、复用,然后介绍其设计模型,特别是其模块化的传输单元。最后介绍其保护设计,包括分流、备用路径容量设计。

B站视频

网络设计 18:SDH 环设计

本节介绍 SDH 光传输网的重要设计特性:环。首先介绍其工作原理,特别是自愈特性。然后建立其容量设计模型。

B站视频

网络设计 19:WDM 波分复用网络设计

本节介绍 WDM 波分复用网络的基本原理,建立其链路容量设计模型。

B站视频

网络设计 20:IP over SDH 设计

本节介绍IP over SDH 的两层网络设计模型。

B站视频

研讨材料