ietf-corpus

rfc-2625

IP and ARP over Fibre Channel

M. Rajagopal, R. Bhagwat, W. Rickard
date1999-06 streamIETF areaint wgipfc statusPROPOSED STANDARD pages63 canonicalhttps://www.rfc-editor.org/rfc/rfc2625 doi10.17487/RFC2625 errataview
The purpose of this document is to specify a way of encapsulating IP and Address Resolution Protocol(ARP) over Fibre Channel and also to describe a mechanism(s) for IP address resolution. [STANDARDS-TRACK]

obsoleted by

Extracted elements (30)

design-rationale §1

IP Multicasting over FC is not supported by this specification because FC multicast is optional with no vendor implementations and no known IP applications over FC require multicast support; FC broadcast can be used as a less-efficient substitute.

ip, multicast

design-rationale §4.2

The ARP HW Type field is set to 0x00-01 (Ethernet) rather than the technically correct 0x00-06 (IEEE 802 networks) because some Ethernet end stations reject frames with HW Type 0x00-06 when FC is bridged to Ethernet, and many translational bridges fail to convert the field as expected.

ip

design-rationale §3.2.1

The IP MTU is limited to 65,280 bytes (rather than the 65,536-byte FC maximum) to allow 256 bytes of overhead headroom for buffer resource allocation at N_Ports; 16 bytes are used by the FC Network_Header and 8 by LLC/SNAP, leaving 232 bytes for future use.

ip

interoperability-note §4.6

A public loop device MUST NOT use the OPN(fr) signal primitive directly for ARP broadcast; it must send the broadcast sequence to the FL_Port at AL_PA=0x00, which propagates the broadcast through the fabric. This differs from the private loop procedure.

ip

interoperability-note §B

InARP (optional) enables a node to discover the IP address of another node after performing PLOGI, given only its WW_PN and Port_ID. InARP uses the same 28-byte ARP packet format with different Op Codes and requires no broadcast since the target's Port_ID is already known.

ip

normative-requirement §3.2.1 SHALL

All implementations SHALL restrict the IP MTU size to 65,280 bytes and the corresponding FC Sequence Payload size to 65,536 bytes.

ip

normative-requirement §3.2.3 SHALL

All implementations SHALL support a FC Data Field size of 52 bytes for ARP: 28-byte ARP Packet, 16-byte FC Network_Header, and 8-byte LLC/SNAP Header.

ip

normative-requirement §7.6 MUST NOT

ARP Server support (well-known address FFFFFC) MUST NOT be used. ARP broadcast support is REQUIRED. ARP requests SHALL use Class 3 service; ARP replies may use Class 1, 2, or 3.

ip

normative-requirement §3.3 SHALL

Both Source and Destination 4-bit NAA identifiers in the FC Network_Header SHALL be set to binary '0001', indicating an IEEE 48-bit MAC address in the lower 48 bits of the network address fields; the high-order 12 bits SHALL be set to 0x0000.

ip

normative-requirement §5.6 SHALL

If an implementation issues a FARP-REQ with an optional Match Address Code Point and fails to receive a response, the implementation SHALL reattempt the FARP-REQ with the MATCH_WW_PN Code Point (b'001').

ip

normative-requirement §5.6 REQUIRED

Responder action (FARP-REPLY and/or Port Login) for a successful MATCH_WW_PN is always REQUIRED. Recipients of the FARP-REQ ELS SHALL NOT issue a Service Reject (LS_RJT) if FARP optional mechanisms are not supported.

ip

normative-requirement §4.2 SHALL

The ARP 'HW Type' field SHALL be set to 0x00-01; however, both 0x00-01 and 0x00-06 SHALL be accepted. The 'Protocol' field SHALL be 0x08-00 (IP), 'HW Addr Length' SHALL be 0x06, and 'Protocol Addr Length' SHALL be 0x04.

ip

normative-requirement §3.1 SHALL

The FC Network_Header SHALL be REQUIRED in all ARP packets and in the first frame of every logical FC Sequence carrying an IP payload; other optional FC headers (Association_Header, Device_Header) SHALL NOT be used.

ip

normative-requirement §7.1 MUST

The FC TYPE field in the FC Header MUST indicate ISO 8802-2 LLC/SNAP Encapsulation (Type 5) for all FC-4 IP and ARP packets. The DF_CTL field MUST indicate the presence of a Network_Header on the first logical frame of FC-4 sequences.

ip

normative-requirement §3.4 SHALL

The LLC Header value SHALL be set to 0xAA-AA-03; other values of DSAP/SSAP SHALL NOT be used. The SNAP OUI SHALL be 0x00-00-00 with PID 0x08-00 for IP and 0x08-06 for ARP/InARP.

ip

protocol-element §4.1

Address resolution requires two levels of mapping: (1) IP address to WW_PN (handled by ARP), and (2) WW_PN to Port_ID (handled by FARP). Port_IDs are volatile and all mapped Port_IDs MUST be valid before use.

ip

protocol-element §4.4

ARP Broadcasts are sent using topology-specific mechanisms: OPN(fr) primitive on private loops, broadcast to FL_Port at AL_PA=0x00 on public loops (OPN(fr) MUST NOT be used directly), and direct broadcast on fabric topologies. In all cases, D_ID=0xFF-FF-FF with Class 3 and Network_Header destination MAC=0xFF-FF-FF-FF-FF-FF.

ip

protocol-element §5.2

FARP uses two ELS commands—FARP-REQ (broadcast, no reply sequence) and FARP-REPLY (unicast, followed by ACCEPT or REJECT). Login is not required to issue a FARP-REQ or to send a FARP-REPLY. At most one FARP-REPLY is generated per FARP-REQ.

ip

protocol-element §6

FC Exchanges for IP/ARP data SHALL NOT transfer Sequence Initiative (SI). Each N_Port has a dedicated OX_ID per destination N_Port for sending and a dedicated RX_ID for receiving; exchanges operate in unidirectional mode.

ip

protocol-element §5.4

The FARP Match Address Code Points field (3 LSBits) determines matching behavior: b'001' (MATCH_WW_PN, mandatory), b'010' (MATCH_WW_NN, optional), b'100' (MATCH_IPv4, optional), and combinations thereof up to b'111' (MATCH_WW_PN_NN_IPv4, optional).

ip

protocol-element §5.5

The FARP Responder Flags (8-bit field) define actions upon successful address match: bit 0 (INIT_P_LOGI) triggers a Port Login to the requester, bit 1 (INIT_REPLY) triggers sending a FARP-REPLY; both bits may be set simultaneously. If no bits are set, the responder takes no action.

ip

security-consideration §8.2

FC Standards specify a Security Key Server as an optional service, but no known implementations existed at publication time. The previously defined use of a Security Header has been discontinued in FC-PH-3.

security

security-consideration §8.1

IP and ARP over FC do not introduce any new security concerns beyond those already present in Fibre Channel protocols; no special IP/ARP-specific security measures are required.

security, ip

wire-format §3.1

An FC frame consists of SOF (4 bytes), Frame Header (24 bytes), Optional Header (Data Field 0–2112 bytes including Frame Payload and optional headers), CRC (4 bytes), and EOF (4 bytes). The Data Field encompasses both the optional Network_Header and the Frame Payload.

ip

wire-format §5.3

FARP-REQ and FARP-REPLY commands share an identical 76-byte fixed format: command code (4 bytes), Match Address Code Points (1 byte), Port_ID of Requester (3 bytes), Responder Flags (1 byte), Port_ID of Responder (3 bytes), WW_PNs (8 bytes each), optional WW_NNs (8 bytes each), and optional IPv4 address fields (16 bytes each).

ip

wire-format §4.2

The ARP Packet is 28 bytes: HW Type (2 bytes), Protocol (2 bytes), HW Addr Length (1 byte), Protocol Addr Length (1 byte), Op Code (2 bytes), HW Addr of Sender (6 bytes), Protocol Addr of Sender (4 bytes), HW Addr of Target (6 bytes), Protocol Addr of Target (4 bytes).

ip

wire-format §3.4

The complete LLC/SNAP Header is 8 bytes: DSAP (1 byte, 0xAA), SSAP (1 byte, 0xAA), CTRL (1 byte, 0x03), OUI (3 bytes, 0x00-00-00 for routed protocols), and PID (2 bytes, 0x08-00 for IP or 0x08-06 for ARP/InARP).

ip

wire-format §3.3

The FC Network_Header carries 64-bit source and destination World Wide Port Names (WW_PN), each divided into a 4-bit NAA field and a 60-bit Network Address. In this specification the high-order 12 bits of the network address are 0x0000 and the lower 48 bits hold an IEEE MAC address.

ip

wire-format §3.4

The FC Sequence Payload carrying ARP consists of the 8-byte LLC/SNAP Header followed by a 28-byte ARP Packet. ARP maps to a single-frame FC Sequence and always carries the FC Network_Header.

ip

wire-format §3.4

The FC Sequence Payload carrying IP uses an 8-byte LLC/SNAP Header followed by the IPv4 Header (20 bytes fixed), optional IP Header (up to 40 bytes), and IP Data (up to 65280 minus header sizes). Each IP packet maps one-to-one to a single FC Sequence.

ip