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,一经查实,立即删除!

相关文章

【神经网络】09 - 优化器 torch.optim

09 - 优化器 torch.optim 概念 优化器是用于更新和管理模型参数以改进模型性能的一种工具。在机器学习和深度学习中,优化器的主要任务是通过调整模型的参数来最小化或最大化特定的目标函数。在许多情况下,这个目标函数是一个损失函数,我们的…

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

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

使用 MediaMTX 和 FFmpeg 推拉 RTSP 流媒体

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

将每个Excel文件的数据量统一减少至120000行

为了将每个Excel文件的数据量统一减少至120000行,可以使用Python的pandas库来加载、修改和保存每个文件。以下是一个简单的Python脚本: 首先,确保已经安装了pandas库,如果没有安装,可以通过以下命令安装: …

初始化创建一个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)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。 核心特点 单例类只有一个实例对象;该单例对象必须由单例类自行创建;单例类对外提供一…

jsSPA应用如何实现动态内容更新

JS SPA(单页面应用)应用的原理、优势以及例子如下: 原理: SPA应用的核心原理在于,它使用JavaScript动态地创建和更新DOM结构,而非通过传统的多页面跳转来呈现内容。当用户与应用程序交互时,SP…

怎么保护公司机密数据?全维度分析教会你!

随着计算机和网络技术的普及发展,公司和企业的办公方式和业务流发生了翻天覆地的变化。 全世界有60%的人主要从事与信息的生成、加工和存储以及相关技术的服务性工作。大量数据信息的创建、存储、传输以及共享方式已经发生了革命性的变化,主要表现在以下…

OpenCV 入门(一) —— OpenCV 基础

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

【LeetCode题库】197. 上升的温度 —— 连接查询

文章目录 原题题解解题笔记 我是一名立志把细节说清楚的博主,欢迎【关注】🎉 ~ 原创不易, 如果有帮助 ,记得【点赞】【收藏】 哦~ ❥(^_-)~ 如有错误、疑惑,欢迎【评论】指正探讨,我会尽可能第一时间回复…

给定矢量初始位置,旋转角度,求解最终位置

给定矢量初始位置,旋转角度,求解最终位置 推荐阅读正文推荐阅读 矢量旋转矩阵 正文 这里如果我们给定一个矢量 O A ⃗ \vec{OA}

Meilisearch vs Elasticsearch

2个搜索引擎的比较(官方说法):Meilisearch vs Elasticsearch 传统的Elasticsearch足够灵活强大、扩展性和实时性也较好。 但是对于中小型项目来说,Elasticsearch还是显得有些庞大,对硬件设备的要求也较高,成…

每日两题 / 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这…