The deal is worth $12 million, according to the Orange County Register.
Cogliano, 26, has 25 points (13 goals, 12 assists) with a plus-16 rating and 20 penalty minutes in 43 games, and is on pace to surpass his career-highs in goals (18) and points (45) set in his rookie season of 2007-08.
He has 74 points (39 goals, 35 assists) in 173 games with the Ducks and ranks eighth on the franchise's all-time list in plus-minus (plus-26).
Selected by the Edmonton Oilers in the first round (No. 25) of the 2005 NHL Draft, Cogliano has played in 501 consecutive games, third on the active list behind Jay Bouwmeester of the St. Louis Blues (676) and Henrik Sedin of the Vancouver canucks (671). Cogliano became the fifth player in League history, and first since Doug Jarvis (1975-78 with the Montreal Canadiens), to play 500 straight games from the start of his career.