网络层:控制平面

路由选择算法

路由选择算法就是为了在端到端的数据传输中,选择路径上路由器的最好的路径。通常,一条好的路径指具有最低开销的路径。最低开销路径是指源和目的地之间具有最低开销的一条路。

  • 根据集中式还是分散式来划分
    • 集中式路由选择算法:
      集中式算法拥有关于所有网络链路开销的完整信息。具有全局状态信息的算法常被称作链路状态算法,因为该算法必须知道网络中每条链路的开销。
    • 分散式路由选择算法:
      路由器以迭代,分布式方式计算出最低开销路径。没有节点拥有关于网络中所有节点的信息。
  • 根据动静态来划分
    • 静态路由选择算法:
      通常由人工进行调整。
    • 动态路由选择算法:
      随着网络流量负载或拓扑发生变化二改变路径。虽然动态路由选择算法能随时对网络变化做出响应,但是会带来路由循环,路由振荡等问题。
  • 根据负载敏感还是负载迟钝划分
    • 负载敏感算法:
      链路开销会动态地变化以反映出底层链路的当前拥塞水平。
      负载迟钝算法:
      不明确地反映当前拥塞水平。

链路状态路由选择算法

简单来说,在一台路由器上:首先在一张表中显示出所有与它直接相连地路由器,并且记录开销,然后依次计算与这些路由器相连的路由器,当算到最后的时候,每一台路由器知道它的前一个节点,这样就计算出了具有最低开销的链路。
但是我们要考虑一个情况,比如说,路由器A要向B发送数据,比如路由器A和B在钟表上12点和6点的位置,第一次,计算出最低开销链路是顺时针,第二次的时候,由于第一次发送的数据,链路状态路由选择算法计算出最低开销路径为逆时针,第三次有时顺时针,以此类推,这种情况我们称之为网络振荡。
一种解决方法就是确保并非所有的路由器同时运行LS(链路状态路由选择)算法。

距离向量路由选择算法

距离向量算法是一种迭代的,异步的和分布式的算法,而LS算法是一种使用全局信息的算法。

因特网中自治系统内部的路由选择:OSPF

  • 自治系统(AS):
    通常由一个ISP中的路由器以及互联他们的链路构成一个AS。
    一个大的AS下可以划分多个小的AS,每个AS由AS号来标识,AS号由ICANN区域注册机构所分配。
  • 开放路径最短优先(OSPF)
    OSPF是一种链路状态协议,使用OSPF时,路由器向自治系统内所有的其他路由广播路由选择信息,而不是单单地向其相邻的路由器广播。
  • OSPF的优点:
    1. 安全
    2. 多条相同开销的路径
    3. 对单播与多播的总和支持
    4. 支持在单个AS中的层次结构

ISP之间的路由选择协议(BGP)

在因特网中,所有的AS都运行相同的AS间路由选择协议,称为边界网关协议(BGP),正是这个协议将因特网中数以千计的ISP粘合起来。

  • BGP的作用:
    由自治系统外部发送到自治系统内部的报文,由AS内部路由选择协议所决定,那么在AS外部,也就是从一个AS内发送到另一个AS的报文如何转发?这就是BGP的职责所在,首先,一个AS要接收报文,那么其他AS就应该知道它的存在,在知道了它的存在之后,选择最低开销路径。

  • 通告BGP路由信息:
    网管路由器是指一台位于AS边缘的路由器。它直接连接到其他AS内部的一台或多台路由器。内部路由器仅连接在它自己AS中的主机和路由器。

SDN控制平面

SDN控制平面大致分为两部分:SDN控制器和SDN网络控制应用程序。
控制器的功能可大体组织为3个层次:

  • 通信层:SDN控制器和受控网络设备之间的通信
  • 网络范围状态管理层。
  • 对于网络控制应用程序层接口。

OpenFlow协议

OpenFlow协议运行在SDN控制器和SDN控制的交换机或其他实现OpenFlow API的设备之间,OpenFlow协议运行在TCP之上,使用默认6653端口号。

ICMP:因特网控制报文协议

SNMP报文类型

网络管理和SNMP

网络管理包括了硬件,软件和人类元素的设置,总和和协调,以监视,测试,轮询,配置,分析,评价和控制网络及网元资源,用合理的成本满足实时性,运营性能和服务质量的要求。
简单网络管理协议(SNMP)是一个应用层协议,用于在管理服务器和代表管理服务器执行的代理之间传递网络管理控制信息和报文。SNMP最常使用的是请求响应模式,陷阱报文,

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式系统中的FPGA

举个栗子 假设你有一台智能家居系统,其中的FPGA可以被类比为智能家居中的中央控制器。 智能家居系统: 定制家居逻辑: 你希望智能家居系统能够根据你的生活习惯、时间表和喜好自动控制灯光、温度、窗帘等设备。就像FPGA中可以根据需求重新配置…

烟台海森大数据——数据驱动材料研发,本土化为安全护航

随着大数据时代的来临,人们的生产和生活,各方面都在发生着深刻的变化。作为与国计民生息息相关的材料行业,也在数据时代迎来了新的机遇与挑战。 新材料是我国重点推进的战略性新兴产业之一,对于支撑整个战略性新兴产业发展&#…

vue + axios + mock

参考来源:Vue mock.js模拟数据实现首页导航与左侧菜单功能_vue.js_AB教程网 记录步骤:在参考资料来源添加axios步骤 1、安装mock依赖 npm install mock -D //只在开发环境使用 下载完成后,项目文件package.json中的devDependencies就会加…

数据结构(四)--队列及面试常考的算法

一、队列介绍 1、定义 与栈相似,队列是另一种顺序存储元素的线性数据结构。栈与队列的最大差别在于栈是LIFO(后进先出),而队列是FIFO,即先进先出。 2、优缺点及使用场景 优点:先进先出(FIFO&…

Qt利用VCPKG和CMake和OpenCV和Tesseract实现中英文OCR

文章目录 1. 开发平台2. 下载文件2.1 下载安装 OpenCV 库2.2 下载安装 Tesseract-OCR库2.3 下载训练好的语言包 3. CMakeLists.txt 内容4. Main.cpp4.1 中英文混合OCR 5. 在Qt Creator 中设置 CMake vcpkg5.1 在初始化配置文件里修改5.2 在构建配置里修改 说明:在Q…

踩坑记录一

先呼自己两耳巴 临床采集的增强CT数据,有时候是同时采集了静脉期和动脉期。就会导致图像多一分如下: 但是勾画的时候,是以下面的期相进行标注的。所以在训练分割,对于这种案例,他识别到了在上面一个期相的目标位置&am…

xilinx primitives(原语)

Xilinx的原语分为10类,包括:计算组件,IO端口组件,寄存器/锁存器,时钟组件,处理器组件,移位寄存器,配置和检测组件,RAM/ROM组件,Slice/CLB组件,G-t…

百面深度学习-循环神经网络

循环神经网络 什么是循环神经网络? 循环神经网络(Recurrent Neural Network,RNN)是一类用于处理序列数据的神经网络。你可以将它想象成一个机器,它不仅考虑当前的输入,还考虑之前接收过的输入。这使得它非…

[Linux打怪升级之路]-信号的产生

前言 作者:小蜗牛向前冲 名言:我可以接受失败,但我不能接受放弃 如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、信号基础…

Docker Stack部署应用详解+Tomcat项目部署详细实战

Docker Stack 部署应用 概述 单机模式下,可以使用 Docker Compose 来编排多个服务。Docker Swarm 只能实现对单个服务的简单部署。而Docker Stack 只需对已有的 docker-compose.yml 配置文件稍加改造就可以完成 Docker 集群环境下的多服务编排。 stack是一组共享…

专访HuggingFace CTO:开源崛起、创业故事和AI民主化丨智源独家

导读 HuggingFace CTO Julien Chaumond认为,在大模型时代,AI民主化至关重要。随着大语言模型和复杂人工智能系统的崛起,持续提升AI技术的可及性有助于确保这些技术的获取和控制不集中在少数强大实体手中。技术民主化促进了机会均等&#xff0…

「Java开发指南」如何用MyEclipse搭建Spring MVC应用程序?(一)

本教程将指导开发者如何生成一个可运行的Spring MVC客户应用程序,该应用程序实现域模型的CRUD应用程序模式。在本教程中,您将学习如何: 从数据库表的Scaffold到现有项目部署搭建的应用程序 使用Spring MVC搭建需要MyEclipse Spring或Bling授…

工程(十二)Ubuntu20.04LSD_SLAM运行

LSD_SLAM适配于ubuntu20.04修改过程的参考连接如下 Ubuntu20.04配置并运行LSD_SLAM,实测可行_nice-wyh的博客-CSDN博客 【已解决】/lib/x86_64-linux-gnu/libapr-1.so.0: undefined reference to uuid_generateUUID_1.0_Mr.Winter的博客-CSDN博客 博主将修改好的…

jar包的精细化运营,Java模块化简介 | 京东云技术团队

图:模块化手机概念 一、什么是Java模块化 Java模块化(module)是Java9及以后版本引入的新特性。 官方对模块的定义为:一个被命名的,代码和数据的自描述集合。( the module, which is a named, self-descri…

css-inpu边框

效果图: input {width: 225px;height: 25px;background-color: #1469bd00;border: #aca9a97d solid 1px;color: white;font-size: 15pt;box-sizing: conte-box; }input:focus {border-style: solid;border-color: #03a9f4;box-shadow: 0 0 15px #03a9f4;outline: …

Flink往Starrocks写数据报错:too many filtered rows

Bug信息 Caused by: com.starrocks.data.load.stream.exception.StreamLoadFailException: {"TxnId": 2711690,"Label": "cd528707-8595-4a35-b2bc-39b21087d6ec","Status": "Fail","Message": "too many f…

3、Python基础语法:解释器、标识符、关键字、缩进

文章目录 Python解释器标识符关键字缩进代码示例与运行结果Python是一种高级编程语言,以其简洁明了的语法和强大的功能而受到广泛欢迎。本文将介绍Python的一些基础语法元素,包括解释器、标识符、关键字和缩进,并提供相应的代码示例和运行结果。 Python解释器 Python是一种…

HTML样式CSS、图像

HTML样式-CSS: CSS (Cascading Style Sheets) 用于渲染HTML元素标签的样式。CSS可以通过以下方式添加到HTML中&#xff1a;1&#xff09;、内联方式&#xff1a;在HTML元素中使用“style”属性&#xff1b;2&#xff09;、内部样式表&#xff1a;在HTML文档头部<head>区…

Java EE进阶2

包如果下载不下来怎么办? 1,确认包是否存在 2.如果包存在就多下载几次 3.如果下载了很多次都下载不下来,看看是不是下面几步出现了问题? 1)是否配置了国内源 settings.xml 2)目录是否为全英文,存在中文的话就修改路径 3)删除本地仓库的 jar 包,重新下载(可能由于网络的原…

二进制代码反汇编逆向工具:IDA Pro(WinMac)v7.7 汉化版

IDA Pro是一款交互式的、可编程的、可扩展的、多处理器的、交叉Windows或Linux WinCE MacOS平台主机来分析程序。它被公认为最好的花钱可以买到的逆向工程利器&#xff0c;已经成为事实上的分析敌意代码的标准并让其自身迅速成为攻击研究领域的重要工具。 IDA Pro的特点主要包括…