网络层学习常见问题及答案整理

问题0:ARP解析协议的定义和特点
ARP(地址解析协议)高速缓存表用于存储IP地址到MAC地址的映射关系。当一台主机需要将IP数据包发送到同一局域网中的另一台主机时,它需要知道目标主机的MAC地址,以便在以太网帧中使用。ARP高速缓存表就是用来存储这些映射关系的,以便快速查找和使用。

ARP高速缓存表的特点
缓存:通过在本地缓存IP地址到MAC地址的映射关系,主机可以减少发送ARP请求的次数,从而减少网络上的广播流量。

需要时已有目标IP地址则直接使用:当主机需要发送数据包时,如果ARP高速缓存表中已经有目标IP地址对应的MAC地址,它可以直接使用这个地址,而不需要等待ARP请求的回应,从而加快了数据包的发送速度。

旧数据超时自动删除:ARP高速缓存表中的条目通常有一个超时机制,过期的条目会被自动删除。这有助于保持表的更新,以适应网络配置的变化,从而维护网络的稳定性。

注:

问题1: 同一个网络中的不同主机可以直接通信,称为“直接交付”,不同网络中的主机不可以直接发送信息,只能通过路由器中转发送,称为“间接交付”。那源主机如何判断目的主机和自己是否在同一个网络里呢

一个主机的IP地址和自己的子网掩码相与,会得到该主机所在的网络号。
假设主机C要给主机F发送数据,那主机F的ip地址肯定是已知的。就拿主机F的ip地址和主机C自己的子网掩码相与,看看和主机C所在的网络号是否相等,如果相等,那主机C和F就是在同一个网络里,否则就不在同一个网络。

问题2:那么假设主机C和主机F不在同一个网络里,主机C又是怎么知道该交由哪一个路由器转发信息呢?

我们可以将某个路由器的某接口的IP地址指定给该接口所直连网络中的每个主机,又称为“默认网关”。当本网络的主机需要和其他网络的主机通信时,会将IP数据报发送给默认网关,由默认网关帮主机把ip数据报转发出去。

问题3:当发生间接交付时,路由器收到IP数据报后又是如何完成转发的呢?

1、检查收到的IP数据报是否正确:例如生存时间是否结束;首部是否误码;
若不正确,则丢弃该IP数据报,并向发送该IP数据报的源主机发送差错报告。
2、基于IP数据报首部中的目的IP地址在路由表中进行查找。
若找到匹配的路由条目,则按该路由条目的指示进行转发,否则丢弃该IP数据报,并向发送该IP数据报的源主机发送相应的ICMP差错报告。
在我们给路由器的接口0配置IP地址和地址掩码后,路由器就可自行得出自己的接口0所直连网络的网络地址和地址掩码。
在我们给路由器的接口1配置IP地址和地址掩码后,路由器就可自行得出自己的接口1所直连网络的网络地址和地址掩码。
当获取到IP数据报后,路由器根据IP数据报中的目的IP地址在自己的路由表中查找匹配的路由条目。将目的IP地址与路由表各个行中的地址掩码进行逐比特与运算,若与该行的目的网络相同,则为匹配成功,路由器发现匹配的路由条目中的下一跳的指示为接口1直连。
则路由器只需通过ARP协议获取到与自己的接口1处于同一个网络中的目的主机MAC D的地址,就可将IP数据报封装成帧后发送给目的主机D。

问题4:路由器会对广播信号进行转发吗?

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

问题5:同一个网络的不同机号如何相连?

使用交换机将同一网络的不同主机相连。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/736021.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue脚手架

Vue脚手架 学习目标: 理解Node.js基本使用方法理解包资源管理器NPM的使用理解webpack的作用理解 vue-cli 脚手架 (重点)Element-UI 组件库 1.vue的格式:new Vue({//作用的视图el:"id选择器",//vue中的数据/*data:{key:value,key:value,...}…

Mysql实现分布式锁

Mysql实现分布式锁 Mysql实现分布式锁 Mysql实现分布式锁 通过数据库的唯一索引和事务的特性来实现分布式锁。 自定义一个表 -- 创建分布式锁表 CREATE TABLE DistributedLock(lock_key VARCHAR(64) NOT NULL,lock_value VARCHAR(255),PRIMARY KEY (lock_key) );-- 尝试获取…

Java 基于微信小程序的快递柜小程序

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…

harmony 鸿蒙安全和高效的使用N-API开发Native模块

简介 N-API 是 Node.js Addon Programming Interface 的缩写,是 Node.js 提供的一组 C API,封装了V8 引擎的能力,用于编写 Node.js 的 Native 扩展模块。通过 N-API,开发者可以使用 C 编写高性能的 Node.js 模块,同时…

【python3】线程同步机制 Condition

threading.Condition 是 Python 中用于线程同步的一种机制,它提供了一个条件变量,允许一个或多个线程等待某个条件变为真时再继续执行。Condition 对象内部包含一个锁对象,线程可以在调用 wait() 方法时释放这个锁,并在条件满足时…

devops-Jenkins【内网环境部署及插件安装】

1、准备工作 外网Linux机器一台,内网Linux机器一台。硬件环境要求:至少1GB的可用内存空间,至少50GB的可用硬盘空间。软件环境需求:需要安装好Java8,Java的运行环境JRE1.8或者Java的开发工具包JDK1.8都可以。 2、外网安…

结构指针的使用

结构指针的使用 指针类型变量: 指针类型,是变量类型的一种,它是专门用来存储变量的地址的。 例如 int *p; 表示p是一个指针变量,它用来存储某个整型变量的地址。 int a5; int *p&a; 这样,就将整型变量a的地…

体系班第十三节

1判断完全二叉树递归做法 有四种情况&#xff1a;1 左树完全&#xff0c;右数满&#xff0c;且左高为右高加一 2左满 &#xff0c;右满&#xff0c;左高为右高加一 3左满&#xff0c;右完全&#xff0c;左右高相等 4左右均满且高相等 #include<iostream> #include&l…

转移表回调函数实现

回调函数实现 计算器的模拟&#xff08;函数指针数组的使用&#xff09;&#xff08;回调函数&#xff09; 简化 冗余 老的代码的问题就是 冗余 写死 不能完成不同的任务 函数调用的时候只需要知道地址就可以 calc计算器 这里也称之为转移表 #define _CRT_SECURE_NO_WAR…

出现“error: failed to push some refs to ‘https://github.com/****.git‘”,如何解决问题

一、出错情况&#xff1a; 今天继续推送整理的知识点的时候&#xff0c;出现了一个报错。“error: failed to push some refs to https://github.com/.git”&#xff0c;百思不得其解&#xff0c;之前推送的时候都可以轻松推送成功&#xff0c;如今却说本地库与远程库不一致。…

腾讯云轻量应用服务器“月流量”什么意思?用完了怎么办?

腾讯云轻量应用服务器“月流量”什么意思&#xff1f;就是限制月流量的意思。腾讯云轻量服务器流量用完了怎么办&#xff1f;超额部分的流量另外支付流量费&#xff0c;流量价格为0.8元/GB&#xff0c;会自动扣你的腾讯云余额&#xff0c;如果你的腾讯云账号余额不足&#xff0…

Git win与linux换行符转换的问题

转载&#xff1a;warning: in the working copy of ‘package-lock.json‘, LF will be replaced by CRLF the next time Git_warning: in the working copy of package.json, lf-CSDN博客 warning: in the working copy of ‘package-lock.json‘, LF will be replaced by CRL…

ModStartBlog 稳定版 v9.0.0

ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用&#xff0c;支持后台一键快速安装&#xff0c;让开发者能快的实现业务功能开发。系统完全开源&#xff0c;基于 Apache 2.0 开源协议。 功能特性 丰富的模块市场&#xff0c;后台一键快速安装 会…

C++ Function Templates (函数模板)

C Function Templates [函数模板] 1. Templates and Generic Programming (模板与泛型编程)2. Defining a Function Templates (定义函数模板)2.1. Instantiating a Function Template (实例化函数模板)2.2. Template Type Parameters (模板类型参数)2.3. Nontype Template Par…

CSS 系统字体堆栈参考

网站上的字体很容易成为浏览器在显示页面最终外观和形式之前必须下载的总捆绑大小的一部分。此外&#xff0c;我们还需要担心各种问题&#xff0c;比如臭名昭著的未样式文本闪烁&#xff08;FOUT&#xff09;。可以说&#xff0c;整个问题的一部分已经得到解决&#xff0c;多亏…

【实战项目】Boost搜索引擎项目

目录 1. 项目的相关背景 2. 搜索引擎的相关宏观原理 3. 搜索引擎技术栈和项目环境 4. 正排索引 vs 倒排索引 - 搜索引擎具体原理 4.1 正排索引 4.2 目标文档进行分词 4.3 倒排索引 4.4 模拟一次查找的过程&#xff1a; 5. 编写数据去标签与数据清洗的模块 Parser 5.1…

【Docker】apache 容器化部署

Apache环境标准软件基于Bitnami apache 构建。当前版本为2.4.58 你可以通过轻云UC部署工具直接安装部署&#xff0c;也可以手动按如下文档操作&#xff0c;该项目已经全面开源&#xff0c;可以从如下环境获取 配置文件地址: https://gitee.com/qingplus/qingcloud-platform Q…

《操作系统真相还原》读书笔记八:获取物理内存容量以及本书源代码

编写mbr.S汇编代码 ;LOADER_BASE_ADDR equ 0x900 ;LOADER_START_SECTOR equ 0x2 %include "boot.inc"SECTION MBR vstart0x7c00mov ax,csmov ds,axmov es,axmov ss,axmov fs,axmov sp,0x7c00mov ax,0xb800mov gs,axmov ax,0x0600mov bx,0x0700mov cx,0mov dx, 184fh…

力扣图论篇

以下思路来自代码随想录以及官方题解。 文章目录 797.所有可能的路径200.岛屿数量130.被围绕的区域1020.飞地的数量 797.所有可能的路径 给你一个有 n 个节点的 有向无环图&#xff08;DAG&#xff09;&#xff0c;请你找出所有从节点 0 到节点 n-1 的路径并输出&#xff08;不…

USB协议学习(三)大容量存储设备SCSI协议分析

笔者来简单介绍一下SCSI得协议命令 1、SCSI协议认识 SCSI&#xff1a;Small Computer System Interface&#xff0c;用于计算机外部设备得接口标准&#xff0c;定义了与外部设备得一套协议。SCSI标准协议族支持很多钟SCSI设备&#xff0c;像盘&#xff0c;打印机&#xff0c;扫…