计算机网络·第一章

互联网

互联网是由多个计算机网络组成的一个大网,是”网络的网络“,因而也称作网际。互联网用于为分布式的资源提供连接,可以视为一个基础设施,我们视应用进程以下的部分都为基础设施。网络的基本组成是节点链路,在互联网中,节点则是一个个局域网

节点有主机节点数据交换节点,流量通过一次次数据交换节点的转发到达目标主机节点。数据交换节点有交换机、路由器等。绘制网络拓扑图时主机节点一般用方块表示,数据交换节点一般用圆表示,但是也不是很严格

对于链路,主机连节点接到数据交换节点,这样的链路称作接入网链路,而数据交换节点之间的链路称作主干链路

协议用于控制发送、接收消息,规范数据的传输格式、方法,如TCP、IP、HTTP、PPP

互联网可以被分为网络边缘、网路核心和接入网、物理媒体

1680081-20230922164745993-89304658


网络边缘Edge

网络边缘系统主要由主机、应用程序组成,两个主机节点想要建立连接,流量都必须通过核心部分进行多次转发到达目标主机

客户端-服务器模式

该模式下,所有的资源存储在服务器端,客户端只有向服务器发送请求才能获取资源,服务器是该模式下的主体。该模式的拓展性较差,在服务端的处理能力接近阈值时会直接崩溃

对等模式

又称作P2P模式,该模式下可以没有专门的服务器,每一个节点既是客户端也是服务器。该模式下,资源是分布式的,每个节点都持有资源的一部分,所以当客户端增多时,服务端也在增加,在应对较大规模的文件分发效时率很高


网络核心Core

网络核心主要是路由器组成的网状网络,是进行流量转发的核心,进行数据交换主要有两种方式

电路交换Circuit Switching

又称作链路交换,该方式为每一次通信预留一个专有电路,如电话网。该方式不与其他计算机共享,因此能够保证性能,但是连接建立时间较长、建立连接后没有进行数据通信,则会产生资源浪费的问题

将带宽资源进行拆分,一次呼叫可以选择其中的片用于通信

多路复用

是将带宽分成片的技术,主要有以下方式

频分FDM

将可用通信频率范围拆分为多个小片,每一片占据一小段可用的通信频率

时分TDM

将带宽传输数据的时间拆分为一个个周期,每个周期内再分出一小段时间用于一个片,一个片占据了完整的通信带宽频率

image-20260126185205393

波分WDM

采用光信号传输数据时的分配方式,与频分类似,每一片占据光信号的其中一段波长

码分CDM

不分割频率或时间,允许所有用户同时、同频传输。它通过为每个用户分配一个唯一的、特殊的编码序列(伪随机码)来区分信号

分组交换Packet switching

该方式不再使用以上多路复用的方式对带宽进行分片,而是将要传输的数据分成一个个包进行分组。路由器获取包后会先进行存储,再使用全部的带宽资源进行转发,也就是先存储后转发的特点

统计时分多路复用是分组交换进行多路复用的方式,类似时分多路复用,但是没有固定的分配模式

如果到达速率大于链路的输出速率,路由器会使用缓存对包进行排队,当路由器缓存耗尽时,就会产生丢包

该方式实现了带宽资源共享,并且能够最大化利用带宽资源

路由

决定分组采用的源到目标的路径

转发

将分组从路由器的输入链路转移到输出链路

量化统计

对于电路交换,能够同时支持的用户数即为链路中能够分片的最大数

对于分组交换,需要使用概率来表示,假设用户总数为m,用户在某一时间点跃的概率为p,则某一时间点内同时有小于等于n个用户活跃的概率为
$$
\sum_{i=0}^{n} \begin{pmatrix} m \ i \end{pmatrix} p^i(1-p)^{m-i}
$$
比如,若一个链路最多支持的连接数为10,对于电路交换,能够支持的最多用户数就是10,而对于分组交换,假设有共50个用户,p等于0.1,那么
$$
\sum_{i=0}^{10} \begin{pmatrix}
50 \
i
\end{pmatrix}(0.1)^i(0.9)^{50-i}\approx0.990645
$$
可见,当有50位用户时,有99%的概率同时活跃的用户不超过10,这说明该情况下分组交换能够很好地利用网络资源,实现了共享。哪怕一瞬间有超过10位用户活跃,路由器也可以先将数据缓存下来排队,等到网络压力小后再发出

数据报网络

是分组交换下的一种方式,分组携带了目标主机的完整地址,在通信之前,无须建立起一个连接,有数据就传输。由路由器决定下一跳的路径,每次传输的路径可能不一样,可能会失序

image-20260126224136611

虚电路网络

虚电路网络在每一次通信前进行连接,由路由器维护一个虚电路表,该方式建立的连接传输路径是固定的,分组保存虚电路号而不是目标主机的完整地址,分组携带的虚电路号在每一跳后都会更新

image-20260126224625550


接入网和物理媒体

接入网用于将网络边缘接入网络核心,接入网有有线接入无线接入,接入网的重要指标有带宽、是否共享

住宅接入modem

将上网数据调制加载音频信号上, 在电话线上传输,在局端将其中的数据解调出来;反之亦然

带宽一般很窄,传输速度有限,不能同时上网和打电话

digital subscriber line ( DSL )

该方式依然使用电话线与调制解调的方式接入互联网,不同在于该方式将高频段用于数据传输,低频段的则用于通话,可以同时上网和打电话。DSL线路上的数据被传到互联网,DSL线路上的语音则被传到电话网

image-20260126232111855

线缆网络

住宅接入的实现方式,一般由有线电视公司提供的方式,通过对有线电视信号线缆双向改造,在不同频段传输不同信道的数据, 数字电视和上网数据(上下行),然后通过线缆和光纤网络将个家庭用户接入到ISP 路由器

各用户共享到线缆头端的接入网络,与DSL不同, DSL每个用户一个专用线路到CO

image-20260126232129125

电缆网络

住宅接入的实现方式,电力公司通过对电缆的改造,使用电力线使其具有上网的功能,该网络依然是共享的

企业接入

企业内部通过AP(接入点)接入到交换机的端口,再通过交换机的级联接入到互联网,经常被企业或者大学等机构采用。现在,端系统经常直接接到以太网络交换机上

image-20260126233712230

无线接入网络

各无线端系统共享无线接入网络(端系统到无线路由器)

无线局域接入

一般在建筑内部,如平常用的WLAN

广域无线接入

对应移动数据、蜂窝数据等

image-20260126234212174

物理媒体

物理链路

连接每个发送-接收对之间的物理媒体

物理媒体又分为两种类型

导引型媒体

信号沿着固体媒介被导引,如同轴电缆、光纤、双绞线

双绞线TP:两根绝缘铜导线拧合,有5类、6类等

同轴电缆:两根同轴的铜导线,双向。又分基带电缆和宽带电缆,基带电缆上一个单个信道,宽带电缆上有多个信道

光纤和光缆:光脉冲,每个脉冲表示一个 bit,在玻璃纤维中传输,高速,低误码率,安全

非导引型媒体

开放的空间传输电磁波或者光信号,在电磁或者光信号中承载数字数据

无线链路

非导引型媒体组成的物理链路,有地面微波、LAN、wide-area、卫星等


Internet结构

端系统通过接入ISPs(Internet Service Providers,互联网服务提供商)接入互联网,要求每一个ISP之间都可以相互连接。最开始可能想到全连接的互联反方式,但是该方案的可拓展性很差

image-20260130180857070

后面,发展出一个全局的ISP为客户提供数据交换服务,为每一个接入的ISP都连接到全局ISP

image-20260130181010606

后来出现了多家ISP,他们构建了各自的ISP网络,并相互之间再进行互联,形成对等狐互联的结算关系

15901fc7-b6ec-4130-8893-11d885e195e4

业务继续细分,分为全球接入和区域接入,区域接入负责将接入ISPs接入全局ISPs

image-20260131162225701

再到后来,ICP(Internet Content Providers,互联网内容提供商)为了更好的用户体验,在其内部建立专线网络。下图的橙色区域是专供ICP内部的数据交换,处理完再通过ISP连接外界

image-20260131162517427

所以,互联网的结构像一个自内而外扩散的结构,由边缘的单个端节点通过一层层ISP逐级向内,接入内部的位数不多的大范围网络,再向外访问另一边的端节点

从中也可以看出一个松散的层次结构

image-20260131163039560


分组延时、丢失和吞吐量

分组交换虽然带来了更高的资源利用效率,但也产生了一些问题

分组的延时和丢失

产生原因:分组到达链路的速率超过了链路输出的能力,此时会产生排队,这会占用路由器的缓存,当缓冲区耗尽时,则之后的分组就会被丢弃

丢失的分组可能会被前一个节或端系统点重传,或者根本不重传

节点处理延时proc

路由器检查校验数据、绝定转发方向产生的延时,这一般是确定的

排队延时queue

分组在输出链路上等待的时间,这取决于路由器的拥塞程度

传输延时trans

顾名思义,该段延时=分组长度(bit)/链路带宽(bit/s)

传播延时prop

该段延时为数据在物理链路上传播的延时,该段延时=物理链路的长度(m)/数据在链路上的传播速度(m/s)

所以总延时就是
$$
d_{nodal}=d_{proc}+d_{queue}+d_{trans}+d_{prop}
$$
流量强度 I

单位时间内到达路由器的分组长度与传输速率
$$
I=\frac{La}{R}
$$
L表示单个分组的长度,a表示单位时间内到达的分组数

吞吐量

定义为源端和目标端之间的传输速率

瓶颈链路

端到端路径上限制端到端吞吐的链路


协议层次和服务模型

服务(Service)

低层实体向上层实体提供它们之间的通信的能力,是通过原语(primitive)来操作的,垂直

协议(protocol)

对等层实体(peer entity)之间在相互通信的过程中,需要遵循的规则的集合,水平

原语(primitive)

上层使用下层服务的形式,高层使用低层提供的服务,以及低层向高层提供服务都是通过服务访问原语来进行交互的

服务访问点SAP (Services Access Point)

上层使用下层提供的服务通过层间的接口地点

面向连接的服务(Connection-oriented Service)

两个通信实体为进行通信而建立的一 种结合,建立连接的过程有建立连接,通信,拆除连接三部分。该服务类型在网络层被称作虚电路,适用于对于传输大的数据块。特点是保序

无连接的服务(Connectionless Service)

两个对等层实体在通信前不需要建 立一个连接,不预留资源,不需要通信双方都是活跃。适用于传送零星数据。特点是不可靠、可能重复、可能失序

协议与服务的关系

本层协议的实现要靠下层提供的服务来实现,本层实体通过协议为上层提供更高级的服务

image-20260131200048836

Internet协议栈

应用层: 网络应用,为人类用户或者其他应用进程提供网络应用服务

传输层: 主机之间的数据传输,可以将不可靠的通信变成可靠地通信,同时细分为进程到进程

网络层: 为数据报从源到目的选择路由,主机主机之间的通信,端到端通信,不可靠

链路层: 相邻网络节点间的数据传输,2个相邻2点的通信,点到点通信,可靠或不可靠

物理层: 在线路上传送bit

应用层 FTP, SMTP, HTTP,DNS
传输层 TCP, UDP
网络层 IP, 路由协议
链路层 PPP, 802.11(wifi), Ethernet
物理层

ISO/OSI 参考模型

表示层: 允许应用解释传输的数据

会话层: 数据交换的同步,检查点,恢复

应用层
表示层
会话层
传输层
网络层
链路层
物理层

互联网协议栈没有这两层,这些服务,如果需要的话,必须被应用层实现

各层次的协议数据单元

协议数据单元(PDU)

指数据存储、传输和处理的基本单位,在不同层级有不同含义和大小

服务数据单元(SDU)

上层交给本层处理的数据单元

应用层:报文(message)

传输层:报文段(segment),TCP为段,UDP为数据报

网络层:分组packet(如果无连接方式:数据报 datagram)

数据链路层:帧(frame)

物理层:位(bit)

本层PDU = 本层头部 + 上层PDU(即本层SDU) + 本层尾部

封装和解封装

781c166a-eb89-47c6-b54b-e4cbe8416ea3