Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ring Size & Test Examples #23

Open
wenhuizhang opened this issue Mar 19, 2016 · 4 comments
Open

Ring Size & Test Examples #23

wenhuizhang opened this issue Mar 19, 2016 · 4 comments

Comments

@wenhuizhang
Copy link

Hi, Fillipe:

Sorry for bothering again, yet I was wondering if there is some way to change the ring size without making the ClickOS image again, is it possible to change in the example.cfg scripts or through command line? Could the ring size diff from clickos-0(dom1) to clickos-1(dom2)?

Also, I was wondering if you still have the mirror.click files tested before, Wire (WR), EtherMirror (EM), IP Router (IR), Load Balancer (LB) and Flow Monitor (FM)?

@wenhuizhang wenhuizhang changed the title Ring Size Ring Size & Test Examples Mar 19, 2016
@fmanco
Copy link

fmanco commented Mar 24, 2016

Hello

If you're referring to changing the ring size as we did in the ClickOS paper, those would be the netmap rings and you can set the ring size when you insert the module.

About the configurations, unfortunately does are internal and we can't publish them.

@wenhuizhang
Copy link
Author

Hi, @fmanco

Do you mind if check below is something to be adjusted ?

WR:

FromDevice(0) -> ToDevice(1)

FM:

AddressInfo(the_interface 10.0.0.1 0:0:c0:8a:67:ef); // change here 

classifier  :: Classifier(12/0800 /* IP packets */,
                  12/0806 20/0001 /* ARP requests */,
                  - /* everything else */);
ip_classifier   :: IPClassifier(dst udp port 1234 /* relevant UDP packets */,
                - /* everything else */);
in_device   :: FromDevice(the_interface); 
out     :: Queue(200) -> ToDevice(the_interface);
to_host     :: ToDevice;
ctr     :: Counter /* or AverageCounter */;

in_device -> classifier
    -> CheckIPHeader(14, CHECKSUM false) 
    -> ip_classifier
    -> ctr
    -> Discard;
classifier[1] -> ARPResponder(the_interface) -> out;
classifier[2] -> to_host;
ip_classifier[1] -> to_host;

@fmanco
Copy link

fmanco commented Mar 28, 2016

WR is okay. For FM there's two things: AddressInfo doesn't work with ClickOS's FromDevice and ToDevice, you need to specify the interface ID; You're discarding the packets you're counting, shouldn't you just be forwarding them after counting?

@wenhuizhang
Copy link
Author

FM revised :

define($IP 10.0.0.1);
define($MAC 0:0:c0:8a:67:ef); // change here 

classifier  :: Classifier(12/0800 /* IP packets */,
                  12/0806 20/0001 /* ARP requests */,
                  - /* everything else */);
ip_classifier   :: IPClassifier(dst udp port 1234 /* relevant UDP packets */,
                - /* everything else */);
in   :: FromDevice(0); 
out     :: Queue(200) -> ToDevice(1);
ctr     :: Counter /* or AverageCounter */;

in -> classifier
    -> CheckIPHeader(14, CHECKSUM false) 
    -> ip_classifier
    -> ctr
    -> Discard;
classifier[1] -> ARPResponder(the_interface) -> out;
classifier[2] -> out;
ip_classifier[1] -> out;

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants