网络层-第四节:IP数据报的发送和转发过程
Posted 快乐江湖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了网络层-第四节:IP数据报的发送和转发过程相关的知识,希望对你有一定的参考价值。
- 获取pdf:密码7281
- 专栏目录首页:【专栏必读】王道考研408计算机网络+湖科大教书匠计算机网络+网络编程万字笔记、题目题型总结、注意事项、目录导航和思维导图
- 王道考研408计算机组成原理万字笔记
- 王道考研408数据结构+计算机算法设计与分析万字笔记
- 王道考研408操作系统+Linux系统编程万字笔记
文章目录
本节对应视频如下
一:概述
IP数据报的发送和转发过程:包含以下两个部分
- 主机发送IP数据报
- 路由器转发IP数据报
为了将重点放在TCP/IP协议栈的网际层发送和转发IP数据报的过程上,在之后的举例中,我们忽略使用ARP协议来获取目的主机或路由器接口的MAC地址的过程以及以太网交换机自学习和转发帧的过程
二:举例
如下图是一个小型互联网,路由器接口0直连了一个交换式以太网,接口1也直连了一个交换式以太网。给左侧和右侧网络分别分配了如下的网络地址和子网掩码、给网络中的主机和路由器的接口配置了相应的IP地址和子网掩码
①:首先源主机如何知道目的主机是否与自己在同一个网络中?
- 假设主机C要给主机F发送IP数据报
- 主机C将自己的IP地址和子网掩码相与,得到主机C所在的网络地址为
192.168.0.0
- 主机C将主机F的IP地址与自己的子网掩码相与,得到目的网络地址为
192.168.0.128
- 该地址与主机C的网络地址不相等,因此主机C就知道了主机F与自己不在同一网络中,它们之间的通信属于间接交付
- 于是主机C将IP数据报传输给路由器,由路由器将IP数据报转发给主机F
②:那么主机又是如何知道应该把IP数据报交给哪个路由器进行转发呢?实际上,用户为了让本网络中的主机能和其他网络中的主机通信,就必须给其指定本网络中的一个路由器,由该路由器进行转发,所指定的路由器称之为默认网关,于是
- 可以将路由器接口0的IP地址指定给该接口所直连网络中的各个主机作为默认网关
- 可以将路由器接口1的IP地址指定给该接口所直连网络中的各个主机作为默认网关
假设本例中的主机A要给主机D发送IP数据报,主机A就会将该IP数据报传输给自己的默认网关,也就是图中所示的路由器
③:路由器收到数据报后应该如何转发?
- 检查IP数据报首部是否出错
- 若出错,则直接丢弃该IP数据报并通告源主机
- 若没有出错:则进行转发
- 根据IP数据报的目的地址在路由表中查找匹配的条目
- 若找到,则转发给条目中所指示的下一跳
- 若找不到,则丢弃该IP数据报并通告源主机
当我们给路由器的接口配置IP地址和子网掩码时,路由器就已经知道了自己的该接口与哪个网络是直连的,例如在本例中
- 接口0所直连的网络是
192.168.0.0
,相应地址掩码为255.255.255.128
,不需要下一跳路由器 - 接口1所直连的网络是
192.168.0.128
,相应地址掩码为255.255.255.128
,不需要下一跳路由器 - 注意:路由表中可能还会有其他路由条目,这可以是用户或网络管理员手工配置的静态路由,也可以是使用路由协议自动获取的动态路由
三:路由器可以隔离广播域
如下图,假设主机A给本网络上的各设备发送了一个广播IP数据报,在数据报首部的目的地址字段可以填写的目的地址为192.168.0.127
(本网络广播地址),也可以填写255.255.255
(受限的广播地址)。该网络中的各设备都会收到此广播IP数据报,但是路由器收到后并不会对其进行转发,也就是说,路由器是隔离广播域的
以上是关于网络层-第四节:IP数据报的发送和转发过程的主要内容,如果未能解决你的问题,请参考以下文章