Kevin Gameiro and Antoine Griezmann scored the goals as Atletico later locked down top spot in Group D with a 2-0 victory over PSV Eindhoven.

Last season's runners-up made it five wins from five and are now guaranteed to progress as winners before taking on Bayern in the final round of matches.

Gameiro broke the deadlock in the 55th minute with a precise low drive and Griezmann netted for the third time in the competition 11 minutes later to seal the points.

Rostov had earlier gone toe to toe with Bayern Munich and emerged with a shock 3-2 victory thanks to Christian Noboa's decisive free-kick.

While the Germans had already sealed their progress to the knockout stage, this defeat allowed Atletico to win the group and Bayern will lament an off-night in sub-zero conditions in Russia.

Goals from Douglas Costa and Serdar Azmoun left it level at half-time before two goals in as many minutes arrived just after the restart, Dmitry Poloz's penalty cancelled out by Juan Bernat's finish.

That left the points up for grabs and Noboa, clad in a beanie-style hat to avert the chill, claimed them when he found the bottom corner from 20 yards.

Elsewhere, Besiktas produced a stunning comeback to keep their hopes of progressing alive with a 3-3 home draw against Benfica in Group B.

The Portuguese visitors seemed destined to secure a place in the last 16 of the competition when Goncalo Guedes, Nelson Semedo and Ljubomir Fejsa gave them a handsome three-goal lead inside 31 minutes.

But the Turkish champions produced an amazing fightback as Cenk Tosun and Ricardo Quaresma, from the penalty spot, scored before Vincent Aboubakar levelled two minutes from time.

Napoli later failed to take advantage and open up a lead at the top the pool as Dynamo Kiev held them to a goalless draw at the Stadio San Paolo.

Manchester City secured their place in the last 16 of the Champions League as they came from behind to claim a 1-1 draw at Borussia Monchengladbach.

City failed to replicate the intensity of their victory over Barcelona earlier this month, and both sides had a man sent off - Lars Stindl for the Germans and Fernandinho for City - in a disjointed game, but David Silva's equaliser ensured their progress from Group C.

Celtic, however, were knocked out of Europe altogether as Lionel Messi gave Barcelona a 2-0 win at Parkhead.

The Argentinian, who scored a hat-trick in the 7-0 home win over the Hoops in the opening fixture, struck from close range in the first half and doubled his tally from the spot soon after the break.

Arsenal missed the opportunity to assure themselves of qualifying for the knockout stages as group winners after being held to an entertaining draw at home to Paris St Germain.

Both sides were already assured of qualification to the latter rounds but victory at the Emirates Stadium would have been enough for the Gunners to top Group A and theoretically draw a more comfortable tie in the round of 16.

Arsenal again fought back from behind as an Olivier Giroud penalty and a Marco Verratti own goal cancelled out Edinson Cavani's opener but a late Lucas Moura header, steered past David Ospina by Alex Iwobi as he attempted to head clear, handed PSG a 2-2 draw.

Meanwhile, Ludogorets and Basle's battle to get out of the basement and into the Europa League will go to the sixth matchday after the teams could not be separated in Bulgaria.

The Swiss champions remain joint bottom with Ludogorets in Arsenal's group having only managed to take a single point - against the same opposition, in September - in this edition of the tournament.