Hard fork is a situation where based on changes made to the rules of block processing, upgraded nodes based on new rules, will presume the older blocks made by the old rules invalid and won’t process them anymore. In this situation, all nodes need to upgrade their software to adjust themselves with the new rules.