Multitable Resources


Description

From PicOS version 2.7.1, some new modifications have been made to the multitable feature with the addition of the "resource" feature. Different platforms have different resources.

(All platforms which support l2-l3-buffer-mode are as follows:  as5712_54x, as6701_32x, as6712_32x, dcs7032q28, es4654bf, niagara2632xl, niagara2948_6xl, pronto5101, pronto5401, as4610_54p, as4610_54t, as4610_30p, as4610_30t)

Platforms

Buffer-mode Resources

 

as5712_54x

 

"0"        "l2-size 294912, host-route 12000, route 12000";

"1"        “l2-size 229376, host-route 44800, route 12000";

"2"        "l2-size 163840, host-route 70400, route 12000";

"3"        "l2-size 98304,  host-route 96000, route 12000 ";

"4"        "l2-size 32768,  host-route 12000, route 115200";

"5"        "l2-size 32768,  host-route 12000, route 12000";

         

as6701_32x

 

"0"       "l2-size 294912, host-route 12000, route 12000";

"1"       "l2-size 229376, host-route 44800, route 12000";

"2"       "l2-size 163840, host-route 70400, route 12000";

"3"       "l2-size 98304,  host-route 96000, route 12000 ";

"4"       "l2-size 32768,  host-route 12000, route 115200";

"5"       "l2-size 32768,  host-route 12000, route 12000";

 

as6712_32x

"0"       "l2-size 294912, host-route 12000, route 12000";

"1"       "l2-size 229376, host-route 44800, route 12000";

"2"       "l2-size 163840, host-route 70400, route 12000";

"3"       "l2-size 98304,  host-route 96000, route 12000 ";

"4"       "l2-size 32768,  host-route 12000, route 115200";

"5"       "l2-size 32768,  host-route 12000, route 12000";

dcs7032q28

"0"       "l2-size 294912, host-route 12000, route 12000";

"1"       "l2-size 229376, host-route 44800, route 12000";

"2"       "l2-size 163840, host-route 70400, route 12000";

"3"       "l2-size 98304,  host-route 96000, route 12000";

"4"       "l2-size 32768,  host-route 12000, route 115200";

"5"       "l2-size 32768,  host-route 12000, route 12000";

 

es4654bf

 

"0"       "l2-size 131072, host-route 13100, route 4800";

"1"       "l2-size 98304,  host-route 39300, route 4800";

"2"       "l2-size 98304,  host-route 13100, route 4800";

"3"       "l2-size 32768,  host-route 91700, route 4800";

"4"       "l2-size 32768,  host-route 13100, route 4800";

"5"       "l2-size 32768,  host-route 13100, route 4800";

 

niagara2632xl

"0"       "l2-size 294912, host-route 12000, route 12000";

"1"       "l2-size 229376, host-route 44800, route 12000";

"2"       "l2-size 163840, host-route 70400, route 12000";

"3"       "l2-size 98304,  host-route 96000, route 12000";

"4"       "l2-size 32768,  host-route 12000, route 115200";

"5"       "l2-size 32768,  host-route 12000, route 12000";

 

niagara2948_6xl

"0"      "l2-size 294912, host-route 12000, route 12000";

"1"      "l2-size 229376, host-route 44800, route 12000";

"2"      "l2-size 163840, host-route 70400, route 12000";

"3"      "l2-size 98304,  host-route 96000, route 12000 ";

"4"      "l2-size 32768,  host-route 12000, route 115200";

"5"      "l2-size 32768,  host-route 12000, route 12000";

 

pronto5101

"0"      "l2-size 294912, host-route 12000, route 12000";

"1"      "l2-size 229376, host-route 44800, route 12000";

"2"      "l2-size 163840, host-route 70400, route 12000";

"3"      "l2-size 98304,  host-route 96000, route 12000 ";

"4"      "l2-size 32768,  host-route 12000, route 115200";

"5"      "l2-size 32768,  host-route 12000, route 12000";

 

pronto5401

"0"      "l2-size 294912, host-route 12000, route 12000";

"1"      "l2-size 229376, host-route 44800, route 12000";

"2"      "l2-size 163840, host-route 70400, route 12000";

"3"      "l2-size 98304,  host-route 96000, route 12000";

"4"      "l2-size 32768,  host-route 12000, route 115200";

"5"      "l2-size 32768,  host-route 12000, route 12000";

 

as4610_54p,

as4610_54t,

as4610_30p,

as4610_30t

"0"      "l2-size 65536, host-route 8192,  route 6000";

"1" :     "l2-size 49152, host-route 16384, route 6000";

"2"      "l2-size 49152, host-route 24576, route 6000";

"3"      "l2-size 49152, host-route 8192,  route 6000";

"4"      "l2-size 32768, host-route 24576, route 6000";

"5"      "l2-size 32768, host-route 16384, route 6000";

Others (not support buffer mode)

 "l2-size 32768, host-route 12000, route 12000";

 First, user should enable the L2 and L3 mode. Then, use the command "ovs-appctl pica/show tables " to check the L2 and L3 max flows in the switch.

Example

Step 1:  Add bridge and port

 

ovs-vsctl add-br br0 -- set bridge br0 datapath_type=pica8
ovs-vsctl add-port br0 te-1/1/77 vlan_mode=trunk tag=1 -- set Interface te-1/1/77 type=pica8
ovs-vsctl add-port br0 te-1/1/78 vlan_mode=trunk tag=1 -- set Interface te-1/1/78 type=pica8

 

Step 2:  Enable L2 and L3 mode

ovs-vsctl set-l2-mode true
ovs-vsctl set-l3-mode true

 

Step 3:  Check the default resources

admin@PicOS-OVS$ovs-appctl pica/show tables     
Pica Tables Statistics:
    Pica Tables              Max Limitation          Current Used
    -----------------------------------------------------------------------
    ICAP Table                 2044                    10       
    ECAP Table                 (null)                  (null)   
    VCAP Table                 512                     0        
    L2 System Table            512                     0        
    L2 FDB Table               32256                   0        
    L3 Host Table              12000                   IPv4(0),IPv6(0*2)
    L3 Route Table             12000                   IPv4(0),IPv6(0*2)
UDF Table                  (null)                  (null)   

 

Step 4:  Add L2 flows

 

ssun@dev-42:~/ryu/ryu/app$ ryu-manager simple_switch_13_ssun_buffer_mode5.py
 for i in range(4797, 5195):
             for k in ('0','1','2','3','4','5','6','7','8','9'):
                 for z in ('0','1','2','3','4','5','6','7','8','9'):
                     dl_dst="22:22:22:22:"+k+z+":22"
                     match=self.set_match(datapath, dl_dst=dl_dst, vlan_vid=i)
                     output_port=78
                     actions=self.set_action(datapath, out_port=output_port)
                     self.add_flow(datapath, 251, 32768, match, actions)

Step 5:  Check  max  L2 flow members

admin@PicOS-OVS$ovs-ofctl dump-flows br0|grep -c "table=251"    
32256
admin@PicOS-OVS$ovs-appctl pica/show tables                     
Pica Tables Statistics:
    Pica Tables              Max Limitation          Current Used
    -----------------------------------------------------------------------
    ICAP Table                 2044                    8        
    ECAP Table                 (null)                  (null)   
    VCAP Table                 512                     0        
    L2 System Table            512                     0        
    L2 FDB Table               32256                   32256     
    L3 Host Table              12000                   IPv4(0),IPv6(0*2)
    L3 Route Table             12000                   IPv4(0),IPv6(0*2)
UDF Table                  (null)                  (null)   

Step 6:  Delete L2 flows and add ipv4 net route (ipv4 l3 host ,ipv6 host ,ipv6 route)

admin@PicOS-OVS$ovs-ofctl del-flows br0
ssun@dev-42:~/ryu/ryu/app$ ryu-manager simple_switch_13_ssun_buffer_mode5.py
for j in range(0,51):                    
            for i in range(0,255):
                output_port=78
                tmp1='%d' %i
                tmp2 = '%d' %j                
                ipv4_dst='192.168.' + tmp2 +' .' +tmp1
                dl_dst="22:22:22:22:22:22"
                vlan_vid=20
                match=self.set_match(datapath, dl_type=0x0800, ipv4_dst=ipv4_dst, ipv4_dst_mask="255.255.255.255")
                actions=self.set_action(datapath, dl_dst="44:44:44:88:88:88", vlan_vid=vlan_vid, out_port=output_port)
                self.add_flow(datapath, 252, 32768, match, actions)

Step 7:  Check max ipv4 l3 flow members

 

admin@PicOS-OVS$ovs-ofctl dump-flows br0|grep -c "table=252"
12000
admin@PicOS-OVS$ovs-appctl pica/show tables                      
Pica Tables Statistics:
    Pica Tables              Max Limitation          Current Used
    -----------------------------------------------------------------------
    ICAP Table                 2044                    10       
    ECAP Table                 (null)                  (null)   
    VCAP Table                 512                     0        
    L2 System Table            512                     1        
    L2 FDB Table               32256                   0        
    L3 Host Table              12000                   IPv4(0),IPv6(0*2)
    L3 Route Table             12000                   IPv4(12000),IPv6(0*2)
UDF Table                  (null)                  (null)   


 

 

 

 

 

 

Copyright © 2024 Pica8 Inc. All Rights Reserved.