[SDFAB-988] QER rate limiting tests
Change-Id: I4c542a5c9a122c0595b36e5e96d2b093682cfc7c
diff --git a/TestON/tests/USECASE/SegmentRouting/Policing/Policing.params b/TestON/tests/USECASE/SegmentRouting/Policing/Policing.params
new file mode 100644
index 0000000..532e13e
--- /dev/null
+++ b/TestON/tests/USECASE/SegmentRouting/Policing/Policing.params
@@ -0,0 +1,186 @@
+<PARAMS>
+ <testcases>1,2</testcases>
+
+ <GRAPH>
+ <nodeCluster>pairedleaves</nodeCluster>
+ <builds>20</builds>
+ <jobName>QOS</jobName>
+ <branch>master</branch>
+ </GRAPH>
+
+ <persistent_setup>True</persistent_setup>
+
+ <kubernetes>
+ <appName>onos-classic</appName>
+ <namespace>tost</namespace>
+ </kubernetes>
+ <use_stern>True</use_stern>
+
+ <UP4>
+ <s1u_address>10.32.11.126</s1u_address>
+ <slice_id>1</slice_id>
+ <enodebs>
+ <enodeb_1>
+ <host>TRexClient</host>
+ <enb_address>10.32.11.124</enb_address>
+ <interface>pairbond</interface> <!-- useless for this test, we use TRex to generate traffic -->
+ <ues>ue1,ue2</ues>
+ </enodeb_1>
+ </enodebs>
+ <ues>
+ <ue1>
+ <ue_address>10.240.0.1</ue_address>
+ <teid>100</teid>
+ <up_id>10</up_id>
+ <down_id>20</down_id>
+ <tc>3</tc>
+ <five_g>False</five_g>
+ <max_bps>200000000</max_bps>
+ </ue1>
+ <ue2>
+ <ue_address>10.240.0.2</ue_address>
+ <teid>200</teid>
+ <up_id>30</up_id>
+ <down_id>40</down_id>
+ <tc>3</tc>
+ <five_g>False</five_g>
+ <max_bps>200000000</max_bps>
+ </ue2>
+ </ues>
+ <app_filters>
+ <allowPort>
+ <app_id>1</app_id>
+ <ip_prefix>10.32.11.125/32</ip_prefix>
+ <ip_proto>17</ip_proto>
+ <port_range>80..80</port_range>
+ <priority>20</priority>
+ <action>allow</action>
+ <max_bps>100000000</max_bps>
+ </allowPort>
+ <allowAll>
+ <app_id>0</app_id>
+ <action>allow</action>
+ </allowAll>
+ </app_filters>
+ </UP4>
+
+ <TREX>
+ <port_stats>0,2,3</port_stats> <!-- TRex port 0 = PDN, TRex port 2 = eNodeB, TRex port 3 = second eNB -->
+ <flows>
+ <UE1>
+ <name>UE1: Conformant Session</name>
+ <l1_bps>200000000</l1_bps>
+ <trex_port>2</trex_port>
+ <packet>
+ <pktlen>1400</pktlen>
+ <ip_src>10.240.0.1</ip_src>
+ <ip_dst>10.32.11.125</ip_dst>
+ <udp_dport>81</udp_dport>
+ <eth_src>40:A6:B7:22:AB:20</eth_src>
+ <eth_dst>00:00:0A:4C:1C:46</eth_dst>
+ <gtp_teid>100</gtp_teid>
+ <s1u_addr>10.32.11.126</s1u_addr>
+ <enb_addr>10.32.11.124</enb_addr>
+ </packet>
+ <latency_stats>true</latency_stats>
+ <flow_id>20</flow_id>
+ <expected_max_dropped>0</expected_max_dropped>
+ <expected_rx_bps>200000000</expected_rx_bps>
+ </UE1>
+ <UE2>
+ <name>UE2: Non-Conformant Session</name>
+ <l1_bps>300000000</l1_bps>
+ <trex_port>2</trex_port>
+ <packet>
+ <pktlen>1400</pktlen>
+ <ip_src>10.240.0.2</ip_src>
+ <ip_dst>10.32.11.125</ip_dst>
+ <udp_dport>81</udp_dport>
+ <eth_src>40:A6:B7:22:AB:20</eth_src>
+ <eth_dst>00:00:0A:4C:1C:46</eth_dst>
+ <gtp_teid>200</gtp_teid>
+ <s1u_addr>10.32.11.126</s1u_addr>
+ <enb_addr>10.32.11.124</enb_addr>
+ </packet>
+ <latency_stats>true</latency_stats>
+ <flow_id>21</flow_id>
+ <expected_rx_bps>200000000</expected_rx_bps>
+ </UE2>
+ <APP1>
+ <name>APP1: Conformant Application</name>
+ <l1_bps>100000000</l1_bps>
+ <trex_port>2</trex_port>
+ <packet>
+ <pktlen>1400</pktlen>
+ <ip_src>10.240.0.1</ip_src>
+ <ip_dst>10.32.11.125</ip_dst>
+ <udp_dport>80</udp_dport>
+ <eth_src>40:A6:B7:22:AB:20</eth_src>
+ <eth_dst>00:00:0A:4C:1C:46</eth_dst>
+ <gtp_teid>100</gtp_teid>
+ <s1u_addr>10.32.11.126</s1u_addr>
+ <enb_addr>10.32.11.124</enb_addr>
+ </packet>
+ <latency_stats>true</latency_stats>
+ <flow_id>30</flow_id>
+ <expected_max_dropped>0</expected_max_dropped>
+ <expected_rx_bps>100000000</expected_rx_bps>
+ </APP1>
+ <APP2>
+ <name>APP2: Non-Conformant Application</name>
+ <l1_bps>200000000</l1_bps>
+ <trex_port>2</trex_port>
+ <packet>
+ <pktlen>1400</pktlen>
+ <ip_src>10.240.0.2</ip_src>
+ <ip_dst>10.32.11.125</ip_dst>
+ <udp_dport>80</udp_dport>
+ <eth_src>40:A6:B7:22:AB:20</eth_src>
+ <eth_dst>00:00:0A:4C:1C:46</eth_dst>
+ <gtp_teid>200</gtp_teid>
+ <s1u_addr>10.32.11.126</s1u_addr>
+ <enb_addr>10.32.11.124</enb_addr>
+ </packet>
+ <latency_stats>true</latency_stats>
+ <flow_id>31</flow_id>
+ <expected_rx_bps>100000000</expected_rx_bps>
+ </APP2>
+ </flows>
+ </TREX>
+
+ <TOPO>
+ <switchNum>2</switchNum>
+ <linkNum>2</linkNum>
+ </TOPO>
+
+ <ONOS_Logging>
+ <org.onosproject.segmentrouting>DEBUG</org.onosproject.segmentrouting>
+ <org.omecproject.up4>TRACE</org.omecproject.up4>
+ </ONOS_Logging>
+ <ONOS_Logging_Reset>
+ <org.onosproject.segmentrouting>DEBUG</org.onosproject.segmentrouting>
+ <org.omecproject.up4>INFO</org.omecproject.up4>
+ </ONOS_Logging_Reset>
+
+ <ENV>
+ <cellName>productionCell</cellName>
+ <cellApps>drivers,fpm,lldpprovider,hostprovider,netcfghostprovider,drivers.bmv2,org.opencord.fabric-tofino,pipelines.fabric,org.stratumproject.fabric-tna,drivers.barefoot,segmentrouting,up4</cellApps>
+ </ENV>
+
+ <DEPENDENCY>
+ <useCommonConf>False</useCommonConf>
+ <useCommonTopo>True</useCommonTopo>
+ <useBmv2>True</useBmv2>
+ <bmv2SwitchType>stratum</bmv2SwitchType>
+ <switchPrefix></switchPrefix>
+ <stratumRoot>~/stratum</stratumRoot>
+ <topology>trellis_fabric.py</topology>
+ <lib></lib>
+ </DEPENDENCY>
+
+ <SCALE>
+ <size>3</size>
+ <max>3</max>
+ </SCALE>
+
+</PARAMS>