title: Paramiko skipping some data on channel recv
body: <p>I try to execute a command which sniffs the serial port and prints on the stdout. The command runs continuously, it doesn't exit or stop. When I use the putty SSH console, I can see the data constantly updated on the console.</p>
  
  <p>I'm able to send the command and start the trace. When I try to read output data using the Paramiko channel read using the <code>recv</code> function. I'm observing that it doesn't capture all the data put out by the sniffer.</p>
  
  <p>I perform the <code>recv</code> operation after checking the <code>recv_ready</code> status.</p>
  
  <p>The below is the code. How can I avoid missing the data?</p>
  
  <pre><code>ssh= paramiko.SSHClient()
  ssh.load_system_host_keys()
  ssh.connect('host.example.com')
  channel = ssh.get_transport().open_session()
  channel.get_pty()
  
  channel.exec_command("sniff /dev/stty2")
  
  while(True):
      if(channel.recv_ready): # Doesnt get triggered often
          print channel.recv(2048) # Reads only a part of the data
  </code></pre>