You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 27 Next »

Getting started

Select and install a P4 data-plane target platform architecture

sudo add-apt-repository ppa:frederic-loui/p4lang-3rd-party 
sudo apt-get update

sudo add-apt-repository ppa:frederic-loui/p4lang-master-bionic-nightly
sudo apt-get update
sudo add-apt-repository ppa:frederic-loui/p4lang-3rd-party-focal 
sudo add-apt-repository ppa:frederic-loui/p4lang-master-focal-nightly 
sudo apt-get update
echo 'deb https://download.opensuse.org/repositories/home:/frederic-loui:/p4lang:/p4c/Debian_10/  ./" | sudo tee /etc/apt/source.list.d/p4lang.list
sudo apt-get update

TOFINO

Software for TOFINO NPU is subject to a Software License and Confidentiality Agreement (SLACA)

If you are an R&E organization please submit an application via INTEL/BAREFOOT FASTER portal

Install FreeRouter control-plane

sudo add-apt-repository ppa:frederic-loui/freerouter-nightly
sudo apt-get update
sudo apt-get install freerouter-native freerouter
echo 'deb https://download.opensuse.org/repositories/home:/frederic-loui:/freerouter/Debian_10/  ./" | sudo tee /etc/apt/source.list.d/p4lang.list
sudo apt-get update

Install RARE software

BMv2

git clone https://github.com/frederic-loui/RARE.git

TOFINO (on going)

Before anything, you'll have to install BAREFOOT SDE following BAREFOOT instruction

RARE package is planned to be released soon.

(in compliance with INTEL/BAREFOOT announcement that grant the publication of the P4 code)

Build & Run RARE software

BMv2 with P4Runtime (simple_swicth_grpc) 

cd 02-PE-labs/0001-vpn-over-bgp-isis-sr-operation
make

in order stop the whole setup:

cd 02-PE-labs/0001-vpn-over-bgp-isis-sr-operation
make clean

TOFINO with BFRuntime (bf_switchd)

On virtual TOFINO model

Compile P4 bf_router.p4 program

  • with MPLS profile
export RARE=/home/p4 
$SDE/tools/p4_build.sh -I$RARE/p4src/ -DHAVE_MPLS $RARE/p4src/bf_router.p4
  • with SRv6 profile
export RARE=/home/p4 
$SDE/tools/p4_build.sh -I$RARE/p4src/ -DHAVE_SRV6 $RARE/p4src/bf_router.p4

run TOFINO model

cd $SDE 
./run_tofino_model.sh -p bf_router ./run_switchd.sh -p b

run TOFINO bf_switchd

cd $SDE 
./run_switchd.sh -p bf_router

run Freerouter control plane

cd $RARE/02-PE-labs/0001-vpn-over-bgp-isis-sr-operation 
./make

in order to stop FreeRouter

cd $RARE/02-PE-labs/0001-vpn-over-bgp-isis-sr-operation 
./make clean

run bf_forwarder.py interface

cd $RARE/bfrt_python 
./bf_forwarder.py

On hardware WEDGEBF10032X

Compile P4 bf_router.p4 program

  • with MPLS profile
export RARE_PATH=/home/p4 
$SDE/tools/p4_build.sh -I$RARE/p4src/ -DHAVE_MPLS -D_WEDGE100BF32X_ $RARE/p4src/bf_router.p4
  • with SRv6 profile
export RARE=/home/p4 
$SDE/tools/p4_build.sh -I$RARE/p4src/ -DHAVE_SRV6 -D_WEDGE100BF32X_ $RARE/p4src/bf_router.p4

run TOFINO bf_switchd

cd $SDE 
./run_switchd.sh -p bf_router

run Freerouter control plane.   

cd $RARE/100-WEDGE-100BF-32X/0001-vpn-over-bgp-isis-sr-operation 
./make

in order to stop FreeRouter

cd $RARE/100-WEDGE-100BF-32X/0001-vpn-over-bgp-isis-sr-operation 
./make clean

run bf_forwarder.py interface

cd $RARE/bfrt_python 
./bf_forwarder.py
  • No labels