计算机网络 复习-04-网络层

1. 网络层提供的两种服务

 虚电路服务  和 数据报服务

TCP/IP 体系的网络层提供的是 数据报服务;

 

2. 网际协议 IP

  网际协议IP 是 TCP/IP 体系中两个最主要的协议之一,也是最重要的因特网标准协议之一。

与IP协议 配套使用的还有三个协议: 地址解析协议 ARP , 网际控制报文协议ICMP , 网际组管理协议 IGMP

由于网际协议IP 是用来使互连起来的许多计算机网络能够进行通信,因此 TCP/IP 体系中的网络层常常称为 网际层(或 IP层)

 虚拟互连网络

将网络互相连接起来要使用一些中间设备:

(1)物理层使用的中间设备 叫做: 转发器

(2)数据链路层使用的中间设备叫做 网桥 或 桥接器

(3)网络层使用的中间设备叫做:路由器

(4)在网络层以上使用的中间设备叫做:网关; 用网关连接两个不兼容的系统需要在高层进行协议的转换;

 

1. IP地址及其表示方法:

分类的IP地址;  IP地址是由 因特网名字 和 数字分配机构 ICANN 进行分配的。

IP地址的编址方法经过了三个历史阶段:  1. 分类的 IP地址;  2. 子网的划分;  3. 构成超网;

分类的IP地址: 就是将 IP地址划分为若干个固定类,每一类地址都由两个固定长度的字段组成,第一个字段是网络号(标志主机或路由器 所连接到的网络),一个网络号在整个因特网范围内必须是唯一的;  第二个字段是 主机号(标志着主机或路由器),一个主机号在它前面的网络号所指明的网络范围内必须是唯一的。   因此,一个IP地址在整个因特网范围内是唯一的

 

各种IP地址的网络号字段和 主机号字段: 一个IP地址总共32位

A类: 8位(0 + 网络号) + 24位(主机号)

B类: 16位(10 + 网络号) + 16位(主机号)

C类: 24位(110 + 网络号) + 8位(主机号)

D类: 32位( 1110 + 多播地址 )

E类: 32位( 1111 + 保留为今后使用)

注意:

 1. A、B、C类地址都是 单播地址(一对一通信),是常用的;A、B、C类地址在网络号字段的最前面有1-3位的类别位,其数值分别规定为 0、10、110;其主机号字段分别为3、2、1个字节长;

2. D类地址(前4位是 1110)用于多播(一对多通信);

3. E类地址(前4位是1111)保留为以后用;

 

IP地址并不仅仅指明了一个主机,而是还指明了主机所连接到的网络。 把IP地址划分为A、B、C类 是为了更好地满足不同用户的要求。当某个单位申请到一个IP地址时,实际上是获得了具有同样网络号的一块地址,其中具体的各个主机号则由该单位自行分配,只要做到在该单位管辖的范围内无重复的主机号即可。 

点分十进制记法

2. 常用的三种类别的IP地址

a. A类地址:

  A类地址的网络号字段占用1个字节,只有7位可供使用(第1位固定为0),可指派的网络号是 126 个( 2^7 -2):减2的原因是:1. IP地址中的全0是个保留地址,意思为“本网络”; 2. 网络号为127(即01111111)保留作为本地软件 环回测试本主机的进程之间的通信之用; 网络号为127的地址根本不是一个网络地址;

  A类地址的主机号占3个字节,因此每一个A类网络中的最大主机数 是 2^24 - 2 ,减2 的原因是: 全0 的主机号字段表示该IP地址是“本主机”所连接到的 单个网络地址(eg,一个主机的IP地址为5.6.7.8 , 则该主机所在的网络地址就是 5.0.0.0 ),全1表示“所有的”,因此全1 的主机号字段表示该网络上的所有主机;

 IP地址空间总共有 2^32 个地址, 整个A类地址空间共有 2^31 个地址,占整个IP地址空间的 50%;

b. B类地址:

B类地址的网络号字段有2个字节,但前面两位(10)已经固定,只剩下14位可以进行分配; 由于后面的14位无论如何取值也不可能出现 使整个2字节的网络号字段成为 全0或全1,因此不存在 网络总数 减2 的问题。但是实际上 B类网络地址 128.0.0.0 是不指派的,而可以指派的B类最小网络地址是 128.1.0.0 ,因此B类地址可以指派的网络数是 2^14 -1 ; 

 B类地址的每一个网络上的最大主机数是 2^16 - 2 , 这里需要减2 是因为要扣除 全0 和 全1 的主机号;  

整个B类地址空间共约 2^30 个地址,占整个IP地址空间的 25%;

c. C类地址:

C类地址有3个字节的网络号字段,最前面的3位是(110),还有21位可以进行分配;  C类网络地址 192.0.0.0 也是不指派的,可以指派的C类最小网络地址是 192.0.1.0 , 因此 C类地址可以指派的网络总数是 2^21 -2 ;

  每一个C类地址的最大主机数是 2^8 -2 , 整个C类地址空间共约有 2^ 29 个地址,占整个IP 地址的 12.5% ;

 

 

IP地址的指派范围
网络类别最大可指派的网络数第一个可指派的网络号最后一个可指派的网络号每个网络中的最大主机数
A 126 ( 2^7 - 2  ) 11262^24 -2
B2^14 -1128.1191.2552^16 - 2
C2^21 -1192.0.1223.255.255254 ( 2^8 -2 )

 

一般不使用的特殊IP地址
网络号主机号源地址使用目的地址使用代表的意思
00可以不可在本网络上的本主机
0host-id可以不可在本网络上的某个主机host-id
全1全1不可可以只在本网络上进行广播(各路由器均不转发)
net-id全1不可可以对net-id 上的所有主机进行广播
127非全0或全1的任何数可以可以用作本地软件环回测试之用

 

关于IP地址的一些重要特点:

(1) IP地址由网络号 和 主机号 两部分组成,IP地址是一种分等级的地址结构,IP地址管理机构只分配网络号,而剩下的主机号由得到该网络号的单位自行分配; 路由器仅仅根据目的主机所连接的网络号来转发分组(而不考虑目的主机号),这样就可以使路由表中的项目数大幅度减少,从而减少了路由表所占的存储空间以及 查找路由表的时间;

(2)实际上IP地址是标志一个主机(或路由器)和一条链路的接口;当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的IP 地址,其网络号必须是不同的;

(3)一个网络是指 具有相同网络号 net-id 的主机的集合,因此,用转发器或网桥 连接起来的若干个局域网仍然是一个网络,因为这些局域网都具有同样的网络号; 具有不同的网络号的局域网必须使用 路由器 进行互连;

 

注意:

(1)在同一个局域网上的主机或路由器的IP地址 中的网络号必须是一样的;

(2)用网桥(它只在链路层工作)互连的网段仍然是一个局域网,只能有一个网络号;

(3)路由器总时具有两个或两个以上的IP地址,即 路由器的每一个接口都有一个不同网络号的IP地址;

(4)对应仅由一段连线构成的特殊“网络”,常常不分配IP地址,把这样特殊网络叫做: 无编号网络 或 无名网络

 

IP 地址 和 硬件地址: 

  在局域网中,由于硬件地址已经固化在网卡上的ROM中,因此 常常将硬件地址 称为 物理地址; 因为在局域网的MAC帧中的源地址和 目的地址都是 硬件地址,因此,物理地址,硬件地址 和 MAC 地址 都是同义词;

  物理地址是 数据链路层 和 物理层 使用的地址 ; 而 IP地址 是网络层 和 以上各层使用的地址,是一种逻辑地址(因为IP地址是用软件实现的); 

 在发送数据时,数据从高层下到低层,然后才到通信链路上传输; 使用IP地址(在IP数据报的首部中)的IP数据报 一旦交给了数据链路层,就被封装成MAC 帧。 MAC 帧在传送时使用的源地址 和 目的地址都是硬件地址,这两个硬件地址 都写在 MAC帧的首部中;

  连接在通信链路上的设备(主机或路由器)在接收MAC 帧时,其根据是 MAC 帧首部中的硬件地址; 在数据链路层看不见隐藏在MAC 帧的数据中的 IP地址; 只有在剥去 MAC帧的首部和尾部后把MAC 层的数据上交给网络层后,网络层才能在 IP数据报的首部中找到源IP地址 和 目的 IP地址;

 总之,IP地址 放在 IP数据报的首部, 而硬件地址则放在MAC帧的首部; 在网络层 和 网络层以上使用的是 IP地址, 而数据链路层及 以下使用的是 硬件地址;

注意:

(1)在IP层 抽象的互联网上只能看到 IP数据报;

(2)虽然 在IP数据报首部有 源站IP地址,但路由器只根据 目的站 的IP地址的网络号进行路由选择;

(3)在局域网的链路层,只能看见 MAC帧;

(4)尽管互连在一起的网络的硬件地址体系各不相同,但 IP层抽象的互联网却屏蔽了下层这些很复杂的细节。 只要我们在网络层上讨论问题,就能够使用统一的、抽象的 IP地址研究主机 和 主机或路由器之间的通信;

 

地址解析协议 ARP: 已经知道了主机或路由器的IP地址,找出相应的硬件地址;

  由于传送ARP 分组使用是 IP协议, 因此应当把 ARP协议 规划为 网络层; 但ARP 协议的用途是为了 从网络层使用的 IP地址解析出 在数据链路层使用的硬件地址。

ARP 协议的要点

 

IP数据报的格式

IP数据报首部的固定部分中的各字段:

    版本、首部长度、区分服务、总长度、标识、 标志、片偏移、生存时间、协议、首部检验和、源地址、 目的地址;

IP数据报首部的可变部分

 

IP层转发分组的流程;

 在互联网上转发分组时,是从一个路由器转发到下一个路由器;

在路由表中,对每一条路由最主要的是以下 两个信息: (目的网络地址,下一跳地址); 我们根据目的网络地址来确定下一跳路由器;

特定主机路由器: 对特定的目的主机指明一个路由;   默认路由;     

分组转发算法:

(1)从数据报的首部提取目的主机的IP地址 D, 得出目的网络地址为 N;

(2)若 N 就是与 此路由器直接相连的某个网络地址,则进行 直接交付,不需要再经过其他的路由器,直接把数据报交付目的主机(这里包括把目的主机地址 D 转换为 具体的硬件地址,把数据报封装为 MAC帧,再发送此帧 );否则就是 间接交付,执行(3);

(3)若路由表中有目的地址为D 的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器; 否则,执行(4);

(4)若路由表中有到达网络N的路由,则把数据报传送给路由表中所指明的下一跳路由器;;否则,执行(5);

(5)若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行(6);

(6)报告转发分组出错;

 

3. 划分子网 和 构造超网

划分子网

从两级 IP地址 到 三级 IP地址:

 IP地址的一些不合理: IP地址空间的利用率有时很低;给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏;  两级IP地址不够灵活;

解决方法:在IP地址中增加一个“子网号字段 ”,这种方法 叫做: 划分子网(或 子网寻址,子网路由选择);整个网络对外部仍然表现为一个网络;   IP地址 定义为:{ <网络号> ,<子网号> , <主机号> }

划分子网的方法: 从网络的主机号 借用若干位作为子网号 subnet-id ,当然主机号也就相应的减少了同样的位数;

 凡是从其他网络发送给 本单位某个主机的IP数据报,仍然是根据IP数据报的 目的网络号 找到连接在本单位网络上的路由器;但此路由器在收到 IP数据报后,再按 目的网络号 和 子网号 找到目的子网,把IP数据报交付目的主机;

划分子网 只是把 IP地址的主机号这部分再划分,而不改变 IP地址原来的网络号;

 

子网掩码:

 从 IP数据报的首部 无法看出 源主机 或 目的主机 所连接的网络是否进行了 子网的划分?

子网掩码:(假定从原来的16位主机号中拿出8位作为子网号)  子网掩码是32位,由一串 1 和 跟随的一串 0组成,子网掩码中的1对应于 IP地址中原来二级地址中的16位网络号 加上新增加的8位子网号, 而子网掩码中的 0 对应于 IP现在的 8位主机号; (极力推荐在子网掩码中选用连续的 1,以免出现差错);

 使用子网掩码的好处就是:  不管网络有没有 划分子网,只要把子网掩码 和 IP地址进行 逐位的“ 与 ”运算,就立即得出网络地址来。这样在路由器处理到来的分组时就可采用同样的算法。

 

默认子网掩码: 

  因特网的标准规定: 所有的网络都必须使用子网掩码,同时在路由器的路由表中也必须有子网掩码这一栏。如果一个网络不划分子网,那么该网络的子网掩码就使用 默认子网掩码。 默认子网掩码 中 1的位置 和 IP地址中的网络号字段 net-id 正好相对应。 因此,若用默认子网掩码 和 某个不划分子网的IP地址逐位相“ 与 ”,就应当能够得出该IP地址的网络地址来。 这样做可以不用查找该地址的类别位就能知道这是哪一类的IP地址。

A类地址的默认子网掩码是 255.0.0.0 , 或 0xFF000000;

B类地址的默认子网掩码是255.255.0.0 ,或 0xFFFF0000;

C类地址的默认子网掩码是 255.255.255.0 ,或 0xFFFFFF00;

 

子网掩码是一个网络 或 一个子网的重要属性。 划分子网增加了灵活性,但却减少了能够连接在网络上的主机总数。

使用子网划分后,路由表必须包括以下内容: 目的网络地址、子网掩码 和 下一跳地址。    

在划分子网的情况下 的 路由器转发分组算法

 

1992年因特网面临的三大问题:

1. B类地址在1992年已经分配了近一半,很快将全部分配完毕;

2. 因特网主干网上的路由表中的项目数急剧增长;

3. 整个IPv4 的地址空间最终将全部耗尽。 在2011年2月3日,IANA宣布 IPv4地址已经耗尽。

当时 IETF研究出 无分类编址的方法来解决前两个问题; 专门成立 IPv6工作组来解决新版本 IP协议的问题。

 

 

无分类编址(无分类域间路由选择) CIDR(构成超网)

CIDR 最主要的两个特点:

1. CIDR消除了传统的A、B、C类地址及其划分子网的概念;CIDR 把32位的 IP地址 划分为两个部分:前面的部分是“网络前缀”(用来指明网络),后面的部分是主机号(用来指明主机)。 无分类的两级编址:  IP地址 :{<网络前缀> ,<主机号>}

  CIDR还使用“ 斜线记法”(CIDR记法):在IP地址后面加上斜线 / , 然后写上网络前缀所占的位数。

2. CIDR 把 网络前缀都相同的连续IP 地址组成一个“ CIDR地址块”,我们只要知道 CIDR 地址块中的任何一个地址,就可以知道这个地址块的起始地址(最小地址)和 最大地址,以及 地址块中的地址数。

 eg: IP地址 128.14.35.7/20 : 前20位是网络前缀, 网络前缀后面的12位是主机号;

为了更方便地进行路由选择,CIDR使用32位的地址掩码: 地址掩码由一串1 和 一串0 组成,而1的个数就是网络前缀的长度; 因此,CIDR 使用的地址掩码也可继续称为 子网掩码。

  eg: /20地址块的地址掩码是:11111111  11111111  11110000  00000000 (20个连续的1)

   斜线记法中,斜线后面的数字就是 地址掩码中1的个数;

斜线记法还有一个好处 就是 它除了表示一个IP地址外,还提供了其他一些重要信息:

eg: 地址 192.199.170.82/27 不仅表示IP地址是 192.199.170.82 , 而且还表示这个地址块的网络的前缀有 27位(剩下的5位是主机号),因此这个地址块包含32个IP地址 (2^5=32),还可以通过简单计算得出: 这个地址块的最小地址是 192.199.170.64 , 最大地址是 192.199.170.95.

 

由于一个CIDR 地址块中有很多地址,所以在路由表中就利用 CIDR地址块来查找目的网络。 这种地址的聚合常称为: 路由聚合(也称为:构成超网)。路由聚合有利于减少路由表中的项目数,从而减少路由器之间的路由选择信息的交换,从而提高了整个因特网的性能。

  每一个CIDR地址块中的地址数一定是2的整数次幂,除去、最后几行外,CIDR地址块都包含了多个C类地址(是一个C类地址的2^n 倍,n是整数),这就是 “构成超网”的来源;

 使用CIDR的一个好处就是: 可以更加有效地分配IPv4 的地址空间,可根据客户的需要分配适当大小的CIDR地址块。

  地址聚合;      网络前缀越短,其地址块所包含的地址数就越多;

 

最长前缀匹配:  从查找路由表的匹配结果中选择具有最长网络前缀的路由;

使用二叉线索 查找路由表

 

4. 网际控制报文协议 ICMP

为了更有效地 转发 IP数据报 和 提高交付成功的机会,在网际层使用了 网际控制报文协议 ICMP; 

ICMP允许主机或路由器 报告差错情况和 提供 有关异常情况的报告。 ICMP是 IP层的协议; 

ICMP报文作为 IP层数据报的数据,加上 数据报的首部,组成 IP数据报发送出去;

 ICMP报文的种类:   ICMP报文有两种:

 (1)ICMP差错报告报文(5种): 终点不可达, 源点抑制, 时间超过, 参数问题, 改变路由(重定向);

 (2)ICMP询问报文(2种): 回送请求和回答, 时间戳请求和回答

 

ICMP的应用实例:

(1) 分组网间探测 PING: 用来测试两个主机之间的连通性;   eg: ping  mail.sina.com.cn

  (2)   traceroute:用来跟踪一个分组从源点到终点的路径;

 

5. 因特网的路由选择协议

理想的路由选择:   核心是 路由算法:需要何种算法来获得路由表中的各项目;

分层次的路由选择协议:

自治系统: 在单一的技术管理下的一组路由器;

因特网把路由选择协议 划分为两大类:

(1)内部网关协议 IGP :在一个自治系统内部使用的路由选择协议, 如: RIP, OSPF 协议;

(2)外部网关协议 EGP:当源主机和 目的主机处在不同的自治系统中时;   如: BGP的版本4(BGP-4)

自治系统之间的路由选择也叫做:域间路由选择; 在自治系统内部的路由选择 叫做: 域内路由选择;

 

内部网关协议   RIP(路由信息协议):

(1)工作原理:  

 RIP是一种分布式的基于距离向量的路由选择协议;RIP协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录;

  RIP协议的特点

(2)距离向量算法

(3)RIP协议的报文格式

 

内部网关协议  OSPF(开放最短路径优先):

 (1)OSPF协议的基本特点: OSPF最主要的特征就是 使用分布式的 链路状态协议 ,而不是像 RIP 那样的距离向量协议;

    OSPF的特点

(2)OSPF的五种分组类型

 

外部网关协议 BGP(边界网关协议):

  边界网关协议BGP 只能是 力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由;BGP采用了 路径向量路由选择协议;

 

路由器的构成:

(1)路由器的结构:

  路由器是一种具有 多个输入端口 和 多个输出端口的专用计算机,其任务是 转发分组。

从路由器某个输入端口收到的分组,按照分组要去的目的地(目的网络),把该分组从路由器的某个合适的输出端口转发给下一跳路由器。下一跳路由器也按照这种方法处理分组,直到该分组到达终点为止。 

  路由器的转发分组 正是网络层的主要工作。

整个路由器的结构可划分为两大部分:

a. 路由选择部分(控制部分,核心构件是 路由选择处理机)

b. 分组转发部分( 由三部分组成:交换结构,一组输入端口,一组输出端口 )

(2)交换结构

 

6. IP多播

(1)IP多播的基本概念

多播: 一对多的通信;

当多播组的主机数很大时(如成千上万个),采用多播方式就可明显地减轻网络中各种资源的消耗;   多播路由器

在因特网上进行多播就叫做: IP多播; IP多播所传送的分组需要使用 多播IP地址;

多播地址只能用于 目的地址,不能用于源地址;

(2)在局域网上进行硬件多播

(3)网际组管理协议 IGMP 和 多播路由选择协议

  IP多播需要两种协议:网际组管理协议 IGMP 和 多播路由选择协议

网际组管理协议 IGMP 

多播路由选择协议: 多种方法(洪泛与剪除,隧道技术,基于核心的发现技术)

 

7. 虚拟专用网 VPN 和 网络地址转换 NAT

由于IP地址的紧缺, 对于在机构内部使用的计算机可以由本机构自行分配其IP地址,即让这些计算机使用仅在本机构有效的IP地址(本地地址),而不需要向因特网的管理机构申请全球唯一的IP地址(全球地址),这样就可以大大节约宝贵的全球IP地址资源。

 专用地址: 只能用于一个机构的内部通信,而不能用于和因特网上的主机通信; 专用地址只能用作本地地址而不能用作全球地址; 在因特网的所有路由器,对目的地址时专用地址的数据报一律不进行转发;

采用专用IP地址的互连网络 称为: 专用互联网(专用网,本地互联网); 专用IP地址 也叫做  可重用 地址;

虚拟专用网VPN : 利用公用的因特网作为本机构各专用网之间的通信载体;

 

网络地址转换NAT: 

NAT软件, NAT路由器;

所有使用本地地址的主机在和外界通信时,都要在NAt路由器上将其本地地址转换成 全球IP地址,才能和因特网连接;

NAT地址转换表

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值