网络基础(五):网络层协议介绍

news2024/7/6 18:09:50

目录

一、网络层

1、网络层的概念

2、网络层功能

3、IP数据包格式

二、ICMP协议

1、ICMP的作用和功能

2、ping命令的使用

2.1ping命令的通用格式

2.2ping命令的常用参数

2.3Type+Code:查看不同功能的ICMP报文

2.4ping出现问题

3、Tracert

4、冲突域

5、广播域

三、ARP协议

1、ARP协议的概念

2、ARP协议的工作原理

四、总结


一、网络层

1、网络层的概念

网络层是OSI参考模型七老仔层协议中的第三层,介于传输层和数据链路层之间,它在数据链路谈穗层提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若干个中间节点传送到目的端,从而向运输层提供最基本的端到端的数据传送服务。

2、网络层功能

①定义基于IP协议的逻辑地址(ip确定设备在网络位置)

②连接不同的媒介类型

③在网络中选择最佳路径转发数据

3、IP数据包格式

数据封装的时候在网络层会封装ip地址的头部,形成ip数据包

IP数据包格式:20字节的固定部分(每个ip数据包必须包含的部分)和40字节的可变长部分

版本(4)

Version

首部长度(4)

Header Length

优先级与服务类型(8)

Type of Service

总长度(16)

Total Length

                                   标识符(16)

                                Identification

标志(3)

Flags

段偏移量(13)

Fragment Offset

TTL(8)

协议号(8)

Protocol

首部校验和(16)

Header Checksum

                                       源地址Source IP Address(32)
                                       目标地址Destination IP Address(32)
                                                    可选项Options
                                                        数据Data
  • 版本号(4bit):指IP协议版本为IPV4和IPV6。并且通信双方使用的版本必须一致,目前我们使用的IPv4,表示0100
  • 首部长度(4):IP数据包的包头长度(不包括数据)
  • 优先级与服务类型(8):该字段用于表示数据包的优先级和服务类型。通过在数据包中划分一定的优先级,用于实现Qos(服务质量)的要求。即区分IP数据包的优先处理级别
  • 总长度(16):定义IP数据包的总长度,最长为65535字节,包括包头和数据
  • 标识符(16):该字段用于表示IP数据包的标识符。当IP对上层数据进行分片时,它将给所有的分片分配一组标号,然后将这些编号放入标识符字段中,保证分片不会被错误地重组。标识符字段用于标志一个数据包,以便接收节点可以重组被分片的数据包。即确定数据的分片是否来自于同一个文件
  • 标志(3):代表数据过小不需要分片,代表该组最后一个数据包
  • 段偏移量(13):该数据片离起点的位置坐标
  • TTL生命周期(8):可以防止一个数据包在网络中无限循环的转发下去,每经过一个路由器-1, 当TTL的值位0时,该数据包将被丢弃。TTL≥128指win系统,TTL≤64指Linux系统
  • 协议号(8):封装的上层那个协议,ICMP:1 IGMP:2 TCP:6 UDP:17
  • 首部校验和(16):这个字段只检验数据报的首部,不包括数据部分。这是因为数据报没经过 一次路由器,都要重新计算一下首部校验和(因为一些字段如生存时间、标志、片偏移等可能发生的变化)
  • 源地址(32):源IP地址,表示发送端的IP地址
  • 目标地址(32):目标IP地址,表示接收端的IP地址
  • 可选项:选项字段根据实际情况可变长,可以和IP一起使用的选项有多个。例如:可以输入创建该数据包的时间等。在选项之后,就是上层数据。
  • 数据

二、ICMP协议

1、ICMP的作用和功能

  • ICMP是一个“错误侦测与回馈机制”
  • 通过IP数据包封装的
  • 用来发送错误与控制信息

实际上就是通过ping命令检测网络的双向联通性

2、ping命令的使用

2.1ping命令的通用格式
ping [选项/参数] IP地址
其中[选项/参数]指的是增加额外功能
2.2ping命令的常用参数
常用参数格式功能描述
ping -t ip地址系统会一直不停地ping下去,按ctrl+c停止长ping
ping -l size ip地址指定数据包的大小
ping -w 等待时间(默认2毫秒) ip地址超时等待时间
ping -n 指定次数(默认5次) ip地址指定ping几次

2.3Type+Code:查看不同功能的ICMP报文
Type类型code代码描述
00Echo Reply回复
30网络不可达
31主机不可达
32协议不可达
33端口不可达
110超时
80Echo Request请求

ping www.jd.com后使用抓包工具wireshark查看Type:8和code:0,表示Echo Request请求

2.4ping出现问题

①先ping 127.0.0.1,查看是否能ping通自己的设备,不能则说明硬件有问题

②查看发送方与接收方的IP地址是否有错误

③查看发送方与接收方是否在同一网络区域,不在同一区域再查看网关是否有问题

④防火墙策略是否有问题(可能接收方禁言icmp协议)

3、Tracert

Tracert (Trace Route)是一个网络诊断工具,用于跟踪数据包从源主机到目标主机的路径。Tracert 命令使用用 IP 生存时间 (TTL) 字段和 ICMP错误消息来确定从一个主机到网络上其他主机的路由这对于网络故障排除和性能优化非常有用

4、冲突域

定义:同一时间内只能有一台设备发送信息的范围

分层:基于OSI的第一层物理层

设备:第二层设备能隔离冲突域,比如Switch。交换机能缩小冲突域的范围,交换接的每一个端口就是一个冲突域

5、广播域

定义:如果站点发出一个广播信号,所有能接收收到这个信号的设备范围称为一个广播域

分层:基于OSI的第二层数据链路层

设备:第三层设备才能隔离广播域,比如Router。路由器能隔离广播域,其每一个端口就是一个广播域

三、ARP协议

1、ARP协议的概念

ARP全称是“Address Resolution Protocol”(地址解析协议),ARP作用于以太网的环境之中,以太网环境之中数据的传输依赖的是MAC地址并不是我们所熟悉的IP地址,每个电脑都有一个IP地址记以及一个MAC地址(全球唯一),二者缺一不可。ARP协议的工作一是将IP地址转换为MAC地址就是ARP协议的工作,二是检测地址是否冲突。

2、ARP协议的工作原理

①当PC1发送数据给PC2时,会先检查自己的ARP缓存表,如果没有接收方的对应IP地址的MAC信息,PC1就会发送一个ARP请求。ARP请求信息包括PC1的IP地址和MAC地址以及PC2的IP地址和MAC(广播MAC:FF-FF-FF-FF-FF-FF)

②交换机接收到广播后,将PC1的IP地址和MAC地址保存到自己的ARP缓存表中,再做泛洪查询处理,除PC1外本地网络上所有的主机接收到ARP请求信息并且检查是否与自己的IP地址匹配。如果主机发现请求的IP地址与自己的IP地址不匹配,它将丢弃ARP请求

③PC2确定ARP请求中的IP地址与自己的IP地址匹配,则将发送方PC1的IP地址和MAC地址保存到本地ARP缓存表,再以单播点对点方式向PC1发送ARP应答

④当PC2的ARP应答经过交换机时,交换机再将PC2的IP地址和MAC地址保存到自己的ARP缓存表中。当PC2的ARP应答到达PC1时,PC1将PC2的IP地址和MAC地址保存到自己的ARP缓存表中,再以单播方式与PC2进行通信

⑤之后PC1和PC2的ARP缓存表中都有对方的IP地址和MAC地址就不需要再进行上述过程,直接通信

四、总结

网络层位于传输层与数据链路层中间,具有选择转发数据最佳路径的功能。ICMP协议(检测网络的双向联通性)与ARP协议(将IP地址转换成MAC地址)在网络层协议中至关重要,需要重点掌握。ICMP协议中的ping命令和tracert命令,ARP协议的工作原理,更是重点中的重点

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

农副产品行业ERP有哪些?农副产品行业ERP是做什么的

现实生活当中有很多种类的农副产品,这些琳琅满目的商品有多元化的营销渠道和策略,同时在保质期、包装、价格策略、配料、生产工艺等诸多方面存在明显的差异。 由于行业的特殊性,传统的人工统计分析工作量较大,同时也难以确保业务…

酷开系统丨非比寻常,酷开科技带你感受智能电视的妙处

智能电视的出现不仅改变了人们的观影方式,也在一定程度上改变了人们的生活方式。有人说,选择电视机其实就是在选择智能电视系统。在纷乱繁杂的电视市场里,想必大家在挑选的时候也是费尽了心力。 众所周知,内容已经成为衡量智能电…

各个数据库存二进制大文件性能测试

1前言 ​ 有个项目软件前端将二进制大文件存在了indexDB,每次给后端传文件(需要传到底层C进行调用)都会导致内存占用飙升,想着使用前后端都能共同操作的数据库来解决这个内存占用的问题,并且希望这个更具尽可能的轻量&#xff0c…

案例044:基于微信小程序的消防隐患在线举报系统

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

项目实战二——性能测试方案

这里写目录标题 一、性能测试整体流程介绍二、性能测试时机(什么时候去做?)三、测试背景(务虚:让不懂的人尽可能看懂)四、术语约定五、测试范围1、调研分析:2、测试范围: 六、性能需求分析1、业务模型预估&…

低多边形植物模型法线贴图

在线工具推荐: 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 当谈到游戏角色的3D模型风格时,有几种不同的风格&#xf…

学习-面试java基础-(集合)

String 为什么不可变? 1线程安全 2支持hash映射和缓存。因为String的hash值经常会使用到,比如作为 Map 的键,不可变的特性使得 hash 值也不会变,不需要重新计算。 3出于安全考虑。网络地址URL、文件路径path、密码通常情况下都是以…

使用JLink仿真器实现调试打印的N种方法

方法一:使用MCU的串口 这是最古老也是最简单的方法。 电脑上面插一个USB转TTL,然后与MCU的UART_RX/UART_TX/GND连接起来。PC端再打开一个串口调试助手。两边的波特率一致,就可以收到MCU发过来的打印信息了。 方法二:使用JLink仿…

低功耗模式的通用 MCU ACM32F0X0 系列,具有高整合度、高抗干扰、 高可靠性的特点

ACM32F0X0 系列是一款支持多种低功耗模式的通用 MCU。集成 12 位 1.6 Msps 高精度 ADC 以及比 较器、运放、触控按键控制器、段式 LCD 控制器,内置高性能定时器、多路 UART、LPUART、SPI、I2C 等丰富的通讯外设,内建 AES、TRNG 等信息安全模块&#xff0…

初识文件系统

文章目录 1、概述2、inode结构3、block BitMap 和 inode BitMap4、软链接和硬链接4.1 硬链接4.2 软链接 5、Linux下的文件类型的 1、概述 文件存储在硬盘上,硬盘的最小存储单位叫做“扇区”(Sector)。每个扇区储存512字节 操作系统读取硬盘…

vue3 添加编辑页使用 cron 表达式生成

示例效果图 1、添加组件 <template><div class"v3c"><ul class"v3c-tab"><li class"v3c-tab-item" :class"{ v3c-active: tabActive 1 }" click"onHandleTab(1)">秒</li><li class&qu…

智能优化算法应用:基于蝙蝠算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于蝙蝠算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于蝙蝠算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.蝙蝠算法4.实验参数设定5.算法结果6.参考文献7.MA…

【MQ】Rocketmq如何保证消息不丢失

文章目录 前言一、前言二、消息什么情况会丢失&#xff1f;三、如何保障消息不丢失&#xff1f;3.1、生产者端3.2、Broker端3.3、消费者端 四、总结 前言 一、前言 RocketMQ可以理解成一个特殊的存储系统&#xff0c;这个存储系统特殊之处数据是一般只会被使用一次&#xff0…

Mysql安装教程(zip版)

去官网下载&#xff1a; 我这有个5.7.9的版本&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1H6Qs2mP0vzBklmD_ID7VLg 提取码&#xff1a;8xnk 管理员cmd 到mysql安装目录的bin下面 1、mysqld --initialize-insecure --usermysql //初始化执行成功之后会生…

四六级高频词组3

目录 词组 参考链接 词组 101. by chance&#xff08;accidentally&#xff0c; by accident&#xff09;偶然 102. for a change换换环境&#xff08;花样等&#xff09; 103. charge sb. with …控告某人犯有… 104. in charge of &#xff08;responsible for&#xff…

小程序商城免费搭建之b2b2c o2o 多商家入驻商城 直播带货商城 电子商务b2b2c o2o 多商家入驻商城 直播带货商城 电子商务 鸿鹄云商

1. 涉及平台 平台管理、商家端&#xff08;PC端、手机端&#xff09;、买家平台&#xff08;H5/公众号、小程序、APP端&#xff08;IOS/Android&#xff09;、微服务平台&#xff08;业务服务&#xff09; 2. 核心架构 Spring Cloud、Spring Boot、Mybatis、Redis 3. 前端框架…

音视频技术开发周刊 | 323

每周一期&#xff0c;纵览音视频技术领域的干货。 新闻投稿&#xff1a;contributelivevideostack.com。 Meta牵头组建开源「AI复仇者联盟」&#xff0c;AMD等盟友800亿美元力战OpenAI英伟达 超过50家科技大厂名校和机构&#xff0c;共同成立了全新的人工智能联盟。以开源为旗号…

c++ multimap

multimap创建 multimap<string , string> m; m.insert(make_pair("12","3234")); m.insert(make_pair("12","3234")); m.insert(make_pair("12","3234"));遍历 multimap<string , string> m; m.inser…

Nacos配置管理-nacos集群搭建

一、集群结构图 其中包含3个nacos节点&#xff0c;然后一个负载均衡器代理3个Nacos。这里负载均衡器可以使用 nginx。 二、 计划实现 --计划架构-- 3个Nacos节点&#xff1b; 3个mysql库&#xff1b; --计划节点地址-- 三、集群搭建 3.1 基本步骤 &#xff08;1&#…

Camunda 7.x 系列【60】流程分类

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 2.7.9 本系列Camunda 版本 7.19.0 源码地址:https://gitee.com/pearl-organization/camunda-study-demo 文章目录 1. 前言2. 案例演示2.1 后端2.2 前端2.3 测试1. 前言 钉钉中的OA审批分类: 企业级的业务…