What do Flags and Reqs mean in uTorrent?

Solution 1:

The meanings of the flags used to be given in the uTorrent FAQ (archived link):

  • D = Currently downloading (interested and not choked)
  • d = Your client wants to download, but peer doesn't want to send (interested and choked)
  • U = Currently uploading (interested and not choked)
  • u = Peer wants your client to upload, but your client doesn't want to (interested and choked)
  • O = Optimistic unchoke
  • S = Peer is snubbed
  • I = Peer is an incoming connection
  • K = Peer is unchoking your client, but your client is not interested
  • ? = Your client unchoked the peer but the peer is not interested
  • X = Peer was included in peerlists obtained through Peer Exchange (PEX) or an IPv6 peer told you its IPv4 address.
  • H = Peer was obtained through DHT.
  • E = Peer is using Protocol Encryption (all traffic)
  • e = Peer is using Protocol Encryption (handshake)
  • P = Peer is using uTorrent uTP
  • L = Peer is local (discovered through network broadcast, or in reserved local IP ranges)

The numbers in the Reqs column show how many pieces you have requested from the peer, and how many the peer has requested from you.

Solution 2:

I know this has been answered, but the previous answers aren't as exhaustive (a few more flags listed here, such as h and F, as well as T from Transmission, which is equivalent to P in µTorrent.)

µTorrent divides flags into two groups, meanings are the same regardless of grouping. Note that flag capitalization does matter.

µTorrent Group #1:

  • D = Currently downloading (interested, unchoked)
  • d = Your client wants to download, but peer doesn't want to send (interested, choked)
  • U = Currently uploading (interested, unchoked)
  • u = Peer wants your client to upload, but your client doesn't want to (interested, choked)
  • S = Peer is snubbed (unchoked, but request timed out)

µTorrent Group #2:

  • ? = Your client unchoked the peer but the peer is not interested
  • E = Peer is using Protocol Encryption (all traffic)
  • e = Peer is using Protocol Encryption (handshake only)
  • F = Peer was involved in a hashfailed piece (not necessarily a bad peer, just involved)
  • H = Peer was obtained through DHT
  • h = Peer connection established via UDP hole-punching
  • I = Peer is an incoming connection (peer initiated connection, not you)
  • K = Peer unchoked your client, but your client is not interested
  • L = Peer is local (discovered via network broadcast, or in reserved local IP ranges)
  • O = Optimistic unchoke (was choked and is now getting a "second-chance")
  • P = Peer is using uTP (UDP-based transport, instead of the default TCP)
  • X = Peer was included in peerlists obtained through Peer Exchange (PEX)

Transmission:

  • T = Peer is using uTP (UDP-based transport, instead of the default TCP)

Adding this here due to a comment by Cobra_Fast.

Solution 3:

If you check the Flags tab in utorrent you can find lots of alphabets. This what they mean:

D = Currently downloading (interested and not choked)

d = Your client wants to download, but peer doesn't want to send (interested and choked)

U = Currently uploading (interested and not choked)

u = Peer wants your client to upload, but your client doesn't want to (interested and choked)

O = Optimistic unchoke

S = Peer is snubbed

I = Peer is an incoming connection

K = Peer is unchoking your client, but your client is not interested

? = Your client unchoked the peer but the peer is not interested

X = Peer was included in peerlists obtained through Peer Exchange (PEX) or an IPv6 peer told you its IPv4 address.

H = Peer was obtained through DHT.

E = Peer is using Protocol Encryption (all traffic)

e = Peer is using Protocol Encryption (handshake)

P = Peer is using uTorrent uTP

L = Peer is local (discovered through network broadcast, or in reserved local IP ranges)