网络层协议

embedded/2024/10/19 6:47:53/

一、IP(Internet Protocol)

1、互联网协议(Internet Protocol,IP):TCP/IP协议族的核心,负责在不同网络之间传输数据包。为每个数据包分配一个唯一的IP地址,规定数据包在网络中的路由规则。【IPv4、IPv6】

二、ICMP(Internet Control Message Protocol)

1、Internet控制报文协议(Internet Control Message Protocol,ICMP):在IP网络中发送控制消息。ICMP报文封装在IP报文中。

2、ICMP报文格式

3、ICMP报文:ICMP差错报告报文、ICMP询问报文

【Ping—回送应答、回送请求;Traceroute—时间超时、目的不可达】

【Linux TTL:64;Windows TTL:128;Unix TTL:255】

三、IGMP(Internet Group Management Protocol)

1、Internet 组管理协议(Internet Group Management Protocol,IGMP):用于多播通信,接收者主机和直接相邻的组播路由器之间建立和维护组播组成员的关系,交互IGMP报文实现组成员管理功能,IGMP报文封装在IP报文中。【IGMPv1、IGMPv2、IGMPv3】

【任意源组播(Any Source Multicast,ASM)
过滤源组播(Source Filtered Multicast,SFM)
特定源组播(Source Specific Multicast,SSM)】

四、ARP(Address Resolution Protocol)

1、地址解析协议(Address Resolution Protocol,ARP):将IP地址映射到物理地址(MAC地址)。当数据包到达网络层时,ARP会查找目标IP对应的MAC地址,将数据包封装并发送到物理链路层。

2、工作原理:
2.1发送ARP请求:请求主机以广播方式发出ARP请求分组。ARP请求分组主要由主机本身的IP地址、MAC地址以及需要解析的IP地址三个部分组成。
2.2ARP响应:所有主机都能收到ARP请求分组,但只有与请求解析的IP地址一致的主机响应,并以单播方式向ARP请求主机发送ARP响应分组。ARP响应分组由响应方的IP地址和MAC地址组成。
2.3主机写高速缓存:主机收到响应分组后,将IP地址和MAC地址对应关系写入ARP高速缓存。ARP高速缓存纪录了IP地址和MAC地址的对应关系,高速缓存中的每个IP地址和MAC地址的对应关系都有一定的生存时间,大于该时间的对应关系将被删除。

【Arp -d 清除ARP缓存;Arp -s IP MAC 静态绑定地址】

五、RARP(Reverse Address Resolution Protocol)

1、反向地址转换协议(Reverse Address Resolution Protocol,RARP):根据目的设备的MAC地址获取其IP地址。

2、工作原理:
2.1发送主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址;
2.2本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址;
2.3如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用;
2.4如果不存在,RARP服务器对此不做任何的响应;
2.5源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。

六、NAT(Network Address Translation)

1、网络地址转换(Network Address Translation,NAT):将数据报文中的IP地址替换成另一个IP地址。(私有地址转换为公有地址)

1.1静态NAT:内部地址一对一转换成公有地址。
1.2动态NAT:内部地址转换为公有地址时,IP地址是随机的。
1.3网络地址端口转换(Network Address Port Translation,NAPT):又称端口多路复用(Port address Translation,PAT)、多对一地址转换、地址复用。NAT的一种变形,允许多个内部地址映射到同一个公有地址,同时映射IP地址和端口号。【隐藏内部网络的IP配置、节省资源】


http://www.ppmy.cn/embedded/128677.html

相关文章

【随时随地学算法】本地部署hello-algo结合内网穿透远程学习新体验

文章目录 前言1.关于hello-algo2.安装Docker和Docker compose3.本地部署hello-algo4. hello-algo本地访问5.cpolar内网穿透工具安装6.创建远程连接公网地址7.固定Uptime Kuma公网地址 前言 本篇文章主要介绍如何在本地部署hello-algo算法学习必备项目,并结合cpolar…

全星魅|多模卫星定位终端|智能手持终端|北斗定位手持机

全民北斗5G天通北斗多模卫星移动终端是一款能够同时支持天通通信、5G通信、北斗短报文、WIFI6、2W数字与模拟对讲、红外热成像、NFC、FHD超高清显示屏的高端天通多模终端。产品还具备IP68等级防护、QC4.0快速充电、SOS一键求生等功能,可应用于户外通讯、应急通信、森…

OpenCV高级图形用户界面(7)获取指定窗口的属性值函数getWindowProperty()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 提供窗口的参数。 函数 getWindowProperty 返回窗口的属性。 cv::getWindowProperty() 函数用于获取指定窗口的属性值。这个函数允许你查询窗口…

Oracle数据库系统表空间过大,清理SYSTEM、SYSAUX表空间

一.前言 在oracle数据库中,system为系统表空间,存放着一些我们经常用到的系统表和视图,sysaux为辅助表空间,辅助着系统表空间。这两个表空间不宜添加数据文件,会使系统表空间过于臃肿,从而影响数据库的使用…

机器学习学习笔记-20241018

继续跟着小土堆去学习机器学习 文章目录 Flatten1. Flatten 的作用2. 何时使用 Flatten3. PyTorch 中的 Flatten Sequentia优化器模型的保存与加载模型的完整训练 Flatten 在神经网络中,Flatten 操作是将高维的输入(如二维图像或三维特征图&#xff09…

如何使用Java模拟SQL解析器

SQL 命令的解析过程主要包括四个步骤:词法分析(Lexical Analysis)、语法分析(Syntax Analysis)、语义分析(Semantic Analysis)以及执行计划生成。这些步骤从接收到 SQL 查询开始,最终…

【计算机网络原理】GBN,SR,TCP区别以及案例介绍

概念介绍 GBN、SR和TCP协议的主要区别在于它们的重传机制、确认方式以及缓存机制的不同。‌ GBN(Go-Back-N)协议在数据传输中,如果某个报文段没有被正确接收,那么从这个报文段到后面的所有报文段都需要重新发送。GBN采用累计应答…

Electron-(二)桌面应用的启动动画创建

一、概述 在很多桌面应用中都会有启动画面的显示。启动画面可以解决在启动时耗时较长,将每一步反馈给用户。另外一方面解决启动过程中的环境检查及检查结果的反馈。 在当今的桌面应用领域,启动动画已成为提升用户体验的重要组成部分。它不仅仅是一个简单…