One cause of a VNAV disconnect is that when your airplane flies at 15 kts faster than scheduled speed.
To explain it better, FMC calculates a descent path with your choice of speed to meet your desired altitudes over your programmed routing. To aid the FMC, you need to enter some additional info like tail winds and anti ice altitudes in the FORECAST PAGE.
If you have a sudden strong tail wind or possibly you didn't program the FMC with forecast tail winds, FMC will ofcourse tend to catch up with the VNAV path with no matter to the speed. Now, if you exceed the scheduled speed by 10 kts, you'll get DRAG REQUIRED. If you exceed by 15 kts, you'll get VNAV DISCONNECT.
Hope that clears it,