千锋计算机网络期末速成笔记目录
数据链路层解决了同一局域网计算机间帧的传输问题,但没有解决以下问题:
局域网:属于资源子网;广域网:属于通信子网。
在计算机网络领域,曾引起了长期的争论的问题:网络层应该向运输层提供怎样的服务?
争论焦点的实质是:在计算机通信中,可靠交付应当由谁来负责?是网络还是端系统?
这种观点认为,应借助于电信网的成功经验,让网络负责可靠交付,计算机网络应模仿电信网络,使用面向连接的通信方式:
虚电路服务:
H1 和 H2 之间的所有分组都沿着同一条虚电路传送。
电路交换与虚电路的区别:
网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务:
数据报服务:无连接
H1 发送给 H2 的分组可能沿着不同路径传送。
网络层传输数据单位:IP 数据报、分组。
对比的方面 | 虚电路服务 | 数据报服务 |
---|---|---|
可靠性 | 可靠通信应当由网络来保证 | 可靠通信应当由用户主机来保证 |
连接的建立 | 必须有 | 不需要 |
终点地址 | 仅在连接建立阶段使用,每个分组使用短的虚电路号 | 每个分组都有终点的完整地址 |
路由选择 | 属于同一条虚电路的分组按照同一路由进行转发 | 每个分组独立选择路由进行转发 |
网络故障适应性 | 所有通过出故障的结点的虚电路均不能工作 | 故障的结点会丢失分组,一些路由会发生变化 |
分组的顺序 | 总是按发送顺序到达终点 | 到达终点时不一定按发送顺序 |
差错处理和流量控制 | 可以由网络负责,也可以由用户主机负责 | 由用户主机负责 |
由于传输网络不提供端到端的可靠传输服务,网络中的路由器可以做得比较简单,而且价格低廉。
如果主机(即端系统)中的进程之间的通信需要是可靠的,那么就由网络的主机中的运输层负责可靠交付 (包括差错处理、流量控制等)。
这种设计思路的好处是:网络的造价大大降低,运行方式灵活,适应多种应用。
网际协议 IP 是 TCP/IP 体系中两个最主要的协议之一。
与 IP 协议配套使用的还有三个协议:
有以下五种不同的中间设备:
将网络互相连接起来要使用一些中间设备。中间设备口称为中间系统或中继(relay)系统。
当中继系统是转发器或网桥时,一般并不称之为网络互连,仅仅是把一个网络扩大了,而这仍然是一个网络(局域网)。
网关由于比较复杂,目前使用得较少。
由于历史的原因,许多有关 TCP/IP 的文献将网络层使用的路由器称为网关。
网络互连都是指用路由器进行网络互连和路由选择。
所谓虚拟互连网络也就是逻辑互连网络。
IP 协议可以使这些性能各异的网络从用户看起来好像是一个统一的网络。使用 IP 协议的虚拟互连网络可简称为 IP 网。
使用虚拟互连网络的好处是:当互联网上的主机进行通信时,就好像在一个网络上通信一样,而看不见互连的各具体的网络异构细节。
我们把整个因特网看成为一个单一的、抽象的网络:
北京计算机应用研究所于 1993 年 6 月 4 日从 APNIC 处获得了一个 C 类的 IP 地址。
CNNIC 以国家互联网络注册机构(NIR)的身份于 1997 年 1 月成为 APNIC 的联盟会员,成立了以 CNNIC 为召集单位的分配联盟,已为多家 ISP 提供 IP 地址:
采用点分十进制记法,可以提高可读性。
网络类别 | 网络数 | 第一个网络号 | 最后一个网络号 | 每个网络中主机数 |
---|---|---|---|---|
A | 126 即 ( 2 7 − 2 ) 126即(2^7-2) 126即(27−2) | 1 | 126 | 16777214 |
B | 16383 即 ( 2 14 − 1 ) 16383即(2^{14}-1) 16383即(214−1) | 128.1 | 191.255 | 65534 |
C | 2097151 即 ( 2 21 − 1 ) 2097151即(2^{21}-1) 2097151即(221−1) | 192.0.1 | 223.255.255 | 254 |
不指派的网络:全 0 的网络;127.0.0.0;128.0.0.0;192.0.0.0。
网络号 | 主机号 | 源地址使用 | 目的地址使用 | 代表的意思 |
---|---|---|---|---|
0 | 0 | 可以 | 不可以 | 在本网络上的本主机 |
0 | host-id | 可以 | 不可以 | 本网络上的某台主机 |
全1 | 全1 | 不可以 | 可以 | 在本网络上进行广播,路由器不转发 |
net-id | 全0 | 不可以 | 不可以 | 网络地址,表示一个网络 |
net-id | 全1 | 不可以 | 可以 | 对 net-id 上的所有主机广播 |
127 | 非全0或全1的任何数 | 可以 | 可以 | 用作本地软件环回测试 |
IP 地址是一种分等级的地址结构。分两个等级的好处是:
一个主机同时连接到两个网络上时,该主机必须具有两 IP 地址,其网络号 net-id 必须是不同的。这种主机称为多归属主机(multihomed host)。
由于一个路由器至少应当连接到两个网络(这样它才能将 IP 数据报从一个网络转发到另一个网络),因此一个路由器至少应当有两个不同的 IP 地址。
用转发器或网桥连接起来的若干个局域网仍为一个网络,因此这些局域网都具有同样的网络号 net-id。所有分配到网络号 net-id 的网络,无论是范围很小的局域网,还是可能覆盖很大地理范围的广域网,都是平等的
实际上 IP 地址是标志一个主机(或路由器)和一条链路的接口。
同一个局域网上的主机或路由器的 IP 地址中的网络号必须是一样的。图中的网络号就是 IP 地址中的 net-id。
路由器总是具有两个或两个以上的 IP 地址,并且每一个接口都有一个不同网络号的 IP 地址:
两个路由器直接相连的,可指明也可不指明 IP 地址。如指明 IP 地址,则这一段连线就构成了一种只包含一段线路的特殊网络。
1985 年起,IP 地址中增加了“子网号字段”,使两级的 IP 地址变成为三级的 IP 地址。这种做法叫作划分子网(subnetting):
划分子网是把 IP 地址的主机号 host-id 进行再划分,而不改变 IP 地址的网络号 net-id。
某单位有 4 个部门,每个部门 30 人左右。若每个部门分配一个 A、B 或 C 类网络地址, 大量 IP 地址被浪费。大量计算机在同一个IP 网络中,存在安全隐患。增加一个部门,没有得到 IP 网络之前不能连入互联网。
网络层划分子网:
划分子网纯属一个单位内部的事情。单位对外仍然表现为没有划分子网的网络。
具体方法:从主机号借用若干个位作为子网号 subnet-id,主机号 host-id 相应减少了若干个位。
身份证号码、邮政编码、学生学号等,凡是编号问题都会采用这种办法。
有 固定长度子网 和 变长子网 两种子网划分方法。
在采用固定长度子网时,所划分的所有子网的子网掩码都是相同的。
划分子网增加了灵活性,但却减少了能够连接在网络上的主机总数。
一个未划分子网的 B 类网络 145.13.0.0:
划分子网后对外仍是一个网络:
路由器 R1 必须知道子网划分情况,路由器使用子网掩码计算 IP 地址的网络号(划分子网之后):
子网掩码是一个网络或一个子网的重要属性:
路由器是互联网中的关键设备:
路由器结构分为两部分:
路由选择部分:也称控制部分,其核心构件是路由选择处理机,任务是根据所路由选择协议构造出路由表,并和相邻路由器交换路由信息,不断地更新和维护路由表;
分组转发部分:分组转发部分由三部分组成:
⚠️ 注意:这里的端口就是硬件接口。
转发(forwarding):路由器根据转发表将用户的 IP 数据报从合适的端口转发出去;
路由选择(routing):按照分布式算法,根据从各相邻路由器得到的关于网络拓扑的变化情况,动态地改变所选择的路由。路由表是根据路由选择算法得出的。而转发表是从路由表得出的。
在讨论路由选择的原理时,往往不去区分转发表和路由表的区别。
查找和转发功能在路由器的交换功能中是最重要的。
若路由器处理分组的速率赶不上分组进入队列的速率,则队列的存储空间最终必定减少到零,这就使后面再进入队列的分组由于没有存储空间而只能被丢弃。
路由器中的输入或输出队列产生溢出是造成分组丢失的重要原因。