DAVID Cameron has said he will have one last go at negotiating a better deal for Britain in Europe.

The Prime Minister's declaration came amid suggestions he was considering a demand that the country be given an emergency brake on immigration from the EU.

He also visited the ­Rochester by-election in Kent where Conservatives are fighting to keep the seat from the advance of Ukip, whose candidate, Mark Reckless, defected from them just weeks ago.

At a public meeting, the PM said: "We need further action to make sure we have more effective control of migration. We should have one last go at negotiating a better deal.

"We need to be clear that the immigration system hasn't been working properly. Greater control is required but fairness should be at the heart of it. People recognise Britain is an open, tolerant country, but immigration in recent years has been too high," he added.

It is clear Mr Cameron has moved ground on EU immigration. At first, he suggested transitional restrictions should apply to new countries, then limiting benefits to new migrant workers but now he appears to want restrictions to apply to existing member states.

Options are thought to be the brake mechanism, an Australian-style points system or a return to work permit quotas. Downing Street said no final decision had been taken. Speculation is mounting he will announce a "game-changer" before the Rochester by-election on November 20.

"One last go"implies that if the PM does not get what he wants, he will campaign for Britain's exit in the in/out referendum planned for 2017.