Re: Routebricks setup
Mihai Dobrescu <[email protected]>
| Newsgroups | gmane.network.routing.click |
|---|---|
| Message-ID | <CA+Qcxbu4craEFLByj-nkRFzsR3zq9K1xMht+_YxD6FbYVzc_eQ@mail.gmail.com> |
Hi Ahmed, There was a thread scheduling bug in click1.7.0rc1. It was later fixed here: http://www.read.cs.ucla.edu/gitweb?p=click;a=commit;h=df94d46a16af8a061d1069d2c442f1132063bb87 So you can take the patch from commit df94d46a16af8a061d1069d2c442f1132063bb87, apply the patch and scheduling should work fine. Mihai On Thu, Jun 7, 2012 at 6:32 PM, ahmed A. <[email protected]> wrote: > Hello, > > Does anyone manage to set up and run routebricks on his/her machine. We > trying to do that , but we encountered the following problem: > When we try to *assign different elements to different threads using the > StaticThreadSched<http://www.read.cs.ucla.edu/click/elements/staticthreadsched> > ()* element, but we end up with* all elements in our script assigned to > only one Linux thread*. We just try to run the test click configuration > script provided by routebricks: > > pd0 :: MQPollDevice(eth0, QUEUE 0, BURST 32, PROMISC true) -> > q0 :: CPUQueue(1000) -> > counter0 :: AverageCounter() -> > td0 :: MQToDevice(eth1, QUEUE 0, BURST 32); > StaticThreadSched(pd0 0, td0 0); > > pd1 :: MQPollDevice(eth0, QUEUE 1, BURST 32, PROMISC true) -> > q1 :: CPUQueue(1000) -> > counter1 :: AverageCounter() -> > td1 :: MQToDevice(eth1, QUEUE 1, BURST 32); > StaticThreadSched(pd1 1, td1 1); > > pd2 :: MQPollDevice(eth0, QUEUE 2, BURST 32, PROMISC true) -> > q2 :: CPUQueue(1000) -> > counter2 :: AverageCounter() -> > td2 :: MQToDevice(eth1, QUEUE 2, BURST 32); > StaticThreadSched(pd2 2, td2 2); > > pd3 :: MQPollDevice(eth0, QUEUE 3, BURST 32, PROMISC true) -> > q3 :: CPUQueue(1000) -> counter3 :: AverageCounter() -> > td3 :: MQToDevice(eth1, QUEUE 3, BURST 32); > StaticThreadSched(pd3 3, td3 3); > > // eth1 -> eth0 > > pd8 :: MQPollDevice(eth1, QUEUE 0, BURST 32, PROMISC true) -> > q8 :: CPUQueue(1000) -> > counter8 :: AverageCounter() -> > td8 :: MQToDevice(eth0, QUEUE 0); > StaticThreadSched(pd8 0, td8 0); > > pd9 :: MQPollDevice(eth1, QUEUE 1, BURST 32, PROMISC true) -> > q9 :: CPUQueue(1000) -> > counter9 :: AverageCounter() -> > td9 :: MQToDevice(eth0, QUEUE 1); > StaticThreadSched(pd9 1, td9 1); > > pd10 :: MQPollDevice(eth1, QUEUE 2, BURST 32, PROMISC true) -> > q10 :: CPUQueue(1000) -> > counter10 :: AverageCounter() -> > td10 :: MQToDevice(eth0, QUEUE 2); > StaticThreadSched(pd10 2, td10 2); > > pd11 :: MQPollDevice(eth1, QUEUE 3, BURST 32, PROMISC true) -> > q11 :: CPUQueue(1000) -> > counter11 :: AverageCounter() -> > td11 :: MQToDevice(eth0, QUEUE 3); > StaticThreadSched(pd11 3, td11 3); > > So in our routebricks setup, all the PDs and TDs in this script will be > assigned to only linux thread (the first one). We are not sure if it is a > problem of *StaticThreadSched<http://www.read.cs.ucla.edu/click/elements/staticthreadsched>() > *or routebricks setup. As recommended by routebricks we run Click 1.7, is > there any bug in this click version related to this problem ? > > We would appreciate any help or tips > > Thank you in advance > > Ahmed > _______________________________________________ > click mailing list > [email protected] > https://amsterdam.lcs.mit.edu/mailman/listinfo/click