diff --git a/tests/TestSuite_cvl_dcf_switch_filter.py b/tests/TestSuite_cvl_dcf_switch_filter.py
index 64f50de4..a65b73a3 100644
--- a/tests/TestSuite_cvl_dcf_switch_filter.py
+++ b/tests/TestSuite_cvl_dcf_switch_filter.py
@@ -2025,79 +2025,6 @@ class CVLDCFSwitchFilterTest(TestCase):
         destroy_dict["expect_results"]["expect_pkts"] = 0
         self.send_and_check_packets(destroy_dict)
 
-    def test_max_rule_number(self):
-        #set up 4 vfs on 1 pf environment
-        self.setup_1pf_vfs_env()
-        #create 32563 rules with the same pattern, but different input set to file
-        src_file = 'dep/testpmd_cmds_32k_switch_rules'
-        flows = open(src_file, mode='w')
-        rule_count = 1
-        for i in range(0,255):
-            for j in range(0,255):
-                if not rule_count > 32563:
-                    flows.write('flow create 0 ingress pattern eth / ipv4 src is 192.168.%d.%d / end actions vf id 1 / end \n' % (i, j))
-                    matched_scapy_str = 'Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.168.%d.%d")/TCP(sport=25,dport=23)/Raw("X"*480)' % (i, j)
-                    tv_max_rule_number["matched"]["scapy_str"].append(matched_scapy_str)
-                    rule_count += 1
-                else:
-                    break
-            if rule_count > 32563:
-                break
-        flows.close()
-        self.dut_file_dir = '/tmp'
-        self.dut.session.copy_file_to(src_file, self.dut_file_dir)
-        #launch testpmd with 32563 rules
-        vf0_pci = self.sriov_vfs_port_0[0].pci
-        vf1_pci = self.sriov_vfs_port_0[1].pci
-        all_eal_param = self.dut.create_eal_parameters(cores="1S/4C/1T", ports=[vf0_pci, vf1_pci], port_options={vf0_pci:"cap=dcf"})
-        command = self.path + all_eal_param +  " -- -i --cmdline-file=/tmp/testpmd_cmds_32k_switch_rules"
-        out = self.dut.send_expect(command, "testpmd> ", 360)
-        self.testpmd_status = "running"
-        self.dut.send_expect("set portlist 1", "testpmd> ", 15)
-        self.dut.send_expect("set fwd rxonly", "testpmd> ", 15)
-        #check the rule list with 32563 rules
-        rule_list_num = list(range(0, 32563))
-        rule_list = [str(x) for x in rule_list_num]
-        self.check_switch_filter_rule_list(0, rule_list)
-        #create other rules to make switch filter table full
-        m = i
-        t = j
-        p = re.compile(r"Flow rule #(\d+) created")
-        switch_table_full_flag = False
-        count = 0
-        for i in range(m,255):
-            for j in range(t,255):
-                rule = 'flow create 0 ingress pattern eth / ipv4 src is 192.168.%d.%d / end actions vf id 1 / end \n' % (i, j)
-                matched_packet = 'Ether(dst="68:05:ca:8d:ed:a8")/IP(src="192.168.%d.%d")/TCP(sport=25,dport=23)/Raw("X"*480)' % (i, j)
-                out = self.dut.send_expect(rule, "testpmd> ", timeout=2)  #create a rule
-                m1 = p.search(out)
-                if m1:
-                    rule_list.append(m1.group(1))
-                    tv_max_rule_number["matched"]["scapy_str"].append(matched_packet)
-                    count += 1
-                else:
-                    self.verify("Failed to create flow" in out, "Log not provide a friendly output to indicate that the rule failed to create.")
-                    switch_table_full_flag = True
-                    break
-            if switch_table_full_flag:
-                break
-        tv_max_rule_number["matched"]["expect_results"]["expect_pkts"] += count
-        #check the rule list
-        self.check_switch_filter_rule_list(0, rule_list)
-        #send matched packets and check
-        matched_dic = tv_max_rule_number["matched"]
-        self.send_and_check_packets(matched_dic)
-        #send mismatched packets and check
-        mismatched_dic = tv_max_rule_number["mismatched"]
-        self.send_and_check_packets(mismatched_dic)
-        #destroy rules and send matched packets
-        self.dut.send_expect("flow flush 0", "testpmd> ", 300)
-        self.check_switch_filter_rule_list(0, [])
-        #send matched packets and check
-        destroy_dict = copy.deepcopy(matched_dic)
-        destroy_dict["expect_results"]["expect_pkts"] = 0
-        self.send_and_check_packets(destroy_dict)
-
     def test_dcf_stop_start(self):
         #set up 4 vfs on 1 pf environment
         self.setup_1pf_vfs_env()
