1 <?xml version='1.0' encoding='UTF-8'?>
2 <chapter xmlns="http://docbook.org/ns/docbook" xmlns:xl="http://www.w3.org/1999/xlink" version="5.0" xml:lang="en-US" xml:id="understandinglustrenetworking">
3 <title xml:id="understandinglustrenetworking.title">Understanding Lustre Networking</title>
4 <para>This chapter introduces Lustre Networking (LNet) and Lustre Networks (LNETs). It includes the following sections:</para>
8 <xref linkend="dbdoclet.50438191_22878"/>
13 <xref linkend="dbdoclet.50438191_19625"/>
18 <xref linkend="dbdoclet.50438191_20721"/>
22 <section xml:id="dbdoclet.50438191_22878">
24 <primary>LNET</primary>
25 </indexterm><indexterm>
26 <primary>LNET</primary>
27 <secondary>understanding</secondary>
28 </indexterm> Introducing LNET</title>
29 <para>In a cluster using one or more Lustre file systems, the network communication
30 infrastructure required by the Lustre file system is implemented using the Lustre networking
31 (LNET) feature.</para>
32 <para>LNET supports many commonly-used network types, such as InfiniBand and IP networks, and
33 allows simultaneous availability across multiple network types with routing between them.
34 Remote direct memory access (RDMA) is permitted when supported by underlying networks using
35 the appropriate Lustre network driver (LND). High availability and recovery features enable
36 transparent recovery in conjunction with failover servers.</para>
37 <para>An LND is a pluggable driver that provides support for a particular network type, for example <literal>ksocklnd</literal> is the driver which implements the TCP Socket LND that supports TCP networks. LNDs are loaded into the driver stack, with one LND for each network type in use.</para>
38 <para>For information about configuring LNET, see <xref linkend="configuringlnet"/>.</para>
39 <para>For information about administering LNET, see <xref linkend="adminlustrepart3"/>.</para>
41 <section xml:id="dbdoclet.50438191_19625">
43 <primary>LNET</primary>
44 <secondary>features</secondary>
45 </indexterm>Key Features of LNET</title>
46 <para>Key features of LNET include:</para>
49 <para>RDMA, when supported by underlying networks such as InfiniBand or
50 Myrinet<superscript>*</superscript> MX networks</para>
53 <para>Support for many commonly-used network types such as InfiniBand and TCP/IP
57 <para>High availability and recovery</para>
60 <para>Support of multiple network types simultaneously</para>
63 <para>Routing among disparate networks</para>
66 <para>LNET permits end-to-end read/write throughput at or near peak bandwidth rates on a variety
67 of network interconnects.</para>
69 <section xml:id="idp694976">
71 <primary>Lustre</primary>
72 <secondary>Networks</secondary>
73 </indexterm>Lustre Networks</title>
74 <para>A Lustre network is comprised of clients and servers running the Lustre software. It need not
75 be confined to one LNET subnet but can span several networks provided routing is possible
76 between the networks. In a similar manner, a single network can have multiple LNET subnets. </para>
77 <para>The Lustre networking stack is comprised of two layers, the LNET code module and the LND. The
78 LNET layer operates above the LND layer in a manner similar to the way the network layer
79 operates above the data link layer. LNET layer is connectionless, asynchronous and does not
80 verify that data has been transmitted while the LND layer is connection oriented and typically
81 does verify data transmission.</para>
82 <para>LNETs are uniquely identified by a label comprised of a string corresponding to an LND and a
83 number, such as tcp0, o2ib0, or o2ib1, that uniquely indentifies each LNET. Each node on an
84 LNET has at least one network identifier (NID). A NID is a combination of the address of the
85 network interface and the LNET label in the
86 form:<literal><replaceable>address</replaceable>@<replaceable>LNET_label</replaceable></literal>.</para>
87 <para>Examples: <screen>192.168.1.2@tcp0
88 10.13.24.90@o2ib1</screen></para>
89 <para>In certain circumstances it might be desirable for Lustre traffic to pass between multiple
90 LNETs. This is possible using LNET routing. It is important to realize that LNET routing is
91 not the same as network routing. For more details about LNET routing, see <xref
92 xmlns:xlink="http://www.w3.org/1999/xlink" linkend="configuringlnet"/></para>
94 <section xml:id="dbdoclet.50438191_20721">
96 <primary>LNET</primary>
97 <secondary>supported networks</secondary>
98 </indexterm>Supported Network Types</title>
99 <para>The LNET code module includes LNDs to support many network types including:</para>
102 <para> InfiniBand: OpenFabrics OFED (o2ib)</para>
105 <para> TCP (any network carrying TCP traffic, including GigE, 10GigE, and IPoIB)</para>
108 <para> Cray: Seastar</para>
111 <para> Myrinet: MX</para>
114 <para> RapidArray: ra</para>
117 <para> Quadrics: Elan</para>