WIMS> Changes for multi-level WIMS Proxy configurations

WIMS> Changes for multi-level WIMS Proxy configurations

WIMS> Changes for multi-level WIMS Proxy configurations

McDonald, Ira imcdonald at sharplabs.com
Tue Feb 7 17:25:41 EST 2006


Hi folks,                                      Tuesday (7 February 2006)

Below are proposed WIMS Protocol spec and WIMS XML schema updates for
support of multi-level (or 'chained') WIMS Proxy configurations that we
discussed at the January PWG face-to-face and last week's WIMS telecon.

Basically, in _every_ Action _except_ UpdateSchedule, replace the
(one-level) 'agentReferences : AgentReferences' parameter with a
(multi-level) 'agentPaths : AgentPaths' parameter (see below).

UpdateSchedule MUST NOT be forwarded and MUST still use a single-valued
'agentReference : AgentReference' parameter that MUST resolve to the
local (receiving) WIMS Agent.


The processing model is simple:

(1) WIMS Proxy receives incoming 'Action' from adjacent upstream WIMS
    Manager (via running Schedule or ExecuteAction request).
(2) WIMS Proxy rewrites 'ActionAgentPaths' of 'Action', removing the
    _first_ WIMS Agent reference (to itself) in each agent path in the
    array of paths.
(3) WIMS Proxy forwards rewritten 'Action' to the adjacent downstream
    WIMS Agents via ExecuteAction requests and/or Legacy Agents via
    legacy protocol requests (e.g., SNMP Set).
(4) Recursion of steps (1) to (3) leads to final WIMS Agents or Legacy
    Agents (nearest to actual managed entities).
(5) Upstream ExecuteAction or legacy protocol responses convey resulting
    status back to original WIMS Proxy who conveys resulting status
    back via SendReports request or ExecuteAction response to original
    WIMS Manager.


Note:  ExecuteAction is used here for operation forwarding downstream in
order to preserve the 'immediate' nature of a triggered Action in a
Schedule.  It would be possible to forward operations via downstream
Schedule objects, but vastly more complicated to correlate the responses
and not faithful to an 'immediate' trigger.

Comments?

Cheers,
- Ira


Ira McDonald (Musician / Software Architect)
Blue Roof Music / High North Inc
PO Box 221  Grand Marais, MI  49839
phone: +1-906-494-2434
email: imcdonald at sharplabs.com

------------------------------------------------------------------------
[WIMS Protocol spec]


[diagrams and notes in section 4]

[change]
    agentReferences
[to]
    agentPaths


[definition in section 6.1.1 - note plural 'Paths']

[change]
    agentReferences : AgentReferences
[to]
    agentPaths : AgentPaths

[change]
    References to the WIMS...
[to]
    Paths to the WIMS...


[definition in section 6.1.3 - note plural 'Paths']

[change]
    agentReferences : AgentReferences
[to]
    agentPaths : AgentPaths

[change]
    References to the WIMS...
[to]
    Paths to the WIMS...


[RegisterForManagement in section 6.2.1 - note plural 'Paths']

[change]
    agentReferences : AgentReferences
[to]
    agentPaths : AgentPaths


[UnregisterForManagement in section 6.2.2 - note plural 'Paths']

[change]
    agentReferences : AgentReferences
[to]
    agentPaths : AgentPaths


[actions in sections 6.4, 6.5, and 6.6 - note plural 'Paths']

[change]
    agentReferences : AgentReferences
[to]
    agentPaths : AgentPaths


------------------------------------------------------------------------
[WIMS Message schema]


[RegisterForManagement and UnregisterForManagement requests]

[change]
    RequestAgentReferences
[to]
    RequestAgentPaths


------------------------------------------------------------------------
[WIMS Type schema]


[add two new types]

<xsd:complexType name="ObjectAgentPath">
  <!-- path to legacy or WIMS agent nearest to a managed entity -->
  <!-- for support of multi-level WIMS Proxy configurations -->
  <xsd:sequence>
    <xsd:element name="ObjectAgentReference"
      type="ObjectAgentReference"
      minOccurs="0" maxOccurs="unbounded"/>
  </xsd:sequence>
</xsd:complexType>

<xsd:complexType name="ObjectAgentPaths">
  <xsd:sequence>
    <xsd:element name="ObjectAgentPath"
      type="ObjectAgentPath"
      minOccurs="0" maxOccurs="unbounded"/>
  </xsd:sequence>
</xsd:complexType>


------------------------------------------------------------------------
[WIMS Schedule schema]


[delete unused 'ActionAgentReferences' element]


[add new 'ActionAgentPaths' element]

<xsd:element name="ActionAgentPaths"
  type="ObjectAgentPaths"/>
  <!-- OPTIONAL - MAY be multi-valued -->
  <!-- paths to legacy or WIMS agents nearest to managed entities -->
  <!-- for support of multi-level WIMS Proxy configurations -->


[modify each action in WIMS Schedule schema, for example]

<xsd:element name="ActionGetElements">
  <xsd:complexType name="ActionGetElements"
    <xsd:sequence>
      <xsd:element ref="ActionAgentPaths"
        minOccurs="0" maxOccurs="1"/>
      <xsd:element ref="ActionTargetObjects"
        minOccurs="0" maxOccurs="1"/>
      <xsd:element ref="ActionRequestedElements"
        minOccurs="0" maxOccurs="1"/>
      <xsd:element ref="ActionVendorParameters"
        minOccurs="0" maxOccurs="1"/>
    </xsd:sequence>
  </xsd:complexType>
</xsd:element>


------------------------------------------------------------------------



More information about the Wims mailing list