一、知识点分布
1、网络层该向运输层提供“面向连接”还是“无连接”的服务?
2、虚拟互连网络
3、IP地址的三种编址方式:①分类IP地址 ②子网划分 ③构成超网
4、地址转发协议ARP
5、无分类编址CIDR
6、各种网络层协议(如ICMP,IP,ARP,RIP,OSPF等等)
二、细碎概念
面向连接:虚电路服务是一种逻辑连接,并非是真实的物理连接(虚电路服务类似电路交换的电话通信,但是电路交换的电话通信是真实的建立物理连接)
无连接:数据包服务(与虚电路服务的主要区别在于可靠通信是由用户主机保证的,而虚电路服务的可靠通信是由网络层保证的)
网络层相关协议
虚拟互连网络
网络互连中需要使用的一些中间设备
物理层中间系统:转发器
数据链路层中间系统:网桥或者桥接器
网络层中间系统:路由器
网络层以上的中间系统:网关
因为中间系统是会转发器或网桥时,仅仅只是把一个网络扩大了而已,但本质仍然是一个网络,所以互联网一般指的是用路由器进行互连的网络。
虚拟互连网络是什么?也就是逻辑互连网络,利用使用同种IP协议使互连起来的各种异构的物理网络形成一个统一的网络。
使用虚拟互连网络的好处是:当互联网上的主机进行通信时,就好像在同一个网络进行通信,而看不见互连的各具体的网络异构细节。
IP地址
现由互联网名字与数字分配机构ICANN进行分配,是全世界范围内唯一的32位的标识符。
有三种编址方式:①分类IP地址;②子网的划分;③构成超网
分类IP地址
IP地址 = <网络号>,<主机号>
分为几类地址,常用的是ABC类地址,最前面是类别号,而网络号和主机号也有规律可寻,即对应是A类1:3;B类2:2:;C类:3:1
ABC类地址的网络号范围
A类地址:1~126 B类地址:128.1~191.255 C类地址:192.0.1~223.255.255
点分十进制法表示(提高可读性),即二进制数每8位就划分 (eg:128.11.3.31)
多归属主机:当一个主机同时连接到两个不同的网络上,该主机就必须同时具有两个相应的IP地址,其网络号必须是不同的。
由于一个路由器必须连接至少两个网络,这样它才能将IP数据报从一个网络发送到另一个网络中,于是一个路由器至少有两个不同的IP地址,每一个接口都有一个不同的网络号。路由器只根据目的站的IP地址的网络号进行路由选择。
同个局域网里的主机或者路由器的网络号必须是相同的,因为局域网里的主机都是在同一个网络下的。
划分子网
IP地址=<网络号>,<子网号>,<主机号>
注意:其中的子网号其实是从主机号中借用出来的,划分子网纯属一个单位内部的事情。单位对外仍然表现为没有划分子网的网络。
子网掩码是一个网络或一个子网的重要属性。使用子网掩码可以找出 IP 地址中的子网部分。路由器在和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子网掩码告诉相邻路由器。即路由表中有目的地址和子网掩码信息。
ABC类地址的默认子网掩码
A类默认:255.0.0.0 B类默认:255.255.0.0 C类默认:255.255.255.0 (即对应IP地址的网络号全为1,剩下的全为0)
计算公式:网络地址=IP地址 AND(与运算)子网掩码
构成超网
一个 CIDR 地址块可以表示很多地址,这种地址的聚合常称为路由聚合,路由聚合也称为构成超网。网络前缀长度不超过23位的CIDR地址快都包含了多个C类地址。
路由聚合是将网络前缀变短,网络前缀越短,其地址块所包含的地址数就越多。而在三级结构的IP地址中,划分子网其实是使网络前缀变长。
表示:0000101000* (*表示网络前缀,*之后表示主机号)
最长前缀匹配
结果若是有多个匹配,则选择匹配的地址中更具体的一个,即选择最长网络前缀的那个。
IP数据报的格式
由首部和数据两部分组成,首部的前一部分是固定长度的20个字节,是所有IP数据报都必须具有的,后面是可变部分,可有可无。
20个字节(5*32位)=版本4位+首部长度4位+区分服务8位+总长度16位+标识16位+标志3位+片偏移13位+生存时间8位+协议8位+首部检验和16位+源地址32位+目的地址32位。
标志:占3位,目前只有前两位有意义。MF(more fragment),MF=1表示后面还有分片的数据报,MF=0表示这已经是若干数据分片的最后一个。DF(don't fragment),DF=1表示没不能分片,所有只有当DF=0才允许分片。
片偏移:占13位,片偏移以8个字节为偏移单位,也就是说,每个分片的长度一定是8个字节的整数倍。
一个数据帧的数据字段的最大长度,称为最大传送单元MTU,以太网规定MTU值是1500个字节,若传送的数据报超过MTU,则信息分片处理。
二进制反码求和,就是先对二进制求和,然后再对和取反。
IP地址转发分组的流程
比如有4个A类网络通过3个路由器连接在一起,采用按主机所在的网络地址制作路由表比较合适,这样就避免了路由表的庞大
路由表 =(目的网络地址,下一跳地址),若找到最后路由器时才直接交付,否则多次间接交付。
注意:当路由器收到待转发的数据报,不是将下一跳路由器的IP 地址填入 IP 数据报,而是送交下层的网络接口软件。网络接口软件使用 ARP 负责将下一跳路由器的 IP 地址转换成硬件地址,并将此硬件地址放在链路层的 MAC 帧的首部,然后根据这个硬件地址找到下一跳路由器。
地址解析协议ARP
出现背景:不管网络层使用什么协议,在实际网络的链路层传输数据帧,需要知道对应的物理地址,我们怎么才能把IP地址转换为物理地址,于是ARP协议的应用场景来了。根据IP地址,找出对应的硬件地址。IP地址——>ARP协议——>物理地址
TTL:表示地址映射有效时间。 每个主机都有一个ARP高速缓存,里面有所在局域网下的所有主机和路由器的IP地址到物理地址的映射表。
注意:ARP解决的是同个局域网上的主机或路由器的IP地址和硬件地址的映射问题,且ARP解析是自动进行的,无须用户操作,用户不知道的,这也给用户带来方便。我们为什么要使用抽象的IP协议来通信而不直接使用硬件地址通信?主要是异构网络中不同的硬件地址之间的转换很复杂,采用统一的IP地址通信会方便许多。
无分类编址CIDR
出现场景:IPv4的地址空间即将耗尽,于是需要改进分配方式,采用网络前缀来代替分类地址中的网络号和子网号。
IP地址=<网络前缀>,<主机号>
CIDR还使用“斜线记法”,(eg:128.14.32.0/20) 其中20代表网络前缀的位数,也即二进制位1的个数
也可以把10.0.0.0/10简写成10/10,也就是把点分十进制的低位连续的0省略,对应的子网掩码是255.192.0.0
比如:128.14.32.0/20的最小地址:128.14.32.0 最大地址:128.14.47.255
使用CIDR的好处:可以更加有效地分配IPv4的地址空间,可根据客户的需要分配适当大小的CIDR地址块
网际控制报文协议ICMP
作用:为了提高数据交付成功地机会,ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。
分为2种种类:①ICMP差错报告报文;②ICMP询问报文
ICMP 报文的前 4 个字节是统一的格式,共有三个字段:即类型、代码和检验和。接着的 4 个字节的内容与 ICMP的类型有关。
ICMP差错报告报文有4种:①终点不可达;②时间超过;③参数问题;④改变路由(重定向)
ICMP询问报文有2种:①回送请求与回答报文;②时间戳请求和回答报文
ICMP的应用举例
ping:用来测试两台主机之间的连通性,使用了ICMP的回送请求与回答报文,它是应用层直接使用网络层ICMP的例子,没有通过运输层的TCP或UDP
traceroute:用来跟踪一个分组从源点到终点的路径
路由选择
路由表、怎么查找路由表、分组根据路由表转发过程?(目标IP在直连网络中就直接交付,否则查找特定主机路由,否则查找其他路由(包括由动态路由协议得到的路由),否则查找默认路由) PS:注意顺序
静态路由选择策略——是非自适应路由选择,简单开销小,但不能及时适应网络状态的变化
动态路由选择策略——是自适应路由选择,复杂开销大,但能及时适应网络状态的变化
因特网采用分层次的路由选择协议,原因是互联网的规模非常大,且许多单位不希望自己内部的网络布局细节被外界所了解,于是把互联网划分为许多较小的自治系统(简称AS)。AS是在单一技术管理下的一组路由器。而这些路由器使用一种自治系统内部的路由选择协议和共同的度量。一个AS对其他AS表现出的是一个单一的和一致的路由选择策略。
自治系统间的路由选择叫作域间路由选择,而自治系统内部的路由选择叫作域内路由选择。
一个大的ISP就是一个自治系统,于是互联网就把路由选择协议划分为2部分。分别是:内部网关协议IGP(在一个自治系统内部使用,典型的有RIP和OSPF协议),外部网关协议EGP(数据报传送到自治系统的边界时,需要外部网关协议EGP将路由选择信息传送给另一个自治系统,典型的有BGP-4)
RIP协议
RIP是基于距离向量(跳数)的路由选择协议,特点是:①仅与相邻路由器交换,②交换整个路由表信息,③每隔30秒进行一次
路由表中最主要的信息就是:到某个网络的距离(最短距离)以及应经过的下一跳地址,路由表每次更新都是为了找到到每个目的网络的最短距离。RIP不能在两个网络之间同时使用多条路由
RIP还有一个特点是:实现简单,开销小,好消息传得快,而坏消息传播得慢(即发生故障时不能及时通知对方)。
RIP协议使用运输层的用户数据报UDP进行传送(UDP的端口号520),因此RIP协议的位置应当在应用层,但转发IP数据报的过程是在网络层完成的。
OSPF 协议,是开放最短路径优先协议
为了使 OSPF 能够用于规模很大的网络,OSPF 将一个自治系统再划分为若干个更小的范围,叫作区域。在上层的区域叫作主干区域,主干区域的标识符规定为0.0.0.0。主干区域的作用是用来连通其他在下层的区域。
OSPF直接使用IP数据报进行传送而不用UDP,OSPF构成的数据报也很短,可减少路由信息的通信量,且不必分片传送数据报
OSPF有5种分组类型
类型一:问候分组(用来维持和发现邻站可达性)
类型二:数据库描述分组(向邻站给出自己的链路数据库中所有链路状态条目的摘要信息)
类型三:链路状态请求分组(向对方请求发送某些链路状态条目详细信息)
类型四:链路状态更新分组(用洪泛法对全网更新链路状态)
类型五:链路状态确认分组(对链路更新分组的确认)
路由器
构成:是一种具有多个输入端口和多个输出端口的专用计算机,其任务就是路由选择,转发分组。
路由表是根据路由选择算法得出的。而转发表是从路由表得出的。路由器中的输入或输出队列产生溢出是造成分组丢失的重要原因。
路由器的三种交换结构:①通过存储器;②通过总线;③通过互连网络
虚拟专用网VPN
利用公用的互联网作为本机构各专用网之间的通信载体。VPN内部使用互联网的专用地址。一个VPN至少要有一个路由器具有合法的全球IP地址,才能和本系统的另一个VPN通过互联网进行通信。所有通过互联网传送的数据都必须加密。
网络地址转换NAT技术
可以在专用网络内部使用专用IP地址,而仅在连接到互联网的路由器使用全球IP地址,这样就大大节约了宝贵的IP地址。
习题解答:
解:192.168.0.100/26 化成二进制表示11000000.10101000.00000000.01100100 主机号为后6位(32-26=6)
网络地址就是把主机号全置为0,而广播地址就是把主机号全置为1
所以网络地址为192.168.0.64 广播地址为192.168.0.127