当前位置:首页 » 网络连接 » 计算机网络基本笔记

计算机网络基本笔记

发布时间: 2023-02-09 09:27:07

计算机网络笔记——数据链路层(停等协议、GBN、SR)

流量控制:防止发送端发送和接收端接收速度不匹配造成传输错误

传输层和数据链路层均有流量控制,但是控制手法不一样

传输层:端到端,接收端向发送端发送一个窗口公告。告诉发送端目前我能接收多少
数据链路层:点到点,接收端接收不下的就不回复确认(ack),让发送端自己重传

涉及协议较多分批写

优点 :最简单的控制协议
缺点 :但是性能较弱,信道利用率低

控制方法
发送方:发送一个帧
接收方:接收到帧后返回改帧的ack
发送方:接收到ack后发送下一个帧

差错控制

注意

滑动窗口协议是基于停止等待协议的优化版本
停止等待协议性能是因为需要等待ack之后才能发送下一个帧,在传送的很长时间内信道一直在等待状态
滑动窗口则利用缓冲思想,允许连续发送(未收到ack之前)多个帧,以加强信道利用

窗口 :其实就是缓冲帧的一个容器,将处理好的帧发送到缓冲到窗口,可以发送时就可以直接发送,借此优化性能。一个帧对应一个窗口。

GBN是滑动窗口中的一种,其中 发送窗口 > 1 , 接收窗口=1 因发送错误后需要退回到最后正确连续帧位置开始重发,故而得名。

控制方法
发送端:在将发送窗口内的数据连续发送
接收端:收到一个之后向接收端发送累计确认的ack
发送端:收到ack后窗口后移发送后面的数据

累计确认 :累计确认允许接收端一段时间内发送一次ack而不是每一个帧都需要发送ack。该确认方式确认代表其前面的帧都以正确接收到
eg:发送端发送了编号 0,1,2,3,4,5 的帧,等待一段时间后(超过3的超时计时器)累计收到的ack对应 0,2 帧,则证明已经成功 0,1,2 均已经成功接收, 3 传输错误。并且哪怕 4,5 两个帧接收成功后也不会返回 4,5 的ack会一直等待从 3 开始重传

差错控制

发送帧丢失、ack丢失、ack迟到 等处理方法基本和停等协议相同,不同的是采用累计确认恢复的方式,当前面的帧出错之后后面帧无论是否发送成功都要重传

优点:信道利用率高(利用窗口有增加发送端占用,并且减少ack回复次数)
缺点:累计确认使得该方法只接收正确顺序的帧,而不接受乱序的帧,错误重传浪费严重

发送窗口大小问题
窗口理论上是越多性能越好,但是窗口不能无限大,n比特编码最大只能2^(n-1)个窗口,否则会造成帧无法区分(本质就是留了一个比特区分两组帧)

SR协议可以说是GBN的plus版本,在GBN的基础上改回每一个帧都要确认的机制,解决了累计确认只接收顺序帧的弊端只需要重发错误帧。
其中 发送窗口 > 1 , 接收窗口 > 1 , 接收窗口 > 发送窗口 (建议接 收窗口 = 发送窗口 接收窗口少了溢出多了浪费).

控制方法
发送端:将窗口内的数据连续发送
接收端:收到一个帧就将该帧缓存到窗口中并回复一个ack
接收端:接收到顺序帧后将数据提交给上层并接收窗口后移(若接收到的帧不是连续的顺序帧时接收窗口不移动)
发送端:接收到顺序帧的ack后发送窗口后移(同理发送窗口接收到的ack不连续也不移动)

差错控制

发送帧丢失、ack丢失、ack迟到 三类处理方式仍然和停等协议相同,不同的是SR向上层提交的是多个连续帧,停等只提交一个帧(不连续的帧要等接收或重传完成后才会提交)

发送窗口大小问题
同GBN一样,发送窗口和接收窗口都不能无限多,且不说缓存容量问题,当两组帧同时发送时会造成无法区分,大小上限仍然是2^(n-1)个窗口(本质就是留了一个比特写组号)

窗口大小这里留一张截图,方便理解
假设窗口大小都为3(图中编号到了3是借4窗口的图,正常应编号到2,但是不妨碍理解)
左边是错误重发,第一组的0帧ack丢失了
右边是正常收发

三种协议对比:
停等协议:单线程的傻子,简单不易出错,但是效率极其低下
GBN:假的多线程(接收端太坑啦),接收端是情种,只等待自己哪一个帧,丢弃了后来的帧
SR:多线程,接收端有收藏癖,等待集齐一套召唤神龙(提交给上层这只神龙……)

❷ 计算机网络自学笔记:选路算法

网络层必须确定从发送方到接收方分组所经过的路径。选路就是在网络中的路由器里的给某个数据报确定好路径(即路由)。

一 台主机通常直接与一台路由器相连接,该路由器即为该主机的默认路由器,又称为该主机的默认网关。 每当某主机向外部网络发送一个分组时,该分组都被传送给它的默认网关。

如果将源主机的默认网关称为源路由器,把目的主机的默认网关称为目的路由器。为一个分组从源主机到目的主机选路的问题于 是可归结为从源路由器到目的路由器的选路问题。

选路算法的目标很简单:给定一组路由器以及连接路由器的链路,选路算法要找到一条从源路由器到目的路由器的最好路径,通常一条好路径是指具有最低费用的路径。

图 G=(N,E)是一个 N 个节点和 E 条边的集合,其中每条边是来自 N 的一对节点。在网 络选路的环境中,节点表示路由器,这是做出分组转发决定的节点,连接节点的边表示路由 器之间的物理链路。

一条边有一个值表示它的费用。通常一条边的费用可反映出对应链路的物理长度、链路速度或与该链路相关的费用。

对于 E 中的任一条边(xy)可以用 c(xy )表示节点 x 和 y 间边的费用。一般考虑的都是无向 图,因此边(xy)与边(y x)是相同的并且开销相等。节点 y 也被称为节点 x 的邻居。

在图中为各条边指派了费用后,选路算法的目标自然是找出从源到目的间的最低费用路径。图 G=(N,E)中的一条路径(Path)是一个节点的序列,使得每一对以(x1,x2), (x2,x3),…,是 E 中的边。路径的费用是沿着路径所有边费用的总和。

从广义上来说,我们对 选路算法分类的一种方法就是根据该算法是全局性还是分布式来区分的。

.全局选路算法: 用完整的、全局性的网络信息来计算从源到目的之间的最低费用路径。

实际上, 具有全局状态信息的算法常被称作链路状态 LS 算法, 因为该算法必须知道网络中每条链路的费用。

.分布式选路算法: 以迭代的、分布式的方式计算出最低费用路径。通过迭代计算并与相邻节点交换信息,逐渐计算出到达某目的节点或一组目的节点的最低费用路径。

DV 算法是分布式选路算法, 因为每个节点维护到网络中的所有其他节点的费用(距离)估计的矢量。

选路算法的第二种广义分类方法是根据算法是静态的还是动态的来分类。

一: 链路状态选路算法 LS

在链路状态算法中,通过让每个节点向所有其他路由器广播链路状态分组, 每个链路状态分组包含它所连接的链路的特征和费用, 从而网络中每个节点都建立了关于整个网络的拓扑。

Dijkstra 算法计算从源节点到网络中所有其他节点的最低费用路径.

Dijkstra 算法是迭代算法,经算法的第 k 次迭代后,可知道到 k 个目的节点的最低费用路径。

定义下列记号:

D(V)随着算法进行本次迭代,从源节点到目的节点的最低费用路径的费用。

P(v)从源节点到目的节点 v 沿着当前最低费用路径的前一节点(,的邻居)。

N`节点子集;如果从源节点到目的节点 v 的最低费用路径已找到,那么 v 在 N`中。

Dijkstra 全局选路算法由一个初始化步骤和循环组成。循环执行的次数与网络中的节点个数相同。在结束时,算法会计算出从源节点 u 到网络中每个其他节点的最短路径。

考虑图中的网络,计算从 u 到所有可能目的地的最低费用路径。

.在初始化阶段 ,从 u 到与其直接相连的邻居 v、x、w 的当前已知最低费用路径分别初始化为 2,1 和 5。到 y 与 z 的费用被设为无穷大,因为它们不直接与 u 连接。

.在第一次迭代时, 需要检查那些还未加到集合 N`中的节点,找出在前一次迭代结束时具有最低费用的节点。那个节点是 x 其费用是 1,因此 x 被加到集合 N`中。然后更新所有节点的 D(v),产生下表中第 2 行(步骤)所示的结果。到 v 的路径费用未变。经过节点 x 到 w 的 路径的费用被确定为 4。因此沿从 u 开始的最短路径到 w 的前一个节点被设为 x。类似地, 到 y 经过 x 的费用被计算为 2,且该表项也被更新。

.在第二次迭代时 ,节点 v 与 y 被发现具有最低费用路径 2。任意选择将 y 加到集合 N` 中,使得 N’中含有 u、x 和 y。通过更新,产生如表中第 3 行所示的结果。

.以此类推…

当 LS 算法结束时,对于每个节点都得到从源节点沿着它的最低费用路径的前继节点, 对于每个前继节点,又有它的前继节点,按照此方式可以构建从源节点到所有目的节点的完 整路径。

根据从 u 出发的最短路径,可以构建一个节点(如节点 u)的转发表。

二 距离矢量选路算法 DV

LS 算法是一种使用全局信息的算法,而距离矢量算法是一种迭代的、异步的和分布式的算法。

Bellman-Ford 方程:

设 dx(y)是从节点 x 到节点 y 的最低费用路径的费用,则有  dx(y) = min {c(x,v) + dv(y) }

PS: 方程中的 min,是指取遍 x 的所有邻居。

Bellman-Ford 方程含义相当直观,意思是从 x 节点出发到 y 的最低费用路径肯定经过 x 的某个邻居,而且 x 到这个邻居的费用加上这个邻居到达目的节点 y 费用之和在所有路径 中其总费用是最小的。 实际上,从 x 到 v 遍历之后,如果取从 v 到 y 的最低费用路径,该路 径费用将是 c(x,v)+ dv(y)。因此必须从遍历某些邻居 v 开始,从 x 到 y 的最低费用是对所有邻 居的 c(x,v)+dv(y)的最小值。

在该 DV 算法中,当节点 x 看到它的直接相连的链路费用变化,或从某个邻居接收到一 个距离矢量的更新时,就根据 Bellman-Ford 方程更新其距离矢量表。

三 LS 与 DV 选路算法的比较

DV 和 LS 算法采用不同的方法来解决计算选路问题。

在 DV 算法中,每个节点仅与它的直接相连邻居交换信息,但它为它的邻居提供了从其 自己到网络中(它所知道的)所有其他节点的最低费用估计。

在 LS 算法中,每个节点(经广播)与所有其他节点交换信息,但它仅告诉它们与它直接 相连链路的费用。

·报文复杂性:

LS 算法要求每个节点都知道网络中每条链路的费用,需要发送 O(nE)个消息。

DV 算法要求在每次迭代时,在两个直接相连邻居之间交换报文,算法收敛所需的时间 依赖于许多因素。当链路费用改变时,DV 算法仅当在会导致该节点的最低费用路径发生改 变时,才传播已改变的链路费用。

·收效速度:

DV算法收敛较慢,且在收敛时会遇到选路环路。DV算法还会遭受到计数到无穷的问题。

•健壮性:  在 LS 算法中,如果一台路由器发生故障、或受到破坏,路由器会向其连接的链路广播 不正确费用,导致整个网络的错误。

在 Dv 算法下, 每次迭代时,其中一个节点的计算结果会传递给它的邻居,然后在下次迭代时再间接地传递给邻居的邻居。在这种情况下,DV 算法中一个不正确的计算结果也会扩散到整个网络。

四.层次选路

两个原因导致层次的选路策略:

•规模: 随着路由器数目增长,选路信息的计算、存储及通信的开销逐渐增高。

•管理自治: 一般来说,一个单位都会要求按自己的意愿运行路由器(如运行其选择的某 种选路算法),或对外部隐藏其内部网络的细节。

层次的选路策略是通过将路由器划分成自治系统 AS 来实施的。

每个 AS 由一组通常在相同管理控制下的路由器组成(例如由相同的 ISP 运营或属于相同 的公司网络)。在相同的 AS 内的路由器都全部运行同样的选路算法。

在一个自治系统内运行的选路算法叫做自治系统内部选路协议。 在一个 AS 边缘的一台 或多台路由器,来负责向本 AS 之外的目的地转发分组,这些路由器被称为网关路由器

在各 AS 之间,AS 运行相同的自治系统间选路协议。

❸ 【山外笔记-计算机网络·第7版】第02章:物理层

[学习笔记]第02章_物理层-打印版.pdf

本章最重要的内容是:

(1)物理层的任务。

(2)几种常用的信道复用技术。

(3)几种常用的宽带接入技术,主要是ADSL和FTTx。

1、物理层简介

(1)物理层在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。

(2)物理层的作用是尽可能地屏蔽掉传输媒体和通信手段的差异。

(3)用于物理层的协议常称为物理层规程(procere),其实物理层规程就是物理层协议。

2、物理层的主要任务 :确定与传输媒体的接口有关的一些特性。

(1)机械特性:指明接口所用接线器的形状和尺寸、引脚数目和排列、固定和锁定装置等。

(2)电气特性:指明在接口电缆的各条线上出现的电压的范围。

(3)功能特性:指明某条线上出现的某一电平的电压的意义。

(4)过程特性:指明对于不同功能的各种可能事件的出现顺序。

3、物理层要完成传输方式的转换。

(1)数据在计算机内部多采用并行传输方式。

(2)数据在通信线路(传输媒体)上的传输方式一般都是串行传输,即逐个比特按照时间顺序传输。

(3)物理连接的方式:点对点、多点连接或广播连接。

(4)传输媒体的种类:架空明线、双绞线、对称电缆、同轴电缆、光缆,以及各种波段的无线信道等。

1、数据通信系统的组成

一个数据通信系统可划分为源系统(或发送端、发送方)、传输系统(或传输网络)和目的系统(或接收端、接收方)三大部分。

(1)源系统:一般包括以下两个部分:

(2)目的系统:一般也包括以下两个部分:

(3)传输系统:可以是简单的传输线,也可以是连接在源系统和目的系统之间的复杂网络系统。

2、通信常用术语

(1)通信的目的是传送消息(message),数据(data)是运送消息的实体。

(2)数据是使用特定方式表示的信息,通常是有意义的符号序列。

(3)信息的表示可用计算机或其他机器(或人)处理或产生。

(4)信号(signal)则是数据的电气或电磁的表现。

3、信号的分类 :根据信号中代表消息的参数的取值方式不同

(1)模拟信号/连续信号:代表消息的参数的取值是连续的。

(2)数字信号/离散信号:代表消息的参数的取值是离散的。

1、信道

(1)信道一般都是用来表示向某一个方向传送信息的媒体。

(2)一条通信电路往往包含一条发送信道和一条接收信道。

(3)单向通信只需要一条信道,而双向交替通信或双向同时通信则都需要两条信道(每个方向各一条)。

2、通信的基本方式

(1)单向通信又称为单工通信,只能有一个方向的通信而没有反方向的交互。如无线电广播、有线电广播、电视广播。

(2)双向交替通信又称为半双工通信,即通信的双方都可以发送信息,但不能双方同时发送/接收。

(3)双向同时通信又称为全双工通信,即通信的双方可以同时发送和接收信息。

3、调制 (molation)

(1)基带信号:来自信源的信号,即基本频带信号。许多信道不能传输基带信号,必须对其进行调制。

(2)调制的分类

4、基带调制常用的编码方式 (如图2-2)

(1)不归零制:正电平代表1,负电平代表0。

(2)归零制:正脉冲代表1,负脉冲代表0。

(3)曼彻斯特:编码位周期中心的向上跳变代表0,位周期中心的向下跳变代表1。也可反过来定义。

(4)差分曼彻斯特:编码在每一位的中心处始终都有跳变。位开始边界有跳变代表0,而位开始边界没有跳变代表1。

5、带通调制的基本方法

(1)调幅(AM)即载波的振幅随基带数字信号而变化。例如,0或1分别对应于无载波或有载波输出。

(2)调频(FM)即载波的频率随基带数字信号而变化。例如,0或1分别对应于频率f1或f2。

(3)调相(PM)即载波的初始相位随基带数字信号而变化。例如,0或1分别对应于相位0度或180度。

(4)多元制的振幅相位混合调制方法:正交振幅调制QAM(Quadrature Amplitude Molation)。

1、信号失真

(1)信号在信道上传输时会不可避免地产生失真,但在接收端只要从失真的波形中能够识别并恢复出原来的码元信号,那么这种失真对通信质量就没有影响。

(2)码元传输的速率越高,或信号传输的距离越远,或噪声干扰越大,或传输媒体质量越差,在接收端的波形的失真就越严重。

2、限制码元在信道上的传输速率的因素

(1)信道能够通过的频率范围

(2)信噪比

3、香农公式 (Shannon)

(1)香农公式(Shannon):C = W*log2(1+S/N) (bit/s)

(2)香农公式表明:信道的带宽或信道中的信噪比越大,信息的极限传输速率就越高。

(3)香农公式指出了信息传输速率的上限。

(4)香农公式的意义:只要信息传输速率低于信道的极限信息传输速率,就一定存在某种办法来实现无差错的传输。

(5)在实际信道上能够达到的信息传输速率要比香农的极限传输速率低不少,是因为香农公式的推导过程中并未考虑如各种脉冲干扰和在传输中产生的失真等信号损伤。

1、传输媒体

传输媒体也称为传输介质或传输媒介,是数据传输系统中在发送器和接收器之间的物理通路。

2、传输媒体的分类

(1)导引型传输媒体:电磁波被导引沿着固体媒体(双绞线、同轴电缆或光纤)传播。

(2)非导引型传输媒体:是指自由空间,电磁波的传输常称为无线传输。

1、双绞线

(1)双绞线也称为双扭线, 即把两根互相绝缘的铜导线并排放在一起,然后用规则的方法绞合(twist)起来。绞合可减少对相邻导线的电磁干扰。

(2)电缆:通常由一定数量的双绞线捆成,在其外面包上护套。

(3)屏蔽双绞线STP(Shielded Twisted Pair):在双绞线的外面再加上一层用金属丝编织成的屏蔽层,提高了双绞线抗电磁干扰的能力。价格比无屏蔽双绞线UTP(Unshielded Twisted Pair)要贵一些。

(4)模拟传输和数字传输都可以使用双绞线,其通信距离一般为几到十几公里。

(5)双绞线布线标准

(6)双绞线的使用

2、同轴电缆

(1)同轴电缆由内导体铜质芯线(单股实心线或多股绞合线)、绝缘层、网状编织的外导体屏蔽层(也可以是单股的)以及保护塑料外层所组成。

(2)由于外导体屏蔽层的作用,同轴电缆具有很好的抗干扰特性,被广泛用于传输较高速率的数据。

(3)同轴电缆主要用在有线电视网的居民小区中。

(4)同轴电缆的带宽取决于电缆的质量。目前高质量的同轴电缆的带宽已接近1GHz。

3、光缆

(1)光纤通信就是利用光导纤维(简称光纤)传递光脉冲来进行通信。有光脉冲为1,没有光脉冲为0。

(2)光纤是光纤通信的传输媒体。

(3)多模光纤:可以存在多条不同角度入射的光线在一条光纤中传输。光脉冲在多模光纤中传输时会逐渐展宽,造成失真,多模光纤只适合于近距离传输。

(4)单模光纤:若光纤的直径减小到只有一个光的波长,则光纤就像一根波导那样,可使光线一直向前传播,而不会产生多次反射。单模光纤的纤芯很细,其直径只有几个微米,制造起来成本较高。

(5)光纤通信中常用的三个波段中心:850nm,1300nm和1550nm。

(6)光缆:一根光缆少则只有一根光纤,多则可包括数十至数百根光纤,再加上加强芯和填充物,必要时还可放入远供电源线,最后加上包带层和外护套。

(7)光纤的优点

1、无线传输

(1)无线传输是利用无线信道进行信息的传输,可使用的频段很广。

(2)LF,MF和HF分别是低频(30kHz-300kHz)、中频(300kHz-3MH z)和高频(3MHz-30MHz)。

(3)V,U,S和E分别是甚高频(30MHz-300MHz)、特高频(300MHz-3GHz)、超高频(3GHz-30GHz)和极高频(30GHz-300GHz),最高的一个频段中的T是Tremendously。

2、短波通信: 即高频通信,主要是靠电离层的反射传播到地面上很远的地方,通信质量较差。

3、无线电微波通信

(1)微波的频率范围为300M Hz-300GHz(波长1m-1mm),但主要使用2~40GHz的频率范围。

(2)微波在空间中直线传播,会穿透电离层而进入宇宙空间,传播距离受到限制,一般只有50km左右。

(3)传统的微波通信主要有两种方式,即地面微波接力通信和卫星通信。

(4)微波接力通信:在一条微波通信信道的两个终端之间建立若干个中继站,中继站把前一站送来的信号经过放大后再发送到下一站,故称为“接力”,可传输电话、电报、图像、数据等信息。

(5)卫星通信:利用高空的人造同步地球卫星作为中继器的一种微波接力通信。

(6)无线局域网使用ISM无线电频段中的2.4GHz和5.8GHz频段。

(7)红外通信、激光通信也使用非导引型媒体,可用于近距离的笔记本电脑相互传送数据。

1、复用(multiplexing)技术原理

(1)在发送端使用一个复用器,就可以使用一个共享信道进行通信。

(2)在接收端再使用分用器,把合起来传输的信息分别送到相应的终点。

(3)复用器和分用器总是成对使用,在复用器和分用器之间是用户共享的高速信道。

(4)分用器(demultiplexer)的作用:把高速信道传送过来的数据进行分用,分别送交到相应的用户。

2、最基本的复用

(1)频分复用FDM(Frequency Division Multiplexing)

(2)时分复用TDM(Time Division Multiplexing):

3、统计时分复用STDM (Statistic TDM)

(1)统计时分复用STDM是一种改进的时分复用,能明显地提高信道的利用率。

(2)集中器(concentrator):将多个用户的数据集中起来通过高速线路发送到一个远地计算机。

(3)统计时分复用使用STDM帧来传送数据,每一个STDM帧中的时隙数小于连接在集中器上的用户数。

(4)STDM帧不是固定分配时隙,而是按需动态地分配时隙,提高了线路的利用率。

(5)统计复用又称为异步时分复用,而普通的时分复用称为同步时分复用。

(6)STDM帧中每个时隙必须有用户的地址信息,这是统计时分复用必须要有的和不可避免的一些开销。

(7)TDM帧和STDM帧都是在物理层传送的比特流中所划分的帧。和数据链路层的帧是完全不同的概念。

(8)使用统计时分复用的集中器也叫做智能复用器,能提供对整个报文的存储转发能力,通过排队方式使各用户更合理地共享信道。此外,许多集中器还可能具有路由选择、数据压缩、前向纠错等功能。

1、波分复用WDM (Wavelength Division Multiplexing)

波分复用WDM是光的频分复用,在一根光纤上用波长来复用两路光载波信号。

2、密集波分复用DWDM (Dense Wavelength Division Multiplexing)

密集波分复用DWDM是在一根光纤上复用几十路或更多路数的光载波信号。

1、码分复用CDM (Code Division Multiplexing)

(1)每一个用户可以在同样的时间使用同样的频带进行通信。

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

(3)码分复用最初用于军事通信,现已广泛用于民用的移动通信中,特别是在无线局域网中。

2、码分多址CDMA (Code Division Multiple Access)。

(1)在CDMA中,每一个比特时间再划分为m个短的间隔,称为码片(chip)。通常m的值是64或128。

(2)使用CDMA的每一个站被指派一个唯一的m bit码片序列(chip sequence)。

(3)一个站如果发送比特1,则发送m bit码片序列。如果发送比特0,则发送该码片序列的二进制反码。

(4)发送信息的每一个比特要转换成m个比特的码片,这种通信方式是扩频通信中的直接序列扩频DSSS。

(5)CDMA系统给每一个站分配的码片序列必须各不相同,并且还互相正交(orthogonal)。

(6)CDMA的工作原理:现假定有一个X站要接收S站发送的数据。

(7)扩频通信(spread spectrum)分为直接序列扩频DSSS(Direct Sequence Spread Spectrum)和跳频扩频FHSS(Frequency Hopping Spread Spectrum)两大类。

早起电话机用户使用双绞线电缆。长途干线采用的是频分复用FDM的模拟传输方式,现在大都采用时分复用PCM的数字传输方式。现代电信网,在数字化的同时,光纤开始成为长途干线最主要的传输媒体。

1、早期的数字传输系统最主要的缺点:

(1)速率标准不统一。互不兼容的国际标准使国际范围的基于光纤的高速数据传输就很难实现。

(2)不是同步传输。为了节约经费,各国的数字网主要采用准同步方式。

2、数字传输标准

(1)同步光纤网SONET(Synchronous Optical Network)

(2)同步数字系列SDH(Synchronous Digital Hierarchy)

(3)SDH/SONET定义了标准光信号,规定了波长为1310nm和1550nm的激光源。在物理层定义了帧结构。

(4)SDH/SONET标准的制定,使北美、日本和欧洲三种不同的数字传输体制在STM-1等级上获得了统一,第一次真正实现了数字传输体制上的世界性标准。

互联网的发展初期,用户利用电话的用户线通过调制解调器连接到ISP,速率最高只能达到56kbit/s。

从宽带接入的媒体来看,宽带接入技术可以分为有线宽带接入和无线宽带接入两大类。

1、非对称数字用户线ADSL (Asymmetric Digital Subscriber Line)

(1)ADSL技术是用数字技术对现有的模拟电话用户线进行改造,使它能够承载宽带数字业务。

(2)ADSL技术把0-4kHz低端频谱留给传统电话使用,把原来没有被利用的高端频谱留给用户上网使用。

(3)ADSL的ITU的标准是G.992.1(或称G.dmt,表示它使用DMT技术)。

(4)“非对称”是指ADSL的下行(从ISP到用户)带宽都远远大于上行(从用户到ISP)带宽。

(5)ADSL的传输距离取决于数据率和用户线的线径(用户线越细,信号传输时的衰减就越大)。

(6)ADSL所能得到的最高数据传输速率还与实际的用户线上的信噪比密切相关。

2、ADSL调制解调器的实现方案 :离散多音调DMT(Discrete Multi-Tone)调制技术

(1)ADSL在用户线(铜线)的两端各安装一个ADSL调制解调器。

(2)“多音调”就是“多载波”或“多子信道”的意思。

(3)DMT调制技术采用频分复用的方法,把40kHz-1.1MHz的高端频谱划分为许多子信道。

(4)当ADSL启动时,用户线两端的ADSL调制解调器就测试可用的频率、各子信道受到的干扰情况,以及在每一个频率上测试信号的传输质量。

(5)ADSL能够选择合适的调制方案以获得尽可能高的数据率,但不能保证固定的数据率。

3、数字用户线接入复用器DSLAM (DSL Access Multiplexer)

(1)数字用户线接入复用器包括许多ADSL调制解调器。

(2)ADSL调制解调器又称为接入端接单元ATU(Access Termination Unit)。

(3)ADSL调制解调器必须成对使用,因此把在电话端局记为ATU-C,用户家中记为ATU-R。

(4)ADSL最大的好处就是可以利用现有电话网中的用户线(铜线),而不需要重新布线。

(5)ADSL调制解调器有两个插口:

(6)一个DSLAM可支持多达500-1000个用户。

4、第二代ADSL

(1)ITU-T已颁布了G系列标准,被称为第二代ADSL,ADSL2。

(1)第二代ADSL通过提高调制效率得到了更高的数据率。

(2)第二代ADSL采用了无缝速率自适应技术SRA(Seamless Rate Adaptation),可在运营中不中断通信和不产生误码的情况下,根据线路的实时状况,自适应地调整数据率。

(3)第二代ADSL改善了线路质量评测和故障定位功能。

5、ADSL技术的变型 :xDSL

ADSL并不适合于企业,为了满足企业的需要,产生了ADSL技术的变型:xDSL。

(1)对称DSL(Symmetric DSL,SDSL):把带宽平均分配到下行和上行两个方向,每个方向的速度分别为384kbit/s或1.5Mbit/s,距离分别为5.5km或3km。

(2)HDSL(High speed DSL):使用一对线或两对线的对称DSL,是用来取代T1线路的高速数字用户线,数据速率可达768KBit/s或1.5Mbit/s,距离为2.7-3.6km。

(3)VDSL(Very high speed DSL):比ADSL更快的、用于短距离传送(300-1800m),即甚高速数字用户线,是ADSL的快速版本。

1、光纤同轴混合网HFC (Hybrid Fiber Coax)

(1)光纤同轴混合网HFC是在有线电视网的基础上改造开发的一种居民宽带接入网。

(2)光纤同轴混合网HFC可传送电视节目,能提供电话、数据和其他宽带交互型业务。

(3)有线电视网最早是树形拓扑结构的同轴电缆网络,采用模拟技术的频分复用进行单向广播传输。

2、光纤同轴混合网HFC的主要特点:

(1)HFC网把原有线电视网中的同轴电缆主干部分改换为光纤,光纤从头端连接到光纤结点(fiber node)。

(2)在光纤结点光信号被转换为电信号,然后通过同轴电缆传送到每个用户家庭。

(3)HFC网具有双向传输功能,而且扩展了传输频带。

(4)连接到一个光纤结点的典型用户数是500左右,但不超过2000。

3、电缆调制解调器 (cable modem)

(1)模拟电视机接收数字电视信号需要把机顶盒(set-top box)的设备连接在同轴电缆和电视机之间。

(2)电缆调制解调器:用于用户接入互联网,以及在上行信道中传送交互数字电视所需的一些信息。

(3)电缆调制解调器可以做成一个单独的设备,也可以做成内置式的,安装在电视机的机顶盒里面。

(4)电缆调制解调器不需要成对使用,而只需安装在用户端。

(5)电缆调制解调器必须解决共享信道中可能出现的冲突问题,比ADSL调制解调器复杂得多。

信号在陆地上长距离的传输,已经基本实现了光纤化。远距离的传输媒体使用光缆。只是到了临近用户家庭的地方,才转为铜缆(电话的用户线和同轴电缆)。

1、多种宽带光纤接入方式FTTx

(1)多种宽带光纤接入方式FTTx,x可代表不同的光纤接入地点,即光电转换的地方。

(2)光纤到户FTTH(Fiber To The Home):把光纤一直铺设到用户家庭,在光纤进入用户后,把光信号转换为电信号,可以使用户获得最高的上网速率。

(3)光纤到路边FTTC(C表示Curb)

(4)光纤到小区FTTZ(Z表示Zone)

(5)光纤到大楼FTTB(B表示Building)

(6)光纤到楼层FTTF(F表示Floor)

(7)光纤到办公室FTTO(O表示Office)

(8)光纤到桌面FTTD(D表示Desk)

2、无源光网络PON (Passive Optical Network)

(1)光配线网ODN(Optical Distribution Network):在光纤干线和广大用户之间,铺设的转换装置,使得数十个家庭用户能够共享一根光纤干线。

(2)无源光网络PON(Passive Optical Network),即无源的光配线网。

(3) 无源:表明在光配线网中无须配备电源,因此基本上不用维护,其长期运营成本和管理成本都很低。

(4)光配线网采用波分复用,上行和下行分别使用不同的波长。

(5)光线路终端OLT( Optical Line Terminal)是连接到光纤干线的终端设备。

(6)无源光网络PON下行数据传输

(7)无源光网络PON上行数据传输

当ONU发送上行数据时,先把电信号转换为光信号,光分路器把各ONU发来的上行数据汇总后,以TDMA方式发往OLT,而发送时间和长度都由OLT集中控制,以便有序地共享光纤主干。

(8)从ONU到用户的个人电脑一般使用以太网连接,使用5类线作为传输媒体。

(9)从总的趋势来看,光网络单元ONU越来越靠近用户的家庭,即“光进铜退”。

3、无源光网络PON的种类

(1)以太网无源光网络EPON(Ethernet PON)

(2)吉比特无源光网络GPON(Gigabit PON)

❹ 计算机网络笔记——数据链路层

封装成帧 :在一段数据的前后部分添加 首部 和 尾部 ,这样就构成了一个帧。
接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束.

首部和尾部包含许多的控制信息,他们的一个重要作用: 帧定界 (确定帧的界限)。

帧同步 :接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。

1. 字符计数法

2. 字符(节)填充法

3. 零比特填充法

4. 违规编码法。

字节计数法 : Count字段的脆弱性(其值若有差错将导致灾难性后果)
字符填充法 : 实现上的复杂性和不兼容性
目前较普遍使用的帧同步法是 比特填充 和 违规编码法 。

差错源于噪声:

冗余编码: 在数据前面添加校验数据,和最终收到的数据比对是否有误,有误证明传输出错

板栗🌰

一段晦涩的话

“可靠传输”:数据链路层发送端发送什么,接收端就收到什么。
链路层使用CRC检验,能够实现无比特差错的传输,但这还不是可靠传输。

原理: 多个校验位同时检验一个数据

构成: 检验位和数据位
检验位个数:海明不等式 2^r >= k + r + 1 计算得出(r为检验位个数,k为数据位位数)
检验位位置:2的(1-r次方)

编码: (以数据D = 101101为例)

最终传输数据(海明码): 00 1 0 011 1 01

校验:

🌰🌰板栗+1

❺ 计算机网络自顶向下方法读书笔记

link

Client发送一个特殊的 SYN报文段 (标志位SYN置为1)。随机产生一个初始序号值seq=x,发送给Server,Client进入SYN_SENT状态,等待Server确认。

Server收到数据包后由标志位SYN=1知道Client请求建立连接,会为该TCP连接分配TCP缓存和变量。并向client发送允许连接报文段的ACK报文段(ACK标志位设置为1),报文段中SYN=1, ack=x+1,并随机产生一个服务端的初始序号seq=y。发送后,Server进入SYN_RCVD状态。

Client收到确认后,也要给该连接分配缓存和变量。将发送一个ACK报文段对服务器的允许连接的报文段进行确认。设置ack=y+1。因为连接已被建立了SYN被置为0。Client和Server进入ESTABLISHED状态,完成三次握手,随后Client与Server之间可以开始传输数据了。以后每个阶段中SYN都将被置为0.

Client(也可以是server,后面流程相反)设置seq=u, 发送一个FIN报文段(FIN标志位设置为1),Client进入FIN_WAIT_1状态。表示client没有数据要发送给server了。

Server收到FIN后,发送一个ACK报文段给Client,ack=u+1,并随机产生一个服务端的初始序号seq=v, Server进入CLOSE_WAIT状态。表示“同意”client关闭请求

Server发送一个FIN报文段,用来请求关闭Server到Client的数据传送,同时包含ack=u+1,并随机产生一个服务端的初始序号seq=w,server进入LAST_ACK状态。

Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK报文段ack=w+1给Server, Server收到后进入CLOSED状态。client在等待了某个固定时间(两个最大段生命周期,2MSL)之后,没有收到服务器端的 ACK ,认为服务器端已经正常关闭连接,于是自己也关闭连接,进入 CLOSED 状态。(目的是如果server由于网络原因没有收到最后的ACK,server将会再发送一个FIN,但若此时client已经CLOSED,则无法回复。因此引入了等待2MSL的流程)。自此就完成了四次挥手,主机中的连接资源也被释放。

其中 生存时间(TTL) 字段用来确保数据不会永远在网络中循环。每当一台路由器处理数据报时,该字段的值减1。若TTL字段减为0,则该数据报必须丢弃。

跨网络通信需要经过路由器,同一网络间的通信不需要。127只有127.0.0.1一个地址可用,代表当前计算机自己。255.255.255.255是 广播地址 。当一台主机向广播地址发出数据报时,该报文会交付给网络中的所有主机。

❻ 计算机网络基础怎么

计算机网络基础学法:

1、看书:对于计算机比较基础的模块,我都是比较推荐找一本经典的书籍来好好学习下,不可以只看面经就去面试了。

2、做笔记:计算机网络的知识点还是比较多的,需要看书的时候做好笔记,方便复习。而且做笔记的时候可以就这个知识点去网络下,看看有没有自己遗漏的点,再给补充进来。

学习计算机网络时我们一般采用折中的办法,也就是中和 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构,这样既简洁又能将概念阐述清楚。

应用层(application-layer)的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程(进程:主机中正在运行的程序)间的通信和交互的规则。

对于不同的网络应用需要不同的应用层协议。在互联网中应用层协议很多,如域名系统 DNS,支持万维网应用的 HTTP 协议,支持电子邮件的 SMTP 协议等等。我们把应用层交互的数据单元称为报文。

运输层(transport layer)的主要任务就是负责向两台主机进程之间的通信提供通用的数据传输服务。应用进程利用该服务传送应用层报文。“通用的”是指并不针对某一个特定的网络应用,而是多种应用可以使用同一个运输层服务。

❼ 计算机网络自学笔记:TCP

如果你在学习这门课程,仅仅为了理解网络工作原理,那么只要了解TCP是可靠传输,数据传输丢失时会重传就可以了。如果你还要参加研究生考试或者公司面试等,那么下面内容很有可能成为考查的知识点,主要的重点是序号/确认号的编码、超时定时器的设置、可靠传输和连接的管理。

1 TCP连接

TCP面向连接,在一个应用进程开始向另一个应用进程发送数据之前,这两个进程必须先相互“握手”,即它们必须相互发送某些预备报文段,以建立连接。连接的实质是双方都初始化与连接相关的发送/接收缓冲区,以及许多TCP状态变量。

这种“连接”不是一条如电话网络中端到端的电路,因为它们的状态完全保留在两个端系统中。

TCP连接提供的是全双工服务 ,应用层数据就可在从进程B流向进程A的同时,也从进程A流向进程B。

TCP连接也总是点对点的 ,即在单个发送方与单个接收方之间建立连接。

一个客户机进程向服务器进程发送数据时,客户机进程通过套接字传递数据流。

客户机操作系统中运行的 TCP软件模块首先将这些数据放到该连接的发送缓存里 ,然后会不时地从发送缓存里取出一块数据发送。

TCP可从缓存中取出并放入报文段中发送的数据量受限于最大报文段长MSS,通常由最大链路层帧长度来决定(也就是底层的通信链路决定)。 例如一个链路层帧的最大长度1500字节,除去数据报头部长度20字节,TCP报文段的头部长度20字节,MSS为1460字节。

报文段被往下传给网络层,网络层将其封装在网络层IP数据报中。然后这些数据报被发送到网络中。

当TCP在另一端接收到一个报文段后,该报文段的数据就被放人该连接的接收缓存中。应用程序从接收缓存中读取数据流(注意是应用程序来读,不是操作系统推送)。

TCP连接的每一端都有各自的发送缓存和接收缓存。

因此TCP连接的组成包括:主机上的缓存、控制变量和与一个进程连接的套接字变量名,以及另一台主机上的一套缓存、控制变量和与一个进程连接的套接字。

在这两台主机之间的路由器、交换机中,没有为该连接分配任何缓存和控制变量。

2报文段结构

TCP报文段由首部字段和一个数据字段组成。数据字段包含有应用层数据。

由于MSS限制了报文段数据字段的最大长度。当TCP发送一个大文件时,TCP通常是将文件划分成长度为MSS的若干块。

TCP报文段的结构。

首部包括源端口号和目的端口号,它用于多路复用/多路分解来自或送至上层应用的数据。另外,TCP首部也包括校验和字段。报文段首部还包含下列字段:

32比特的序号字段和32比特的确认号字段。这些字段被TCP发送方和接收方用来实现可靠数据传输服务。

16比特的接收窗口字段,该字段用于流量控制。该字段用于指示接收方能够接受的字节数量。

4比特的首部长度字段,该字段指示以32比特的字为单位的TCP首部长度。一般TCP首部的长度就是20字节。

可选与变长的选项字段,该字段用于当发送方与接收方协商最大报文段长度,或在高速网络环境下用作窗口调节因子时使用。

标志字段ACK比特用于指示确认字段中的ACK值的有效性,即该报文段包括一个对已被成功接收报文段的确认。 SYN和FIN比特用于连接建立和拆除。 PSH、URG和紧急指针字段通常没有使用。

•序号和确认号

TCP报文段首部两个最重要的字段是序号字段和确认号字段。

TCP把数据看成一个无结构的但是有序的字节流。TCP序号是建立在传送的字节流之上,而不是建立在传送的报文段的序列之上。

一个报文段的序号是该报文段首字节在字节流中的编号。

例如,假设主机A上的一个进程想通过一条TCP连接向主机B上的一个进程发送一个数据流。主机A中的TCP将对数据流中的每一个字节进行编号。假定数据流由一个包含4500字节的文件组成(可以理解为应用程序调用send函数传递过来的数据长度),MSS为1000字节(链路层一次能够传输的字节数),如果主机决定数据流的首字节编号是7。TCP模块将为该数据流构建5个报文段(也就是分5个IP数据报)。第一个报文段的序号被赋为7;第二个报文段的序号被赋为1007,第三个报文段的序号被赋为2007,以此类推。前面4个报文段的长度是1000,最后一个是500。

确认号要比序号难理解一些。前面讲过,TCP是全双工的,因此主机A在向主机B发送数据的同时,也可能接收来自主机B的数据。从主机B到达的每个报文段中的序号字段包含了从B流向A的数据的起始位置。 因此主机B填充进报文段的确认号是主机B期望从主机A收到的下一报文段首字节的序号。

假设主机B已收到了来自主机A编号为7-1006的所有字节,同时假设它要发送一个报文段给主机A。主机B等待主机A的数据流中字节1007及后续所有字节。所以,主机B会在它发往主机A的报文段的确认号字段中填上1007。

再举一个例子,假设主机B已收到一个来自主机A的包含字节7-1006的报文段,以及另一个包含字节2007-3006的报文段。由于某种原因,主机A还没有收到字节1007-2006的报文段。

在这个例子中,主机A为了重组主机B的数据流,仍在等待字节1007。因此,A在收到包含字节2007-3006的报文段时,将会又一次在确认号字段中包含1007。 因为TCP只确认数据流中至第一个丢失报文段之前的字节数据,所以TCP被称为是采用累积确认。

TCP的实现有两个基本的选择:

1接收方立即丢弃失序报文段;

2接收方保留失序的字节,并等待缺少的字节以填补该间隔。

一条TCP连接的双方均可随机地选择初始序号。 这样做可以减少将那些仍在网络中的来自两台主机之间先前连接的报文段,误认为是新建连接所产生的有效报文段的可能性。

•例子telnet

Telnet由是一个用于远程登录的应用层协议。它运行在TCP之上,被设计成可在任意一对主机之间工作。

假设主机A发起一个与主机B的Telnet会话。因为是主机A发起该会话,因此主机A被标记为客户机,主机B被标记为服务器。用户键入的每个字符(在客户机端)都会被发送至远程主机。远程主机收到后会复制一个相同的字符发回客户机,并显示在Telnet用户的屏幕上。这种“回显”用于确保由用户发送的字符已经被远程主机收到并处理。因此,在从用户击键到字符显示在用户屏幕上之间的这段时间内,每个字符在网络中传输了两次。

现在假设用户输入了一个字符“C”,假设客户机和服务器的起始序号分别是42和79。前面讲过,一个报文段的序号就是该报文段数据字段首字节的序号。因此,客户机发送的第一个报文段的序号为42,服务器发送的第一个报文段的序号为79。前面讲过,确认号就是主机期待的数据的下一个字节序号。在TCP连接建立后但没有发送任何数据之前,客户机等待字节79,而服务器等待字节42。

如图所示,共发了3个报文段。第一个报文段是由客户机发往服务器,其数据字段里包含一字节的字符“C”的ASCII码,其序号字段里是42。另外,由于客户机还没有接收到来自服务器的任何数据,因此该报文段中的确认号字段里是79。

第二个报文段是由服务器发往客户机。它有两个目的:第一个目的是为服务器所收到的数据提供确认。服务器通过在确认号字段中填入43,告诉客户机它已经成功地收到字节42及以前的所有字节,现在正等待着字节43的出现。第二个目的是回显字符“C”。因此,在第二个报文段的数据字段里填入的是字符“C”的ASCII码,第二个报文段的序号为79,它是该TCP连接上从服务器到客户机的数据流的起始序号,也是服务器要发送的第一个字节的数据。

这里客户机到服务器的数据的确认被装载在一个服务器到客户机的数据的报文段中,这种确认被称为是捎带确认.

第三个报文段是从客户机发往服务器的。它的唯一目的是确认已从服务器收到的数据。

3往返时延的估计与超时

TCP如同前面所讲的rdt协议一样,采用超时/重传机制来处理报文段的丢失问题。最重要的一个问题就是超时间隔长度的设置。显然,超时间隔必须大于TCP连接的往返时延RTT,即从一个报文段发出到收到其确认时。否则会造成不必要的重传。

•估计往返时延

TCP估计发送方与接收方之间的往返时延是通过采集报文段的样本RTT来实现的,就是从某报文段被发出到对该报文段的确认被收到之间的时间长度。

也就是说TCP为一个已发送的但目前尚未被确认的报文段估计sampleRTT,从而产生一个接近每个RTT的采样值。但是,TCP不会为重传的报文段计算RTT。

为了估计一个典型的RTT,采取了某种对RTT取平均值的办法。TCP据下列公式来更新

EstimatedRTT=(1-)*EstimatedRTT+*SampleRTT

即估计RTT的新值是由以前估计的RTT值与sampleRTT新值加权组合而成的。

参考值是a=0.125,因此是一个加权平均值。显然这个加权平均对最新样本赋予的权值

要大于对老样本赋予的权值。因为越新的样本能更好地反映出网络当前的拥塞情况。从统计学观点来讲,这种平均被称为指数加权移动平均

除了估算RTT外,还需要测量RTT的变化,RTT偏差的程度,因为直接使用平均值设置计时器会有问题(太灵敏)。

DevRTT=(1-β)*DevRTT+β*|SampleRTT-EstimatedRTT|

RTT偏差也使用了指数加权移动平均。B取值0.25.

•设置和管理重传超时间隔

假设已经得到了估计RTT值和RTT偏差值,那么TCP超时间隔应该用什么值呢?TCP将超时间隔设置成大于等于估计RTT值和4倍的RTT偏差值,否则将造成不必要的重传。但是超时间隔也不应该比估计RTT值大太多,否则当报文段丢失时,TCP不能很快地重传该报文段,从而将给上层应用带来很大的数据传输时延。因此,要求将超时间隔设为估计RTT值加上一定余量。当估计RTT值波动较大时,这个余最应该大些;当波动比较小时,这个余量应该小些。因此使用4倍的偏差值来设置重传时间。

TimeoutInterval=EstimatedRTT+4*DevRTT

4可信数据传输

因特网的网络层服务是不可靠的。IP不保证数据报的交付,不保证数据报的按序交付,也不保证数据报中数据的完整性。

TCP在IP不可靠的尽力而为服务基础上建立了一种可靠数据传输服务。

TCP提供可靠数据传输的方法涉及前面学过的许多原理。

TCP采用流水线协议、累计确认。

TCP推荐的定时器管理过程使用单一的重传定时器,即使有多个已发送但还未被确认的报文段也一样。重传由超时和多个ACK触发。

在TCP发送方有3种与发送和重传有关的主要事件:从上层应用程序接收数据,定时器超时和收到确认ACK。

从上层应用程序接收数据。一旦这个事件发生,TCP就从应用程序接收数据,将数据封装在一个报文段中,并将该报文段交给IP。注意到每一个报文段都包含一个序号,这个序号就是该报文段第一个数据字节的字节流编号。如果定时器还没有计时,则当报文段被传给IP时,TCP就启动一个该定时器。

第二个事件是超时。TCP通过重传引起超时的报文段来响应超时事件。然后TCP重启定时器。

第三个事件是一个来自接收方的确认报文段(ACK)。当该事件发生时,TCP将ACK的值y与变量SendBase(发送窗口的基地址)进行比较。TCP状态变量SendBase是最早未被确认的字节的序号。就是指接收方已正确按序接收到数据的最后一个字节的序号。TCP采用累积确认,所以y确认了字节编号在y之前的所有字节都已经收到。如果Y>SendBase,则该ACK是在确认一个或多个先前未被确认的报文段。因此发送方更新其SendBase变量,相当于发送窗口向前移动。

另外,如果当前有未被确认的报文段,TCP还要重新启动定时器。

快速重传

超时触发重传存在的另一个问题是超时周期可能相对较长。当一个报文段丢失时,这种长超时周期迫使发送方等待很长时间才重传丢失的分组,因而增加了端到端时延。所以通常发送方可在超时事件发生之前通过观察冗余ACK来检测丢包情况。

冗余ACK就是接收方再次确认某个报文段的ACK,而发送方先前已经收到对该报文段的确认。

当TCP接收方收到一个序号比所期望的序号大的报文段时,它认为检测到了数据流中的一个间隔,即有报文段丢失。这个间隔可能是由于在网络中报文段丢失或重新排序造成的。因为TCP使用累计确认,所以接收方不向发送方发回否定确认,而是对最后一个正确接收报文段进行重复确认(即产生一个冗余ACK)

如果TCP发送方接收到对相同报文段的3个冗余ACK.它就认为跟在这个已被确认过3次的报文段之后的报文段已经丢失。一旦收到3个冗余ACK,TCP就执行快速重传 ,

即在该报文段的定时器过期之前重传丢失的报文段。

5流量控制

前面讲过,一条TCP连接双方的主机都为该连接设置了接收缓存。当该TCP连接收到正确、按序的字节后,它就将数据放入接收缓存。相关联的应用进程会从该缓存中读取数据,但没必要数据刚一到达就立即读取。事实上,接收方应用也许正忙于其他任务,甚至要过很长时间后才去读取该数据。如果应用程序读取数据时相当缓慢,而发送方发送数据太多、太快,会很容易使这个连接的接收缓存溢出。

TCP为应用程序提供了流量控制服务以消除发送方导致接收方缓存溢出的可能性。因此,可以说 流量控制是一个速度匹配服务,即发送方的发送速率与接收方应用程序的读速率相匹配。

前面提到过,TCP发送方也可能因为IP网络的拥塞而被限制,这种形式的发送方的控制被称为拥塞控制(congestioncontrol)。

TCP通过让接收方维护一个称为接收窗口的变量来提供流量控制。接收窗口用于告诉发送方,该接收方还有多少可用的缓存空间。因为TCP是全双工通信,在连接两端的发送方都各自维护一个接收窗口变量。 主机把当前的空闲接收缓存大小值放入它发给对方主机的报文段接收窗口字段中,通知对方它在该连接的缓存中还有多少可用空间。

6 TCP连接管理

客户机中的TCP会用以下方式与服务器建立一条TCP连接:

第一步: 客户机端首先向服务器发送一个SNY比特被置为1报文段。该报文段中不包含应用层数据,这个特殊报文段被称为SYN报文段。另外,客户机会选择一个起始序号,并将其放置到报文段的序号字段中。为了避免某些安全性攻击,这里一般随机选择序号。

第二步: 一旦包含TCP报文段的用户数据报到达服务器主机,服务器会从该数据报中提取出TCPSYN报文段,为该TCP连接分配TCP缓存和控制变量,并向客户机TCP发送允许连接的报文段。这个允许连接的报文段还是不包含应用层数据。但是,在报文段的首部却包含3个重要的信息。

首先,SYN比特被置为1。其次,该 TCP报文段首部的确认号字段被置为客户端序号+1最后,服务器选择自己的初始序号,并将其放置到TCP报文段首部的序号字段中。 这个允许连接的报文段实际上表明了:“我收到了你要求建立连接的、带有初始序号的分组。我同意建立该连接,我自己的初始序号是XX”。这个同意连接的报文段通常被称为SYN+ACK报文段。

第三步: 在收到SYN+ACK报文段后,客户机也要给该连接分配缓存和控制变量。客户机主机还会向服务器发送另外一个报文段,这个报文段对服务器允许连接的报文段进行了确认。因为连接已经建立了,所以该ACK比特被置为1,称为ACK报文段,可以携带数据。

一旦以上3步完成,客户机和服务器就可以相互发送含有数据的报文段了。

为了建立连接,在两台主机之间发送了3个分组,这种连接建立过程通常被称为 三次握手(SNY、SYN+ACK、ACK,ACK报文段可以携带数据) 。这个过程发生在客户机connect()服务器,服务器accept()客户连接的阶段。

假设客户机应用程序决定要关闭该连接。(注意,服务器也能选择关闭该连接)客户机发送一个FIN比特被置为1的TCP报文段,并进人FINWAIT1状态。

当处在FINWAIT1状态时,客户机TCP等待一个来自服务器的带有ACK确认信息的TCP报文段。当它收到该报文段时,客户机TCP进入FINWAIT2状态。

当处在FINWAIT2状态时,客户机等待来自服务器的FIN比特被置为1的另一个报文段,

收到该报文段后,客户机TCP对服务器的报文段进行ACK确认,并进入TIME_WAIT状态。TIME_WAIT状态使得TCP客户机重传最终确认报文,以防该ACK丢失。在TIME_WAIT状态中所消耗的时间是与具体实现有关的,一般是30秒或更多时间。

经过等待后,连接正式关闭,客户机端所有与连接有关的资源将被释放。 因此TCP连接的关闭需要客户端和服务器端互相交换连接关闭的FIN、ACK置位报文段。

❽ 思科模拟器中,线缆两端物理连接不通,亮什么颜色

安装好以后启动,软件界面如图:
在这里插入图片描述
2.我们在工作区中添加一个2600 XM路由器。首先我们在设备类型库中选择路由器,特定设备库中单击2600 XM路由器,然后在工作区中单击一下就可以把2600 XM路由器添加到工作区中了。我们用同样的方式再添加一个2950-24交换机和两台PC。注意我们可以按住Ctrl键再单击相应设备以连续添加设备。
3.接下来我们要选取合适的线型将设备连接起来。我们可以根据设备间的不同接口选择特定的线型来连接,当然如果我们只是想快速的建立网络拓扑而不考虑线型选择时我们可以选择自动连线。
在这里插入图片描述
各线缆两端有不同颜色的圆点,它们分别表示什么样的含义呢?

链路圆点的状态 含义
亮绿色 物理连接准备就绪,还没有Line Protocol status 的指示
闪烁的绿色 连接激活
红色 物理连接不通,没有信号
黄色 交换机端口处于"阻塞"状态
名词解释:

DHCP 动态主机控制协议
subnet Mask 子网掩码
default Gateway (默认路由)默认网关
router 路由器
switches 交换机
hubs 集线器
wireless Devices 无线设备
WAN emulation 仿真广域网
界面基本组件介绍:
Routers 路由器(Ctrl+Alt+R)
Alt
Switches 交换机(Ctrl+Alt+S)
Alt

Hubs 集线器(Ctrl+Alt+U)
Alt

Wieless Devices 无线设备(Ctrl+Alt+W)
Alt

Connections 通讯链路(Ctrl+Alt+O)
我们一般选择连接线中的第一个,它会帮自动选择合适的链路的类型
Alt

End Devices 终端设备(Ctrl+Alt+V)
Alt

WAN Emualtion WAN仿真(Ctrl+Alt+N)
Alt

Custom Made Devices 定制设备(Ctrl+Alt+T)
Alt

Multiuser Connection 多用户连接器(Ctrl+Alt+N)
Alt

接下来用一个具体的例子来介绍基本使用方法
最终的效果图:
在这里插入图片描述

首先添加如下设备:
在这里插入图片描述
当我们想要想使用自动连接线连接各个设备时,发现报错:
在这里插入图片描述
原因在于默认的2620XM路由器端口不够用,我们需要在设备互连前要添加所需的路由器模块(添加模块时注意要关闭电源)。我们为 Router 0 添加NM-4E模块(将模块添加到空缺处即可,删除模块时将模块拖回到原处即可)。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
关闭后再次将NM-4E模块拖拽进空缺处,然后启动路由器电源,即可。
上面三个路由器都重复此操作,全部换上NM-4E路由单元。
构成以下网络拓扑图:
在这里插入图片描述
红色灯表示物理连接不通,没有信号,如何把红色灯变成绿色呢?
很简单,只需把已连接的端口状态打开即可。
在这里插入图片描述
如图,我们可以把鼠标移动到红点上,会显示当前的线路连接的是设备的哪个端口。
在这里插入图片描述
找到对应的端口后,鼠标单击设备,把对应端口的Port Status打开。
在这里插入图片描述
重复以上步骤,把所有的指示灯全部变绿。
在这里插入图片描述
但是,我们还需要进一步的配置,才能真正将其联通。
安装了NM-4E路由单元的路由器,具有5个可连接端口:
在这里插入图片描述
这些端口是我们配置路由的关键。
我们可以看到Router0与PC0机器相连接的是Fa0/0端口。
配置Router0的FastEthernet0/0接口:
在这里插入图片描述
配置主机PC0的IP地址信息(必须确保与上面Router0的相应接口配置匹配!!!!):
在这里插入图片描述
在这里插入图片描述
对于路由器而言每个端口必须保证IP地址唯一。
重复以上步骤,直到,所有的设备都分配了唯一的IP地址,并且路由器的端口都配置配置正确。
打开CSDN,阅读体验更佳

[计算机网络笔记01] Packet Tracer的简单使用_wong_faye的博客-CSDN博 ...
Packet Tracer使用说明 文章目录Packet Tracer使用说明前言一、安装Packet Tracer 7.1安装与登录操作界面二、搭建网络拓扑1.添加网络设备2.读入数据三、 配置网络设备四、仿真网络协议 前言 Cisco Packet Tracer是一款非常优秀的网络模拟软件,...
继续访问
Packet Tracer相关命令_木子木木夕然的博客_packet...
一、 实验目的 1、 了解交换机的基本配置命令 2、 了解交换机的VLAN配置二、 实验内容 1、 packet Tracer 配置Cisco交换机 2、 VLAN的配置 1. Packet Tracer 配置Cisco交换机 要配置好Cisco交换机必需要熟悉IOS命令及相关的知识。打...
继续访问
最新发布 思科网络模拟器Packet Tracer教程
常用的网络设备如下,主要有:路由器、交换机、集线器、无线设备(AP等)、终端设备(PC、Laptop、Phone、Tablet等)、连线(串口线、双绞线、光缆等)使用Fiber线将Router1的FastEthernet1/0 连接到交换机的FastEthernet0/1(注意:是1/0连接到0/1)用Serial DCE线将 Router0的 Serial0/0/0 连接到 Router1的 Serial0/0。使用Console线将Router0的Console连接到配置终端的RS 232。
继续访问

思科模拟器使用教程PDF版(全)
思科模拟器使用教程,思科模拟器使用教程。
Cisco Packet Tracer简单使用教程——路由器配置,计算机网络实验
Cisco Packet Tracer 的简单使用,静态网络的配置,计算机网络实训
继续访问

计算机网络实验(一)Packet Tracer介绍
Packet Tracer介绍 Packet Tracer是Cisco公司针对CCNA认证开发的一个用来设计、配置和故障排除网络的模拟软件。 Packer Tracer模拟器软件比Boson功能强大,比Dynamips操作简单,非常适合网络设备初学者使用。 Packet Tracer模拟器是考CCNA必须掌握的软件。 学习任务 1、安装Packer Tracer; 2、利用一台型号为2960的交换机将2pc机互连组建一个小型局域网; 3、分别设置pc机的...
继续访问

Packet Tracer的使用(一)
Packet Tracer概述 Packet Tracer是一个使人兴奋的网络设计、仿真和建模工具,它允许您在网络、网络安全和物联网(IoT)方面开发您的技能。它允许您建模复杂的系统,而不需要专门的设备。 Packet Tracer是一种创新的网络仿真和可视化工具。它可以帮助你通过桌面电脑或基于Android或iOS的移动设备练习网络配置和故障排除技能。Packet Tracer可用于L...
继续访问

计算机网络——Packet Tracer实现简单局域网组建和配置
Packet Tracer实现简单局域网组建和配置 一、实验目的 1.认识Packet Tracer 。 2.学习使用Packet Tracer进行拓扑的搭建。 3.学习使用Packet Tracer对设备进行配置,并进行简单的测试。 二、实验器材 Cisco Packet Tracer Student 三、实验过程 1.拖放设备和布置线缆 2.用GUI界面配置设备 3.用实时模式测试ping、HTTP和DNS 4.用模拟模式测试ping、HTTP和DNS 5.用CLI界面配置设备(选做) 四、实验结果及结
继续访问
PacketTracer简单使用】
Packet Tracer搭建网络拓扑观察分组轨迹的简单使用
继续访问

Cisco Packet Tracer安装
思科模拟器(Cisco Packet Tracer)安装步骤 一、下载思科 Cisco Packet Tracer 6.2 网络模拟器正式版软件包,下载完成后得到zip格式的压缩包,鼠标右键点击压缩包选择解压到当前文件夹,进入文件夹,双击Cisco Packet Tracer 6.2.0.0052 for Windows Student Version (no tutorials)安装,点击Next。 二、进入思科模拟器(Cisco Packet Tracer)使用协议界面,我们先点击..
继续访问

Packet Tracer使用说明
Packet Tracer使用说明 文章目录Packet Tracer使用说明前言一、安装Packet Tracer 7.1安装与登录操作界面二、搭建网络拓扑1.添加网络设备2.读入数据三、 配置网络设备四、仿真网络协议 前言 Cisco Packet Tracer是一款非常优秀的网络模拟软件,可以完成各种规模的网络设计、配置和调试的模拟,提供了和真实环境几乎一样的仿真环境。还可以单步仿真各种协议运行过程,观察在真实环境下无法看到的IP分组传输过程。 我们首先安装一个Packet Tracer
继续访问

Cisco Packet Tracer的基本应用
Packet Tracer的基本应用 步骤1. 添加网络设备 Cisco Packet Tracer支持的设备类型有Router(路由器)、Switch(交换机)、Hub(集线器)、Wireless Device(无线设备)、Connection(连接线缆)、End Device(端点设备)、WAN Emulation(广域网仿真)、Custom Made Deivce(自定义设备)等。 在操作过程中,首先在设备类型区找到要添加的设备类型,然后从设备瑾区找到要添加的设备瑾最后将设备的瑾对应的图标拖动到工作区
继续访问

热门推荐 Packet Tracer官网下载
文章目录下载注册安装界面各种网络硬件实验拓扑图配置表过程配置ping实验traceroute实验说明 下载 Cisco Packet Tracer 是由Cisco公司发布的一个辅助学习工具,为学习思科网络课程的初学者去设计、配置、排除网络故障提供了网络模拟环境。用户可以在软件的图形用户界面上直接使用拖曳方法建立网络拓扑,并可提供数据包在网络中行进的详细处理过程,观察网络实时运行情况。可以学习IOS...
继续访问

计算机网络基础——实验一:PacketTracer基本使用
实验目的要求: 掌握Cisco Packet Tracer软件的使用方法 实验内容和步骤 1.内容:在Cisco Packet Tracer中用HUB组建局域网,利用PING命令检测机器的互通性。 一、实验设备 集线器(HUB)一台,工作站PC三台,直连电缆三条。 二、实验环境 实验环境如图1-1所示。 图1-1 实验环境 2.步骤: 1、运行Cisco Packet Tracer软件,在逻辑工作区放入一台集线器(HUB)和三台终端设备PC,用直连线(Copper Straight-Through)按下图
继续访问

Packet Tracer学习——常用命令
用户模式 Switch> 特权模式 Switch# 全局配置模式 Switch(config)# 端口模式 Switch(config-if)# enable 进入特权模式(一般简写为en) config t 进入全局配置模式 interface fa 0/1 进入交换机某个端口视图模式 exit 返回到上级模式 end 从全局以下模式返回到特权模式 快捷指令 帮助信息(如
继续访问
packet tracer 下载及简介
Packet Tracer Cisco Packet Tracer (下面简称PT)是由Cisco公司发布的一个模拟网络环境的辅助学习工具,为学习思科网络课程的初学者去设计、配置、排除网络故障提供了环境。 PT提供可视化、可交互的用户图形界面,来模拟各种网络设备及其网络处理过程,使得实验更直观、更灵活、更方便。 可以学习IOS的配置、锻炼故障排查能力。 在packer tracer 的最下面一条是模块功能区 网络设备(network devices),里面有特定的子类有路由器(routers),交换机(sw
继续访问
Cisco Packet Tracer(对cisco模拟器的初识+路由基本配置)
Cisco Packet Tracer Instructor 路由器一般用在广域网中,很少配置以太网接口 一般配置串口,光纤 默认网关即为网关 下一跳的地址 输入?看命令怎么写: en/enable用户模式进入特权模式 (注意打空格) exit任何模式使用,退出当前模式,进入上一级模式 end从当前模式直接退出,进入特权模式 conf t/configure t...
继续访问

Packet Tracer安装包及安装教程(8.0版本)
Packet Tracer安装包及安装教程(8.0版本)
继续访问

Cisco Packet Tracer 实验
Cisco Packet Tracer 实验 直接连接两台 PC 构建 LAN 将两台 PC 直接连接构成一个网络。注意:直接连接需使用交叉线。 进行两台 PC 的基本网络配置,只需要配置 IP 地址即可,然后相互 ping 通即成功。 用交换机构建 LAN 构建如下拓扑结构的局域网: PC0 能否 ping 通 PC1、PC2、PC3 ? 能ping通P1 不能Ping通PC2、PC3 PC3 能否 ping 通 PC0、PC1、PC2 ?为什么? 不能ping通 PC0、PC1 能ping通
继续访问
Cisco Packet Tracer下载和安装、构建网络拓扑、配置网络设备、跟踪数据包、查看数据包
Cisco Packet Tracer下载和安装、构建网络拓扑、配置网络设备、跟踪数据包、查看数据包 下载 一、注册Cisco账户 网址:https://www.cisco.com/c/en/us/index.html 二、注册Cisco学院的账户 网址:https://www.netacad.com/zh-hans/courses/packet-tracer/introction-packet-tracer 注意: 学院的帐号也要注册,否则Packet Tracer软件每次都要求登陆,否则只能以Gu
继续访问

1.3.1 认识 Packet Tracer 软件
Packet Tracer 是 Cisco 公司针对 CCNA 认证开发的一个用来设计、配置和故障排除网络的模拟软件。
继续访问
packet tracer
路由器

❾ 计算机网络知识点

一、计算机网络概述

1.1 计算机网络的分类

按照网络的作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN);

按照网络使用者:公用网络、专用网络。

1.2 计算机网络的层次结构

TCP/IP四层模型与OSI体系结构对比:

1.3 层次结构设计的基本原则

各层之间是相互独立的;

每一层需要有足够的灵活性;

各层之间完全解耦。

1.4 计算机网络的性能指标

速率:bps=bit/s 时延:发送时延、传播时延、排队时延、处理时延 往返时间RTT:数据报文在端到端通信中的来回一次的时间。

二、物理层

物理层的作用:连接不同的物理设备,传输比特流。该层为上层协议提供了一个传输数据的可靠的物理媒体。简单的说,物理层确保原始的数据可在各种物理媒体上传输。

物理层设备:

中继器【Repeater,也叫放大器】:同一局域网的再生信号;两端口的网段必须同一协议;5-4-3规程:10BASE-5以太网中,最多串联4个中继器,5段中只能有3个连接主机;

集线器:同一局域网的再生、放大信号(多端口的中继器);半双工,不能隔离冲突域也不能隔离广播域。

信道的基本概念:信道是往一个方向传输信息的媒体,一条通信电路包含一个发送信道和一个接受信道。

单工通信信道:只能一个方向通信,没有反方向反馈的信道;

半双工通信信道:双方都可以发送和接受信息,但不能同时发送也不能同时接收;

全双工通信信道:双方都可以同时发送和接收。

三、数据链路层

3.1 数据链路层概述

数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。数据链路层在不可靠的物理介质上提供可靠的传输。

该层的作用包括: 物理地址寻址、数据的成帧、流量控制、数据的检错、重发 等。

有关数据链路层的重要知识点:

数据链路层为网络层提供可靠的数据传输;

基本数据单位为帧;

主要的协议:以太网协议;

两个重要设备名称:网桥和交换机。

封装成帧:“帧”是 数据链路层 数据的基本单位:

透明传输:“透明”是指即使控制字符在帧数据中,但是要当做不存在去处理。即在控制字符前加上转义字符ESC。

3.2 数据链路层的差错监测

差错检测:奇偶校验码、循环冗余校验码CRC

奇偶校验码–局限性:当出错两位时,检测不到错误。

循环冗余检验码:根据传输或保存的数据而产生固定位数校验码。

3.3 最大传输单元MTU

最大传输单元MTU(Maximum Transmission Unit),数据链路层的数据帧不是无限大的,数据帧长度受MTU限制.

路径MTU:由链路中MTU的最小值决定。

3.4 以太网协议详解

MAC地址:每一个设备都拥有唯一的MAC地址,共48位,使用十六进制表示。

以太网协议:是一种使用广泛的局域网技术,是一种应用于数据链路层的协议,使用以太网可以完成相邻设备的数据帧传输:

局域网分类:

Ethernet以太网IEEE802.3:

以太网第一个广泛部署的高速局域网

以太网数据速率快

以太网硬件价格便宜,网络造价成本低

以太网帧结构:

类型:标识上层协议(2字节)

目的地址和源地址:MAC地址(每个6字节)

数据:封装的上层协议的分组(46~1500字节)

CRC:循环冗余码(4字节)

以太网最短帧:以太网帧最短64字节;以太网帧除了数据部分18字节;数据最短46字节;

MAC地址(物理地址、局域网地址)

MAC地址长度为6字节,48位;

MAC地址具有唯一性,每个网络适配器对应一个MAC地址;

通常采用十六进制表示法,每个字节表示一个十六进制数,用 - 或 : 连接起来;

MAC广播地址:FF-FF-FF-FF-FF-FF。

四、网络层

网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。数据交换技术是报文交换(基本上被分组所替代):采用储存转发方式,数据交换单位是报文。

网络层中涉及众多的协议,其中包括最重要的协议,也是TCP/IP的核心协议——IP协议。IP协议非常简单,仅仅提供不可靠、无连接的传送服务。IP协议的主要功能有:无连接数据报传输、数据报路由选择和差错控制。

与IP协议配套使用实现其功能的还有地址解析协议ARP、逆地址解析协议RARP、因特网报文协议ICMP、因特网组管理协议IGMP。具体的协议我们会在接下来的部分进行总结,有关网络层的重点为:

1、网络层负责对子网间的数据包进行路由选择。此外,网络层还可以实现拥塞控制、网际互连等功能;

2、基本数据单位为IP数据报;

3、包含的主要协议:

IP协议(Internet Protocol,因特网互联协议);

ICMP协议(Internet Control Message Protocol,因特网控制报文协议);

ARP协议(Address Resolution Protocol,地址解析协议);

RARP协议(Reverse Address Resolution Protocol,逆地址解析协议)。

4、重要的设备:路由器。

路由器相关协议

4.1 IP协议详解

IP网际协议是 Internet 网络层最核心的协议。虚拟互联网络的产生:实际的计算机网络错综复杂;物理设备通过使用IP协议,屏蔽了物理网络之间的差异;当网络中主机使用IP协议连接时,无需关注网络细节,于是形成了虚拟网络。

IP协议使得复杂的实际网络变为一个虚拟互联的网络;并且解决了在虚拟网络中数据报传输路径的问题。

其中,版本指IP协议的版本,占4位,如IPv4和IPv6;首部位长度表示IP首部长度,占4位,最大数值位15;总长度表示IP数据报总长度,占16位,最大数值位65535;TTL表示IP数据报文在网络中的寿命,占8位;协议表明IP数据所携带的具体数据是什么协议的,如TCP、UDP。

4.2 IP协议的转发流程

4.3 IP地址的子网划分

A类(8网络号+24主机号)、B类(16网络号+16主机号)、C类(24网络号+8主机号)可以用于标识网络中的主机或路由器,D类地址作为组广播地址,E类是地址保留。

4.4 网络地址转换NAT技术

用于多个主机通过一个公有IP访问访问互联网的私有网络中,减缓了IP地址的消耗,但是增加了网络通信的复杂度。

NAT 工作原理:

从内网出去的IP数据报,将其IP地址替换为NAT服务器拥有的合法的公共IP地址,并将替换关系记录到NAT转换表中;

从公共互联网返回的IP数据报,依据其目的的IP地址检索NAT转换表,并利用检索到的内部私有IP地址替换目的IP地址,然后将IP数据报转发到内部网络。

4.5 ARP协议与RARP协议

地址解析协议 ARP(Address Resolution Protocol):为网卡(网络适配器)的IP地址到对应的硬件地址提供动态映射。可以把网络层32位地址转化为数据链路层MAC48位地址。

ARP 是即插即用的,一个ARP表是自动建立的,不需要系统管理员来配置。

RARP(Reverse Address Resolution Protocol)协议指逆地址解析协议,可以把数据链路层MAC48位地址转化为网络层32位地址。

4.6 ICMP协议详解

网际控制报文协议(Internet Control Message Protocol),可以报告错误信息或者异常情况,ICMP报文封装在IP数据报当中。

ICMP协议的应用:

Ping应用:网络故障的排查;

Traceroute应用:可以探测IP数据报在网络中走过的路径。

4.7网络层的路由概述

关于路由算法的要求:正确的完整的、在计算上应该尽可能是简单的、可以适应网络中的变化、稳定的公平的。

自治系统AS: 指处于一个管理机构下的网络设备群,AS内部网络自治管理,对外提供一个或多个出入口,其中自治系统内部的路由协议为内部网关协议,如RIP、OSPF等;自治系统外部的路由协议为外部网关协议,如BGP。

静态路由: 人工配置,难度和复杂度高;

动态路由:

链路状态路由选择算法LS:向所有隔壁路由发送信息收敛快;全局式路由选择算法,每个路由器计算路由时,需构建整个网络拓扑图;利用Dijkstra算法求源端到目的端网络的最短路径;Dijkstra(迪杰斯特拉)算法

距离-向量路由选择算法DV:向所有隔壁路由发送信息收敛慢、会存在回路;基础是Bellman-Ford方程(简称B-F方程);

4.8 内部网关路由协议之RIP协议

路由信息协议 RIP(Routing Information Protocol)【应用层】,基于距离-向量的路由选择算法,较小的AS(自治系统),适合小型网络;RIP报文,封装进UDP数据报。

RIP协议特性:

RIP在度量路径时采用的是跳数(每个路由器维护自身到其他每个路由器的距离记录);

RIP的费用定义在源路由器和目的子网之间;

RIP被限制的网络直径不超过15跳;

和隔壁交换所有的信息,30主动一次(广播)。

4.9 内部网关路由协议之OSPF协议

开放最短路径优先协议 OSPF(Open Shortest Path First)【网络层】,基于链路状态的路由选择算法(即Dijkstra算法),较大规模的AS ,适合大型网络,直接封装在IP数据报传输。

OSPF协议优点:

安全;

支持多条相同费用路径;

支持区别化费用度量;

支持单播路由和多播路由;

分层路由。

RIP与OSPF的对比(路由算法决定其性质):

4.10外部网关路由协议之BGP协议

BGP(Border Gateway Protocol)边际网关协议【应用层】:是运行在AS之间的一种协议,寻找一条好路由:首次交换全部信息,以后只交换变化的部分,BGP封装进TCP报文段.

五、传输层

第一个端到端,即主机到主机的层次。传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输。此外,传输层还要处理端到端的差错控制和流量控制问题。

传输层的任务是根据通信子网的特性,最佳的利用网络资源,为两个端系统的会话层之间,提供建立、维护和取消传输连接的功能,负责端到端的可靠数据传输。在这一层,信息传送的协议数据单元称为段或报文。

网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口。

有关网络层的重点:

传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输以及端到端的差错控制和流量控制问题;

包含的主要协议:TCP协议(Transmission Control Protocol,传输控制协议)、UDP协议(User Datagram Protocol,用户数据报协议);

重要设备:网关。

5.1 UDP协议详解

UDP(User Datagram Protocol: 用户数据报协议),是一个非常简单的协议。

UDP协议的特点:

UDP是无连接协议;

UDP不能保证可靠的交付数据;

UDP是面向报文传输的;

UDP没有拥塞控制;

UDP首部开销很小。

UDP数据报结构:

首部:8B,四字段/2B【源端口 | 目的端口 | UDP长度 | 校验和】 数据字段:应用数据

5.2 TCP协议详解

TCP(Transmission Control Protocol: 传输控制协议),是计算机网络中非常复杂的一个协议。

TCP协议的功能:

对应用层报文进行分段和重组;

面向应用层实现复用与分解;

实现端到端的流量控制;

拥塞控制;

传输层寻址;

对收到的报文进行差错检测(首部和数据部分都检错);

实现进程间的端到端可靠数据传输控制。

TCP协议的特点:

TCP是面向连接的协议;

TCP是面向字节流的协议;

TCP的一个连接有两端,即点对点通信;

TCP提供可靠的传输服务;

TCP协议提供全双工通信(每条TCP连接只能一对一);

5.2.1 TCP报文段结构:

最大报文段长度:报文段中封装的应用层数据的最大长度。

TCP首部:

序号字段:TCP的序号是对每个应用层数据的每个字节进行编号

确认序号字段:期望从对方接收数据的字节序号,即该序号对应的字节尚未收到。用ack_seq标识;

TCP段的首部长度最短是20B ,最长为60字节。但是长度必须为4B的整数倍

TCP标记的作用:

5.3 可靠传输的基本原理

基本原理:

不可靠传输信道在数据传输中可能发生的情况:比特差错、乱序、重传、丢失

基于不可靠信道实现可靠数据传输采取的措施:

差错检测:利用编码实现数据包传输过程中的比特差错检测 确认:接收方向发送方反馈接收状态 重传:发送方重新发送接收方没有正确接收的数据 序号:确保数据按序提交 计时器:解决数据丢失问题;

停止等待协议:是最简单的可靠传输协议,但是该协议对信道的利用率不高。

连续ARQ(Automatic Repeat reQuest:自动重传请求)协议:滑动窗口+累计确认,大幅提高了信道的利用率。

5.3.1TCP协议的可靠传输

基于连续ARQ协议,在某些情况下,重传的效率并不高,会重复传输部分已经成功接收的字节。

5.3.2 TCP协议的流量控制

流量控制:让发送方发送速率不要太快,TCP协议使用滑动窗口实现流量控制。

5.4 TCP协议的拥塞控制

拥塞控制与流量控制的区别:流量控制考虑点对点的通信量的控制,而拥塞控制考虑整个网络,是全局性的考虑。拥塞控制的方法:慢启动算法+拥塞避免算法。

慢开始和拥塞避免:

【慢开始】拥塞窗口从1指数增长;

到达阈值时进入【拥塞避免】,变成+1增长;

【超时】,阈值变为当前cwnd的一半(不能<2);

再从【慢开始】,拥塞窗口从1指数增长。

快重传和快恢复:

发送方连续收到3个冗余ACK,执行【快重传】,不必等计时器超时;

执行【快恢复】,阈值变为当前cwnd的一半(不能<2),并从此新的ssthresh点进入【拥塞避免】。

5.5 TCP连接的三次握手(重要)

TCP三次握手使用指令:

面试常客:为什么需要三次握手?

第一次握手:客户发送请求,此时服务器知道客户能发;

第二次握手:服务器发送确认,此时客户知道服务器能发能收;

第三次握手:客户发送确认,此时服务器知道客户能收。

建立连接(三次握手):

第一次: 客户向服务器发送连接请求段,建立连接请求控制段(SYN=1),表示传输的报文段的第一个数据字节的序列号是x,此序列号代表整个报文段的序号(seq=x);客户端进入 SYN_SEND (同步发送状态);

第二次: 服务器发回确认报文段,同意建立新连接的确认段(SYN=1),确认序号字段有效(ACK=1),服务器告诉客户端报文段序号是y(seq=y),表示服务器已经收到客户端序号为x的报文段,准备接受客户端序列号为x+1的报文段(ack_seq=x+1);服务器由LISTEN进入SYN_RCVD (同步收到状态);

第三次: 客户对服务器的同一连接进行确认.确认序号字段有效(ACK=1),客户此次的报文段的序列号是x+1(seq=x+1),客户期望接受服务器序列号为y+1的报文段(ack_seq=y+1);当客户发送ack时,客户端进入ESTABLISHED 状态;当服务收到客户发送的ack后,也进入ESTABLISHED状态;第三次握手可携带数据;

5.6 TCP连接的四次挥手(重要)

释放连接(四次挥手)

第一次: 客户向服务器发送释放连接报文段,发送端数据发送完毕,请求释放连接(FIN=1),传输的第一个数据字节的序号是x(seq=x);客户端状态由ESTABLISHED进入FIN_WAIT_1(终止等待1状态);

第二次: 服务器向客户发送确认段,确认字号段有效(ACK=1),服务器传输的数据序号是y(seq=y),服务器期望接收客户数据序号为x+1(ack_seq=x+1);服务器状态由ESTABLISHED进入CLOSE_WAIT(关闭等待);客户端收到ACK段后,由FIN_WAIT_1进入FIN_WAIT_2;

第三次: 服务器向客户发送释放连接报文段,请求释放连接(FIN=1),确认字号段有效(ACK=1),表示服务器期望接收客户数据序号为x+1(ack_seq=x+1);表示自己传输的第一个字节序号是y+1(seq=y+1);服务器状态由CLOSE_WAIT 进入 LAST_ACK (最后确认状态);

第四次: 客户向服务器发送确认段,确认字号段有效(ACK=1),表示客户传输的数据序号是x+1(seq=x+1),表示客户期望接收服务器数据序号为y+1+1(ack_seq=y+1+1);客户端状态由FIN_WAIT_2进入TIME_WAIT,等待2MSL时间,进入CLOSED状态;服务器在收到最后一次ACK后,由LAST_ACK进入CLOSED;

为什么需要等待2MSL?

最后一个报文没有确认;

确保发送方的ACK可以到达接收方;

2MSL时间内没有收到,则接收方会重发;

确保当前连接的所有报文都已经过期。

六、应用层

为操作系统或网络应用程序提供访问网络服务的接口。应用层重点:

数据传输基本单位为报文;

包含的主要协议:FTP(文件传送协议)、Telnet(远程登录协议)、DNS(域名解析协议)、SMTP(邮件传送协议),POP3协议(邮局协议),HTTP协议(Hyper Text Transfer Protocol)。

6.1 DNS详解

DNS(Domain Name System:域名系统)【C/S,UDP,端口53】:解决IP地址复杂难以记忆的问题,存储并完成自己所管辖范围内主机的 域名 到 IP 地址的映射。

域名解析的顺序:

【1】浏览器缓存,

【2】找本机的hosts文件,

【3】路由缓存,

【4】找DNS服务器(本地域名、顶级域名、根域名)->迭代解析、递归查询。

IP—>DNS服务—>便于记忆的域名

域名由点、字母和数字组成,分为顶级域(com,cn,net,gov,org)、二级域(,taobao,qq,alibaba)、三级域(www)(12-2-0852)

6.2 DHCP协议详解

DHCP(Dynamic Configuration Protocol:动态主机设置协议):是一个局域网协议,是应用UDP协议的应用层协议。作用:为临时接入局域网的用户自动分配IP地址。

6.3 HTTP协议详解

文件传输协议(FTP):控制连接(端口21):传输控制信息(连接、传输请求),以7位ASCII码的格式。整个会话期间一直打开。

HTTP(HyperText Transfer Protocol:超文本传输协议)【TCP,端口80】:是可靠的数据传输协议,浏览器向服务器发收报文前,先建立TCP连接,HTTP使用TCP连接方式(HTTP自身无连接)。

HTTP请求报文方式:

GET:请求指定的页面信息,并返回实体主体;

POST:向指定资源提交数据进行处理请求;

DELETE:请求服务器删除指定的页面;

HEAD:请求读取URL标识的信息的首部,只返回报文头;

OPETION:请求一些选项的信息;

PUT:在指明的URL下存储一个文档。

6.3.1 HTTP工作的结构

6.3.2 HTTPS协议详解

HTTPS(Secure)是安全的HTTP协议,端口号443。基于HTTP协议,通过SSL或TLS提供加密处理数据、验证对方身份以及数据完整性保护

原文地址:https://blog.csdn.net/Royalic/article/details/119985591