Channel/Sreq cleanup

Reapply non-importing changes from #18643.

I'll submit another one with the crypt and auth changes after fixing the import issues.