交换机

2019 SDN上机第5次作业

好久不见. 提交于 2019-12-06 08:58:56
2019 SDN上机第5次作业 1.浏览 RYU官网 学习RYU控制器的安装和 RYU开发入门教程 ,提交你对于教程代码的理解,包括但不限于: 描述官方教程实现了一个什么样的交换机功能? 该应用程序使用OFPP_FLOOD标志来指示应在所有端口上发送数据包。 控制器设定交换机支持什么版本的OpenFlow? OpenFlow 1.0 控制器设定了交换机如何处理数据包? @set_ev_cls(ofp_event.EventOFPPacketIn, MAIN_DISPATCHER) def packet_in_handler(self, ev): msg = ev.msg dp = msg.datapath ofp = dp.ofproto ofp_parser = dp.ofproto_parser actions = [ofp_parser.OFPActionOutput(ofp.OFPP_FLOOD)] out = ofp_parser.OFPPacketOut( datapath=dp, buffer_id=msg.buffer_id,in_port=msg.in_port, actions=actions) dp.send_msg(out) 当Ryu收到OpenFlow packet_in消息时,将产生事件(调用"packet_in_hander"方法); ev

交换机的基本概念和配置

北城以北 提交于 2019-12-06 08:54:15
一、Ethernet/802.3 LAN简介 802.3 Ethernet标准使用单播流量、广播流量和组播流量进行通信。双工设置和LAN分段可改善性能。冲突域、广播域、网络延时和LAN分段是LAN设计的关键考虑因素。 交换机转发方法将影响LAN性能和延时。网络流量内存缓冲允许交换机存储帧,这样交换机就可以提供转发、对称交换、非对称交换和多层交换功能 系统将以太网信号传送到连接在LAN 中的每一台主机,传送时使用一个特殊的规则集来确定哪台工作站可以访问网络。以太网所使用的规则集是基于IEEE 载波侦听多路访问/冲突检测 (CSMA/CD)技术 交换LAN 网络中的通信以三种方式进行:单播、广播和组播 用于以太网通信的双工设置有两种:半双工和全双工 二、使用交换机转发帧 交换机使用下面的两种转发方法之一来进行网络端口间的数据交换:存储转发交换或直通交换。 三、交换机管理配置 作为一项安全功能,Cisco IOS软件将 EXEC(执行)会话分成以下访问级别 用户执行:只允许用户访问有限量的基本监视命令。用户执行模式是在从 CLI 登录到 Cisco 交换机后所进入的默认模式。用户执行模式由 > 提示符标识。 特权执行:允许用户访问所有设备命令,如用于配置和管理的命令,特权执行模式可采用口令加以保护,使得只有获得授权的用户才能访问设备。特权执行模式由 # 提示符标识 1、基本交换机配置 1

SDN课程阅读作业(2)

て烟熏妆下的殇ゞ 提交于 2019-12-06 08:42:29
1.过去20年中可编程网络的发展可以分为几个阶段?每个阶段的贡献是什么? 答:可编程网络的发展分为三个阶段。 (1)主动网络阶段 贡献: 1、对主动网络的研究开创了可编程网络的概念,降低了网络创新的障碍 2、网络可虚拟化,以及基于数据包头对软件程序进行多路分解的能力 3、为middlebox编排提供统一架构的构想 4、提供了平台的可移植性和一些代码安全 5、主动网络是第一批干净的网络架构方法 (2)控制和数据平面分离阶段 贡献: 1、提出控制面和数据面之间的开放接口 2、在逻辑上对网络进行集中控制 3、提出了两个概念:使用数据面的开放接口进行集中逻辑控制和分布式状态管理 4、为Openflow的创建奠定了基础,尤其是乙烷的简单开关设计成为最初OpenFlow API的基础 (3)OpenFlow API和网络操作系统阶段 贡献: 1、为学生和科研人员实现新协议和新算法提供一个很好的试验平台 2、代表了广泛采用开放接口的第一个实例,并开发了使控制数据平面分离具有可扩展性和实用性的方法。 3、分布式状态管理技术。分离控制层和数据层带来了国家管理方面的新挑战。运行多个控制器对于可伸缩性、可 靠性和性能至关重要,但是这些副本应该像单个逻辑集中式控制器一样协同工作。 2.网络虚拟化与SDN的关系 答:网络虚拟化表示从底层物理设备分离的网络的抽象,网络虚拟化允许多个虚拟网络在共享基础设施上运行

2019 SDN上机第5次作业

走远了吗. 提交于 2019-12-06 08:41:20
本次作业将进行RYU控制器相关实践,了解RYU控制器开发方法。 实验内容 1.浏览RYU官网学习RYU控制器的安装和RYU开发入门教程,提交你对于教程代码的理解,包括但不限于: 1.描述官方教程实现了一个什么样的交换机功能? 实现了添加一些功能使交换机能够将接收到的数据包转发到所有端口的交换机功能. 2.控制器设定交换机支持什么版本的OpenFlow? 控制器设定交换机支持OpenFlow 1.0 3.控制器设定了交换机如何处理数据包? @set_ev_cls(ofp_event.EventOFPPacketIn, MAIN_DISPATCHER) //表明当Ryu收到OpenFlow packet_in消息时,将产生事件(调用“packet_in_handler”方法) def packet_in_handler(self, ev): msg = ev.msg//ev.msg是表示packet_in数据结构的对象。 dp = msg.datapath//msg.dp是代表数据路径(开关)的对象。 ofp = dp.ofproto ofp_parser = dp.ofproto_parser //dp.ofproto和dp.ofproto_parser是代表Ryu和交换机协商的OpenFlow协议的对象。 actions = [ofp_parser.OFPActionOutput

SDN课程阅读作业(2)

安稳与你 提交于 2019-12-06 08:31:41
一、过去20年中可编程网络的发展可以分为几个阶段?每个阶段的贡献是什么? 1.主动网络(从1990年代中期到2000年代初) 它在网络中引入了可编程的功能以实现更多的创新; 20世纪90年代初,主动网络研究项目探索了传统互联网栈通过IP或异步传输模式(ATM)或另一种主流网络提供的服务的根本替代方案。 为MiddleBox编排提供统一架构的构想。 2.控制平面和数据平面分离(2001年至2007年左右) 催生了两项创新:控制平面与数据平面之间的开放接口和在逻辑上对网络的集中控制 将控制功能转移到了单独的服务器上,这样逻辑上集中的路由控制器降低了标准的实施障碍,服务器技术的进步意味着单一的商品服务器可以存储的所有的路由状态,并为一个大型网络计算所有的路由决策 提出了两个概念,分别为使用数据面的开放接口进行集中逻辑控制和分布式状态管理 3.OpenFlow API和网络操作系统(从2007年到2010年左右) 它代表了广泛采用开放接口的第一个实例,广泛采用开放式接口和开发方法,使控制平面和数据平面分离具有可扩展性和实用性。 创建了全球网络创新环境,满足了网络研究社区的需求。 概括了网络设备和功能。OpenFlow规则可以基于13个不同的数据包头的任意一组定义流量上的转发行为。- OpenFlow还推广了ruleinstallation技术,允许从预先安装粗粒度规则(即,对许多头字段使用

2019 SDN上机第5次作业

我的未来我决定 提交于 2019-12-06 08:31:06
2019 SDN上机第5次作业 1.浏览RYU官网学习RYU控制器的安装和RYU开发入门教程,提交你对于教程代码的理解,包括但不限于: 描述官方教程实现了一个什么样的交换机功能? 答:官方教程实现了一个将接收到的数据包发送到所有端口的交换机功能 控制器设定交换机支持什么版本的OpenFlow? 答:OpenFlow 1.0 控制器设定了交换机如何处理数据包? 答:接收包并广播包 2.根据官方教程和提供的示例代码(SimpleSwitch.py),将具有自学习功能的交换机代码(SelfLearning.py)补充完整 from ryu.base import app_manager from ryu.controller import ofp_event from ryu.controller.handler import MAIN_DISPATCHER from ryu.controller.handler import set_ev_cls from ryu.ofproto import ofproto_v1_0 from ryu.lib.mac import haddr_to_bin from ryu.lib.packet import packet from ryu.lib.packet import ethernet from ryu.lib.packet import

2019 SDN上机第五次作业

孤人 提交于 2019-12-06 08:14:38
1.浏览RYU官网学习RYU控制器的安装和RYU开发入门教程,提交你对于教程代码的理解,包括但不限于: 描述官方教程实现了一个什么样的交换机功能? 官方教程实现了一个将接收到的数据包发送到所有端口的交换机功能 控制器设定交换机支持什么版本的OpenFlow? OpenFlow 1.0 控制器设定了交换机如何处理数据包? +接收包并广播包 @set_ev_cls(ofp_event.EventOFPPacketIn, MAIN_DISPATCHER) #当Ryu收到OpenFlow交换机送来的packet_in消息时调用,set_ev_cls的第一个参数也声明了。 #set_ev_cls的第二个参数MAIN_DISPATCHER意味着当Ryu和交换机握手过程(即hello, features request/reply, Set Config等)完毕,才会调用packet_in_handler。 def packet_in_handler(self, ev): msg = ev.msg dp = msg.datapath ofp = dp.ofproto ofp_parser = dp.ofproto_parser actions = [ofp_parser.OFPActionOutput(ofp.OFPP_FLOOD)] out = ofp_parser.OFPPacketOut(

2019 SDN上机第5次作业

余生颓废 提交于 2019-12-06 07:59:17
1.浏览RYU官网学习RYU控制器的安装和RYU开发入门教程,提交你对于教程代码的理解,包括但不限于 (1)描述官方教程实现了一个什么样的交换机功能? 让交换机将接收到的数据包发送到所有端口的功能。 (2)控制器设定交换机支持什么版本的OpenFlow? OpenFlow v1.0 (3)控制器设定了交换机如何处理数据包? @set_ev_cls(ofp_event.EventOFPPacketIn, MAIN_DISPATCHER) def packet_in_handler(self, ev): msg = ev.msg dp = msg.datapath ofp = dp.ofproto ofp_parser = dp.ofproto_parser actions = [ofp_parser.OFPActionOutput(ofp.OFPP_FLOOD)] out = ofp_parser.OFPPacketOut( datapath=dp, buffer_id=msg.buffer_id,in_port=msg.in_port, actions=actions) dp.send_msg(out) 如上方代码所示,新方法'packet_in_handler'已添加到L2Switch类。当Ryu收到OpenFlow packet_in消息时,将调用此方法。诀窍是“ set_ev

2019 SDN上机第5次作业

我的未来我决定 提交于 2019-12-06 07:58:48
1.浏览RYU官网学习RYU控制器的安装和RYU开发入门教程,提交你对于教程代码的理解 1.描述官方教程实现了一个什么样的交换机功能? 让交换机在各个端口发送它接收到的数据包 2. 控制器设定交换机支持什么版本的OpenFlow? OpenFlow v1.0 3. 控制器设定了交换机如何处理数据包? 这里把官方给出的代码放上来,备注中解释处理函数的部分 @set_ev_cls(ofp_event.EventOFPPacketIn, MAIN_DISPATCHER) //表明当Ryu收到OpenFlow packet_in消息时,将产生事件(调用“packet_in_handler”方法) def packet_in_handler(self, ev): msg = ev.msg//ev.msg是表示packet_in数据结构的对象。 dp = msg.datapath//msg.dp是代表数据路径(开关)的对象。 ofp = dp.ofproto ofp_parser = dp.ofproto_parser //dp.ofproto和dp.ofproto_parser是代表Ryu和交换机协商的OpenFlow协议的对象。 actions = [ofp_parser.OFPActionOutput(ofp.OFPP_FLOOD)] //动作列表

SDN课程阅读作业(2)

时光怂恿深爱的人放手 提交于 2019-12-06 07:07:49
过去20年中可编程网络的发展可以分为几个阶段?每个阶段的贡献是什么? 分为三个阶段 1.主动网络阶段(从20世纪90年代中期到21世纪初) A.对主动网络的研究开创了可编程网络的概念,降低了网络创新的障碍 SDN的最初动机通常引用了生产网络难以创新和提高可编程性的观点,其早期愿景大多集中在控制平面可编程性上,而主动网络则更多地集中在数据平面可编程性上 网络可虚拟化,以及基于数据包头对软件程序进行多路分解的能力 B.主动网络产生了一个架构框架,描述了这样一个平台的组件。这个平台的关键组件是一个管理共享资源的共享节点操作系统(NodeOS)和一组执行环境(EEs),每个环境定义一个用于数据包操作的虚拟机,以及一组在给定EE内工作以提供端到端服务的活动应用程序(AAs) C.为middlebox编排提供统一架构的构想 尽管这一设想可能没有直接影响到最近关于NFV的工作,但随着我们进一步应用基于SDN的控制和协调中间盒,从主动网络研究中得到的各种教训可能会证明是有用的 D.20世纪90年代初,主动网络研究项目探索了传统互联网栈通过IP或异步传输模式(ATM)或另一种主流网络提供的服务的根本替代方案。 2.控制面与数据面分离(从2001年到2007年左右) A.催生了两项创新:控制平面与数据平面之间的开放接口和在逻辑上对网络的集中控制 例如,lIETF工作组提出了一个标准的