software update provides a new iSCSI software stack via the href='http://opensolaris.org/os/project/comstar/'>COMSTAR framework.
COMSTAR is a Solaris framework which centralizes and simplifies the deployment
of SCSI targets. COMSTAR supports many different SCSI protocols, including
iSCSI, fibre channel, iSER, with support for more protocols under development.
In 2009.Q3, the COMSTAR iSCSI port provider has replaced the older iSCSI target
daemon. This new COMSTAR iSCSI provider replaces the entire iSCSI stack, from
the management of iSCSI targets and initiators down to the interactions with the
underlying ZFS volume. COMSTAR provides href='http://blogs.sun.com/roch/entry/iscsi_unleashed'>improved performance,
as well as a more flexible management model. In this blog entry, I'll explain
the new management
model as well as talk about the advantages of using this new framework.
With the iSCSI target daemon in the 2009.Q2 update, every LUN was advertised
within its own iSCSI target. As a result, initiators could hit built-in limits
which prevent discovery of all necessary targets. Moreover, managing these
targets did not scale well as the number of LUNs on the system increased.
Access to a LUN was controlled by that LUN's ACL, a list of initiators which
were able to access that LUN.
The administrative model used with the COMSTAR framework has some key
differences and advantages. This model breaks this one-to-one mapping of LUN to
target, and instead allows an administrator to advertise multiple LUNs behind a
single target. Each LUN participates in a target group, a set of iSCSI targets
which all advertise that LUN. In addition, each LUN has its own initiator
group, a list of initiators not unlike the previous software's initiator ACL.
This group defines which initiators may access LUNs bound to that initiator
group, as well as the CHAP parameters to expect if CHAP authentication is
Target and initiator groups define sets of targets and initiators
which are associated with LUNs. Besides any user-created target and initiator
groups, LUNs may be associated with the default target and initiator group.
These default groups contain all targets and all initiators, respectively.
While using the default target and initiator group can be useful for evaluation
purposes, their use is discouraged since their use may expose the LUN to
In addition to the flexible mapping of LUNs to targets, the COMSTAR iSCSI stack
also allows targets to be bound to network interfaces:
 In some circumstances, traffic to or from and iSCSI target on one interface
may travel on a different interface. With certain network configurations (like
multiple default routes on the system), the routing configuration will dictate
that traffic must use certain interfaces which conflict with the iSCSI