zoukankan      html  css  js  c++  java
  • 对TCP/IP协议的一些看法(2):ARP协议

    上一讲主要介绍了下TCP/IP的总体概述,由于是随笔,可能写的不是很有条理,也只是想到什么写下什么,后期可能还会进行补充。

    今天主要讲下我对网络层的ARP协议的一些认识。ARP的主要功能是提供IP地址到物理地址(MAC地址)的一个动态映射。我们知道两台计算机之间要进行数据的传输,最终还是在链路层通过以太网报文进行发送的,所以发送方必须知道接收方的地址,即物理地址。但一般来说在IP层传下来的报文中只有IP地址,因此在链路层通过ARP协议进行IP地址到物理地址的转换。这个转换是自动完成的,不需要用户去实现。

    具体的实现过程如下:

    1.发送方向网内的所有计算机发送ARP请求(进行广播),里面包括目标IP地址,源IP地址和源物理地址,意思是说你们谁的IP地址是这个;

    2.若接收方和发送方在同一网段内,则收到ARP请求后先存储发送方的IP和物理地址,之后在ARP应答报文中填充自己的物理地址后返回给发送方;其余计算机不进行响应;

    3.若两者不在同一网段内,可能要通过路由器进行转发;路由器的知识在后面说明;

    4.发送方收到ARP应答后即可将以太网报文发给接收方。

    另外还有几点需要注意:

    1.所有计算机都包含一个ARP高速缓存,用于减少查询的时间;一般缓存时间在20分钟

    2.关于ARP的指令包括arp -a(列出本地的arp缓存)和arp -d(删除缓存,需要高权限才能操作)

    3.ARP采取广播查询,单播回应

    4.最后需要说明的一点是,有些人说ARP属于网络层,有些说是链路层。应该可以这么理解,在OSI模型中,ARP属于链路层,在TCP/IP中,属于网络层

  • 相关阅读:
    Console命令,让js调试更简单
    Java练习 SDUT-2192_救基友记2
    Java练习 SDUT-2246_时间日期格式转换
    SDUT-3362_村村通公路
    SDUT-2139_从起始点到目标点的最短步数(BFS)
    SDUT-3361_迷宫探索
    SDUT-2138_判断可达性
    SDUT-2107_图的深度遍历
    SDUT-2124_基于邻接矩阵的广度优先搜索遍历
    Java练习 SDUT-2787_加密术
  • 原文地址:https://www.cnblogs.com/elninohjh/p/4216391.html
Copyright © 2011-2022 走看看