The 26-year-old Scotland international told Canaries Player: "It's brilliant. I'm extremely delighted, my family and I are really happy around here.
"It's a pleasure and an honour to be playing for a club of this size and stature.
"The last three years have been brilliant, and hopefully the next three can be just as good.
"As soon as the club spoke about it [signing a new contract], it didn't take long to get sorted because I'm so happy here personally.
"We've got a great bunch of lads so I'm really pleased to get it sorted so early on. I can now come back in pre-season raring to go."