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 (LNet)</title>
4 <para>This chapter introduces Lustre networking (LNet). It includes the following sections:</para>
8 <xref linkend="dbdoclet.50438191_22878"/>
13 <xref linkend="dbdoclet.50438191_19625"/>
17 <para><xref xmlns:xlink="http://www.w3.org/1999/xlink" linkend="idp694976"/></para>
21 <xref linkend="dbdoclet.50438191_20721"/>
25 <section xml:id="dbdoclet.50438191_22878">
27 <primary>LNet</primary>
28 </indexterm><indexterm>
29 <primary>LNet</primary>
30 <secondary>understanding</secondary>
31 </indexterm> Introducing LNet</title>
32 <para>In a cluster using one or more Lustre file systems, the network communication
33 infrastructure required by the Lustre file system is implemented using the Lustre networking
34 (LNet) feature.</para>
35 <para>LNet supports many commonly-used network types, such as InfiniBand and IP networks, and
36 allows simultaneous availability across multiple network types with routing between them.
37 Remote direct memory access (RDMA) is permitted when supported by underlying networks using
38 the appropriate Lustre network driver (LND). High availability and recovery features enable
39 transparent recovery in conjunction with failover servers.</para>
40 <para>An LND is a pluggable driver that provides support for a particular network type, for
41 example <literal>ksocklnd</literal> is the driver which implements the TCP Socket LND that
42 supports TCP networks. LNDs are loaded into the driver stack, with one LND for each network
44 <para>For information about configuring LNet, see <xref linkend="configuringlnet"/>.</para>
45 <para>For information about administering LNet, see <xref linkend="adminlustrepart3"/>.</para>
47 <section xml:id="dbdoclet.50438191_19625">
49 <primary>LNet</primary>
50 <secondary>features</secondary>
51 </indexterm>Key Features of LNet</title>
52 <para>Key features of LNet include:</para>
55 <para>RDMA, when supported by underlying networks</para>
58 <para>Support for many commonly-used network types</para>
61 <para>High availability and recovery</para>
64 <para>Support of multiple network types simultaneously</para>
67 <para>Routing among disparate networks</para>
70 <para>LNet permits end-to-end read/write throughput at or near peak bandwidth rates on a variety
71 of network interconnects.</para>
73 <section xml:id="idp694976">
75 <primary>Lustre</primary>
76 <secondary>Networks</secondary>
77 </indexterm>Lustre Networks</title>
78 <para>A Lustre network is comprised of clients and servers running the Lustre software. It need
79 not be confined to one LNet subnet but can span several networks provided routing is possible
80 between the networks. In a similar manner, a single network can have multiple LNet subnets. </para>
81 <para>The Lustre networking stack is comprised of two layers, the LNet code module and the LND.
82 The LNet layer operates above the LND layer in a manner similar to the way the network layer
83 operates above the data link layer. LNet layer is connectionless, asynchronous and does not
84 verify that data has been transmitted while the LND layer is connection oriented and typically
85 does verify data transmission.</para>
86 <para>LNets are uniquely identified by a label comprised of a string corresponding to an LND and
87 a number, such as tcp0, o2ib0, or o2ib1, that uniquely identifies each LNet. Each node on an
88 LNet has at least one network identifier (NID). A NID is a combination of the address of the
89 network interface and the LNet label in the
90 form:<literal><replaceable>address</replaceable>@<replaceable>LNet_label</replaceable></literal>.</para>
91 <para>Examples: <screen>192.168.1.2@tcp0
92 10.13.24.90@o2ib1</screen></para>
93 <para>In certain circumstances it might be desirable for Lustre file system traffic to pass
94 between multiple LNets. This is possible using LNet routing. It is important to realize that
95 LNet routing is not the same as network routing. For more details about LNet routing, see
96 <xref xmlns:xlink="http://www.w3.org/1999/xlink" linkend="configuringlnet"/></para>
98 <section xml:id="dbdoclet.50438191_20721">
100 <primary>LNet</primary>
101 <secondary>supported networks</secondary>
102 </indexterm>Supported Network Types</title>
103 <para>The LNet code module includes LNDs to support many network types including:</para>
106 <para> InfiniBand: OpenFabrics OFED (o2ib)</para>
109 <para> TCP (any network carrying TCP traffic, including GigE, 10GigE, and IPoIB)</para>
112 <para> Cray: Seastar</para>
115 <para> Myrinet: MX</para>
118 <para> RapidArray: ra</para>
121 <para> Quadrics: Elan</para>