Global Routing: Source/Destination CAs in Different Subnets

Refer to Figure 8-2 on page 144. In this example scenario, the packet is originated by a CA in one subnet and is targeting a CA in another subnet. The packet must transit two routers to get to its destination.

Figure 8-2. Inter-Subnet Packet Example


LID Only Permits Addressing Port in Same Subnet

Using a LID to address the destination port only permits another port within the same subnet to be addressed. In the example, however, the destination port resides in another subnet. It should be obvious that additional address information is required when a packet targets a port in another subnet. The packet's headers not only need to supply the address of the destination port, but must also identify the subnet within which that port resides.

Global Addressing Must Be Used

Refer to Figure 8-1 on page 143. A packet that targets a port in another subnet must, in addition to the LRH, include a Global Route Header (GRH). While the LRH contains the SLID and DLID, the GRH contains the Source Global ID (SGID) and Destination Global ID (DGID):

  • DGID: identifies the port that is the ultimate target of the packet (item F in the example), as well as the subnet within which it resides.

  • SGID: identifies the port that initially injected the packet into the fabric (item A in the example), as well as the subnet within which it resides.

Figure 8-1. Inter-Subnet Packet Format


An Inter-Subnet Example

The example case (in Figure 8-2 on page 144) assumes that this is a unicast, rather than a multicast, operation. The following describes the packet's travel through the fabric:

  1. When the TCA's port (item A) injects the packet onto the first link, it sets the addresses as follows:

    - LRH:SLID = LID of the CA's source port.

    - LRH:DLID = LID of the ingress port on the first router (item B). It acts as the packet's destination within the first subnet.

    - SGID =

    - Upper 64 bits is the Subnet ID of the subnet within which the source port (item A) resides.

    - Lower 64 bits is the GUID (Globally Unique ID; more on this later) of the source port.

    - DGID =

    - Upper 64 bits is the Subnet ID of the subnet within which the destination port (item F) resides.

    - Lower 64 bits is the GUID of the destination port.

  2. Using the DLID, the Forwarding Tables within the first two switches relay the packet to the destination port within this subnet (i.e., item B, the ingress port on the first router).

  3. Upon arrival at the target port on the first router, the router ingress port's logic decodes the DLID and recognizes that it is the packet's target within this subnet. The router takes the following actions:

    - Using the GRH:DGID field, the router performs a lookup in its internal Routing Table:

    - Case 1: If the target subnet (indicated by the Subnet ID portion of the DGID) is not directly connected to one of the router's ports, the Routing Table lookup is used to determine which of the router's ports is in the path to the target subnet. The lookup also produces the LID of an ingress port on the next router along the path to the target subnet. This is the case in the current scenario.

    - Case 2: If the target subnet (indicated by the Subnet ID portion of the DGID) matches the Subnet ID of one of the subnets connected directly to the router, the Routing Table lookup mechanism also uses the GUID portion of the DGID to determine the LID of the CA port targeted by the DGID address.

    - Before passing the packet out through the selected port (item C), the first router makes the following modifications to the LRH:

    - SLID = LID of the router egress port (item C) it will use to inject the packet into the next subnet.

    - DLID = LID of the ingress port (item D) on the second router (it is the packet's destination within the second subnet).

    - The router may also change the SL and VL field contents, as well.

    - Recomputes the packet's VCRC to reflect the alterations.

  4. The first router then injects the packet into the second subnet for the next leg of the journey.

  5. Using the DLID, the Forwarding Tables within the next two switches relay the packet to the destination port within this subnet (i.e., item D, the ingress port on the second router).

  6. Upon arrival at the target port on the second router, the port's logic decodes the DLID and recognizes that it is the packet's target within this subnet. The router takes the following actions:

    - Using the Subnet ID portion of the DGID field, the router performs a lookup in its internal Routing Table to determine which of its ports to pass the packet to (in other words, to which of the connected subnets it should be passed). In this case, the target subnet (indicated by the Subnet ID portion of the DGID) matches the Subnet ID of one of the subnets connected directly to the router. The Routing Table lookup mechanism therefore also uses the GUID portion of the DGID (i.e., its lower 64 bits) to determine the LID of the CA port ultimately targeted by the DGID address.

    - Before passing the packet out through the selected port (item E), the second router makes the following modifications to the LRH:

    - SLID = LID of the router port (item E) that is injecting the packet into the next subnet.

    - DLID = LID of the ultimate target port (item F) on the destination CA.

    - The router may also change the SL and VL field contents as well.

    - Recomputes the packet's VCRC to reflect the alterations.

  7. The second router then injects the packet into the third subnet (item E) for the final leg of the journey.

  8. Using the DLID, the Forwarding Tables within the next two switches relay the packet to the final destination port within this subnet (i.e., item F, the destination CA port).

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset