计算机网络 网络层下 | IPv6 路由选择协议,P多播,虚拟专用网络VPN,MPLS多协议标签

文章目录

  • 5 IPv6
    • 5.1 组成
    • 5.2 IPv6地址
    • 5.3 从IPv4向IPv6过渡
      • 5.3.1 双协议栈
      • 5.3.2 隧道技术
  • 6 因特网的路由选择协议
    • 6.1 内部网关协议RIP
    • 6.2 内部网关协议 OSPF
      • 基本特点
    • 6.3 外部网关协议 BGP
      • 6.3.1 路由选择
    • 6.4 路由器组成
      • 6.4.1 基本了解
      • 6.4.2 结构
  • 7 IP多播
    • 7.1 硬件多播
    • 7.2 IP多播需要三种协议
      • 7.2.1 IGMP协议
      • 7.2.2 多播路由选择协议
  • 8 虚拟专用网络VPN
    • 8.1 网络地址转换方法NAT
      • NAT的工作原理:
      • NAT的优点
  • 9 MPLS多协议标签交换
      • 主要特点:
      • 工作原理:

5 IPv6

由于IPv4不够用了,所以后面用了范围更大的IPv6

主要变化如下

1 将地址从IPbv4的32位变到了128位

2 扩展的地址层次结构

3 更加灵活的首部格式

5.1 组成

由两大部分组成,即基本首部和后面的有效载荷(有效载荷允许有多个扩展首部)

5.2 IPv6地址

由于IPv6很大很大,所以原本的点分十进制也不够方便了

所以现在IPb6使用冒号十六进制法

比如如下:

68E6:8C64:0000:0000:0:1180:960A:FFFF

对于连续的零可以进行压缩表示,用双冒号替代

FF05:0:0:0:0:0:0:B3

如上面可以压缩为FF05::B3

为了不发生歧义,一个地址规定只能使用一次零压缩

5.3 从IPv4向IPv6过渡

介绍两种过渡方法

5.3.1 双协议栈

双协议栈是指完全过渡到IPv6之前,一部分主机或路由器同时装有IPv4和IPv6这两种协议栈

在和IPv4主机通信的时候采用IPv4,在和IPv6主机通信的时候采用IPv6

但是这种过渡方式代价太大,需要安装两套协议,所以提出下面的隧道技术

5.3.2 隧道技术

隧道技术核心就是在IPv6进入网络前 进行封装为IPv4帧传输,这样接收方接收到IPv6数据报后再解析IPv6数据报

隧道技术实际上也会用到双协议栈,只不过只在入网和出网的时候安装两个就行,中途的主机都不需要安装

6 因特网的路由选择协议

路由选择核心就是讨论转发表中的路由是怎么得出来的

理想的路由算法要尽可能

正确完整,简单,稳定且公平

对于路由选择协议,按照是否自适应调整可以划分为静态路由选择策略和动态路由选择策略

其中

  • 静态路由选择策略——即非自适应路由选择,简单开销小,人工配置每一条路由
  • 动态路由选择策略——即自适应路由选择,开销大,实现较为复杂,但是可以很好适应网络状态变化

我们可以把互联网划分为许多较小的自治系统AS,自治系统内部可以使用自己的路由选择协议,然后整体又可以连接到整个互联网上

那么在自治系统内部的使用的协议又叫做内部网关协议IGP,如RIP,OSPF

源主机和目的主机不在同一个自治系统叫做外部网关协议EGP,如BGP-4

6.1 内部网关协议RIP

了解路由选择协议,核心要解决三个问题——和哪些路由器交换信息?交换什么信息?在什么时候交换信息?

对于RIP而言

1 交换的对象是:只和相邻的路由器交换信息

2 交换的信息是:自己现在的路由表

3 交换的时间是:按照固定时间间隔交换信息,每隔30s

路由表更新的原则是 距离向量算法

看下面的例子

在这里插入图片描述

在这里插入图片描述

总结来看

首先是否是新信息

再看下一跳是否相同,这两种情况直接更新

如果下一跳不同的话比较距离

优点 开销较小,实现简单

缺点 限制了网络规模,使用最大距离为15。同时好消息传递的快,坏消息传递的慢!!网络出故障后的传播时间很慢

6.2 内部网关协议 OSPF

上述的RIP缺点是不能适用于较大规模的自治系统

所以使用OSPF

同样回答三个问题——和哪些路由器交换信息?交换什么信息?在什么时候交换信息?

对于RIP而言

1 交换的对象是:和所有该区域的路由器交换

2 交换的信息是:自己现在的路由表

3 交换的时间是:按照固定时间间隔交换信息,每隔30s

基本特点

1 带宽是主要考虑的因素

2 使用的是洪泛法,就是路由器通过输出端口向所有路由器发送信息

3 所有路由器最终建立链路状态数据库,全网范围内一致,因而克服了RIP的缺点(RIP只知道相邻的)保证了更新过程中收敛的快

同时为了能让他应用于更大规模的网络

进行了区域的划分

每次只需要对该(主干)区域做洪泛即可,因而也只需要知道主干区域的完整拓扑结构即可

在这里插入图片描述

OSPF有五种类型

​ 1 问候分组 确定是否可达

​ 2 数据库描述分组 达到数据库的同步

​ 3 链路状态请求 新情况下的同步

​ 4 链路状态更新

​ 5 链路状态确认

6.3 外部网关协议 BGP

使得前面的自治系统连为一个整体!!!

力求寻找较好的路由,不要兜圈子即可,不用最短的

内部的路由器建立iBGP连接,而内部和外部直接建立eBGP连接

BGP发言人,每一个自治系统的管理员要选择至少一个路由器作为该自治系统的BGP发言人

6.3.1 路由选择

1本地偏好值最高的路由优先选择

2 使用具有AS跳数最少的选择

3 使用热土豆路由算法

BGP-4使用四种报文

​ 1 打开

​ 2 更新

​ 3 保活

​ 4 通知

6.4 路由器组成

6.4.1 基本了解

讲完了路由选择,接下来讲解路由器

路由器是一种典型的网络层设备,具有多个输入端口和多个输出端口的专用计算机~

路由器是互联网中的关键设备

路由器的主要任务是:

​ 转发分组

路由器的主要作用是:

​ 联通不同的网络(如不同VLAN,不同的IP子网,不同的局域网和广域网)

​ 选择信息传送的线路(即通过选路来转发分组)

​ 选择通畅快捷的近路,能大大提高通信速度,减轻网络系统负荷

6.4.2 结构

控制平面和数据平面

控制平面

​ 控制平面是数据网络中做出转发决定的元素,比如路由协议,选路策略和网络设备上运行这些协议的软硬件资源等

​ 控制平面做出的决定包括:该把数据包发往哪条路径转发、是否要用多条路径转发同一个数据流

数据平面

​ 数据平面是执行控制平面决定的部分,包括数据封装协议,网络协议的高速转发芯片等

控制平面和数据平面分离

SDN采用控制平面和数据平面分离,实现灵活部署

典型路由器结构分为

路由选择部分

分组转发部分

交换结构

路由器关键部件,常用的交换方式

通过存储线,通过总线,通过纵横结构

7 IP多播

目的:更好支持一对多通信,可以大大节约网络资源

一对多通信:一个源点发送到许多个终点。例如,实时信息的交付(如新闻,股市行情等)

核心就是把多次的单播变成可复制的多播

IP多播可以分为两种

1 只在本局域网上进行硬件多播

2 在互联网的范围进行多播

前一种硬件多播,比较简单但也比较重要,先讲这个

7.1 硬件多播

在48位的多播地址中,前25位都固定不变,后23位可以用作多播

7.2 IP多播需要三种协议

7.2.1 IGMP协议

使得路由器知道多播组成员信息

IGPM是本地使用的一个范围

IGMP使用IP数据报传输报文

主要两个功能

​ 让主机加入多播组

​ IGMP 报告和查询 维护 多播组转发表

IGMP工作可以分为两个阶段

第一:当某个主机加入新的多播组时,该主机应向多播组的多播地址发送IGMP报文,申明自己是该组的成员

本地的多播路由器收到IGMP报文后,将组员关系转发给因特网上的其他多播路由器

第二:因为组员关系是动态的,因此本地多播路由器要周期性探寻本地局域网上的主机,以便知道这些主机继续是组的成员

只知道 有哪些多播组成员还是不够的

还要知道怎么到达对应的成员,这就涉及到多播路由选择协议

7.2.2 多播路由选择协议

转发多播数据报使用的方法

1 洪泛与剪除

​ 这种方法适用于较小的多播组,直接广播(洪泛)

​ 如果发现某个路由器的下游树枝没有该多播组成员,那么则直接剪除

2 隧道技术

​ 这种方法适合于多播组在地理上很分散的情况

3 基于核心的发现技术

​ 这种方法的多播组使用范围比较广

​ 对每一个多播组指定一个核心路由器,给出它的单播地址

8 虚拟专用网络VPN

有些时候内部网络的某些主机并不需要连到互联网中,只需要和内部网络的其他网络通信即可,这时候便没必要再给他们全球独一无二的地址了

那么网络设计者们便在IP地址中划分了一部分作为本地地址(不和全球地址产生冲突)

本地地址或者叫专用地址

最经典的是192.168打头的

还有一种类型的VPN,就是远程接入VPN,核心是建立VPN隧道

8.1 网络地址转换方法NAT

如果某些分配了本地IP地址的计算机忽然想连上互联网

一个可行分办法就是用网络地址转换NAT方式

至少有一个有效的外部全球IP地址

NAT的工作原理:

NAT的基本原理是将内部设备的私有IP地址和端口号映射到单个或多个公共IP地址的一组唯一端口上。这样,当内部设备发送请求时,路由器会将请求从内部IP地址和端口号转换为公共IP地址和不同的端口号,以确保响应的数据包能够正确返回到请求的设备。

NAT有几种不同的方式来实现这种映射:

  1. 静态NAT:在静态NAT中,管理员手动配置内部IP地址和端口号与外部IP地址的映射。这些映射是固定的,通常用于服务器或特定应用程序的端口转发。
  2. 动态NAT:在动态NAT中,NAT路由器动态地将内部设备的私有IP地址映射到可用的公共IP地址,通常从一个IP地址池中选择。这种方式允许多个设备共享几个公共IP地址。
  3. PAT(端口地址转换):PAT是一种特殊的NAT形式,它使用单个公共IP地址,但使用不同的端口号来区分内部设备。这是最常见的NAT形式,通常用于家庭网络和小型企业。

NAT的优点

  • 安全性提高:NAT可以隐藏内部网络结构,因为外部网络只能看到NAT设备的公共IP地址。这增加了网络的安全性,因为攻击者难以确定内部设备的真实IP地址。
  • IPv4地址节省:由于IPv4地址短缺,NAT允许多个设备使用同一个公共IP地址,从而节省了IPv4地址资源。
  • 简化管理:NAT允许多个设备通过一个公共IP地址访问互联网,简化了网络管理。

9 MPLS多协议标签交换

为了增加IP数据报的转发速度,引入了MPLS

MPLS并没有取代IP

多协议标签交换(Multiprotocol Label Switching,MPLS)是一种在计算机网络中用于数据传输的高效且灵活的技术。MPLS通过在数据包头部添加标签(Label)来对数据进行标记和转发,从而改善了数据包的路由、流量工程和服务质量。以下是MPLS的主要特点和工作原理的介绍:

主要特点:

  1. 标签交换:MPLS通过在数据包头部添加一个短的标签来标识数据包,而不是基于传统的IP路由表来进行转发。这个标签可以在网络中的路由器之间快速交换,从而提高了数据包的转发速度。
  2. 流量工程:MPLS允许网络管理员根据网络流量的需求来管理路由和优化网络性能。管理员可以为不同的流量流分配不同的标签,以实现更好的流量控制和负载均衡。
  3. 服务质量(QoS)支持:MPLS可以根据标签来实现不同类别的服务质量(如低延迟、高带宽等),这对于应对多种网络应用的需求非常重要,如实时音视频通信。
  4. 简化路由表:MPLS可以减小路由器的路由表,因为它只需要考虑标签而不是完整的IP地址。这有助于减小路由器的存储和处理负担,提高了网络的扩展性。
  5. 隧道和虚拟专用网络(VPN)支持:MPLS可以用于创建虚拟专用网络,使不同的企业或组织可以在共享的基础设施上构建私有网络,同时保持数据的隔离性和安全性。

工作原理:

MPLS的工作原理包括以下步骤:

  1. 标签分配:在MPLS网络中,每个路由器都分配一个唯一的标签给数据包。这个标签通常是20位长,包含了一些信息,如数据包的下一个路由器(下一跳)。
  2. 标签交换:当数据包到达一个MPLS路由器时,该路由器会查看数据包的标签,然后根据标签表将数据包转发到下一个路由器。标签表包含了标签与出口接口的映射关系。
  3. 标签压栈和弹栈:在数据包通过MPLS网络的过程中,标签可以被压栈(添加新的标签)或弹栈(移除标签)。这允许数据包在网络中多次标记和转发。
  4. 最终目的地:当数据包到达目的地时,最后一个MPLS路由器会弹出标签并将数据包交付给上层协议(通常是IP),然后根据目的IP地址将数据包传送到目标设备。

MPLS技术的灵活性和效率使其成为了广泛应用于企业网络、服务提供商网络和数据中心网络的一种重要技术。它有助于改进网络性能、提高服务质量,并简化了网络管理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/258033.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

0062-Java运算符

文章目录 1.运算符介绍2.算术运算符2.1 介绍2.2 细节说明 3.关系运算符(比较运算符)3.1 介绍3.2 细节说明 4.逻辑运算符4.1 介绍4.2 逻辑运算规则4.3 && 和 & 基本规则4.4 && 和 & 使用区别4.5 || 和 | 基本规则4.6 || 和 | 使用区别 5. ! 取反 基本规…

Logback简介与配置详解

在开发和维护Spring Boot应用程序时,一个强大而灵活的日志框架是至关重要的。Spring Boot默认集成了Logback,一个高性能的Java日志框架。本文将介绍如何配置Logback以满足你的日志记录需求。 Logback简介 官方网址:https://logback.qos.ch/ …

Kafka核心参数(带完善)

客户端 api Kafka提供了以下两套客户端API HighLevel(重点)LowLevel HighLevel API封装了kafka的运行细节,使用起来比较简单,是企业开发过程中最常用的客户端API。 而LowLevel API则需要客户端自己管理Kafka的运行细节,Partition&#x…

RocketMQ系统性学习-SpringCloud Alibaba集成RocketMQ以及消费收发实战

文章目录 Spring Cloud Alibaba 集成 RocketMQ 最佳实践集成依赖DashBoard消息收发实战 Spring Cloud Alibaba 集成 RocketMQ 最佳实践 SpringBoot 相对于 SSM 来说已经很大程度上简化了开发,但是使用 SpringBoot 集成一些第三方的框架,还是需要花费一些…

Node.js 工作线程与子进程:应该使用哪一个

Node.js 工作线程与子进程:应该使用哪一个 并行处理在计算密集型应用程序中起着至关重要的作用。例如,考虑一个确定给定数字是否为素数的应用程序。如果我们熟悉素数,我们就会知道必须从 1 遍历到该数的平方根才能确定它是否是素数&#xff…

搭建知识付费平台?明理信息科技为你提供全程解决方案

明理信息科技saas知识付费平台 在当今数字化时代,知识付费已经成为一种趋势,越来越多的人愿意为有价值的知识付费。然而,公共知识付费平台虽然内容丰富,但难以满足个人或企业个性化的需求和品牌打造。同时,开发和维护…

Python Pandas Excel/csv文件的保存与读取(第14讲)

Python Pandas Excel/csv文件的读取于保存(第14讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔…

在 Kubernetes 上部署 Python 3.7、Chrome 和 Chromedriver(版本 114.0.5735.90)的完整指南

一、构建基础镜像 docker build -f /u01/isi/DockerFile . -t thinking_code.com/xhh/crawler_base_image:v1.0.2docker push thinking_code.com/xhh/crawler_base_image:v1.0.2 二、K8s运行Pod 三、DockerFile文件 # 基于镜像基础 FROM python:3.7# 设置代码文件夹工作目录…

【论文解读】Comparing VVC, HEVC and AV1 using Objective and Subjective Assessments

时间:2020 级别:IEEE 机构: IEEE 组织 摘要: 对3种最新的视频编码标准HEVC (High Efficiency video Coding)测试模型HM (High Efficiency video Coding)、amedia video 1 (AV1)和Versatile video Coding测试模型 (VTM)进行了客观和…

关于“Python”的核心知识点整理大全25

目录 10.3.4 else 代码块、 10.3.5 处理 FileNotFoundError 异常 alice.py 在这个示例中,try代码块引发FileNotFoundError异常,因此Python找出与该错误匹配的 except代码块,并运行其中的代码。最终的结果是显示一条友好的错误消息&#x…

抖音直播间websocket礼物和弹幕消息推送可能出现重复的情况,解决办法

在抖音直播间里,通过websocket收到的礼物消息数据格式如下: {common: {method: WebcastGiftMessage,msgId: 7283420150152942632,roomId: 7283413007005207308,createTime: 1695803662805,isShowMsg: True,describe: 莎***:送给主播 1个入团卡,priority…

速学数据结构 | 二叉树堆的实现详解篇

🎬 鸽芷咕:个人主页 🔥 个人专栏:《速学数据结构》 《C语言进阶篇》 ⛺️生活的理想,就是为了理想的生活! 📋 前言 🌈hello! 各位宝子们大家好啊,二叉树的概念大家都了解了那么我们…

自动驾驶学习笔记(十九)——Planning模块

#Apollo开发者# 学习课程的传送门如下,当您也准备学习自动驾驶时,可以和我一同前往: 《自动驾驶新人之旅》免费课程—> 传送门 《Apollo 社区开发者圆桌会》免费报名—>传送门 文章目录 前言 Planning作用 Planning内容 Plannin…

uni-app ucharts中饼图与圆环图区别

项目情况: uni-app的用于移动端H5项目,包使用uni_modules目录存放。 图表引用ucharts中的echarts配置的组件方式 区别1 饼图与圆环图在echarts使用的配置都是pie类型。但是配置raduis使用: radius: [40%, 70%] 区别2 组件type指明&#xf…

保护您的Android应用程序:Android应用程序安全一览

保护您的Android应用程序:Android应用程序安全一览 我们都知道Android是为所有人设计的——开放、面向开发者、面向用户,这种开放性为今天和明天的移动技术提供了很多便利。然而,开放性也带来了需要妥善处理的安全风险。 安全是我们所有人都…

广州华锐互动VRAR:利用VR开展新能源汽车触电安全演练,降低培训成本和风险

随着新能源汽车行业的快速发展,相关的安全培训也变得越来越重要。其中,触电急救培训对于保障驾驶员和乘客的安全具有重要意义。传统培训方式存在一些不足,而利用VR技术进行培训则具有很多优势。 利用VR技术开展新能源汽车触电安全演练可以在模…

ansible模块 (7-13)

模块 7、hostname模块: 远程主机名管理模块 ansible 192.168.10.202 -m hostname -a nameliu 8、copy模块: 用于复制指定的主机文件到远程主机的模块 常用参数: dest: 指出要复制的文件在哪,必须使用绝对路径。如果源目标是…

fastjson1.2.24 反序列化漏洞(CVE-2017-18349)分析

FastJson在< 1.2.24 版本中存在反序列化漏洞&#xff0c;主要原因FastJson支持的两个特性&#xff1a; fastjson反序列化时&#xff0c;JSON字符串中的type字段&#xff0c;用来表明指定反序列化的目标恶意对象类。fastjson反序列化时&#xff0c;字符串时会自动调用恶意对…

运维知识点-Kubernetes_K8s

Kubernetes RBAC配置不当攻击场景攻击过程 RBAC配置不当 Service Account本质是服务账号&#xff0c;是Pod连接K8s集群的凭证。 在默认情况下&#xff0c;系统会为创建的Pod提供一个默认的Service Account&#xff0c; 用户也可以自定义Service Account&#xff0c;与Service…

【软件安全实验】使用Find Security Bugs工具静态分析WebGoat

文章目录 实验要求实验步骤一、在IntelliJ上安装插件配置规则库二、下载WebGoat源代码三、Find Security Bugs工具静态分析WebGoat 实验要求 用Find Security Bugs(http://find-sec-bugs.github.io)工具静态分析WebGoat。WebGoat是OWASP组织研制出的用于进行Web漏洞实验的应用…