《TCP/IP 详解 卷一》读书笔记 -----第四章 ARP
1、一个物理层的网络,例如以太网,可以同时被多个不同的网络层所使用。例如网络中的一些主机使用TCP/IP协议,其他主机使用其他的网络协议。
2、设备驱动软件从不关心IP数据报中的目的IP地址。这也是为什么要有ARP的原因。既然局域网中能够采用广播的方式传递数据,那为什么不把每个包都进行广播,然后让目的主机核对IP地址呢?原因就在于物理层首先需要核对数据帧中的目的物理地址是否与自己的地址相匹配,如果不匹配就可能被丢弃了,网络层都没有机会进行IP地址的匹配。而且每个包都使用广播的方式,让每台主机都到网络层才进行匹配,开销太大,显然设计是不合理的。
3、点对点链路不需要使用ARP,在链路配置时,需要告诉主机内核链路两端的IP地址,至于以太网之类的物理地址是不需要的。
4、当一台主机遇到针对自己的ARP请求时,它仅仅只是将自己的物理地址填充到ARP请求中的目的地址字段,然后分别将ARP请求中的两个源地址和两个目的地址互换,接着改变op字段,将ARP的类型由请求变为应答,最后发送回源主机。
5、以太网数据帧的大小最小为60个字节(不包含尾部4个字节),对于帧类型为ARP的以太网数据帧而言,以太网的报头占据了14个字节,ARP的相关信息占据了28个字节,所以仍然需要对数据帧进行相应的填充,以满足要求。
6、当系统收到一个ARP请求时,在发送一个ARP应答的同时,也会将该请求ARP的IP地址和物理地址保持在ARP缓存中。
7、ARP缓存中的数据不是永久保存的,一般的实现都是超过二十分钟未被使用,则该条记录废弃,同时如果该记录在有效期内又被使用了,则重新开始二十分钟的计时。
8、Proxy ARP:当一台主机,想要把数据发送到与之相连的路由器另一端的一台主机时,它其实得到的ARP应答其实是该路由器发出来的。因此,数据先是由源主机到达路由器,然后再路由器到达目的主机,在数据的整个传递过程中,目的IP地址是不变的,目的物理地址却一直在变。整条数据的传递路径上,除了源主机和目的主机外,其余的路由器都起到了代理作用。两台主机其实并不知道对方的物理地址,这也就是Proxy ARP的作用。
9、Gratuitous ARP:这一类ARP请求的特点就是,请求中的目的IP地址其实就是它自身的IP地址。为什么要这么做呢?原因有两个:一、在启动初期,确认网络中是否有主机的IP地址与自身重复,如果该ARP请求收到了回复,则说明IP地址有重复。二、让网络中的其他主机更新它们的ARP缓存,因为很有可能发送Gratuitous ARP的主机已经更换了网卡,物理地址已经变了,那么原本网络中其他主机内的ARP缓存的相关条目已经错误了,因此有必要通知它们进行更新。通常很多备份服务器在替换出问题的服务器时,会基于理由二发送Gratuitous ARP,以保证在IP地址不变的情况下,让其他客户机程序仍然能够与自己进行通信。
《TCP/IP 详解 卷一》读书笔记 -----第四章 ARP的更多相关文章
- TCP/IP详解 卷一(第十四章 DNS:域名系统)
域名系统(DNS Domain Name System)是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换及有关电子邮件的选路信息. 从应用角度上看,对DNS的访问时通过 ...
- 【TCP/IP详解 卷一:协议】第二章:链路层
2.1 引言 链路层的三个目的: (1)为IP模块发送和接收IP数据报. (2)为ARP模块发送ARP请求和接收ARP应答.地址解析协议:ARP. (3)为RARP模块发送RARP请求和接收RARP应 ...
- 【TCP/IP详解 卷一:协议】第一章概论 学习笔记
第一章 概述 游览了一下,本章主要是简介OSI模型的低层(1-4层).介绍了TCP/IP协议族的相关知识. TCP/IP的分层 Application <--> TCP / UDP < ...
- 《TCP/IP详解》读书笔记
本书以UNIX为背景,紧贴实际介绍了数据链层.网络层.运输层 一.整体概念 1.各层协议的关系,只讨论四层 各层常见的协议: 网络层协议:IP协议.ICMP协议.ARP协议.RARP协议. ...
- TCP/IP详解 卷一学习笔记(转载)
https://blog.csdn.net/cpcpcp123/article/details/51259498
- TCP/IP详解 卷一(第十二章 广播和多播)
广播和多播仅应用于UDP. 广播指的是一个主机向网上的所有其他主机发送帧,而 多播仅发送给属于多播组的多个主机. 为了弄清广播和多播,需要了解主机对由信道传送过来帧的过滤过程 1.首先,网卡查看由信道 ...
- TCP/IP详解 卷一(第十九章 TCP的交互数据流)
TCP需要同时处理两类数据:块数据.交互数据. 本章将以Rlogin应用为例观察交互数据的传输过程. 交互式输入 首先观察在一个Rlogin连接上键入一个交互命令时所产生的数据流(每键入一个交互按键都 ...
- 『TCP/IP详解——卷一:协议』读书笔记——10
2013-08-22 22:57:17 3.8 ifconfig命令 这个命令在Linux系统下可以通过下面的指令阅读说明文档: ifconfig 由于书中作者用的系统比较早的某Unix系统,所以我的 ...
- 『TCP/IP详解——卷一:协议』读书笔记——01
从今日起开始认真研读TCP/IP详解这本经典制作,一是巩固我薄弱的计算机网络知识,二来提高我的假期的时间利用率.将心得与思考记录下来,防止白看-哦耶 2013-08-14 18:47:06 第一章 概 ...
- 『TCP/IP详解——卷一:协议』读书笔记——02
2013-08-16 20:07:11 1.3 TCP/IP的分层 这是一个很好的图,要多看!!图上有些细节会在今后的笔记中提到,看不懂不必深究. IP是网络层上的主要协议,同时被TCP和UDP(这两 ...
随机推荐
- 几个gcc的扩展功能
-finstrument-functions constructor destructor __builtin_return_address http://linuxgazette.net/15 ...
- dstat 备忘
http://dag.wiee.rs/home-made/dstat/#download https://github.com/dagwieers/dstat http://lhflinux.blog ...
- php页面输出时,js设置input框的选中值
/* 设置表单的值 */ function setValue(name, value) { var first = name.substr(0, 1), input, i = 0, val; if ( ...
- [moka学习笔记]yii2.0数据库查询的多种方法(未完待整理)
方法一:(使用model) $modelCommunityMail = CommunityMail::find()->where(['com_id'=>$id])->all(); 方 ...
- 快速设置超炫banner,js插件
http://www.themepunch.com/codecanyon/revolution_wp/ 记录一下以后用 //出自http://www.cnblogs.com/ahjesus 尊重作者辛 ...
- 硅谷新闻4--解决页签手指按下从左到右滑动的bug
有一种方法可以阻止父层的View截获touch事件,就是调用 getParent().requestDisallowInterceptTouchEvent(true);方法.一旦底层View收到tou ...
- [翻译]:SQL死锁-阻塞探测
到了这篇,才是真正动手解决问题的时候,有了死锁之后就要分析死锁的原因,具体就是需要定位到具体的SQL语句上.那么如何发现产生死锁的问题本质呢?下面这篇讲的非常细了,还提到了不少实用的SQL,但对我个人 ...
- MVC Html.AntiForgeryToken() 防止CSRF攻击
转自:http://blog.csdn.net/cpytiger/article/details/8781457 一.MVC中的Html.AntiForgeryToken()是用来防止跨站请求伪造(C ...
- ArcGIS制图之Sub Points点抽稀
简介 Sub Points工具是 Esri 中国自主开发的一个插件,该工具优先考虑点在空间分布上的均匀合理性,并结合点数据中包含的 "优先级" 属性进行筛选.通过获取每个点在一定范 ...
- 用QQ号登陆Sharepoint,研究到最后关头卡住了。大家发力呀
此项目未完成,登陆不了SharePoint,大家研究吧,折腾吧..... 已经完成的部分有:已经可以获取到腾讯用户信息,如: Get Access Token===============access ...