网络层(八)

article/2025/8/23 23:51:19

网络层

文章目录

    • 网络层
      • 网络层服务
        • 网络层的核心功能——转发与路由
        • 网络层的核心功能——建立连接
        • 网络层服务模型
        • 虚电路网络
        • 数据报网络
        • 数据报网络 or 虚电路网络
      • IP协议
        • IP数据报格式
        • IP分片
        • IP编址
        • 无类域间路由(CIDR)
      • 网络地址转换(NAT)
        • NAT出现的动机
        • NAT的实现
        • NAT主要争议
        • NAT穿透问题
      • 互联网控制报文协议(ICMP)
      • IPv6
        • 设计IPv6的动机
        • IPv6地址表示形式
        • IPv6基本地址类型
        • IPv4向IPv6过渡
      • 路由算法
        • 静态路由 VS 动态路由?
        • 全局信息 VS 分散信息?
        • 链路状态路由算法
        • 距离向量路由算法
        • 层次路由
      • Internet路由选择协议
        • RIP协议
        • OSPF协议
        • BGP协议
        • BGP协议

由于参加互连的计算机网络都使用相同的网际协议IP,因此可以把互连以后的计算机网络看成一个虚拟互连网络。所谓虚拟互连网络也就是逻辑互连网络,它的意思就是互连起来的各种物理网络的异构本来是客观存在的,但是我们利用协议IP就可以使这些性能各异的网络在网络层上看起来好像是一个统一的网络。这种使用协议IP的虚拟互连网络可简称为IP网。使用IP网的好处是:当IP网上的主机进行通信时,就好像在一个单个网络上通信一样,它们看不见互连的各网络的具体异构细节(如具体的编址方案、路由选择协议等)。如果在这种覆盖全球的IP网的上层使用TCP协议,那么就是现在的互联网。

网络层服务

  • 从发送主机向接收主机传送数据段(segment)

  • 发送主机:将数据段封装到数据报(datagram)中

  • 接收主机:向传输层交付数据段(segment)

  • 每个主机和路由器都运行网络层协议

  • 路由器检验所有穿越它的IP数据报的头部域,决策如何处理IP数据报

  • 网络层的主要任务是实现网络互连,进而实现数据包在各网络之间的传输。

  • 要实现网络层任务,需要解决以下主要问题:

    网络层向运输层提供怎样的服务(“可靠传输”还是“不可靠传输”)

    网络层寻址问题

    路由选择问题

网络层的核心功能——转发与路由

  • 转发(forwarding):将分组从路由器的输入端口转移到合适的输出端口
  • 路由(routing):确定分组从源到目的经过的路径
  • 路由算法确定通过网络的端到端路径
  • 转发表确定在本路由器如何转发分组

网络层的核心功能——建立连接

  • 数据分组传输之前两端主机需要首先建立虚拟/逻辑连接,网络设备(如路由器)参与连接的建立

  • 网络层连接与传输层连接的对比:

    网络层连接:两个主机之间(路径上的路由器等网络设备参与其中)

    传输层连接:两个应用进程之间(对中间网络设备透明)

网络层服务模型

  • 无连接服务:

    不事先为系列分组的传输确定传输路径

    每个分组独立确定传输路径

    不同分组可能传输路径不同

    数据报网络(datagram network)

  • 连接服务:

    首先为系列分组的传输确定从源到目的经过的路径(建立连接)

    然后沿该路径(连接)传输系列分组

    系列分组传输路径相同

    传输结束后拆除连接

    虚电路网络(virtual-circuit network)

虚电路网络

  • 连接服务与无连接服务

    数据报(datagram)网络与虚电路网络是典型两类分组交换网络

    数据报网络提供网络层无连接服务

    虚电路网络提供网络层连接服务

    类似于传输层的无连接服务(UDP)和面向连接服务(TCP),但是网络层服务由主机到主机服务,网络核心实现。

  • 虚电路

    一条从源主机到目的主机,类似于电路的路径(逻辑连接),分组交换,每个分组的传输利用链路的全部带宽,源到目的路径经过的网络层设备共同完成虚电路功能。

    通信过程:呼叫建立——>数据传输——>拆除呼叫

    每个分组携带虚电路标识(VCID),而不是目的主机地址

    虚电路经过的每个网络设备(如路由器),维护每条经过它的虚电路连接状态

    链路、网络设备资源(如带宽、缓存等)可以面向VC进行预分配,预分配资源=可预期服务性能,如ATM的电路仿真(CBR)

  • VC的具体实现

    每条虚电路包括:从源主机到目的主机的一条路径。虚电路号(VCID),沿路每段链路一个编号。沿路每个网络层设备(如路由器),利用转发表记录经过的每条虚电路。

    沿某条虚电路传输的分组,携带对应虚电路的VCID,而不是目的地址

    同一条VC,在每段链路上的VCID通常不同,路由器转发分组时依据转发表改写/替换虚电路号

  • 虚电路信令协议(signaling protocols)

    用于VC的建立、维护与拆除,路径选择问题

    应用于虚电路网络,如ATM、帧中继网络等

    目前的Internet不采用

数据报网络

  • 网络层无连接
  • 每个分组携带目的地址
  • 路由器根据分组的目的地址转发分组,基于路由协议/算法构建转发表,检索转发表,每个分组独立选路
  • 最长前缀匹配优先:在检索转发表时,优先选择与分组目的地址匹配前缀最长的入口(entry)。

数据报网络 or 虚电路网络

  • 数据报网络:

    计算机之间的数据交换,“弹性”服务,没有严格时间需求

    链路类型众多,特点、性能各异,统一服务困难

    “智能”端系统(计算机),可以自适应、性能控制、差错恢复

    简化网络,复杂“边缘”

  • ATM(VC网络)

    电话网络演化而来

    核心业务是实时对话:严格的时间、可靠性需求,需要有保障的服务

    “哑”端系统(非智能),如:电话机、传真机

    简化“边缘”,复杂网络

IP协议

IP数据报格式

IP是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则,IP只为主机提供一种无连接、不可靠的、尽力而为的数据包传输服务。

  • IP数据报格式

    在这里插入图片描述

  • 版本号字段占4位:IP协议的版本号

  • 首部长度字段占4位:IP分组首部长度

  • 服务类型(TOS)字段占8位:指示期望获得哪种类型的服务,1998年这个字段改名为区分服务,只有在网络提供区分服务时使用,一般情况下不适用,通常IP分组的该字段的值为00H

  • 生存时间(TTL)字段占8位:IP分组在网络中可以通过的路由器数(或跳步数),路由器转发一次分组,TTL减1,如果TTL = 0,路由器则丢弃该IP分组

  • 协议字段占8位:指示IP分组封装的是哪个协议的数据包,实现复用/分解。E.g.6为TCP,表示封装的为TCP段;17为UDP,表示封装的是UDP数据报

  • 首部校验和字段占16位:实现对IP分组首部的差错检测,计算校验和时,该字段置全0。采用反码算数运算求和,和的反码作为首部校验和字段,逐跳计算、逐跳校验。

  • 源IP地址、目的IP地址字段各占32位:分别标识发送分组的源主机/路由器(网络接口)和接收分组的目的主机/路由器(网络接口)的IP地址。

  • 选项字段占长度可变,范围1~40B之间:携带安全、源选路径、时间戳和路由记录等内容,实际上很少被使用

  • 填充字段占长度可变,范围在0~3B之间:目的是补齐整个首部,符合32位对齐,即保证首部长度是4字节的倍数

IP分片

一个IP包从源主机传输到目标主机可能需要经过多个不同的物理网络。由于各种网络的数据帧都有一个最大的传输单元(MTU)的限制,如以太网帧的MTU是1500;因此,当路由器在转发IP包时,如果数据包的大小超过了出口链路的最大传输单元时,则会将该IP分组分解成很多足够小的片段,以便能够在目标链路上进行传输。这些IP分片重新封装一个IP独立传输,并在到达目标主机时才会被重组起来。

  • 网络链路存在MTU(最大传输单元)——链路层数据帧可封装数据的上限,不同链路的MTU不同。

  • IP分片与重组

    大IP分组向较小MTU链路转发时,可以被“分片”,1个IP分组分为多片IP分组

    IP分片到达目的主机后进行“重组”

    IP首部的相关字段用于标识分片以及确定分片的相对顺序,总长度、标识、标志位和片偏移

  • 标识字段占16位:标识一个IP分组

  • IP协议利用一个计数器,每产生IP分组计数器加1,作为该IP分组的标识

  • 标志位字段占3位:DF = 1 (禁止分片),DF = 0(允许分片)。MF = 1(非最后一片),MF = 0(最后一片或未分片)

  • 片偏移字段占13位:一个IP分组分片封装原IP分组数据的相对偏移量,片偏移字段以8字节为单位。

  • IP分片过程

    假设原IP分组总长度为L,待转发链路的MTU为M

    若L>M,且DF=0,则可以/需要分片

    分片时每个分片的标识复制原IP分组的标识

    通常分片时,除最后一个分片,其他分片均分为MTU允许的最大分片

    一个最大分片可封装的数据应该是8的倍数,因此,一个最大分片可封装的数据为:d = (M - 20)/ 8 * 8

    需要的总片数为:n = (L - 20)/ d

    每片的片偏移字段取值为:F = d / 8 *(i - 1),1 <= i <= n

    每片的总长度字段为:L = d + 10 or L = L -(n - 1)* d

    每片的MF标志位为:MF = 1 or 0

IP编址

  • IP分组:源地址-从哪儿来,目的地址-到哪儿去

  • 接口:主机/路由器与物理链路的连接

    实现网络层功能

    路由器通常有多个接口

    主机通常只有一个或两个接口(有线的以太网接口,无线的802.11接口)

  • IP地址:32比特编号标识主机、路由器的接口

  • IP地址与每个接口关联

  • IP地址由网络号和主机号组成

  • IP子网:

    IP地址具有相同网络号的设备接口

    不跨越路由器(第三及以上层网络设备)可以彼此物理联通的接口

  • 有类IP地址

    • A类地址:8位网络号,24位主机号,网络号的最高位固定为0

      最小网络号为0,保留不指派

      第一个可指派的网络号为1,网络地址为1.0.0.0

      最大网络号127,作为本地环回测试地址,不指派。最小的本地环回测试地址为127.0.0.1,最大的本地环回测试地址为127.255.255.254

      最后一个可指派的网络号为126,网络地址为126.0.0.0

      可指派的网络数量为: 2的(8-1)次方 - 2 = 126

      每个网络中可分配的IP地址数量:2的24次方 - 2 = 16777214

    • B类地址:10位网络号,16位主机号,网络号的最高两位固定为10

      最小网络号也是第一个可指派的网络号128.0

      网络地址为128.0.0.0

      最大网络号也是最后一个可指派的网络号191.255

      网络地址为191.255.0.0

      可指派的网络数量为:2的(16-2) = 16384

      每个网络中可分配的IP地址数量为:2的16次方 - 2 = 65534

    • C类地址:24位网络号,8位主机号,网络号的最高三位固定为110

      最小网络号也是第一个可指派的网络号192.0.0

      网络地址为192.0.0.0

      最大网络号也是最后一个可指派的网络号223.255.255

      网络地址为223.255.255.0

      可指派的网络数量为:2的(24-3)次方 = 2097152

      每个网络中可分配的IP地址数量为:2的8次方 - 2 = 254

    • D类地址:多播地址,网络号的最高四位固定为1110

    • E类地址:保留为今后使用,网络号的最高4位固定为1111

    • 网络类别的区分:

      小于127的为A类,128191的为B类,192223的为C类

      根据网络类别,就可找出地址中的网络号部分和主机部分(A类地址网络号为左起第一个字节,B类地址网络号为左起前两个字节,C类地址网络号为左起前三个字节)

      以下三种情况的地址不能指派给主机或路由器接口:

      1. A类网络号0和127
      2. 主机号为“全0”,这是网络地址
      3. 主机号为“全1”,这是广播地址

      地址0.0.0.0是一个特殊的IPv4地址,只能作为源地址使用,表示“在本网络上的本主机”。封装有DHCP Discovery报文的IP分组的源地址使用0.0.0.0;

      以127开头且后面三个字节非“全0”或“全1”的IP地址是一类特殊的IPv4地址,既可以作为源地址使用,也可以作为目的地址使用,用于本地软件环回测试,例如常用的环回测试地址127.0.0.1;

      地址255.255.255.255是一个特殊的IPv4地址,只能作为目的地址使用,表示“只在本网络上进行广播(各路由器均不转发)”

      注意事项:

      • 只有A类、B类和C类地址可分配给网络中的主机或路由器的各接口
      • 主机号为“全0”的地址是网络地址,不能分配给主机或路由器的各接口
      • 主机号为“全1”的地址是广播地址,不能分配给主机或路由器的各接口
  • 划分子网的IP地址

    需求:一个公司原来使用的是一个B类的网络,现在需要增加一些电脑并且,要分为三个网络,请问怎么解决这个问题?

    如果为新增网络申请新的网络号则会产生以下弊端:

    • 需要等待时间和花费更多的费用
    • 会增加其他路由器中路由表记录的数量
    • 浪费原有网络中剩余的大量IP地址

    从原有网络的主机号部分借用一部分作为子网号来划分子网。

    32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几个比特作为子网号

    • 子网掩码使用连续的比特1来对应网络号和子网号
    • 子网掩码使用连续的比特0来对应主机号
    • 将划分子网的IPv4地址与其相应的子网掩码进行逻辑与运算就可得到IPv4地址所在子网的网络地址

    给定一个分类的IP地址和其相应的子网掩码,就可知道子网划分的细节:

    • 划分出的子网数量
    • 每个子网可分配的IP地址数量
    • 每个子网的网络地址和广播地址
    • 每个子网可分配的最小和最大地址

    默认的子网掩码是指在未划分子网的情况下使用的子网掩码

    • A类地址的默认子网掩码:255.0.0.0
    • B类地址的默认子网掩码:255.255.0.0
    • C类地址的默认子网掩码:255.255.255.0

无类域间路由(CIDR)

  • 无类域间路由(CIDR)

    消除传统的A类、B类和C类地址界限,NetID + SubID ——> Network Prefix(Prefix)可以任意长度

    融合子网地址与子网掩码,方便子网划分,无类地址格式:a.b.c.d/x,其中x为前缀长度

    子网 201.2.3.64,255.255.255.192——>201.2.3.64/26

    提高IPv4地址空间分配效率

    提高路由效率,将多个子网聚合为一个较大的子网,构造超网

  • 路由聚合

    路由聚合(也叫汇总)是让路由选择协议能够用一个地址通告众多网络,旨在缩小路由器中路由选择表的规模,以节省内存,并缩短IP对路由选择表进行分析以找出前往远程网络的路径所需的时间。

    层级编址使得路由信息通告更高效

    选用更具体的路由:最长前缀匹配优先!

  • DHCP协议

    如何获得IP地址?

    1. “硬编码”,静态配置
    2. 动态主机配置协议-DHCP,从服务器动态获取IP地址、子网掩码、默认网关地址、DNS服务器名称与IP地址等。“即插即用”,允许地址重用,支持在用地址续租,支持移动用户加入网络。

    主机广播“DHCP discover”(发现报文)

    DHCP服务器利用“DHCP offer”(提供报文)进行响应

    主机请求IP地址:“DHCP request”(请求报文)

    DHCP服务器分配IP地址:“DHCP ack”(确认报文)

    DHCP工作过程示例

    在这里插入图片描述

    DHCP协议在应用层实现

    • 请求报文封装到UDP数据报中
    • IP广播
    • 链路层广播

    DHCP服务器构造ACK报文

    • 包括分配给客户的IP地址、子网掩码、默认网关、DNS服务器地址

网络地址转换(NAT)

NAT出现的动机

  • IPv4地址耗尽,只能从ISP申请一个IP地址
  • 本地网络设备IP地址的变更,无需通告外界网络
  • 变更ISP时,无需修改内部网络设备IP地址
  • 内部网络设备对外界网络不可见,即不可直接寻址(安全)

NAT的实现

  • 替换:利用(NAT IP地址,新端口号)替换每个外出IP数据报的(源IP地址,源端口号)
  • 记录:将每对(NAT IP地址,新端口号)与(源IP地址,源端口号)的替换信息存储到NAT转换表中
  • 替换:根据NAT转换表,利用(源IP地址,源端口号)替换每个进入内网IP数据报的(目的IP地址,目的端口号),即(NAT IP地址,新端口号)

NAT主要争议

  • 路由器应该只处理第三层功能
  • 违背端到端通信原则,应用开发者必须考虑到NAT的存在,e.g.,P2P应用
  • 地址短缺问题应该由IPv6来解决

NAT穿透问题

  • 客户期望连接内网地址为10.0.0.1的服务器,客户不能直接利用地址10.0.0.1直接访问服务器,对外唯一可见的地址是NAT地址:138.76.29.7
  • 解决方案1:静态配置NAT,将特定端口的连接请求转发给服务器
  • 解决方案2:利用UPnP互联网网关设备协议自动配置。学习到NAT公共IP地址,在NAT转换表中,增删端口映射。
  • 解决方案3:中继(如Skype)。NAT内部的客户与中继服务器建立连接,外部客户也与中继服务器建立连接,中继服务器桥接两个连接的分组。

互联网控制报文协议(ICMP)

ICMP Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制信息。控制信息是指网络不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

ICMP使用IP的基本支持,就像它是一个更高级别的协议,但是,ICMP实际上是IP的一个组成部分,必须由每个IP模块实现。

  • 互联网控制报文协议ICMP支持主机或路由器的差错报告、网络探询。

  • 差错报告报文:目的不可达、源抑制、超时/超期、参数问题、重定向

  • 网络探寻报文:回声请求与应答报文,时间戳请求与应答报文

  • 例外情况:

    几种不发送ICMP差错报告报文的特殊情况:

    • 对ICMP差错报告报文不再发送ICMP差错报告报文
    • 除第1个IP数据报分片外,对所有后续分片均不发送ICMP差错报告报文
    • 对所有多播IP数据报均不发送ICMP差错报告报文
    • 对具有特殊地址(如127.0.0.0或0.0.0.0)的IP数据报不发送ICMP差错报告报文

    几种ICMP报文已不再使用

    • 信息请求与应答报文
    • 子网掩码请求和应答报文
    • 路由器询问和通告报文
  • ICMP报文的格式

    在这里插入图片描述

  • ICMP差错报告报文数据封装

    在这里插入图片描述

IPv6

设计IPv6的动机

  • 最初动机:32位IPv4地址空间已分配殆尽

  • 其他动机:改进首部格式,快速处理/转发数据报,支持QoS

  • IPv6数据报格式:

    固定长度的40字节基本首部

    不允许分片

    在这里插入图片描述在这里插入图片描述

  • 优先级:标识数据报的优先级

  • 流标签:标识同一“流”中的数据报

  • 下一个首部:标识下一个选项首部或上层协议首部(如TCP首部)

  • 校验和:彻底移除,以减少每跳处理时间

  • 选项:允许,但是从基本首部移出,定义多个选项首部,通过“下一个首部”字段指示

  • ICMPv6:新版ICMP,附加报文类型,多播管理功能

IPv6地址表示形式

  • 一般形式:1080:0:FF:0:8:800:200C:417A
  • 压缩形式:FF01:0:0:0:0:0:0:43
  • IPv4-嵌入形式:0:0:0:0:0:FFFF:13.1.68.3 或 ::FFFF:13.1.68.3
  • 地址前缀:2002:43c:476b::/48(注:IPv6不再使用掩码)
  • URLs:http://[3FFE::1:800:200C:417A]:8000

IPv6基本地址类型

  • 单播:一对一通信
  • 多播:一对多通信
  • 任意播:一对一组之一(最近一个)通信

IPv4向IPv6过渡

  • 不可能在某个时刻所有路由器同时被更新为IPv6,不会有“标志性日期”,IPv4和IPv6路由器的网络如何运行?
  • 隧道:IPv6数据报作为IPv4数据报的载荷进行封装,穿越IPv4网络

路由算法

静态路由 VS 动态路由?

  • 静态路由

    手工配置

    路由更新慢

    优先级高

  • 动态路由

    路由更新快,定期更新,及时响应链路费用或网络拓扑变化

全局信息 VS 分散信息?

  • 全局信息:

    所有路由器掌握完整的网络拓扑和链路费用信息

    E.g. 链路状态(LS)路由算法

  • 分散信息:

    路由器只掌握物理相连的邻居以及链路费用

    邻居间信息交换、运算的迭代过程

    E.g. 距离向量(DV)路由算法

链路状态路由算法

  • Dijkstra算法

    所有结点(路由器)掌握网络拓扑和链路费用,通过“链路状态广播”,所有结点拥有相同信息

    计算从一个结点(“源”)到达所有其他结点的最短路径,获得该结点的转发表

    k次迭代后,得到到达k个目的结点的最短路径

    c(x,y): 结点x到结点y链路费用;如果x和y不直接相连,则=∞

    D(v): 从源到目的v的当前路径费用值

    p(v): 沿从源到v的当前路径, v的前序结点

    N’: 已经找到最小费用路径的结点集合

  • Dijkstra算法:讨论

    算法复杂性:n个结点

    每次迭代:需要检测所有不在集合N’中的结点w

    n(n+1)/2次比较:O(n^2)

    更高效的实现:O(nlogn)

    存在震荡(oscillations)可能

距离向量路由算法

距离向量路由算法,也叫做最大流量演算法,其被距离向量协议作为一个算法,如RIP,BGP,ISO IDRP,NOVELL IPX。使用这个算法的路由器必须掌握这个距离表(它是一个一维排列-“一个向量”),它告诉在网络中的所有节点(除了它自己本身)是等同的。这个表中的列代表直接和它相连的邻居,行代表在网络中的所有目的地。每个数据包括传送数据包到每个网上的目的地的路径和距离/或时间在那个路径上来传输(我们叫这个为“成本”)。这个在那个算法中的度量公式是跳跃的次数,等待时间,流出数据包的数量,等等。

在距离向量路由算法中,相邻路由器之间周期性地相互交换各自的路由表备份。当网络拓扑结构发生变化时,路由器之间也将及时地相互通知有关变更信息。

层次路由

层次路由中,网络节点按照不同的分族方法分为不同的族,网络的逻辑结构是层次的。一般来说,族的形成是基于传感器节点的剩余能量和族首的接近程度。

分层路由的主要目的是通过族间节点的多跳通信方式和执行数据融合来减少信息发送的次数,从而降低传感器网络节点的能源消耗。

Internet路由选择协议

路由选择协议规定了互联网中有关的路由器如何相互交换信息并生成出路由表。

互联网采用的路由选择协议主要是自适应的(即动态的)、分布式路由选择协议。由于以下两个原因,互联网采用分层次的路由选择协议:

  • 互联网的规模非常大。如果让所有的路由器知道所有的网络应怎样到达,则这种路由表将非常大,处理起来也太花时间。而所有这些路由器之间交换路由信息所需的带宽就会使互联网的通信链路饱和。
  • 许多单位不愿意外界了解自己单位网络的布局细节和本部门所采用的路由选择协议(这属于本部门内部的事情),但同时还希望连接到互联网上。

为此,可以把整个互联网划分为许多较小的自治系统,一般都记为AS。自治系统AS是在单一技术管理下的许多网络、IP地址以及路由器,而这些路由器使用一种自治系统内部的路由选择协议和共同的度量。每一个AS对其他AS表现出的是一个单一的和一致的路由选择策略。这样,互联网就把路由选择协议划分为两大类:

  • 内部网关协议IGP:RIP、OSPF、IS-IS等
  • 外部网关协议EGP:BGP

RIP协议

  • Internet采用层次路由

  • AS内部路由协议也称为内部网络协议IGP

  • 最常见的AS内部路由协议:

    路由信息协议:RIP

    开放最短路径优先:OSPF

    内部网关路由协议:IGRP(思科私有协议)

  • RIP早于1982年随BSD-UNIX操作系统发布

  • 距离向量路由算法

    距离度量:跳步数,每条链路1个跳步

    每隔30秒,邻居之间交换一次DV,成为通告

    每次通告:最多25个目的子网(IP地址形式)

  • RIP:链路失效、恢复

    如果180秒没有收到通告——>邻居/链路失效

    经过该邻居的路由不可用,重新计算路由

    向邻居发送新的通告

    邻居再依次向外发送通告(如果转发表改变)

    链路失效信息能否快速传播到全网?可能发生无穷计数问题

    毒性逆转技术用于预防乒乓环路

  • RIP路由表的处理

    RIP路由表是利用一个称作route-d的应用层进程进行管理,应用进程实现

    通告报文周期性地通过UDP数据报发送

OSPF协议

  • 开放:公众可用

  • 采用链路状态路由算法

    LS分组扩散(通告)

    每个路由器构造完整的网络(AS)拓扑图

    利用Dijkstra算法计算路由

  • OSPF通告中每个入口对应一个邻居

  • OSPF通告在整个AS范围泛洪,OSPF报文直接封装装到IP数据报中

  • 与OSPF极其相似的一个路由协议:IS-IS路由协议

  • OSPF的优点(RIP不具备)

    安全:所有OSPF报文可以被认证(预防恶意入侵)

    允许使用多条链路,可以针对不同的TOS设置多个不同的费用度量

    集成单播路由与多播路由:多播OSPF协议(MOSPF)与OSPF利用相同的网络拓扑数据

    OSPF支持对大规模AS分层

  • 分层的OSPF

    两级分层:局部区,主干区:

    • 链路状态通告只限于区内

    • 每个路由器掌握所在区的详细拓扑

    • 只知道去往其他区网络的“方向”(最短路径)

    区边界路由器:“汇总”到达所在区网络的距离,通告给其他区边界路由器

    主干路由器:在主干区内运行OSPF路由算法

    AS边界路由器:连接其他AS

BGP协议

边界网关协议(BGP)是运行于TCP上的一种自治系统的路由协议。BGP是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接协议。BGP构建在EGP的经验之上。BGP系统的主要功能是和其他的BGP系统交换网络可达信息。网络可达信息包括列出的自治系统(AS)的信息。这些信息有效地构造了AS互联的拓扑图并由此清除了路由环路,同时在AS级别上可实施策略决策。

OSPF报文直接封装装到IP数据报中

  • 与OSPF极其相似的一个路由协议:IS-IS路由协议

  • OSPF的优点(RIP不具备)

    安全:所有OSPF报文可以被认证(预防恶意入侵)

    允许使用多条链路,可以针对不同的TOS设置多个不同的费用度量

    集成单播路由与多播路由:多播OSPF协议(MOSPF)与OSPF利用相同的网络拓扑数据

    OSPF支持对大规模AS分层

  • 分层的OSPF

    两级分层:局部区,主干区:

    • 链路状态通告只限于区内

    • 每个路由器掌握所在区的详细拓扑

    • 只知道去往其他区网络的“方向”(最短路径)

    区边界路由器:“汇总”到达所在区网络的距离,通告给其他区边界路由器

    主干路由器:在主干区内运行OSPF路由算法

    AS边界路由器:连接其他AS

BGP协议

边界网关协议(BGP)是运行于TCP上的一种自治系统的路由协议。BGP是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接协议。BGP构建在EGP的经验之上。BGP系统的主要功能是和其他的BGP系统交换网络可达信息。网络可达信息包括列出的自治系统(AS)的信息。这些信息有效地构造了AS互联的拓扑图并由此清除了路由环路,同时在AS级别上可实施策略决策。


http://chatgpt.dhexx.cn/article/uexTEXAp.shtml

相关文章

第三层:网络层

第五章&#xff1a;网络层 网络层关注的是如何将源端数据包一路送到接收方&#xff0e;为了将数据包送到接收方&#xff0c;可能 沿途要经过许多跳&#xff08;hop&#xff09;中间路由器。这种功能显然与数据链路层的功能不同&#xff0c;数据链路层的目标没那么宏伟&#xf…

网络原理——网络层与数据链路层

JavaEE传送门 JavaEE 网络原理——No.3 传输层_TCP的滑动窗口, 流量控制与拥塞控制 网络原理——No.4 传输层_TCP协议中的延迟应答, 捎带应答, 面向字节流与TCP的异常处理 目录 网络层IP 协议IP 地址路由选择 数据链路层以太网 网络层 网络层做的工作, 就是两点之间, 规划出一…

网络层概述

网络层概述 因特网网络层的三个主要组件网络层的主要功能网络层的类型虚电路网络数据报网络 路由器的硬件体系结构 因特网网络层的三个主要组件 IP&#xff08;网际&#xff09;协议因特网路由选择协议ICMP&#xff08;因特网控制报文协议&#xff09; 网络层的主要功能 前面…

网络层的作用

我们知道网络层处于数据链路层和传输层之间&#xff0c;它在数据报文包的传递中起到了重要作用。 我们来看上面这张图。左边的主机想和右边的主机通话&#xff0c;那么这个数据包一定会经过网络。中间灰色的圆圈是路由器&#xff0c;他们组成了一个网络&#xff0c;数据链路层只…

网络层和传输层

一.网络层的功能 定义了基于IP协议的逻辑地址 连接不同的媒介类型 选择数据通过网络的最佳路径 二.ICMP协议 ICMP是一个“错误侦测与回馈机制” 通过IP数据包封装的 用来发送错误和控制消息 ICMP协议的封装 ICMP协议属于网络层协议 ICMP数据的封装过程 ICMP消息类型和编码…

四、网络层(一)网络层的功能

目录 1.0 网络层的功能 1.1 异构网络互连 1.2 路由选择与分组转发 1.3 软件定义网络(SDN) 1.4 拥塞控制 1.0 网络层的功能 网络层的主要任务就是将分组从源主机经过多个网络和多段链路传输到目的主机&#xff0c;可以将该任务划分为分组转发和路由选择两种重要的功能。 …

TCP/IP——网络层

TCP/IP——网络层 一、网络层协议 网络层继承被称之为IP层。但网络层协议并不只是IP协议&#xff0c;还包括ICMP&#xff08;Internet control Message Protocol&#xff09;协议、IPX&#xff08;Internet Packet Exchange&#xff09;协议 IP寻址&#xff1a;能过上网的设备…

计算机网络 | 网络层 | 什么是网络层 | 详解

本博客为个人笔记&#xff0c;篇幅较长&#xff0c;内容较多&#xff0c;因时间原因&#xff0c;内容中的重点部分没有重点标出&#xff0c;望谅解。如有错误&#xff0c;欢迎各位前来纠正。 目录 一.网络层提供的两种服务 1.虚电路服务 2.电话机与现代计算机的区别 3.数据…

计算机网络-网络层

网络层 1. 前言2. 网络层的作用3. 网络层数据交换4. 网络层协议及报文格式5. ARP与RARP6. 国际控制报文协议ICMP 1. 前言 网络层介于传输层和数据链路层之间&#xff0c;其主要作用是实现两个网络系统之间的数据透明传送&#xff0c;具体包括路由选择&#xff0c;拥塞控制和网…

计算机网络(五):网络层

文章目录 1. 网络层概述1.1 路由器工作原理 2. IP&#xff1a;网际协议2.1 IPv4数据报格式2.2 IP地址2.2.1 IP地址的分类2.2.2 广播和多播2.2.3 子网和子网掩码2.2.4 CIDR与VLSM2.2.5 公有地址和私有地址 2.3 路由控制2.4 IP 分片和重组2.4.1 路径 MTU 发现 2.5 IPv62.5.1 IPv6…

网络层与传输层

目录 一、网络层 &#xff08;一&#xff09;IP数据包格式 &#xff08;二&#xff09;ICMP协议介绍 &#xff08;三&#xff09;ARP协议介绍 &#xff08;四&#xff09;ARP攻击原理 &#xff08;五&#xff09;ping命令及tracert &#xff08; 六&#xff09;ARP命令 …

网络层——IP协议

网络层 网络层概述 网络层主要考虑数据传输的路上问题&#xff0c;在复杂的网络环境中确定一个合适的路径。 网络层设计要尽量简单&#xff0c;向上层只提供简单灵活的、无连接的、不保证可靠性的数据报服务。网络层不提供服务质量的承诺&#xff01; IP 数据报的格式 如何分…

计算机网络——网络层

目录 4.1 网络层概述 4.2 网络层提供的两种服务 面向连接的虚电路服务 无连接的数据报服务 4.3 IPv4地址 IPv4地址概述 分类编址的IPv4地址 划分子网的IPv4地址 无分类编制的IPv4地址 IPv4地址的应用规划 4.4 IP数据报的发送和转发过程 4.5 静态路由配置 默认路由和…

详解网络层_计算机网络

目录 1. 网络层提供的两种服务 2. 网际协议IP 3.虚拟互联网络 4. IP地址 IP地址的划分方法 点分十进制 IP地址指派范围 IP地址的重要特点 5. IP地址与MAC地址 1. 网络层提供的两种服务 首先&#xff0c;网络层的引入主要是为了屏蔽不同网络的差异&#xff0c;实现不同网络…

计算机网络(四)_网络层

相关博文&#xff1a; 计算机网络入门 计算机网络物理层 计算机网络-数据链路层 与网络层相关的IP地址与子网掩码单独抽出于下 IP地址 计算机网络-域名与IP地址详解 子网掩码与子网划分 计算机网络-子网掩码与子网划分 文章目录 IP地址子网掩码与子网划分一些基本概念网络层提供…

应用层、传输层、网络层、数据链路层

应用层 包括&#xff1a;应用服务 &#xff08;FTP&#xff08;FileTransfer Protocol&#xff0c;文件传输协议&#xff09;和DNS&#xff08;Domain NameSystem&#xff0c;域名系统&#xff09;&#xff09;发送HTTP请求DNS域名解析系统&#xff1a;提供通过域名&#xff0…

计算机网络之网络层

一、概述 网络层介于传输层和数据链路层之间&#xff0c;其主要作用是实现两个网络系统之间的数据透明传送&#xff0c;具体包括路由选择&#xff0c;拥塞控制和网际互连等。网络层是网络与网络之间通信的最底层&#xff0c;在数据从数据链路层向传输层进行数据传输的通信中&a…

计算机网络-网络层详细讲解

目录 网络层概述 网络层提供的两种服务 面向连接的虚电路服务 无连接的数据报服务 IPv4地址 IPv4地址概述 概述 表示方法 分类编址的IPv4 A类地址 B类地址 C类地址 练习 划分子网的IPv4地址 子网掩码 32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几个比特…

网络层

一、概述 1、网络层是OSI参考模型中的第三层&#xff0c;介于传输层和数据链路层之间&#xff0c;它在数据链路层提供的两个相邻端点之间的数据帧的传送功能上&#xff0c;进一步管理网络中的数据通信&#xff0c;将数据设法从源端经过若干个中间节点传送到目的端&#xff0c;从…

网络五大层介绍,看完你就懂

当前的网络协议是分层的&#xff1a;应用层&#xff0c;传输层&#xff0c;网络层&#xff0c;数据链路层&#xff0c;物理层 目录 应用层 传输层 UDP协议 数据报格式 TCP(传输控制协议&#xff09; 报文格式 1.确认应答&#xff08;核心&#xff09; 2.超时重传 3.连接…