[ofa-general] [PATCH 0/6] opensm: Unicast Routing Cache

Yevgeny Kliteynik kliteyn at dev.mellanox.co.il
Sun Oct 5 18:26:00 PDT 2008


Hi Sasha,

The following series of 6 patches implements unicast routing cache
in OpenSM.

This implementation (v2, previous version was sent before OFED 1.3)
was rewritten from scratch:
 - no caching of existing connectivity
 - no caching of existing lid matrices
 - each switch has an LFT buffer that contains the result of
   the last routing engine execution (instead of one buffer
   in ucast_mgr)
 - links/ports/nodes changes are spotted during the discovery
 - only the links/ports/nodes that  went down are cached
 - when switch goes down, caching its lid matrices and LFT

In one of the following cases we can use cached routing
  - there is no topology change
  - one or more CAs disappeared
  - one or more leaf switches disappeared
In these cases cached routing is written to the switches as is
(unless the switch doesn't exist).
If there is any other topology change, existing cache is invalidated
and the routing engine(s) run as usual.

The patches are:
 - patch 1/6: move lft_buf from ucast_mgr to osm_switch
 - patch 2/6: Add "-A" or "--ucast_cache" option to opensm
 - patch 3/6: adding osm_ucast_cache.{c,h} files (this is
   the cache implementation itself)
 - patch 4/6: adding new cache files to makefile
 - patch 5/6: integrating unicast cache into the discovery
   and ucast manager
 - patch 6/6: man entry for cached routing

-- Yevgeny



More information about the general mailing list