I don't really believe there is a very clear definition of what exactly they mean. They could be specifically referring to a function of something that is part of iptables, or they could just be using the word flush as a somewhat generic term to mean something like restart/reboot.
I think they may man something like:
- Removing all firewall rules, and then adding them back.
- Sometimes this may be necessary if you have a process that dynamically adds/changes rules.
- If you use DNS names in firewall rules, this may be necessary after the DNS has been changed.
- (On Linux based systems the DNS name is resolved when the rule is added to the kernel tables, not each time a packet arrives.)
- Remove all firewall state data. Firewalls these days must track the state of every connection passing through it. Perhaps they are simply clearing out all the state information.
- Only, clearing out any rules automatically created by a Intrusion Prevention System.
- If the system was using something like fail2ban or something else login failures can result in a firewall rule being added to explicitly block connections for the IP address you are trying to connect from.
- Restart any Application Level Proxies/Gateways. To clear out any cache session state or resolve bugs in the application.
You could simply ask them what exactly they mean by flush. They should be able to provide a good answer about exactly what they mean. If they can't provide a reason why it should fix the issue you are having, or at least a plausible theory, then you may want to consider getting a second opinion.