Replace supported admonitions with rst directives
[docs.git] / docs / developer-guide / usecplugin-openflow-developer-guide.rst
1 Usecplugin-OpenFlow Developer Guide
2 ===================================
3
4 Overview
5 --------
6
7 Usecplugin-OpenFlow provides security related information for the
8 OpenFlow southbound interface.
9
10 Usecplugin-OpenFlow Architecture
11 --------------------------------
12
13 Usecplugin-OpenFlow listens on OpenFlow southbound interface for
14 Packet\_In messages. The application parses the message for header
15 information. Usecplugin-OpenFlow has PacketHandler class that implements
16 the PacketProcessing interface to override the OnPacketReceived
17 notification by which the application is notified of Packet\_In
18 messages.
19
20 Usecplugin-OpenFlow is implemented with the help of a few java classes.
21
22 UsecpluginProvider
23     Provider class for Usecplugin-OpenFlow feature implementation.
24
25 PacketHandler
26     Receives Packet\_In messages coming to the controller and process
27     them appropriately
28
29 PacketParsing
30     Decodes Packet\_In messages for packet header information (L2, L3 &
31     L4 information)
32
33 InventoryUtility
34     Decodes Packet\_In messages for OpenFlow Switch and Port information
35
36 UsecpluginNotifImpl
37     Logs notification information which can be seen by log:display at
38     the Karaf terminal
39
40 UsecpluginRPCImpl
41     Implements Usecplugin RPCs
42
43 UsecpluginStore
44     Stores attack information into YANG Data Store and log file.
45
46 Key APIs and Interfaces
47 -----------------------
48
49 -  RPC APIs
50
51    Attacks from DPID
52        Number of OpenFlow Packet\_In Attacks from Switch with DeviceID
53
54    Attacks from Host
55        Number of OpenFlow Packet\_In Attacks from SrcIP Address
56
57    Attacks to Server
58        Number of OpenFlow Packet\_In Attacks to DstIP Address
59
60    Attacks at Time of Day
61        Number of OpenFlow Packet\_In Attacks at a Particular Time with a
62        variable Window Time
63
64 -  Notification APIs
65
66    On Low Water Mark Breached
67        Notification generated on breaching Low Water Mark
68