Champions League round-up: Dortmund beat Real Madrid
Borussia Dortmund top Champions League Group D after an impressive 2-1 victory over Spanish champions Real Madrid.
Robert Lewandowski's opening goal for the German side was quickly cancelled out by Cristiano Ronaldo but Marcel Schmelzer gave Dortmund the win.
Porto and Malaga extended their 100% win record in this season's competition to top their respective groups.
Porto beat Dynamo Kiev 3-2 in Group A while Malaga secured a 1-0 home win over AC Milan in Group C.
It was an another impressive victory for Malaga, who missed a 45th-minute penalty before beating the seven-time European champions.
Joaquin Sanchez was the guilty man, hammering his spot-kick against the crossbar after Kevin Constant had brought down Jesus Gamez.
But Sanchez made amends midway through the second half when he fired Manuel Iturra's lob pass past goalkeeper Marco Amelia from a tight angle.
The Italian side remain second in Group C, after Zenit St Petersburg beat Anderlecht 1-0, Alexander Kerzhakov scoring from the spot following Milan Jovanovic's foul on Alexander Anyukov.
Porto led three times against Dynamo Kiev at the Estadio do Dragao, with Jackson Martinez's strike 12 minutes from time proving decisive.
Before that, Silvestre Varela had pounced on Lucho Gonzalez's cut-back to give the 2004 champions the lead, which was cancelled out by Oleg Gusev's close-range header.
Porto, intent on maintaining their best European start since the 1999-2000 season, regained the initiative when Colombian Martinez collected James Rodriguez's through-ball and rounded Yevgen Khacheridy before shooting past visiting keeper Alexander Shovkovskiy.
Brown Ideye put Dynamo back level with a shot that deflected in off home player Helton but Porto would not be denied as Martinez grabbed his second of the game to claim the points.
Paris St Germain are second in Group A, three points behind Porto, after goals from Zlatan Ibrahimovic - his 12th of the season for club and country - and Jeremy Menez gave them a 2-0 win at Dinamo Zagreb.
In Dortmund, Jurgen Klopp's side ensured Real Madrid's shocking record on German soil continued.
The Spanish side have suffered 17 defeats in 24 games in the country, with their sole win coming 12 years ago.
They looked to have given themselves a chance of claiming something from the game when Ronaldo lifted the ball over keeper Roman Weidenfeller and into the net to equalise barely two minutes after Lewandowski had fired the home side ahead.
But Borussia were the more positive side and were rewarded when Schmelzer fired home from the edge of the area on 64 minutes.
"It feels overwhelming. It was a sensational evening, and you can only imagine something like this in your wildest dreams," said Dortmund coach Jurgen Klopp.
Madrid boss Jose Mourinho said: "It was a strange match. Neither team was better, but it was an incredibly difficult game.
"They were very organised and defended very well. Dortmund deserved the victory, but we had our chances to win the game."
Group B is much tighter now following and Olympiakos's last-gasp victory at Montpellier.
Kostas Mitroglou's injury-time strike gave the Greeks their first points in this season's competition after Vasilis Torosidis had equalised Gaetan Charbonnier's opener for the home side.
Olympiakos are now three points behind second-placed Arsenal, who trail leaders Schalke by a point. Montpellier are bottom with one point.