Subject: RE: A couple of iFCP questions

From: Joshua Tseng <[email-masked]>
Date: Thu, 21 Dec 2000 19:17:45 -0800

David,

> 
> A couple of questions about iFCP:
> 
> (1) iFCP has been described as NAT-like in translating
> 24-bit FC identifiers (S_ID and D_ID) to an IP address of
> another iFCP gateway and a 24 bit identifier with respect
> to that gateway.  The iFCP document describes how
> translations are accumulated by an iFCP gateway.  How
> are they discarded?  To be specific, when and under
> what circumstances is it safe for a gateway to discard
> a (no longer used) translation, and what are the consequences
> of an erroneous discard?

It is safe to discard a translation when there are no active N_PORT
sessions for a remote N_PORT.  In that case, the iFCP gateway SHOULD
invalidate and remove the mapping to that remote N_PORT.  Of course,
even if it doesn't, a device establishing a new N_PORT session has the
responsibility of validating any pre-existing mapping by checking WWPN's
of the remote device.

An erroneous discard of an FC_ID mapping would be the result of a bug,
and we would consider it to be fatal iFCP gateway error.  While the
handling of such an error is implementation-specific, we would expect
some sort of fail-safe behavior.

In Fibre Channel, the fabric is responsible for assigning
the FC identifiers (used in S_ID and D_ID).  The iFCP gateway
will emulate this behavior in response to the FLOGI by assigning
its own locally-significant (to that particular iFCP gateway)
FC identifiers.  The behavior of the iFCP gateway should be no
different from any other FC fabric with regard to address assignment
and reassignment.
> 
> (2) If an FC fabric were to be connected to an iFCP gateway,
> the fabric may change how the 24 bit identifiers
> are mapped to ports (as identified by Port WWN) in some
> circumstances (recabling can cause this).  When
> such a change occurs, does this invalidate translations
> in other iFCP gateways?  If yes, how do those gateways find
> out/get updated translations in a fashion that ensures traffic
> will not be delivered to the wrong FC port?  If not, what
> does the first iFCP gateway do to preserve the old versions
> of the changed translations?

Anything resulting in a change to the value
of the 24-bit FC identifiers would be a major event, in
both FC and iFCP.  If it should occur, the iFCP gateway shall
immediately terminate the N_PORT sessions and supporting TCP
connections affected by the changed FC identifier.  This
includes events such as LIPs and cable disconnect.  Following
such an event, the iFCP gateways should automatically update
their FC_ID mappings in the normal process of re-establishing
N_PORT sessions.

iSNS facilitates the interoperation among iFCP gateways.  iSNS
is how other iFCP gateways learn of the FC identifier mappings
to IP address and WWPN.  If these mappings are changed, the iFCP
gateway shall register the change in the iSNS (and as mentioned
before, the old N_PORT sessions will be terminated).  The iSNS server
in turn, will issue state change notifications to all affected
iFCP gateways, informing them of the new 24-bit FC identifer
mappings.  

Josh
> 
> Thanks,
> --David
> 
> ---------------------------------------------------
> David L. Black, Senior Technologist
> EMC Corporation, 42 South St., Hopkinton, MA  01748
> +1 (508) 435-1000 x75140     FAX: +1 (508) 497-8500
> [email-masked]       Mobile: +1 (978) 394-7754
> ---------------------------------------------------
> >