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

网络协议从入门到底层原理学习(三)—— 路由

网络协议从入门到底层原理学习(三)—— 路由

1、简介

路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程

在这里插入图片描述
在不同网段之间转发数据,需要有路由器的支持

默认情况下,路由器只知道跟它直连的网段,非直连的网段需要通过静态路由、动态路由告诉它

  • 静态路由

    管理员手动添加路由信息

    适用于小规模网络

  • 动态路由

    路由器通过路由选择协议(比如RIP、OSPF)自动获取路由信息

    适用于大规模网络

2、网络、互联网、因特网

在这里插入图片描述
全世界最大的互联网是:因特网( Internet)

  • 将全世界所有的计算机都连接在一起

  • 一般使用大写I开头的Internet特指因特网

  • 日常生活中说的:你的电脑上不了网。其实就是指:你的电脑没有连接到因特网

3、ISP

ISP,Internet Service Provider,Internet服务提供商,比如移动、电信、网通、铁通等

  • 我们平时拉的宽带都是通过ISP连接到Internet的

4、网络分类

按照网络的范围进行分类,可以分为:局域网、城域网、广域网等

◼ 局域网(Local Area Network, LAN)

  • 一般是范围在几百米到十几公里内的计算机所构成的计算机网络

  • 常用于公司、家庭、学校、医院、机关、一幢大楼等

  • 局域网中使用最广泛的网络技术叫:以太网( Ethernet)

  • 在电脑、手机上经常见到的一个英文 ( Wireless LAN),意思是无线局域网

◼ 城域网(Metropolitan Area Network,MAN)

  • 一般范围是数十公里到数百公里,可以覆盖一个城市

◼ 广域网(Wide Area Network,WAN)

  • 一般范围是几百公里到几千公里,可以覆盖一个国家。通常都需要租用 ISP的线路

常见的几种接口

FastEthernet

  • 快速以太网接口(100M)

GigabitEthernet

  • 千兆以太网接口

Serial

  • 串行接口

5、上网方式

上网方式——电话线入户

在这里插入图片描述
这就是平时说的:ADSL电话拨号上网(Asymmetric Digital Subscriber Line)

  • 非对称数字用户线路,提供上、下行不对称的传输带宽

猫( Modem),调制解调器,进行数字信号和模拟信号的转换

上网方式——光纤入户

在这里插入图片描述
光猫( Optical Modem),光调制解调器,进行数字信号和光信号的转换

上网方式——网线入户

在这里插入图片描述
家用无线路由器的逻辑结构
在这里插入图片描述

6、路由器的作用

1、能够将数据包转发到正确的目的地

2、转发过程中选择最佳路径的设备

7、路由器转发数据包的封装过程

源目IP保持不变,源目MAC随着传输设备不同而不同

8、路由器和交换机的对比

在这里插入图片描述

9、选取最优路由时的标准

1、子网掩码长度最长的最优先匹配
2、选取路由协议中优先级最小的最优先匹配

在这里插入图片描述
3、相同路由协议的情况下,选取metric值最小的最优先匹配。

每种协议metric值定义的不相同,静态路由和路由优先级有关,这个是人为指定的,RIP协议和跳数有关,跳数越小越优;OSPF协议和带宽有关,带宽最大最优先;metric时用来判定链路质量优劣的

4、如果以上都没有路由可以匹配得上,就匹配默认路由

10、路由表的定义

路由器中维护的路由条目的集合

11、路由表的形成

1、直连网段:配置IP地址、端口UP状态、形成直连路由

2、非直连网段:对于非直连的网段,需要静态路由或动态路由,将网段添加到路由表中

12、路由表的主要作用

决定设备的三层数据包的转发关系。目标网络能匹配路由表,从相应接口转发;若不能匹配路由表,则drop(丢弃)掉该数据包,不会像交换机那样泛洪(广播)。

路由传递依据路由表

13、路由协议的分类

路由协议:

静态路由——管理员手工配置路由

动态路由——路由器间自动学习路由

1.局域网内——IGP(内部网关路由协议)

距离矢量路由协议——RIPV1、RIPV2、EIGRP(思科)

链路状态路由协议——OSPF、ISIS(LS)

2.互联网 ——EGP(外部网关路由协议)——BGPV4(版本4)

14、静态路由

优点:运行稳定,节省设备链路开销

缺点:对大型网络来说,工作量较大,拓扑一旦发生了改变,维护量变大。

建议:小型网络使用静态路由(总共配置少于十条路由),中大型网络使用动态路由。

15、默认路由-匹配的是所有网段

1、当路由器在路由表中找不到目标网络的路由条目时,路由器把请求转发到默认路由接口

2、默认路由时静态路由的一种特殊方式,它属于静态路由的一种,使用它是有条件的,只能在末梢网络中使用

16、浮动路由

指的是配置两条静态路由,默认选取链路质量优(带宽大的)作为主路经,当主路经出现故障时,由带宽较小的备份路由顶替,保持网络的不中断

17、动态路由

动态路由:不需要手工写路由,路由器之间能够自己互相学习(基于某种路由协议实现)

特点:

①减少了管理任务

②占用了网络带宽

动态路由协议的概述:邻居路由器之间路由协议应保持一致

度量值:跳数、带宽、负载、时延、可靠性、成本

收敛:所有运行同一种路由协议的路由器使所有路由表都达到一致状态的过程

按照路由执行的算法分类

1、距离矢量路由协议

依据从源网络到目标网络所经过的路由器的个数选择路由

RIP、IGRP

2、链路状态路由协议

综合考虑从源网络到目标网络的各条路径的情况选择路由

OSPF、IS-IS

18、RIP路由协议工作原理

1、RIP 是距离矢量路由协议

2、RIP的概述

①定期更新(30s)

②邻居

③广播更新、组播更新

④全路由表更新

19、RIP的度量值与更新时间

RIP度量值为跳数:最大跳数为15跳,16跳为不可达
RIP更新时间:每隔30s发送路由更新消息,UDP520端口
RIP路由更新消息:发送整个路由表消息

20、路由环路的原因

定期更新,更新周期长

执行水平分割可以阻止路由环路的发生

1、从一个接口学习到的路由消息,不再从这个接口发送出去

2、同时也能减少路由更新消息占用的链路带宽资源

21、RIPV1和RIPV2区别

在这里插入图片描述
RIPV1:

跨越主类网络边界:指的是两个不同的主类网络之间的路由网段,跨越主类网络边界的路由器会自动把路由汇总成主类显示

22、公网IP、私网IP

IP地址也分为:公网IP、私网IP

公网IP(Public)

  • Internet上的路由器中只有到达公网的路由表,没有到达私网的路由表

  • 公网IP由因特网信息中心(Internet Network Information Center,Inter NIC)统一分配和管理

  • ISP需要向 Inter NIC 申请公网

私网IP(Private)

  • 主要用于局域网。下面是保留的私网网段

    A类:10.0.0.0/8,1个A类网络

    B类:172.16.0.0/16 ~ 172.31.0.0/16,16个B类网络

    C类:192.168.0.0/24 ~ 192.168.255.0/24,256个C类网络

23、NAT

私网IP访问Internet 需要进行 NAT 转换为公网

  • NAT( Network Address Translation )

  • 这一步可以由路由器来完成

NAT 的特点

  • 可以节约公网IP资源

  • 会隐藏内部真实IP

NAT的分类

  • 静态转换

    手动配置 NAT 映射表

    一对一转换

  • 动态转换

    定义外部地址池,动态随机转换

    一对一转换

  • PAT( Port Address Translation )

    多对一转换,最大程度节约公网IP资源

    采用端口多路复用方式,通过端口号标识不同的数据流

    目前应用最广泛的 NAT 实现方式

相关文章:

网络协议从入门到底层原理学习(三)—— 路由

网络协议从入门到底层原理学习(三)—— 路由 1、简介 路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程 在不同网段之间转发数据,需要有路由器的支持 默认情况下,路由器…...

2023/9/6 -- C++/QT

一、输出流对象cout 1> 该对象是来自于ostream的类对象,功能上类似于printf函数 2> 该类对象本质上调用成员函数插入运算符重载函数 3> 输出数据时,无需使用格式控制符:%d、%c、%s。。。,直接输出即可 4> 换行使用…...

python爬虫,多线程与生产者消费者模式

使用队列完成生产者消费者模式使用类创建多线程提高爬虫速度 https://sc.chinaz.com/tupian/index.html https://sc.chinaz.com/tupian/index_2.html https://sc.chinaz.com/tupian/index_3.html from threading import Thread from queue import Queue import requests from b…...

WordPress 提示“此站点遇到了致命错误”的解决方法

WordPress 提示“此站点遇到了致命错误”的解决方法 WordPress 网站博客提示“此站点遇到了致命错误。”如何解决?今天老唐不幸遇到了这个问题,搜了一下解决方法,发现致命错误原因有很多,所以需要先打开 WordPress 的 WP_DEBUG 功…...

Vue3,Typescript中引用组件路径无法找到模块报错

是这么个事,我在vue3新创建的项目里,写了个组件叫headerIndex.vue,放到app.vue中import就会报错 路径肯定没写错,找到了解决方法,但是也没想明白为什么 解决方法如下 在vite-env.d.ts文件中加入 declare module &qu…...

科技成果鉴定之鉴定测试报告

鉴定测试 由于软件类科技成果的复杂、内部结构难以鉴别等特点,我们提供了软件类科技成果鉴定测试服务。软件类科技成果鉴定测试是依据其科研项目计划任务书或技术合同书,参照相应的国家标准对要申请鉴定的软件类科技成果进行的一种符合性测试&#xff0…...

NFTScan 浏览器正式版上线 2 周年!

NFTScan 成立于 2021 年 4 月份,总部位于香港。在 2021 年的 7 月份,NFTScan 团队对外发布了 NFTScan 浏览器公测版,并在同年的 9 月 4 号,对外发布了 NFTScan 浏览器正式版,同步启用了全球品牌域名:NFTSCA…...

为什么要使用Token

传统的session认证 我们知道,http协议是一种无状态的协议,这就意味着当用户向我们的应用提供了用户名和密码进行用户认证,那么在下一次登录的时候,用户还要再进行验证,因为根据http协议,浏览器并不知道是谁…...

前端面试的话术集锦第 8 篇:高频考点(JS性能优化 性能优化琐碎事)

这是记录前端面试的话术集锦第八篇博文——高频考点(JS性能优化 & 性能优化琐碎事),我会不断更新该博文。❗❗❗ 1. 从V8中看JS性能优化 注意:该知识点属于性能优化领域。 1.1 测试性能⼯具 Chrome已经提供了⼀个⼤⽽全的性能测试⼯具Audits。 点我们点击Audits后,可…...

【数据分析】Python:处理缺失值的常见方法

在数据分析和机器学习中,缺失值是一种常见的现象。在实际数据集中,某些变量的某些条目可能没有可用的值。处理缺失值是一个重要的数据预处理步骤。在本文中,我们将介绍如何在 Pandas 中处理缺失值。 我们将探讨以下内容: 什么是缺…...

“批量随机字母命名文件,轻松管理你的文件库“

你是否曾经遇到过文件命名混乱,难以管理的问题?为了解决这个问题,我们推出了一款全新的文件改名工具,它可以帮助你批量给文件名添加一个随机字母,让你的文件库更加有序、易于管理。 首先第一步,我们要进入…...

elasticsearch的数据聚合

聚合可以让我们极其方便的实现对数据的统计、分析、运算。例如: 什么品牌的手机最受欢迎? 这些手机的平均价格、最高价格、最低价格? 这些手机每月的销售情况如何? 实现这些统计功能的比数据库的sql要方便的多,而且…...

【网络编程·数据链路层】MAC帧/以太网协议/ARP协议/RARP协议

需要云服务器等云产品来学习Linux的同学可以移步/-->腾讯云<--/-->阿里云<--/-->华为云<--/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;新用户首次下单享超低折扣。 目录 一、MAC帧 1、IP地址和MAC地址的区别 2、MAC帧协议 3、MTU对IP协议的…...

算法:移除数组中的val的所有元素---双指针[2]

文章来源&#xff1a; https://blog.csdn.net/weixin_45630258/article/details/132689237 欢迎各位大佬指点、三连 1、题目&#xff1a; 给你一个数组 nums和一个值 val&#xff0c;你需要原地移除所有数值等于 val 的元素&#xff0c;并返回移除后数组的新长度。 不要使用…...

Python小知识 - Python爬虫进阶:如何克服反爬虫技术

Python爬虫进阶&#xff1a;如何克服反爬虫技术 爬虫是一种按照一定的规则&#xff0c;自动抓取网页信息的程序。爬虫也叫网页蜘蛛、蚂蚁、小水滴&#xff0c;是一种基于特定算法的自动化程序&#xff0c;能够按照一定的规则自动的抓取网页中的信息。爬虫程序的主要作用就是从一…...

SAP中的新旧事务码

SAP中的新旧事务码 SAP随着新版本的发布&#xff0c;我们知道sap已经更新了很多的程序和TCODE。sap提供了很多新的TCODE来替换旧的TCODE&#xff0c;新TCODE有很多的新特性和新功能。在这个这种情况下&#xff0c;很多旧TCODE就会被废弃。我们如何查找这个替换呢&#xff1f; …...

day3_C++

day3_C 思维导图用C的类完成数据结构 栈的相关操作用C的类完成数据结构 循环队列的相关操作 思维导图 用C的类完成数据结构 栈的相关操作 stack.h #ifndef STACK_H #define STACK_H#include <iostream> #include <cstring>using namespace std;typedef int datat…...

力扣题解(73. 矩阵置零),带注释

题目描述 链接:点我 题解 //法一 使用hashset记录有0的横纵坐标即可 class Solution {public void setZeroes(int[][] matrix) {HashSet<Integer> row new HashSet<Integer>();HashSet<Integer> col new HashSet<Integer>();for(int i 0;i <…...

SpringMVC应用

文章目录 一、常用注解二、参数传递2.1 基础类型String2.2 复杂类型2.3 RequestParam2.4.路径传参 PathVariable2.4 Json数据传参 RequestBody2.5 RequestHeader 三、方法返回值3.1 void3.2 Stringmodel3.3 ModelAndView 一、常用注解 SpringMVC是一个基于Java的Web框架&#…...

百度输入法全面升级,打造首个基于大模型的输入法原生应用

基于文心一言&#xff0c;百度输入法宣布全面升级&#xff0c;打造行业首个“基于大模型的输入法原生应用”&#xff0c;从“输入工具”全面转型为“AI创作工具”。 近日&#xff0c;百度文心一言正式向公众开放。基于文心一言&#xff0c;百度输入法宣布全面升级&#xff0c;打…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

Opencv中的addweighted函数

一.addweighted函数作用 addweighted&#xff08;&#xff09;是OpenCV库中用于图像处理的函数&#xff0c;主要功能是将两个输入图像&#xff08;尺寸和类型相同&#xff09;按照指定的权重进行加权叠加&#xff08;图像融合&#xff09;&#xff0c;并添加一个标量值&#x…...

ESP32读取DHT11温湿度数据

芯片&#xff1a;ESP32 环境&#xff1a;Arduino 一、安装DHT11传感器库 红框的库&#xff0c;别安装错了 二、代码 注意&#xff0c;DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...

【2025年】解决Burpsuite抓不到https包的问题

环境&#xff1a;windows11 burpsuite:2025.5 在抓取https网站时&#xff0c;burpsuite抓取不到https数据包&#xff0c;只显示&#xff1a; 解决该问题只需如下三个步骤&#xff1a; 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中&#xff0c;具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类&#xff1a; 身份验证机制&#xff1a;直接将未经授权的爬虫阻挡在外反爬技术体系&#xff1a;通过各种技术手段增加爬虫获取数据的难度…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...