The semaphore timeout period has expired is a network related error that occurs when the connection between the server and the client takes more time than expected. Please consider increasing the value of the connection timeout on the connection string.
Do you use a VPN to get connected to your organization? Maybe the issue happens only when you are connected or disconnected from the corporate VPN.
Please compare the network adapter settings in your computer with network adapters of other computers in your organization. A driver update may have changed settings.
The issue could also be related to a corporate firewall that may be blocking the traffic. Please try to connect from another network entirely. Make sure port TCP1433 is not blocked. If you are using Windows Firewall make sure you configure it to allow SQL Server access as explained here.
If you are using SSMS to run the purge activity, make a click on the "Options" button an specify a default database other than the master database. Maybe the login does not have permissions to access the master database. Again, please consider increasing the value of the connection timeout on the connection string.
Other possible cause is network latency in your network.
If you are deleting the rows from an application, please consider adding a retry logic as explained here. If that application uses Entity Framework you can consider make use of connection resiliency.