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

article/2025/9/16 3:34:43

本文主要讲述了 IP 数据报的发送和转发过程,参考:计算机网络微课堂

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

  • 主机发送 IP 数据报
  • 路由器转发 IP 数据报

说明:后续举例忽略了 ARP 协议获取目的主机或路由器接口的 MAC 地址的过程以及以太网交换机自学习和转发帧的过程
 

IP 数据报的发送和转发过程 —— 举例说明

如图所示小型互连网,路由器接口 0 和接口 1 分别直连一个交换式以太网,网络地址和子网掩码如图所示:
在这里插入图片描述

  • 同一个网络中的主机可以直接通信,这属于 直接交付;不同网络间的主机,需要路由器中转,这属于 间接交付
     

问题 1 : 那么,源主机如何判断目的主机是否与自己在同一个网络中呢 ?

假设主机 C 向主机 F 发送 IP 数据报。首先,主机 C 将自己的 IP 地址和子网掩码相与,得到主机 C 所在网络的网络地址。 之后,主机 C 将主机 F 的 IP 地址与自己的子网掩码相与,得到目的网络地址。发现它们两个不相等,因此知道这是间接交付,需要路由器转发。
在这里插入图片描述
问题 2 : 源主机如何知道路由器的存在 ?

这就涉及到了 默认网关。可以通过指定路由器某接口的 IP 地址指定给各主机,所指定的路由器就被称为默认网关。

缺省网关(Default Gateway),也就是默认网关,是子网与外网连接的设备,通常是一个路由器。当一台计算机发送信息时,根据发送信息的目标地址,通过子网掩码来判定目标主机是否在本地子网中,如果目标主机在本地子网中,则直接发送即可。如果目标不在本地子网中则将该信息送到缺省网关/路由器,由路由器将其转发到其他网络中,进一步寻找目标主机。 —— 百度百科

在这里插入图片描述
问题 3 : 路由器收到 IP 数据报后如何转发 ?

  1. 首先,检查数据报首部是否出错: 若出错,则直接丢弃该 IP 数据报并通告源主机; 若没有出错,则进行转发
  2. 之后,根据 IP 数据报的目的地址在路由表中查找匹配的条目: 若找到匹配的条目,则转发给条目中指示的下一跳; 若找不到,则丢弃该 IP 数据报并通告源主机
    在这里插入图片描述

下面来看发送广播 IP 数据报的情况

  1. 假设主机 A 给本网络上各设备发送了一个广播 IP 数据报。
    在这里插入图片描述
    路由器是隔离广播域的,收到后不会转发广播 IP 数据报,避免了广播风暴和资源浪费

  2. 假设主机 A 向另一个网络发送广播 IP 数据报。
    在这里插入图片描述
    路由器判断出这是广播 IP 数据报,不对其进行转发

相关练习题

  • 习题一
    在这里插入图片描述
  • 习题二
    在这里插入图片描述
  • 习题三
    在这里插入图片描述

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

相关文章

IP数据报头部

1.4位版本号:对于ipv4,其值是4 2.4位头部长度:表示ip的头部有多少4字节。4位最大表示15,因此ip数据报头部最长是60字节 3.16位总长度:以字节为单位。最大的位2^16-1,但是由于MUT的限制,超过MUT的都被分片…

IP数据报报头详解

在IP网络中传输的单位称为IP数据包,它包括IP报头与更高层协议的相关数据。IP数据包的报头至少为20个字节,其中包括版本号,报头长度,服务类型,数据报总长度,标识,标志,片偏移,生存时间…

[计算机网络] UDP数据字段 划分 IP数据报

题目 : 一个UDP用户数据报的数据字段为8192字节。在链路层要使用以太网来传送。 试问应当划分为几个IP数据报片?说明每一个IP数据报片的数据字段长度和 片偏移字段的值。 分析 : 首先我们知道 U D P 数 据 报 首 部 8 字 节 数 据 部 分 UDP数据报首部8字节数据部分 UDP数据…

IP 数据报首部分析

来来来, 爷们. 不是一直说纸上得来终觉浅么. 今咱就抓个数据报具体看一看真实网络中的 IP 报首部. 操作方法很简单, 使用wireshark进行抓包. 抓包后随便找个包看一下就行, 毕竟所有通信的包都需要经过网络层.(同时, wireshark会对协议的相关信息给出标识, 更方便我们查看) 其中…

​IP数据报的格式(计算机网络)

目录 一、IP 数据报由首部和数据两部分组成 二、IP 数据报的分片 三、IP数据报分片实例 四、IP 数据报首部的固定部分中的各字段 五、协议字段的作用 一、IP 数据报由首部和数据两部分组成 版本——占 4 位,指 IP 协议的版本 目前的 IP 协议版本号为 4 (即 IPv4…

Wireshark分析IP数据报

Wireshark分析IP数据报 1. IP数据报格式 总概 2. IP数据报首部的固定部分各字段 版本【4位】:IPv4或IPv6首部长度【4位】:单位是32bit(4字节),比如:首部最小长度为20字节,此时为:…

IP数据报的格式

IP数据报的格式能够说明IP协议具有什么功能,在TCP/IP的标准中,各种数据格式常以32位(4字节)为单位来描述。 一个IP数据包有首部和数据两部分组成。首部的前一部分是固定长度,占20字节,是所有IP必须有的。在…

图解IP数据报格式

IP数据报格式详解 IP数据报的首部格式及其内容是实现IP协议的主要功能的基础,因此我们有必要搞清楚这部分的内容。 一个IP数据报由20字节的固定部分和最大40字节的可变部分组成。 ■ 固定部分:指每个IP数据报首部都必须包含的部分。 ■ 可变部分&#…

计算机网络---IP数据报

(一)IP数据报格式 TCP/IP协议栈 IP数据报格式: 版本:IP协议的版本号 IPv4/IPv6 首部长度:单位是4B,最小为5,以4字节为单位 固定部分20B 区分服务:指示期望获得哪种类型的…

【IP协议(一)】——IP数据报格式及其含义,IP数据报的切分

💂 个人主页:努力学习的少年🤟 版权: 本文由【努力学习的少年】原创、在CSDN首发、需要转载请联系博主💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 🚀 IP数据报格式 版本:占4位,指…

IP数据报的首部

IP数据报的首部 注:IP数据报的格式,能够说明IP协议都具有什么功能。 1. IP数据报首部——固定部分 1.1 版本 占4位,指IP协议的版本。通信双方使用的IP协议的版本必须一致。IP协议版本号为4(即IPv4),IP协议版本号为6(即IPv6)…

计算机网络——IP数据报分析

目录 🛴一、IP数据报简介 🛹二、Wireshark抓包分析 🛴一、IP数据报简介 版本:占4比特,表示IP协议的版本。通信双发使用的IP版本必须一致 首部长度:占4比特,表示IP数据报首部的长度。该字段的取…

IP数据报格式详解

IP协议提供不可靠无连接的数据报传输服务,IP层提供的服务是通过IP层对数据报的封装与拆封来实现的。IP数据报的格式分为报头区和数据区两大部分,其中报头区是为了正确传输高层数据而加的各种控制信息,数据区包括高层协议需要传输的数据。 IP…

网络层——IP数据报详解

IP数据报格式 各个字段的分析: 版本 4位    指IP协议的版本,通信双方使用的IP协议版本必须保持一致。主要用两个版本IPV4、IPV6首部长度 4位   4位表示的最大十进制数是15。注意,首部长度字段所表示数的单位是32位(也就是4个…

IP数据报

文章目录 前言一、IP数据报的格式1.IP数据报2.数据报中各个字段的意义 二、ICMP(Internet控制报文协议)1.报文格式2.常见应用 三、ARP协议四、路由表 前言 在前面的学习中我们学习了数据的封装和解封装,了解了封装是从发送端由上向下一层一层…

IPv4数据报的首部格式

版本:占4比特,表示IP协议的版本,通信双方使用的IP协议的版本必须一致。目前广泛使用的IP协议版本号为4 首部长度占4比特,表示IP数据报首部的长度。该字段的取值以4字节为单位。最小十进制取值为5,表示IP数据报首部只有…

EXE4J 错误提醒 Pleasedefine EXE4J_JAVA_HOME to point to an installes 64-bit JDK or JRE

EXE4J 错误提醒 Please define EXE4J_JAVA_HOME to point to an installed 64-bit JDK or JRE 首先查看上一步的提醒,这里显示支持的版本为最小1.8到最大11,而我环境变量配置为13,版本过高 解决办法 1、添加符合版本的jdk 2、升级exe4j …

首次使用exe4j遇见的问题

exe4j安装注册: https://www.cnblogs.com/jepson6669/p/9211208.html 问题一、安装exe4j 问题和解决方法描述: 大概是这个意思,安装这个exe4j需要jvm,你的电脑上要有jdk和jre,并且这个jdk版本必须是1.8~11之间的64…

exe4j下载和使用(超详细)

1、下载exe4j 链接: 点击下载 提取码: b3cy 1.1、安装步骤就不说了,按照提示一步一步进行即可 2、这里使用的jar包是maven项目打包出来的jar PS:注意 这里针对的是maven项目打包成的jar,如果是普通Java项目打包成的jar 请参考别的文章2.1…

exe4j 打包 jar 文件为 exe 文件(GUI程序)

exe4j 打包 jar 文件为 exe 文件(GUI程序) 1、资源分享2、把项目打包成 exe 文件2.1 把项目打包成 jar 包(用 fatjar 打包项目)(1) 把 net.sf.fjep.fatjar_0.0.32.jar 包放入 eclipse\plugins 目录下(2) 完成第一步后,…