Kumar Sangakkara scored an under-pressure 83-ball century to help Sri Lanka beat India by two wickets, on Friday, and gave his side a strong chance to make the finals of the Asia Cup.

India faltered with the bat at the start and lost opener Rohit Sharma for just 13. Captain Virat Kohli and Shikhar Dhawan helped them recover with a 97-run stand for the second wicket.

The Dhawan-Kohli partnership turned out to be the biggest of India's innings and it helped India score 264 in their 50 overs.

Sri Lanka's openers, Kusal Perera and Lahiru Thirimanne went about the chase in style and kept India's attack at bay. The pair added 80 runs before Thirimanne was dismissed in the 18th over.

His departure brought Sangakkara to the crease. Sri Lanka's talisman led the charge, whilst wickets tumbled at the other end.

Sri Lanka's chances looked bleak when they were reduced to 217 for 7 in 44 overs, still 47 runs shy of the target. It was then that Sangakkara's experience came to the fore.

He first hit Bhuveneshwar Kumar for a boundary in the 46th over, then lofted Mohammed Shami for a six in the 47th and finally clobbered Kumar for two more fours in his next.

Though he fell eight runs short of the target, the damage had already been done and Sri Lanka claimed a narrow victory.

"The dew made it a lot easier for me, my job was to stay there for as long as possible and stay competitive," Sangakkara said.

"We had a great opening partnership which really set us up. And with Thisara in the end, we knew he could do the job. I think handling pressure comes with experience. De silva in his second ODI did well with the ball and fielding, it was a team effort overall. It's been a few good months for me, I've worked hard on my fitness and experience counts."