computer-network-note-7

computer-network-note-7

Charles Lv7

IPv6协议

概 述

  • 随着Internet的快速发展,现在IPv4已很不适用
    • IP地址空间耗尽问题
    • 安全性问题
    • 服务质量问题
  • 解决IP地址耗尽问题的措施:
    • 采用无类别编址CIDR,使IP地址的分配更加合理
    • 采用网络地址转换NAT方法以节省全球 IP地址
    • 采用具有更大地址空间的新版本的IP协议 IPv6
  • IETF于1992年提出推出下一代IP,即IPng(IP Next Generation)
  • IPv6于1998年成为标准草案
    • RFC 2460—2463
  • IPv6引入的主要变化:
    • 更大的地址空间
      • IPv6将地址从IPv4的32位增大到了128位
    • 扩展的地址层次结构
    • 灵活的首部格式
    • 改进的选项
    • 允许协议继续扩充
    • 支持即插即用(即自动配置)
    • 支持资源的预分配

IPv6地址

  • IPv6数据报的目的地址可以是三种基本类型地址之一

    • 单播(unicast):传统的点对点通信
    • 组播/多播(multicast):一点对多点的通信
    • 任意播(anycast):IPv6增加的类型,任意播的目的站是一组计算机,但数据报在交付时只交付其中的一个,通常是距离最近的一个
  • IPv6地址为128位

  • IPv6地址采用冒号十六进制记法(colon hexadecimal notation)

    • 每个 16 位的值用十六进制值表示,各值之间用冒号分隔
  • 冒号十六进制记法

    • 零压缩(zero compression),即一连串连续的零可以为一对冒号所取代(一个地址只能用一次)
    • 冒号十六进制记法可结合点分十进制的后缀
  • CIDR的斜线表示法仍然可用

IPv6首部

IPv6数据报结构

  • 首部长度固定40字节,称为基本首部(base header)
  • 取消了不必要的功能,首部字段数减少到 8 个
  • 取消了首部的校验和字段,加快了路由器处理数据报的速度
  • 在基本首部的后面允许有零个或多个扩展首部
  • 所有的扩展首部和数据合起来叫做数据报的有效载荷(payload)

基本首部

image-20240221174318912

  • 版本(version):4 位,协议版本,对IPv6该字段为6

  • 流量类别(traffic class):8位,用于区分IPv6数据报的类别或优先级

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

  • 有效载荷长度(payload length):16 位,表示数据报除基本首部以外的长度(字节数),最大值为64KB

  • 下一个首部(next header):8位,相当于IPv4的协议字段或可选字段

  • 跳数限制(hop limit):8 位,数据报发出时设定跳数限制,路由器在转发数据报时将该字段值减1,当其为零时,将此数据报丢弃

  • 源地址:128位,数据报的发送方的IP地址

  • 目的地址:128位,数据报的接收方的IP地址

扩展首部

  • 简介
    • 原IPv4首部中的选项功能都放在IPv6扩展首部中
    • 数据报途中经过的路由器不处理扩展首部(除逐跳选项扩展首部以外),扩展首部由源和目的站的主机处理,路由器的处理 效率大大提高

IPv4向IPv6过渡

简介

  • 向IPv6过渡只能采用逐步演进的办法,还必须使新安装的IPv6系统能够向后兼容
  • IPv6系统必须能够接收和转发IPv4分组,并且能够为IPv4分组选择路由
  • 目前实现IPv4/IPv6互操作的技术主要有两种:
    • 双协议栈(dual stack):主机(或路由器)装有两个协议栈,一个IPv4和一个IPv6,根据需要使用不同的协议栈进行通信
    • 隧道技术(tunneling):将IPv6数据报重新封装后通过IPv4网络传输,即IPv6数据报作为IPv4数据报的数据部分(重新封装为IPv4数据报后,IPv4包头中协议类型字段为41)

image-20240221174834513

  • Title: computer-network-note-7
  • Author: Charles
  • Created at : 2024-02-21 17:36:07
  • Updated at : 2024-02-21 17:49:08
  • Link: https://charles2530.github.io/2024/02/21/computer-network-note-7/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments