A British Royal Navy warship sailed close to islands claimed by China in the South China Sea as it headed toward Vietnam, asserting "freedom of navigation" rights and challenging Beijing's "excessive claims" in the region, two sources said.

The HMS Albion, a 22,000 ton amphibious warship carrying a contingent of Royal Marines, passed by the Paracel Islands in recent days, said the sources.

The Albion was on its way to Hanoi, where it docked on Monday following a deployment in and around Japan.