RE: DCB support for iSCSI

2011-01-06 Thread Shyam_Iyer


> -Original Message-
> From: Mike Christie [mailto:micha...@cs.wisc.edu]
> Sent: Monday, January 03, 2011 3:39 PM
> To: open-iscsi@googlegroups.com
> Cc: Iyer, Shyam; mark.d.rus...@intel.com
> Subject: Re: DCB support for iSCSI
> 
> On 12/22/2010 11:22 PM, shyam_i...@dell.com wrote:
> >> VLAN creation.
> >>  From what I've seen iSCSI support in DCB would work similar
> >> to FCoE, ie the iSCSI traffic will be sent via a separate
> >> VLAN. Which we would need to create, eventually.
> >> So basically we would need something similar to 'fipvlan'
> >> or integrate this functionality into open-iscsi.
> >
> > Well there are more methods actually. Separating them into separate
> VLAN's would tag them to the priority of the VLAN(8 in all) however
> sometimes the tag is based on the application type port number.
> >
> > So, in the iSCSI case the well known port number 3260 becomes the
> priority decider.
> >
> 
> I actually broke the code to support ports other than 3260 in a rhel
> test release, and so I know people use other ports in real life setups
> :) I would bet the vast majority of times it is 3260, but it is not
> always so I do not think you can count on it if that is what you are
> saying.
> 
The spec tries to make it easy by assigning a priority tag based on the 
application's well known port number. As long as the lldp peers know what port 
number to use for priority tagging it should be fine.

> 
> > Usecase - Tag all iSCSI traffic to a specific port type in a
> virtualized environment. Its very cumbersome to manage vlans in the
> virtualized environments.
> >
> > Also ETS determines that within the same priority group the bandwidth
> could be split further. Now, this could be per connection.  My hunch is
> that we need more flexible ways of splitting the bandwidth within a
> priority group per connection via the lldpad.
> >
> 
> What is ETS?
Sorry for the acronym.. It means enhanced transmission selection. This link is 
pretty good.. 
http://www.ieee802.org/1/files/public/docs2008/az-wadekar-ets-proposal-0608-v1.01.pdf

-- 
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



RE: DCB support for iSCSI

2011-01-04 Thread Rustad, Mark D
Mike,

> -Original Message-
> From: open-iscsi@googlegroups.com [mailto:open-is...@googlegroups.com]
> On Behalf Of Mike Christie
> Sent: Monday, January 03, 2011 12:48 PM
> To: open-iscsi@googlegroups.com
> Cc: Rustad, Mark D; shyam_i...@dell.com
> Subject: Re: DCB support for iSCSI
> 
> So you are thinking that you would have one interface on the
> initiator that is connected to 2 targets portals, and the
> connection to each target portal would need a different priority?
> That sounds like something that would happen.

I don't know myself if it could be a "need" or if it only might be a "want".

> So would then the iscsi query lldpad with the interface and
> application info. Then lldpad sends the priority mask. iscsi then
> looks up user specified info (a target address,port,interface to
> priority map) and then set the priority?

Yes. At least that seemed like the most potentially valuable way to use the 
priority mask returned from lldpad. Of course if the returned mask only has a 
single bit, then there is no opportunity to further distinguish priorities. 
When multiple bits are returned, then additional information available to 
iscsid could be used to control that.

In my initial work I believe that I will ignore this possibility and simply set 
the highest priority indicated in the mask, but know that the opportunity 
exists for more specific control by coordinating the DCB application priority 
assignment with some iscsi configuration.

When the additional work is done, I would suggest that the iscsi priorities 
used in this context simply be an offset into the mask. That is, 1 would be the 
highest in the mask, 2 the next-to-highest and so forth. That way, the DCB 
configuration could change and iscsid would still do something sensible.

-- 
Mark Rustad, mark.d.rus...@intel.com

-- 
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



Re: DCB support for iSCSI

2011-01-03 Thread Mike Christie

On 12/23/2010 01:35 PM, Rustad, Mark D wrote:

Mike,


-Original Message-
From: open-iscsi@googlegroups.com [mailto:open-is...@googlegroups.com]
On Behalf Of Mike Christie
Sent: Tuesday, December 21, 2010 6:54 PM
To: open-iscsi@googlegroups.com
Cc: Rustad, Mark D
Subject: Re: DCB support for iSCSI

Does you guys know what is up with iscsi offload? Have you guys talked
to them? For something like be2iscsi it seems like it would be done all
in hardware/firmware so like the emulex fcoe driver, lpfc, it would not
use lldpad. But maybe some of the iscsi offload cards that do a lot in
software and do more of direct data placement type of offload, how
would
that work?


I really don't know anything about the offload solutions. It seems to me that 
if DCB, FCoE and iSCSI are all off-loaded, then it is all a matter of how that 
particular product is configured. Perhaps a more interesting case would be a 
product that offloads DCB and FCoE, but not iSCSI. Then iSCSI would have to get 
information out of the offloaded DCB solution.

Hmmm. Could lldpad become a client of such a solution to provide the same 
information to other applications? That seems to me like the best place to deal 
with it if that is possible.



Ok agree. So not my problem :)

--
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



Re: DCB support for iSCSI

2011-01-03 Thread Mike Christie

On 12/17/2010 11:55 AM, Rustad, Mark D wrote:

Hi all,

I am looking into adding support for DCB into iSCSI. I think it is best to do 
this in a way that will not require a strong dependency on DCB for iSCSI. That 
is, installing open-iscsi should not then require open-lldp to also be 
installed. I see at least two ways to do this.

The first is to have open-lldp supply a library that iscsid can link with at 
run time (through dlopen/dlsym). In that way, if the library is not there, 
iscsid can go on as usual. It also allows lldpad more freedom to change over 
time.

The second way is to put a little more code directly in iscsid and have it 
interrogate lldpad for the proper priority to set. If the lldpad socket isn't 
there, iscsid can go on as usual. I am thinking that open-lldp can supply the 
source files that would be placed directly into open-iscsi and updated as 
needed. These source files might also be used by other network applications 
that want to participate fully in a DCB environment.

I had been leaning toward the first way until I started thinking about 
iscsistart and initrds. Then it seemed that the run-time linkage would create 
more trouble than it would be worth. It started to seem like over-engineering.



Either one is ok with me.

But I think #1 is going to be easier for boot as you mention. To support 
fcoe boot now, distros throw lldpad in the intramfs/initrds already, 
right? So I guess this would make support iscsi dcb easier as there is 
not much new stuff to do.


--
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



Re: DCB support for iSCSI

2011-01-03 Thread Mike Christie

On 12/23/2010 01:23 PM, Rustad, Mark D wrote:

Shyam,


-Original Message-
From: shyam_i...@dell.com [mailto:shyam_i...@dell.com]
Sent: Wednesday, December 22, 2010 9:23 PM
To: open-iscsi@googlegroups.com
Cc: Rustad, Mark D
Subject: RE: DCB support for iSCSI


-Original Message-
From: open-iscsi@googlegroups.com [mailto:open-

is...@googlegroups.com]

On Behalf Of Hannes Reinecke
Sent: Monday, December 20, 2010 6:47 AM
To: open-iscsi@googlegroups.com
Cc: Rustad, Mark D
Subject: Re: DCB support for iSCSI

On 12/17/2010 06:55 PM, Rustad, Mark D wrote:

Hi all,

I am looking into adding support for DCB into iSCSI. I think
it is best to do this in a way that will not require a strong
dependency on DCB for iSCSI. That is, installing open-iscsi
should not then require open-lldp to also be installed. I see
at least two ways to do this.

The first is to have open-lldp supply a library that iscsid
can link with at run time (through dlopen/dlsym). In that way,
if the library is not there, iscsid can go on as usual. It
also allows lldpad more freedom to change over time.

The second way is to put a little more code directly in
iscsid and have it interrogate lldpad for the proper priority
to set. If the lldpad socket isn't there, iscsid can go on as
usual. I am thinking that open-lldp can supply the source files
that would be placed directly into open-iscsi and updated as
needed. These source files might also be used by other network
applications that want to participate fully in a DCB environment.

I had been leaning toward the first way until I started thinking
about iscsistart and initrds. Then it seemed that the run-time
linkage would create more trouble than it would be worth.
It started to seem like over-engineering.


I would prefer the second method.
DCB configuration itself is quite involved and requires to
negotiate the transfer parameter before the connection is setup.
And as DCB is in fact quite a different beast from iSCSI we
should keep it as a separate daemon.
Which would also be in-line with the current fcoeadm setup.


I  would also prefer a dcb client like that allows configuring for
iSCSI traffic.  I do need an open-lldpad as a library though but that
is to integrate the library with libvirt to keep the architecture clean
and not have libvirt call various exec commands to configure dcb for
VMs.


In either case, I was thinking about adding code right before
the connect() call in iscsi_io_tcp_connect to set the socket
options based on information from lldpad. Is anything more
than that needed (besides doing something similar in iscsistart)?


VLAN creation.
 From what I've seen iSCSI support in DCB would work similar
to FCoE, ie the iSCSI traffic will be sent via a separate
VLAN. Which we would need to create, eventually.
So basically we would need something similar to 'fipvlan'
or integrate this functionality into open-iscsi.


Well there are more methods actually. Separating them into separate
VLAN's would tag them to the priority of the VLAN(8 in all) however
sometimes the tag is based on the application type port number.


Exactly. That is what I am trying to support by querying lldpad as to what the 
priority should be for the application, iscsi in this case.


So, in the iSCSI case the well known port number 3260 becomes the
priority decider.


Except when the system is set up to use a non-standard port. If one could count 
on the standard port always being used, this could be handled in the kernel and 
be directly controlled by lldpad. At least if all of the iscsi traffic on an 
interface should be at the same priority.


Usecase - Tag all iSCSI traffic to a specific port type in a
virtualized environment. Its very cumbersome to manage vlans in the
virtualized environments.

Also ETS determines that within the same priority group the bandwidth
could be split further. Now, this could be per connection.  My hunch is
that we need more flexible ways of splitting the bandwidth within a
priority group per connection via the lldpad.


I had been wondering if target address should also be considered in setting the 
priority. I had mainly been considering interface and application just because 
that seems to be what lldpad knows and cares about. Of course, lldpad returns a 
mask of allowed priorities for an application, so iscsid could choose among 
those priorities. So it would seem that additional iscsi configuration would be 
required to add target address into the priority selection scheme. Is this a 
desirable addition to open-iscsi?



So you are thinking that you would have one interface on the initiator 
that is connected to 2 targets portals, and the connection to each 
target portal would need a different priority? That sounds like 
something that would happen.


So would then the iscsi query lldpad with the interface and application 
info. Then lldpad sends the priority mask. iscsi then looks up user 
specified info (a target address,port,inter

Re: DCB support for iSCSI

2011-01-03 Thread Mike Christie

On 12/22/2010 11:22 PM, shyam_i...@dell.com wrote:

VLAN creation.
 From what I've seen iSCSI support in DCB would work similar
to FCoE, ie the iSCSI traffic will be sent via a separate
VLAN. Which we would need to create, eventually.
So basically we would need something similar to 'fipvlan'
or integrate this functionality into open-iscsi.


Well there are more methods actually. Separating them into separate VLAN's 
would tag them to the priority of the VLAN(8 in all) however sometimes the tag 
is based on the application type port number.

So, in the iSCSI case the well known port number 3260 becomes the priority 
decider.



I actually broke the code to support ports other than 3260 in a rhel 
test release, and so I know people use other ports in real life setups 
:) I would bet the vast majority of times it is 3260, but it is not 
always so I do not think you can count on it if that is what you are saying.




Usecase - Tag all iSCSI traffic to a specific port type in a virtualized 
environment. Its very cumbersome to manage vlans in the virtualized 
environments.

Also ETS determines that within the same priority group the bandwidth could be 
split further. Now, this could be per connection.  My hunch is that we need 
more flexible ways of splitting the bandwidth within a priority group per 
connection via the lldpad.



What is ETS?

--
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



RE: DCB support for iSCSI

2010-12-23 Thread Rustad, Mark D
Mike,

> -Original Message-
> From: open-iscsi@googlegroups.com [mailto:open-is...@googlegroups.com]
> On Behalf Of Mike Christie
> Sent: Tuesday, December 21, 2010 6:54 PM
> To: open-iscsi@googlegroups.com
> Cc: Rustad, Mark D
> Subject: Re: DCB support for iSCSI
> 
> Does you guys know what is up with iscsi offload? Have you guys talked
> to them? For something like be2iscsi it seems like it would be done all
> in hardware/firmware so like the emulex fcoe driver, lpfc, it would not
> use lldpad. But maybe some of the iscsi offload cards that do a lot in
> software and do more of direct data placement type of offload, how
> would
> that work?

I really don't know anything about the offload solutions. It seems to me that 
if DCB, FCoE and iSCSI are all off-loaded, then it is all a matter of how that 
particular product is configured. Perhaps a more interesting case would be a 
product that offloads DCB and FCoE, but not iSCSI. Then iSCSI would have to get 
information out of the offloaded DCB solution.

Hmmm. Could lldpad become a client of such a solution to provide the same 
information to other applications? That seems to me like the best place to deal 
with it if that is possible.

-- 
Mark Rustad, mark.d.rus...@intel.com

-- 
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



RE: DCB support for iSCSI

2010-12-23 Thread Rustad, Mark D
Shyam,

> -Original Message-
> From: shyam_i...@dell.com [mailto:shyam_i...@dell.com]
> Sent: Wednesday, December 22, 2010 9:23 PM
> To: open-iscsi@googlegroups.com
> Cc: Rustad, Mark D
> Subject: RE: DCB support for iSCSI
> 
> > -Original Message-
> > From: open-iscsi@googlegroups.com [mailto:open-
> is...@googlegroups.com]
> > On Behalf Of Hannes Reinecke
> > Sent: Monday, December 20, 2010 6:47 AM
> > To: open-iscsi@googlegroups.com
> > Cc: Rustad, Mark D
> > Subject: Re: DCB support for iSCSI
> >
> > On 12/17/2010 06:55 PM, Rustad, Mark D wrote:
> > > Hi all,
> > >
> > > I am looking into adding support for DCB into iSCSI. I think
> > > it is best to do this in a way that will not require a strong
> > > dependency on DCB for iSCSI. That is, installing open-iscsi
> > > should not then require open-lldp to also be installed. I see
> > > at least two ways to do this.
> > >
> > > The first is to have open-lldp supply a library that iscsid
> > > can link with at run time (through dlopen/dlsym). In that way,
> > > if the library is not there, iscsid can go on as usual. It
> > > also allows lldpad more freedom to change over time.
> > >
> > > The second way is to put a little more code directly in
> > > iscsid and have it interrogate lldpad for the proper priority
> > > to set. If the lldpad socket isn't there, iscsid can go on as
> > > usual. I am thinking that open-lldp can supply the source files
> > > that would be placed directly into open-iscsi and updated as
> > > needed. These source files might also be used by other network
> > > applications that want to participate fully in a DCB environment.
> > >
> > > I had been leaning toward the first way until I started thinking
> > > about iscsistart and initrds. Then it seemed that the run-time
> > > linkage would create more trouble than it would be worth.
> > > It started to seem like over-engineering.
> > >
> > I would prefer the second method.
> > DCB configuration itself is quite involved and requires to
> > negotiate the transfer parameter before the connection is setup.
> > And as DCB is in fact quite a different beast from iSCSI we
> > should keep it as a separate daemon.
> > Which would also be in-line with the current fcoeadm setup.
> 
> I  would also prefer a dcb client like that allows configuring for
> iSCSI traffic.  I do need an open-lldpad as a library though but that
> is to integrate the library with libvirt to keep the architecture clean
> and not have libvirt call various exec commands to configure dcb for
> VMs.
> 
> > > In either case, I was thinking about adding code right before
> > > the connect() call in iscsi_io_tcp_connect to set the socket
> > > options based on information from lldpad. Is anything more
> > > than that needed (besides doing something similar in iscsistart)?
> > >
> > VLAN creation.
> > From what I've seen iSCSI support in DCB would work similar
> > to FCoE, ie the iSCSI traffic will be sent via a separate
> > VLAN. Which we would need to create, eventually.
> > So basically we would need something similar to 'fipvlan'
> > or integrate this functionality into open-iscsi.
> 
> Well there are more methods actually. Separating them into separate
> VLAN's would tag them to the priority of the VLAN(8 in all) however
> sometimes the tag is based on the application type port number.

Exactly. That is what I am trying to support by querying lldpad as to what the 
priority should be for the application, iscsi in this case.

> So, in the iSCSI case the well known port number 3260 becomes the
> priority decider.

Except when the system is set up to use a non-standard port. If one could count 
on the standard port always being used, this could be handled in the kernel and 
be directly controlled by lldpad. At least if all of the iscsi traffic on an 
interface should be at the same priority.

> Usecase - Tag all iSCSI traffic to a specific port type in a
> virtualized environment. Its very cumbersome to manage vlans in the
> virtualized environments.
> 
> Also ETS determines that within the same priority group the bandwidth
> could be split further. Now, this could be per connection.  My hunch is
> that we need more flexible ways of splitting the bandwidth within a
> priority group per connection via the lldpad.

I had been wondering if target address should also be considered in setting the 
priority. I had mainly been considering interface and application just because 
that seems to be wha

RE: DCB support for iSCSI

2010-12-22 Thread Shyam_Iyer
> -Original Message-
> From: open-iscsi@googlegroups.com [mailto:open-is...@googlegroups.com]
> On Behalf Of Hannes Reinecke
> Sent: Monday, December 20, 2010 6:47 AM
> To: open-iscsi@googlegroups.com
> Cc: Rustad, Mark D
> Subject: Re: DCB support for iSCSI
> 
> On 12/17/2010 06:55 PM, Rustad, Mark D wrote:
> > Hi all,
> >
> > I am looking into adding support for DCB into iSCSI. I think
> > it is best to do this in a way that will not require a strong
> > dependency on DCB for iSCSI. That is, installing open-iscsi
> > should not then require open-lldp to also be installed. I see
> > at least two ways to do this.
> >
> > The first is to have open-lldp supply a library that iscsid
> > can link with at run time (through dlopen/dlsym). In that way,
> > if the library is not there, iscsid can go on as usual. It
> > also allows lldpad more freedom to change over time.
> >
> > The second way is to put a little more code directly in
> > iscsid and have it interrogate lldpad for the proper priority
> > to set. If the lldpad socket isn't there, iscsid can go on as
> > usual. I am thinking that open-lldp can supply the source files
> > that would be placed directly into open-iscsi and updated as
> > needed. These source files might also be used by other network
> > applications that want to participate fully in a DCB environment.
> >
> > I had been leaning toward the first way until I started thinking
> > about iscsistart and initrds. Then it seemed that the run-time
> > linkage would create more trouble than it would be worth.
> > It started to seem like over-engineering.
> >
> I would prefer the second method.
> DCB configuration itself is quite involved and requires to
> negotiate the transfer parameter before the connection is setup.
> And as DCB is in fact quite a different beast from iSCSI we
> should keep it as a separate daemon.
> Which would also be in-line with the current fcoeadm setup.


I  would also prefer a dcb client like that allows configuring for iSCSI 
traffic.  I do need an open-lldpad as a library though but that is to integrate 
the library with libvirt to keep the architecture clean and not have libvirt 
call various exec commands to configure dcb for VMs.

> 
> > In either case, I was thinking about adding code right before
> > the connect() call in iscsi_io_tcp_connect to set the socket
> > options based on information from lldpad. Is anything more
> > than that needed (besides doing something similar in iscsistart)?
> >
> VLAN creation.
> From what I've seen iSCSI support in DCB would work similar
> to FCoE, ie the iSCSI traffic will be sent via a separate
> VLAN. Which we would need to create, eventually.
> So basically we would need something similar to 'fipvlan'
> or integrate this functionality into open-iscsi.

Well there are more methods actually. Separating them into separate VLAN's 
would tag them to the priority of the VLAN(8 in all) however sometimes the tag 
is based on the application type port number.

So, in the iSCSI case the well known port number 3260 becomes the priority 
decider. 

Usecase - Tag all iSCSI traffic to a specific port type in a virtualized 
environment. Its very cumbersome to manage vlans in the virtualized 
environments.

Also ETS determines that within the same priority group the bandwidth could be 
split further. Now, this could be per connection.  My hunch is that we need 
more flexible ways of splitting the bandwidth within a priority group per 
connection via the lldpad.

> 
> > The socket protocol to lldpad is already versioned, so that
> > should prevent any terribly rude surprises in the future should
> > mismatched components be used together.
> >
> > Does this sound reasonable to you? Would you rather see it done
> > in a different way? Would you prefer for iscsid to simply send
> > a file descriptor to the lldpad socket and have lldpad set the
> > socket options itself?
> >
> Ugh. No. As mentioned, I fear we would need to setup a VLAN
> interface here, in which case we would be running off a
> totally different socket anyway.
> 
> Cheers,
> 
> Hannes
> --
> Dr. Hannes Reinecke zSeries & Storage
> h...@suse.de+49 911 74053 688
> SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
> GF: Markus Rex, HRB 16746 (AG Nürnberg)
> 

Thanks,
Shyam Iyer

-- 
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



Re: DCB support for iSCSI

2010-12-21 Thread Mike Christie

On 12/17/2010 11:55 AM, Rustad, Mark D wrote:

Hi all,

I am looking into adding support for DCB into iSCSI. I think it is best to do 
this in a way that will not require a strong dependency on DCB for iSCSI. That 
is, installing open-iscsi should not then require open-lldp to also be 
installed. I see at least two ways to do this.

The first is to have open-lldp supply a library that iscsid can link with at 
run time (through dlopen/dlsym). In that way, if the library is not there, 
iscsid can go on as usual. It also allows lldpad more freedom to change over 
time.

The second way is to put a little more code directly in iscsid and have it 
interrogate lldpad for the proper priority to set. If the lldpad socket isn't 
there, iscsid can go on as usual. I am thinking that open-lldp can supply the 
source files that would be placed directly into open-iscsi and updated as 
needed. These source files might also be used by other network applications 
that want to participate fully in a DCB environment.

I had been leaning toward the first way until I started thinking about 
iscsistart and initrds. Then it seemed that the run-time linkage would create 
more trouble than it would be worth. It started to seem like over-engineering.

In either case, I was thinking about adding code right before the connect() 
call in iscsi_io_tcp_connect to set the socket options based on information 
from lldpad. Is anything more than that needed (besides doing something similar 
in iscsistart)?



iscsistart uses the same code as iscsid, so you only need to change that 
io.c iscsi_io_tcp_connect call.



The socket protocol to lldpad is already versioned, so that should prevent any 
terribly rude surprises in the future should mismatched components be used 
together.

Does this sound reasonable to you? Would you rather see it done in a different 
way? Would you prefer for iscsid to simply send a file descriptor to the lldpad 
socket and have lldpad set the socket options itself?



Does you guys know what is up with iscsi offload? Have you guys talked 
to them? For something like be2iscsi it seems like it would be done all 
in hardware/firmware so like the emulex fcoe driver, lpfc, it would not 
use lldpad. But maybe some of the iscsi offload cards that do a lot in 
software and do more of direct data placement type of offload, how would 
that work?


--
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



RE: DCB support for iSCSI

2010-12-20 Thread Rustad, Mark D
> -Original Message-
> From: Hannes Reinecke [mailto:h...@suse.de]
> Sent: Monday, December 20, 2010 3:47 AM
> To: open-iscsi@googlegroups.com
> Cc: Rustad, Mark D
> Subject: Re: DCB support for iSCSI
> 
> On 12/17/2010 06:55 PM, Rustad, Mark D wrote:
> > Hi all,
> >
> > I am looking into adding support for DCB into iSCSI. I think
> > it is best to do this in a way that will not require a strong
> > dependency on DCB for iSCSI. That is, installing open-iscsi
> > should not then require open-lldp to also be installed. I see
> > at least two ways to do this.
> >
> > The first is to have open-lldp supply a library that iscsid
> > can link with at run time (through dlopen/dlsym). In that way,
> > if the library is not there, iscsid can go on as usual. It
> > also allows lldpad more freedom to change over time.
> >
> > The second way is to put a little more code directly in
> > iscsid and have it interrogate lldpad for the proper priority
> > to set. If the lldpad socket isn't there, iscsid can go on as
> > usual. I am thinking that open-lldp can supply the source files
> > that would be placed directly into open-iscsi and updated as
> > needed. These source files might also be used by other network
> > applications that want to participate fully in a DCB environment.
> >
> > I had been leaning toward the first way until I started thinking
> > about iscsistart and initrds. Then it seemed that the run-time
> > linkage would create more trouble than it would be worth.
> > It started to seem like over-engineering.
> >
> I would prefer the second method.
> DCB configuration itself is quite involved and requires to
> negotiate the transfer parameter before the connection is setup.
> And as DCB is in fact quite a different beast from iSCSI we
> should keep it as a separate daemon.
> Which would also be in-line with the current fcoeadm setup.

In both of my approaches the DCB configuration would be done as it is now. The 
only question is how to get the proper priority applied to the sockets being 
used for iscsi traffic. This is about getting that information from lldpad to 
iscsid.

> > In either case, I was thinking about adding code right before
> > the connect() call in iscsi_io_tcp_connect to set the socket
> > options based on information from lldpad. Is anything more
> > than that needed (besides doing something similar in iscsistart)?
> >
> VLAN creation.
> From what I've seen iSCSI support in DCB would work similar
> to FCoE, ie the iSCSI traffic will be sent via a separate
> VLAN. Which we would need to create, eventually.
> So basically we would need something similar to 'fipvlan'
> or integrate this functionality into open-iscsi.

Yes, a VLAN would be the expected setup and that would all have to be done as 
usual.

> > The socket protocol to lldpad is already versioned, so that
> > should prevent any terribly rude surprises in the future should
> > mismatched components be used together.
> >
> > Does this sound reasonable to you? Would you rather see it done
> > in a different way? Would you prefer for iscsid to simply send
> > a file descriptor to the lldpad socket and have lldpad set the
> > socket options itself?
> >
> Ugh. No. As mentioned, I fear we would need to setup a VLAN
> interface here, in which case we would be running off a
> totally different socket anyway.

I am sure that my use of socket has been confusing. There is the UNIX socket 
used to communicate locally with lldpad, which is of course completely separate 
from the iscsi INET sockets managed by iscsid. The last idea I threw out there 
was the possibility of iscsid sending its iscsi sockets to the lldpad socket to 
allow lldpad to set whatever socket options it wants on them. The more typical 
alternative would be for iscsid to query lldpad over lldpad's socket and then 
apply socket options to its iscsi sockets based on information provided by 
lldpad. The socket-passing option could allow the lldpad/kernel networking 
relationship to evolve more independently from other user-space networking 
apps, but is a little obscure and suggests that apps would trust lldpad with 
their sockets.

Anyway, the query to lldpad would provide an indication of what the application 
is (iscsi of course in this case) and the interface name for the session. 
lldpad would respond with the configured priority for that application and 
interface, which would normally happen to be a VLAN interface when DCB is in 
use.

-- 
Mark Rustad, mark.d.rus...@intel.com


-- 
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



Re: DCB support for iSCSI

2010-12-20 Thread Hannes Reinecke
On 12/17/2010 06:55 PM, Rustad, Mark D wrote:
> Hi all,
> 
> I am looking into adding support for DCB into iSCSI. I think
> it is best to do this in a way that will not require a strong
> dependency on DCB for iSCSI. That is, installing open-iscsi
> should not then require open-lldp to also be installed. I see
> at least two ways to do this.
> 
> The first is to have open-lldp supply a library that iscsid
> can link with at run time (through dlopen/dlsym). In that way,
> if the library is not there, iscsid can go on as usual. It
> also allows lldpad more freedom to change over time.
> 
> The second way is to put a little more code directly in
> iscsid and have it interrogate lldpad for the proper priority
> to set. If the lldpad socket isn't there, iscsid can go on as
> usual. I am thinking that open-lldp can supply the source files
> that would be placed directly into open-iscsi and updated as
> needed. These source files might also be used by other network
> applications that want to participate fully in a DCB environment.
> 
> I had been leaning toward the first way until I started thinking
> about iscsistart and initrds. Then it seemed that the run-time
> linkage would create more trouble than it would be worth.
> It started to seem like over-engineering.
> 
I would prefer the second method.
DCB configuration itself is quite involved and requires to
negotiate the transfer parameter before the connection is setup.
And as DCB is in fact quite a different beast from iSCSI we
should keep it as a separate daemon.
Which would also be in-line with the current fcoeadm setup.

> In either case, I was thinking about adding code right before
> the connect() call in iscsi_io_tcp_connect to set the socket
> options based on information from lldpad. Is anything more
> than that needed (besides doing something similar in iscsistart)?
> 
VLAN creation.
>From what I've seen iSCSI support in DCB would work similar
to FCoE, ie the iSCSI traffic will be sent via a separate
VLAN. Which we would need to create, eventually.
So basically we would need something similar to 'fipvlan'
or integrate this functionality into open-iscsi.

> The socket protocol to lldpad is already versioned, so that
> should prevent any terribly rude surprises in the future should
> mismatched components be used together.
> 
> Does this sound reasonable to you? Would you rather see it done
> in a different way? Would you prefer for iscsid to simply send
> a file descriptor to the lldpad socket and have lldpad set the
> socket options itself?
> 
Ugh. No. As mentioned, I fear we would need to setup a VLAN
interface here, in which case we would be running off a
totally different socket anyway.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke   zSeries & Storage
h...@suse.de  +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)

-- 
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.



DCB support for iSCSI

2010-12-17 Thread Rustad, Mark D
Hi all,

I am looking into adding support for DCB into iSCSI. I think it is best to do 
this in a way that will not require a strong dependency on DCB for iSCSI. That 
is, installing open-iscsi should not then require open-lldp to also be 
installed. I see at least two ways to do this.

The first is to have open-lldp supply a library that iscsid can link with at 
run time (through dlopen/dlsym). In that way, if the library is not there, 
iscsid can go on as usual. It also allows lldpad more freedom to change over 
time.

The second way is to put a little more code directly in iscsid and have it 
interrogate lldpad for the proper priority to set. If the lldpad socket isn't 
there, iscsid can go on as usual. I am thinking that open-lldp can supply the 
source files that would be placed directly into open-iscsi and updated as 
needed. These source files might also be used by other network applications 
that want to participate fully in a DCB environment.

I had been leaning toward the first way until I started thinking about 
iscsistart and initrds. Then it seemed that the run-time linkage would create 
more trouble than it would be worth. It started to seem like over-engineering.

In either case, I was thinking about adding code right before the connect() 
call in iscsi_io_tcp_connect to set the socket options based on information 
from lldpad. Is anything more than that needed (besides doing something similar 
in iscsistart)?

The socket protocol to lldpad is already versioned, so that should prevent any 
terribly rude surprises in the future should mismatched components be used 
together.

Does this sound reasonable to you? Would you rather see it done in a different 
way? Would you prefer for iscsid to simply send a file descriptor to the lldpad 
socket and have lldpad set the socket options itself?

-- 
Mark Rustad, mark.d.rus...@intel.com

-- 
You received this message because you are subscribed to the Google Groups 
"open-iscsi" group.
To post to this group, send email to open-is...@googlegroups.com.
To unsubscribe from this group, send email to 
open-iscsi+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/open-iscsi?hl=en.