What’s next?
The [crossbow] project allows the system administrator to carve out any physical NIC into multiple virtual NICs which are pretty similar to real NICs and are administered just like real NICs. Each Virtual NIC can be assigned its own priority and band-width on a shared NIC without causing any performance degradation. The virtual NICs can have their own NIC hardware resources (Rx/Tx rings, DMA channels), MAC addresses, kernel threads and queues which are private to the VNIC and are not shared accross all traffic. In case of Solaris Containers, the Container can be assigned a virtual Stack Instance as well along with one or more virtual NICs. As such traffic for one VNIC can be totally isolated from other traffic and assigned any kind of limits or guarantees on amount of bandwidth it can use.
In plain English, Crossbow is about virtulization of the networking subsystem, not only does it allow you to divide a single network device, but it can aggregate several devices into one, and share them how ever you like, 80% bandwidth to http, 10% to email, 5% to irc, 5% to my game, but I want my game packets to have priority over the rest. Yes this isn’t new, Most OS’s allow you to do these things, but this just scratches the surface of what this can do. And it does it in simple English; here is an example of it being used inside a zone setup
zonecfg -z new_zone
zonecfg:new_zone> create
zonecfg:new_zone> net phys=bge1
zonecfg:new_zone> net virt=eth0
zonecfg:new_zone> net bw=30Mbps
zonecfg:new_zone> net pri=hi
zonecfg:new_zone> net ip_addr=a.b.c.d
No more resorting to studying 30page how-to’s which even the experts barely understand. This will be one integrated solution, no more editing one config file for the router, then go make changes to the firewall, then go the network config files and add another alias, this will be edit once or at least use one set of admin commands and your done. This system aims to work with Zones, and Xen, so you create a new virtual nic, and allocate its resources as you see fit.
The user of the NIC sees its data, if you grant it 1MBit of bandwidth, it sees only its traffic, nothing more, nothing less. The NIC even looks like the size the admin configured it as; he can also choose the name of the NIC as well.
The administrator has even more control than this, since this is part of the kernel, it can control the hardware interface to a greater degree than it has in the past and benefit from the on board intelligent of the latest cards. The crossbow frame work will emulate the features on older cards so even the old NIC’s benefit. With the new NICs you will be able to configure the NIC only to generate interrupts on packets we want to see, like ones that are going to the web server, then the driver will grab the rest when it has time, or let them drop in the bit bucket, it can even give certain packets priority, once a user has logged in, his web traffic is dealt with first. The rest we will deal with when it has time until he logs in of course.
They are still in the beginning stages, but they have released there first public version, find links to the packages at the opensolaris link below. They are only binaries at the moment but Source code is due shortly.
Resources:
http://blogs.sun.com/aland/resource/crossbow.pdf http://www.opensolaris.org/os/project/crossbow/











1 Comments:
Your links got jammed together :)
Post a Comment
<< Home