# What do the DC++-style tags mean?

## Notation

The following information appears in the Tag column for every user in the user list of the Hub window: <++ V:x,M:x,H:x/y/z,S:x[,O:x]>, where

V(ersion)
  x = client version
M(ode)
  x = mode (A = Active, P = Passive, 5 = SOCKS5)
H(ubs)
  x = number of hubs connected to where you're not a registered user
  y = number of hubs you're registered in
  z = number of hubs you're registered as an operator
S(lots)
  x = number of upload slots you have open (note that they may be in use already)
O(pen an extra slot if speed is below)
  x = if total upload is below this value DC++ will open another slot
  This part of the tag is only shown when the option for it is enabled.

The tag is updated every 1-2 minutes if there are changes. Other clients may introduce more tag elements such as L:x or B:x which means usage of upload bandwidth limiter where x is the amount of maximal upload bandwidth in KiBs.

## History

The DC++ tag was introduced back when the only available Direct Connect client was Neo-Modus DirectConnect (NMDC) v1.0. That particular client could only connect to one hub at a time, which ensured that the upload slots available were assigned to other users connected to that hub. At first, hub owners considered DC++ to be a cheat client, because it could connect to multiple hubs at once. The DC++ tag was introduced so hub owners could check if the users were connected to a reasonable amount of hubs and had enough upload slots available for sharing.
At this point, almost every client, whether it's capable of joining multiple hubs or not, has a similar tag in it's description field. The custom is to replace "++" with some other identifier uniquely identifying the client type (common are "StrgDC++", "ApexDC++" and "PWDC++").