• No results found

5.4 Transmission of Ethernet Frames over Extoll

5.4.4 Address Mapping – Unicast

Unicast, or point-to-point, addressing uses a one-to-one association between the sender and the destination: each destination address uniquely identifies a single receiver endpoint. The MAC address is expected to uniquely identify each node and allows frames to be marked for specific hosts. Thus, it forms the basis of most of the link layer (OSI Layer 2) networking upon which upper layer protocols rely to produce complex, functioning networks.

The following section describes the Extoll Ethernet hardware address format followed by an introduction to the address resolution in IPv4 and IPv6 subnets. 5.4.4.1 Link-Layer Address/Hardware Address

The Media Access Control address (MAC address) uniquely identifies a NIC for communication at the data link layer. For most network technologies following the IEEE 802 standard family [151] for local area and metropolitan area networks, MAC addresses are used as network addresses in the medium access protocol sublayer. Together with the logical link control sublayer, they build the data link layer, which provides flow control and multiplexing. Typically, MAC addresses are assigned by

5 RDMA-Accelerated TCP/IP Communication 2E 87 04 07 NodeID>>8 & 0xFF NodeID & 0xFF 6 octets

Figure 5.13: Extoll MAC address layout.

the manufacturer and stored in the hardware. They are also referred to as burned-in addresses, Ethernet hardware addresses, or simply hardware or physical addresses. Each NIC must have a unique MAC address.

The original IEEE 802 MAC address format utilizes a 48-bit addressing scheme (6 octets) and addresses up to 248MAC addresses. Figure 5.12 displays the MAC address

layout, which can either be a universally administered address (UAA) or a locally

administered address (LAA). The UAA is uniquely assigned by the manufacturer and

can be identified by the first three octets, which are known as the organizationally

unique identifier (OUI). In case of EXT-Eth, locally administered addresses are used.

UAAs and LAAs can be distinguished by the second-least-significant bit of the first octet, which is also referred to as the Universal/Local bit (U/L bit). If the U/L bit is set to 1, the address is locally administered. The least-significant bit of the first octet indicates whether this is a unicast or multicast address.

Figure 5.13 presents the Extoll hardware address layout. The first to fourth octets are randomly chosen from the list of unused MAC addresses. The fifth and the sixth octet are used to encode the Extoll node ID, which is uniquely assigned during the network setup with EMP (see section 3.3.3). A node ID comprises of 16 bits. Therefore, it can by split in the octets. After performing an address resolution either for IPv4 or IPv6, the MAC address associated with an IP address can be used by Extoll to determine the target node. By using two octets or 16 bits to decode the node ID, up to 216 (= 65,536) Extoll nodes can be distinguished, which

is the maximum amount of Extoll nodes in one 3D torus. Although intended to be a permanent and globally unique identification, most modern operating systems allow to change the MAC address, which is a necessary feature for network virtualization. For Extoll, the first four octets can be modified at configuration or run time. 5.4.4.2 Address Resolution in IPv4 Subnets

Address resolution in IPv4 subnets is accomplished through the Address Resolution

Protocol (ARP) [152], which uses a simple message format containing one address

resolution request or response. The link and network layer address sizes affect the ARP message size. Since EXT-Eth encapsulates complete Ethernet frames in Extoll network packets, the Ethernet address resolution is performed as for any 124

1 0 Octet offset 0 4 8 12 16 20 24

Hardware type Protocol type

Operation Protocol address length

Hardware address length

Sender hardware address (bytes 0-3)

Sender protocol address (bytes 0-1) Sender protocol address (bytes 2-3) Target hardware address (bytes 0-1)

Target hardware address (bytes 2-5) Target protocol address Sender hardware address (bytes 4-5)

3 2

Figure 5.14: Internet Protocol (IPv4) over Ethernet ARP packet.

other Ethernet device. Figure 5.14 displays the structure of a typical IPv4 over Ethernet ARP packet. The hardware type field specifies the network link protocol type [153]. For EXT-Eth, the type ARPHDR_ETHER is used, which is the standard type for Ethernet devices. For IPv4, the protocol type contains 0x0800. The hardware

length describes the length of the hardware address. This is of special interest for

non-standard formats, e.g., Infiniband hardware addresses. The sender hardware

address contains the MAC address of the sender. In an ARP reply, the target hardware address indicates the address of the host that originated the ARP request.

5.4.4.3 Address Resolution in IPv6 Subnets

In IPv6 subnets, address resolution is accomplished through the Neighbor Discovery

Protocol (NPD) [154]. NPD defines five Internet Control Message Protocol for IPv6

(ICMPv6) packet types to perform router solicitation, router advertisement, neighbor solicitation, neighbor advertisement, and network redirects.

The address resolution process can be described as follows. A node requesting the link layer address of a target node multicasts a neighbor solicitation message (ICMPv6 packet type 135) with the target IPv6 address. The target sends back a neighbor advertisement message (ICMPv6 packet type 136) containing its link layer address (MAC address). Neighbor solicitation and advertisement messages are also used for neighbor un-reachability detection, which involves detecting the presence of a target node on a given link. This mechanism can be directly applied to Ethernet over Extoll without any special adjustments or the use of extension options.