public static ISubject<DisposableByteBuffer, DisposableByteBuffer> ToFrameClientSubject(this Socket socket, BufferManager bufferManager, CancellationToken token)
 {
     var stream = new NetworkStream(socket, FileAccess.ReadWrite);
     return Subject.Create(stream.ToFrameStreamObserver(token), stream.ToFrameStreamObservable(bufferManager));
 }