计算机网络:网络层 —— IP数据报的发送和转发过程

news/2024/12/5 18:03:51/

文章目录

IP数据报的发送和转发过程

IP 数据报的发送和转发过程包含以下两个过程:

  1. 主机发送IP数据报
  2. 路由器转发IP数据报

![[<a class=IP数据报的发送和转发.png]]" />

  • 直接交付:源主机与目的主机同一网络
  • 间接交付:源主机与目的主机不在同一网络中,需要借助路由器转发数据报。

源主机通过比较与目的主机的网络前缀是否相同,可判断出目的主机是否与自己在同一个网络

![[源主机与目的主机比较.png]]

主机发送IP数据报
  1. 确定目的网络

    • 主机(例如主机C)想要发送数据到另一个主机(例如主机F),首先会确定目的主机 F 的IP地址

    • 主机C 将自己的 IP 地址和子网掩码进行与运算,得到自己所在网络网络地址

    • 接着,主机C 将目的 主机F 的 IP 地址与自己的子网掩码进行与运算,得到目的网络地址

    • 如果目的网络地址与主机C的网络地址相同,说明两者在同一网络中,可以直接通信;如果不同,则需要通过路由器进行转发

  2. 指定默认网关

    • 如果目的主机 F 与主机 C 不在同一网络中,主机 C 需要将 IP 数据报发送给路由器(默认网关,为同一网络中的各主机指定的一个路由器)进行转发。

    • 默认网关是用户或网络管理员配置的一个路由器接口,用于帮助主机 C 将 IP 数据报转发到其他网络

路由器转发IP数据报
  1. 接收报文

    • 路由器首先接收从 主机C 发送过来的 IP 数据报。

    • 检查收到的 IP 数据报是否正确,生存时间是否结束,首部是否误码

    • 若不正确,则丢弃该 IP 数据报,并向发送该 IP 数据报的源主机发送 ICMP 差错报告

  2. 解析目标IP地址

    • 路由器检查 IP 数据报头部的目标 IP 地址,确定数据报应该被转发到哪个网络

    • 若找到匹配的路由条目,则按该路由条目的指示进行转发,否则丢弃该 IP 数据报,并向发送该 IP 数据报的源主机发送 ICMP 差错报告

    • 路由器不转发广播IP数据报,即路由器隔离广播域。如果因特网中数量巨大的路由器收到广播 IP 数据报后都进行转发,则会造成巨大的广播风暴,严重浪费因特网资源。

![[解析目标IP地址.png]]

  1. 查找最佳匹配路径

    • 路由器在其路由表中查找与目标 IP 地址匹配的路由条目。

    • 路由表可能包含静态路由(由管理员手动配置)和动态路由(由路由器通过路由协议自动获取)。

  2. 确定下一跳路由器

    • 根据路由表的信息,路由器确定 IP 数据报应该被转发给哪个下一跳路由器。

    • 这个决定通常基于最佳匹配的原则,即选择能够最有效地将数据报送达目标网络的路由器

  3. 转发报文:一旦确定了下一跳路由器,路由器就将 IP 数据报发送到相应的接口,以便下一跳路由器可以继续处理这个数据报。

  4. 更新报文头部(可选):在转发报文之前,路由器可能会更新报文头部中的 TTL(生存时间)字段,并重新计算报文头部的校验和。

  5. 发送报文:最后,路由器将 IP 数据报发送给下一跳路由器,或者直接发送到目标网络中的主机。

示例

![[习题.png]]

根据题目要求,以下是详细解答:

(1) 设备1、设备2和设备3分别应选择什么类型网络设备?

  • 设备1:交换机(无VLAN功能)
  • 设备2:路由器
  • 设备3:交换机(无VLAN功能)

(2) 设备1、设备2 和 设备3 中,哪几个设备的接口需要配置 IP 地址?并为对应的接口配置正确的 IP 地址。

  • 设备1:不需要配置IP地址。
  • 设备2
    • IF1: 192.168.1.54/30
    • IF2: 192.168.1.65/26
  • 设备3:不需要配置IP地址。

(3) 若主机 H3 发送一个目的地址为 192.168.1.127 的 IP 数据报,网络中哪几个主机会收到该数据报?

首先,我们需要确定 192.168.1.127 是否在同一个子网内。主机 H3 的子网掩码是 /26,即前 26 位是网络部分,后 6 位是主机部分。

  • 主机 H3 的 IP 地址:192.168.1.66/26
  • 目标地址:192.168.1.127

计算目标地址的网络部分:

192.168.1.127
& 255.255.255.192
-----------------
192.168.1.120

因此,目标地址 192.168.1.127 不在同一子网内(192.168.1.64/26)。

所以,只有主机 H3 会收到该数据报,其他主机不会收到。


http://www.ppmy.cn/news/1543758.html

相关文章

奇瑞不客气智驾 晚不晚?

文/孔文清 一直很好奇&#xff1a; 尹同跃董事长的金句“智驾不客气”&#xff0c;应该怎么翻译成英语&#xff1f; 谷俊丽的演讲PPT给了我答案&#xff1a; All in Ai Cars ——全力以赴、全情投入智能化汽车。 谷俊丽是奇瑞全球创新大会上最兴奋的人之一&#xff0c;有一种闭…

Flink CDC系列之:学习理解核心概念——Data Sink

Flink CDC系列之&#xff1a;学习理解核心概念——Data Sink sink参数示例 sink 数据接收器用于应用架构更改并将更改数据写入外部系统。 数据接收器可以同时写入多个表。 参数 为了描述数据接收器&#xff0c;需要以下内容&#xff1a; 参数含义可选/必需typesink的类型&…

【计算机网络】零碎知识点(易忘 / 易错)总结回顾

一、计算机网络的发展背景 1、网络的定义 网络是指将多个计算机或设备通过通信线路、传输协议和网络设备连接起来&#xff0c;形成一个相互通信和共享资源的系统。 2、局域网 LAN 相对于广域网 WAN 而言&#xff0c;局域网 LAN 主要是指在相对较小的范围内的计算机互联网络 …

kali——tcpdump的使用

目录 前言 使用方法 监听指定网卡 将抓取的数据包保存到指定文件 读取数据包 前言 定义&#xff1a;tcpdump 是 Linux 系统下的一个强大的命令行式数据包嗅探工具&#xff0c;它能够实时捕获网络接口上的数据包&#xff0c;并将这些数据包的头部信息或完整内容显示出来或保…

CSS3新增盒子属性(三)

1、CSS3新增盒子属性 1.1 box-sizing 设置盒子的大小。 content-box&#xff1a;设置内容区的大小&#xff1b;border-box&#xff1a;设置盒子的总大小。 <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8"><t…

《向量数据库指南》——解锁GenAI生态系统新纪元

哈喽,大家好!我是你们的老朋友,大禹智库的向量数据库高级研究员王帅旭,也是那本备受好评的《向量数据库指南》的作者。今天啊,咱们来聊聊生成式人工智能(GenAI)生态系统,特别是向量数据库在其中扮演的关键角色。这话题可有意思了,保证让你大开眼界! 自从20个月前Cha…

2024年10月28日练习(双指针算法)

一.11. 盛最多水的容器 - 力扣&#xff08;LeetCode&#xff09; 1.题目描述&#xff1a; 这个题目代表的意思就是数组上每个对应的值就相当于每条垂直线的高度&#xff0c;就相当于短板效应&#xff0c;两 个高度的线会取最短的长度因为那样水才不会漏。而两条线的数组的下标…

Windows 上更新OpenSSL 到 1.1.1

在 Windows 上更新 OpenSSL 到 1.1.1 版本可以通过以下步骤完成&#xff1a; 步骤 1&#xff1a;下载 OpenSSL 1.1.1 安装包 由于 OpenSSL 官网不直接提供 Windows 安装包&#xff0c;可以通过以下两个可靠的第三方站点下载预编译的 OpenSSL 1.1.1 版本&#xff1a; Shining …