Less specific to TCP and removed trivial implementation