I. Introduction  
II. Background  
A. Graph Neural Networks  
B. Over-squashing  
III. Handling Over-squashing in GNNs  
V. Graph Transformers and Other Strategies  
VI. Datasets  
VII. Conclusion and Future Direction