Italy's coastguard has co-ordinated the rescue of about 3000 migrants in the Mediterranean after receiving distress calls from more than 20 overcrowded vessels drifting in waters off Libya.
One of the biggest single-day rescue operations to date appeared to have been concluded without any reports of casualties.
Two navy ships, the Cigala Fulgosi and the Vega, picked up, respectively, 507 and 432 migrants from two wooden boats in danger of sinking just off Libya, the navy said.
The coastguard said its patrol boats had boarded a total of nearly 1000 people from various unseaworthy fishing boats and inflatables that had left Libya overnight Friday-Saturday.
At least another 1000 rescued migrants and refugees were reported to be headed for Italian ports on other boats as the wave of new arrivals triggered increasingly virulent attacks on centre-left Prime Minister Matteo Renzi's handling of the migration crisis.
"This must a joke. We are using our own forces to do the people smugglers' business for them and ensure we are invaded," Maurizio Gasparri, a senator for Silvio Berlusconi's centre-right Forza Italia party, said.
The populist leader of the anti-immigration Northern League, Matteo Salvini, called on the government to park the migrants on disused Italian oil rigs off Libya.
"Help them, rescue them and take care of them: but don't let them land here," he wrote on his Facebook page.
The rescued migrants included a batch of 311, including a new-born baby, who were on a boat belonging to humanitarian group Doctors without Borders (MSF), which is expected to dock on Monday in Vibo Valentia in Calabria, according to port authorities there.
A further 370 had been picked up by the Italian customs police and were headed for Messina in Sicily, and the Norwegian boat Siem Pilot was also carrying hundreds of people to port.