4、1.网络层提供的两种服务
1、*网络层提供服务的特点:网络层向上只提供简单的、无连接的、尽最大努力交付的数据报服务,不保证可靠通信
2、虚电路服务:保证可靠通信,必须建立连接
(1)思路:可靠通信由网络保证
(2)连接的建立:必须有
(3)终点地址:仅在连接建立阶段使用,每个分组使用短虚电路号
(4)分组转发:属于同一条虚电路的分组均按照统一路由进行转发
(5)当节点出故障:所有通过故障的结点的虚电路均不能工作
(6)分组的顺序:总是按发送顺序到达终点
(7)端到端的差错处理:可以由网络负责,也可以由用户主机负责
3、数据报服务:尽最大努力发送,不保证可靠通信
(1)思路:可靠通信由用户主机保证
(2)连接的建立:不需要
(3)终点地址:每个分组都有终点的完整地址
(4)分组转发:每个分组独立选择路由器进行转发
(5)当结点出故障:出故障结点可能会丢失分组,一些路由可能会发生变化
(6)分组的顺序:到达终点的时间不一定按发送顺序
(7)端到端的差错控制:由用户主机负责
4、以太网是(1)可扩展的(2)灵活的(3)易于安装的(4)稳健性好
4.2、网际协议IP
1、与IP配套使用的三个协议:
①地址解析协议ARP
②网际控制报文协议ICMP
③网际组管理协议IGMP
2、虚拟互联网络:逻辑互连的网络,可以由多种异构网络互连组成,在网络层上看起来像一个统一的网络
3、中间设备:用来将网络互相连接
(1)物理层的中间设备:转发器
(2)数据链路层的中间设备:网桥
(3)网络层的中间设备:路由器
(4)网络层以上的中间设备:网关
4、IP地址的编址方法:
(1)分类的IP地址:是最基本的编址方法
(2)子网的划分:对最基本编址方法的改进
(3)构成超网:比较新的无分类编址方法
5、 IP地址的记法:点分十进制记法
6、常用的三类IP地址:
①A类:
(1)最大可指派网络数:126(2^7-2) 8位除去1个固定位剩7位,减2因为要除去全0和全1位
(2)第一个可指派的网络号:1
(3)最后一个可指派的网络号:126
(4)每个网络中最大主机数:16777214(2^24-2(网络地址+广播地址))
②B类:
(1) 最大可指派网络数:16383(2^14-1) 16位除去2个固定位,减1因为有两个固定位为10,所以不存在全0或全1,但规定128.0.0.0不使用,所以减去
(2) 第一个可指派的网络号:128.1
(3)最后一个可指派的网络号:191.255
(4)每个网络中最大主机数:65534(2^16-2(网络地址+广播地址))
③C类:
(1)最大可指派网络数:2097151(2^21-1) 24位除去3个固定位,减1同B类,192.0.0.0规定不使用
(2)第一个可指派的网络号:192.0.1
(3)最后一个可指派的网络号:223.255.255
(4)每个网络中最大主机数:254(2^8-2(网络地址+广播地址))
7、P地址的重要特点:
(1)每一个IP地址都由网络号和主机号两部分组成,是一种分等级的地址结构
(2)实际上IP地址是标志一个主机或(路由器)和一条链路的接口
(3)用转发器或网桥连接起来的若干给局域网仍为一个网络,因为这些局域网都具有同样的网络号net-id
(4)所有分配到网络号的网络都是平等的
8、网络上的IP地址:
(1)同一局域网上的各IP地址的网络号都是相同的
(2)用网桥互连的网段仍是一个局域网,只有一个网络号
(3)一个路由器有多个接口,每个接口对应的网络号不同
两路由器直接相连时,可以不给两端接口分配IP,这样的特殊网络也叫无编号网络或无名网络
9、IP地址与MAC地址:源IP地址和目的IP地址始终不变;而源MAC地址和目的MAC地址在每条链路上都要变化
作用:从网络层使用的IP地址,解析出在数据链路层使用的硬件地址
工作方式:每个主机里都设有一个ARP高速缓存,里面有所在局域网上各主机和路由器的10、IP地址到硬件地址的映射表,且这个映射表经常动态更新
①*工作流程:当主机A向局域网上某个主机B发送IP数据报时,先在ARP高速缓存中查看②有无主机B的IP地址,若有,就可查出对应的硬件地址,反之,执行ARP请求分组:
(1)ARP请求分组:在局域网广播一个ARP请求分组,包含发送方硬件地址,发送方IP地址,目的方硬件地址(未知时填0),目的方IP地址
(2)本地广播ARP请求,路由器不转发ARP请求
(3)ARP响应分组:某主机收到广播,发现本机IP与查询IP一致,就回复ARP响应分组,包含发送方硬件地址,发送方IP地址;同时将请求分组中IP与硬件地址对应关系保存
(4)*收到回复的ARP响应分组后,将对应IP和硬件地址存入ARP高速缓存中,方便下次使用
③生存时间:ARP高速缓存中每条映射都只存在一段时间,超过时间后就被删除
*特点:
ARP协议只解决同一局域网上IP地址和硬件地址映射问题,不在同一局域网则无法解决
11、ARP工作过程对用户来说是透明的
12、四种使用ARP的典型情况:
(1)发送方是主机,要把IP数据报发送到本网络上的一个主机,这时ARP找到目的主机的硬件地址
(2)发送方是主机,要把IP数据报发送到另一个网络上的一个主机,这时ARP找到本网络上的一个路由器的硬件地址,剩下的工作由这个路由器完成
(3)发送方是路由器,要把IP数据报发送到本网络上的一个主机,这时ARP找到目的主机的硬件地址
13、发送方是路由器,要把IP数据报发送到另一个网络上的主机,这时ARP找到本网络上的一个路由器的硬件地址,剩下的工作由这个路由器完成
14、IP层转发分组的流程:
15、每个路由器路由表表项数:每有一个网络就要有一个路由表项
16、接口所在网络为直连网络,直接交付
17、特定主机的路由:给特定主机指定路由表,通过指定路线访问目标主机
18、 默认路由:可以减少路由表所占用的空间和搜索路由表所用的时间,将不在路由表中的网络都连向默认路由
19、路由表:只有目标网络和对应的下一跳地址,并不储存到某个网络的完整路径
20、分组转发算法:
(1)从数据报的首部提取目的主机的IP地址D,得出目的网络地址为N。
(2)若N就是与此路由器直接相连的某个网络地址,则进行直接交付,不需要再经过其他的路由器,直接把数据报交付给目的主机(这里包括把目的主机地址D转换为具体的硬件地址,把数据报封装为MAC帧,再发送此帧);否则就要执行(3)进行间接交付。
(3)若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行(4)。
(4)若路由表中有到达网络N的路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行(5)。
(5)若路由表中有一个默认路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行(6)。
(6)报告转发分组出错。
4.3、划分子网和构造超网
1、两级IP地址的问题:
(1)IP地址空间利用率有时很低
(2)给每个屋里网络分配一个网络号会使路由表变得很大,因此是网络性能变坏
(3)两级IP地址不够灵活
2、划分子网的基本思路:借用主机号若干位作为子网地址
3、划分子网后的IP地址:| 网络号 | (子网) | 主机号 |
4、子网掩码:
(1)作用:用来找出IP地址中的子网部分,长度为32位,原IP中网络号和子网部分置为1,主机号部分置为0
5、(IP地址)and(子网掩码)=网络地址
6、默认子网掩码:在不进行子网划分时,也要给出子网掩码,就用默认子网掩码
7、子网掩码是一个网络或一个子网的重要属性,路由表中的每一项还要给出该网络的子网掩码
8、子网数:2^k-2,k表示子网号的位数,减去全0和全1,就是可用子网数,虽然现在全0和全1地址也可以使用,但不推荐
9、子网划分方法:
(1)固定长度划分:所划分的所有子网的子网掩码都是相同的,取所用最大的主机数进行划分
(2)变长划分:根据需求灵活划分
10、子网划分后的路由表:包含目的网络地址、子网掩码、下一跳地址
11、子网划分后的路由器转发分组算法:
(1)从收到的数据报首部提取目的IP地址D
(2)先判断是否为直接交付。对路由器直接相连的网络进行逐个检查:用各网络的子网掩码和D逐位相与,看结果是否和相对应的网络地址匹配。若匹配,则把分组进行直接交付,转发任务结束。否则就是间接交付,执行(3)。
(3)若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由:否则执行(4)。
(4)对路由表的每一行,用其中的子网掩码和D逐位相与,其结果为N。若N与该行的目的网络地址匹配,则把数据报传送给该行指明的下一跳路由器;否则执行(5)。
(5)若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则执行(6)。
(6)报告转发分组出错。
12、无分类编址CIDR(构造超网):
概述:它最最主要的一点是消除了A,B,C类地址和划分子网的概念.它重新将IP地址划分为两个部分即,”网络前缀”和”主机号”.注意这里的网络前缀再也没有位数的限制,即没有A,B,C类之分.
13、CIDR的主要特点:
(1)消除了传统A、B、C类地址及划分子网的概念,重新将IP地址划分为两个部分即,”网络前缀”和”主机号”.注意这里的网络前缀再也没有位数的限制,即没有A,B,C类之分.
(2)把网络前缀相同的连续IP地址组成一个CIDR地址块,只要知道任一个地址,就可以知道这个地址块的起始地址和最大地址以及地址数
14、格式:使用网络前缀代替网络号和子网号,使IP地址变回两级格式
15、斜线表示法:/24表示子网掩码前24位为1,即网络前缀的位数
16、CIDR地址块:把网络前缀都相同的连续IP地址组成CIDR地址块
17、路由聚合:一个CIDR地址块能表示很多地址,这种地址的聚合称为路由聚合,也称为构成超网;有利于减少路由器之间的路由选择信息的交换,从而提高整个互联网的性能
18、*最长前缀匹配:
(1)用收到的目的地址与路由表中的每条掩码依次相与,取最长前缀匹配项的地址作为下一跳
(2)因为前缀越长,其地址块就越小,因而路由就越具体
二叉线索树:
(3)将路由表中各IP地址构成一个01字典树,也称为二叉线索树,能极大优化路由表匹配过程
4.4网际控制报文协议
为了更有效的转发IP数据报和提高交付的机会,在网际层使用了网际控制报文协议ICMP。ICMP作为IP层数据报的数据,加上数据报的首部,组成IP数据报发送出去。
(1)ICMP的作用:允许主机或路由器报告差错情况和提供有关异常情况的报告。
(2)ICMP的报文格式如下:
4.4.1 ICMP报文的种类
(1)ICMP报文种类有两种,即ICMP差错报告报文和IMCP询问报文
(2)几种常用的ICMP报文类型
ICMP报文种类 | 类型的值 | ICMP报文的类型 |
差错报告报文 | 3 | 终点不可达 |
11 | 时间超过 | |
12 | 参数问题 | |
5 | 改变路由 | |
询问报文 | 8或0 | 回送请求或回答 |
13或14 | 时间戳请求或回答 |
(3)ICMP的应用:PING和Traceroute。
4.4.2 ICMP的应用举例
ICMP的一个重要应用是分组间探测PING(Packet InterNet Gropt),用来检测两台主机之间的联通性。举个例子,使用Ping命令来测试一下我的电脑和我的博客服务器间的连通性。通过下面的图片可以看到,由于我的博客是托管在git的服务器上的,而该主机又不再国内,所以造成了一定的是数据丢失。但是网络仍然是联通的。
4.5、互联网的路由选择协议
4.5.1有关路由选择选择协议的几个基本概念
1.理想的路由算法
1.1、算法必须是正确完整的。
1.2、算法在计算上应该简单。
1.3、算法应能适应通信量和网络拓扑的变化。
1.4、算法应具有稳定性。
1.5、算法应是公平的。
1.6、算法应是最佳的。
2. 分层次的路由选择协议
2.1、内部网关协议IGP:即在一个自治系统内部使用的路由选择协议,而这与在互联网中的其他自治系统选用什么路由选择协议无关,目前这类路由器选择协议使用的最多,如RIP和OSPF等。
2.2外部网关协议EGP:若源主机和目的主机在不同的自治系统中,当数据报传递到一个自治系统的边界时,就需要使用一种协议将路由器选择信息传递到另一个自治系统中。
自治系统之间的路由选择也叫做域间路由选择。自治系统之内的路由选择也叫做域内路由选择。
4.5.2内部网关协议RIP
1、工作原理
1.1RIP时内部网关协议IGP中最先得到广泛使用的协议,它的中文名字叫做路由信息协议,但是很少被使用。RIP是一种分布式的基于距离向量的路由选择协议,是互联网的标准协议,最大的优点就是简单。
1.2内部网关协议RIP(路由信息协议):它把从一路由器到直接连接的网络的距离定义为1,从一路由器到非直接连接的网络的距离定义为所经过的路由器数加1。它允许一条路径最多只能包含15个路由器,因此“距离”等于16时即相当于不可达。RIP只适用于小型网络。
2、RIP特点是
2.1RIP仅和相邻的路由器交换信息,(相邻的路由器就是指这两个路由器之间的通信不经过另外一个路由器)
2.1路由器交换的信息是当前本路由器所知道的全部信息,即自己现在的路由表,
2.3按照固定的时间间隔交换路由信息。
3、PIP的优缺点
优点:实现简单,开销较小;
缺点:限制了网络的规模,坏消息传播得慢,随着网络规模的增大,开销也会增大。
4.5.4内部网关协议OSPF
内部网关协议OSPF(开放最短路径优先):它是为了克服RIP的缺点而被开发出来的,是分布式的链路状态协议, 适用于大型互联网。
1、SPF协议的基本特点
1.1由本自治系统中的所有路由器发出信息,使用的是洪泛法,这就是路由器通过通过所有输出端口向说有相邻的路由器发送信息。
1.2发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息。
1.3只有当链路状态发生变化时,路由器才向所有的路由器用洪泛法发送信息。
1.4OSPF允许管理员给每条路由指派不同的代价
1.5如果到同一个目的网络有多条相同代价的路径,那么可以将通信量分配给这几条路径,这叫做多路径之间的负载平衡。
1.6所有在OSPF路由器之间交换的分组都具有鉴别的功能。
1.7OSPF支持可变长度的子网划分和无分类的编址CIDR。
1.8由于网络中的链路可能经常发生变化,因此OSPF让每一条链路状态都带上一个32位的序号,序号越大状态就越新。
2.OSPF的五种分类
2.1问候组,用来发现和维持邻站的可达性。
2.2数据库描述分组,向邻站给出自己的链路状态数据库中的所有链路状态项目的摘要信息。
2.3链路状态请求分组,向对方请求发送某些链路状态项目的详细信息。
2.4链路状态更新分组,用洪泛法对全网更新链路状态。
2.5链路状态确定分组,对链路更新分组的确认。
4.5.5外部网关协议BGP
1、BGP的作用
边界网关BGP力求寻找一条能够到达目的网络且比较好的路由,而并非寻找一条最佳路由,BGP采用了路径向量路由选择协议。
2、BGP工作原理:
2.1BGP力求寻找一条能够到达目的网络且比较好的路由,而并非要寻找一条最佳路由。
2.1BGP采用路径向量路由选择协议。
2.3每一个自治系统的管理员要选择至少一个路由器作为该自治系统的“BGP 发言人”。
4.5.6路由器的构成
路由器结构图
分组转发部分:交换结构,一组输入端口,一组输出端口。
路由器定义:
路由器是一种具有多个输入端口和多个输出端口用来转发分组的专用计算机。它的交换结构实现的就是把分组从一个输入端口转移到某个合适的输出端口。实现这样的交换方法有:利用普通的计算机进行交换;通过存储器进行交换;通过总线进行交换;通过纵横交换结构进行交换。
4.6、IPv6
IPv6:解决IP地址耗尽的根本措施就是采用具有更大地址空间的新版本IP即IPv6
1、IPv6引进后的主要变化:
更大的地址空间;拓展的地址层次机构;灵活的首部格式;引进的选项;允许协议继续扩充;支持资源的与分配
2、IPv6的基本首部:版本;通信量类;流标号;有效载荷长度;下一个首部;跳数限制;源地址;目的地址
3、IPv6的地址:单播(点对点);多播(一对多点);任播
4、从IPv4到IPv6过渡:只能采用逐步演进的办法,同时还必须使新安装的IPv6系统能够向后兼容。IPv4 向 IPv6 过渡可以采用双协议栈和隧道技术两种策略。
5、ICMPv6:面向报文的协议,利用报文报告差错,获取信息,探测邻站或管理多播通信。
4.7、IP多播
IP 多播:可明显地减少网络中资源的消耗
1、多播使用组地址—— IP 使用 D 类地址支持多播。多播地址只能用于目的地址,而不能用于源地址
2、因此 TCP/IP 协议使用的以太网多播地址块的范围是:从 00-00-5E-00-00-00 到 00-00-5E-FF-FF-FF
3、IP多播需要两种协议:网际组管理协议、IGMP多播路由选择协议。
4、多播数据包和一般数据报的区别是其使用D类IP地址作为目的地址
5、IP多播的分类:在本局域网内进行硬件多播(IP地址到mac地址的转换看待)和在因特网的范围进行多播
4.8虚拟专用网VPN和网络地址转换NAT
1、利用公用的英特网作为本机构各专用网之间的通信载体。通过英特网传送的数据要加密。
2、本地地址:仅在机构内部使用的IP地址,可以由本机构自行分配,而不需要向英特网的管理机构申请。
3、全球地址:全球唯一的IP地址,必须向因特网的管理机构申请。
专用地址:只能用于一个机构的内部通信,而不能用于和因特网上的主机通信,是本地地址。
10.0.0.0到10.255.255.255
172.16.0.0到172.31.255.255
192.168.0.0到192.168.255.255
4、内联网和外联网:看结果是否属于同一个机构
5、需要在专门网络连接到因特网的路由器上安装NAT软件。装有NAT软件的路由器叫做NAT路由器,它至少有一个有效的外部全球地址IP。
6、在专用网络内使用专用IP地址,仅在连接到因特网上的路由器时使用全球IP地址。并且一定要使用全球IP才能和因特网连接。
7、通过NAT地址转换表可以把IP数据报上的旧目的的IP地址转换为新的目的IP地址。
8、使用端口号的NAT也叫网络地址与端口号转换NAPT。
4.9多协议标记交换MPLS
11、MPLS具有以下三个方面的特点:
(1)支持面向连接的服务质量。
(2)支持流量工程,平衡网络负载。
(3)有效支持虚拟专用网VPN。
2、MPLS的工作原理
3、标记转换:采用硬件技术对打上标记的IP数据进行转发。
4、MPLS域是指此域中有许多彼此相邻的路由器,并且所有路由器都是支持MPLS技术的标记交换路由器LSR。
5、MPLS的基本工作过程
6、分类:给IP数据报打标记的过程。
7、标记对决:分组每经过一个LSP,LSP就要做两件事:一是转发,二是更换新的标记,即把入标记更换成为出标记。
8、.项目含义:从入口接入0收到一个入标记为3的IP数据报,转发时,应当把此IP数据报从出接口1转发出去,同时把标记对换为1。
9、“转发等价类”就是路由器按照同样方式对待的分组集合。
10、“按照同等方式对待”表示:从同样接口转发到同样的下一跳地址,并且具有同样服务类型和同样丢弃优先级。
11、FNC和标记是一一对应关系的。
12、“给IP数据报打上标记”:在以太网的帧首部和IP数据报的首部之间插入一个4字节的MPLS首部。
8.MPLS首部共包括以下四个部分:
- 标记值(占20位):可以同时容纳高达220个流(即1048576个流)。
- 试验(占3位):目前保留用做试验。
- 栈S(占1位):在有“标记栈”时使用。
- 生存时间TTL(占8位):用来防止MPLS分组在MPLS域中兜圈子。