Subject: [trill] Forwarding table for TRILL

From: Muhammad Mohsin Sardar <[email-masked]>
Date: Fri, 24 Aug 2012 11:11:30 +0500

Hi,
As per my understanding from RFC6325 <http://tools.ietf.org/html/rfc6325> that
TRILL has two forwarding tables, one having the record of nicknames for
RBridges and other haveing the MAC addresses for end stations.
Intermediate RBridges only have nicknames table to forward encapsulated
packets.
Whereas ingress/egress RBridges have both nickname and MAC Address table.

Question:
Does ingress/egress RBridges need a forwarding table having the size equal
to number of end nodes(for MAC) + total RBridges(for Nickname)?

Thanks!

-- 
Best Regards,
Muhammad Mohsin Sardar

---

From: Donald Eastlake <[email-masked]>
Date: Fri, 24 Aug 2012 08:58:44 -0400

Hi Muhammad,

On Fri, Aug 24, 2012 at 2:11 AM, Muhammad Mohsin Sardar
<[email-masked]> wrote:
> Hi,
>
> As per my understanding from RFC6325 that TRILL has two forwarding
> tables, one having the record of nicknames for RBridges and other
> haveing the MAC addresses for end stations.
>

An implementer can structure their tables however they want as long as
the bits on the wire and the external behavior is the same; however,
having two tables as you describe, one used by the native frame
ingress/egress function and one used by the TRILL Data forwarding
function is a reasonable way to look at it.

> Question:
> Does ingress/egress RBridges need a forwarding table having the size
> equal to number of end nodes(for MAC) + total RBridges(for
> Nickname)?

Sort of.

The ingress lookup is by VLAN+MAC to get an egress nickname (or find
that it is not in the table) while the egress lookup is by VLAN+MAC to
get a port (or find that it is not in the table). There is, of course,
no requirement that the ingress/egress table(s) be exactly "equal" to
the number of end station in the set of VLANs that the RBridge is
interested in and that is probably almost never true.

On the other hand, there is a requirement that an RBridge be able to
hold the link state which includes the nicknames of all other RBridges
(otherwise it is in overflow, see draft-ietf-trill-clear-correct) and
be able to look up the egress nickname from a TRILL Data frame to
determine which port (unicast) or ports (multi-destinaiton) to forward
the TRILL Data frame out of.

Thanks,
Donald
=============================
 Donald E. Eastlake 3rd   +1-508-333-2270 (cell)
 155 Beaver Street, Milford, MA 01757 USA
 [email-masked]

---

From: Muhammad Mohsin Sardar <[email-masked]>
Date: Fri, 24 Aug 2012 22:19:37 +0500

Hi Donald,
Thanks for reply!
Please clarify inline question.

> interested in and that is probably almost never true.
Do we need ingress/egress table(s) nearly "equal" to the number of end
stations?
If we need MAC to nickname mapping for all end stations, Do we need a table
size nearly equal to the number of end stations?
Therefore, a larger ingress/egress table is required in case of data center
networks of hundred thousand end servers.

-- 
Best Regards,
Muhammad Mohsin Sardar

---

From: Joe Touch <[email-masked]>
Date: Fri, 24 Aug 2012 13:23:47 -0700

Hi, Muhammed,

On 8/23/2012 11:11 PM, Muhammad Mohsin Sardar wrote:
...
> equal to number of end nodes(for MAC) + total RBridges(for Nickname)?

As an upper-bound, yes. However, just as this information is collected 
over time, the "working set" of it can be cached, and so an 
implementation may have less capacity in either table and still be useful.

Joe