Menstrual cycle varying between once in as early as 23 days to as late as about 45 days is considered as fairly normal cycle length.
The time period between first day of one menstruation to first day of next menstruation is called as cycle length.
Cycle length is consequent to the level, duration and pulses of various menstruation related hormone release in the body which in turn is subject to many other factors like loss or gain of weight, stress, sickness, intake of drugs and majority of times for no reason. Therefore it is normal to have early or late periods when it is within range.
However, one should check their thyroid function, be the cycles normal or otherwise, as thyroid dysfunction is very common problem, more so in women and that too not detected clinically many times.
Consultation with a gynecolologist and getting that assurance gives lot of mental peace.
It is normal to have some variation in your cycle, up to 5 days late or 5 days early, as long as it varies around a certain number. Even later or earlier can happen occasionally. As far as I know later is more likely, as the egg needs some time to develop and the period is dependent on that (about 14 days after ovulation).