第07-4章 网络层详解

7.1 网络层协议

  • IP协议
  • ARP(地址解析协议)
  • RARP(反向地址解析协议)
  • ICMP(互联网控制消息协议)

7.2 IP协议详解

7.2.1 IP协议功能

  • 寻址和路由
  • 传递服务(不可靠,尽最大努力,可靠性由上层协议提供;无连接)
  • 数据报分段与重组

7.2.2 IP数据报解析

在这里插入图片描述
(1)IP数据报由两部分组成1.首部;2.数据部分;首部(大小20bye到60bye之间)由两部分组成:1.固定部分(大小20字节);2.可变部分(最大为40字节)。
(2)版本——占4bit,指IP协议的版本,目前的IP协议版本号为4(0100)(即IPV4)。
(3)首部长度——占4bit,可表示的最大数是15个单位(一个单位为4字节),因此IP的首部长度的最大值是60bye。
(4)服务类型——这个字段一直没有被使用过。

  • D:delay 延时 T:throughput 吞吐量 R:reliablity 可靠性 cost 最小代价
  • 区分服务,占8位,用来获得更好的服务。这个字段在旧标准中叫做服务类型,但实际上一直没有被使用过。1998年IETF把这个字段改名为区分服务DS(Differentiated Services)。只有在使用区分服务时,这个字段才起作用。

(5)总长度——占16bit,指首部和数据之和的长度,单位为字节,因此数据报的最大长度为65535bye,总长度必须不超过最大传送单元MTU。
(6)理解标识、标志、片移量,分片——运苹果,选择火车,苹果太多分开来运,苹果有种类,列车须有标识,同样型号的一批苹果;标志:有三位,第一位保留不使用,第二位(D位):如果为1代表一批运,不分批;第三位(M位):如果为1代表分批运,货物后面还有,还没有完;片移量——每辆火车之间隔得距离。

  • 标识(Identification)——占16bit,它是一个计数器,用来产生数据报的标识;标识与ip决定了IP数据报的唯一性。
  • 标志(flag)——占3bit,目前只有后两个bit有意义,标志字段的最低位是MF(More Fragment),MF=1表示后面“还有分片”,MF=0表示最后一个分片;标志字段中间的中间一位是DF(Don’t Fragment),只有当DF=0是才允许分片。
  • 片移量(Fragment offset)——13bit,较长的分组在分片后某片在原分组中的相对位置,片移量以8个字节为偏移单位。
    在这里插入图片描述
    (7)生存时间——8bit,记为TTL(Time to live),这是为了限制数据报在网络中的生存时间,其单位最初是秒,但为了方便,现在都用“跳数”作为TTL的单位,数据报每经过一个路由器,其TTL值就减1。Windows的TTL为64。
    (8)协议——8bit,使用上层协议,指出此数据报携带的数据使用何种协议以便目的主机的IP层将数据部分上交给哪个处理过程。
    在这里插入图片描述
    (9)首部校验和——16bit,字段只检验数据报的首部,不包括数据部分这里不采用CRC检验码而采用简单的计算方法。
    (10)源地址,目的地址——占4个bye。
    (11)可变部分

在这里插入图片描述

7.3 ARP协议详解

7.3.1 IP地址和MAC 地址特征分析

  • 逻辑地址:网络级,也就是IP,工作在网络层,特征:1、全局唯一性;2、用软件实现;3、32位;
  • 物理地址:物理级,mac地址,工作在网络接口层,特征:1.本地范围具有唯一性;2.用硬件实现;3.48位;

在这里插入图片描述
在这里插入图片描述

7.3.2 有了IP地址为什么还要使用MAC

有了IP地址为什么还要使用MAC,原因如下:

  • IP地址一般情况下容易修改和变动,具有随意性,不能在网络上固定标识一台设备;
  • MAC地址一般情况出厂时由厂家烧录到硬件中,不容易修改,在局域范围内容易定位唯一一台设备;
  • 从拓扑结构和分层上分析,IP地址属于网络层部分,主要功能是在广域网范围内路由寻址,选择最佳路由,而MAC地址在网络接口层要形成适合于网络媒体上传输的数据帧。

标识设备的3种方法(访问):
1.域名;随意特性
2.IP地址;随意特性
3.MAC地址(理论上可以通过MAC访问);固定特性

7.3.3 ARP工作过程及工作原理解析

ARP:局域网内:
在这里插入图片描述

在这里插入图片描述
ARP:广域网内:
在这里插入图片描述
RouterA,RouterB为代理ARP,PCA知道的是网关的MAC地址也就是FA0/0的MAC,同理,PCB也是。

文字说明
(1)ARP ( Address Resolution Protocol )地址解析协议用于将计算机的网络IP地址转化为物理MAC地址。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。在每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一—对应的。
(2)ARP缓存表:1.静态映射缓存表;2.动态映射缓存表。
(3)不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。每一个主机都设有一个ARP高速缓存(ARP cache),里面有所在的局域网上的各主机和路由器的IP地址到硬件地址的映射表。当主机A欲向本局域网上的某个主机B发送IP数据报时,就先在其ARP高速缓存中查看有无主机B的IP地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入MAC帧,然后通过局域网将该MAC帧发往此硬件地址。
(4)ARP高速缓存的作用

  • 为了减少网络上的通信量,主机A在发送其ARP请求分组时,就将自己的IP地址到硬件地址的映射写入ARP请求分组。
  • 当主机B收到A的ARP请求分组时,就将主机A的这一地址映射写入主机B自己的ARP高速缓存中。这对主机B以后向A发送数据报时就更方便了。

(5)应该注意的问题

  • ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。
  • 如果所要找的主机和源主机不在同一个局域网上,那么就要通过ARP找到一个位于本局域网上的某个路由器的硬件地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。剩下的工作就由下一个网络来做。
  • 从IP地址到硬件地址的解析是自动进行的,主机的用户对这种地址解析过程是不知道的。
  • 只要主机或路由器要和本网络上的另一个已知IP地址的主机或路由器进行通信,ARP协议就会自动地将该IP地址解析为链路层所需要的硬件地址。
  • 默认情况下ARP缓存的超时时限是两分钟。

ARP相关命令

  • arp -d清楚本机arp缓存表
  • arp -a查看本机当前arp表
  • arp -s绑定arp地址(注意:本次机器生效,下次重启后会全部失效)

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

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

相关文章

Unity面向切面编程

一直说面向AOP(切面)编程,好久直接专门扒出理论、代码学习过。最近因为某些原因😭还得再学学造火箭的技术。 废话不多说,啥是AOP呢?这里我就不班门弄斧了,网上资料一大堆,解释的肯定…

python怎么连接oracle

一:弄清版本,最重要!!! 首先安装配置时,必须把握一个点,就是版本一致!包括:系统版本,python版本,oracle客户端的版本,cx_Oracle的版本…

每日一题:地下城游戏

恶魔们抓住了公主并将她关在了地下城 dungeon 的 右下角 。地下城是由 m x n 个房间组成的二维网格。我们英勇的骑士最初被安置在 左上角 的房间里,他必须穿过地下城并通过对抗恶魔来拯救公主。 骑士的初始健康点数为一个正整数。如果他的健康点数在某一时刻降至 0…

Pytorch实现线性回归模型

在机器学习和深度学习的世界中,线性回归模型是一种基础且广泛使用的算法,简单易于理解,但功能强大,可以作为更复杂模型的基础。使用PyTorch实现线性回归模型不仅可以帮助初学者理解模型的基本概念,还可以为进一步探索更…

【归并】Leetcode 排序数组

题目讲解 912. 排序数组 算法讲解 使用归并算法排序数组,我们先在数组中寻找一个mid点,然后把数组分成了两部分,我们先排左部分,排左边部分的时候有需要将当前的子数组分成两部分,继续循环,直到当前子数组…

嵌入式物联网开发基石

前言 嵌入式物联网开发工程师,是一个蓝海新风口,高薪不内卷的行业。需要掌握熟悉c/c、单片机、数据结构,linux系统,ARM单片机,嵌入式。可以从事工作项目loT、视频监控领域的产品,跨平台系统,智能…

linux内核初始化成功后是如何过渡到android初始化的

Android用的linux内核,以完成OS该有的功能,例如,文件系统,网络,内存管理,进程调度,驱动等 ,向下管理硬件资源向上提供系统调用。另一些Android特有驱动也放在内核之中。 当linux内核…

时序分析基础(6)——input delay时序分析

1 简介 FPGA对于外部的时钟以及数据的延时信息是不知道的,在低速时钟且时钟发射沿在数据正中心的时候,一般可以不做约束来直接使用。但是到了高速时钟或者双沿采样或者发射沿和数据对齐的情况下,这时候就需要告诉VIVADO外部的时钟与数据情况来…

前端css中border-radius的简单使用

前端css中border-radius的使用 一、前言二、border-radius语法三、border-radius的模型例子1.源码12.源码1效果截图 四、border-radius的动画效果(动态交互)1.源码22.源码2显示效果 五、结语六、定位日期 一、前言 在CSS中,我们常用border-r…

LE Audio —— Boardcast 与 Unicast 对比

蓝牙低功耗音频(Bluetooth LE Audio,简称:LE Audio)自 2020 年 1月 发布,到 2022 年 7 月完成全套规范的定义。 LE Audio是新一代蓝牙音频技术标准,采用了全新的音频架构,充分利用低功耗蓝牙无…

二维码门楼牌管理应用平台建设:网格化管理的新篇章

文章目录 前言一、二维码门楼牌管理应用平台的建设背景二、二维码门楼牌管理应用平台的功能特点三、二维码门楼牌管理应用平台的实际应用四、二维码门楼牌管理应用平台的前景展望 前言 随着信息技术的飞速发展,二维码门楼牌管理应用平台的建设已成为城市网格化管理…

【Java基础】25.包(package)

文章目录 前言一、包的作用二、创建包三、import 关键字四、package 的目录结构五、设置 CLASSPATH 系统变量 前言 为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间。 一、包的作用 把功能相似或相关的类或接口组织在同一个包中&#xff…