Frustum matrix derivation

Can anybody explain how the projection matix for glFrustum is derived?
Or at least, where is the view plane .
The center of projection is (0,0,0)?

It’s all in the spec . Page 34.