- 网络层向运输层提供怎样的服务("可靠运输"还是"不可靠传输")
- 网络层寻址问题
- 路由选择问题
因特网是目前全世界用户数量最多的互联网,它使用TCP/IP协议栈。
由于TCP/IP协议栈的网络层使用网际协议IP,它是整个协议栈的核心协议,因此在TCP/IP协议栈中网络层常被称为网际层。
面向连接的虚拟电路服务
无连接的数据报服务
A类地址:0-
最小网络号0,保留不指派
最大的网络号127,作为本地环回测试地址,不指派
最小的本地环回测试地址127.0.0.1
最大的本地环回测试地址为127.255.255.254
B类地址:10-
C类地址:110-
例题:
划分子网在一定程度上缓解了因特网在发展中遇到的困难,但是数量巨大的C类网因为其地址空间太小并没有得到充分使用,而因特网的IP地址仍在加速消耗,整个IPv4地址空间面临全部耗尽的威胁。
1993年IETF发布了无分类域路由器选择CIDR
请给出CIDR地址块128.14.35.7/20的全部细节(最小地址,最大地址,地址数量,地址掩码)
最小地址:128.14.32.0
最大地址:128.14.32.0
地址数量:2^(32-20)
地址掩码:255.255.240.0
5.2路由聚合
网络前缀越长,地址块越小,路由越具体;
若路由器查表转发分组时发现有多条路由可选,则选择网络前缀最长的那条,这称为最长前缀匹配,因为这样的路由更具体。
定长的子网掩码FLSM
使用同一个子网掩码来划分子网
每个子网所分配的IP地址数量相同,造成IP地址的浪费
变长的子网掩码VLSM
使用不同的子网掩码来划分子网
每个子网所分配的IP地址数量可以不同,尽可能减少对IP地址的浪费
IP数据报的发送和转发过程包含以下两部分:
学习笔记之默认网关_在s2上配置默认网关_汪汪富贵的博客-CSDN博客
1、静态路由配置是指用户或网络管理员使用路由器的相关命令给路由器人工配置路由表
2、使用静态路由配置可能出现以下导致产生路由环路的错误
为了防止IP数据报在路由环路中永久兜圈,在IP数据报首部设有生存事件TTL字段。
1、静态路由选择
2、动态路由选择
因特网所采用的路由选择协议的主要特点
自适应:动态路由选择,能较好地适应网络状态的变化
分布式:路由器之间交换路由信息
分层次:将整个因特网划分为许多较小的自治系统AS
英特网采用分层次的路由选择协议
常见的路由选择协议:
路由器基本结构
路由协议RIP是内部网关协议IGP中最先得到广泛使用的协议之一,其相关标准文档为RFC1058。
RIP要求自治系统AS内的每一个路由器都要维护从它自己到AS内其他每一个网络的距离记录。这一组距离称为"距离向量D-V"。
RIP使用跳数作为度量来衡量到达目的网络的距离。
RIP认为好的路由就是"距离短"的路由,也就是所通过路由器数量最少的路由。
当到达同一目的网络有多条"距离相等"的路由时,可以进行等价负载均衡。
RIP包含以下三个要点:
RIP存在"坏消息传播的慢"的问题
"坏消息传播的慢"又称为路由环路或距离无穷计数问题,这是距离向量算法的一个固有问题。可以采取多种措施减少出现问题的概率或减小问题带来的危害。
OSPS相邻路由之间通过交互问候(Hello)分组,建立和维护邻居关系。
使用OSPF的每个路由器都会产生链路状态通告LSA。LSA中包含以下内容。
LSA被封装在链路状态更新分组LSU中,采用洪范法发送。
使用OSPF的每个路由器都有一个链路状态数据库LSDB,用于存储LSA。
通过各路由器洪范发送封装有自己LSA的LSU分组,个路由器的LSDB最终将达到一致。
使用OSPF的各路由器基于LSDB进行最短路径优先算法SPF计算,构建出各自到达其他路由器的最短路径,即构建各自的路由表。
OSPF有以下五种分组类型
内部网关协议IGP(例如路由信息协议RIP或开放最短路径优先OSPF)
外部网关协议EGP(例如边界网关协议BGP)
自治系统之间需要使用外部网关协议EGP这一类协议,具体为边界网关协议BGP,目前使用最多的版本是BGP-4;BGP-4报文被封装在TCP报文段中进行传输。
直接封装RIP、OSPF、BGP报文分别对应UDP、IP、TCP
占4比特,表示IP协议的版本。通信双方使用的IP协议的版本必须一致。目前广泛使用的IP协议版本号为4(即IPV4)
占4比特,表示IP数据报首部的长度。该字段的取值以4字节为单位。
最小十进制取值为5,表示IP数据报首部只有20字节固定部分;
最大十进制取值为15,表示IP数据报首部包含20字节固定部分和最大40字节可变部分。
长度从1个字节到40个字节不等。用来支持排错、测量及安全等措施。
可选字段增加了IP数据报的功能,但这同时也使得IP数据报的首部长度成为可变的。这就增加了每一个路由器处理IP数据的开销。实际上可选字段很少被使用。
确保首部长度为4字节的整数倍,使用全0进行填充
占8个比特,用来获得更好的服务。
该字段在旧标准中叫作服务类型,但实际上一直没有被使用过。
利用该字段的不同数值可提供不同等级的服务质量。
只有在使用区分服务时,该字段才起作用。一般情况下都不使用该字段。
占16比特,表示IP数据报的总长度(首部+数据载荷)。
最大取值为十进制的65535,以字节为单位。
以下三个字段共同用于IP数据报分片
站16比特,属于同一个数据报的各分片数据报因该具有相同的标识。
占3比特,各比特含义如下:
DF位:1表示不允许分片;0表示允许分片
MF位:1表示"后面还有分片";0表示"这是最后一个分片"
保留位:必须为0
占13比特,指出分片数据报的数据载荷部分偏移其在原数据报的位置有多少各单位。以8个字符为单位。
占8比特,最初以秒为单位,最大生存周期为255秒;路由器转发IP数据报时,将IP数据报首部中的该字段的值减去IP数据报在本路由器上所消耗的时间,若不为0就转发,否则就丢弃。
占8比特,指明IPv4数据报的数据部分时何种协议数据单元。
常用的一些协议和相应的协议字段值如下。
占16比特,用来检测首部在传输过程中是否出现差错。比CRC检验码简单,称为因特网检验和。
由于IP层本身并不提供可靠传输的服务,并且计算首部校验和是一项耗时的操作,因此在IPv6中,路由器不再计算首部校验和,从而更快转发IP数据报。
各占32比特,用来填写发送该IP数据报的源主机的IP地址和接收该IP数据报的目的主机的IP地址。
ICMP差错报告报文共有以下五种:
终点不可达
源点抑制
时间超过
参数问题
改变路由(重定向)
以下情况不应发送ICMP差错报告报文:
常用的ICMP询问报文有以下两种:
ICMP应用举例
分组网间探测PING(Packet InterNet Groper)
跟踪路由(traceroute)
虚拟专用网VPN
网络地址转换NAT