Dear,

Time to live behavior? Just my sense. I'm not very into this to be sure.

You can see from wireshark if it's really because of TTL.

Regards,
Duy

On 08/13/2014 06:18 PM, Krishna Pratap wrote:
Hi,

I am trying to create a linear topology of 70 switches and linking all
these switches with patch ports. After this, I am injecting traffic
packets in the first switch(S0) and I have added flows on all of the
switches to forward the packets in one direction towards the last
switch (S69). I am using OVS 2.1.0

(traffic 
generator)------>S0---->S1---->..........S63---->S64---->S65----->........S68------>S69

All the packets received by the first switch S0 are being forwarded
correctly to the next switch S1 and to the subsequent switches in
order until the 66th switch.
Here, the packets don't get forwarded beyond the 66th switch(S65) even
though it receives it on one port from 65th switch (S64) as shown in
output below. I did a snoop on all the switches and the traffic stops
at the 65th switch even when the flows clearly say that whatever is
received on port 2 should be forwarded on port 1 as shown below.

Can anyone explain why its behaving like this or point out which part
of code does this check to limit the number of hops. I'm trying to
benchmark the behavior of OVS in different topologies such as linear,
grid, ring etc. I'm encountering similar behavior in these scenarios
as well

I have pasted the output from the various switches below.


----------------------------------------------------------------------------------------------------------------------------------------------


The linear topology of 70 switches  looks like this:

(traffic 
generator)------>S0---->S1---->..........S63---->S64---->S65----->........S68------>S69

here are the flows on first switch . port 9 is my traffic port on first switch.

root@ccpu1:~# ovs-ofctl dump-flows Switch_S0
NXST_FLOW reply (xid=0x4):
  cookie=0x0, duration=1067.239s, table=0, n_packets=0, n_bytes=0,
idle_age=1067, in_port=9 actions=CONTROLLER:6633,output:1


dump-ports on first switch to show packets transfer

root@ccpu1:~# ovs-ofctl dump-ports Switch_S0
OFPST_PORT reply (xid=0x2): 3 ports
   port  9: rx pkts=223, bytes=21734, drop=0, errs=0, frame=0, over=?, crc=?
            tx pkts=0, bytes=0, drop=0, errs=0, coll=0
   port  1: rx pkts=0, bytes=0, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=221, bytes=21546, drop=0, errs=0, coll=0
   port LOCAL: rx pkts=0, bytes=0, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=6, bytes=468, drop=0, errs=0, coll=0

snoop on first switch

root@ccpu1:~# ovs-ofctl snoop Switch_S0
OFPT_PACKET_IN (OF1.3) (xid=0x0): cookie=0x0 total_len=98 in_port=9
(via action) data_len=98 buffer=0x00000201
ip,metadata=0,in_port=0,vlan_tci=0x0000,dl_src=00:60:f3:00:10:10,dl_dst=00:80:e2:01:12:11,nw_src=192.85.1.1,nw_dst=192.85.1.3,nw_proto=2,nw_tos=192,nw_ecn=0,nw_ttl=255
OFPT_PACKET_IN (OF1.3) (xid=0x0): cookie=0x0 total_len=98 in_port=9
(via action) data_len=98 buffer=0x00000202
ip,metadata=0,in_port=0,vlan_tci=0x0000,dl_src=00:60:f3:00:10:10,dl_dst=00:80:e2:01:12:11,nw_src=192.85.1.1,nw_dst=192.85.1.3,nw_proto=2,nw_tos=192,nw_ecn=0,nw_ttl=255
OFPT_ECHO_REQUEST (OF1.3) (xid=0x0): 0 bytes of payload
OFPT_ECHO_REPLY (OF1.3) (xid=0x0): 0 bytes of payload
OFPT_PACKET_IN (OF1.3) (xid=0x0): cookie=0x0 total_len=98 in_port=9
(via action) data_len=98 buffer=0x00000203
ip,metadata=0,in_port=0,vlan_tci=0x0000,dl_src=00:60:f3:00:10:10,dl_dst=00:80:e2:01:12:11,nw_src=192.85.1.1,nw_dst=192.85.1.3,nw_proto=2,nw_tos=192,nw_ecn=0,nw_ttl=255



flows on the second switch  and similar flows are added throughout

root@ccpu1:~# ovs-ofctl dump-flows Switch_S1
NXST_FLOW reply (xid=0x4):
  cookie=0x0, duration=1131.739s, table=0, n_packets=0, n_bytes=0,
idle_age=1131, in_port=2 actions=CONTROLLER:6633,output:1


'dump-ports' on second switch
root@ccpu1:~# ovs-ofctl dump-ports Switch_S1
OFPST_PORT reply (xid=0x2): 3 ports
   port  1: rx pkts=0, bytes=0, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=226, bytes=22036, drop=0, errs=0, coll=0
   port  2: rx pkts=226, bytes=22036, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=0, bytes=0, drop=0, errs=0, coll=0
   port LOCAL: rx pkts=0, bytes=0, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=5, bytes=378, drop=0, errs=0, coll=0


flows on 65th switch
root@ccpu1:~# ovs-ofctl dump-flows Switch_S65
NXST_FLOW reply (xid=0x4):
  cookie=0x0, duration=1280.098s, table=0, n_packets=0, n_bytes=0,
idle_age=1280, in_port=2 actions=CONTROLLER:6633,output:1


'dump-ports' on 65th switch
root@ccpu1:~# ovs-ofctl dump-ports Switch_S64
OFPST_PORT reply (xid=0x2): 2 ports
   port  1: rx pkts=0, bytes=0, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=234, bytes=22840, drop=0, errs=0, coll=0
   port  2: rx pkts=234, bytes=22840, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=0, bytes=0, drop=0, errs=0, coll=0


'snoop' on the 65th switch

root@ccpu1:~# ovs-ofctl snoop Switch_S64
OFPT_PACKET_IN (OF1.3) (xid=0x0): cookie=0x0 total_len=98 in_port=2
(via action) data_len=98 buffer=0x000002ba
ip,metadata=0,in_port=0,vlan_tci=0x0000,dl_src=00:60:f3:00:10:10,dl_dst=00:80:e2:01:12:11,nw_src=192.85.1.1,nw_dst=192.85.1.3,nw_proto=2,nw_tos=192,nw_ecn=0,nw_ttl=255
OFPT_ECHO_REQUEST (OF1.3) (xid=0x0): 0 bytes of payload
OFPT_ECHO_REPLY (OF1.3) (xid=0x0): 0 bytes of payload
OFPT_PACKET_IN (OF1.3) (xid=0x0): cookie=0x0 total_len=98 in_port=2
(via action) data_len=98 buffer=0x000002bb
ip,metadata=0,in_port=0,vlan_tci=0x0000,dl_src=00:60:f3:00:10:10,dl_dst=00:80:e2:01:12:11,nw_src=192.85.1.1,nw_dst=192.85.1.3,nw_proto=2,nw_tos=192,nw_ecn=0,nw_ttl=255
OFPT_PACKET_IN (OF1.3) (xid=0x0): cookie=0x0 total_len=98 in_port=2
(via action) data_len=98 buffer=0x000002bc
ip,metadata=0,in_port=0,vlan_tci=0x0000,dl_src=00:60:f3:00:10:10,dl_dst=00:80:e2:01:12:11,nw_src=192.85.1.1,nw_dst=192.85.1.3,nw_proto=2,nw_tos=192,nw_ecn=0,nw_ttl=255



flows on 66th switch
root@ccpu1:~# ovs-ofctl dump-flows Switch_S65
NXST_FLOW reply (xid=0x4):
  cookie=0x0, duration=1280.098s, table=0, n_packets=0, n_bytes=0,
idle_age=1280, in_port=2 actions=CONTROLLER:6633,output:1




'dump-ports' on 66th switch shows it is not forwarding packets to port
1 . even though there is a rule which clearly states it should.

root@ccpu1:~# ovs-ofctl dump-ports Switch_S65
OFPST_PORT reply (xid=0x2): 2 ports
   port  1: rx pkts=0, bytes=0, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=0, bytes=0, drop=0, errs=0, coll=0
   port  2: rx pkts=236, bytes=23036, drop=0, errs=0, frame=0, over=0, crc=0
            tx pkts=0, bytes=0, drop=0, errs=0, coll=0


Any help would be appreciated.

Thanks,
KP
_______________________________________________
discuss mailing list
discuss@openvswitch.org
http://openvswitch.org/mailman/listinfo/discuss

--
-------------------
Bach Ha Duy
INFOTECH Master Program
University of Stuttgart, Germany

_______________________________________________
discuss mailing list
discuss@openvswitch.org
http://openvswitch.org/mailman/listinfo/discuss

Reply via email to