首页 > 其他分享 >TCPIP详解-地址解析协议ARP

TCPIP详解-地址解析协议ARP

时间:2023-05-30 23:33:07浏览次数:41  
标签:ARP 主机 硬件 地址 详解 IPv4 IP TCPIP

TCP/IP详解-地址解析协议ARP

IP协议的设计目标是为跨越不同类型物理网络的分组交换提供互操作。这需要网络层软件使用的地址和底层网络硬件使用的地址之间进行转换。网络接口硬件通常有一个主要的硬件地址定位到正确的接口;否则,无法传输数据。但是,一个传统IPv4网路偶需要使用自己的地址:32位的IPv4地址。如果一台主机要将一个帧发送到另一台主机,仅知道这台主机的IP地址是不够的,还需要知道主机在网络中的有效硬件地址。操作系统软件(即以太网驱动程序)必须知道目的主机的硬件地址,以便直接向它发送数据。对于TCP/IP网络,地址解析协议ARP提供了一种在IPv4地址和各种网络技术使用的硬件地址之间的映射。ARP仅用于IPv4,IPv6使用邻居发现协议,它被合并入ICMPv6。

ARP提供从网络层地址到相关硬件地址的动态映射。我们使用动态这个术语是因为它会自动执行和随时间变化,而不需要系统管理员重新配置。也就是说,如果一台主机改变它的网络接口卡,从而改变了它的硬件地址(但保留其分配的IP地址),ARP可以在一定延时后继续正常运作。ARP操作通常与用户或系统管理员无关。

当我们打开一个网页,本地计算机必须确定如何与相关服务器联系。它首先是判断该服务位于本地(同一IP子网的一部分)还是远程。如果是远程的,需要一台可到达目的地的路由器。

直接交付和ARP

直接交付发生在一个IP数据报被发送到一个IP地址,而该地址与发送方具有相同IP前缀的情况下。当我们访问http://10.0.0.1时。

IPv4直接交付的基本操作:

  1. 在这种情况下,应用是一个web浏览器,调用一个特殊函数来解析URL,看它是否包含主机名。这里不是,应用程序使用32位IPv4地址10.0.0.1
  2. 应用程序要求TCP协议建立一条到10.0.0.1的连接。
  3. 通过向10.0.0.1发送一个IPv4数据报,TCP尝试向远程主机发送一个连接请求。
  4. 我们假设地址10.0.0.1使用与发送主机相同的网络前缀,数据报可被直接发送到这个地址而不经过任何路由器。
  5. 假设以太网兼容地址被用于IPv4子网,发送主机必须将32位的IPv4目的地址转换为48位的以太网地址。就是需要从逻辑Internet地址向对应物理硬件地址进行转换。这是ARP功能。ARP在正常模式下,仅适用于广播网络,链路层能将一个消息交付到它连接的所有网络设备。这是ARP运行的一个重要要求。在非广播网络可能需要更复杂的映射协议。

标签:ARP,主机,硬件,地址,详解,IPv4,IP,TCPIP
From: https://www.cnblogs.com/zpf253/p/17444848.html

相关文章

  • Hadoop之YARN详解
    YARN的由来从Hadoop2开始,官方把资源管理单独剥离出来,主要是为了考虑后期作为一个公共的资源管理平台,任何满足规则的计算引擎都可以在它上面执行。所以YARN可以实现HADOOP集群的资源共享,不仅仅可以跑MapRedcue,还可以跑Spark、Flink。YARN架构分析咱们之前部署Hadoop集群的时候也......
  • Spring中@DependsOn 使用详解
    一、注解源码@Target({ElementType.TYPE,ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic@interfaceDependsOn{String[]value()default{};}二、基础概念  @DependsOn是Spring框架用来指定bean之间依赖关系的注解之一,即可用户......
  • Sentinel整合Spring Cloud Gateway、Zuul详解
    Sentinel支持对SpringCloudGateway、Zuul等主流的APIGateway进行限流。编辑切换为居中添加图片注释,不超过140字(可选)Sentinel1.6.0引入了SentinelAPIGatewayAdapterCommon模块,此模块中包含网关限流的规则和自定义API的实体和管理逻辑:GatewayFlowRule:网关限流规......
  • 转:多线程详解
    转自:https://juejin.cn/post/71230166680951849331.什么是多线程1.1进程当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的。1.2线程线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈......
  • 详解RocketMQ 顺序消费机制
    摘要:顺序消息是指对于一个指定的Topic,消息严格按照先进先出(FIFO)的原则进行消息发布和消费,即先发布的消息先消费,后发布的消息后消费。本文分享自华为云社区《RocketMQ顺序消费机制》,作者:勇哥java实战分享。顺序消息是指对于一个指定的Topic,消息严格按照先进先出(FIFO)的原则......
  • 一文详解 Sa-Token 中的 SaSession 对象
    Sa-Token是一个轻量级java权限认证框架,主要解决登录认证、权限认证、单点登录、OAuth2、微服务网关鉴权等一系列权限相关问题。Gitee开源地址:https://gitee.com/dromara/sa-token本文将详细介绍Sa-Token中的不同SaSession对象的区别,以及各种方便的存取值的方法。一......
  • 基于ZigBee3.0技术的数传电台功能使用详解
    一、ZigBee3.0数传电台功能简介1、4G DTU数传电台LINK灯详解基于zigbee3.0通信技术的4G DTU数传电台LINK灯用于指示模块当前网络状态,设备入网成功后LINK灯常亮,当设备没有网络时LINK灯熄灭;在协调器模式下,该引脚指示zigbee模块是否正常建立网络,协调器和路由器在配网模式下1Hz闪......
  • C++结构体对齐详解
    内存对齐是一种提高内存访问速度的策略,CPU在访问未对齐的内存可能需要经过两次的内存访问,而经过内存对齐一次就可以了cout<<"char:"<<sizeof(char)<<endl;cout<<"int:"<<sizeof(int)<<endl;cout<<"short:"<<sizeof(short)<<endl;cout&l......
  • 《asyncio 系列》3. 详解 Socket(阻塞、非阻塞),以及和 asyncio 的搭配
    楔子在前面两篇文章中,我们介绍了协程、任务和事件循环,研究了如何同时运行长耗时的操作,并探索了一些可以优化此操作的asyncioAPI。然而,到目前为止,我们只是用asyncio.sleep函数模拟了长时间的操作。由于我们想要构建的不仅是演示应用程序,因此我们将使用一些真实世界的阻塞操作......
  • web安全详解(渗透测试基础)
    一、Web基础知识1.http协议超文本传输协议是互联网上应用最广泛的一种网络协议。所有www文件都必须遵守的一个标准,是以ASCII码传输,建立在TCP/IP协议之上的应用层规范,简单点说就是一种固定的通讯规则。2.网络三种架构及特点网络应用程序架构包括三种:客户机/服务器结构(C/S)......