为了账号安全,请及时绑定邮箱和手机立即绑定

网络层【第三篇】

标签:
Java

一、内部网关协议 RIP

路由信息协议 RIP (Routing Information Protocol) 是内部网关协议 IGP 中最先得到广泛使用的协议。

RIP 协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录。

RIP 是一种分布式的、基于距离向量的路由选择协议。

RIP 协议中的“距离”也称为“跳数”(hop count),因为每经过一个路由器,跳数就加 1。

  • 这里的“距离”实际上指的是“最短距离”。

RIP 不能在两个网络之间同时使用多条路由。RIP 选择一个具有最少路由器的路由(即最短路由),哪怕还存在另一条高速(低时延)但路由器较多的路由。

1.1RIP 协议的三个特点

  • (1) 仅和相邻路由器交换信息

  • (2) 交换的信息是当前本路由器所知道的全部信息,即自己的路由表

  • (3) 按固定的时间间隔交换路由信息,例如,每隔 30 秒。当网络拓扑发生变化时,路由器也及时向相邻路由器通告拓扑变化后的路由信息。

1.2工作过程

  1. 路由器在刚刚开始工作时,只知道到直接连接的网络的距离(此距离定义为1)。它的路由表是空的。

  2. 以后,每一个路由器也只和数目非常有限的相邻路由器交换并更新路由信息。

  3. 经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。

  • RIP 协议让互联网中的所有路由器都和自己的相邻路由器不断交换路由信息,并不断更新其路由表,使得从每一个路由器到每一个目的网络的路由都是最短的(即跳数最少)。

  • 虽然所有的路由器最终都拥有了整个自治系统的全局路由信息,但由于每一个路由器的位置不同,它们的路由表当然也应当是不同的。

  • https://img1.sycdn.imooc.com//5e085f1300012a9908320490.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

例子:

现在有一个r6的路由表:

https://img1.sycdn.imooc.com//5e085f2b0001590903840182.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

现在收到相邻路由器 R4 发来的路由更新信息:

https://img1.sycdn.imooc.com//5e085f3b0001f81f04000176.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

我们的具体做法是这样子的:

  • 首先将发送过来的r4表的距离全部加1,并把下一跳的路由器都改成是它自己

  • https://img1.sycdn.imooc.com//5e085f60000105e203920191.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

  • 此时就可以与R6的路由表来进行比较了(根据上面R4已更新的与R6做比较)。

    • 第一行在R4有,R6没有,因此需要把第一行添加到R6中

    • 第二行R4和R6都有,但下一跳的地址不一样,因此需要更新

    • 第三行R4和R6都有,但下一跳的地址一样,因此比较谁的距离短,哪个短用哪个

最后得出的答案:

https://img1.sycdn.imooc.com//5e085f77000110b903920183.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

再来看另外一个例子:

https://img1.sycdn.imooc.com//5e085f8e00013bff08760458.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

1.3RIP优缺点

  • 优点:

    • 实现简单,开销较小。

  • 缺点:

    • RIP 限制了网络的规模,它能使用的最大距离为 15(16 表示不可达)。

    • 路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也就增加。

    • “坏消息传播得慢”,使更新过程的收敛时间过长

二、IPv6

我国在2014-2015年也逐步停止了向新用户和应用分配 IPv4 地址。
解决 IP 地址耗尽的根本措施就是采用具有更大地址空间的新版本的 IP,即 IPv6。

所引进的主要变化如下:

  • 更大的地址空间。IPv6 将地址从 IPv4 的 32 位 增大到了 128 位。

  • 扩展的地址层次结构。

  • 灵活的首部格式。 IPv6 定义了许多可选的扩展首部。

  • 改进的选项。 IPv6 允许数据报包含有选项的控制信息,其选项放在有效载荷中。

  • 允许协议继续扩充。

  • 支持即插即用(即自动配置)。因此 IPv6 不需要使用 DHCP。

  • 支持资源的预分配。  IPv6 支持实时视像等要求,保证一定的带宽和时延的应用。

  • IPv6 首部改为 8 字节对齐。首部长度必须是 8 字节的整数倍。原来的 IPv4 首部是 4 字节对齐。

  • https://img1.sycdn.imooc.com//5e085fa50001a12208560499.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

2.1v4向v6过渡

向 IPv6 过渡只能采用逐步演进的办法,同时,还必须使新安装的 IPv6 系统能够向后兼容:IPv6 系统必须能够接收和转发 IPv4 分组,并且能够为 IPv4 分组选择路由。

两种向 IPv6 过渡的策略:

  • 使用双协议栈

  • 使用隧道技术

双协议栈主机在和 IPv6 主机通信时是采用 IPv6 地址,而和 IPv4 主机通信时就采用 IPv4 地址。
根据 DNS 返回的地址类型可以确定使用 IPv4 地址还是 IPv6 地址。

https://img1.sycdn.imooc.com//5e085fce0001ceab08960474.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

在 IPv6 数据报要进入IPv4网络时,把 IPv6 数据报封装成为 IPv4 数据报,整个的 IPv6 数据报变成了 IPv4 数据报的数据部分。
当 IPv4 数据报离开 IPv4 网络中的隧道时,再把数据部分(即原来的 IPv6 数据报)交给主机的 IPv6 协议栈。

https://img1.sycdn.imooc.com//5e085fed000104e909040494.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

三、网络地址转换NAT

问题:在专用网上使用专用地址的主机如何与互联网上的主机通信(并不需要加密)?

采用网络地址转换 NAT。这是目前使用得最多的方法。

装有 NAT 软件的路由器叫作 NAT路由器,它至少有一个有效的外部全球IP地址,所有使用本地地址的主机在和外界通信时,都要在 NAT 路由器上将其本地地址转换成全球 IP 地址。

通过 NAT 路由器的通信必须由专用网内的主机发起。专用网内部的主机不能充当服务器用,因为互联网上的客户无法请求专用网内的服务器提供服务。

3.1转换过程

  1. 内部主机 A 用本地地址 IPA 和互联网上主机 B 通信所发送的数据报必须经过 NAT 路由器

  2. NAT 路由器将数据报的源地址 IPA 转换成全球地址 IPG,并把转换结果记录到NAT地址转换表中,目的地址 IPB 保持不变,然后发送到互联网。

  3. NAT 路由器收到主机 B 发回的数据报时,知道数据报中的源地址是 IPB 而目的地址是 IPG

  4. 根据 NAT 转换表,NAT 路由器将目的地址IPG 转换为 IPA,转发给最终的内部主机 A

可以看出,在内部主机与外部主机通信时,在NAT路由器上发生了两次地址转换:

  • 离开专用网时:替换源地址,将内部地址替换为全球地址

  • 进入专用网时:替换目的地址,将全球地址替换为内部地址

  • https://img1.sycdn.imooc.com//5e08600600014f9209000455.jpg

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
1.5万
获赞与收藏
6488

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消