网络协议从入门到底层原理学习(三)—— 路由
网络协议从入门到底层原理学习(三)—— 路由
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…...
科技成果鉴定之鉴定测试报告
鉴定测试 由于软件类科技成果的复杂、内部结构难以鉴别等特点,我们提供了软件类科技成果鉴定测试服务。软件类科技成果鉴定测试是依据其科研项目计划任务书或技术合同书,参照相应的国家标准对要申请鉴定的软件类科技成果进行的一种符合性测试࿰…...
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的同学可以移步/-->腾讯云<--/-->阿里云<--/-->华为云<--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。 目录 一、MAC帧 1、IP地址和MAC地址的区别 2、MAC帧协议 3、MTU对IP协议的…...
算法:移除数组中的val的所有元素---双指针[2]
文章来源: https://blog.csdn.net/weixin_45630258/article/details/132689237 欢迎各位大佬指点、三连 1、题目: 给你一个数组 nums和一个值 val,你需要原地移除所有数值等于 val 的元素,并返回移除后数组的新长度。 不要使用…...
Python小知识 - Python爬虫进阶:如何克服反爬虫技术
Python爬虫进阶:如何克服反爬虫技术 爬虫是一种按照一定的规则,自动抓取网页信息的程序。爬虫也叫网页蜘蛛、蚂蚁、小水滴,是一种基于特定算法的自动化程序,能够按照一定的规则自动的抓取网页中的信息。爬虫程序的主要作用就是从一…...
SAP中的新旧事务码
SAP中的新旧事务码 SAP随着新版本的发布,我们知道sap已经更新了很多的程序和TCODE。sap提供了很多新的TCODE来替换旧的TCODE,新TCODE有很多的新特性和新功能。在这个这种情况下,很多旧TCODE就会被废弃。我们如何查找这个替换呢? …...
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框架&#…...
百度输入法全面升级,打造首个基于大模型的输入法原生应用
基于文心一言,百度输入法宣布全面升级,打造行业首个“基于大模型的输入法原生应用”,从“输入工具”全面转型为“AI创作工具”。 近日,百度文心一言正式向公众开放。基于文心一言,百度输入法宣布全面升级,打…...
如何解决GitHub 访问不了?小白教程
GitHub 是全球最大的代码开源平台,小伙伴们平时都喜欢在那里找一些优质的开源项目来学习,以提升自己的编程技能。 但是很多小白初探GitHub 发现访问不了,不能访问 通过一下方法绕过这堵墙,成功下载 GitHub 上的项目。过程非常简单…...
龙芯指令集LoongArch——学习笔记(1)
1 龙芯架构 PDF下载链接: https://www.loongson.cn/download/index 1.1 龙芯架构概述 龙芯架构具有 RISC 指令架构的典型特征。 它的指令长度固定且编码格式规整, 绝大多数指令只有两个源操作数和一个目的操作数, 采用 load/store 架构&…...
ubuntu 20.04 docker安装emqx 最新版本或指定版本
要在Ubuntu 20.04上使用Docker安装EMQX(EMQ X Broker)的4.4.3版本,您可以执行以下步骤: 1.更新系统包列表: sudo apt update2.安装Docker: sudo apt install docker.io3.启动Docker服务并设置其开机自启…...
软件测试/测试开发丨学会与 AI 对话,高效提升学习效率
点此获取更多相关资料 简介 ChatGPT 的主要优点之一是它能够理解和响应自然语言输入。在日常生活中,沟通本来就是很重要的一门课程,沟通的过程中表达越清晰,给到的信息越多,那么沟通就越顺畅。 和 ChatGPT 沟通也是同样的道理&…...
CEF内核和高级爬虫知识
(转)关于MFC中如何使用CEF内核(CEF初解析) Python GUI: cefpython3的简单分析和应用 cefpython3:一款强大的Python库 开始大多数抓取尝试可以从几乎一行代码开始: fun main() PulsarContexts.createSession().scrapeOutPages(&q…...
视频集中存储/云存储/磁盘阵列EasyCVR平台分组批量绑定/取消设备功能详解
安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台视频能力丰富灵活,可支持的主流标准协议有国标GB28181、RTSP/Onvif、RTMP等,以及支持厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等。视频汇聚融合管理平台EasyCVR既具备传…...
科技成果鉴定测试报告一般包含哪些测试内容?
软件测评报告 一、科技成果评价是需要做第三方软件测评报告,一般是证明技术指标点是否完善,覆盖主要申报内容,应用软件项目科技成果鉴定测试内容: (一)是否完成合同或计划任务书要求的指标; …...
IDEA中的“Deployment“ 将项目直接部署到服务器上
ntelliJ IDEA中的"Deployment"工具栏是一个方便的工具,用于将你的项目直接部署到服务器上。这个工具栏提供了三种部署的方式: 1.Web Server在本地电脑上,并且服务器运行目录也在项目目录下。 2.Web Server在本地电脑上,…...
密室逃脱小游戏
欢迎来到程序小院 密室逃脱 玩法: 判断可生存的空间,鼠标点击屏幕进行人物左右移动,躲避闸道进行生存,每进行一次关卡都会有分数统计,赶紧去闯关吧^^。开始游戏https://www.ormcc.com/play/gameStart/176 html <c…...
【MyBatis】MyBatis项目结构的搭建
Mybatis项目的搭建 依赖 将打包方式添加为jar包 <groupId>com.qinghe.mybatis</groupId><artifactId>Mybatis_demo3</artifactId><version>1.0-SNAPSHOT</version><packaging>jar</packaging>添加如下依赖 <depen…...
新网网站空间/杨谦教授编的营销课程
--------------------------------------------------------------------------------------------- [版权申明:本文系作者原创,转载请注明出处] 文章出处:https://blog.csdn.net/sdksdk0/article/details/85067558 作者:朱培 …...
php网站建设流程/西安网络seo公司
往期精选● 架构师高并发高性能分布式教程(4000G)● 39阶段精品云计算大数据实战视频教程● 互联网技术干货视频教程大全【菜单为准】● 2017年8月最新Intellij IDEA全套视频教程● 程序员如何制作高质量的简历【视频简历】● 两套大型电商实战项目 ● 200本经典编程相关…...
云空间可以做网站/网络营销是学什么
开发中有时候需要拿到类的路径,比如说写mybatis的xml文件时,需要定义入参的类型和出参的类型,这样底层才能正确的使用反射来设置属性值。 idea通过以下方法可以快速得到类路径: 鼠标右键点击类,选择Copy Reference&…...
造价师在哪个网站做继续教育/百度点击软件
前言上文我们已经讲解了MySQL/MariaDB的基础知识和DDL相关操作,接下来我们来说一下MySQL/MariaDB的DML操作,因select查询较复杂也较重要,所以本文主要是对select查询的详解。DML操作DML之select投影查询select col_name,[col_name1,...] from…...
汕头汽车网站建设/竞价托管如何托管
一、块元素:<h1>~<h6>,<p>,<div>,<ul>,<li>其中<div>标签是最典型的块元素 1、比较霸道,自己独占一行 2、高度、宽度、外边距以及内边距都可以控制 3、如果不给任何高或者宽,默认与父亲一样 4、是…...
自己网站打不开/crm网站
数据结构实验之二叉树三:统计叶子数 Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Problem Description 已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并求二叉树的叶子结点个数。…...