IP协议,网络层

一、IP协议报文

在网络层最主要的协议是IP协议,网络层的主要任务是进行:1.地址管理 2.路由选择

地址管理:使用一套地址体系,描述互联网中每个设备所处的位置。

IP地址有两个版本,1.IPV4     2.IPV6  ,IPV6比IPV4 更加复杂,但IPv4比IPv6应用更加广泛。

版本号:IPV4、IPv6.

4位首部长度:单位:4字节,15*4=60字节(最大程度)

TOS:只有四位有效。最小延时、最大吞吐量、最高可靠性、最小成本。4位彼此冲突。

由于IP数据报有长度限制,所以在数据链路层有拆包/组包这样的功能。主要的因为在于:数据链路层的协议规定了数据字段的最大长度,无法干预。每个IP数据报来携带一部分的载荷。

16位标识:用于区分是否为同一个数据报的载荷。用一个传输层的数据报拆分后的IP数据报具有相同的数值标识。

3位标志:但只有两位有效。其中一位DF表示是否拆包了。还有一位MF ,表示数据报片是否结束。当MF为1时,表示“还有分片”,为0时,表示这已经是最后一个了。

13位片偏移:表示组的包之间的先后关系。

TTL: 一个数据包,没经过一个路由器TTL数值就会-1。TTL的初始值一般为32/64,当TTL为0时,该数据报就要被丢弃了。防止,数据报在互联网中无限的兜圈子,而消耗网络资源,或者IP地址无法找到。

8位协议:表示在传输层使用那个协议。

16位首部校验和:只校验首部。

二、IP地址

IP地址的表示方式:点分十进制。例如:192.168.0.1。4字节表示。0-255,可以表示42亿94万的IP地址。

IP地址分为2类:

(1)私有IP/局域网IP: 10.*,172.16.*-172.31.*,192.168.*,这些范围的IP地址为私有IP

(2)公网IP/广域网IP  :除私有IP其余对公网IP。

Win+R->cmd+ipconfig->

一般自己的

1、IP协议如何进行地址管理

(1)动态分配IP地址,给上网的设备分配IP地址,同时,同一个MAC地址的设备,每次接入互联网中,得到的IP地址不一定相同。

(2)NAT 机制(网络地址映射)

(3)使用IPv6(16个字节表示)

2.网段划分

IP地址可以划分为两部分:网络号+主机号

同一个网段内,主机之间具有相同的网络号,但主机号不能相同。

相邻网段,网络号不同。

例如:

一般路由器都有2个IP地址,一个是LAN口IP:局域网私有IP

一个是WAN口IP,可以是局域网IP,也可以是公网IP。

路由器LAN口连接的主机,都从属于当前路由器的子网中。不同的路由器,子网IP其实都是一样的。


通过设置主机号和网络号,可以保证在相互连接的网络中,每台主机的IP地址都不相同。

可以引入一个子网掩码来区分主机号和网络号。

假设网络号为18位,则子网掩码的前18位为1,后14位为0.子网掩码为255.255.192.0。当IP地址与子网掩码相与后,得到的数据就是网络号。

例如:

IP地址140.252.20.68
子网掩码255.255.255.0
网络号140.252.20.0
子网地址范围140.252.20.-140.252.20.255

IP地址可以自己划分,也可以系统分配。例如:DHCP就会自动分配IP地址。

3.特殊的IP地址

(1)127.*表示本机环回测试,表示本机自己,通常是127.0.0.1;

(2)将IP地址的主机地址全部设为0,就成了网络号,表示整个局域网。

(3)将IP地址的主机地址全部设为1,就成了广播地址。局域网中所有人都能收到。

这三个地址,不能分配给某个主机。

4.之前的IP地址划分

由于浪费了很多的IP地址,所以该分配方法已经被摒弃。

三、路径选择

           路由的过程是通过一跳一跳的方式进行选择。对于该数据要发向哪里,最主要的依据就是路由表。如果路由表中可以查询到发向哪,直接转发,否则发向一个默认的接口。

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

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

相关文章

信奥数据“信息差”,让你惊掉下巴!

✅ 信奥红利分析 暑假信奥赛即将到来,在全国各地赛事也越来越受到重视,但是似乎关于红利这一块各地如何,并没有太多的老师给各位家长分析清楚。 那么今天曹老师就主要给从各位新手家长分析一下信奥红利地区,在开始分析之前请大家看…

使用 MediaMTX 和 FFmpeg 推拉 RTSP 流媒体

实时流传输协议 RTSP(Real-Time Streaming Protocol)是 TCP/IP 协议体系中的一个应用层协议,由哥伦比亚大学、网景和 RealNetworks 公司提交的 IETF RFC 标准。该协议定义了一对多应用程序如何有效地通过 IP 网络传送多媒体数据。RTSP 在体系…

初始化创建一个webpack项目

新建一个空的工程 -> % mkdir webpack-project 为了方便追踪执行每一个命令,最终产生了哪些变更,将这个空工程初始化成git项目 -> % cd webpack-project/-> % git init Initialized empty Git repository in /Users/lixiang/frontworkspace/…

初探MFC程序混合使用QT

一、背景 随着操作系统国产化替代的趋势越发明显,软件支持国际化、跨平台,已然是必须做的一件事情。原有的软件UI层用的是MFC,将其换成QT,想必是一种较好的方案。对于大型软件,特别是已发布,但还处于不断迭…

C++进阶之路:探索访问限定符、封装与this指针的奥秘(类与对象_上篇)

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…

数据统计:词频统计、词表生成、排序及计数、词云图生成

文章目录 📚输入及输出📚代码实现 📚输入及输出 输入:读取一个input.txt,其中包含单词及其对应的TED打卡号。 输出 output.txt:包含按频率降序排列的每个单词及其计数(这里直接用于后续的词云…

设计模式之单例模式详解

单例模式 描述:单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。 核心特点 单例类只有一个实例对象;该单例对象必须由单例类自行创建;单例类对外提供一…

OpenCV 入门(一) —— OpenCV 基础

OpenCV 入门系列: OpenCV 入门(一)—— OpenCV 基础 OpenCV 入门(二)—— 车牌定位 OpenCV 入门(三)—— 车牌筛选 OpenCV 入门(四)—— 车牌号识别 OpenCV 入门&#xf…

每日两题 / 23. 合并 K 个升序链表 94. 二叉树的中序遍历(LeetCode热题100)

23. 合并 K 个升序链表 - 力扣(LeetCode) 若lists有k个元素,调用k - 1次(两个有序链表的合并)即可 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNod…

探索鸿蒙开发:鸿蒙系统如何引领嵌入式技术革新

嵌入式技术已经成为现代社会不可或缺的一部分。而在这个领域,华为凭借其自主研发的鸿蒙操作系统,正悄然引领着一场技术革新的浪潮。本文将探讨鸿蒙开发的特点、优势以及其对嵌入式技术发展的深远影响。 鸿蒙操作系统的特点 鸿蒙,作为华为推…

一键接入电商API数据接口淘宝API通过商品ID、URL采集商品详情页实时数据API接入指南

一键接入电商API数据接口,尤其是淘宝API,通常需要遵循以下步骤: 注册账号:注册接入账号获取Api Key和Api Secret。 选择API:根据需要选择合适的API服务,如通过商品ID或URL采集商品详情页数据的API。 权限…

WPF鼠标拖拽的最佳实现

WPF鼠标拖拽的最佳实现 在很多项目中都会遇到鼠标拖拽控件移动的需求,常见的有从在列表中拖拽列表项移动,拖拽控件移动等。 本文将介绍2种拖拽的简单的实现 列表项的拖拽 本文将使用 gong-wpf-dragdrop 这个github上的库来实现列表的拖拽的效果&…

GitLab使用记录

GitLab 文章目录 1. 常用命令1.1 配置邮箱 用户名1.2 查看配置1.3 基本语法 2. 连接gitlab3. 直接拉去项目 1. 常用命令 1.1 配置邮箱 用户名 git config --global user.name ShangzheChen git config --global user.email 735511377qq.com1.2 查看配置 cat ~/.gitconfig这…

企业信使_登陆页

在当今数字化时代,企业与员工之间的沟通变得越来越重要。为了满足企业内部沟通的需求,一款功能强大而方便使用的企业信使_登陆页应运而生。企业信使_登陆页是一种专为企业内部使用而设计的通讯工具,可以帮助企业提高沟通效率,加强…

4.用python爬取保存在text中的格式为m3u8的视频

文章目录 一、爬取过程详解1.寻找视频的m3u8链接2.从网页源码中寻找视频的m3u8链接的第二部分内容3.从视频的m3u8链接获取视频 二、完整的代码 一、爬取过程详解 1.寻找视频的m3u8链接 这个文档承接了爬虫专栏的 第一节.python爬虫爬取视频网站的视频可下载的源url&#xff0…

车规级低功耗汽车用晶振SG-9101CGA

车规级晶振SG-9101CGA属于爱普生9101系列,是一款可编程晶振。SG-9101CGA车规级晶振采用2.5x2.0mm封装,利用PLL技术生产,此款振荡器的频率范围从0.67M~170MHZ任一频点可选,步进1ppm,采用标准CMOS输出,最大输…

为 Flutter 应用设置主题:ThemeData 和 ColorScheme 指南

在媒体和其他来源中有许多关于这个主题的文章,那么这篇文章的必要性是什么? 在本文中,我计划仅关注 ThemeData 小部件的关键点以及我的开发经验中最常用的参数,并且您将获得有关每个参数如何对您的应用程序执行操作的简要说明。 …

分类任务的基础学习

1.什么是分类? 2.局限性: 当样本量逐渐变大的时候,准确率会下降——>因为线性回归曲线距离我们的原点越远,预测就会开始不准确,因为 x前面的倍数就会越来越小,这就导致了样本量变大,但是那些…

Kafka 业务日志采集最佳实践

简介 Apache Kafka 是一个分布式流处理平台,主要用于构建实时数据流管道和应用程序。在收集业务日志的场景中,Kafka 可以作为一个消息中间件,用于接收、存储和转发大量的日志数据。将 Kafka 与其他系统(如 Elasticsearch、Flume、…

docker-compose安装 人大金仓数据库

下载官网安装包 将安装包重命名为: kingbase.tar 再导入镜像仓库 docker load -i kingbase.tar目录创建data文件夹创建docker-compose文件 version: 3 services: kingbase: image: kingbase:v1 container_name: kingbaseports: - "54321:54321" volumes: -…