精华内容
下载资源
问答
  • 简单的树形网络拓扑结构

    千次阅读 2020-10-08 20:27:45
    第一次画简单的树形网络拓扑结构图.

    第一次画简单的树形网络拓扑结构图.第一次画简单的树形网络拓扑结构图

    展开全文
  • SDN拓扑发现原理

    2021-05-07 09:20:35
    SDN网络的一大特点就是资源由控制器集中管理,控制器管理网络,最基本的当然需要知道网络的拓扑,而网络拓扑可能时时发生变化,所以控制器需要时时监测。对于传统交换机,正常情况他们是通过LLDP等类似的邻居发现...

    前言

    SDN网络的一大特点就是资源由控制器集中管理,控制器管理网络,最基本的当然需要知道网络的拓扑,而网络拓扑可能时时发生变化,所以控制器需要时时监测。对于传统交换机,正常情况他们是通过LLDP等类似的邻居发现协议发现彼此网络设备,形成整网拓扑。OpenFlow的官方没有规定标准的拓扑发现方法,现在的OFDP(OpenFlow Discovery Protocol)利用的仍然是传统网络中的链路发现协议LLDP。而在SDN环境中,设备是无脑的,此时需要借助Openflow和LLDP同时工作,来保障Controller环境下能够对全网进行拓扑发现。

    LLDP(Link Layer Discovery Protocol,链路层发现协议)

    LLDP提供了一种标准的链路层发现方式,可以将本端设备的的主要能力、管理地址、设备标识、接口标识等信息组织成不同的TLV(Type/Length/Value,类型/长度/值),并封装在LLDPDU(Link Layer Discovery Protocol Data Unit,链路层发现协议数据单元)中发布给与自己直连的邻居,邻居收到这些信息后将其以标准MIB(Management Information Base,管理信息库)的形式保存起来,以供网络管理系统查询及判断链路的通信状况。
    LLDP是一个信息发现与通告协议,LLDP的实体中维护了两个MIB库(管理信息库),一个local system MIB,用于维护本地相关设备MIB信息,一个remote system MIB,用于维护远端设备MIB信息。
    LLDP通过PTOPO MIB、Enitity MIB、Interface MIB、Other MIB等库来维护local system MIB,并将本地的相关信息通告。当接收到其他设备的信息时就将其更新到remote system MIB中。

    在这里插入图片描述

    在传统以太网交换机中,交换机从自己的每个端口发送LLDP数据包,这个数据包不会被其他交换机转发,寿命只有一跳,LLDP负载被封装在以太网帧中,结构如下图,其中深灰色的即为LLDP负载,Chassis ID TLV, Port ID TLV和Time to live TLV三个是强制字段,分别代表交换机标识符(在局域网中是独一无二的),端口号和TTL。这个数据发出并被邻居节点收到之后进行解析,就可以知道这条链路的源目的交换机以及源目的接口。

    在这里插入图片描述

    OpenFlow中LLDP处理流程

    在SDN网络中,由于控制器对域内的交换机进行集中控制,所以交换机是通过接收控制器发送的指令来完成LLDP帧的发送和接收。
    假设现在有两个OpenFlow交换机连接在控制器上,如下图,简述拓扑发现步骤(以S1作为主体,S2的类似):

    1. SDN控制器构造PacketOut消息向S1的三个端口分别发送上图所示的LLDP数据包,其中将Chassis ID TLV和Port ID TLV分别置为S1的dpid和端口号;
    2. 控制器向交换机S1中下发流表,流表规则为:将从Controller端口收到的LLDP数据包从他的对应端口发送出去;
    3. 控制器向交换机S2中下发流表,流表规则为:将从非Controller接收到LLDP数据包发送给控制器;
    4. 控制器通过解析LLDP数据包,得到链路的源交换机,源接口,通过收到的PacketIn消息知道目的交换机和目的接口;

    在这里插入图片描述

    如下图所示,

    1. OpenFlow控制器向OpenFlow交换机2发送Packet-Out消息,以此来发送LLDP帧。
    2. OpenFlow交换机2通过OpenFlow交换机1上连接的网络接口发送包含packet-Out消息中的LLDP帧。
    3. OpenFlow交换机1接收来自openflow交换机2的LLDP帧后,将LLDP帧添加到Packet-In消息中,然后发送给OpenFlow控制器,OpenFlow控制器依据OpenFlow交换机1发来的Packet-In消息中所包含的信息,构建网络拓扑检测的数据库。

    在这里插入图片描述

    OpenFlow交换机不对LLDP帧做任何处理,而是由OpenFlow控制器进行网络拓扑检测。
    LLDP与OpenFlow二者之间的关系仅仅是在OpenFlow框架内运用LLDP,即使OpenFlow规范中并未标明LLDP,该规范也支持LLDP,但并不意味着必须要用LLDP来进行网络拓扑检测,同样,利用IS-IS或OSPF也能实现网络拓扑检测。

    网络中存在非OpenFlow设备时,如何去做链路发现?

    基于LLDP消息的方法只能对于控制器直连的openflow交换机进行链路发现,如果网络中存在非openflow域,即两台openflow交换机通过其他多台非openflow交换机连接,此时需要其他的链路发现手段。在这种情况下,控制器还是会首先发送packet-out消息给与之相连的openflow交换机,先维护OpenFlow交换机直连场景的拓扑。但同时控制器会要求交换机发出广播包,广播包将被发往除交换机和控制器相连的端口之外的其他端口。广播包从openflow交换机发出后,如果网络中存在非openflow域,广播包将从这个网络域的一端进入并穿越,达到与该非openflow域连接的其他openflow交换机。因为在接收到广播包的openflow交换机中并没有对应的流表项可供广播包匹配,所以该广播包将被上传到控制器,从而告知控制器在网络中存在非openflow域。
    如果控制器并没有收到上传的广播包,那么就可判断出整个网络都有openflow交换机组成。why? 相连的都是openflow交换机时,会丢弃广播包?
    (总结,控制器通过要求交换机发送广播包,广播包会穿过非openflow域,最后通过到达的openflow交换机上交控制器,由此获知存在非openflow域。)

    说明OpenFlow交换机有处理广播的流表,而这些流表均是刚开始做LLDP探测时控制器下发的。

    参考

    H3C<LLDP技术介绍>
    LLDP(链路层发现协议)和OpenFlow
    提高SDN控制器的拓扑发现性能
    SDN交换机的拓扑发现与ARP处理
    获得SDN全网信息关键:链路发现技术

    展开全文
  • 1 运用mininet可视化工具创建网络拓扑结构 目录切换 cd 命令:cd 目录 cd / 切换到根目录 cd /usr 切换到根目录下的usr目录 cd …/ 切换到上一级目录 或者 cd … cd ~ 切换到home目录 cd - 切换到上次访问的目录 ...

    系统:Ubantu 16.04.7

    1 运用mininet可视化工具创建网络拓扑结构
    在这里插入图片描述

    Linux sudo命令
    以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。

    ubuntu@sdnhubvm:~[23:56]$ cd mininet/examples
    ubuntu@sdnhubvm:~/mininet/examples[23:57] (master)$ ls
    baresshd.py*       controlnet.py*       mobility.py*       README.md
    bind.py*           cpu.py*              multilink.py*      scratchnet.py*
    clustercli.py      emptynet.py*         multiping.py*      scratchnetuser.py*
    clusterdemo.py*    hwintf.py*           multipoll.py*      simpleperf.py*
    clusterperf.py*    __init__.py          multitest.py*      sshd.py*
    cluster.py*        intfoptions.py*      natnet.py*         test/
    clusterSanity.py*  limit.py*            nat.py*            tree1024.py*
    consoles.py*       linearbandwidth.py*  numberedports.py*  treeping64.py*
    controllers2.py*   linuxrouter.py*      popenpoll.py*      vlanhost.py*
    controllers.py*    miniedit.py*         popen.py*
    ubuntu@sdnhubvm:~/mininet/examples[23:57] (master)$ sudo python miniedit.py
    

    执行以上,打开可视化工具MiniEdit:
    在这里插入图片描述
    绘制拓扑以后,可以通过
    File -> Export Level2 Script
    导出为.py文件,下次可以继续打开编辑。

    2 运用mininet交互命令创建网络拓扑结构
    在这里插入图片描述

    ubuntu@sdnhubvm:~/mininet/examples[00:16] (master)$ sudo mn
    *** Creating network
    *** Adding controller
    *** Adding hosts:
    h1 h2 
    *** Adding switches:
    s1 
    *** Adding links:
    (h1, s1) (h2, s1) 
    *** Configuring hosts
    h1 h2 
    *** Starting controller
    c0 
    *** Starting 1 switches
    s1 ...
    *** Starting CLI:
    mininet> py net.addHost('h3')
    <Host h3:  pid=11404> 
    mininet> nodes
    available nodes are: 
    c0 h1 h2 h3 s1
    mininet> 
    

    命令 sudo mn
    即创建一个最基本的拓扑

    命令 py net.addHost(‘h3’)
    即添加一个新的节点 h3

    命令 nodes
    即查看所有拓扑节点

    3 运用python脚本构建网络拓扑结构

    ubuntu@sdnhubvm:~/mininet/examples[00:20] (master)$ gedit
    

    启动gedit,通过编写python脚本来构建。
    在这里插入图片描述

    讲解对象: gedit命令
    定义:是一个文本编辑器
    特点: GNOME桌面环境下兼容UTF-8
    编写:用GTK+编写而成
    支持编码:支持包括gb2312、gbk在内的多种字符编码理解:可以把它用来当成是一个集成开发环境(IDE)

    展开全文
  • SDN】Ryu网络拓扑可视化app使用简介

    千次阅读 热门讨论 2018-11-29 20:01:04
    SDN】Ryu网络拓扑可视化app使用简介 在使用SDN的过程中,经常会遇到网络拓扑可视化的需求,而目前主流的SDN控制器也都提供了相应的功能。这篇博文将简单介绍一下当你选用Ryu作为控制器时,如何实现网络拓扑的可视...

    在使用SDN的过程中,经常会遇到网络拓扑可视化的需求,而目前主流的SDN控制器也都提供了相应的功能。这篇博文将简单介绍一下当你选用Ryu作为控制器时,如何实现网络拓扑的可视化。


    Ryu自带了网络拓扑可视化的app,名称为gui_topology.py,路径为:ryu安装目录/ryu/app/gui_topology/gui_topology.py。既然它是一个app,要使用它便十分方便:

    ryu-manager Path/to/gui_topology.py
    或者
    ryu run Path/to/gui_topology.py
    即可
    

    启动成功后,将交换机连接到Ryu,用浏览器访问http://ryu运行的主机ip:8080即可看到当前的网络拓扑。
    比如,我用mininet模拟了一个深度为3的树状网络拓扑,并连接到ryu,命令如下:

    sudo mn --controller remote --topo tree,depth=3
    

    连接成功后,访问http://localhost:8080(我的ryu和mininet均运行在本机),即可看到如下界面:
    在这里插入图片描述

    可以发现,我们能看到所有的交换机,但它们之间的连接却看不到,想要看到交换机之间的连接,需要在启动ryu时加上
    –observe-links参数,表示我们想要看到交换机之间的连接,即

    ryu-manager Path/to/gui_topology.py --observe-links
    或者
    ryu run Path/to/gui_topology.py --observe-links
    

    带上–observe-links启动ryu之后,再用相同的命令启动mininet,这时再访问http://localhost:8080,我们看到的界面如下:

    在这里插入图片描述

    不仅有交换机,他们之间的连接也都显示出来了。同时,在这个界面,我们还可以点击某个交换机来查看当中的流表项,还是比较方便的:

    在这里插入图片描述


    几点说明:

    1. 若你在启动Ryu时使用了–observe-links参数,则Ryu会收到非常大量的包含LLDP协议报文的PacketIn消息,如果不对这一PacketIn消息进行特殊处理的话,很容易导致Ryu奔溃,无法正常工作!!!所以,为了避免这一问题,当你计划使用–observe-links启动Ryu时,在你处理PacketIn消息的函数开头,建议包含如下代码,即可解决问题:

       if eth.ethertype == ether_types.ETH_TYPE_LLDP:
       	# ignore lldp packet
       	return
      
    2. Ryu是支持同时启用多个app的,也就是说,启用gui_topology.py这个app并不影响你启用你自己写的控制逻辑app, 即你可以使用如下命令来启用多个app:

      ryu-manager Path/to/gui_topology.py Path/to/yourApp.py Path/to/yourApp1.py 
      
    3. gui_topology.py这个app只支持查看交换机与交换机之间的连接,但无法查看主机以及他们与交换机之间的连接,目前我也没有发现能查看到这一信息的app,如果发现了我将即使更新在这篇博客中。如果希望查看到包含主机在内的完整网络拓扑,推荐使用ONOS控制器。

    展开全文
  • SDN介绍(什么是SDN

    万次阅读 多人点赞 2019-07-12 14:11:48
    SDN介绍一. 什么是SDN?...SDN的分类五.SDN网络架构SDN网络体系架构的三层模型:SDN网络部署方式六.SDN的价值网络业务快速创新:简化网络:网络设备白牌化:业务自动化:网络路径流量优化: 一. 什么是SDN? SD...
  • 在POX SDN控制器包括将网络拓扑的数据发送到数据Gephi可视化平台,可显示节点和表示网络拓扑结构链接的曲线图。 具体操作步骤 启动POX 关于POX的安装可以参考作者的前一篇博客。 首先打开第一个Terminal,开始运行...
  • 1.确定一个网络拓扑结构,目前暂定的网络拓扑结构如下: 为了实验的效果更加显著,实验用的拓扑不能过于简单,因此经过考虑之后决定设计一个带有环的网络拓扑,而不是常见的树状网络。 (此图片来自网络,如...
  • WIM用作SDN网络的WAN基础结构管理器,与ODL控制器进行交互(当前支持氧气和氟化物版本) 产品特点 在SDN网络上配置端到端网络切片 每个切片的QoS参数 图形数据库 图形拓扑表示 安装并运行 ./start.sh [-p | --...
  • SDN网络对比传统网络

    万次阅读 多人点赞 2019-03-14 13:02:51
    SDN网络中,不管是开发人员还是用户,都可以更多的发挥自己的想象,而不用再受各种RFC的强力约束。 一、传统网络发展及特点 从1969年ARPA NET运行算起,传统网络已经发展了半个世纪,网络按照OSI的模型分成7层,...
  • SDN网络技术:SDN初识

    千次阅读 2019-09-07 13:54:29
    导读:SDN是一种新型网络解决方案,它的设计理念是将网络控制面和数据转发面进行分离,然后通过集中式控制器对网络资源实施按需分配。 一、网络技术的困境 长期以来,网络技术总是以被动的方式进行演变,并且...
  • Mininet是一个网络仿真器,可简单理解为 SDN 网络系统中的一种基于进程虚拟化平台,它支持 OpenFlow、Open vSwith 等各种协议,它可以在单个 Linux 内核上模拟和运行一个完整的网络主机、链接和交换机,在同一台...
  • 基于OpenFlow协议的SDN控制器拓扑发现

    千次阅读 2019-02-26 20:40:58
        OpenFlow协议的SDN控制器通过LLDP(Link Layer Discovery Protocol,链路发现协议)协议进行链路发现,并根据收集的链路信息来识别网络结构,生成网络拓扑。 LLDP协议     LLDP协议为二层协议,通过在...
  • 本章简单使用一下前两节的内容,就是使用mininet创建简单的拓扑结构,控制器使用外部的ryu控制器 ##输入命令 sudo mn --controller=remote,ip=127.0.0.1,port=6653 --topo=single,3 sudo:以管理员权限运行,因为...
  • SDN控制器的拓扑管理与LLDP链路发现

    万次阅读 2014-09-22 13:04:39
    SDN控制器通过LLDP(Link Layer Discovery Protocol,链路发现协议)协议进行链路发现,然后根据发现协议搜集的信息来识别和管理网络拓扑结构。 LLDP协议 为了讲解SDN控制器的发现原理,首先简要介绍LLDP协议的...
  • SDN网络的一大特点就是资源由控制器集中管理,控制器管理网络,最基本的当然需要知道网络的拓扑,而网络拓扑可能时时发生变化,所以控制器需要时时监测,对于整个网络来说,控制器担负了太多的计算任务,所以如果...
  • 系统前提 系统:Ubuntu 16.04 安装环境:安装JDK 1.8,安装编译打包工具ant 安装Floodlight 1....查看Floodlight的主进程是否正在运行 ps -ef |grep floodlight 通过Mininet和...在floodlight web页面中查看网络拓扑信息
  • SDN网络的一大特点就是资源由控制器集中管理,控制器管理网络,最基本的当然需要知道网络的拓扑,而网络拓扑可能时时发生变化,所以控制器需要时时监测,对于整个网络来说,控制器担负了太多的计算任务,所以如果...
  • 用mininet来自定义拓扑结构

    千次阅读 2018-03-17 22:11:06
    用mininet来自定义拓扑结构
  • [导读]数据中心最重要的是要... 一、SDN网络数据中心最重要的是要完善和建设10Gb、40Gb甚至是100Gb以太网的设施基础。软件定义网络(SDN)一直都是网络领域里的热门话题。SDN的最大好处是有可能节约网络的总拥有成本,...
  • IP网络从1982年TCP/IP 成为互联网前身的ARPANET标配以来,随着互联网的发展而迅猛扩展。在数据网络方面基本已经一统天下,做到了 everything over IP。IP网络作为承载互联网,物联网,云计算以及VR,AI等未来各种...
  • SDN

    2020-08-06 08:00:25
    SDN是在2009年左右出现的一种新型网络结构,它将数据层面与控制层面分离,使用中央控制器完成网络的操作和管理,并通常采用OpenFlow协议作为其核心通信协议,拥有着集中式控制、可编程、部署灵活性和数据层面与控制...
  • SDN 网络系统之 Mininet 与 API 详解

    千次阅读 2014-12-19 20:50:05
    本文主要介绍了 Mininet 的相关概念与特性,并列举的 Mininet 自定义网络及参数网络拓扑示例,以及相关重要执行文件的分析,帮助用户更好的理解与使用 Mininet 技术。 现在就开始免费试用 SDN 与 Minine
  • 一、从网络技术演进的角度比较分析MPLS和SDN网络IP网络从1982年TCP/IP 成为互联网前身的ARPANET标配以来,随着互联网的发展而迅猛扩展。在数据网络方面基本已经一统天下,做到了 everything over IP。IP网络作为承载...
  • SDN无疑是当前网络业界最热门的研究课题之一,SDN体现了控制和转发相分离的原则,为网络和业务的创新带来了蓬勃的生机和活力。本文通过构建OpenDayLight控制器与Mininet交换模拟器相结合的测试环境,研究了SDN环境下...
  • SDN 网络系统之 Mininet

    2017-11-03 09:38:45
    SDN 全名为(Software Defined Network)即软件定义网络,是现互联网中一种新型的网络创新架构,其核心技术 OpenFlow 通过网络设备控制面与数据面分离开来,从而实现网络流量的灵活控制,为网络及应用提供了良好的平台...
  • SDN网络的理解(三)

    千次阅读 2014-10-13 19:35:01
    依旧还是一个简单的SDN网络环境:  这时我们来解释迷你呢他
  • sdn网络搭建以及负载均衡

    千次阅读 2020-09-07 15:26:31
    SDN网络搭建 1.准备工作 1)虚拟机vmware(注意版本,高版本的系统克隆之后,在低版本上不兼容) 2)Ubuntu18.04 64位 3)配置尽量好一点 2.安装mininet(这里介绍的是下载源码的方法) 1)更新软件,注意前面...
  • 数据中心网络的流量导向应用 在网络中使用中间盒已成为基本需求,尤其是在数据中心网络中。... 折叠克洛斯网络(或胖树)是克洛斯网络的一种特殊类型,其中这种网络拓扑结构采用树的形状(级别数可能有所不同
  • 摘要:近年来,网络在人们的日常生活中发挥着越发重要的作用,而网络中存在的DoS、DDoS等大量网络恶意攻击行为对人们的生活,乃至国家的...SDN体系结构将控制层和转发设备进行分离,能够对整个网络进行集中控制。本文...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,907
精华内容 762
关键字:

sdn网络拓扑结构