路由器结构

路由器是连接互联网的设备,本文主要描述路由器的结构组成。

图片

如上所示,OSI(Open System Interconnect)开放系统互联参考模型是互联网架构的标准协议栈,由ISO标准组织制定。自底向上,互联网架构分为7层,操作系统或者网络设备的网络架构实现都是参考该模型,每一层在互联网的世界中担负着不同的角色与职责,每一层都向上层提供服务支撑,其中,7层网络架构中的应用层、表示层以及会话层可以合并成应用层,如a图中的5层网络架构。应用层主要是提供应用软件、组件、服务,表示层主要是提供应用层数据格式或者规则的定义,会话层主要是提供应用层端到端连接上下文服务,运输层主要是提供TCP或者UPD数据报的封装拆装服务,网络层主要是提供IP地址数据报封装拆装寻址服务,链路层主要是提供MAC地址数据帧封装拆装寻址服务,物理层主要是提供有线无线物理介质的通讯传输服务

图片

如上所示,互联网包括有线互联以及无线互联,互联网中每个地区的网络是由路由器连接、路由器是工作在IP地址网络层、每个局域网的网络是由交换机连接、交换机是工作在MAC地址链路层

图片

如上所示,本地路由器在控制面中使用路由选择算法计算IP地址数据报的分发路径、在数据面执行数据报转发

图片

如上所示,SDN软件定义网络架构的路由器中,控制面与数据面分别对应北向与南向,每个路由器的控制面在远程数据中心中使用北向接口进行集中管理、远程为每个路由器的数据面计算转发路径、每个路由器的数据面在本地执行数据报转发

图片

如上所示,路由器的内部结构分为控制面与数据面,其中,控制面包括路由选择处理器模块,数据面包括输入端口模块、交换结构模块、输出端口模块

图片

如上所示,输入端口模块的数据处理流程,根据OSI网络架构自底向上包括物理层处理、链路层处理、网络层处理、交换结构模块处理

图片

如上所示,路由器中的路由表是由控制面管理模块生成、路由表中提供路由器的端口号与IP地址范围的映射对应关系、匹配IP地址时使用前缀匹配、存在多个匹配记录时使用最长匹配原则

图片

如上所示,交换结构模块使用三种模式的数据包运输与转发,内存模式是使用操作系统从内存中读写数据的方式、纵横模式是使用多链路运载的方式、总线模式是使用中心化负载的方式

图片

如上所示,根据OSI网络架构,输出端口模块的数据处理流程是交换结构模块处理、网络层处理、链路层处理、物理层处理

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

行政快递管理软件使用教程

勤勤恳恳的行政人员,还在努力地修改企业快递管理制度,而聪明的行政人员,已经开始物色合适的快递管理软件了。随着企业管理的现代化发展,我们会发现很多管理模块都有相应的管理制度。人力资源管理、客户关系管理、财务管理等等&…

Unity animator动画倒放的方法

在Unity中, 我们有时候不仅需要animator正放的效果,也需要倒放的效果。但我们在实际制作动画的时候可以只制作一个正放的动画,然后通过代码控制倒放。 实现方法其实很简单,只需要把animator动画的speed设置为-1即为倒放&#xff…

MySQL中SELECT字句的顺序以及具体使用

目录 1.SELECT字句及其顺序 2.使用方法举例 3.HAVING和WHERE 1.SELECT字句及其顺序 *下表来自于图灵程序设计丛书,数据库系列——《SQL必知必会》 2.使用方法举例 *题目来源于牛客网 题目描述 现在运营想要查看不同大学的用户平均发帖情况,并期望结…

纯命令行在Ubuntu中安装qemu的ubuntu虚拟机,成功备忘

信息总体还算完整,有个别软件更新了名字,所以在这备忘一下 1. 验证kvm是否支持 ________________________________________________________________ $ grep vmx /proc/cpuinfo __________________________________________________________________…

【大数据】了解 YARN 架构的基础知识

了解 YARN 架构的基础知识 1.为什么是 YARN2.YARN 简介3.YARN 的组成部分3.1 Resource Manager 资源管理器3.1.1 Scheduler 调度程序3.1.2 Application Manager 应用程序管理器 3.2 Node Manager 节点管理器3.3 Application Master 应用程序主控3.4 Container 容器 4.在 YARN 中…

数据库课程设计-图书管理系统数据库设计

目录 一、实验目的 二、实验内容 三、实验要求 四、实验设计 4.1需求分析 4.1.1系统目标 4.1.2功能需求 4.1.3性能需求 4.14界面需求 4.2概念模型设计 4.2.1 实体及联系 4.2.2 E-R图 4.3 逻辑设计 4.3.1 E-R模型向关系模型的转换 4.3.2 数据库逻辑结构 4.3.3数据库模型函数依赖…

【leetcode】回溯总结

本文内容来自于代码随想录https://www.programmercarl.com/ 思想 一棵树中的纵向遍历结束回到上一层的过程,比如: 这个过程通常回伴随恢复现场的过程。 模板 void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择:本层集…

【实战】K8S部署Redis集群代理Predixy

文章目录 前言技术积累为什么要在redis集群前面加个predixy代理?这样做的好处有哪些?常用代理配置网络存储 实战构建predixy镜像并部署下载predixy源码编译构建镜像创建K8S配置文件predixy-configmap并执行网络储存PV与PVC部署predixy-deployment 测试代…

Go 日期时间包装器:15条更便捷的时间处理

★ 关注公众号【爱发白日梦的后端】分享技术干货、读书笔记、开源项目、实战经验、高效开发工具等,您的关注将是我的更新动力! ” 在Go编程中,处理日期和时间是一项常见任务,涉及到精确性和灵活性。尽管Go的标准库提供了时间包&am…

为什么国产操作系统是基于linux研发的呢?

为什么国产操作系统是基于linux研发的呢? 在开始前我有一些资料,是我根据网友给的问题精心整理了一份「linux的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!&am…

Mysql详细安装步骤

Linux 安装 MySQL【超详细版】 ​编辑 我叫BuGu    2023-05-11 16:48:10 发布 一、安装 MySQL 的准备工作 1. 查看系统版本 cat /etc/redhat-release2. 查看系统是否已经安装过 MySQL 查看是否安装了 MySQL rpm -qa | grep mysql查看是否有安装 mariadb,该软件与 MySQ…

查看windows系统服务的日志

要查看Windows服务运行时产生的日志记录,请按照以下步骤操作: 1. **通过事件查看器查看服务日志:** - 按下 Win R 组合键打开“运行”对话框。 - 在“运行”对话框中输入 eventvwr.msc,然后按回车键或点击“确定”按钮以打…

力扣70. 爬楼梯(动态规划 Java,C++解法)

Problem: 70. 爬楼梯 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 由于本题目中第i层台阶只能由于第i- 1层台阶和第i-2层台阶走来,所以可以联想到动态规划,具体如下: 1.定义多阶段决策模型:对于每一上台阶看作一种状…

漏洞补丁修复之openssl版本从1.1.1q升级到1.1.1t以及python版本默认2.7.5升级到2.7.18新版本和Nginx版本升级到1.24.0

​ 一、Openssl升级 1、查看Openssl安装的版本 openssl version 2、查看Openssl路径 which openssl 3、上传openssl安装包到服务器:openssl-1.1.1t.tar.gz,并且解压,安装: mv /usr/local/openssl /usr/local/backup_openssl_1.1.1q_20240120 mkdir /usr/local/openssl tar…

【 Qt 快速上手】-①- Qt 背景介绍与发展前景

文章目录 1.1 什么是 Qt1.2 Qt 的发展史1.3 Qt 支持的平台1.4 Qt 版本1.5 Qt 的优点1.6 Qt的应用场景1.7 Qt的成功案例1.8 Qt的发展前景及就业分析行业发展方向就业方面的发展前景 1.1 什么是 Qt Qt 是一个跨平台的 C 图形用户界面应用程序框架。它为应用程序开发者提供了建立…

Web01--HTML基础

1、HTML 1.1 HTML概念 引用百度百科 HTML全称超文本标记语言(Hyper Text Markup Language),它不是一种编程语言,而是一种标记语言,通常用来制作网页。 超文本指的是页面上除了可以显示普通的文字以外,还可以显示图片、链接、甚…

一行代码就修复了Dubbo的Bug

1.什么是 System.identityHashCode? 2.什么是 hashCode? 3.为什么一行代码就修复了这个 BUG? 前情回顾 先通过一个前情回顾,引出本文所要分享的内容。 Dubbo 一致性哈希负载均衡算法的设计初衷应该是如果没有服务上下线的操作…

【C++入门到精通】智能指针 shared_ptr 简介及C++模拟实现 [ C++入门 ]

阅读导航 引言一、简介二、成员函数三、使用示例四、C模拟实现五、std::shared_ptr的线程安全问题六、总结温馨提示 引言 在 C 动态内存管理中,除了 auto_ptr 和 unique_ptr 之外,还有一种智能指针 shared_ptr,它可以让多个指针共享同一个动…

MT36291替代MT3608 FP6291 低成本 用于移动电源,蓝牙音箱,便携式设备等

航天民芯原装MT36291 SOT23-6 PIN对PIN替代FP6291LR-G1 MT3608等,低成本,用于移动电源,蓝牙音箱,便携式设备等领域。 TEL:18028786817 专注于电源管理IC 一级代理 技术支持 欢迎试样! 描述 MT36291是一个恒定频…

初始linux:多用户信息共享

提示:以下指令均在Xshell 7 中进行 共享文件的创建: 在创造共享文件之前,我们首先要知道,目录的权限。 目录的权限 分别是 r w x ,r表示对可以在目录中查看目录的文件信息,w表示可以在目录中进行文件的…