计算机网络第一章
计算机网络·第一章
互联网
互联网是由多个计算机网络组成的一个大网,是”网络的网络“,因而也称作网际。互联网用于为分布式的资源提供连接,可以视为一个基础设施,我们视应用进程以下的部分都为基础设施。网络的基本组成是节点和链路,在互联网中,节点则是一个个局域网
节点有主机节点和数据交换节点,流量通过一次次数据交换节点的转发到达目标主机节点。数据交换节点有交换机、路由器等。绘制网络拓扑图时主机节点一般用方块表示,数据交换节点一般用圆表示,但是也不是很严格
对于链路,主机连节点接到数据交换节点,这样的链路称作接入网链路,而数据交换节点之间的链路称作主干链路
协议用于控制发送、接收消息,规范数据的传输格式、方法,如TCP、IP、HTTP、PPP
互联网可以被分为网络边缘、网路核心和接入网、物理媒体

网络边缘Edge
网络边缘系统主要由主机、应用程序组成,两个主机节点想要建立连接,流量都必须通过核心部分进行多次转发到达目标主机
客户端-服务器模式
该模式下,所有的资源存储在服务器端,客户端只有向服务器发送请求才能获取资源,服务器是该模式下的主体。该模式的拓展性较差,在服务端的处理能力接近阈值时会直接崩溃
对等模式
又称作P2P模式,该模式下可以没有专门的服务器,每一个节点既是客户端也是服务器。该模式下,资源是分布式的,每个节点都持有资源的一部分,所以当客户端增多时,服务端也在增加,在应对较大规模的文件分发效时率很高
网络核心Core
网络核心主要是路由器组成的网状网络,是进行流量转发的核心,进行数据交换主要有两种方式
电路交换Circuit Switching
又称作链路交换,该方式为每一次通信预留一个专有电路,如电话网。该方式不与其他计算机共享,因此能够保证性能,但是连接建立时间较长、建立连接后没有进行数据通信,则会产生资源浪费的问题
片
将带宽资源进行拆分,一次呼叫可以选择其中的片用于通信
多路复用
是将带宽分成片的技术,主要有以下方式
频分FDM
将可用通信频率范围拆分为多个小片,每一片占据一小段可用的通信频率
时分TDM
将带宽传输数据的时间拆分为一个个周期,每个周期内再分出一小段时间用于一个片,一个片占据了完整的通信带宽频率

波分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位用户活跃,路由器也可以先将数据缓存下来排队,等到网络压力小后再发出
数据报网络
是分组交换下的一种方式,分组携带了目标主机的完整地址,在通信之前,无须建立起一个连接,有数据就传输。由路由器决定下一跳的路径,每次传输的路径可能不一样,可能会失序

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

接入网和物理媒体
接入网用于将网络边缘接入网络核心,接入网有有线接入和无线接入,接入网的重要指标有带宽、是否共享
住宅接入modem
将上网数据调制加载音频信号上, 在电话线上传输,在局端将其中的数据解调出来;反之亦然
带宽一般很窄,传输速度有限,不能同时上网和打电话
digital subscriber line ( DSL )
该方式依然使用电话线与调制解调的方式接入互联网,不同在于该方式将高频段用于数据传输,低频段的则用于通话,可以同时上网和打电话。DSL线路上的数据被传到互联网,DSL线路上的语音则被传到电话网

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

电缆网络
住宅接入的实现方式,电力公司通过对电缆的改造,使用电力线使其具有上网的功能,该网络依然是共享的
企业接入
企业内部通过AP(接入点)接入到交换机的端口,再通过交换机的级联接入到互联网,经常被企业或者大学等机构采用。现在,端系统经常直接接到以太网络交换机上

无线接入网络
各无线端系统共享无线接入网络(端系统到无线路由器)
无线局域接入
一般在建筑内部,如平常用的WLAN
广域无线接入
对应移动数据、蜂窝数据等

物理媒体
物理链路
连接每个发送-接收对之间的物理媒体
物理媒体又分为两种类型
导引型媒体
信号沿着固体媒介被导引,如同轴电缆、光纤、双绞线
双绞线TP:两根绝缘铜导线拧合,有5类、6类等
同轴电缆:两根同轴的铜导线,双向。又分基带电缆和宽带电缆,基带电缆上一个单个信道,宽带电缆上有多个信道
光纤和光缆:光脉冲,每个脉冲表示一个 bit,在玻璃纤维中传输,高速,低误码率,安全
非导引型媒体
开放的空间传输电磁波或者光信号,在电磁或者光信号中承载数字数据
无线链路
非导引型媒体组成的物理链路,有地面微波、LAN、wide-area、卫星等
Internet结构
端系统通过接入ISPs(Internet Service Providers,互联网服务提供商)接入互联网,要求每一个ISP之间都可以相互连接。最开始可能想到全连接的互联反方式,但是该方案的可拓展性很差

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

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

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

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

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

分组延时、丢失和吞吐量
分组交换虽然带来了更高的资源利用效率,但也产生了一些问题
分组的延时和丢失
产生原因:分组到达链路的速率超过了链路输出的能力,此时会产生排队,这会占用路由器的缓存,当缓冲区耗尽时,则之后的分组就会被丢弃
丢失的分组可能会被前一个节或端系统点重传,或者根本不重传
节点处理延时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)
两个对等层实体在通信前不需要建 立一个连接,不预留资源,不需要通信双方都是活跃。适用于传送零星数据。特点是不可靠、可能重复、可能失序
协议与服务的关系
本层协议的实现要靠下层提供的服务来实现,本层实体通过协议为上层提供更高级的服务

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) + 本层尾部
封装和解封装





