The visitors struck the woodwork three times in the first-half and saw Atletico keeper Daniel Aranzubia save Josue's penalty as goals from Raul Garcia and Diego Costa saw the hosts maintain their unbeaten record in the Champions League this season.

Porto's defeat means that Zenit St Petersburg progress to the last 16 despite the Russians losing 4-1 to Austria Vienna in the night's other game in Group G, whilst Porto drop into the Europa League thanks to their better head-to-head record against the Austrians.

"We have done very well in this first part of the competition," said Atletico boss Diego Simeone.

"Today we were clinical in the first-half, but we suffered a bit too with the chances that Porto had.

"I am very happy with the result because the team continues to be competitive."

With Atletico already assured of first place in the group, Simeone rested a number of first team regulars from the start and it was no surprise that Porto started the brighter.

Jackson Martinez went desperate close to the opener on eight minutes as he connected sweetly with Danilo's cross from the right and the ball rebounded to safety off the crossbar.

Six minutes later it was Atletico who went in front as Garcia's fierce effort from a narrow angle caught Porto keeper Helton napping at his near post.

Silvestre Varela then saw a headed effort clip the bar as Porto responded positively and they had a glorious chance to equalise when Aranzubia upended Martinez inside the area.

However, Josue's powerful spot-kick was placed too close to the keeper who redeemed himself with a smart save.

It wasn't to be Martinez's night as he struck the post once more moments later.

And Atletico eventually took advantage of Porto's high line on the counter-attack as Costa raced onto Oliver Torres' through ball to round Helton and squeeze home his fourth goal in just three Champions League appearances.

David Villa replaced Costa at the break as Simeone looked ahead to Saturday's visit of Valencia in La Liga.

Without their top scorer, Atletico were happy to sit on their lead rather than go in search of a third and as a result the second-half was far less of a spectacle as Porto pressed without having creating any clear openings of note.

However, that was of no concern to Simeone's men who now await to see who they will face in the last 16 when the draw is made in Nyon, Switzerland on December 16.