Target releaseTraffic Server 8.0
Document status
Document owner

John Rushford

Developersvijay bhaskar
DevelopersJohn Rushford

Goals

Background and strategic fit

Traffic server Next generation of parent and origin selection

Assumptions

 Requirements

#TitleUser StoryImportanceNotes
1Parent health status

As of now Parent Status (UP/DOWN) is updated internally when a request to a parent results in a connection failure. ATS should be able to examine

& modify the status of Parent using a plugin interface & external mgmt interface.

Phase 1
  • Use hostdb as the source of health status
  • NextHop API:
    1) TSNextHopListGet()
    2) TSNextHopListSet()
    3) TSNextHopHealthCheckGet()
    4) TSNextHopHealthCheckSet()
    5) TSNextHopStatusGet()
    6) TSNextHopStatusSet()

2Health check pluginOnce we have the ability to update the parent status, there should be an example plugin to check the health of next hop and update the status.Phasw 1

List_continuation:
1. Periodically get the list of nexthops
that needs to be health checked using GetNextHopList()
2.for a new nexthop or manually marked up nexthop, create a continuation and call tsnetconnect

3. delete the continuation for currently, health checked Next Hop if does not appear in the current list or if it manually marked down.
health_check_continuation:
4. if the connection fails, call SetNextHopStatus()

 

3

External health check process

 

External process for health checking and updating the status of the Next HopPhase 1

Requires management API to update hostb health record status (WIP).

 

4Self detectionAbility to detect the request that is going to end up on the same server and direct the request to next server.Phase 1Issue 2269, update parent selection findParent()
5parent configuration in remap.config.Add a new remap.config tag in remap.config, @parent, that may be used to configure next hop parents and the parent selection strategy.Phase 2 
6Next Hop Match API.

1) remap rules matching a given parent

2) Parents matching a given URL

Phase 2 



Questions

Below is a list of questions to be addressed as a result of this requirements document:

QuestionOutcome
(e.g. How we make users more aware of this feature?)Communicate the decision reached

Not Doing