sdn

2019 SDN上机第2次作业

旧街凉风 提交于 2020-01-13 12:51:47
1. 利用mininet创建如下拓扑,要求拓扑支持OpenFlow 1.3协议,主机名、交换机名以及端口对应正确,请给出拓扑Mininet执行结果,展示端口连接情况 2. 直接在Open vSwitch下发流表,用vlan得到下列虚拟网段,请逐条说明所下发的流表含义 sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=1,actions=push_vlan:0x8100,set_field:4096-\>vlan_vid,output:4 //转发S1端口1的包到端口4,并打上vlan_tag sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=2,actions=push_vlan:0x8100,set_field:4097-\>vlan_vid,output:4 //转发S1端口2的包到端口4,并打上vlan_tag sudo ovs-ofctl -O OpenFlow13 add-flow s1 priority=1,in_port=3,actions=push_vlan:0x8100,set_field:4098-\>vlan_vid,output:4 //转发S1端口3的包到端口4,并打上vlan_tag sudo ovs-ofctl

2019 SDN上机第2次作业

流过昼夜 提交于 2020-01-12 15:17:06
1.利用mininet创建如下拓扑,要求拓扑支持OpenFlow 1.3协议,主机名、交换机名以及端口对应正确,请给出拓扑Mininet执行结果,展示端口连接情况 创建fattree2.py文档,并编写py代码,代码如下: from mininet.topo import Topo from mininet.net import Mininet from mininet.node import RemoteController,CPULimitedHost from mininet.link import TCLink from mininet.util import dumpNodeConnections class Mytopo(Topo): def __init__(self): Topo.__init__(self) s=[] for i in range(2): sw = self.addSwitch('s{}'.format(i+1)) s.append(sw) count=1 for sw in s[0:2]: for i in range(3): host = self.addHost('h{}'.format(count)) self.addLink(sw,host) count += 1 self.addLink(s[0],s[1]) topos = {

The Road to SDN: An Intellectual History of Programmable Networks (五)

谁说我不能喝 提交于 2020-01-11 23:36:17
3. Network Virtualization 单词学习 翻译 In this section, we discuss network virtualization, a prominent early “use case” for SDN. Network virtualization presents the abstraction of a network that is decoupled from the underlying physical equipment. Network virtualization allows multiple virtual networks to run over a shared infrastructure, and each virtual network can have a much simpler (more abstract) topology than the underlying physical network. Forexample, a Virtual Local Area Network (VLAN) provides the illusion of a single LAN spanning multiple physical subnets, and multiple VLANs can run

The Road to SDN: An Intellectual History of Programmable Networks (三)

微笑、不失礼 提交于 2020-01-08 01:01:18
2.2 Separating Control and Data Planes 单词学习 翻译 In the early 2000s, increasing traffic volumes and a greater emphasis on on network reliability, predictability, and performance led network operators to seek better approaches to certain network-management functions such as the control over the paths used to deliver traffic (a practice commonly known as traffic engineering). The means for performing traffic engineering using conventional routing protocols were primitive at best. Operators’ frustration with these approaches were recognized by a small, well-situated community of researchers who

2019 SDN大作业

天涯浪子 提交于 2020-01-07 19:01:26
2019 SDN大作业--数据中心类型网络拓扑的搭建与连接 贡献比例 分组报告贡献比例 学号 分工 比例 031702345 提供资料,答辩 22% 031702311 查找资料,ppt制作 21% 031702428 提供资料 18% 031702309 查找资料,ppt制作 21% 131700101 提供资料 18% 分组实验贡献比例 学号 分工 比例 031702345 代码实现,博客 28% 031702311 思路设计,场景搭建 18% 031702428 代码实现 18% 031702309 思路设计,场景搭建 18% 131700101 思路设计,视频 18% 实验概述 使用两个互为备份的中心交换机 连接两两互为备份的共计四个交换机 下接四组各连有两台主机的交换机 作为数据中心类型网络拓扑的一个小型实现 上、中、下层均可以扩展来实现对更多网络主机的支持 实现在网络中心区域防止单个设备故障所引发的网络中断 实验拓扑 实验拓扑图如下 由miniedit绘制 由NSP绘制 建立实验网络 建立流程如下 1.先打开OpenDayLigtht作为remote控制器,否则先运行mininet则不能连接到控制器 2.运行mininet建立拓扑结构,运行代码如 sudo mn --custom datacenter.py --topo mytopo --controller

2019 SDN大作业

二次信任 提交于 2020-01-07 15:15:27
简单的负载均衡 1.分组情况 组名:蓝蓝的大白牙 学号 姓名 贡献度 031702507 黄皓 13% 031702508 石晓楠 24% 031702511 古力亚尔 13% 031702525 周鑫煌 20% 031702532 陈聪(组长) 30% 2.作业内容 Github仓库 视频链接 3.实现关键 以如下拓扑为基础 搭建拓扑的代码如下: from mininet.topo import Topo class MyTopo( Topo ): def __init__( self ): # initilaize topology Topo.__init__( self ) # add hosts and switches host1 = self.addHost( 'h1' ) host2 = self.addHost( 'h2' ) host3 = self.addHost( 'h3' ) switch1 = self.addSwitch( 's1' ) switch2 = self.addSwitch( 's2' ) switch3 = self.addSwitch( 's3' ) # add links self.addLink(host1,switch1) self.addLink(switch1,switch2) self.addLink(switch1

观光队2019 SDN大作业

谁说胖子不能爱 提交于 2020-01-07 09:55:10
视频链接 GitHub地址 本组成员 学号 姓名 贡献比例 031702236 王耀鑫(组长) 20% 031702234 林银河 18% 031702241 苏杰隆 18% 031702206 吴雅虹 18% 031702223 郑志强 26% 拓扑图 功能设计 本次大作业我们小组应用P4编程语言实现一个防火墙功能,限制外网对内部网络的访问,而内部网络可以正常访问外网,起到一定程度的安全防护作用。 核心代码 parser MyParser(packet_in packet, out headers hdr, inout metadata meta, inout standard_metadata_t standard_metadata) { state start { transition parse_ethernet; } state parse_ethernet { packet.extract(hdr.ethernet); transition select(hdr.ethernet.etherType) { TYPE_IPV4: parse_ipv4; default: accept; } } state parse_ipv4 { packet.extract(hdr.ipv4); transition select(hdr.ipv4.protocol){ TYPE

观光队2019 SDN大作业

点点圈 提交于 2020-01-07 08:12:59
视频链接 GitHub地址 本组成员 学号 姓名 贡献比例 031702236 王耀鑫(组长) 20% 031702234 林银河 18% 031702241 苏杰隆 18% 031702206 吴雅虹 18% 031702223 郑志强 26% 拓扑图 功能设计 本次大作业我们小组应用P4编程语言实现一个防火墙功能,限制外网对内部网络的访问,而内部网络可以正常访问外网,起到一定程度的安全防护作用。 核心代码 parser MyParser(packet_in packet, out headers hdr, inout metadata meta, inout standard_metadata_t standard_metadata) { state start { transition parse_ethernet; } state parse_ethernet { packet.extract(hdr.ethernet); transition select(hdr.ethernet.etherType) { TYPE_IPV4: parse_ipv4; default: accept; } } state parse_ipv4 { packet.extract(hdr.ipv4); transition select(hdr.ipv4.protocol){ TYPE

2019 SDN大作业

青春壹個敷衍的年華 提交于 2020-01-07 08:10:13
2019 SDN大作业 负载均衡程序作业 程序分工 什么都不会队 姓名 学号 分工 占比 王泽鸿 031702618 思路设计,代码实现 21 林涛 031702616 思路设计,代码实现 21 李奇 031702322 实验实现,视频录制 21 涂峥嵘 031702325 实验实现,视频录制 21 覃鸿浩 031702218 博客总结 16 1.程序链接: https://github.com/Heque/sdn- 2.场景 拓扑图: 场景描述:    服务器host 2 ,host 3,host 4上各自有不同的服务,host 1是客户端。实现一个负载均衡的北向程序,当host 2,host 3,host 4向host 1传输数据时,北向应用根据链路的使用状况动态的调整路由规则。其中限定主机2,3,4,单个链路发送的流量不会超过S4所有链路带宽。 3.实现    场景二创建拓扑有s1-s4、s1-s2-s4、s1-s3-s4三条线路使之通行。以经历的线路为基准进行负载均衡,对s4下发流表,使用hardtime机制,在一段时间内改变三条条线路占比,提高了吞吐量。 启动ODL并且安装插件 进入ODL文件夹,并在终端输入以下命令 ./karaf 安装feature,输入以下命令: feature:install odl-restconf feature:install odl

2019 SDN大作业

ぐ巨炮叔叔 提交于 2020-01-07 07:54:57
视频链接 建议把清晰度调到最高 队名 不想取名 本组成员 学号 姓名 031702422 朱宏(组长) 031702419 姚彬锟 031702420 张庆焰 031702425 吴永铭 041602630 张周伟 负载均衡代码如下 # -*- coding: utf-8 -*- import httplib2 import time import json class OdlUtil: url = '' def __init__(self, host, port): self.url = 'http://' + host + ':' + str(port) def install_flow(self, container_name='default',username="admin", password="admin"): http = httplib2.Http() http.add_credentials(username, password) headers = {'Accept': 'application/json'} flow_name = 'flow_' + str(int(time.time()*1000)) #s3流表 #在检测h4发包的时候s3的1口流量空闲时发的流表 h4_to_s3_1 ='{"flow": [{"id": "0","match": {