RFC 791 (1)-导论

news2025/1/14 1:14:35

目录

浅论

IP是啥

IP可以管啥

操作

范例查看


提示:本系列将会开始RFC文档阅读,这里会给出我的一些笔记

浅论

我们这篇RFC文档描述的是IP和ICMP协议,我们都知道,在传统的OSI七层或者是现在被简化的五层:应用层,传输层,网络层,数据链路层以及物理层中,它属于网络层的传输。接触过计算机网络导论的同志们都知道,他是为上层的TCP,UDP提供服务的(为传输层的服务本身提供服务),而又处理下层的数据链路层前来的数据包(卸下Local本地的数据链路层的相关协议信息后,剩下的他认为这是传输数据的那部分)。

IP是啥

一个协议!我相信大家都知道这个浅显的事实,他指挥了

接收上:在网络层工作的机器如何解读下层带来的数据包,然后进一步根据里头的控制信息解读在内层的数据,好向上提交给传输层解析

发送上:接受上面的传输层已经封装好的数据构成一个数据包(Datagram),添加自己的控制信息,目标IP等,向下传递给工作数据链路层的设备

IP正是在本网络层中描绘了设备之间如何根据他给出的IP地址,也就是从源地址到目的地址中,在网络中传递数据(Transmitting Blocks of Data from sources to destination

IP可以管啥

有趣的是:正如RFC文档所描述的是,这个我相信也有不少博主强调过的:

IP不在乎,也不保证比较强的数据可靠性,数据顺序正确性和流控制,人话就是他只管送,不管对不对

那这些谁来做呢?上层做!TCP不正是提供了这些功能吗?(流控制,顺序性等),我们正好省时省力,将每个工作安排的井井有条而不重复做无用工作

操作

IP实现了两个最基本的功能:addressing(寻址)和fragmentation(拆包)。我们在网络层视图中,嗯,实际上就是这样的:

(实际细节如何?不是我们在乎的!我们只在乎到数据刷的从一台设备跑到了另一台设备),我们就这样实现了一种addressing!在浩大的网络层中找到我们的目标设备投递自己的数据包

这里的源地址和目标地址就是我们的IP包内的地址字段!具体的分析在之后的博客中详细阐述。这几台设备制定发送的数据包和解析收到的数据包就是这样由IP指挥规定的

可以在这里就阐述的是:IP它有四个独特的控制信息:

  1. Type Of service:服务种类

    代码说明
    1000 – minimize delay最小延迟 对应于对延迟敏感的应用,如telnet和人login等。
    0100 – maximize throughput最大吞吐量 对应于对吞吐量要求比较高的应用,如FTP文件应用,对文件传输吞吐量有比较高的要求。
    0000 – normal service一般服务
    0001 – minimize monetary cost最小费用
    0010 – maximize reliability最高可靠性 对网络传输可靠性要求高的应用,如使用SNMP的应用、路由协议等等。

    具体的含义等之后详解的时候我会细细说明!

  2. TTL(Time To Live)这是描述这个包还可以存在多久的!一般的,IP可能需要过路由器一次一次扔数据包,扔一次TTL字段咱就减一个1:

    // 显然不是源码,但是这是一个伪代码!
    void getAndSend(IP_Package& package){
        handlePackage(package);
        package->ttl--;
        sendTo(package->dest_addr, package);
    }
  3. Option:这里则是选项,装着时间戳,安全相关和一些特别的调度安排

  4. 头部校验和:咱们是说IP不管数据,他还是得管他自己的控制信息的,但是检查很弱,使用的是校验和检查

范例查看

随便抓点包就OK:我们这里使用的是IPv4!具体一些信息我们将会在后续详细分析!

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

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

相关文章

哪个牌子的电容笔好用?618五款爆款电容笔评测,不踩雷!

随着信息技术不断发展,iPad慢慢成为了现代年轻人工作、娱乐和学业的必备智能工具之一。然而,市场上涌现出众多品牌的电容笔,也存在着大量低质量的电容笔产品。这些产品往往无法达到预期的书写和绘画效果,反而可能导致用户体验不佳…

快速上手RabbitMQ

安装RabbitMQ 首先将镜像包上传到虚拟机,使用命令加载镜像 docker load -i mq.tar 运行MQ容器 docker run \-e RABBITMQ_DEFAULT_USERitcast \-e RABBITMQ_DEFAULT_PASS123321 \-v mq-plugins:/plugins \--name mq \--hostname mq \-p 15672:15672 \-p 5672:5672 …

商城数据库88张表结构完整示意图61~70(十四)

六十一: 六十二: 六十三: 六十四: 六十五: 六十六: 六十七: 六十八: 六十九: 七十:

LeetCode 15 —— 三数之和

阅读目录 1. 题目2. 解题思路3. 代码实现 1. 题目 2. 解题思路 首先我们对数组进行从小到大排序,然后遍历数组 [ 0 , n u m s . s i z e ( ) − 3 ] [0,nums.size()-3] [0,nums.size()−3] 作为三元组中的 a a a,由于三元组的索引互不相同&#xff0c…

万物互联-AI边缘计算赋能腾讯无人驾驶车

为把握智能交通系统发展机遇,探索未来城市智能化交通体系,今年3月,腾讯无人驾驶汽车正式落地深圳智能网联交通示范区;该项目将以智能网联测试为基础,以构建自动驾驶生态和未来交通体系为导向,围绕"车、路、云、网…

ABAP开发(3)数据类型和变量

文章目录 1、常用数据类型2、变量定义1、定义基本类型变量2、定义结构体3、定义类型 1、常用数据类型 2、变量定义 在ABAP中,使用关键字DATA定义变量,句号结尾。 1、定义基本类型变量 定义变量ID,字符串,长度20。 DATA ID(20)…

Keepalived实现LVS高可用

6.1 KeepalivedLVS集群介绍 Keepalived和LVS共同构建了一个高效的负载均衡和高可用性解决方案:LVS作为负载均衡器,负责在集群中的多个服务器间分配流量,以其高性能和可扩展性确保应用程序能够处理大量的并发请求;而Keepalived则作…

启发式算法解魔方——python

未完待续,填坑ing…… 魔方操作的表示——辛马斯特标记 辛马斯特标记(Singmaster Notation)是一种用于描述魔方和类似拼图的转动操作的标记系统。它以大卫辛马斯特(David Singmaster)的名字命名,辛马斯特…

商城数据库88张表结构完整示意图81~88及总览图(十六)

八十一: 八十二: 八十三: 八十四: 八十五: 八十六: 八十七: 八十八: 总览图:

JVM调优--理论篇

在对Java应用进行性能优化时,JVM的调优是一个绕不开的话题。本文重点介绍下如何对JVM进行调优,以期提高Java应用的性能、稳定性、响应时间等性能目标。JVM的调优过程符合Java应用的调优过程,主要分为三步:性能监控、性能分析、性能…

MES系统:优化生产执行,实现高效、灵活的制造管理

MES系统作为操作执行层可以缩短排产周期,解决紧急插单问题;通过计划、采集、管控等功能来改进生产执行;与实际生产即时接轨车间时间驱动上层的商务活动。 MES系统包含基础数据、物料和工艺管理、生产过程管理、APS排产、人员管理、设备与工具…

CPU炼丹——YOLOv5s

1.Anaconda安装与配置 1.1安装与配置 Anaconda3的安装看下面的教程: 最新Anaconda3的安装配置及使用教程(详细过程)http://t.csdnimg.cn/yygXD,接上面文章下载后,配置环境变量的时候记得在原来你装的Python更下面添…

详解LLMOps,将DevOps用于大语言模型开发

大家好,在机器学习领域,随着技术的不断发展,将大型语言模型(LLMs)集成到商业产品中已成为一种趋势,同时也带来了许多挑战。为了有效应对这些挑战,数据科学家们转向了一种新型的DevOps实践LLM-OP…

质因数分解(cpp实现)--一种快速求得一个数有多少个因子的黑魔法

前言 最近机试没少吃不会质因数分解的亏,用传统的求得因子个数只能过一点点…(ex, 20%) 质因数分解后,可以将因子问题转化为 集合的组合问题,因此会很快,目测是 l o g n log n logn (n是该整数的值)。 传统解法 假设输入整数的…

【JavaEE网络】从数据链路层到应用层的DNS

目录 数据链路层以太网 DNS 数据链路层 越往下与程序员越远 代表协议:以太网。平常用的网线也叫“以太网线”,平常用的交换机也叫“以太网交换机” 以太网 认识以太网 “以太网” 不是一种具体的网络,而是一种技术标准;既包含…

MySql#MySql安装和配置

目录 一、卸载不需要的环境 二、安装mysql yum 源 三、开始安装 四、如果保证安装成功呢? 五、MySql 启动! 六、登录mysql 七、配置文件说明 八、设置开机启动! 本次安装是在Linux环境在centos7中完成 首先先将自己切换成root 一、…

【EI会议|稳定检索】2024年能源资源与动力、控制工程国际会议(ICERPCE 2024)

2024 International Conference on Energy Resources and Power, Control Engineering 一、大会信息 会议名称:2024年能源资源与动力、控制工程国际会议 会议简称:ICERPCE 2024 收录检索:提交Ei Compendex,CPCI,CNKI,Google Scholar等 会议官…

深入解析算法效率核心:时间与空间复杂度概览及优化策略

算法复杂度,即时间复杂度与空间复杂度,衡量算法运行时资源消耗。时间复杂度反映执行时间随数据规模增长的关系,空间复杂度表明额外内存需求。优化策略,如选择合适数据结构、算法改进、循环展开等,对于提升程序效率、减…

【高阶数据结构(一)】并查集详解

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:高阶数据结构专栏⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习更多Go语言知识   🔝🔝 高阶数据结构 1. 前言2. 并查集…

【vue+echarts】绘制中国地图,3D地图,省、市、县三级下钻以及回钻,南海诸岛小窗化显示,点位飞线图,点位名称弹窗轮播展示,及一些常见问题

先看效果展示图 目录 准备工作一, 绘制3D地图1,调用官网地址接口获取2,去官网下载中国地图的json数据到本地,本地引入 二, 南海诸岛小窗化显示1, 手动过滤掉,只保留小窗化的南海诸岛2, 代码层面过滤掉,只保留小窗化的南海诸岛 三, 省、市、县三级地图下钻及回钻1, 下钻2, 回钻…