Re: [nox-dev] Modify the packet's header in Openflow Switch(Router)

2011-11-29 Thread Murphy McCauley
If you want to modify the OpenFlow reference switch, you may have better luck 
by contacting one of the OpenFlow mailing lists (maybe openflow-discuss ... 
https://mailman.stanford.edu/mailman/listinfo/openflow-discuss ?).

But I'd suggest you consider carefully if there is a way to do what you want 
within the OpenFlow spec or a common extension.  Can you not install a flow 
that matches the packets you want to modify?  Or maybe you can accomplish what 
you want using multiple tables (though support for this is a bit sketchy... it 
exists in OpenFlow 1.1 and Open vSwitch though the two differ somewhat)?

Good luck!

-- Murphy

On Nov 29, 2011, at 6:48 AM, Hyogi Jung wrote:

 Hi Murphy
 
 Thank you for reply. I understood your point.
 The actual work of rewriting the packet header happens on the switch.
 (I'm sorry, I omit carbon copy.)
 
 And I want to modify packet in switch before checking  flow table.
 Is it possible in openflow switch?
 
 Original openflow process : Receive packet - Check flow table(Find 
 highest-priority matching flow entry) - Apply instructions(Modify packet etc)
 I want to do this : 
 Receive packet - Modify packet in each OF switch - Check flow table(Find 
 highest-priority matching flow entry) - Apply instructions(Modify packet etc)
 
 So I search receiving callback in OF switch. I think it maybe relate with 
 hw_drv.c (openflow\hw-lib\skeleton\hw_drv.c) ?
 But I don't know exactly.
 
 Could you give some advice or where is the packet receiving callback?
 
 Thank you for your favor.
 
 Best Regards
 
 - Hyogi
 
 2011/11/29 Murphy McCauley jam...@nau.edu
 This depends on exactly what you mean, though I wonder if you are operating 
 under a misconception.
 
 If you use NOX to install a flow with, for example, an OFPAT_SET_DL_DST 
 action to set the ethernet address... the actual work of rewriting the packet 
 header happens on the switch.  It's only the instruction to do so that comes 
 from the controller.
 
 Hope that helps.
 
 -- Murphy
 
 On Nov 28, 2011, at 7:12 AM, Hyogi Jung wrote:
 
 I want to modify the packet's header in Openflow Switch(Router) not NOX 
 controller.
 
 Do you know where event handler is called?
 
 I try to search google and mailinglist, but I coundn't search. There is no 
 information.
 
 Could you give some advice or reference site?
 
 
 ___
 nox-dev mailing list
 nox-dev@noxrepo.org
 http://noxrepo.org/mailman/listinfo/nox-dev
 
 
 
 
 -- 
 Hyogi Jung, MS Student
 Multimedia  Mobile Communications Lab
 School of Computer Science and Engineering
 Seoul National University, Korea
 Tel: +82-2-880-9147
 

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev


[nox-dev] Spanning Tree Module

2011-11-29 Thread Bernd Wittefeld
Hi,
first of all: thanks for your great work and the really good support
here. I have a small problem and I hope someone knows what to do :)

The situation is the following:
I have a network with 6 OpenFlow switches in a mesh here. The software
(switches and NOX) is working fine.
I use the spanning_tree module in order to prevent loops in the network
when flooding ARP-Requests and stuff.
I got everything to work fine and even the NOX Gui (I'm on destiny)
shows me a correct Spanning-Tree without loops.
I have two hosts which are connected to two different switches. If I
send an ICMP ping from one host to the other, I get the ARP requests in
the Openflow network. They travel along the spanning tree which I
checked by using wireshark and tcpdump. The other links don't show ARP
requests.

Now the problem:
The ARP requests are not forwarded out of the OpenFlow network. That
means, they reach the switch that is connected to the destination host,
but the host does not get the ARP request.

How can I solve this? Do I have to manually unset the NOFLOOD switch
on that port in my controller or is there any other way, maybe to make
the spanning_tree module more intelligent or am I doing something wrong?

Thanks in advance
Bernd

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev


Re: [nox-dev] Spanning Tree Module

2011-11-29 Thread Murphy McCauley
AFAIK, this should work.  Have you actually inspected the switches?  Are the 
relevant ports actually getting NOFLOOD set?

-- Murphy

On Nov 29, 2011, at 7:54 AM, Bernd Wittefeld wrote:

 Hi,
 first of all: thanks for your great work and the really good support
 here. I have a small problem and I hope someone knows what to do :)
 
 The situation is the following:
 I have a network with 6 OpenFlow switches in a mesh here. The software
 (switches and NOX) is working fine.
 I use the spanning_tree module in order to prevent loops in the network
 when flooding ARP-Requests and stuff.
 I got everything to work fine and even the NOX Gui (I'm on destiny)
 shows me a correct Spanning-Tree without loops.
 I have two hosts which are connected to two different switches. If I
 send an ICMP ping from one host to the other, I get the ARP requests in
 the Openflow network. They travel along the spanning tree which I
 checked by using wireshark and tcpdump. The other links don't show ARP
 requests.
 
 Now the problem:
 The ARP requests are not forwarded out of the OpenFlow network. That
 means, they reach the switch that is connected to the destination host,
 but the host does not get the ARP request.
 
 How can I solve this? Do I have to manually unset the NOFLOOD switch
 on that port in my controller or is there any other way, maybe to make
 the spanning_tree module more intelligent or am I doing something wrong?
 
 Thanks in advance
 Bernd
 
 ___
 nox-dev mailing list
 nox-dev@noxrepo.org
 http://noxrepo.org/mailman/listinfo/nox-dev

___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev


Re: [nox-dev] Trouble with creating a VLAN path

2011-11-29 Thread Daniel de Arêa Leão
Hi Aaron,

First I'd like to thank you for the help with the code, I believe
without your tip I wouldn't be able to progress any further. But now
I'm stumbling with a new problem... :-)
After following your idea with the flow match and using the
register_for_packet_in NOX event, I was finally able to not just
install the flows but also I was able to connect the hosts from the
topology scenario, but the OFPAT_SET_VLAN_VID doesn't seem to work in
the way I was expecting, in other words, it seems that isn't adding
the VLAN tag since I'm getting empty results from Wireshark, when I
filter for VLAN.
Below some information that I believe will be helpfull:

Code: http://pastebin.com/XBfAJht0
Switch 1 dump-flow:
http://imageshack.us/photo/my-images/717/dumpswitch1code2.png/
Switch 2 dump-flow:
http://imageshack.us/photo/my-images/254/dumpswitch2code2.png/

If anyone have some tip or solution for this problem, I would really
appreciate it.

Thanks in advance,
Daniel

PS.:Sorry for the double email, gmail unconfigured the first one.

Em 29 de novembro de 2011 22:49, Daniel de Arêa Leão
daniel.area.l...@gmail.com escreveu:
 Hi Aaron,
 First I'd like to thank you for the help with the code, I believe
 without your tip I wouldn't be able to progress any further. But now
 I'm stumbling with a new problem... :-)After following your idea with
 the flow match and using the register_for_packet_in NOX event, I was
 finally able to not just install the flows but also I was able to
 connect the hosts from the topology scenario, but the
 OFPAT_SET_VLAN_VID doesn't seem to work in the way I was expecting, in
 other words, it seems that isn't adding the VLAN tag since I'm getting
 empty results from Wireshark, when I filter for VLAN.Below some
 information that I believe will be helpfull:
 Code: http://pastebin.com/XBfAJht0Switch 1 dump-flow:
 http://imageshack.us/photo/my-images/717/dumpswitch1code2.png/Switch 2
 dump-flow: http://imageshack.us/photo/my-images/254/dumpswitch2code2.png/
 If anyone have some tip or solution for this problem, I would really
 appreciate it.
 Thanks in advance,Daniel
 Em 29 de novembro de 2011 01:55, Aaron Rosen aro...@clemson.edu escreveu:
 You need to do something with flow to tell it what you want to match on. Try
 adding something like

 flow[core.IN_PORT] = inport


 Aaron

 2011/11/28 Daniel de Arêa Leão daniel.area.l...@gmail.com

 Hi,

 I'm a newbie in NOX and Python and I'm trying to create a VLAN path
 using NOX. After some researches I was finally able to create a
 component that at least doesn't show any kind of compilation error,
 but it also doesn't work as I expect... It seems that it doesn't
 install the flow on the switch.
 Below, some informations that I believe that will be helpfull:
 In the environment that I've created, I'm using NOX 0.9.0 (zaku) and
 Mininet 1.0.0. In the Mininet, I am using linear 2 as the topology
 scenario.

 Command lines that I have used:
 # ./nox_core -v -i ptcp:6634 dcnflow
 # mn -x --mac --controller=remote --ip=192.168.56.101 --port=6634
 --topo linear,2

 My code for the component: http://pastebin.com/2Ue7Hpmr

 And here some logs that I collected:
 dpctl show log: http://imageshack.us/photo/my-images/522/dpctl.png/
 dpctl dump-flows: http://imageshack.us/photo/my-images/853/dumpt.png/
 NOX log: http://pastebin.com/cRDzYi7F

 Does anyone have a tip or a solution for this problem? Reaffirming
 that I want to create a VLAN path.

 Thanks in advance,
 Daniel
 ___
 nox-dev mailing list
 nox-dev@noxrepo.org
 http://noxrepo.org/mailman/listinfo/nox-dev




 --
 Aaron O. Rosen
 Masters Student - Network Communication
 306B Fluor Daniel


___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev


Re: [nox-dev] Trouble with creating a VLAN path

2011-11-29 Thread Aaron Rosen
The issue is with the order in your actions

  actions = [[openflow.OFPAT_OUTPUT, [0, output]],
[openflow.OFPAT_SET_VLAN_VID, 2]]

Change it to this:

  actions = [ [openflow.OFPAT_SET_VLAN_VID, 2]
,[openflow.OFPAT_OUTPUT, [0, output]] ]

and then it should work I think.

Right now your flowmod first outputs the packet and then adds the tag.
You need to switch the order.

Aaron

2011/11/29 Daniel de Arêa Leão daniel.area.l...@gmail.com

 Hi Aaron,

 First I'd like to thank you for the help with the code, I believe
 without your tip I wouldn't be able to progress any further. But now
 I'm stumbling with a new problem... :-)
 After following your idea with the flow match and using the
 register_for_packet_in NOX event, I was finally able to not just
 install the flows but also I was able to connect the hosts from the
 topology scenario, but the OFPAT_SET_VLAN_VID doesn't seem to work in
 the way I was expecting, in other words, it seems that isn't adding
 the VLAN tag since I'm getting empty results from Wireshark, when I
 filter for VLAN.
 Below some information that I believe will be helpfull:

 Code: http://pastebin.com/XBfAJht0
 Switch 1 dump-flow:
 http://imageshack.us/photo/my-images/717/dumpswitch1code2.png/
 Switch 2 dump-flow:
 http://imageshack.us/photo/my-images/254/dumpswitch2code2.png/

 If anyone have some tip or solution for this problem, I would really
 appreciate it.

 Thanks in advance,
 Daniel

 PS.:Sorry for the double email, gmail unconfigured the first one.

 Em 29 de novembro de 2011 22:49, Daniel de Arêa Leão
 daniel.area.l...@gmail.com escreveu:
  Hi Aaron,
  First I'd like to thank you for the help with the code, I believe
  without your tip I wouldn't be able to progress any further. But now
  I'm stumbling with a new problem... :-)After following your idea with
  the flow match and using the register_for_packet_in NOX event, I was
  finally able to not just install the flows but also I was able to
  connect the hosts from the topology scenario, but the
  OFPAT_SET_VLAN_VID doesn't seem to work in the way I was expecting, in
  other words, it seems that isn't adding the VLAN tag since I'm getting
  empty results from Wireshark, when I filter for VLAN.Below some
  information that I believe will be helpfull:
  Code: http://pastebin.com/XBfAJht0Switch 1 dump-flow:
  http://imageshack.us/photo/my-images/717/dumpswitch1code2.png/Switch 2
  dump-flow: http://imageshack.us/photo/my-images/254/dumpswitch2code2.png/
  If anyone have some tip or solution for this problem, I would really
  appreciate it.
  Thanks in advance,Daniel
  Em 29 de novembro de 2011 01:55, Aaron Rosen aro...@clemson.edu escreveu:
  You need to do something with flow to tell it what you want to match on. 
  Try
  adding something like
 
  flow[core.IN_PORT] = inport
 
 
  Aaron
 
  2011/11/28 Daniel de Arêa Leão daniel.area.l...@gmail.com
 
  Hi,
 
  I'm a newbie in NOX and Python and I'm trying to create a VLAN path
  using NOX. After some researches I was finally able to create a
  component that at least doesn't show any kind of compilation error,
  but it also doesn't work as I expect... It seems that it doesn't
  install the flow on the switch.
  Below, some informations that I believe that will be helpfull:
  In the environment that I've created, I'm using NOX 0.9.0 (zaku) and
  Mininet 1.0.0. In the Mininet, I am using linear 2 as the topology
  scenario.
 
  Command lines that I have used:
  # ./nox_core -v -i ptcp:6634 dcnflow
  # mn -x --mac --controller=remote --ip=192.168.56.101 --port=6634
  --topo linear,2
 
  My code for the component: http://pastebin.com/2Ue7Hpmr
 
  And here some logs that I collected:
  dpctl show log: http://imageshack.us/photo/my-images/522/dpctl.png/
  dpctl dump-flows: http://imageshack.us/photo/my-images/853/dumpt.png/
  NOX log: http://pastebin.com/cRDzYi7F
 
  Does anyone have a tip or a solution for this problem? Reaffirming
  that I want to create a VLAN path.
 
  Thanks in advance,
  Daniel
  ___
  nox-dev mailing list
  nox-dev@noxrepo.org
  http://noxrepo.org/mailman/listinfo/nox-dev
 
 
 
 
  --
  Aaron O. Rosen
  Masters Student - Network Communication
  306B Fluor Daniel
 
 




--
Aaron O. Rosen
Masters Student - Network Communication
306B Fluor Daniel
___
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev