Various improvements
- Refer to fabric-v1model.p4 in quickstart and mention the future plan
- Remove reference to private docker registry from deployment guide
- Update port ID in both netcfg and chassis config
- Remove private links from ignore list
- Update link to QoS config generator script
- Add link to SD-Fabric helm chart in PFCP configuration section
- Fix GitHub link anchor issue
Change-Id: I5272cb7363176d741a03145242a40db502d2fb24
diff --git a/advanced/qos.rst b/advanced/qos.rst
index d51b0ae..713acf2 100644
--- a/advanced/qos.rst
+++ b/advanced/qos.rst
@@ -115,7 +115,7 @@
<https://github.com/stratum/stratum/blob/main/stratum/hal/bin/barefoot/README.run.md>`_
in the Stratum repository.
-We provide a convenient `script <https://github.com/stratum/fabric-tna/blob/main/util/gen-stratum-qos-config.py>`_
+We provide a convenient `script <https://github.com/stratum/fabric-tna/blob/main/util/gen-qos-config.py>`_
to generate the configuration starting from a higher-level description provided via a YAML file.
This file allows to configure the parameters for the traffic classes listed in the above section.
diff --git a/advanced/upf.rst b/advanced/upf.rst
index a7ddb2b..48ab38c 100644
--- a/advanced/upf.rst
+++ b/advanced/upf.rst
@@ -234,7 +234,7 @@
PFCP Agent can be deployed as part of the SD-Fabric Helm Chart.
-See the Helm Chart documentation for more information on the configuration
+See the `SD-Fabric Helm Chart README <https://gerrit.opencord.org/plugins/gitiles/sdfabric-helm-charts/+/HEAD/sdfabric/README.md>`_ for more information on the configuration
parameters. Once deployed, use ``kubectl get services -n sdfabric`` to find out
the exact UDP endpoint used to listen for PFCP connection requests.
diff --git a/conf.py b/conf.py
index af16176..7fa7edf 100644
--- a/conf.py
+++ b/conf.py
@@ -246,10 +246,6 @@
# -- Options for linkcheck ---------------------------------------------------
# The link checker strips off .md from links and then complains
linkcheck_ignore = [
- r'https://github.com/stratum/fabric-tna/*', # Fabric-TNA private repo
- r'https://github.com/opennetworkinglab/sdfabric-utils', # Private repo
- r'https://github.com/omec-project/up4/*', # UP4 private repo
- r'https://github.com/omec-project/dbuf/*', # DBUF private repo
r'https://jenkins.aetherproject.org/view/SD-Fabric%20Nightly%20Tests/' # Jenkins View, requires login
]
diff --git a/configuration/chassis.rst b/configuration/chassis.rst
index 2a8a317..11b433a 100644
--- a/configuration/chassis.rst
+++ b/configuration/chassis.rst
@@ -77,6 +77,15 @@
A ``singleton port`` uniquely identifies a switch port and it contains the following fields:
* ``id``: An arbitrary ID, unique in the scope of a chassis. **Required**
+
+ .. note::
+ We recommend using the following naming convention for both ONOS network config and Stratum chassis config:
+ - For unchannelized ports, use the **front panel port** number directly.
+ - For channelized ports, use the **front panel port number * 100 + channel id**.
+ For example, we can use port id ``2903`` for port ``29/3`` (port 29 channel 3).
+ - Note that we use **zero-based** channel number for singleton port ``id``
+ but the ``channel`` field described below uses **one-based** channel number.
+
* ``name``: An optional user friendly name for the port (e.g., ``10/1`` to identify channel
1 of front-panel port 10). **Required**
diff --git a/configuration/network.rst b/configuration/network.rst
index 1ab1766..6f6d0d0 100644
--- a/configuration/network.rst
+++ b/configuration/network.rst
@@ -115,19 +115,9 @@
Before describing the ONOS netcfg, it is worth nothing how we refer to ports for
Tofino-based devices. Netcfg uses the format ``device:<name>/<port-number>``.
-``<port-number>`` is a special value that is usually different than the number
-shown in the switch front panel. It is the same number used for P4 table
-programming and depends on the specific Tofino ASIC SKU (e.g., dual-pipe vs.
-quad-pipe) and switch vendor/platform. In Stratum this is often referred to as
-the *SDK port ID*, as this is the number used for all Tofino SDK calls. In Intel
-documentation this is referred to as the ``DP_ID``. We plan to remove this
-dependency on such a low level detail in future releases, but for now, to find
-out the mapping between front-panel ports and ``DP_ID`` you have the following
-options:
-
-- Ask your switch vendor
-- Use the command `pm.show` on the BF shell of a running Stratum instance
- (see :ref:`troubleshooting_guide`)
+``<port-number>`` is a unique, arbitrary value that should be consistent
+with the ``id`` field defined in Stratum chassis config.
+See :ref:`singleton_port` for more details.
Bridging and Unicast Routing
----------------------------
diff --git a/deployment.rst b/deployment.rst
index 6d4b6a0..c55d3aa 100644
--- a/deployment.rst
+++ b/deployment.rst
@@ -21,20 +21,15 @@
Kubernetes ``label`` and ``taint`` are used to configure switches as special Kubernetes worker nodes.
This is to make sure we deploy Stratum (and only Stratum) on switches.
-3. **Prepare access credential for SD-Fabric images**
-
- SD-Fabric images are hosted on an ONF member-only Docker registry.
- You need to obtain access token and supply that as part of the Helm value in Step 6.
-
-4. **Prepare ONOS network configuration**
+3. **Prepare ONOS network configuration**
Network configuration defines properties such as switch pipeconf, subnet and VLAN.
-5. **Prepare Stratum chassis configuration for each switch**
+4. **Prepare Stratum chassis configuration for each switch**
Chassis config defines switch properties such as port speed and breakout.
-6. **Install SD-Fabric** using Helm
+5. **Install SD-Fabric** using Helm
Finally, we are going to install SD-Fabric with the information we prepared in Step 1 to 5.
@@ -114,35 +109,17 @@
leaf1 Ready worker 27d v1.18.8
leaf2 Ready worker 27d v1.18.8
-
-Step 3: Prepare access credential for SD-Fabric images
-------------------------------------------------------
-
-Container images can be download from ONF self-hosted container registry but you have to gain the access token first.
-
-1. Login to `Aether Harbor Registry <https://registry.aetherproject.org/harbor/sign-in?redirect_url=%2Fharbor%2Fprojects>`_ using your ONF Crowd credential,
-2. Select ``User Profile`` drop-down menu in the upper-right corner
-3. Generate the CLI secret and it's the secret token you have to access the container registry via CLI tool.
-4. Login to the container registry with your username and access token
- by ``docker login command`` to ensure you can access it.
-
-.. code-block::
-
- ╰─$ docker login registry.aetherproject.org --username hwchiu
- Password:
- Login Succeeded
-
-Step 4: Prepare ONOS network configuration
+Step 3: Prepare ONOS network configuration
------------------------------------------
See :ref:`onos_network_config` for instructions
-Step 5: Prepare Stratum chassis configuration
+Step 4: Prepare Stratum chassis configuration
---------------------------------------------
See See :ref:`stratum_chassis_config` for instructions
.. _install_sd_fabric:
-Step 6: Install SD-Fabric with Helm
+Step 5: Install SD-Fabric with Helm
-----------------------------------
To install SD-Fabric into your Kubernetes cluster, follow instructions
diff --git a/dict.txt b/dict.txt
index 684e44c..3e7bd66 100644
--- a/dict.txt
+++ b/dict.txt
@@ -128,6 +128,7 @@
tna
tolerations
topologies
+unchannelized
unconfigured
unicast
untagged
diff --git a/quickstart.rst b/quickstart.rst
index eb66267..43917d9 100644
--- a/quickstart.rst
+++ b/quickstart.rst
@@ -5,6 +5,8 @@
===========
.. note::
- We are recently migrating BMV2 version of ``fabric.p4`` to ``fabric-tna`` repository.
- We will be able to build a software emulated environment for SD-Fabric once that is done.
+ We have recently migrated the BMV2 version of ``fabric.p4`` to ``fabric-tna`` repository (and renamed it to ``fabric-v1model.p4``).
+ We plan to build a software-emulated, Docker-based environment using ``fabric-v1model.p4``
+ such that people can easily try out SD-Fabric without hardware equipments.
+ We also plan to use the same environment for SD-Fabric smoke test in the future.
Stay tuned.
diff --git a/testing/pipeline.rst b/testing/pipeline.rst
index 506b3c0..ca8cb87 100644
--- a/testing/pipeline.rst
+++ b/testing/pipeline.rst
@@ -24,23 +24,23 @@
Test plans
----------
-See `test plans <https://github.com/stratum/fabric-tna/tree/main/ptf#the-unary-test-plan>`_ section in the fabric-TNA repository
+See `test plans <https://github.com/stratum/fabric-tna/tree/main/ptf#user-content-the-unary-test-plan>`_ section in the fabric-TNA repository
Run tests
---------
-See `step to run tests <https://github.com/stratum/fabric-tna/tree/main/ptf#steps-to-run-tests-on-tofino-model-with-stratum>`_
+See `step to run tests <https://github.com/stratum/fabric-tna/tree/main/ptf#user-content-steps-to-run-tests-on-tofino-model-with-stratum>`_
section in the Fabric-TNA repository.
Test result
-----------
-See `test result <https://github.com/stratum/fabric-tna/tree/main/ptf#test-result>`_
+See `test result <https://github.com/stratum/fabric-tna/tree/main/ptf#user-content-test-result>`_
section in the Fabric-TNA repository.
Contribute new test cases
-------------------------
-See `contribute new test cases <https://github.com/stratum/fabric-tna/tree/main/ptf#contribute-new-test-cases>`_
+See `contribute new test cases <https://github.com/stratum/fabric-tna/tree/main/ptf#user-content-contribute-new-test-cases>`_
section in the Fabric-TNA repository.