Ok, for one thing I don't believe number currently alive is the issue. But I could be wrong.
Here is how I came up with my number.
David and his descendants. Each descendant having 5 children that also have children.
Generation 1 - 5 children
Generation 2 - 25 grandchildren
Generation 3 - 125 great-grandchildren
Generation 4 - 725 great-great grandchildren
Generation 5 - 3625 ggg grandchildren
Generation 6 - 18125 gggg grandchildren
Generation 7 - 90625 ggggg grandchildren
Generation 8 - 453125 gggggg grandchildren
Generation 9 - 2265625 ggggggg grandchildren
Generation 10 - 11328125 gggggggg grandchildren
Generation 11 - 56640625 ggggggggg grandchildren
Generation 12 - 283203125 gggggggggg grandchildren
Generation 13 - 1416015625 ggggggggggg grandchildren
So there you have over a billion descendants and that isn't even adding all of the numbers above. I know, not exact "math", I am merely asserting it is possible.
If you want to call a generation 70 years, which I will accept (even though I THINK it is inaccurate) then multiply by 13 you get 910 years.
David lived much longer ago than that.
Want to say they have only 2 children each?
Generation 1 - 2 children
Generation 2 - 4 children
Generation 3 - 8 children
Generation 4 - 16 children
Generation 5 - 32 children
Generation 6 - 64 children
Generation 7 - 128 children
Generation 8 - 256 children
Generation 9 - 512 children
Generation 10 - 1024 children
Generation 11 - 2048 children
Generation 12 - 4096 children
Generation 13 - 8192 children
Generation 14 - 16384 children
Generation 15 - 32768 children
Generation 16 - 65536 children
Generation 17 - 131072 children
Generation 18 - 262144 children
Generation 19 - 524288 children
Generation 20 - 1048576 children
Generation 21 - 2097152 children
Generation 22 - 4194304 children
Generation 23 - 8388608 children
Generation 24 - 16777216 children
Generation 25 - 33554432 children
Generation 26 - 67108864 children
Generation 27 - 134217728 children
Generation 28 - 268435456 children
Generation 29 - 536870912 children
Generation 30 - 1073741824 children
Over a billion. 30 generations times 70 years = 2100 years, still not back to David.
I agree this is highly speculative as we don't have a full genealogical chart. However to say impossible as was first asserted...I think not.
Hmmm... found this after the fact.
http://www.maa.org/features/mathchat/mathchat_06_14_96.html