summaryrefslogtreecommitdiffstats
path: root/docs/development/scenario/featurematrix.rst
blob: 2d00a4097c5f3dee84dbeee35cfee41f1b32af90 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Each scenario provides a set of platform capabilities and features that it supports.  It is
possible to identify which features are provided by reviewing the scenario name, however
not all features and capabilities are discernible from the name itself.

Brahmaputra feature support matrix
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The following table provides an overview of the available scenarios and supported features
in the Brahmaputra release of OPNFV.

.. image:: ../images/brahmaputrafeaturematrix.jpg
   :alt: OPNFV Brahmaputra Feature Matrix

The table above provides an overview of which scenarios will support certain feature capabilities.
The table does not indicate if the feature or scenario has limitations. Refer to the
`Configuration Guide <http://artifacts.opnfv.org/opnfvdocs/brahmaputra/docs/configguide/configoptions.html#opnfv-scenarios>`_
for details on the state of each scenario and further information.

Feature development in the Brahmaputra release often consisted of the development of specific
requirements and the further integration and validation of those requirements.  This results in some
features only being supported on the platform when a specific scenario, providing the
capabilities necessary to run the feature, is deployed.

Scenario Naming
^^^^^^^^^^^^^^^

In OPNFV, scenarios are identified by short scenario names.  These names follow a scheme that
identifies the key components and behaviours of the scenario, the rules for scenario naming are as follows:

  os-[controller]-[feature]-[mode]-[option]

For example: *os-nosdn-kvm-noha* provides an OpenStack based deployment using neutron including
the OPNFV enhanced KVM hypervisor.

The [feature] tag in the scenario name describes the main feature provided by the scenario.
This scenario may also provide support for features, such as advanced fault management, which are
not apparent in the scenario name.
The following section describes the features available in each scenario.
# # the profile defines a public and private side to make limited traffic correlation # between private and public side same way as it is made by IXIA solution. # schema: "isb:traffic_profile:0.1" # This file is a template, it will be filled with values from tc.yaml before passing to the traffic generator name: rfc2544 description: Traffic profile to run RFC2544 latency traffic_profile: traffic_type : IXIARFC2544Profile # defines traffic behavior - constant or look for highest possible throughput frame_rate : 100 # pc of linerate # that specifies a range (e.g. ipv4 address, port) private_1: ipv4: outer_l2: framesize: 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}" 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}" 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}" 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}" 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}" 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}" 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}" outer_l3v4: proto: "udp" srcip4: "{{get(flow, 'flow.srcip4_range', '1.1.1.1-1.15.255.255') }}" dstip4: "{{get(flow, 'flow.dstip4_range', '90.90.1.1-90.105.255.255') }}" count: "{{get(flow, 'flow.count', '1') }}" ttl: 32 dscp: 0 outer_l4: srcport: "{{get(flow, 'flow.srcport_range', '1234') }}" dstport: "{{get(flow, 'flow.dstport_range', '2001') }}" count: "{{get(flow, 'flow.count', '1') }}" public_1: ipv4: outer_l2: framesize: 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}" 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}" 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}" 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}" 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}" 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}" 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}" outer_l3v4: proto: "udp" srcip4: "{{get(flow, 'flow.dstip4_range', '1.1.1.1-1.15.255.255') }}" dstip4: "{{get(flow, 'flow.srcip4_range', '90.90.1.1-90.105.255.255') }}" count: "{{get(flow, 'flow.count', '1') }}" ttl: 32 dscp: 0 outer_l4: srcport: "{{get(flow, 'flow.srcport_range', '1234') }}" dstport: "{{get(flow, 'flow.dstport_range', '2001') }}" count: "{{get(flow, 'flow.count', '1') }}" private_2: ipv4: outer_l2: framesize: 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}" 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}" 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}" 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}" 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}" 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}" 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}" outer_l3v4: proto: "udp" srcip4: "{{get(flow, 'flow.srcip4_range', '1.1.1.1-1.15.255.255') }}" dstip4: "{{get(flow, 'flow.dstip4_range', '90.90.1.1-90.105.255.255') }}" count: "{{get(flow, 'flow.count', '1') }}" ttl: 32 dscp: 0 outer_l4: srcport: "{{get(flow, 'flow.srcport_range', '1234') }}" dstport: "{{get(flow, 'flow.dstport_range', '2001') }}" count: "{{get(flow, 'flow.count', '1') }}" public_2: ipv4: outer_l2: framesize: 64B: "{{ get(imix, 'imix.private.imix_small', '0') }}" 128B: "{{ get(imix, 'imix.private.imix_128B', '0') }}" 256B: "{{ get(imix, 'imix.private.imix_256B', '0') }}" 373b: "{{ get(imix, 'imix.private.imix_373B', '0') }}" 570B: "{{get(imix, 'imix.private.imix_570B', '0') }}" 1400B: "{{get(imix, 'imix.private.imix_1400B', '0') }}" 1518B: "{{get(imix, 'imix.private.imix_1500B', '0') }}" outer_l3v4: proto: "udp" srcip4: "{{get(flow, 'flow.dstip4_range', '1.1.1.1-1.15.255.255') }}" dstip4: "{{get(flow, 'flow.srcip4_range', '90.90.1.1-90.105.255.255') }}" count: "{{get(flow, 'flow.count', '1') }}" ttl: 32 dscp: 0 outer_l4: srcport: "{{get(flow, 'flow.srcport_range', '1234') }}" dstport: "{{get(flow, 'flow.dstport_range', '2001') }}" count: "{{get(flow, 'flow.count', '1') }}"