Valtteri Bottas delivers a controlled display to give Mercedes its fifth win of the 2017 season as team-mate Lewis Hamilton recovers to finish P4.

Valtteri Bottas clinched his second Formula 1 victory in style on Sunday at the Austrian Grand Prix by leading all but one lap on his way to beating championship leader Sebastian Vettel.

Starting from pole, Bottas went untroubled through the opening stint of the race before Ferrari used the undercut to bring Vettel back into contention in the closing stages.

Bottas was able to manage his tyres and his pace well to keep Vettel back despite a late charge, crossing the line 0.6 seconds clear.

The result marked Bottas' second F1 win following his maiden success in Russia earlier this year, and ensured that Mercedes retained its lead in the constructors' championship.

Hamilton was able to make an alternate strategy work well to fight his way from P8 on the grid after a penalty to finish fourth, just behind Red Bull's Daniel Ricciardo.

The foundation for Bottas' victory charge came at the start when he made a lightning getaway, pulling away so quickly that race control investigated the Finn for a possible jump start. The stewards soon found that his reaction had not been premature, coming 0.2 seconds after lights out, allowing him to peel away at the front without any concern of a sanction.

Bottas pulled his lead over Vettel out to eight seconds as Hamilton began to pick his way up the order. The Briton gained two places off the start as Max Verstappen got caught up in a clash with Daniil Kvyat and Fernando Alonso, forcing the Red Bull driver to retire.

Hamilton was able to rise to fifth and begin to hound Kimi Raikkonen for position, only for Mercedes to bring him in earlier than planned at the end of Lap 32, believing ultra-soft tyres would be fine to run to the end of the race.

The stop triggered the leaders into coming in for fear of the undercut, with Vettel and Daniel Ricciardo following suit in the next two laps. Vettel had trailed Bottas by eight seconds prior to his stop, and was able to put the hammer down while Mercedes kept the Finn out, whittling his advantage away.

By the time Bottas pitted seven laps later, Vettel had done enough to reduce the gap to just three seconds once the Mercedes driver had snaked out of the pit lane.

Bottas soon began to lose time when he suffered a blister on his left-rear tyre early in the stint, allowing Vettel to close. The time loss became more pronounced as the stint wore on, with the Ferrari driver getting to within a second of the leader heading into the final five laps.

Traffic ensured the leading duo stuck together, but Vettel was unable to get close enough in the final stages, allowing Bottas to cross the line 0.6 seconds clear and score his second F1 victory.

Despite being forced to settle for second, Vettel was nevertheless able to extend his championship lead as Hamilton could only finish fourth, losing out in a late battle with Ricciardo, who gave Red Bull a home podium in P3.

Kimi Raikkonen's strategy left him to settle for fifth after a slow final stint, while Romain Grosjean was P6 for Haas, marking its best result of the season so far.

Jolyon Palmer narrowly missed out on his first point of the season, crossing the line 11th as Renault team-mate Nico Hulkenberg struggled to P13.

Stoffel Vandoorne led McLaren's charge in 12th following Alonso's early elimination, while Sauber drivers Pascal Wehrlein and Marcus Ericsson ended up P14 and P15 ahead of Daniil Kvyat, who was the last classified finisher in 16th, three laps down for Toro Rosso.