Strange class problem

I wonder that one class instance would need so much memory.

There's this:

  byte _red;
  byte _green;
  byte _blue;
  byte _dim;
  byte _red_memory;
  byte _green_memory;
  byte _blue_memory;
  byte _dim_memory;
  float _steps;
  int _addr_red;
  int _addr_green;
  int _addr_blue;
  int _addr_dim;
  int _addr_mode;
  float _stepping_red;
  float _stepping_green;
  float _stepping_blue;
  byte _queue_red[MAX_FADE_ELEMENTS];
  byte _queue_green[MAX_FADE_ELEMENTS];
  byte _queue_blue[MAX_FADE_ELEMENTS];
  float _queue_time[MAX_FADE_ELEMENTS];
  int _queue_counter;
  int _q;
  int _step_counter;
  IPAddress remote_ip;
  uint16_t remote_port;

and this:

  void _DMXNet_send(uint16_t addr,uint8_t data);
  DMX_RGB(char* ip, uint16_t port,int addr_red, int addr_green, int addr_blue, int addr_dim,int addr_mode);
  void set_rgb(byte r, byte g, byte b);
  void set_red(byte r);
  void set_green(byte g);
  void set_blue(byte b);
  void set_dim(byte d);
  int get_steps(void);
  void fade_to(byte r, byte g, byte b, float time);
  void flash(byte flashes, int min_time, int max_time, int fade_time);
  void worker(void);
  void init(int cmd);

That's not a trivial list of data fields or a trivial list of functions. For EACH instance.