[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: Manager.connect possible implementation
On Mon, Jul 09, 2012 at 10:40:12AM +0100, Dave Scott wrote: > Hi, > > ... > > I was thinking that an Interface module (to match the ifconfig-style > > configuration on UNIX) would provide an easy mapping to/from UNIX. > > > > Dave: is there anything useful we can grab from XCP to act as the UNIX > > version of this library? Networkd? The Mirage version will be the > > current > > code that launches all the relevant protocol threads. > > The networkd might be useful -- it is able to configure bridges, > openvswitch instances, IP addresses etc. It might be worth ripping out > (err sharing) some of the internals if we refactored them into a > library. Is this the correct place to start looking? https://github.com/xen-org/xen-api/blob/master/ocaml/network/networkd.ml Looks like most of the logic is in Network_utils: https://github.com/xen-org/xen-api/blob/master/ocaml/network/network_utils.ml It's obviously very XCP-Linux-specific at the moment. I imagine that functorising the DHCP module to accept either the Mirage DHCP client or an external program would be a good start. It also depends on the XCP stdlib which I'd like to avoid a dependency on (since it'll never squeeze into a microkernel with all the UNIX dependencies). The OVS interface could be matched by the Mirage OpenFlow library. In general, this is a very useful exercise to firm up the differences between what is provided in UNIX userspace, and directly via the library version. It does bring up the question of what our inter-process communications interface should look like. The rpc-light module, or something else? I really like the look of: https://github.com/andrenth/release ...which is an Lwt/UNIX multiprocess framework. Crucially, it uses Lwt_bytes (which are raw memory pages that are compatible with Io_page), and so would be a very smooth transition to/from the Mirage exokernel to a normal UNIX binary. -- Anil Madhavapeddy http://anil.recoil.org
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |