Skip to content

khaledsherkawi/P4RCProbe

 
 

Repository files navigation

#P4RCProbe ![P4RCProbe]

We present the platform-independent and flexible SDN Controller Analysis Tool P4RCProbe, an extension of OFCProce, on this website. It features a scalable and modular architecture that allows a granular and deep analysis of the controllers behaviors and characteristics. OpenFlow and P4Runtime controllers can be pushed to their limit and the bottlenecks can be investigated. The tool allows the emulation of virtual switches that each provide sophisticated statistics about the controller behavior.

Table of Contents

Building OFCProbe

  • Download and install Maven
  • Make sure that your Maven setup allows new repositories
  • Execute mvn package to download dependencies and compile OFCProbe.
  • The result can be found in target/p4rcprobe-*.one-jar.jar.
  • Command: java -jar target/p4rcprobe-*.one-jar.jar demo.ini

Tutorial

Requirements:

  • Java 7
  • OpenFlow or P4Runtime (Only ONOS) Controller
  • Preferably a Linux System (Shell Scripts + Screen Usage in Scripts provided)
  • Passwordless SSH-Connection between OF Controller Host and P4RCProbe Host for User openflow
  • Optional: SNMP Server on Controller Host (for CPU and RAM Utilization of OF Controller Host)

Preperations:

see PREPERATIONS

Simulation Sequence

see BEST_EFFORT

Topology Testing

see TOPOLOGY_EMU

Random IAT Values after Distribution

Example for NormalDistribution, mean = 10, stdev=5:

  • trafficGenConfig.iatType = 1
  • trafficGenConfig.iatDistribution = Normal
  • trafficGenConfig.iatDistributionParamter1 = 10
  • trafficGenConfig.iatDistributionParamter2 = 5

Individual Settings for Switches and PCAP File Playback

  • Set config.checkForIndividualSwitchSettings = true in config.ini on OFCProbeHost
  • Check ofSwitch.ini and change it
  • Allows to change IAT, fillThreshold, start- and stopDelay, PCAP file and Distribution Settings
  • If pcapFile Options is set, this specific ofSwitch will only send OF_PACKET_INs with Payloads sequentially taken from that PCAP File (File will be looped)

Statistics Content

see STATISTICS_CONTENT

Packages

No packages published

Languages

  • Java 98.9%
  • Shell 1.1%