IPv6(计算机网络-网络层)

news2024/11/20 8:41:43

目录

IPv6 的特点

IPv6 数据报的格式

IPv6 分组的格式

IPv6 的扩展首部


从计算机本身发展以及从互联网规模和网络传输速率来看,现在 IPv4已很不适用。

要解决 IP 地址耗尽的问题的措施:
采用无类别编址 CIDR,使 IP 地址的分配更加合理。
采用网络地址转换 NAT 方法以节省全球 IP 地址。
采用具有更大地址空间的新版本的 IP 协议 IPv6。 

IPv6 的特点


IPv6 仍提供无连接的服务,主要特点包括:

        巨大的地址空间 :IPv6将地址从IPv4的32位增大到了128位,使地址空间增大了2^ 96 倍。这样大的地址空间在可预见的将来是不会用完的。

        高效的分级寻址和路由结构 :IPv6由于地址空间很大,因此可以划分为更多的层次,可以更
好地反映互联网的拓扑结构,使得对寻址和路由层次的设计更加高效和更具灵活性。

        灵活的首部格式 :IPv6定义了许多可选的扩展首部,不仅可提供比IPv4更多的功能,而且还
可提高路由器的处理效率。

        支持即插即用(即自动配置):IPv6支持主机自动配置IP地址、路由器地址及其他网络配置
参数。

        更好地支持QoS: IPv6在协议首部中提供了流量类型和流标签字段,使得路由器可以对属于
一个流的分组进行识别和进行特殊处理,为实时音视频等要求保证一定的带宽和时延的应用
提供更好的服务质量保证。


        内置的安全性支持: IPv6通过扩展首部支持IPsec,为网络安全提供了一种基于标准的解决
方案,并且提高了不同IPv6实现方案之间的互操作性。


        具有可扩展性 :通过定义新的扩展首部可以很方便地实现IPv6功能的扩展。IPv6的扩展首部
比IPv4的选项字段更加灵活高效并具有更强的可扩展性。

IPv6 数据报的格式


IPv6 将协议数据单元 PDU 称为分组,而不是 IPv4 的数据报


 IPv6 将首部长度变为固定的 40 字节,称为基本首部(base header)


 在基本首部的后面允许有零个或多个扩展首部


 所有的扩展首部和数据合起来叫做IPv6分组的有效载荷(payload)或净负荷

 

IPv6 分组的格式


版本(version)—— 4 位  它指明了协议的版本,对 IPv6 该字段总是 6

流量类型(traffic class)—— 8 位  这是为了区分不同的 IPv6 分组的类别或优先级

流标号(flow label)—— 20 位   “流”是指从特定源点到终点的一系列分组,“流”经过路径上的路由器都会保证对该流指明的服务质量。所有属于同一个流的数据报都具有同样的流标号

有效载荷长度(payload length)—— 16 位  它指明 IPv6 数据报除基本首部以外的字节数(所有扩展首部都算在有效载荷之内),其最大值是 64 KB

下一个首部(next header)—— 8 位  指明其有效载荷中下一个首部的类型。当IPv6分组没有扩展首部时,作用相当于IPv4的协议字段。有扩展首部时,就标识后面第一个扩展首部的类型

跳数限制(hop limit)—— 8 位  作用与IPv4的TTL字段相同。源站在分组发出时
即设定跳数限制。路由器在转发分组时将跳数限制字段中的值减1。当跳数限制
的值为零时,就要将此分组丢弃


源地址—— 128 位。是分组的发送结点的 IP 地址。
目的地址—— 128 位。是分组的接收结点的 IP 地址。

IPv6 的扩展首部


        当IPv4分组使用选项字段时,转发分组的路由器都必须对这些选项进行一一检查,降低了路由器处理分组的速度

        IPv6把原来IPv4首部中选项的功能都放在扩展首部中,并留给路径两端的源结点和目的结点来处理,而分组途中经过的路由器都无需处理这些扩展首部(只有一个首部例外,即逐跳选项扩展首部),这样就大大提高了路由器的处理效率

 在RFC 8200中定义六种类型的扩展首部:

①逐跳选项;②路由选择;③分片;④鉴别;⑤封装安全有效载荷;⑥目的结点选项


每一个扩展首部都由若干个字段组成,它们的长度也各不同。但所有扩展首部的第一个
字段都是8位的“下一个首部”字段。此字段的值指出了在该扩展首部后面的字段是什么


当使用多个扩展首部时,逐跳选项首部总是放在最前面,高层首部总是放在最后面

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL 锁机制

文章目录MySQL 锁机制表锁读锁场景一场景二场景三总结写锁场景一场景二场景三总结行锁场景一场景二总结间隙锁缺点如何锁定一行MySQL 锁机制 表锁 读锁 查看哪些表被加锁了 语法:show open tables 添加读锁 read 读锁关键字 | write 写锁关键字 语法:l…

qt下采用libcurl实现ftp与tftp功能,提供源代码程序

一、FTP简介 FTP(文件传输协议),工作在应用层,是用于在网络上进行文件传输的一套标准协议。它使用 TCP 传输,客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的&…

基于xml的自动装配之byName

基于xml的自动装配之byName 自动装配方式:byName byName:将自动装配的属性的属性名,作为bean的id在IOC容器中匹配相对应的bean进行赋值总结:当类型匹配的 bean 有多个时,此时可以使用 byName 实现自动装配 配置bean &…

02:损失函数总结

目录 nn.L1Loss: nn.NLLLoss: nn.MSELoss: nn.CrossEntropyLoss: 损失函数是用来估量模型的预测值与真实值的不一致程度,它是一个非负实值函数。我们训练模型的过程,就是通过不断的迭代计算,使用梯度下降的优化算法,使得损失函…

多叉树 [数据结构与算法][Java]

多叉树 在二叉树中每个结点只能有一个数据项, 并且最多有两个子节点, 如果允许每个结点可以有更多的数据项和更多的子节点, 那么就是多叉树 多叉树: multiway tree 那么我们为什么要提出多叉树? 因为二叉树有一定的问题: 即使二叉树的操作效率高, 但是也存在问题: 二叉树需…

django之前后端不分离的操作(增删改查)

背景: demo采用的是前后端不分离的操作,用Bootstrap作为前段页面框架使用 1.先说模板之间的继承(针对HTML来讲) 父模板中编写好公共代码块,例如一个网站的导航和footer部分 在内容部分注明 {%block content%} {%e…

53 记一次自定义 classloader 导致的 metadataspace OOM

前言 这是最近 flink 集群上面暴露出现的一个问题 具体的细节原因 就是 flink 上面提交任务的时候, 自定义的 classloader 加载 driver.jar 然后导致 metaspace OOM 由于这边的 TaskManager metadataspace 配置相对较小(MaxMetaspaceSize配置为96M), 然后导致 出现了 metada…

BUUCTF Misc [SUCTF2018]single dog 我吃三明治 sqltest [SWPU2019]你有没有好好看网课?

[SUCTF2018]single dog 下载文件 使用kali的binwalk工具分析 进行文件分离 解压其中的压缩包,得到1.txt 看内容应该是js加密后的结果,复制到AAEncode在线解密网站 得到flag flag{happy double eleven} 我吃三明治 下载文件 使用010 eito…

AICodeHelper - AI编程助手

AICodeHelper是一款AI编程助手,旨在帮助程序员提高他们的编码技能。 简单的像尝试的代码直接问就行,但是一些复杂的,就得需要写技巧; 下面是几个使用的小技巧:链接是:AICodeHelper 1.可以使用中文提问&a…

深度学习Faster-RCNN网络

目录1 网络工作流程1.1 数据加载1.2 模型加载1.3 模型预测过程1.3.1 RPN获取候选区域1.3.2 FastRCNN进行目标检测2 模型结构详解2.1 backbone2.2 RPN网络2.2.1 anchors2.2.2 RPN分类2.2.3 RPN回归2.2.4 Proposal层2.4 ROIPooling2.5 目标分类与回归3 FasterRCNN的训练3.1 RPN网…

Yolov5移植树莓派实现目标检测

Hallo,大家好啊!之前写了几篇Yolov5相关项目的博客,然后学习了树莓派之后,更新了几篇树莓派的博客,我的最终目的是将Yolov5移植到树莓派,通过树莓派上面的摄像头实现目标检测。你想啊,在工厂里面…

【word文档使用方法记录】论文格式修改

word文档使用方法记录**去掉文档都以也封面的页眉:****WPS公式居中,公式号右对齐**为论文每个章节设置不同的页眉去掉文档都以也封面的页眉: 将光标定位在第一页页尾,进入“页面布局”选项卡,点击“分隔符”&#xff…

【MySQL数据库入门】:数据库基础和基本操作

文章目录1. 数据库基础1.1 什么是数据库1.2 主流数据库1.3 如何配置环境1.4 链接数据库1.5服务器,数据库,表关系2.基本的数据库操作3.MySQL架构4.SQL分类5.存储引擎5.1查看存储引擎5.2 存储引擎对比6.总结1. 数据库基础 1.1 什么是数据库 存储数据用文…

安装包UI美化之路-在线安装包

在一些安装场景中,由于完整的安装包很大,下载时间长,且下载后需要人工干预来进行安装,这样会一定程度的降低用户使用体验;nsNiuniuSkin安装包制作解决方案提供了一种在线版本的安装包,支持将实际要安装的内…

C++中delete 和 delete []的真正区别

1.我们通常从教科书上看到这样的说明: delete 释放new分配的单个对象指针指向的内存 delete[] 释放new分配的对象数组指针指向的内存 那么,按照教科书的理解,我们看下下面的代码: int *a new int[10]; delete a; //方…

Java | 详解 Java连接MySQL、编写JdbcUtils工具类、使用数据库连接池、使用JavaTemplate

一、连接mysql数据库 步骤: 1、启动 MySQL :以管理员身份打开 cmd 命令行,输入 net start mysql 2、在 MySQL 创建一张表,用于后面的操作。我这里创建了一张 user 表,有id、name、password三个字段。 3、导入jar包 (1)…

【总结】最系统化的CV内容,有三AI所有免费与付费的计算机视觉课程汇总(2022年12月)...

欢迎大家关注有三AI的计算机视觉课程系列,我们的课程系列共分为5层境界,内容和学习路线图如下:第1层:掌握学习算法必要的预备知识,包括Python编程,深度学习基础,数据使用,框架使用等…

基于xml的自动装配之byType

基于xml的自动装配之byType 使用bean标签的autowire属性设置自动装配效果 自动装配方式:byType byType:根据要赋值的属性的类型,在IOC容器中匹配某个兼容类型的bean,为属性自动赋值 若在IOC中,没有任何一个兼容类型的b…

net/http 库的客户端实现(下)

前言 上一篇文章我们讲了 net/http 库客户端 request 的构建,接下来继续讲构建HTTP请求之后的处理操作 net/http 库的客户端实现(上) 启动事务 构建 HTTP 请求后,接着需要开启HTTP事务进行请求并且等待远程响应,以net/http.Client.Do()方法…

stm32f407VET6 系统学习 day01 GPIO 配置

1. GPIO 的5个配置 GPIO,即通用I/O(输入/输出)端口,是STM32可控制的引脚。STM32芯片的GPIO引脚与外部设备连接起来,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。 STM32F407有7组IO。分别为GPIOA~GPIOG,每组IO有16个IO口&…