Hello all!

We are working on implementing Adaptive RED over existing RED code that can be found in /sys/net/altq/altq_red.c and /sys/net/altq/altq.h. We have added the following fields and functions to the source:

1. In /sys/net/altq/altq_red.h

        Added to struct red_t:

            struct callout adaptive_callout;

            int target_min;

            int target_max;

2. In /sys/net/altq/altq_red.c

        Functions added:

             void red_adaptive_timer(): function that is responsible for scheduling a callout for red_adaptive_algo() every 500ms

            void red_adaptive_algo(): function that adjusts the drop probability.


The most important part of the algorithm is the fact that it is called every 500ms. We are unable to make that happen. We found resources online pointing us to use callout_init(), callout_reset() and callout_schedule(). However, we couldn't find documentation on how to use them correctly and in what order.


Would really appreciate it if someone could point us to useful resources, or could give us an example of using those functions.


Thanks for your time.

Warm regards,

---

Archit Pandey

Junior Year Undergrad

Department of Computer Science and Engineering

National Institute of Technology Karnataka

Surathkal, India


_______________________________________________
freebsd-net@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"

Reply via email to