【计算机网络笔记】ARP协议

系列文章目录

什么是计算机网络?
什么是网络协议?
计算机网络的结构
数据交换之电路交换
数据交换之报文交换和分组交换
分组交换 vs 电路交换
计算机网络性能(1)——速率、带宽、延迟
计算机网络性能(2)——时延带宽积、丢包率、吞吐量/率
计算机网络体系结构概念
OSI参考模型基本概念
OSI参考模型中非端-端层(物理层、数据链路层、网络层)功能介绍
OSI参考模型中端-端层(传输层、会话层、表示层、应用层)功能介绍
TCP/IP参考模型基本概念,包括五层参考模型
网络应用的体系结构
网络应用进程通信
网络应用对传输服务的需求
Web应用之HTTP协议(涉及HTTP连接类型和HTTP消息格式)
Cookie技术
Web缓存/代理服务器技术
传输层服务概述、传输层 vs. 网络层
传输层——多路复用和多路分用
传输层——UDP简介
传输层——可靠数据传输原理之Rdt协议
传输层——可靠数据传输之流水线机制与滑动窗口协议
传输层——TCP特点与段结构
传输层——TCP的可靠数据传输
TCP连接管理(图解三次握手和四次挥手)
传输层——拥塞控制原理与解决方法
TCP的拥塞控制机制
网络层服务与核心功能
网络层服务模型——虚电路网络
网络层服务模型——数据报网络
Internet网络的网络层——IP协议之IP数据报的结构
IP分片
IP编址与有类IP地址
IP子网划分与子网掩码
CIDR与路由聚合
DHCP协议
网络地址转换(NAT)
ICMP(互联网控制报文协议)
IPv6简介
路由算法之链路状态路由算法
路由算法之距离向量路由算法
路由算法之层次路由
数据链路层概述
数据链路层——差错编码
多路访问控制(MAC)协议——随机访问MAC协议


  • 系列文章目录
  • MAC地址
  • ARP: 地址解析协议


MAC地址

32位IPv4地址:

  • 接口的网络层地址
  • 用于标识网络层(第3层)分组,支持分组转发

MAC地址(或称LAN地址,物理地址,以太网地址) :

  • 在数据链路层用于局域网内标识一个帧从哪个接口发出,到达哪个物理相连的其他接口

  • 48位MAC地址(用于大部分LANs),固化在网卡的 ROM中,有时也可以软件设置。e.g.: 1A-2F-BB-76-09-AD

  • 局域网中的每块网卡都有一个唯一的MAC地址

  • MAC地址由IEEE统一管理与分配。任何一个网卡生产厂商需要购买MAC地址空间(前24比特)

  • MAC地址相当于身份证号,无论在哪里都是唯一的;IP地址相当于邮政地址,有归属和层次关系


ARP: 地址解析协议

一个网络接口在网络层有IP地址,在数据链路层有MAC地址。因此在通信过程中就要考虑一个问题:(在同一个LAN内) 如何在已知目的接口的IP地址前提下确定其MAC地址?

为此,LAN中的每个IP结点 (主机、路由器)都会维护一个表,这个表叫做ARP表,这个表会存储某些LAN结点的 IP/MAC地址映射关系< IP地址; MAC地址; TTL>。TTL存活时间设置该映射关系的存在时间(典型值为20min)。这样保证ARP表反映最新的信息。

比如,A想要给同一局域网内的 B发送数据报,但A只知道B的IP地址,这时就要用到ARP协议,大概过程是这样的:

  • A广播ARP查询分组,其 中包含B的IP地址。
    • 目的MAC地址 = FF-FF-FF-FF-FF-FF
    • LAN中所有结点都会接收 ARP查询
  • B接收ARP查询分组,IP 地址匹配成功,向A应答 B的MAC 地址
    • 利用单播帧向A发送应答
  • A在其ARP表中,缓存B的 IP-MAC地址对,直至超时。超时后,再次刷新

显然,ARP是“即插即用”的协议。主机在刚接入网络的时候,ARP表可能是空的,正是在通信过程中不断查询更新MAC地址的。

那如果A和B不在同一个局域网内,这个时候应该怎么做呢?

假设A和B这两个子网通过R路由器进行互连:

在这里插入图片描述

  • 假设A知道B的IP地址(一般由用户定义输入)
  • 假设A知道第一跳路由器R (左)接口IP地址(A主机的默认网关地址就是路由器左侧接口的地址)
  • 假设A知道第一跳路由器R (左)接口MAC地址 (通过ARP协议)

过程:

  • A构造IP数据报,其中源IP地址是A的IP地址,目的IP地址是B的IP地址。进一步封装数据报,构造链路数据帧,其中源MAC地址是A的MAC地址,目的MAC地址是 R(左)接口的MAC地址
  • 路由器左侧的接口收到数据帧以后,提取IP数据报,传递给上层IP协议。一般情况下不会修改源和目的的IP地址。R进一步创建链路层帧,其中源MAC地址是R(右)接口的MAC地址,目 的MAC地址是B的MAC地址
  • B在链路层收到数据帧之后,要完成链路层的功能。之后提取出IP数据报,交给上层的IP协议,再一层一层往上

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

神经网络可视化——基于torchviz绘制模型的计算图

神经网络可视化——基于torchviz绘制模型的计算图 第一步、安装 graphviz 和 torchviz 库 第二步、编写代码生成计算图 第三步、安装graphviz软件 在深入理解深度学习模型时&#xff0c;可视化网络结构是一个非常有用的手段。今天介绍如何使用 torchviz 和 graphviz 来生成网…

淘宝平台商品详情平台订单接入说明

一 文档说明 本文档面向对象为电商平台商品详情数据和订单进行管理的第三方开发者或自研商家 二 支持范围 目前API已经支持订单的接单、取消、退单处理等操作。如果您的订单管理需求现有API不能满足&#xff0c;可以联系我们提出API需求。 参数说明 通用参数说明 参数不要乱…

Ubuntu 20.0 + mysql 8.0 用户和密码修改

第一步 下载&#xff08;简单,注意联网&#xff09;Ubuntu 终端输入以下两行命令 (1) 数据库的服务端及客户端数据库的开发软件包 sudo apt-get install mysql-server mysql-client (2) 数据库的开发软件包 sudo apt-get install libmysqlclient-dev 第二步 查看是否安装成功 …

产品解读:GreatADM如何快速改造单实例为双主、MGR、读写分离架构?

前言 单机GreatDB/GreatSQL/MySQL将架构调整为多副本复制的好处有哪些&#xff1f;为什么要调整&#xff1f; 性能优化&#xff1a;如果单个GreatDB服务器的处理能力达到瓶颈&#xff0c;可能需要通过主从复制、双主复制或MGR及其他高可用方案来提高整体性能。通过将读请求分发…

Linux中的内存回收:Swap机制(图文并茂)

1、Swap机制是什么 &#xff1a; Swap机制是一种利用磁盘空间来扩展内存的方法。当系统的物理内存不足时&#xff0c;可以把一些不常用的内存数据写入到磁盘上的Swap分区&#xff0c;从而释放出更多的内存给其他需要的进程。当这些内存数据再次被访问时&#xff0c;系统会把它们…

什么是路由抖动?该如何控制

路由器在实现不间断的网络通信和连接方面发挥着重要作用&#xff0c;具有所需功能的持续可用的路由器可确保其相关子网的良好性能&#xff0c;由于网络严重依赖路由器的性能&#xff0c;因此确保您的路由器不会遇到任何问题非常重要。路由器遇到的一个严重的网络问题是路由抖动…

leetcode 283. 移动零

代码&#xff1a; class Solution {public void swap(int[] nums,int m,int n){int tmpnums[m];nums[m]nums[n];nums[n]tmp;}public void moveZeroes(int[] nums) {int cur0;int dest-1;int nnums.length;for(;cur<n;cur){if(nums[cur]!0){dest;swap(nums,cur,dest);}}} } …

封装一些可能会用到的JS的Dom操作方法(非JS自带的方法)

1. 父元素节点下的子元素节点逆序 HTMLElement.prototype.childRevers function () {var all_num this.childElementCount;if (all_num) {while(all_num--){this.appendChild(this.children[all_num]);}} } // 获取 ul 父节点对象 var oul document.getElementsByTagName(u…

抖去推--短视频账号矩阵系统saas工具源码技术开发

一、短视频矩阵系统搭建常见问题&#xff1f; 1、抖去推的短视频AI矩阵营销软件需要一定的技术水平吗&#xff1f; 答&#xff1a;不需要。产品简单易用&#xff0c;不需要具备专业的技术水平&#xff0c;即使是初学者&#xff0c;也能够轻松上手操作。 3、抖去推的短视频AI矩…

Maya 2024(3D建模、动画和渲染软件)

Maya 2024是一款非常强大的3D建模、动画和渲染软件&#xff0c;它提供了许多新功能和改进&#xff0c;以帮助建模师、动画师和渲染师更加高效地进行创作。 在建模方面&#xff0c;Maya 2024引入了Symmetry&#xff08;对称&#xff09;功能&#xff0c;可以在网格两侧生成均匀…

vue2+el-select实现分页加载更多功能

需求&#xff1a; 由于项目下拉框数据过多&#xff0c;一次性加载完&#xff0c;会有性能问题&#xff0c;于是希望可以增加分页加载更多功能。 实现效果&#xff1a; 如上图&#xff1a;点击“点击加载更多”按钮&#xff0c;实现分页加载下一页&#xff0c;直到最后一页&am…

SAP ABAP CONVERT_BDCMSGCOLL_TO_BAPIRET2

CONVERT_BDCMSGCOLL_TO_BAPIRET2 BDC返回清单转BAPIRET2 CALL FUNCTION CONVERT_BDCMSGCOLL_TO_BAPIRET2TABLESimt_bdcmsgcoll lt_msgext_return lt_return.

Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)

目录 Node.js Stream(流)&#xff08;三&#xff09; Node.js http模块 Node.js GET/POST请求&#xff08;一&#xff09; Node.js GET/POST请求&#xff08;二&#xff09; Node.js 路由 Node.js 创建客户端 Node.js 作为中间层 Node.js 文件系统模块&#xff08;一&am…

Python3.6.8升级Python3.12.0版本小记

Python3.6.8 升级 Python3.12.0版本小记 前言一、查看系统已安装Python的相关信息二、升级Python三、解决问题记录&#xff1a;升级之后cmd查看python版本仍为原版本 叮嘟&#xff01;这里是小啊呜的学习课程资料整理。好记性不如烂笔头&#xff0c;今天也是努力进步的一天。一…

MySQL在Docker容器中的性能损失分析与优化策略

文章目录 1. Docker容器对MySQL性能的潜在影响1.1. IO性能1.2. 网络性能1.3. 资源隔离 2. 优化策略2.1. 使用本地数据卷2.2. 配置合理的容器网络2.3. 限制容器资源2.4. 使用容器编排工具 3. 性能测试与监控4. 结论 &#x1f389;MySQL在Docker容器中的性能损失分析与优化策略 ☆…

事务的状态和ACID特性

事务就是让数据从一个状态到另一个状态的操作 状态 活动的 事务在执行过程中 部分提交的 事务的最后一个操作已经完成&#xff0c;此时造成的影响只是在内存里&#xff0c;但还没刷写磁盘 失败的 处于活动的或者部分提交的状态时&#xff0c;服务器宕机 中止的 处于失败…

安防视频监控汇聚EasyNVR视频集中存储平台级联上级时下级未回复原因是什么?该如何解决?

安防监控系统EasyNVR视频云存储平台可实现设备接入、实时直播、录像、检索与回放、视频云存储、视频分发等视频能力服务&#xff0c;可覆盖全终端平台&#xff08;pc、手机、平板等终端&#xff09;&#xff0c;在智慧工厂、智慧工地、智慧社区、智慧校园等场景中有大量落地应用…

《工业和信息化领域数据安全行政处罚裁量指引(试行)》意见征求

11月23日&#xff0c;工业和信息化部网络安全管理局发布了《工业和信息化领域数据安全行政处罚裁量指引&#xff08;试行&#xff09;》&#xff0c;并且面向社会公开征求意见。 据悉&#xff0c;《工业和信息化领域数据安全行政处罚裁量指引&#xff08;试行&#xff09;》的推…

工业以太网交换机有哪些优点?

工业以太网交换机是一种常见的网络设备&#xff0c;具备工业级特性。在轨道交通、智能制造以及工业自动化控制系统中扮演着重要的角色。随着工业自动化水平不断进步&#xff0c;对工业以太网交换机的要求也日益提高。 工业以太网交换机的工作原理 工业以太网交换机与多种工业…

毫米波雷达DOA角度计算----Capon算法

算法实现如下&#xff1a; parameter&#xff1a;雷达参数设置。 antVet&#xff1a;目标点 对应的非相参积累天线数据。 function [angle,doa_abs] caponMethod(parameter,antVec)txAntenna parameter.txAntenna; % 发射天线 [1 1]rxAntenna parameter.rxAntenna; % 接…