Hello,
I am trying to experiment with sch_cake.c, my goal is to ad-hoc prioritize / deprioritize traffic served to specified a host(s). The prioritization would be controlled by an external
system and it should handle well the situation where a host has active flow(s).
I've experimented with traffic shifting from tin to tin via fwmarks, it worked somehow, but there are issues related to losing flow's (cobalt) state.
Could you please propose a way how this could be done?
Each flow refences cake_host_table, which could be in theory modified (for example) like
struct
cake_host {
u32 srchost_tag;
u32 dsthost_tag;
u16 srchost_bulk_flow_count;
u16 dsthost_bulk_flow_count;
??? srchost_weight; // default value = 1.0
??? dsthost_weight; // default value = 1.0
};
The weight fields could be then used in cobalt rate scheduling... weight could be an integer, enum, or decimal - but anything that could distinguish the traffic.
Thank you for any ideas.
Jan Rovner
Ing. Jan Rovner, Ph.D., jednatel společnosti
e-mail:
internet@diadema.cz www:
http://internet.diadema.cz
telefon: +420 377 421 863, +420 603 484 742 |
|
|
Diadema Internet s.r.o. se sídlem Morseova 1126/5, 301 00 Plzeň IČO: 29093961, DIČ CZ29093961 |
Korespondenční a dodací adresa Diadema Internet s.r.o. |
|