Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • Kea Kea
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 513
    • Issues 513
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 48
    • Merge requests 48
  • Deployments
    • Deployments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • ISC Open Source Projects
  • KeaKea
  • Issues
  • #1028

Closed
Open
Created Nov 22, 2019 by Francis Dupont@fdupontDeveloper

New classification design.

Some proposals for a new classification design:

  • replace the list+set by a multi-index
  • replace the required-xxx by a more direct add-client-classes.
  • add this new add-client-classes to host reservations as an alias of the existing client-classes (same entry with the same behavior for all objects which add a class to the query)
  • complete the list of class evaluation points:
    • new points after the deferred unpack, pkt*_receive hook, etc
    • make clear in the doc that which a classification point is for:
      • dependency on a packet procession phase (e.g. KNOWN/UNKNOWN)
      • usage for the next packet processing step (e.g. subnet selection, pool guard, output option)
    • add an enum (vs a few flags) for the point where a class must be evaluated
    • add a meta-data with the value of its enum and make it visible to users
  • same rules on dependency (use of member in expression):
    • no forward reference (the user class in a member clause must be already defined)
    • get the last classification point
    • perhaps a new built-in class for instance for the pkt*_receive hook
  • document the way to switch from expired-* to this new stuff (but do not develop a tool to translate configurations)
  • (next steps?) new uses of classes (e.g. lifetime), new expressions (e.g. in the response vs the query): in almost all cases this means new classification points
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking