Hi,
> I’m not very familiar with the coding language and am not sure how to
> code this beyond
I tried create a source image.
Please refer to the following.
e.g.)
$ git diff
diff --git a/ryu/app/simple_switch_13.py b/ryu/app/simple_switch_13.py
index 3e7c598..f0fd59b 100644
--- a/ryu/app/simple_switch_13.py
+++ b/ryu/app/simple_switch_13.py
@@ -14,11 +14,14 @@
# limitations under the License.
from ryu.base import app_manager
+from datetime import datetime
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 tcp
+from ryu.lib.packet import ipv4
from ryu.lib.packet import ethernet
from ryu.lib.packet import ether_types
@@ -88,6 +91,26 @@ class SimpleSwitch13(app_manager.RyuApp):
dpid = datapath.id
self.mac_to_port.setdefault(dpid, {})
+ pkt_ip = pkt.get_protocol(ipv4.ipv4)
+
+ src = None
+ ts_val = None
+ ts_ecr = None
+ if pkt_ip:
+ src = pkt_ip.src
+
+ pkt_tcp = pkt.get_protocol(tcp.tcp)
+
+ if pkt_tcp and pkt_tcp.option is not None:
+ for op in pkt_tcp.option:
+ if op.kind == tcp.TCP_OPTION_KIND_TIMESTAMPS:
+ ts_val = op.ts_val
+ ts_ecr = op.ts_ecr
+
+ now = datetime.now().strftime('%Y/%m/%d %H:%M:%S')
+
+ self.logger.info("#### %s src:%s ts_val:%s ts_ecr:%s",
+ now, src, ts_val, ts_ecr)
self.logger.info("packet in %s %s %s %s", dpid, src, dst, in_port)
# learn a mac address to avoid FLOOD next time.
The following is the output image
#### 2016/07/20 10:48:05 src:10.0.0.1 ts_val:1394015 ts_ecr:0
On 2016年07月14日 03:41, Bryan Martin wrote:
> Good afternoon everyone,
>
> I am trying to monitor all TCP traffic in a network from the controller.
> What I want is to be able to collect all TCP traffic on my network to
> include time of collection, source IP, and source TCP timestamp.
>
> I’m not very familiar with the coding language and am not sure how to
> code this beyond
>
> pkt_tcp = pkt.get_protocol(tcp.tcp)
>
> if pkt_tcp:
>
> Any help would be greatly appreciated. Thank you!
>
>
> ------------------------------------------------------------------------------
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity planning
> reports.http://sdm.link/zohodev2dev
>
>
>
> _______________________________________________
> Ryu-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/ryu-devel
>
------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports.http://sdm.link/zohodev2dev
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel