当前位置: 首页 > news >正文

IP协议基础

文章目录

    • 基本概念
      • IP和TCP分别解决什么问题
    • 以下过程都是在网络层完成的
    • 网段划分
    • 路由
      • 路由转发过程
      • 路由表

基本概念

主机: 配有IP地址, 但是不进行路由控制的设备。

路由器: 即配有IP地址, 又能进行路由控制。

节点: 主机和路由器的统称。

IP和TCP分别解决什么问题

  1. TCP解决决策问题,IP解决执行问题
  2. IP给数据提供了从主机A跨网络传送给主机B的能力,但是IP层不提供可靠性机制,只是“较大概率可靠”

如何理解呢?

当产生数据未正常接收等问题的时候,TCP有超时重传、快重传等各种策略,这相当于给网络层的IP再次分发了任务,这就是一种决策,就是一种可靠性。

而IP只需要按照TCP做出的决策:如何发、发多少等去完成自己的任务,如果发生异常,就回到TCP决策层再次决策。

以下过程都是在网络层完成的

网段划分

IP地址分为两个部分, 网络号和主机号。即 IP=网络号+主机号

网络号: 保证相互连接的两个网段具有不同的标识;
主机号: 同一网段内, 主机之间具有相同的网络号, 但是必须有不同的主机号

  • 不同的子网其实就是把网络号相同的主机放到一起.
  • 如果在子网中新增一台主机, 则这台主机的网络号和这个子网的网络号一致, 但是主机号必须不能和子网中的其他主机重复

路由

路由转发过程

IP数据包的传输过程和日常生活问路一样:

  1. 当IP数据包, 到达路由器时, 路由器会先查看目的IP;
  2. 路由器决定这个数据包是能直接发送给目标主机, 还是需要发送给下一个路由器;
  3. 依次反复, 一直到达目标IP地址
  • IP的意义

IP最大的意义在于路径选择。 也就是为什么需要把这个数据包由A交到B呢?这是由目的IP决定的。

而如何把数据包从A交到B,是数据链路层解决的,也就是MAC帧,目前网络层决定的是A到B。

IP数据包传输的时候每一跳是在数据链路层中的一个区间. 具体在以太网中指从源MAC地址到目的MAC地址之间的帧传输区间

而每一跳之间的连接叫做一个节点,这里指的是路由器。

那么如何判定当前这个数据包该发送到哪里呢? 这个就依靠每个节点内部维护一个路由表。

凡是能够直接跳转到下一跳的,一定是直接相连的节点,也就是它们一定在同一个局域网。所谓的路由转发其实就是报文在不同局域网内各个相连节点传输的过程。

路由表

  • 路由表可以使用route命令查看
  • 如果目的IP命中了路由表, 就直接转发即可;
  • 路由表中的最后一行,主要由下一跳地址和发送接口两部分组成,当目的地址与路由表中其它行都不匹配时,就按缺省路由条目规定的接口发送到下一跳地址

相关文章:

IP协议基础

文章目录 基本概念IP和TCP分别解决什么问题 以下过程都是在网络层完成的网段划分路由路由转发过程路由表 基本概念 主机: 配有IP地址, 但是不进行路由控制的设备。 路由器: 即配有IP地址, 又能进行路由控制。 节点: 主机和路由器的统称。 IP和TCP分别解决什么问题 TCP解决…...

Redis主从复制、哨兵实战

环境:linux centos7.x ,虚拟机3台 版本:redis-6.2.6 1.下载安转redis 下载地址 wget https://download.redis.io/releases/redis-6.2.6.tar.gz解压 tar -zxvf redis-6.2.6.tar.gz移动目录 mv redis-6.2.6 /usr/local/redis编译 cd /usr/…...

README.md编写

一、摘要 项目一般会有个描述文件,对于项目的代码来讲,这个描述就是README.md文件,可以描述各模块功能、目录结构等。该文件可以方便让人快速了解项目的代码结构和功能。当然,若要深层次的了解项目,就得看项目总体的需…...

软件设计证书倒计时28天

从一个月前的果断报考软件设计证书,我没有后悔过。 软件设计证书一个月备考情况: 现在做选择题的正确率可以达到65%。是重复做过两遍历年真题。 接下来是继续做模拟题。 大题的题型基本是都知道, 第一题数据流图,第二题er图&…...

程序员基础的硬件知识(cpu、主板、显卡、内存条等)

一、综合简介 cpu:负责运算数据,就等于你的大脑运算速度。 显卡:本来没有显卡,后来因为大家对图片要求越来越高,视频要求越来越高,啥都让cpu算太累了,于是分出来一个,专门用来计算…...

优化Google Cloud Storage大文件上传和内存溢出

背景 我们的项目每天都会并行上传好几万份文件到下游的GCP Cloud Storage,当文件比较大时,会采用GCP的可续上传方案,通过把文件切分成多个数据块,分多次HTTP请求上传到GCP Bucket,具体可参考https://cloud.google.com…...

chatGPT的prompt技巧

Prompt 公式是 Prompt 的特定格式,通常由三个主要元素组成: 任务:明确而简洁地陈述 Prompt 要求模型生成的内容。指令:模型在生成文本时应遵循的指令。角色:模型在生成文本时应扮演的角色。 指令 Prompt 技术 指令 …...

【华为OD机试 2023最新 】统一限载货物数最小值(C语言题解 100%)

文章目录 题目描述输入描述输出描述备注用例题目解析代码思路C语言题目描述 火车站附近的货物中转站负责将到站货物运往仓库,小明在中转站负责调度2K辆中转车(K辆干货中转车,K辆湿货中转车)。 货物由不同供货商从各地发来,各地的货物是依次进站,然后小明按照卸货顺序依…...

ios 在windows chrome 联调

必要条件 1、iOS设备、数据线 2、Node.js 环境 3、Chrome 浏览器 4、电脑登录iTunes 5、手机 Safari 浏览器环境准备 1、安装Node环境参考Node安装的教程,确保终端输入node时可正常使用 2、安装 scoope 以及相关配置为了安装后续需要用的工具 remotedebug-ios-web…...

干翻Mybatis源码系列之第六篇:Mybatis可选缓存概述

前言 一:后续Mybatis我们会研究那些内容? Mybatis核心运行源码分析(前面系列文章已经探讨过) Mybatis中缓存的使用 Mybatis与Spring集成 Mybatis 插件。 Mybatis的插件可以对Mybatis内核功能或者是业务功能进行拓展&#xff0c…...

如何调教ChatGPT

调教ChatGPT需要进行以下步骤: 收集语料库 首先需要准备一定量的自然语言数据,这些数据可以是文本、对话、新闻等。语料库越大,模型效果通常会越好。 数据预处理 对于收集到的原始语料库需要进行一定的预处理操作,比如去除噪声…...

记一次我的漏洞挖掘实战——某公司的SQL注入漏洞

目录 一、前言 二、挖掘过程 1.谷歌语法随机搜索 2.进入网站 3.注入点检测 3.SQLMAP爆破 (1)爆库 (2)爆表 (3)爆字段 三、总结 一、前言 我是在漏洞盒子上提交的漏洞,上面有一个项目叫…...

代码随想录二刷复习 day1 704二分查找 27 移除元素 977 有序数组的平方

代码如下 func search(nums []int, target int) int { left : 0 right : len(nums)-1 for left < right { middle : (leftright)/2 if target < nums[middle] { //因为上面的判断条件是left < right&#xff0c;所以左右两个边界的值最后都能取到&#xff0c;而此…...

第16章 指令级并行与超标量处理器

处理器体系结构的超标量实现是指常见指令--整数与浮点算术、加载存储和条件分支--可以同时启动&#xff0c;但独立执行。 16.1 概述 超标量方法的本质是能在不同的流水线中独立地并发地执行指令。 在传统的标量组织结构中&#xff0c;其并行性是通过允许许多指令在同一时间处…...

JavaWeb ( 三 ) Web Server 服务器

1.5.Web Server服务器 Web Server 服务器是一种安装在服务器主机上的应用程序, 用于处理客户端(Web浏览器)的请求&#xff0c;并返回响应内容。服务器使用HTTP(超文本传输协议)与客户机浏览器进行信息交流。 简单说就是将http协议的信息翻译成对应开发语言可以处理的对象信息。…...

2.6 浮点运算方法和浮点运算器

学习目标&#xff1a; 以下是一些具体的学习目标&#xff1a; 理解浮点数的基本概念和表示方法&#xff0c;包括符号位、指数和尾数。学习浮点数的运算规则和舍入规则&#xff0c;包括加、减、乘、除、开方等。了解浮点数的常见问题和误差&#xff0c;例如舍入误差、溢出、下…...

第一次找实习, 什么项目可以给自己加分(笔记)

什么样的项目能简历加分、对找工作有帮助 基本特征&#xff1a; 一个特征是“硬核基础软件”&#xff0c;另一个为很实用的APP。 硬核基础软件 独立实现一个操作系统的kerne内核&#xff08;操作系统的内部引擎&#xff09; 北美计算机名校会让学生用一个学期的时间实现一个…...

FPGA/Verilog HDL/AC620零基础入门学习——8*8同步FIFO实验

实验要求 该项目主要实现一个深度为8、位宽为8bit的同步FIFO存储单元。模块功能应包括读控制、写控制、同时读写控制、FIFO满状态、FIFO空状态等逻辑部分。 该项目由一个功能模块和一个testbench组成。其中功能模块的端口信号如下表所示。 提示&#xff1a; &#xff08;1&a…...

shell脚本

shell函数 函数分类&#xff1a; 系统函数 自定义函数 常用系统函数&#xff1a; basename 从指定路径中获取文件名 dirname 从指定路径中获取目录名&#xff0c;去掉文件名 自定义函数 # 函数的定义 函数名 () { 命令 # 使用$n获取函数的参数 [return 返回…...

不部署服务端调用接口,前端接口神器json-server

简介 json-server 是一款小巧的接口模拟工具&#xff0c;一分钟内就能搭建一套 Restful 风格的 API&#xff0c;尤其适合前端接口测试使用。 只需指定一个 json 文件作为 api 的数据源即可&#xff0c;使用起来非常方便&#xff0c;30秒入门&#xff0c;基本上有手就行。 进阶…...

UE4网络同步实战:AIController与RPC的避坑指南(含C++代码示例)

UE4网络同步实战&#xff1a;AIController与RPC的避坑指南&#xff08;含C代码示例&#xff09; 在多人联机游戏的开发中&#xff0c;网络同步始终是开发者面临的核心挑战之一。虚幻引擎4&#xff08;UE4&#xff09;提供了强大的网络框架&#xff0c;但其中AIController的服务…...

OpenClaw+Qwen3-32B双镜像方案:AI写作与发布自动化流水线

OpenClawQwen3-32B双镜像方案&#xff1a;AI写作与发布自动化流水线 1. 为什么需要双镜像协作&#xff1f; 去年冬天&#xff0c;当我第一次尝试用AI自动化完成技术博客的写作和发布时&#xff0c;遇到了一个典型困境&#xff1a;本地模型响应快但质量一般&#xff0c;云端大…...

Qwen3-0.6B-FP8快速上手:Anaconda环境下的Python开发配置

Qwen3-0.6B-FP8快速上手&#xff1a;Anaconda环境下的Python开发配置 想试试最新的轻量级大模型Qwen3-0.6B-FP8&#xff0c;但被Python环境搞得头大&#xff1f;别担心&#xff0c;今天咱们就来手把手搞定它。很多朋友在第一步——环境配置上就卡住了&#xff0c;要么是包版本…...

OpenClaw版本升级:GLM-4.7-Flash环境无缝迁移指南

OpenClaw版本升级&#xff1a;GLM-4.7-Flash环境无缝迁移指南 1. 为什么需要升级&#xff1f; 上周我在本地开发环境遇到一个棘手问题&#xff1a;OpenClaw的旧版本无法正确解析GLM-4.7-Flash模型返回的JSON响应。经过排查发现是框架对数组嵌套结构的处理存在兼容性问题。这促…...

引入电转气协同的含碳捕集与垃圾焚烧虚拟电厂优化调度

【文章复现 可】计及电转气协同的含碳捕集与垃圾焚烧 虚拟电厂优化调度 引入碳捕集电厂–电转气–燃气机组协同利用框架&#xff0c;碳捕集的 CO2可作为电转气原料&#xff0c;生成的天然气则供应给燃气机组&#xff1b;并通过联合调度将碳捕集能耗和烟气处理能耗进行负荷转移…...

手把手教你给RK3588开发板添加RTL8188EUS USB无线网卡驱动(附完整配置流程)

RK3588开发板实战&#xff1a;RTL8188EUS无线网卡驱动移植全指南 在嵌入式开发领域&#xff0c;为特定硬件平台添加第三方外设驱动是开发者常遇到的挑战。本文将详细介绍如何在Rockchip RK3588开发板上为RTL8188EUS USB无线网卡移植驱动&#xff0c;从环境准备到功能验证&#…...

2026年云储存哪个好用?5款免费又便捷的工具深度盘点

在如今这个数字化时代&#xff0c;云储存软件成为了我们存储、管理和共享数据的得力助手。无论是个人用户保存生活照片、工作文档&#xff0c;还是企业团队协作共享资源&#xff0c;都离不开云储存。 然而市场上软件众多&#xff0c;到底哪个才真正好用&#xff1f;为了帮助大…...

Wemod-Patcher:开源工具实现WeMod功能增强的完整方案

Wemod-Patcher&#xff1a;开源工具实现WeMod功能增强的完整方案 【免费下载链接】Wemod-Patcher WeMod patcher allows you to get some WeMod Pro features absolutely free 项目地址: https://gitcode.com/gh_mirrors/we/Wemod-Patcher 在游戏体验优化领域&#xff0…...

从PHY芯片到TCP/IP协议栈:用Wireshark抓包分析lwIP的ethernetif_input全流程

从PHY芯片到TCP/IP协议栈&#xff1a;用Wireshark抓包分析lwIP的ethernetif_input全流程 在嵌入式网络开发中&#xff0c;理解数据从物理层到协议栈的完整传输路径至关重要。本文将结合STM32F7开发板实战&#xff0c;通过Wireshark抓包与示波器波形双重验证&#xff0c;深入解析…...

杰理之 使用触摸调试工具【篇】

...