[LiSA-Devel] Switch API prototyping

Ionut Nicu ionut.nicu at mindbit.ro
Mon Mar 11 14:28:34 EET 2013


Hi Andreea,

On Mon, 2013-03-11 at 13:58 +0200, Andreea-Cristina Hodea wrote:
> On Mon, Mar 11, 2013 at 1:38 PM, Andreea-Cristina Hodea
> <andreea.cristina.hodea at gmail.com> wrote:
> > Hi,
> >
> > Now the cli makes ioctl calls and communicates with daemons (cdp,
> > rstp) by using queues and shared memory. In both cases (kernel calls
> > and daemons), the cli context is used and data structures defined in
> > cli implementation. Should we consider that all implementations of the
> > API would make use of the data structures defined in cli
> > implementation?
> 
> After a discussion with Victor, we realized that some of the
> structures in cli implementation would be better moved to switch API.
> We're thinking that some of the data structures, like swcfgreq
> shouldn't be part of the cli at all, because it will depend on the
> implementation of the Switch API which structures to use. For ioctl
> calls, swcfgreq and ifreq structures are being used for setting the
> parameters used by the the lisa kernel implementation, but are these
> structures also useful for the other proposed implementations?


My opinion is that those structures (e.g. swcfgreq which is defined as
far as I recall in a kernel header) should only be used by the LiSA
specific implementation of the switch API. The switch API itself should
be more generic and hide the particularities of the underlying
implementation (be it LiSA, bridge/8021q or any other).

In any case, as I've discussed with Radu a while ago, some of the
information that is now kept into the lisa switch kernel module should
be taken out to user space. I'm thinking of information such as
interface or vlan descriptions. This way you'll be able to support other
implementations (bridge/8021q) without doing any weird stuff in
userspace.

Regards,
Ionut.



More information about the LiSA-Devel mailing list