Updated git submodules
[docs.git] / docs / user-guide / usecplugin-openflow-user-guide.rst
1 Usecplugin-OpenFlow User Guide
2 ==============================
3
4 The Usecplugin-OpenFlow User Guide contains information about
5 configuration, administration, management, using and troubleshooting the
6 feature.
7
8 Overview
9 --------
10
11 Usecplugin-OpenFlow collects information about potential OpenFlow
12 Packet\_In attacks to OpenDaylight. A threshold (water mark) can be set
13 for the Packet\_In rate which when breached will trigger Packet\_In
14 message information collection.
15
16 Usecplugin Architecture
17 -----------------------
18
19 Usecplugin listens on OpenFlow southbound interface for Packet\_In
20 messages. When the rate of Packet\_In breaches the high water mark the
21 application parses the message for header information which is
22 subsequently stored in YANG Data Store and a log file. Usecplugin has
23 PacketHandler class that implements the PacketProcessing interface to
24 override the OnPacketReceived notification by which the application is
25 notified of Packet\_In messages.
26
27 Configuring Usecplugin-OpenFlow
28 -------------------------------
29
30 Install the Usecplugin-OpenFlow feautre in OpenDaylight with the
31 ``feature:install odl-usecplugin-openflow`` at the Karaf CLI.
32
33 A user can set the low water mark and high water mark for Packet\_In
34 rates as well as number of samples for checking the time interval to
35 calculate Packet\_In rate.
36
37 URI
38     http://localhost:8181/apidoc/explorer/index.html#!/usecplugin(2015-01-05)
39
40 High Water Mark Configuration
41 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
42
43 PUT URI
44     http://localhost:8181/restconf/config/usecplugin:sample-data-hwm/
45
46 Sample Input
47     ``{"usecplugin:sample-data-hwm": { "samples":"3000","highWaterMark":"3000"}}``
48
49 Low Water Mark Configuration
50 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
51
52 PUT URI
53     http://localhost:8181/restconf/config/usecplugin:sample-data-lwm/
54
55 Sample Input
56     ``{"usecplugin:sample-data-lwm": { "samples-lwm":"2000","lowWaterMark-lwm":"2000"}}``
57
58 Administering or Managing Usecplugin-OpenFlow
59 ---------------------------------------------
60
61 Use RPC POST APIs in the following format for getting the attack related
62 information.
63
64 attackID
65 ~~~~~~~~
66
67 URI
68     http://localhost:8181/restconf/operations/usecplugin:attackID
69
70 Sample Input
71     ``{"usecplugin:input": { "NodeID":"openflow:1"}}``
72
73 attacksFromIP
74 ~~~~~~~~~~~~~
75
76 URI
77     http://localhost:8181/restconf/operations/usecplugin:attacksFromIP
78
79 Sample Input
80     ``{"usecplugin:input": { "SrcIP":"10.0.0.1"}}``
81
82 attacksToIP
83 ~~~~~~~~~~~
84
85 URI
86     http://localhost:8181/restconf/operations/usecplugin:attacksToIP
87
88 Sample Input
89     ``{"usecplugin:input": { "DstIP":"10.0.0.2"}}``
90