[crossbow-discuss] Design review of IP Instances part of Crossbow
Erik Nordmark
erik.nordmark at sun.com
Tue Oct 17 11:17:52 PDT 2006
Darren.Reed at Sun.COM wrote:
{Responding out of order.]
>> ifs_ap_proxies and ifs_ap_proxylist are almost static - apr_ref is
>> modified. Are you suggesting we should keep apr_ref in a separate
>> list/array?
>
>
> On the contrary, apr_ref needs to stay where it is for simplicity,
> otherwise
> you need to invent a new mechanism to track whether or not a proxy is in
> use.
If apr_ref needs to stay, then we must have one ap_proxies and
ap_proxylist per IP instance AFAICT.
Do you see an other solution?
> If/when it becomes possible to load a kernel module in a non-global zone
> then it would be time to consider making some changes on a per-zone
> basis.
when = never
If you want different kernel modules for different "containers" the
solution is having different kernels i.e. Xen or Sparc LDOMS.
> Initially I was thinking that each proxy would be responsible for
> maintaining its own collection of stack instance pointers. This will
> however generate a needlessly high amount of code duplication.
>
> Having the apr_init function return a pointer is a better idea.
> But where does that get stored?
> Putting it in the aproxy_t structure seems like a fine idea except
> that this would imply an aproxy_t per instance (which I currently
> don't believe serves any purpose at all.) The end result is that
> this calls for another list of things, per instance.
But due to apr_ref we need per-instance aproxy_t in any case.
> The ap_session_t would be an appropriate place to store this
> pointer for easy retrieval after appr_new() has been called and
> that would need to search to find the correct instance pointer.
>
> Only 3 of the proxies include data structures that could be
> useful per instance: FTP, IPsec and PPTP.
All of them have two variables that are modified. E.g.,
frentry_t ifs_netbiosfr;
int ifs_netbios_proxy_init;
If you remove all those unneeded ones from Nevada, then IP Instances
doesn't have to virtualize them.
Erik
More information about the crossbow-discuss
mailing list