Interface ILispMapCache

All Superinterfaces:
IMapCache
All Known Implementing Classes:
SimpleMapCache

public interface ILispMapCache extends IMapCache
LISP southbound control protocol specific additions to the map-cache interface.
Author:
Lorand Jakab
  • Method Details

    • addMapping

      void addMapping(Eid key, Object value, Set<IpAddressBinary> sourceRlocs)
      Add mapping.
      Parameters:
      key - Key of the mapping
      value - Mapping to be stored
      sourceRlocs - The set of RLOCs from all registrations. Used for merging
    • addMapping

      void addMapping(Eid key, XtrId xtrId, Object value)
      Add mapping.
      Parameters:
      key - Key of the mapping
      xtrId - xTR-ID of the mapping
      value - Mapping to be stored
    • getMapping

      Object getMapping(Eid key, XtrId xtrId)
      Retrieves mapping for the provided srcKey, dstKey and a XtrId.
      Parameters:
      key - Key to be looked up
      xtrId - xTR-ID for which look-up to be done
      Returns:
      Returns the mapping found in the cache
    • removeMapping

      void removeMapping(Eid key, XtrId xtrId)
      Remove mapping.
      Parameters:
      key - Key to be removed
      xtrId - xTR-ID of the mapping to be removed
    • getAllXtrIdMappings

      List<Object> getAllXtrIdMappings(Eid key)
      Retrieve all xTR-ID sub-mappings for an EID. Used for merging logic.
      Parameters:
      key - Key to be looked up
      Returns:
      The list of Objects which should be mappings
    • removeXtrIdMappings

      void removeXtrIdMappings(Eid key, List<XtrId> xtrIds)
      Batch remove several xTR-ID sub-mappings under a certain key.

      This is a performance optimization, since interactive calls to removeMapping() would result in LPM lookups of the key for each call. With this method, only one such lookup is performed.

      Parameters:
      key - Key to be looked up
      xtrIds - List of xTR-IDs that need to be removed
    • getCoveringLessSpecific

      Eid getCoveringLessSpecific(Eid key)
      Look up the covering prefix for the argument, but exclude the argument itself, so the result is always less specific than the lookup key.
      Parameters:
      key - The eid prefix, IPv4 or IPv6, to be looked up. Key must be normalized.
      Returns:
      The covering prefix.
    • getParentPrefix

      Eid getParentPrefix(Eid key)
      Returns the parent prefix for given key.
      Parameters:
      key - The key for which parent is to be returned.
      Returns:
      The parent prefix of a specific key.
    • getSiblingPrefix

      Eid getSiblingPrefix(Eid key)
      Returns the sibling prefix for given key.
      Parameters:
      key - The key for which sibling is to be returned.
      Returns:
      The sibling prefix of a specific key.
    • getVirtualParentSiblingPrefix

      Eid getVirtualParentSiblingPrefix(Eid key)
      Returns the virtual parent sibling prefix for given key.
      Parameters:
      key - The key for which virtual parent sibling is to be returned.
      Returns:
      The virtual parent sibling prefix of a specific key.