Stephen Elliott scored twice to kick-start Sunderland's promotion bid at the expense of Colchester United in a 3-1 win at the Stadium of Light.

The Irish striker produced clinical finishes either side of the break to hand the Black Cats their first win in four games.

Manager Roy Keane had demanded his players show greater potency in attack and Elliott duly obliged to take his season's tally to four.

Colchester substitute Chris Iwelumo gave the visitors hope with a 79th-minute strike but David Connolly sealed victory for the Black Cats in the last minute with his first goal for the club.

Sunderland have surrendered plenty of points since Keane's arrival in August and have failed to show the consistency required for a play-off place.

And during a frustrating opening period they were often betrayed by a lack of potency as Colchester proved a tough nut to crack.

The Essex upstarts are enjoying their first season in the second tier and arrived on Wearside just two points off a play-off spot.

However, Sunderland always looked the more threatening and were vibrant from the outset.

Former Manchester United midfielder Liam Miller hit a left-footed shot that drew a smart stop from Colchester goalkeeper Aidan Davidson in the second minute.

Chris Brown then headed wide soon afterwards as the Black Cats sought to make their early dominance pay.

There was precious little respite for the visitors and dangerous crosses from Dean Whitehead and Lewin Nyatanga narrowly failed to find a team-mate in the middle.

Recalled defender Stanislav Varga then headed over from Ross Wallace's cross before Elliott orchestrated a fine move, which almost gave Sunderland their opening goal.

The Irishman set Whitehead free down the right flank and his neat delivery required a vital interception at the back post from Colchester defender Wayne Brown. Elliott then engineered the space to shoot in the 30th minute but he fired straight at Davison.

But the striker made the breakthrough on the stroke of half-time when he found space inside the 18-yard box and beat Davison at his near post.

Colchester boss Geraint Williams replaced the ineffective Kevin McLeod at the break with Ritchie Jones in a tactical switch.

But in the 53rd minute Williams' plan was in tatters as Sunderland forged 2-0 ahead as Elliott claimed his second goal of the game.

Intelligent link-up play from Brown saw the Black Cats frontman release Whitehead down the right flank.

The former Oxford United midfielder whipped in a vicious cross, which Elliott fired home past a helpless Davison.

Moments later, Elliott came close to completing his hat-trick but Davison was on hand to make another fine save.

The industrious Brown believed he had got on the scoresheet himself in the 68th minute when he finished off a fine sequence of inter-passing with a close-range tap in.

But a raised flag from the referee's assistant put paid to his celebrations as the `goal' was ruled out.

Colchester continued to probe and substitute Iwelumo capitalised on defensive uncertainty to score with 11 minutes remaining but Connolly, also on as substitute, broke his duck with a fine right-footed strike from the edge of the penalty box.