Why do shaders have a normal input?
A face normal is the angle perpendicular to the face, it is used to determine reflections and lighting on the face.

A normal map is used to visually deform the surface of an object. It does this by altering the face normal for every position on the face. This fakes extra detail by altering the rendering calculation without using extra geometry.

This is where the normal input comes in, by feeding a normal map into the node you allow blender to calculate the surface colour at a given point using the modified normals and not just the one face normal.

You may find Blender Gurus recent tutorial on photorealistic wood of interest.