This is because we currently use select.select. The limit is entirely artificial -- the underlying fd_set object is just a (int length, array of SOCKET integers) structure which we could allocate at whatever size we wanted, if we wanted. Or we could use WSAPoll.