The conditions under which a switch will discard outbound packets on particular ports are fairly well established in many basic training materials, including those for CCNA. However, input discards are typically less well-documented. Some reasons I've found include:
- Mismatched VLANs
- Frame did not need to be switched because the MAC was already on that port, or because it is the only port in the VLAN
- The ifInDiscard SNMP MIBs seem to indicate that buffer space can also be a reason
Are there any other common reasons? How would one decide between these possibilities?