You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by Jie Yu <yu...@gmail.com> on 2014/04/28 19:00:56 UTC

Review Request 20781: Added internal filter and queueing APIs.

-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/
-----------------------------------------------------------

Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.


Bugs: MESOS-1228
    https://issues.apache.org/jira/browse/MESOS-1228


Repository: mesos-git


Description
-------

Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.

In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.


Diffs
-----

  src/Makefile.am d2e006d 
  src/linux/routing/filter/action.hpp PRE-CREATION 
  src/linux/routing/filter/filter.hpp PRE-CREATION 
  src/linux/routing/filter/internal.hpp PRE-CREATION 
  src/linux/routing/filter/priority.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.cpp PRE-CREATION 
  src/linux/routing/queueing/ingress.hpp PRE-CREATION 
  src/linux/routing/queueing/ingress.cpp PRE-CREATION 
  src/linux/routing/queueing/internal.hpp PRE-CREATION 

Diff: https://reviews.apache.org/r/20781/diff/


Testing
-------

make check


Thanks,

Jie Yu


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.

> On May 13, 2014, 9:53 p.m., Dominic Hamon wrote:
> > src/linux/routing/filter/internal.hpp, line 86
> > <https://reviews.apache.org/r/20781/diff/1/?file=569519#file569519line86>
> >
> >     do these need to be inline in the header? consider adding them to a source file to reduce dependencies.

I would like to put all internal stuff in the same file:)


> On May 13, 2014, 9:53 p.m., Dominic Hamon wrote:
> > src/linux/routing/filter/internal.hpp, line 406
> > <https://reviews.apache.org/r/20781/diff/1/?file=569519#file569519line406>
> >
> >     return cls.isSome();

Done.


- Jie


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/#review42895
-----------------------------------------------------------


On May 9, 2014, 10:27 p.m., Jie Yu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20781/
> -----------------------------------------------------------
> 
> (Updated May 9, 2014, 10:27 p.m.)
> 
> 
> Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.
> 
> 
> Bugs: MESOS-1228
>     https://issues.apache.org/jira/browse/MESOS-1228
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.
> 
> In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.
> 
> 
> Diffs
> -----
> 
>   src/Makefile.am d2e006d 
>   src/linux/routing/filter/action.hpp PRE-CREATION 
>   src/linux/routing/filter/filter.hpp PRE-CREATION 
>   src/linux/routing/filter/internal.hpp PRE-CREATION 
>   src/linux/routing/filter/priority.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.cpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.hpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.cpp PRE-CREATION 
>   src/linux/routing/queueing/internal.hpp PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/20781/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Jie Yu
> 
>


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Dominic Hamon <dh...@twopensource.com>.

> On May 13, 2014, 2:53 p.m., Dominic Hamon wrote:
> > src/linux/routing/filter/internal.hpp, line 86
> > <https://reviews.apache.org/r/20781/diff/1/?file=569519#file569519line86>
> >
> >     do these need to be inline in the header? consider adding them to a source file to reduce dependencies.
> 
> Jie Yu wrote:
>     I would like to put all internal stuff in the same file:)

I'd like to understand what you think the benefit is: If it was public-facing, i'd understand the need to be easy to find and read. However as it is internal, it shouldn't be a problem to be in a source file. The down side to having it all in the header is twofold: Extra dependencies being pulled in to everything that includes this and extra code to be compiled. If the compiler does respect your request for inline there's a third issue: code bloat.

I feel very strongly that we should start taking more care of how much code we compile and how much memory it takes to link our code, especially given some of the issues we've seen with people being unable to build the project due to OOM issues.


- Dominic


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/#review42895
-----------------------------------------------------------


On May 14, 2014, 5:43 p.m., Jie Yu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20781/
> -----------------------------------------------------------
> 
> (Updated May 14, 2014, 5:43 p.m.)
> 
> 
> Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.
> 
> 
> Bugs: MESOS-1228
>     https://issues.apache.org/jira/browse/MESOS-1228
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.
> 
> In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.
> 
> 
> Diffs
> -----
> 
>   src/Makefile.am 12374c4 
>   src/linux/routing/filter/action.hpp PRE-CREATION 
>   src/linux/routing/filter/filter.hpp PRE-CREATION 
>   src/linux/routing/filter/internal.hpp PRE-CREATION 
>   src/linux/routing/filter/priority.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.cpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.hpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.cpp PRE-CREATION 
>   src/linux/routing/queueing/internal.hpp PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/20781/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Jie Yu
> 
>


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Dominic Hamon <dh...@twopensource.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/#review42895
-----------------------------------------------------------



src/linux/routing/filter/action.hpp
<https://reviews.apache.org/r/20781/#comment76817>

    this class is not abstract as it has no pure virtual methods. s/Abstract/Base/



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76818>

    do these need to be inline in the header? consider adding them to a source file to reduce dependencies.



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76820>

    "mirred" is a constant expected by libnl-route - we should probably define it as a constant instead of using it here as a magic value.



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76821>

    can you abstract this repeated code?



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76822>

    define a constant for "u32"



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76823>

    return cls.isSome();


- Dominic Hamon


On May 9, 2014, 3:27 p.m., Jie Yu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20781/
> -----------------------------------------------------------
> 
> (Updated May 9, 2014, 3:27 p.m.)
> 
> 
> Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.
> 
> 
> Bugs: MESOS-1228
>     https://issues.apache.org/jira/browse/MESOS-1228
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.
> 
> In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.
> 
> 
> Diffs
> -----
> 
>   src/Makefile.am d2e006d 
>   src/linux/routing/filter/action.hpp PRE-CREATION 
>   src/linux/routing/filter/filter.hpp PRE-CREATION 
>   src/linux/routing/filter/internal.hpp PRE-CREATION 
>   src/linux/routing/filter/priority.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.cpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.hpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.cpp PRE-CREATION 
>   src/linux/routing/queueing/internal.hpp PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/20781/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Jie Yu
> 
>


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/
-----------------------------------------------------------

(Updated May 14, 2014, 11:36 p.m.)


Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.


Bugs: MESOS-1228
    https://issues.apache.org/jira/browse/MESOS-1228


Repository: mesos-git


Description
-------

Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.

In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.


Diffs
-----

  src/Makefile.am 12374c4 
  src/linux/routing/filter/action.hpp PRE-CREATION 
  src/linux/routing/filter/filter.hpp PRE-CREATION 
  src/linux/routing/filter/internal.hpp PRE-CREATION 
  src/linux/routing/filter/priority.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.cpp PRE-CREATION 
  src/linux/routing/queueing/ingress.hpp PRE-CREATION 
  src/linux/routing/queueing/ingress.cpp PRE-CREATION 
  src/linux/routing/queueing/internal.hpp PRE-CREATION 

Diff: https://reviews.apache.org/r/20781/diff/


Testing
-------

make check


Thanks,

Jie Yu


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/
-----------------------------------------------------------

(Updated May 15, 2014, 12:43 a.m.)


Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.


Changes
-------

Rebased.


Bugs: MESOS-1228
    https://issues.apache.org/jira/browse/MESOS-1228


Repository: mesos-git


Description
-------

Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.

In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.


Diffs (updated)
-----

  src/Makefile.am 12374c4 
  src/linux/routing/filter/action.hpp PRE-CREATION 
  src/linux/routing/filter/filter.hpp PRE-CREATION 
  src/linux/routing/filter/internal.hpp PRE-CREATION 
  src/linux/routing/filter/priority.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.cpp PRE-CREATION 
  src/linux/routing/queueing/ingress.hpp PRE-CREATION 
  src/linux/routing/queueing/ingress.cpp PRE-CREATION 
  src/linux/routing/queueing/internal.hpp PRE-CREATION 

Diff: https://reviews.apache.org/r/20781/diff/


Testing
-------

make check


Thanks,

Jie Yu


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/
-----------------------------------------------------------

(Updated May 14, 2014, 11:40 p.m.)


Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.


Bugs: MESOS-1228
    https://issues.apache.org/jira/browse/MESOS-1228


Repository: mesos-git


Description
-------

Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.

In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.


Diffs
-----

  src/Makefile.am 12374c4 
  src/linux/routing/filter/action.hpp PRE-CREATION 
  src/linux/routing/filter/filter.hpp PRE-CREATION 
  src/linux/routing/filter/internal.hpp PRE-CREATION 
  src/linux/routing/filter/priority.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.cpp PRE-CREATION 
  src/linux/routing/queueing/ingress.hpp PRE-CREATION 
  src/linux/routing/queueing/ingress.cpp PRE-CREATION 
  src/linux/routing/queueing/internal.hpp PRE-CREATION 

Diff: https://reviews.apache.org/r/20781/diff/


Testing
-------

make check


Thanks,

Jie Yu


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/
-----------------------------------------------------------

(Updated May 14, 2014, 11:39 p.m.)


Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.


Changes
-------

Updated 'depends-on'.


Bugs: MESOS-1228
    https://issues.apache.org/jira/browse/MESOS-1228


Repository: mesos-git


Description
-------

Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.

In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.


Diffs
-----

  src/Makefile.am 12374c4 
  src/linux/routing/filter/action.hpp PRE-CREATION 
  src/linux/routing/filter/filter.hpp PRE-CREATION 
  src/linux/routing/filter/internal.hpp PRE-CREATION 
  src/linux/routing/filter/priority.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.cpp PRE-CREATION 
  src/linux/routing/queueing/ingress.hpp PRE-CREATION 
  src/linux/routing/queueing/ingress.cpp PRE-CREATION 
  src/linux/routing/queueing/internal.hpp PRE-CREATION 

Diff: https://reviews.apache.org/r/20781/diff/


Testing
-------

make check


Thanks,

Jie Yu


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/
-----------------------------------------------------------

(Updated May 14, 2014, 11:36 p.m.)


Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.


Bugs: MESOS-1228
    https://issues.apache.org/jira/browse/MESOS-1228


Repository: mesos-git


Description
-------

Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.

In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.


Diffs
-----

  src/Makefile.am 12374c4 
  src/linux/routing/filter/action.hpp PRE-CREATION 
  src/linux/routing/filter/filter.hpp PRE-CREATION 
  src/linux/routing/filter/internal.hpp PRE-CREATION 
  src/linux/routing/filter/priority.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.cpp PRE-CREATION 
  src/linux/routing/queueing/ingress.hpp PRE-CREATION 
  src/linux/routing/queueing/ingress.cpp PRE-CREATION 
  src/linux/routing/queueing/internal.hpp PRE-CREATION 

Diff: https://reviews.apache.org/r/20781/diff/


Testing
-------

make check


Thanks,

Jie Yu


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/
-----------------------------------------------------------

(Updated May 14, 2014, 11:33 p.m.)


Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.


Changes
-------

Review comments. Rebased.


Bugs: MESOS-1228
    https://issues.apache.org/jira/browse/MESOS-1228


Repository: mesos-git


Description
-------

Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.

In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.


Diffs (updated)
-----

  src/Makefile.am 12374c4 
  src/linux/routing/filter/action.hpp PRE-CREATION 
  src/linux/routing/filter/filter.hpp PRE-CREATION 
  src/linux/routing/filter/internal.hpp PRE-CREATION 
  src/linux/routing/filter/priority.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.cpp PRE-CREATION 
  src/linux/routing/queueing/ingress.hpp PRE-CREATION 
  src/linux/routing/queueing/ingress.cpp PRE-CREATION 
  src/linux/routing/queueing/internal.hpp PRE-CREATION 

Diff: https://reviews.apache.org/r/20781/diff/


Testing
-------

make check


Thanks,

Jie Yu


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.

> On May 13, 2014, 12:22 a.m., Vinod Kone wrote:
> > src/linux/routing/filter/internal.hpp, line 250
> > <https://reviews.apache.org/r/20781/diff/1/?file=569519#file569519line250>
> >
> >     What is a "u32" filter? And why is the matched packet rule is only applied to them?

Added comments. 


> On May 13, 2014, 12:22 a.m., Vinod Kone wrote:
> > src/linux/routing/filter/internal.hpp, line 313
> > <https://reviews.apache.org/r/20781/diff/1/?file=569519#file569519line313>
> >
> >     s/get/Clses/getFilters/ ?

I have the following rules to avoid confusion.

Cls --> libnl stuff
Classifier -> our own abstraction


- Jie


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/#review42774
-----------------------------------------------------------


On May 14, 2014, 11:40 p.m., Jie Yu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20781/
> -----------------------------------------------------------
> 
> (Updated May 14, 2014, 11:40 p.m.)
> 
> 
> Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.
> 
> 
> Bugs: MESOS-1228
>     https://issues.apache.org/jira/browse/MESOS-1228
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.
> 
> In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.
> 
> 
> Diffs
> -----
> 
>   src/Makefile.am 12374c4 
>   src/linux/routing/filter/action.hpp PRE-CREATION 
>   src/linux/routing/filter/filter.hpp PRE-CREATION 
>   src/linux/routing/filter/internal.hpp PRE-CREATION 
>   src/linux/routing/filter/priority.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.cpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.hpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.cpp PRE-CREATION 
>   src/linux/routing/queueing/internal.hpp PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/20781/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Jie Yu
> 
>


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Vinod Kone <vi...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/#review42774
-----------------------------------------------------------

Ship it!



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76672>

    s/libnl fixes the bug/the bug is fixed in libnl/



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76674>

    Can you add a comment on what "mirred" does here?



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76673>

    const.



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76676>

    ditto.



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76677>

    What is a "u32" filter? And why is the matched packet rule is only applied to them?



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76679>

    new line.



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76683>

    s/get/Clses/getFilters/ ?



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76682>

    s/getCls/getFilter/



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76685>

    s/check/exists_/



src/linux/routing/filter/internal.hpp
<https://reviews.apache.org/r/20781/#comment76688>

    Can we print the old and new priorities here?



src/linux/routing/queueing/internal.hpp
<https://reviews.apache.org/r/20781/#comment76702>

    s/queue/queueing/ ?



src/linux/routing/queueing/internal.hpp
<https://reviews.apache.org/r/20781/#comment76703>

    s/queue/queueing/ ?


- Vinod Kone


On May 9, 2014, 10:27 p.m., Jie Yu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/20781/
> -----------------------------------------------------------
> 
> (Updated May 9, 2014, 10:27 p.m.)
> 
> 
> Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.
> 
> 
> Bugs: MESOS-1228
>     https://issues.apache.org/jira/browse/MESOS-1228
> 
> 
> Repository: mesos-git
> 
> 
> Description
> -------
> 
> Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.
> 
> In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.
> 
> 
> Diffs
> -----
> 
>   src/Makefile.am d2e006d 
>   src/linux/routing/filter/action.hpp PRE-CREATION 
>   src/linux/routing/filter/filter.hpp PRE-CREATION 
>   src/linux/routing/filter/internal.hpp PRE-CREATION 
>   src/linux/routing/filter/priority.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.hpp PRE-CREATION 
>   src/linux/routing/queueing/handle.cpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.hpp PRE-CREATION 
>   src/linux/routing/queueing/ingress.cpp PRE-CREATION 
>   src/linux/routing/queueing/internal.hpp PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/20781/diff/
> 
> 
> Testing
> -------
> 
> make check
> 
> 
> Thanks,
> 
> Jie Yu
> 
>


Re: Review Request 20781: Added internal filter and queueing APIs.

Posted by Jie Yu <yu...@gmail.com>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/20781/
-----------------------------------------------------------

(Updated May 9, 2014, 10:27 p.m.)


Review request for mesos, Benjamin Hindman, Chi Zhang, Ian Downes, Vinod Kone, and Cong Wang.


Changes
-------

Updated 'depends-on'


Bugs: MESOS-1228
    https://issues.apache.org/jira/browse/MESOS-1228


Repository: mesos-git


Description
-------

Added internal APIs for filtering. This patch is used by the following patches (ICMP, ARP, IP filters). All kinds of filters will use the same internal APIs.

In this patch, I also exposed APIs for queueing disciplines (qdisc) and queueing classes. Currently, we only use the ingress queueing discipline for packets redirection. In the future, we may wanna introduce different queueing disciplines and classes for network isolation and shape control. The internal APIs make the extension very easy.


Diffs
-----

  src/Makefile.am d2e006d 
  src/linux/routing/filter/action.hpp PRE-CREATION 
  src/linux/routing/filter/filter.hpp PRE-CREATION 
  src/linux/routing/filter/internal.hpp PRE-CREATION 
  src/linux/routing/filter/priority.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.hpp PRE-CREATION 
  src/linux/routing/queueing/handle.cpp PRE-CREATION 
  src/linux/routing/queueing/ingress.hpp PRE-CREATION 
  src/linux/routing/queueing/ingress.cpp PRE-CREATION 
  src/linux/routing/queueing/internal.hpp PRE-CREATION 

Diff: https://reviews.apache.org/r/20781/diff/


Testing
-------

make check


Thanks,

Jie Yu