交换机

在RYU中实现交换机的功能

眉间皱痕 提交于 2019-12-05 02:38:23
首先源码,解析部分如下,同时可以参考RYU_BOOK上的解释说明 from ryu.base import app_manager from ryu.controller import ofp_event from ryu.controller.handler import CONFIG_DISPATCHER, MAIN_DISPATCHER from ryu.controller.handler import set_ev_cls from ryu.ofproto import ofproto_v1_3 from ryu.lib.packet import packet from ryu.lib.packet import ethernet class SimpleSwitch13(app_manager.RyuApp): OFP_VERSIONS = [ofproto_v1_3.OFP_VERSION]//OpenFlow1.3版本 def __init__(self, *args, **kwargs): super(SimpleSwitch13, self).__init__(*args, **kwargs) self.mac_to_port = {}\\MAC位址表,用于存放MAC地址和端口之间的映射 \\@set_ev_cls表示事件修饰符

VTP

纵饮孤独 提交于 2019-12-05 02:20:52
目录 作用 创建 配置交换机VTP模式 配置VTP密码 配置VTP修剪 查看VTP的配置 作用 通过一台交换机统一进行多个交换机的VLAN的管理 或者说,通过VTP实现多个交换机学习一个交换机的VLAN划分 创建 switch(config)# vtp domain domain_name 配置交换机VTP模式 switch(config)# vtp mode server | client | transparent 配置VTP密码 switch(config)# vtp password password 配置VTP修剪 switch(config)# vtp pruning 查看VTP的配置 switch# show vtp status 来源: https://www.cnblogs.com/changjiangwei/p/11820083.html

VLAN实验3:Hybrid接口的应用

丶灬走出姿态 提交于 2019-12-05 02:04:15
实验环境 实验拓扑图 实验编址 实验步骤 给各个PC机配好IP地址和子网掩码以后,使用ping命令验证各个主机之间的连通性。现在以PC1为例,发现PC1和其他几个主机都可以正常通信。在默认情况下,交换机默认的端口类型都是Hybrid类型。 首先在VLAN10和VLAN20之间实现组内通信和组间隔离。要将两个交换机和其所连PC机的端口类型设为Access接口,然后添加到相应的VLAN当中,将两个交换机相连的端口设置为Trunk接口。我们以S1交换机为例,S2的命令与之相同。 将两台交换机上的端口都配置好以后,然后我们现在以PC1为例来测试与其他PC机之间的连通性,实现了组内通信和组间隔离。 可以看到,使用Access接口和Trunk接口可以实现,但是如果利用Hybrid接口的话会更加灵活一些。 这几行命令是将已经设置成Access接口和Trunk接口的端口改为Hybrid接口 在S1和S2上都设置好以后查看一下当前的状态。 最后我们需要完成IT部门可以完成任何部门的这个实验条件,也就是说VLAN30可以访问VLAN10和VLAN20,但是VLAN10和VLAN20之间依然不能相互访问。其实也就是说E0/0/4端口可以接收VLAN10 20 30的数据,需要在S1和S2上建立VLAN30并进行如下配置。 完成配置以后分别在PC5和PC上测试实验成果

网络编程基础一

為{幸葍}努か 提交于 2019-12-05 00:39:44
一、架构 两种常见的架构: C/S架构 (客户机/服务器)和 B/S架构 (浏览器/服务器,也属于C/S架构的一种)。    C/S架构优点: 能充分发挥客户机的性能 由于只有一层交互,因此响应速度较快,安全性高    C/S架构缺点: 用户群固定,需要下载客户端才能使用 维护成本高   B/S架构优点: 客户端无需安装,有浏览器就行,跨平台 B/S架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强 统一了应用的接口    B/S架构缺点: 跨浏览器问题 在速度和安全性上需要花费巨大的设计成本 二、通信 网络编程基本上都是基于请求/响应方式的,即一个设备发送请求数据给另外一个,然后接收另一个设备的反馈。   MAC地址:物理地址,由网卡决定的,是固定且唯一的。在OSI模型中第二层数据链路层负责。   IP地址:四位点分十进制,在计算机内部存储时只需要4个字节即可。在OSI模型中第三层网络层负责。标识了计算机在网络中的位置。 可以使用IP或域名来标识网络上的一台设备 。   域名:由于IP地址不方便记忆,给IP取一个字符的名字,IP和域名之间存在一定的对应关系。在网络中只能使用IP地址进行数据传输,所以在传输以前,需要把域名转换为IP,这个由DNS的服务器完成。   端口:规定一个设备有2 16 个,即65536个端口,每个端口对应一个唯一的程序

VLAN基础配置及ACCESS接口(1)

☆樱花仙子☆ 提交于 2019-12-05 00:13:13
VLAN 虚拟局域网 实验内容 模拟企业网络场景 公司内网是一个大的局域网,二层交换机S1放置在一楼,在一楼办公的部门有IT部和人事部;二层交换机S2放置在二楼,在二楼办公的部门有市场部和研发部。由于交换机组成的是一个广播网,交换机连接的所有主机都能互相通信,而公司策略是不同部门之间的主机不能互相通信,同一部门内的主机才可以互相访问。因此需要在交换机上划分不同的VLAN,并将连接主机的交换机接口配置成Access接口划分到相应的VLAN内。 实验拓扑图: 1. 先测试 PC 机之间是否都能 ping 通 都设置好了之后,我们打开一个PC 机使PC 之间都能相互ping 通 2. 分别在交换机上创建并配置对应的VLAN 在S1上使用命令创建VLAN 10和VLAN 20 用display vlan 命令查看VLAN 相关信息 在S2上使用命令创建VLAN 30和VLAN 40(vlan batch命令可以一次创建多个VLALN) 用display vlan 命令查看VLAN 相关信息 说明S1 S2 都已经成功创建相应的VLAN ,下一步我们配置交换机上连接PC 的接口类型为Access 类型接口 在交换机S1上配置相应的VLAN接口 Interface ethernet0/0/1 Interface ethernet0/0/2 Interface ethernet0/0/3

2019 SDN上机第3次作业

浪尽此生 提交于 2019-12-04 22:02:12
1. 利用Mininet仿真平台构建如下图所示的网络拓扑,配置主机h1和h2的IP地址(h1:10.0.0.1,h2:10.0.0.2),测试两台主机之间的网络连通性 2. 利用Wireshark工具,捕获拓扑中交换机与控制器之间的通信数据,对OpenFlow协议类型的各类报文进行分析,对照wireshark截图写出你的分析内容。 . . . hello消息 控制器与交换机建立连接时由其中某一方发起Hello消息,双方协调协议版本号。Hello消息只有openflow包头,没有主体部分。头部结构如下: /* Header on all OpenFlow packets. */ struct ofp_header { uint8_t version; /*版本*/ uint8_t type; /*消息类型*/ uint16_t length; /*消息总长度,包含头部*/ uint32_t xid; /*事件ID,同一件事件的ID号一致如feature_request和对应的feature_reply就使用同一个Transaction id,但是两个hello消息的Transaction id并不相同,不过据实验结果看两个id一般是两个相邻的数字。*/ }; OFP_ASSERT(sizeof(struct ofp_header) == 8); 抓包结果如下:

2019 SDN上机第3次作业

守給你的承諾、 提交于 2019-12-04 21:29:53
1. 利用Mininet仿真平台构建如下图所示的网络拓扑,配置主机h1和h2的IP地址(h1:10.0.0.1,h2:10.0.0.2),测试两台主机之间的网络连通性 网络拓扑图: h1和h2 IP地址设置: 网络支持1.0 1.1 1.2 1.3协议: h1与h2网络连通性: 2. 利用Wireshark工具,捕获拓扑中交换机与控制器之间的通信数据,对OpenFlow协议类型的各类报文(hello, features_request, features_reply, set_config, packet_in, packet_out等)进行分析 hello 分析:控制器6633端口(最高支持OpenFlow 1.0)发送到交换机46266端口 分析:交换机46266端口(最高支持OpenFlow 1.3)发送到交换机6633端口 最终决定采用1.0协议 features_request 分析:控制器6633向交换机46266请求特征信息 set_config 分析:控制器6633发送给交换机46266 flag和max bytes of packet进行配置 features_reply packet_in packet_out flow_mod (ps:中间重新弄了一下,所以导致端口不太一样) 接下来是另一台交换机(端口46288)与控制器(端口6633)的交互过程 h1

SDN阅读作业

爷,独闯天下 提交于 2019-12-04 21:28:47
2019 SDN阅读作业 1.为什么需要SDN?SDN特点? ​ 传统网络的层次结构是互联网取得巨大成功的关键,随着网络规模的不断扩大,封闭的网络设备内置了过多的复杂协议,增加了运营商定制优化网络的难度,科研人员无法在真实环境中规模部署新协议。同时,随着网络规模的不断扩大,封闭的网络设备内置了过多的复杂协议,增加了运营商定制优化网络的难度,科研人员无法在真实环境中规模部署新协议。同时,互联网流量的快速增长,用户对流量的需求不断扩大,各种新型服务不断出现,增加了网络运维成本。 ​ 特点: 转控分离、开放接口、集中控制。SDN利用分层的思想,将数据与控制相分离,能够有效降低设备负载,协助网络运营商更好地控制基础设施,降低整体运营成本,成为最具有前途的网络技术之一。 2.SDN的基本思想? 利用分层的思想,SDN将数据与控制相分离,在控制层,包括具有逻辑中心化和可编程的控制器,可掌握全局网络信息,方便运营商和科研人员管理配置网络和部署新协议等.在数据层,包括哑的(dumb)交换机(与传统的二层交换机不同,专指用于转发数据的设备).交换机仅提供简单的数据转发功能,可以快速处理匹配的数据包,适应流量日益增长的需求.两层之间采用开放的统一接口(如OpenFlow[4]等)进行交互.控制器通过标准接口向交换机下发统一标准规则,交换机仅需按照这些规则执行相应的动作即可. 3.ONF全称是什么

2019 SDN阅读作业

不羁岁月 提交于 2019-12-04 21:22:26
2019 SDN阅读作业 作业链接: 2019 SDN阅读作业——阅读文章《软件定义网络(SDN)研究进展》,并根据所阅读的文章,书写一篇博客 1.为什么需要SDN?SDN特点? SDN的重要性: 传统网络的层次结构是互联网取得巨大成功的关键,但是随着网络规模的不断扩大,封闭的网络设备内置了过多的复杂协议,增加了运营商定制优化网络的难度,科研人员无法在真实环境中规模部署新协议。同时,互联网流量的快速增长,用户对流量的需求不断扩大,各种新型服务不断出现,增加了网络运维成本,因而SDN 技术应运而生。SDN技术能够有效降低设备负载,协助网络运营商更好地控制基础设施,降低整体运营成本,成为最具前途的网络技术之一,所以我们需要SDN。 SDN的特点: SDN将数据与控制相分离。在控制层,包括具有逻辑中心化和可编程的控制器,可掌握全局网络信息,方便运营商和科研人员管理配置网络和部署新协议等。交换机仅提供简单的数据转发功能,可以快速处理匹配的数据包,适应流量日益增长的需求。两层之间采用开放的统一接口进行交互。能够有效降低设备负载,协助网络运营商更好地控制基础设施,降低整体运营成本。逻辑上的集中控制。 2.SDN的基本思想? SDN采用的是分层的基本思想:SDN将数据与控制相分离。在控制层,包括具有逻辑中心化和可编程的控制器,可掌握全局网络信息,方便运营商和科研人员管理配置网络和部署新协议等

交换机实操

╄→尐↘猪︶ㄣ 提交于 2019-12-04 21:22:21
学习用H3C软件进行交换机实操。 第一次练习首先需要了解软件的安装,并且能熟悉软件的运用。 具体运行使用方法: 1.首先创建虚拟交换机 2.创建四个PC机 3.对PC机IP配置连接上交换机上 4.运行交换机和PC机,配置指令 5.首先配置交换机指令按ctrl+C显示H3C,PC机最后检验是否连载交换机中 6.<H3C>system-view:可以看到提示符变为[H3C],进入系统视图,全局配置模式。 来源: https://www.cnblogs.com/fn07216/p/11884670.html