Adding OpenFlow plugin feature tree docs
[docs.git] / manuals / developer-guide / src / main / asciidoc / openflowplugin / odl-ofp-developer-guide.adoc
1 [[openflow-plugin-project-developer-guide]]
2 == OpenFlow Plugin Project Developer Guide
3
4 This section covers topics which are developer specific and which have not been
5 covered in the user guide. Please see the Lithium OpenFlow plugin user
6 guide first.
7
8 It can be found on https://www.opendaylight.org/downloads[the OpenDaylight software download page].
9
10 include::odl-ofp-sequence-diagram.adoc[]
11
12 // include::odl-ofp-config-subsystem.adoc[]
13
14 include::odl-ofp-message-spy.adoc[]
15
16 // * OpenDaylight_OpenFlow_Plugin:Backlog:Extensibility[Extensibility Framework]
17
18 // include::odl-ofp-yang-models.adoc[]
19
20 include::odl-ofp-feature-tree.adoc[]
21
22 // include::odl-ofp-wiring-up-notifications.adoc[]
23
24 === Message Order Preservation
25
26 While the Helium release of OpenFlow Plugin relied on queues to ensure messages were delivered in order, subsequent releases instead ensure that all the messages from a given device are delivered using the same thread and thus message order is guaranteed without queues. The OpenFlow plugin allocates a number of threads equal to twice the number of processor cores on machine it is run, e.g., 8 threads if the machine has 4 cores.
27
28 NOTE:
29 While each device is assigned to one thread, multiple devices can be assigned to the same thread.
30
31 // == Tutorial / How-To
32
33 // missing content
34
35 // * OpenDaylight_OpenFlow_Plugin::Build_Instructions[Build Instructions]
36
37 // * OpenDaylight_OpenFlow_Plugin::MininetFromScratch[Mininet from scratch]
38
39 // * OpenDaylight_OpenFlow_Plugin::Mininet with multiple controllers[Mininet with multiple controllers]
40
41 // * OpenDaylight_OpenFlow_Plugin:Coding_Hints[Coding hints]
42
43 // * OpenDaylight_OpenFlow_Plugin::Wiring up Notifications[Wiring up Notifications]
44
45 // * OpenDaylight_OpenFlow_Plugin::Python_test_scripts[Python test-scripts]
46
47 // * OpenDaylight_OpenFlow_Plugin:Robot_Framework_Tests[Setup robot testing environment]
48
49 // * OpenDaylight_OpenFlow_Plugin::LiProposal_dev_setup[Lithium proposal - dev setup]