[Ovirt-devel] Explicit global network modelling
Daniel P. Berrange
berrange at redhat.com
Fri Oct 24 18:43:58 UTC 2008
On Fri, Oct 24, 2008 at 12:53:57PM -0400, Mohammed Morsi wrote:
> Just to assist in starting all this, I came up with a quick uml class
> diagram for the new network changes incorporating the new classes and
> relationships, and accommodating for things like static ip addresses
> and the network usage relationship. It can be accessed here
> http://www.ovirt.org/page/Redesigned_Network_Configuration If anything
> looks off, feel free to point it out.
Some points
- Network <-> Usage is 0/1-to-n since you can have zero or
more usages for each network
- Having separate tables for 'bonding type' and 'boot type' seems
like overkill to me - I would have just have a single byte field
with a CHECK constraint on it.
- NIC <-> IPAddress is 0/1-to-n since you can have zero or more
addresses for each NIC
- Sub-tables for IPv4 vs IPv6 seems like overkill since they're
not going to be any different in the info they store
- Don't use the word 'virtual' in association with network - stick to
using VLAN instead. 'virtual' already has a defined meaning in libvirt
application terminology.
- A physical NIC should associate to a physical network, to enforce
that a NIC is a physical connection
- Bond shouldn't associate with network at all, since that's duplicating
info already encoded in the NIC -> physical network association
- A physical NIC & bond should also assciate to VLAN-network, n-to-n to
represent the idea that you can enable zero or more VLAN interfaces.
In fact this suggests you should have a base class NIC, and sub-classes
for physical, bond & vlan interfaces.
Regards,
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
More information about the ovirt-devel
mailing list