From 3dd2f85239db42fae9a71600cbbba9ebb0f80933 Mon Sep 17 00:00:00 2001 From: Shine wOng <1551885@tongji.edu.cn> Date: Thu, 5 Dec 2019 19:58:33 +0800 Subject: [PATCH] some modifications on das/chp1.md, create network/conclusion.md. --- network/conclusion.md | 58 +++++++++++++++++++++++++++++++++++++++++++ thu_dsa/chp1/chp1.md | 4 ++- 2 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 network/conclusion.md diff --git a/network/conclusion.md b/network/conclusion.md new file mode 100644 index 0000000..84fd8a9 --- /dev/null +++ b/network/conclusion.md @@ -0,0 +1,58 @@ +计算机网络知识总结 +================ + +## 网络概述 + +> OSI参考模型的七层层次结构,各个层次的功能分别是什么? + +尤其关注`会话层`和`表示层`的功能。 + +> 分组交换的两种方式。 + ++ `数据报`与`虚电路`。 ++ 其中`虚电路`是`电路交换`与`数据报`方式的结合。 + +> `虚电路`方式的特点? + +## 物理层 + +> 波特率与比特率之间的区别与联系? + +> 奈奎斯特定理与香农定理的公式表述,两者的侧重点? + +需要注意信噪比的分贝表示法的公式。也不要忘了奈奎斯特定理前面有一个2的系数。 + +## 物理链路层 + +> 介质访问控制的三种方式? + +信道划分;随机访问;轮询访问。 + +> 随机访问的几种协议?它们之间的区别与联系? + +`ALOHA`协议,时隙`ALOHA`协议;`CSMA`,包括`1坚持`,`p坚持`,`不坚持`,这三种形式各自的特点;`CSMA/CD`,`CSMA/CA`。 + +其中`ALOHA`协议没有对发送做任何限制,因此信道可能存在大量的冲突,时隙`ALOHA`协议是对该情况的一种改进,但是仍然有许多冲突。因此`ALOHA`协议需要采用确认与停止等待机制来保证数据传输的正确性。可以看到,`ALOHA`协议对信道的利用率比较差。 + +`CSMA`是对`ALOHA`的一种改进策略,每个网络结点在发送数据之前会对信道的状态进行监听,只有在信道空闲时才发送,因此采用`CSMA`协议时,相对`ALOHA`而言信道上的冲突少了很多。yet`CSMA`仍然不能避免冲突,根据监听方式的不同,可以分为`1坚持`,`p坚持`和`不坚持`三种方式,各自的特点要清楚,比如`不坚持`方式是在信道忙时放弃侦听,等待一段随机时间后再侦听,而`p坚持`则是在信道忙时,等待下一个时隙再侦听。 + +`CSMA/CD`和`CSMA/CA`感觉都比较熟悉,但是需要明确无线信道是不可以使用`CSMA/CD`协议的,这是因为,一方面成本不允许,另一方面是由无线信道的特点决定的,即具有`隐蔽站`和`暴露站`问题,因此无线信道实际是允许多对主机同时通信的。 + +由于不存在`边发边听`,`CSMA/CA`应该尽量减少信道的冲突,防止信道资源的浪费。因此,`CSMA/CA`协议是在主机发送信息前使用`截断二进制指数退避`算法,以减少冲突的概率;此外,还采用`预约信道`的方式,发送方告知其他站点自己传输数据需要的时间,来进一步减少冲突。由于信道质量比较差,`CSMA/CA`需要通过确认和重传机制来保证可靠传输。 + +> 令牌环网的工作原理? + +令牌环网的工作方式也需要清楚,其中的数据帧是沿着环路一个接一个传递的,直到数据帧返回了源站点,源站点通过检查返回的数据帧来判断传输过程是否有错。令牌的传输也是沿着环路逐个传输的。 + +> 高速以太网大多同时支持半双工与全双工方式,除了10G比特以太网只有全双工方式。 + +> 以太网关于最短帧长的相关计算。 + +> 可靠传输机制的三种实现方法,它们的内在联系? + +停止等待协议,后退N帧协议(GBN, Go Back N),选择重传协议(SR, Selective Repeat)。它们实际上都是滑动窗口协议,区别仅在于窗口的大小,其中停止等待协议的发送与接收窗口都是1;`GBN`的发送窗口大于1,接收窗口为1;`SR`的发送窗口与接收窗口都大于1,并且发送窗口等于接收窗口。需要注意的是,`GBN`未必优于停止等待协议,这是因为`GBN`可能需要对前面已经正确传输的帧进行重传。 + +对于`GBN`和`SR`,这里有一个冲突的问题,即如果发送窗口与接收窗口之和大于对帧的编号数目,接收方将不能识别当前接收到的帧是新的一帧,还是之前数据帧的重传帧。这个问题可以自己举个例子理解一下。 + +这里还涉及一个对发送窗口大小进行选择的问题,使得当采用`GBN`时,理想情况下信道利用率最高。 + diff --git a/thu_dsa/chp1/chp1.md b/thu_dsa/chp1/chp1.md index eaead37..e3de9c4 100644 --- a/thu_dsa/chp1/chp1.md +++ b/thu_dsa/chp1/chp1.md @@ -3,7 +3,9 @@ ## 知识脉络 -本章主要讨论算法的基本概念与基本知识。一开始指出了算法的概念,并且通过算法的三个历史发展来进一步阐述什么是算法。在客观世界中,解决同一个问题往往具有许多不同的方法,即存在不同的算法,因此需要就这些不同的算法的性能进行评价,为了消除外界因素的影响,需要引入理想模型,即图灵机和随机存取机`RAM`,并且在此基础上提出了`渐进分析`的概念。`渐进分析`具有三种(四种)不同的记号,它们具有不同的含义,通过这些记号就可以实现对算法的评估了。 +本章主要讨论算法的基本概念与基本知识。一开始指出了算法的概念,并且通过算法的三个历史发展来进一步阐述什么是算法。在客观世界中,解决同一个问题往往具有许多不同的方法,即存在不同的算法,因此需要就这些不同的算法的性能进行评价,评价的一方面是算法的`正确性`与`有穷性`,另一方面则是算法运行的效率。证明算法`有穷性`与`正确性`的一个重要技巧,是从不同的角度重新审视整个算法,从而找出算法所具有的`不变性`与`单调性`。 + +为了评价算法的效率,则需要消除外界因素的影响,引入理想模型,即图灵机和随机存取机`RAM`,并且在此基础上提出了`渐进分析`的概念。`渐进分析`具有三种(四种)不同的记号,它们具有不同的含义,通过这些记号就可以实现对算法的评估了。 接下来的内容主要是对上面知识的应用,即在两种特定情形——迭代与递归——下,如何对算法的效率进行评价。对于迭代算法而言,核心的方法就是级数求和,借助图形来进行分析却更有直观性;对于递归算法而言,核心的方法是递归跟踪和递推公式,并且结合两个具体的实例`sum`和`max2`来分别阐述迭代和递归算法的效率分析。