一、网络层提供的两种服务
1、网络层的任务
以分组为单位将数据信息从源点传输到目的点。通过路由选择算法,为分组选择合适的路径。
2、问题提出:网络层应向传输层提供怎样的服务?面向连接还是无连接?
虚电路交换:建立连接、通信、拆除连接;虚电路仅仅表示一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送。
互联网实际的设计思路【数据报服务】:网络层向上层只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。网络层不提供服务质量的承诺。图示如下:
表4-1:虚电路服务和数据报服务的对比
二、网际协议IP
1、虚拟互联网络
指逻辑互联网络,使结构、性能各异的网络在网络层看起来是一个统一的网络。
1、没有一种单一的网络能够适应所有用户需求,各网络之间互相通信需要解决许多问题,比如:
- 不同的寻址方案;
- 不同的网络接入机制;
- 不同的路由选择技术;
2、网络互连使用的中间设备(又称为中间系统或中继系统)主要有:
- ⑴、物理层中继系统:转发器
- ⑵、数据链路层中继系统:网桥、二层交换机
- ⑶、网络层中继系统:路由器
- ⑷、网桥和路由器的混合物:桥路器
- ⑸、网络层以上的中继系统:网关(gateway连接两个不兼容的系统)【很少使用】
注意:
-
中间设备是转发器或网桥时,仅把网络扩大,但我们仍视之为一个网络,并不称为网络互连。只有经路由器互联,才称作网络互连。
-
直接交付:指原站或路由器将IP数据报直接交给目的站,否则称间接交付。
2、分类的IP地址【4字节】
组成:两个固定长度字段组成:网络号+主机号。
1、IP地址的分类
这里讲的全部都是ipv4格式(4字节)。还有一种ipv6格式(16字节)后面章节会讲到。
- 主机号全0的ip地址表示本网络地址,主机号全1的ip地址表示本网络的广播地址,这两个ip地址都不分配给任何主机或路由器接口。
- A类地址:第一位必须是0,前8位是网络号,后24位是主机号。
网络号是从1~126,可指派126个网络,因为0.0.0.0和127.0.0.0不指派,每个网络上最大主机数为2^24 -2,占整个地址空间的50%,共2^31个。 - B类地址:前二位必须是10,前16位是网络号,后16位是主机号。
网络号是从129~191,可指派2^14 -1个网络,因为128.0.0.0不指派。每个网络上最大主机数为 2^16 -2,占整个地址空间的25%,共230个。 - C类地址:前三位必须是110,前24位是网络号,后8位是主机号。
网络号是从192~223,可指派2^21-1个网络,因为192.0.0.0不指派。每个网络上最大主机数为 2^8 -2占整个地址空间的12.5%,共229个。 - D类地址:前四位是1110开头,用于多播。
- E类地址:前4位是1111开头,保留地址。
2、三类专用IP地址:只用于机构内部通信,又称“本地地址”;不能作“全球地址”,目的地址为专用地址的数据报路由器一律不转发。
- 1.10.0.0.0~10.255.255.255: 1段连续的A类地址(共256256256个)
- 2.172.16.0.0~172.31.255.255:16段连续的B类网络地址(共16256256个)
- 3.192.168.0.0~192.168.255.255:256段连续的C类网络地址(共256*256个)
3、IP地址重要特点:
- 1、网络号由地址管理机构分配,主机号由单位自行分配。
- 2、具有不同网络号的局域网必须使用路由器相连。
- 3、当两个路由器直接相连时,互连接口可以分配IP地址,也可以不分配IP地址。
- 4、一根线相连的两个路由接口需要分配IP地址时,它们的网络号必须相同。
3、IP地址与硬件MAC地址
1、IP地址与MAC地址的区别:MAC地址是数据链路层和物理层使用的地址,是物理地址(硬件实现),而IP地址是网络层和以上各层使用的地址,是逻辑地址(软件实现)。
注意:MAC帧是在局域网中才会产生,将ip物理地址封装,而不使用网络层。
4、地址解析协议ARP和逆地址解析协议RARP
1、路由器如何知道在MAC帧中填入什么样的MAC地址
2、ARP的工作原理:即:主机如何知道IP地址和MAC地址对应关系呢?
ARP在主机ARP高速缓存中存放一个IP地址到硬件地址的映射表,有本局域网上各种主机和路由器的IP地址到硬件地址的MAC地址映射表,动态更新。
当主机A要向本局域网上的某个主机B发送IP数据报时,先查找自己的MAC地址映射表中是否有主机B对应表项。若有,查出相应的硬件地址,填入MAC帧,然后发送;若没有,A运行ARP协议找出B的MAC地址。
具体步骤如下:
- 1.A向本局域网广播一个ARP请求分组(广播帧)。注明A的IP地址和MAC地址,以及B的IP地址。
- 2.主机B及所有本局域网主机都收到该分组。
- 3.只有B向A发送ARP响应分组(单播帧),并注明自己的MAC地址,同时B将A的一对地址记入ARP缓存的MAC地址映射表中。
- 4.A收到响应后在其MAC地址映射表中添加记录,并使用该地址。
3、归纳总结→使用ARP的四种情况:
5、IP数据报的格式
首部总长:20B~60B;其中:固定部分:长20B;可变部分:长0~40B;
-
1、版本:4b,标示IPv4或IPv6
-
2、首部长度:4b,最大长度15,以4字节为单位,故首部最长60B,若不使用任何选项,则首部长最小为20B。
-
3、区分服务:8b,实际上一直未被使用。
-
4、总长度:16b,以字节为单位,最大长度65535B,包括首部。
-
5、标识:16b,用来产生数据报标识,若数据报被分为若干片,每片的标识都一样。相同标识的分片将被重装成原来的数据报。
-
6、标志:3b,只有后2b有意义,最低位MF=1表示还有分片,若MF=0,表示本片是最后一片。
DF=0时才允许分片。 -
7、片位移:占13b,标示该片在原数据中相对位置,以8字节为片移单位。8*2^13 =2^15
-
8、生存时间:8位 表明数据在网络上的寿命,防止数据报在网络中丢兜圈子。以跳数为单位(最大值为255),而不是秒。指最多可经过多少个路由器,每经过一个路由器递减1。若数据报转发前TTL为0,则被丢弃。
-
9、协议:8b,指明上层协议,即指明携带的数据是使用何种协议。
-
10、首部检验和:16b,只检验数据报首部,不包括数据部分。发送方将IP首部划分为许多16位字序列,并把检验和字段置零,用反码算术运算把所有16位字相加后,将所得和的反码写入检验和字段,接收方用同样的方法计算,若结果为0,则认为正确,否则错误。
-
11、源地址:32b
-
12、目的地址:32b
-
13、首部的可变部分:即:可选字段及填充,可变部分若有则长度是4B的整数倍。
【例题4.1】一个数据报总长度为3820B,其数据部分为3800B,需要分成片长不超过1420B的数据报片,则如何分片?
解 ∵每个分片首部都要占20字节,故每片数据部分长度不超过1400B。于是,原始数据报被分成3片,数据部分长度分别为1400B、1400B、1000B。
原始数据报:总长度3820B,标识12345,MF=0 DF=0 片位移 0。
分片1:总长度1420B,标识12345,MF=1 DF=0 片位移 0。
分片2:总长度1420B,标识12345,MF=1 DF=0 片位移 175。
分片3:总长度1020B,标识12345,MF=0 DF=0 片位移 350。
若分片2又被分成两片,分别携带800B和600B,则这俩片的上述数据分别为:
820,12345,1,0,175; 620,12345,1,0,275
6、IP层转发分组的流程
1、路由表结构
路由器的路由表按网络地址来构造,每条路由最主要的是以下两个信息
- 若目的网络是路由器直接相连的网络,路由表的下一跳:直接交付,即把目的主机IP地址转换为目的MAC地址,把数据报封装为MAC帧后交付给目的主机。
2、分组转发算法:
- 1、从数据报首部提取目的主机IP地址D,得目的网络地址N;
- 2、若N就是与路由器直接相连的网络,则进行直接交付,否则间接交付执行⑶;
- 3、若路由表中有目的地址为D的特定主机路由,则把数据报传给路由表指定的下一条路由,否则若路由表中有到达网络N的路由,则把数据报传送给路由表中所指定的下一跳路由,否则若路由器中有一默认路由,则将其转发给默认路由器,否则报告转发分组出错。
三、划分子网和构成超网
1、划分子网
1、划分子网的思路:
- 1.划分子网是一个单位内部事情,对外仍表现为一个网络。
- 2.划分子网是从主机号中借用若干位作子网号。
- 3.外部网络发来的数据报根据网络号找到目的主机所在网络的路由器,目的主机所在网络的路由器根据目的网络号和子网号找到目的子网,把数据报交给目的主机。
2、子网掩码
源主机并不知目的网络是否划分了子网,目的网络的路由器如何把数据报转发到子网。
⑴、子网掩码的定义:
- 子网掩码中的1对应于IP地址中原来的网络号和子网号,0对应主机号;
网络地址 =(IP地址)AND (子网掩码)
【例题4.3】IP地址如下图所示,求子网地址?
⑵、子网掩码的特征
- 1.为了方便查找路由,即使网络没有划分子网,也要使用子网掩码。这时的子网掩码称为默认的子网掩码。1对应网络号,0对应主机号,无子网号对应。
A类的默认子网掩码:255.0.0.0
B类的默认子网掩码:255.255.0.0
C类的默认子网掩码:255.255.255.0 - 2.不论有没有划分子网,子网掩码与目的IP地址逐位相与得到网络地址。
- 3.相邻路由器交换路由信息时必须把自己所在的网络的子网掩码告诉相邻的路由器。
- 4.划分子网时可以采用固定长度表示子网号,此时所有子网的子网掩码相同。也可采用变长子网划分方法。
- 5.划分子网的方法增加了灵活性,但也减少了能够连接网络的主机总数。
- 6.主机号全0和全1分别表示本子网地址和广播地址,不分配给设备。
【例题4.4】已知IP地址141.14.72.24 子网掩码是255.255.192.0试求其网络地址,若子网掩码是255.255.224.0呢?
【例题4.5】某单位获得一C类地址192.168.12.0 现该单位的网络拓扑图如下所示,试为该单位划分子网。
解:第一步:确定子网数和子网主机数。
第二步:确定用多少位标识子网号、多少位标识主机号。
本例中有5个子网,至少需3位表示网络号,主机号5位,可表示每位子网中最多可接30台主机。
子网掩码位:255.255.255.224;可以如下分配网络号:
LAN1 192.168.12.32(00100000)LAN2 192.168.12.64(01000000)
LAN3 192.168.12.96LAN4 192.168.12.128
LAN5 192.168.12.160
可再建一个子网,共6个子网,每个子网可用地址数30个,损失地址数254-6*30=74个。
2、使用子网时分组的转发过程
划分子网后,路由表必须包含3项内容:目的网络、子网掩码和下一跳地址。
1、路由转发分组的算法:
- 1、从收到的数据报首部提取目的IP地址D;
- 2、先判断是否为直接交付。若是,则进行直接交付;
- 3、若路由表中有目的地址为D的特定主机路由,则按路由表中指明的下一跳路由作为转发对象;
- 4、对路由表中的每一行,用其中的子网掩码和D逐位相与,其结果为网络地址N,若N与该行目的网络地址匹配,则把数据报传送给该行指明的下一跳路由器,否则执行⑸;
- 5、若表中有一默认路由,则把数据报传送给路由表中所指明的默认路由器,否则执行⑹;
- 6、报告转发分组出错。
【例题4.6】已知互联网和路由器 R1 中的路由表。主机 H1 向 H2 发送分组。试讨论 R1 收到 H1向 H2 发送的分组后查找路由表的过程。
解:现讨论H1向H2发送分组的过程:
H1把本子网掩码与H2的IP 地址逐位相与得128.30.33.128 它不等于H1的网络地址,这说明H2与H1不在同一子网上,故H1把分组交给子网默认的路由器R1;
R1收到分组后,先找路由表第一行,取其目的网路地址和子网掩码相与后得到目的子网地址,看它是否和收到分组的子网地址匹配,若匹配则转发到下一跳接口,否则再找第二行,进行类似操作,最后R1把分组从接口1直接交付给主机H2。
3、无类别域间路由CIDR :构造超网
1、网路前缀:
⑴、互联网仍面临着三个必须尽早解决的问题
- ①.B类地址很快全部分配完毕;
- ②.主干网上路由表的表项急剧增大;
- ③.IPV4地址空间最终将消耗尽。
⑵、CIDR最主要的特点
- ①.CIDR消除了传统的A 类、B 类和C 类地址以及划分子网的概念,因而可以更加有效地分配IPv4 的地址空间。CIDR编址方法如下:
- ②.CIDR使用各种长度的“网络前缀”来代替分类地址中的网络号和子网号。使用“斜线记法”,即在IP地址后加上斜线“/”,然后写上网络前缀所占位数,故斜线表示法中,斜线后面的数字就是掩码中1 的个数:IP地址从三级编址(使用子网掩码)又回到了两级编址。
- ③.把网络前缀都相同的连续IP地址组成一个“CIDR地址块”。
⑶、CIDR地址块:已知CIDR地址块中任一地址,就可以知道这个地址块的起始地址、最大地址以及该地址块中地址总数。
【例题4.7】128.14.35.7/20
128.14.35.7=1000 0000 0000 1110 0010 0011 0000 0111
可知最小地址为128.14.32.0
最大地址为128.14.47.255
该地址块共有212个地址。
⑷、CIDR 记法的其他形式
- ①.10.0.0.0/10 可简写为 10/10,也就是把点分十进制中低位连续的0 省略。
- ②.IP地址为10.0.0.0/10,掩码为255.192.0.0
- ③.网络前缀的后面加一个星号 * 的表示方法
在星号之前是网络前缀,星号 表示IP 地址中的主机号,可以是任意值。如00001010 00* 。
⑸、路由聚合【构成超网】
- 1.一个CIDR地址块可以表示很多地址,这种地址的聚合常称为路由聚合,它使得路由表中的一个项目可以表示很多个原来传统分类地址的路由。
- 2.CIDR虽然不使用子网了,但仍然使用“掩码”这一名词(但不叫子网掩码)。
【例题4.9】如192.168.4.0/24、192.168.5.0/24、192.168.6.0/24,可聚合成一条路由192.168.4.0/22,当然前提是这三个网络在该路由器上的路由相同。
若有192.168.7.0/24与它们路由不同,则不能合并成192.168.4.0/22,而只能把192.168.4.0/24与192.168.5.0/24合并成192.168.4.0/23,而192.168.6.0/24与192.168.7.0/24各自为一个单独的表项。
⑹、CIDR地址块的子网划分
分配到CIDR地址块的组织,仍可以在本组织内根据需要划分子网。子网也只有网络前缀和主机号,只是子网前缀比整个组织网络前缀要长一些。
【例题4.10】已拥有地址块206.0.64.0/18,现某大学需要800个IP地址,可给该大学一个地址块206.0.68.0/22,含1024个IP 地址。这个大学可自由对本校的各系分配地址块,各系还可在划分本系的地址块。
2、最长前缀匹配(又称为最长匹配或最佳匹配)
- ⑴、使用CIDR时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成。在查找路由表时可能会得到不止一个匹配结果; 【目的地址&掩码=网络前缀】
- ⑵、应当从匹配结果中选择具有最长网络前缀的路由è最长前缀匹配;
- ⑶、网络前缀越长,其地址块就越小,因而路由就越具体。
3、使用二叉线索树查找路由表
- 1、IP 地址中从左到右的比特值决定了从根结点逐层向下层延伸的路径,而二叉线索中的各个路径就代表路由表中存放的各个地址。
- 2、唯一前缀即表中所有的IP地址中,该前缀是唯一的;利用唯一前缀构造二叉线索。
匹配时只需匹配唯一前缀(表中所有的IP地址中,该前缀是唯一的),而不必匹配全部32位。当网络唯一前缀匹配后,在进行一次32位的匹配,在每个叶结点中包含对应的网络前缀和子网掩码,搜索到叶结点后,将目的地址与子网掩码相与,再看与网络前缀是否匹配。
四、网际控制报文协议ICMP
1、ICMP简介
1、ICMP的作用
- ⑴、更有效地转发IP数据报;
- ⑵、提高成功交付的机会。
2、ICMP的特点
- ⑴、ICMP是网络层协议
- ⑵、ICMP差错报告采用“路由器—源主机”模式è即一旦路由器发现数据报传输错误,将通知源主机,通知报文独立选路。引入控制报文后,该模式被打破。
3、ICMP报文的格式
2、ICMP报文的种类
①.ICMP差错报告报文;
②.查询报文。
1、ICMP差错报告报文
⑴、ICMP的5种差错报告报文【都是给源主机发送】
- ①.终点不可达报文
- ②.源点抑制报文【阻塞】
- ③.超时报文【超时接收】
- ④.参数问题报文【数据报首部有错误】
- ⑤.改变路由(重定向)报文【重新发送给别的路由器】
⑵、ICMP差错报告报文的形成方法:所有ICMP首部包括类型、代码与检验和三部分共4个字节的信息字段。ICMP差错报文的数据字段格式相同,由收到的需要差错报告的数据报首部及其数据部分前8个字节组成。
⑶、不应发送ICMP差错报文的几种情况
- ①.对ICMP差错报告报文不再发送ICMP差错报告报文;
- ②.对第一分片以后的所有数据报分片不发送ICMP差错报告报文;
2、ICMP的2种查询报文
- ⑴、回送请求和回答报文è目的是测试目的站是否可达以及了解其有关状态。
- ⑵、时间戳请求与回答报文è目的是进行时钟同步和测量时间。
五、互联网的路由选择协议
1、路由选择协议的基本概念
路由选择的复杂性高是因为
- ①.它是使网络中的所有结点共同协调工作的结果。
- ②.路由选择的环境往往不断变化。
依据算法能否随网络的通信量和拓扑自适应调整变化划分:
- ①.静态路由:非自适应路由选择,简单,适合小型网络。
- ②.动态路由:自适应路由选择,复杂,开销大,适合大型网络。
2、分层次的路由选择协议
互联网主要采用动态的分布式路由选择协议,由于以下两个原因,互联网采用分层次的路由选择协议。
-
1.互联网规模太大
-
2.许多单位不愿意外界了解自己单位网路的布局细节,但同时希望连接Internet
为此,将整个互联网划分为许多小的自治系统,记为AS;AS是单一技术管理下的一组路由器,而这些路由器使用一种AS内部的路由选择协议和共同的度量,以确定分组在该AS内的路由,同时还使用一种AS之间的路由选择协议,用以确定分组在AS之间的路由;即:一个AS内部可使用多种路由协议和度量,但对其它AS表现出的是一个单一的和一致的路由选择策略。 -
内部网关协议IGP :一个AS内使用的路由选择协议
-
外部网关协议EGP :不同自治系统之间使用的路由选择协议
2、内部网关协议之一:路由信息协议(RIP)【适用于小型网络】
1、RIP的工作原理:
- ⑴、分布式路由选择协议:就是每一个路由器都要不断地和其它路由器交换信息,交换信息的三个要点:①.和哪些路由器交换信息;②.交换什么信息;③.什么时候交换信息。
- ⑵、RIP的距离概念 :从一个路由器到直连网络的距离定义为1,从路由器到非直连网络的距离定义为所经过的路由器数加1,从网络A经N个路由器到达网络B的距离为N+1。
RIP协议的距离也称为跳数,RIP允许一条路径最多只能包含15个路由器。 - ⑶、RIP的工作原理简述
RIP是一种分布式距离向量路由选择协议,RIP协议要求网络中每一个路由器都要维护从它自己到每一个目标网络的距离记录,形成距离向量,距离向量的集合称之为“路由表”(路由表的最主要信息:目的网络、最短距离、下一跳);
路由器开始工作时,只知道自己直连的网络距离。通过与相邻路由器的不断交换信息,最终都会知道到达本AS中任何一个网络的最短距离和下一跳路由器地址。
2、RIP协议的三个要点:
- ①.仅和相邻路由器交换信息;
- ②.交换的信息是当前路由器所知道的全部信息,即路由表;
- ③.按固定时间间隔交换信息,例如30秒一次。
3、距离向量算法:
对每一个相邻路由器发过来的RIP报文,进行以下步骤:
- ⑴、对地址X的相邻路由器发过来的RIP报文,先修改此报文中所有项目è把下一跳字段中地址都改为X,并把所有距离字段值加1;
- ⑵、针对修改后的RIP报文中每一表项进行以下操作
若:原来的路由表中没有目的网络N,则把该项目添加到路由表中;
否则:查看原表项的下一跳路由地址是否为X:
若:下一跳是X,则把收到的表项替换原表项(取用最新消息);
否则:比较距离大小:
若收到的表项距离小于原表项的距离,则更新,
否则什么也不做; - ⑶、若3分钟还没收到相邻路由器更新的路由表,则视该路由器不可达,把以此路由器为下一跳的表项距离置16;
- ⑷、返回。
【例题4.14】已知路由器R1,有表Ra所示的路由表。现收到相邻路由器R4发来的更新信息如表Rb所示,试写出R1更新后的路由表R1a.
4、RIP协议报文格式:
RIP2使用运输层的用户数据报UDP进行传送。
首部:命令字段【指出报文的意义】+【版本】+【必为0字段】 4字节
路由部分:路由表项(一条20B,最多25条)
RIP报文的最大长度=4+20*25=504B
3、内部网关协议之二:开放式最短路径优先(OSPF)【大型网络】
1、OSPF协议的特点:
OSPF最主要的特征就是使用分布式链路状态路由选择协议,其特点是:
- ①.使用洪泛法向本自治系统中的所有路由器发信息:即:每个路由器向所有相邻路由器发送信息,而每一个相邻路由器又将此信息发送给与他所有相邻路由器(除刚发来信息的路由器)。
- ②.发送的信息就是与该路由器相邻的所有路由器的链路状态。
链路状态è就是说明本路由器和哪些路由器相邻,以及该链路的“度量”(表示费用、距离、时延带宽等等)。 - ③.只有链路状态发生变化时,路由器才对外用洪泛法发送此信息。
2、OSPF协议的原理:
所有路由器通过洪泛法发送链路状态信息,最终都能建立一个链路状态数据库,每个路由器根据链路状态数据库中的数据,利用一定的算法构建到达每个网络的单源最短路径树,最后构造路由表。
说明:
- 1.使OSPF能适用于大规模网络,OSPF将一个AS划分成若干个更小范围,称作“域”。每一个域都有一个32位的区域标识符。一个区域不能太大,最好不超过200个路由器。
- 2.为使每一区域能与本AS内其他区域通信,OSPF使用层次结构的区域划分。上层区域叫主干区域,标识符是0.0.0.0,主干区域的作用是用来联通其它在下层的区域。每个区域至少有一个区域边界路由器。主干区域中的路由器叫主干路由器。主干路由器中还要有个路由器专门和其它AS交换路由信息,这样的路由器称作自治系统边界路由器。
3、OSPF的分组格式:
OSPF直接用IP数据报传送,不用UDP,OSPF数据报很短,可减少通信量,不必分片。
4、外部网关协议:BGP边界网关协议
1、BGP采用了路径向量路由选择协议:
配置BGP时,每一个AS的管理员要选择至少一个路由器作为该AS的“BGP发言人”。 - ①.BGP发言人要交换路由信息,要先建立TCP连接,然后在此连接上交换BGP会话。每一个BGP发言人除了必须运行BGP协议外,还必须运行其所在AS使用的内部网关协议。
- ②.BGP所交换的网络可达性信息就是要到达某个网络所要经过的一系列AS。各BGP发言人根据采用的策略从收到的路由信息中找出到达各AS的较好路由。
- ③.BGP路由表结构è(目的网络前缀、下一跳路由、到达该目的网络所经过的AS序列)。因为BGP发言人收到其他BGP发言人发来的路径通知,要检查自己是否在路径序列中,如果在则不采用这个路径序列,以避免兜圈子。
- ④.BGP邻站刚开始工作时交换整个BGP路由表,以后只需在发生变化时更新有变化的部分,以减少路由器处理开销及带宽。
5、路由器的构成
路由器结构可划分为两个部分:路由选择部分+分组转发部分
- ⑴、路由选择部分è控制部分,核心部件是路由选择处理机。是根据所选定的路由协议构造出路由表。
- ⑵、分组转发部分è由三个部分组成:交换结构、一组输入端口、一组输出端口。
交换结构根据转发表对分组进行处理。 - ⑶、转发表和路由表的区别è路由表根据网络拓扑计算,转发表则由路由表得到。转发表每行必须包括到目的网络的输出端口及某些MAC信息,以后不加区分。
六、IPv6
1、IPv6的基本首部
iPv6 所引进的主要变化如下:
- 更大的地址空间。IPv6 将地址从 IPv4 的 32 位 增大到了 128 位。
- 支持即插即用(即自动配置)。因此 IPv6 不需要使用 DHCP。
- IPv6 首部改为 8 字节对齐。首部长度必须是8 字节的整数倍。 IPv4 首部是 4 字节对齐。
- IPv6数据报由两大部分组成:
- 基本首部 IPv6 将首部长度变为固定的 40 字节,称为基本首部。(8个)
- 有效载荷 有效载荷允许有零个或多个扩展首部(extension header),再后面是数据部分。 【64B】
2、IPv6的地址
IPv6 数据报的目的地址可以是以下三种基本类型地址之一:
- (1) 单播 :传统的点对点通信。
- (2) 多播 :一点对多点的通信。
- (3) 任播 :这是 IPv6 增加的一种类型。任播的目的站是一组计算机,但数据报在交付时只交付其中的一个,通常是距离最近的一个。
为了使地址再稍简洁些,IPv6 使用冒号十六进制记法
- 每个16 位的值用十六进制值表示,各值之间用冒号分隔。例如:
68E6:8C64:FFFF:FFFF:0:1180:960A:FFFF - 在十六进制记法中,允许把数字前面的0省略。例如把0000中的前三个0省略,写成1个0。
- 冒号十六进制记法可以允许零压缩,即一连串连续的零可以为一对冒号所取代。
FF05:0:0:0:0:0:0:B3 可压缩为:FF05::B3 - 注意:在任一地址中只能使用一次零压缩。
- 冒号十六进制记法可结合使用点分十进制记法的后缀,这种结合在 IPv4 向 IPv6 的转换阶段特别有用。
例如:0:0:0:0:0:0:128.10.2.1再使用零压缩即可得出: ::128.10.2.1 - CIDR 的斜线表示法仍然可用。
例如:60 位的前缀 12AB00000000CD3 可记为:
12AB:0000:0000:CD30:0000:0000:0000:0000/60
或 12AB::CD30:0:0:0:0/60 (零压缩)或 12AB:0:0:CD30::/60 (零压缩)
3、从IPv4向IPv6 过渡
向IPv6 过渡只能采用逐步演进的办法,IPv6 系统必须能够接收和转发 IPv4 分组,并且能够为 IPv4 分组选择路由。
两种向 IPv6 过渡的策略:
- 1.使用双协议栈
- 2.使用隧道技术
双协议栈是指在完全过渡到IPv6 之前,使一部分主机(或路由器)装有两个协议栈,一个IPv4 和一个IPv6。 表明它同时具有两种IP 地址。
根据 DNS 返回的地址类型可以确定使用 IPv4 地址还是 IPv6 地址。
隧道技术在IPv6 数据报要进入IPv4网络时,把IPv6 数据报封装成为IPv4 数据报,整个的IPv6 数据报变成了IPv4 数据报的数据部分。
当IPv4 数据报离开 IPv4 网络时,再把数据部分(即原来的IPv6 数据报)交给主机IPv6 协议栈。
七、IP多播
1、IP多播的基本概念
与单播相比,多播可大大节约网络资源
互联网范围的多播要靠运行多播协议的多播路由器来实现。多播路由器当然也可以转发普通的IP数据报。在互联网上进行多播称“IP多播”。
说明:
- 1、多播数据报的目的地址不能写入某个主机的IP地址。IP多播需要使用多播IP地址,即目的地址应写入多播组的标识符,即IP地址中的D类地址。
- 2、IP多播分两种:①.一种只是在局域网上进行硬件多播;②.另一种则在互联网范围内进行多播。
2、在局域网上进行硬件多播
拥有的以太网地址块的高24位为 00–00–5E ,因此TCP/IP协议使用的以太网多播地址块的范围是00–00–5E-00-00-00到00-00-5E-FF-FF-FF 。
拥有的以太网多播地址范围从01-00-5E-00-00-00到01-00-5E-7F-FF-FF;每一个地址中,只有23位可用作多播地址。D类地址的低23位与其构成一一对应关系。故不同的IP多播地址,有可能对应的硬件多播地址相同。
收到多播数据报的主机,要在IP层利用软件进行过滤。
3、网际组管理协议IGMP和多播路由选择协议
1、IP多播需要的两种协议:IGMP协议 和多播路由选择协议
- ⑴、为了使路由器知道多播组成员的信息,这就需要利用网际组管理协议 IGMP
- ⑵、连接在局域网上的多播路由器还必须和互联网上的其他多播路由器协同工作,以便把多播数据报用最小代价传送给所有的组成员,这就需要使用多播路由选择协议。
2、网际组管理协议IGMP
IGMP不是一个单独的协议,而是整个IP一个组成部分。
⑴、IGMP工作分两个阶段
- ①.第一阶段:当某主机想加入一个新多播组时,该主机向多播组的多播地址发送一个IGMP报文,本地多播路由器收到该报文后,利用多播路由选择协议把这种组成员关系转发给其他多播路由器。
- ②.第二阶段:本地多播路由器要周期性地探寻本地局域网上的主机,以便知道这些主机是否还继续是组的成员。(>=1)
3、多播路由选择协议
- ⑴、多播路由选择è实际上就是要找出以源主机为根节点的多播转发树,该树上的叶子节点就是要收到多播数据报的主机。
- ⑵、多播路由选择协议在转发多播数据报时使用三种方法
①.洪泛与剪除(适合小多播组,且各成员所在的局域网相邻)
反向路径广播RPB策略è每个路由器在收到一个多播数据报时,先检查数据报是否从源点经最短路径传来的?若是,则向所有其它方向转发刚才收到的多播数据报(进入的方向除外),否则,丢弃该数据报。
②.隧道技术(适合地理位置分散的多播组)
若R1和R2中间的网络不支持多播,可使用隧道技术,转成单播数据报,从R1发送到R2 。
③.基于核心的发现技术(大小范围都适合)
对于每个多播组G,指定一个核心路由器,给出它的IP单播地址。核心路由器创建出对应于多播组G的转发树。如果有R1向核心路由器发送数据报,途中每个路由器都要检查其内容。当数据报到达该组中路由器R2时,R2处理该数据报。若该数据报是多播数据报,则R2向G中成员转发该数据报,若是请求加入G的数据报,则R2将该信息加入路由中,并用隧道技术向R1发送每个数据报副本。
八、虚拟专网VPN和网络地址转换NAT
1、虚拟专网VPN
1、基本概念:
- ①.本地地址:仅在机构内部使用的IP地址,可以由本机构自行分配,不需要向互联网的管理机构申请。
- ②.全球地址:全球唯一的IP地址,必须向互联网的管理机构申请。
- ③.专用地址:只能用于某个机构内部通讯,而不能用于英特网通讯的地址
2、用隧道技术实现虚拟专用网VPN
3、基于TCP/IP 协议的内联网intranet 和外联网extranet
由部门A和B的内部网络所构成的虚拟专用网 VPN 又称为内联网,表示部门A和B都是在同一个机构的内部。一个机构和某些外部机构共同建立的虚拟专用网 VPN 又称为外联网(。
4、远程接入VPN
有的公司可能没有分布在不同场所的部门,但有很多流动员工在外地工作。公司需要和他们保持联系,远程接入VPN可满足这种需求。
在外地工作的员工拨号接入互联网,而驻留在员工PC机中的VPN 软件可在员工的PC机和公司的主机之间建立VPN 隧道,因而外地员工与公司通信的内容是保密的,员工们感到好像就是使用公司内部的本地网络。
2、网络地址转换NAT
网络地址转换NAT简介:
-
需要在专用网连接到互联网的路由器上安装 NAT 软件。装有NAT 软件的路由器叫做NAT路由器,它至少有一个有效的外部全球地址 IPG。
-
所有使用本地地址的主机在和外界通信时都要在 NAT 路由器上将其本地地址转换成IPG才能和互联网连接。