Dear Chen,
In the OpenFlow reference implementation, queueing is mentioned
in lib/netdev.c
*
*
*
*
*
#define COMMAND_ADD_CLASS "/sbin/tc class add dev %s parent %x:%x " \
"classid %x:%x htb rate %dkbit ceil %dkbit"
*
*int*
*netdev_setup_class(const struct netdev *netdev, uint16_t class_id,*
* uint16_t rate)*
*{*
* char command[1024];*
* int actual_rate;*
*
*
* /* we need to translate from .1% to kbps */*
* actual_rate = rate*netdev->speed;*
*
*
* snprintf(command, sizeof(command), COMMAND_ADD_CLASS, netdev->name,*
* TC_QDISC, TC_ROOT_CLASS, TC_QDISC, class_id, actual_rate,*
* netdev->speed*1000);*
* if (system(command) != 0) {*
* VLOG_ERR("Problem configuring class %d for device %s",class_id,*
* netdev->name);*
* return -1;*
* }*
*
*
* return 0;*
*}*
And so if you "limit its min rate as 1" without modifying the code, you just
set the parameter "rate" for HTB without the parameter "ceil".
http://linuxmanpages.com/man8/tc-htb.8.php
rate rate
Maximum rate this class and all its children are guaranteed. Mandatory.
ceil rate
Maximum rate at which a class can send, if its parent has bandwidth to
spare. Defaults to the configured rate, which implies no borrowing
On Mon, Aug 22, 2011 at 7:45 AM, Ben Pfaff <[email protected]> wrote:
> On Sun, Aug 21, 2011 at 06:40:53PM -0500, Chen Gao wrote:
> > There is queue in openflow reference. I set up two queues for ports in
> my
> > switch and limit its min rate as 1. However, when I test rate between two
> > host in the openflow network, It's higher than 0.1% of 100Mb, which is
> not I
> > supposed.
>
> I don't know how the OpenFlow reference implementation does queuing.
> _______________________________________________
> openflow-discuss mailing list
> [email protected]
> https://mailman.stanford.edu/mailman/listinfo/openflow-discuss
>
--
***Best regards, :-)
**
Junlong Peng*
_______________________________________________
openflow-discuss mailing list
[email protected]
https://mailman.stanford.edu/mailman/listinfo/openflow-discuss