SlideShare a Scribd company logo
AutonomIQ™ Technology Overview
June 2005
By Dr. George Vanecek, Jr.
UXComm Objectives
 Create a service management middleware,
based on
 A generalized and extensible protocol
mediation and translation and API
abstraction mechanism, to
 Configure, control, monitor, and provision
networked service assets, and
 Address heterogeneity, interoperability, and
change in the service assets.
UXComm Solution
 Create an engine that
 Is very small by providing minimal built-in
functionality
 Is O.S. independent
 Is powerful by extending its support
capabilities on demand
 Offers a self-describing service views of
native services
 Can support an agent architecture
Service Request/Response
CLIENT
or
AGENT AGENT
Service Request
with Reference to a
Service Specification
XML/HTML
Response
Download
Server
Service Specification,
Adaptors,
and
Required Libraries4
1
2
3
Service Request
Execution
HTTP/S
Holds for requests over other protocols such as SNMP or CLI over Telnet.
IA2 Engine
Applications as Collection of Services
Workflow
Manager
CLI (Telnet) Web (HTTP)
Persistent
Store
Event
Manager
SNMP
Manager
WMI
Client
HPI
Client
SNMP
Agent
Example Application Service
 IA2 Engine
executes services
and facilitates
communication
between services
via
service requests
IA2 Engine
(Java)
Service Specification
(XDS written in XDL)
Service Request
(XSR)
Service Execution Environment
Service Request
Service Definition
(Interface)
Service Implementation
Shared Libraries
External APIs, Protocols, O.S.s, Applications
Adaptor Actions
XDL: eXtensible Design Language
Is a meta-language for authoring the service
specifications (XDS’s)
Decomposes a complex service into a
hierarchy or groups of logical sub-services
Offers a natural encoding of pre/post actions
associated with each sub-service
Is compiled by the engine (not interpreted)
Allows imports of engine extensions by
loading adaptors and share libraries/stacks
Example Specification and Request
Cisco IOS
Specification
Request to
Install a tar file
XDS Example (as XML)
<xds id=“…” …>
<node name=“demo”
xmlns:io=“/adapter/IOAdapter.jar”>
<args> …Arguments… </args>
<subnodes>
<node name=“createHelloWorld” …>
<args>…Arguments… </args>
<do>
<io:open file=“path”/>
<io:write string=“hello world”/> …
<io:close/>
</do>
</node>
…Other Commands…
</subnodes>
</node>
</xds>
demo
createHelloWorld …
Script Programs
 All command are
supplied by adaptors
 Commands are simple
or structured
 Use typed arguments
 Support exchange of
POJO’s
Engine Adaptor
 Collection of related commands
 Written in Java (Bundled as JAR files)
 Designed to extend the engine’s run-time
support
 Optionally provide access to reusable libraries
and stacks
 Loaded when some XDS requires them
 Support drag & drop visual editing of XDS
scripts in IDE
 Adaptor commands are engine co-agents:
 Self-parsing from XDS XML file
 Self-printing to the XDS XML file
Example Script
Note:
IOS XDS
implemented as
CLI over Telnet
with
 IO
 Expect
 FCLang
 Exception
adaptors.
Using AIQ Adaptors
XDS
<node name … xmlns:an=“URL”>
<do>
…
<an:some-action arg1=“…” arg2=“…”/>
…
</do>
Adaptor
Loader/Cache
Load
Adaptor
class SomeAction
extends XDSAction
{
String arg1;
String arg2;
exec(…) { }
printXML(…){ }
parse(…) { }
}
Instantiate
Action
Execute
Name
XDS Structure
Arguments
(name,type,default)
Pre
Actions
Post
Actions
Exception Handlers
Program
based on actions
from imported
adaptors
Adaptor/Library Imports
 An XDS node represents a sub-service
XDS, XWS
Specifications
IA2 Engine
AutonomIQ Engine Architecture
O.S. + Hardware
JVM
XDL Compiler
XSR Interpreter
XDS Cache
Adaptor Cache
SNMP
IPMI
HPIJDBC
Telnet
WakeOnLAN
HTTP/S SBLIM
WMI
SOAP
CIM
XML
Applications
Adaptor/Lib Repository
<xsr ref=“http://xds.uxcomm.com/dsp/workflows/provisionBlade.xws”>
<provisionBlade tmip=“10.10.10.4” tmport=“6964” …/>
</xsr>
Service
Requests
…
XML Repository
HTTP
HTTP
HTTP
Engine Execution Layers
Stack
Component
Specialization
Adaptor
Interface
Java
Component
Specification
Workflows
Application
XDS
XWS
Projects
Application
Specification
Java Threads
Task Thread
Management
Workflow Interface
Workflow Scheduler
Discovery
Fail-over Provisioning
On-Demand Asset Tracking (OAT)
SNMP Agent
SNMP Interface
SNMP
Manager/Handler
SNMP Stack
OAT Master/Agents
Request
Driven
Loading
Examples
Only
Adaptor
AIQ IDE:
The Integrated Development
and Execution Environment
Building Application Services
1. Using IDE, author services
 Create low-level service specifications
(to control legacy components)
 SNMP, IPMI, WMI, Cisco IOS, …
 Create application component service specifications
(to add new components)
 Workflow Manager, Persistence Store, Event Handler,
Event Monitor, …
 Create application service specifications
(using low-level/application components)
 Internet Gateway, Download Server, ATCA NMS…
1. Optionally Build UI
2. Deploy Agent (Engine with Front-End such as HTTP or
CLI)
 With access to service specifications and support files.
IDE: Key Components
Manage
Projects
Service
Requests
Editor
Service Requests
Execute/Trace/Debug
Manage
Adaptors
XDS Editor
Script
Editor
IDE: Support Dialogs
Manage
IDE Add-ons
Monitor Threads
Edit IDE
Properties
Profiler
Heap Monitor
IDE: XDS Editor Support
Adaptor
Chooser
Expression
Editor
IDE: Workflow Editing
Workflow
Editor
Task
Wizard
Graphical
Viewer
IDE: HTML/Request Wizard
HTML Wizard
Wizard Interface
HTML Text
Editor
Web Browser
Preview and
Execution
IDE: Documentation Support
Integrated
Web
Browser
Component
Pane
Help
XDSDoc
Viewer
IDE: Request Support
XSR Debugger
Breakpoints
And
Single Step
Execution
Example AIQ Adaptors:
SNMP, CLI
SNMP Adaptor and Service
 Versions v1, v2c, v3
 Manager
 Agent
 SNMPv2 USM and VACM
 Trap/Inform Handler
 Proxy Forwarder
 MIB
 Table Support
 MIB Parser for SMIv1 and
SMIv2
 Programmable MIB
queries
CLI Adaptor and Service
 Telnet/SSH protocols
 User-based Access Control
 Command history
 Command-line editing (e.g., Emacs)
 Built-in commands
(e.g., help, up)
 XDS programmable
 Input Syntax
 XML or Text Output
Syntax (via XSLT)
 Multiple-session capable
 XSR interoperable
AIQ SDK:
The Service Development Kit
AIQ SDK: Service Development Kit
 Engine and agent run-time support.
 Set of adaptors and required libraries
 IDE for
 Authoring service specifications
 Authoring simple HTML UIs
 Authoring and execution service requests
 Support for
 Authoring new AIQ Adaptors (given JAPI)
 Documentation
 Sample Adaptor source code
 Sample Projects with support files
SDK: Included Adaptors
 Admin Agent administration
 Array Array data structure
 CLID CLI Server
 Exception Exception handling
 Expect I/O pattern filter
 FCLang Flow control and variable support
 IO File I/O, sockets, and process support
 Log Logging
 RegExp Regular Expressions
 System Thread, timers, and synchronization
 Table Hash table data structure
 HTTPD Web server
 JDBC SQL
 SNMP SNMP v1, v2c and v3 agent, manager, mib
 XML XML parser and DOM
 Workflow Workflow execution and management
AIQ Agent Run-time Requirements
 JVM
 Supports J2ME CDC 1.1 with base adaptor set
(J2SE 1.3).
 J2SE 1.4 with full adaptor set
 Disk Requirements
 AIQ engine 256K
 Support libraries <2M (e.g. XML parser, JSSE)
 Base adaptor set <1M
 Memory Requirements
 Minimum 16Mb
Summary: What this all means is that
 The IA2 engine supports a
reconfigurable agent architecture for
creating new domain specific parsers
and execution environments (XDS’s)
for various classes of service requests
(XSR’s).
Summary
 Universal eXtensible Communicator
 Ergo, UXComm

More Related Content

What's hot

IBM Websphere concepts
IBM Websphere conceptsIBM Websphere concepts
IBM Websphere concepts
Kuldeep Saxena
 
Microsoft Data Access Technologies
Microsoft Data Access TechnologiesMicrosoft Data Access Technologies
Microsoft Data Access Technologies
David Chou
 
Rest API and Client OM for Developer
Rest API and Client OM for DeveloperRest API and Client OM for Developer
Rest API and Client OM for Developer
InnoTech
 
What's New for Data?
What's New for Data?What's New for Data?
What's New for Data?
ukdpe
 
IBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginnersIBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginners
Shubham Gupta
 
Windows Server 2008 for Developers - Part 1
Windows Server 2008 for Developers - Part 1Windows Server 2008 for Developers - Part 1
Windows Server 2008 for Developers - Part 1
ukdpe
 
JEE Course - JEE Overview
JEE Course - JEE  OverviewJEE Course - JEE  Overview
JEE Course - JEE Overview
odedns
 
Day7
Day7Day7
Websphere - About IBM HTTP Server & WAS Plug-in
Websphere -  About IBM HTTP Server & WAS Plug-inWebsphere -  About IBM HTTP Server & WAS Plug-in
Websphere - About IBM HTTP Server & WAS Plug-in
Vibrant Technologies & Computers
 
Ibm web sphere_job_interview_preparation_guide
Ibm web sphere_job_interview_preparation_guideIbm web sphere_job_interview_preparation_guide
Ibm web sphere_job_interview_preparation_guide
Khemnath Chauhan
 
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows AzureCloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
David Chou
 
(ATS4-APP03) Top 10 things every Notebook administrator should know
(ATS4-APP03) Top 10 things every Notebook administrator should know(ATS4-APP03) Top 10 things every Notebook administrator should know
(ATS4-APP03) Top 10 things every Notebook administrator should know
BIOVIA
 
Java ee introduction
Java ee introductionJava ee introduction
Java ee introduction
Moumie Soulemane
 
Ibm web sphere application server interview questions
Ibm web sphere application server interview questionsIbm web sphere application server interview questions
Ibm web sphere application server interview questions
praveen_guda
 
Fortress Open Source IAM on LDAPv3
Fortress Open Source IAM on LDAPv3Fortress Open Source IAM on LDAPv3
Fortress Open Source IAM on LDAPv3
LDAPCon
 
Introduction to Adapters 3.7
Introduction to Adapters 3.7Introduction to Adapters 3.7
Introduction to Adapters 3.7
StephenKardian
 
Javaee intro
Javaee introJavaee intro
Javaee intro
haris147
 
Day8
Day8Day8
Day4
Day4Day4
Building REST and Hypermedia APIs with PHP
Building REST and Hypermedia APIs with PHPBuilding REST and Hypermedia APIs with PHP
Building REST and Hypermedia APIs with PHP
AzRy LLC, Caucasus School of Technology
 

What's hot (20)

IBM Websphere concepts
IBM Websphere conceptsIBM Websphere concepts
IBM Websphere concepts
 
Microsoft Data Access Technologies
Microsoft Data Access TechnologiesMicrosoft Data Access Technologies
Microsoft Data Access Technologies
 
Rest API and Client OM for Developer
Rest API and Client OM for DeveloperRest API and Client OM for Developer
Rest API and Client OM for Developer
 
What's New for Data?
What's New for Data?What's New for Data?
What's New for Data?
 
IBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginnersIBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginners
 
Windows Server 2008 for Developers - Part 1
Windows Server 2008 for Developers - Part 1Windows Server 2008 for Developers - Part 1
Windows Server 2008 for Developers - Part 1
 
JEE Course - JEE Overview
JEE Course - JEE  OverviewJEE Course - JEE  Overview
JEE Course - JEE Overview
 
Day7
Day7Day7
Day7
 
Websphere - About IBM HTTP Server & WAS Plug-in
Websphere -  About IBM HTTP Server & WAS Plug-inWebsphere -  About IBM HTTP Server & WAS Plug-in
Websphere - About IBM HTTP Server & WAS Plug-in
 
Ibm web sphere_job_interview_preparation_guide
Ibm web sphere_job_interview_preparation_guideIbm web sphere_job_interview_preparation_guide
Ibm web sphere_job_interview_preparation_guide
 
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows AzureCloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
CloudConnect 2011 - Building Highly Scalable Java Applications on Windows Azure
 
(ATS4-APP03) Top 10 things every Notebook administrator should know
(ATS4-APP03) Top 10 things every Notebook administrator should know(ATS4-APP03) Top 10 things every Notebook administrator should know
(ATS4-APP03) Top 10 things every Notebook administrator should know
 
Java ee introduction
Java ee introductionJava ee introduction
Java ee introduction
 
Ibm web sphere application server interview questions
Ibm web sphere application server interview questionsIbm web sphere application server interview questions
Ibm web sphere application server interview questions
 
Fortress Open Source IAM on LDAPv3
Fortress Open Source IAM on LDAPv3Fortress Open Source IAM on LDAPv3
Fortress Open Source IAM on LDAPv3
 
Introduction to Adapters 3.7
Introduction to Adapters 3.7Introduction to Adapters 3.7
Introduction to Adapters 3.7
 
Javaee intro
Javaee introJavaee intro
Javaee intro
 
Day8
Day8Day8
Day8
 
Day4
Day4Day4
Day4
 
Building REST and Hypermedia APIs with PHP
Building REST and Hypermedia APIs with PHPBuilding REST and Hypermedia APIs with PHP
Building REST and Hypermedia APIs with PHP
 

Similar to UXComm: Universal XML Communicator, an Agent Architecture

J2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net WorkshopJ2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net Workshop
danglvh
 
Cics Ts 4.1 Technical Overview
Cics Ts 4.1 Technical OverviewCics Ts 4.1 Technical Overview
Cics Ts 4.1 Technical Overview
CICS ROADSHOW
 
Nuxeo ECM - Architecture Overview - May 2008
Nuxeo ECM - Architecture Overview - May 2008Nuxeo ECM - Architecture Overview - May 2008
Nuxeo ECM - Architecture Overview - May 2008
Stefane Fermigier
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
rahmed_sct
 
Asp dot net final (2)
Asp dot net   final (2)Asp dot net   final (2)
Asp dot net final (2)
Amelina Ahmeti
 
Sap xi online training
Sap xi online trainingSap xi online training
Sap xi online training
Venkat reddy
 
Asp dot net final (1)
Asp dot net   final (1)Asp dot net   final (1)
Asp dot net final (1)
Amelina Ahmeti
 
Asp dot net final (1)
Asp dot net   final (1)Asp dot net   final (1)
Asp dot net final (1)
amelinaahmeti
 
Asp dot net final (1)
Asp dot net   final (1)Asp dot net   final (1)
Asp dot net final (1)
amelinaahmeti
 
Apollo Cloud Edge Solution - 20180518
Apollo Cloud Edge Solution - 20180518Apollo Cloud Edge Solution - 20180518
Apollo Cloud Edge Solution - 20180518
Jamie (Taka) Wang
 
Asp dot net long
Asp dot net longAsp dot net long
Asp dot net long
Amelina Ahmeti
 
Migration to AWS
Migration to AWSMigration to AWS
Migration to AWS
Jerry Liao
 
Service stack linkedin
Service stack linkedinService stack linkedin
Service stack linkedin
Raju Golla
 
Deep Dive on the Microsoft Dynamics AX Platform
Deep Dive on the Microsoft Dynamics AX PlatformDeep Dive on the Microsoft Dynamics AX Platform
Deep Dive on the Microsoft Dynamics AX Platform
Juan Fabian
 
C++ N Pv2
C++ N Pv2C++ N Pv2
C++ N Pv2
Denis Mishin
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net Fundamentals
Ali Taki
 
Server-side OSGi with Apache Sling (OSGiDevCon 2011)
Server-side OSGi with Apache Sling (OSGiDevCon 2011)Server-side OSGi with Apache Sling (OSGiDevCon 2011)
Server-side OSGi with Apache Sling (OSGiDevCon 2011)
Felix Meschberger
 
Server-side OSGi with Apache Sling
Server-side OSGi with Apache SlingServer-side OSGi with Apache Sling
Server-side OSGi with Apache Sling
Felix Meschberger
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
Amazon Web Services
 
OpenCms Days 2012 - The Dispatch - Running OpenCms 8 on Amazon cloud services
OpenCms Days 2012 - The Dispatch - Running OpenCms 8 on Amazon cloud servicesOpenCms Days 2012 - The Dispatch - Running OpenCms 8 on Amazon cloud services
OpenCms Days 2012 - The Dispatch - Running OpenCms 8 on Amazon cloud services
Alkacon Software GmbH & Co. KG
 

Similar to UXComm: Universal XML Communicator, an Agent Architecture (20)

J2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net WorkshopJ2 Ee Vs. .Net Workshop
J2 Ee Vs. .Net Workshop
 
Cics Ts 4.1 Technical Overview
Cics Ts 4.1 Technical OverviewCics Ts 4.1 Technical Overview
Cics Ts 4.1 Technical Overview
 
Nuxeo ECM - Architecture Overview - May 2008
Nuxeo ECM - Architecture Overview - May 2008Nuxeo ECM - Architecture Overview - May 2008
Nuxeo ECM - Architecture Overview - May 2008
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
 
Asp dot net final (2)
Asp dot net   final (2)Asp dot net   final (2)
Asp dot net final (2)
 
Sap xi online training
Sap xi online trainingSap xi online training
Sap xi online training
 
Asp dot net final (1)
Asp dot net   final (1)Asp dot net   final (1)
Asp dot net final (1)
 
Asp dot net final (1)
Asp dot net   final (1)Asp dot net   final (1)
Asp dot net final (1)
 
Asp dot net final (1)
Asp dot net   final (1)Asp dot net   final (1)
Asp dot net final (1)
 
Apollo Cloud Edge Solution - 20180518
Apollo Cloud Edge Solution - 20180518Apollo Cloud Edge Solution - 20180518
Apollo Cloud Edge Solution - 20180518
 
Asp dot net long
Asp dot net longAsp dot net long
Asp dot net long
 
Migration to AWS
Migration to AWSMigration to AWS
Migration to AWS
 
Service stack linkedin
Service stack linkedinService stack linkedin
Service stack linkedin
 
Deep Dive on the Microsoft Dynamics AX Platform
Deep Dive on the Microsoft Dynamics AX PlatformDeep Dive on the Microsoft Dynamics AX Platform
Deep Dive on the Microsoft Dynamics AX Platform
 
C++ N Pv2
C++ N Pv2C++ N Pv2
C++ N Pv2
 
Net Fundamentals
Net FundamentalsNet Fundamentals
Net Fundamentals
 
Server-side OSGi with Apache Sling (OSGiDevCon 2011)
Server-side OSGi with Apache Sling (OSGiDevCon 2011)Server-side OSGi with Apache Sling (OSGiDevCon 2011)
Server-side OSGi with Apache Sling (OSGiDevCon 2011)
 
Server-side OSGi with Apache Sling
Server-side OSGi with Apache SlingServer-side OSGi with Apache Sling
Server-side OSGi with Apache Sling
 
Getting Started with Serverless Architectures
Getting Started with Serverless ArchitecturesGetting Started with Serverless Architectures
Getting Started with Serverless Architectures
 
OpenCms Days 2012 - The Dispatch - Running OpenCms 8 on Amazon cloud services
OpenCms Days 2012 - The Dispatch - Running OpenCms 8 on Amazon cloud servicesOpenCms Days 2012 - The Dispatch - Running OpenCms 8 on Amazon cloud services
OpenCms Days 2012 - The Dispatch - Running OpenCms 8 on Amazon cloud services
 

Recently uploaded

Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
Gerardo Pardo-Castellote
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Envertis Software Solutions
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
lorraineandreiamcidl
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
Philip Schwarz
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 

Recently uploaded (20)

Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise EditionWhy Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
Why Choose Odoo 17 Community & How it differs from Odoo 17 Enterprise Edition
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Hand Rolled Applicative User Validation Code Kata
Hand Rolled Applicative User ValidationCode KataHand Rolled Applicative User ValidationCode Kata
Hand Rolled Applicative User Validation Code Kata
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 

UXComm: Universal XML Communicator, an Agent Architecture

  • 1. AutonomIQ™ Technology Overview June 2005 By Dr. George Vanecek, Jr.
  • 2. UXComm Objectives  Create a service management middleware, based on  A generalized and extensible protocol mediation and translation and API abstraction mechanism, to  Configure, control, monitor, and provision networked service assets, and  Address heterogeneity, interoperability, and change in the service assets.
  • 3. UXComm Solution  Create an engine that  Is very small by providing minimal built-in functionality  Is O.S. independent  Is powerful by extending its support capabilities on demand  Offers a self-describing service views of native services  Can support an agent architecture
  • 4. Service Request/Response CLIENT or AGENT AGENT Service Request with Reference to a Service Specification XML/HTML Response Download Server Service Specification, Adaptors, and Required Libraries4 1 2 3 Service Request Execution HTTP/S Holds for requests over other protocols such as SNMP or CLI over Telnet.
  • 5. IA2 Engine Applications as Collection of Services Workflow Manager CLI (Telnet) Web (HTTP) Persistent Store Event Manager SNMP Manager WMI Client HPI Client SNMP Agent Example Application Service  IA2 Engine executes services and facilitates communication between services via service requests
  • 6. IA2 Engine (Java) Service Specification (XDS written in XDL) Service Request (XSR) Service Execution Environment Service Request Service Definition (Interface) Service Implementation Shared Libraries External APIs, Protocols, O.S.s, Applications Adaptor Actions
  • 7. XDL: eXtensible Design Language Is a meta-language for authoring the service specifications (XDS’s) Decomposes a complex service into a hierarchy or groups of logical sub-services Offers a natural encoding of pre/post actions associated with each sub-service Is compiled by the engine (not interpreted) Allows imports of engine extensions by loading adaptors and share libraries/stacks
  • 8. Example Specification and Request Cisco IOS Specification Request to Install a tar file
  • 9. XDS Example (as XML) <xds id=“…” …> <node name=“demo” xmlns:io=“/adapter/IOAdapter.jar”> <args> …Arguments… </args> <subnodes> <node name=“createHelloWorld” …> <args>…Arguments… </args> <do> <io:open file=“path”/> <io:write string=“hello world”/> … <io:close/> </do> </node> …Other Commands… </subnodes> </node> </xds> demo createHelloWorld …
  • 10. Script Programs  All command are supplied by adaptors  Commands are simple or structured  Use typed arguments  Support exchange of POJO’s
  • 11. Engine Adaptor  Collection of related commands  Written in Java (Bundled as JAR files)  Designed to extend the engine’s run-time support  Optionally provide access to reusable libraries and stacks  Loaded when some XDS requires them  Support drag & drop visual editing of XDS scripts in IDE  Adaptor commands are engine co-agents:  Self-parsing from XDS XML file  Self-printing to the XDS XML file
  • 12. Example Script Note: IOS XDS implemented as CLI over Telnet with  IO  Expect  FCLang  Exception adaptors.
  • 13. Using AIQ Adaptors XDS <node name … xmlns:an=“URL”> <do> … <an:some-action arg1=“…” arg2=“…”/> … </do> Adaptor Loader/Cache Load Adaptor class SomeAction extends XDSAction { String arg1; String arg2; exec(…) { } printXML(…){ } parse(…) { } } Instantiate Action Execute
  • 14. Name XDS Structure Arguments (name,type,default) Pre Actions Post Actions Exception Handlers Program based on actions from imported adaptors Adaptor/Library Imports  An XDS node represents a sub-service
  • 15. XDS, XWS Specifications IA2 Engine AutonomIQ Engine Architecture O.S. + Hardware JVM XDL Compiler XSR Interpreter XDS Cache Adaptor Cache SNMP IPMI HPIJDBC Telnet WakeOnLAN HTTP/S SBLIM WMI SOAP CIM XML Applications Adaptor/Lib Repository <xsr ref=“http://xds.uxcomm.com/dsp/workflows/provisionBlade.xws”> <provisionBlade tmip=“10.10.10.4” tmport=“6964” …/> </xsr> Service Requests … XML Repository HTTP HTTP HTTP
  • 16. Engine Execution Layers Stack Component Specialization Adaptor Interface Java Component Specification Workflows Application XDS XWS Projects Application Specification Java Threads Task Thread Management Workflow Interface Workflow Scheduler Discovery Fail-over Provisioning On-Demand Asset Tracking (OAT) SNMP Agent SNMP Interface SNMP Manager/Handler SNMP Stack OAT Master/Agents Request Driven Loading Examples Only Adaptor
  • 17. AIQ IDE: The Integrated Development and Execution Environment
  • 18. Building Application Services 1. Using IDE, author services  Create low-level service specifications (to control legacy components)  SNMP, IPMI, WMI, Cisco IOS, …  Create application component service specifications (to add new components)  Workflow Manager, Persistence Store, Event Handler, Event Monitor, …  Create application service specifications (using low-level/application components)  Internet Gateway, Download Server, ATCA NMS… 1. Optionally Build UI 2. Deploy Agent (Engine with Front-End such as HTTP or CLI)  With access to service specifications and support files.
  • 19. IDE: Key Components Manage Projects Service Requests Editor Service Requests Execute/Trace/Debug Manage Adaptors XDS Editor Script Editor
  • 20. IDE: Support Dialogs Manage IDE Add-ons Monitor Threads Edit IDE Properties Profiler Heap Monitor
  • 21. IDE: XDS Editor Support Adaptor Chooser Expression Editor
  • 23. IDE: HTML/Request Wizard HTML Wizard Wizard Interface HTML Text Editor Web Browser Preview and Execution
  • 25. IDE: Request Support XSR Debugger Breakpoints And Single Step Execution
  • 27. SNMP Adaptor and Service  Versions v1, v2c, v3  Manager  Agent  SNMPv2 USM and VACM  Trap/Inform Handler  Proxy Forwarder  MIB  Table Support  MIB Parser for SMIv1 and SMIv2  Programmable MIB queries
  • 28. CLI Adaptor and Service  Telnet/SSH protocols  User-based Access Control  Command history  Command-line editing (e.g., Emacs)  Built-in commands (e.g., help, up)  XDS programmable  Input Syntax  XML or Text Output Syntax (via XSLT)  Multiple-session capable  XSR interoperable
  • 29. AIQ SDK: The Service Development Kit
  • 30. AIQ SDK: Service Development Kit  Engine and agent run-time support.  Set of adaptors and required libraries  IDE for  Authoring service specifications  Authoring simple HTML UIs  Authoring and execution service requests  Support for  Authoring new AIQ Adaptors (given JAPI)  Documentation  Sample Adaptor source code  Sample Projects with support files
  • 31. SDK: Included Adaptors  Admin Agent administration  Array Array data structure  CLID CLI Server  Exception Exception handling  Expect I/O pattern filter  FCLang Flow control and variable support  IO File I/O, sockets, and process support  Log Logging  RegExp Regular Expressions  System Thread, timers, and synchronization  Table Hash table data structure  HTTPD Web server  JDBC SQL  SNMP SNMP v1, v2c and v3 agent, manager, mib  XML XML parser and DOM  Workflow Workflow execution and management
  • 32. AIQ Agent Run-time Requirements  JVM  Supports J2ME CDC 1.1 with base adaptor set (J2SE 1.3).  J2SE 1.4 with full adaptor set  Disk Requirements  AIQ engine 256K  Support libraries <2M (e.g. XML parser, JSSE)  Base adaptor set <1M  Memory Requirements  Minimum 16Mb
  • 33. Summary: What this all means is that  The IA2 engine supports a reconfigurable agent architecture for creating new domain specific parsers and execution environments (XDS’s) for various classes of service requests (XSR’s).
  • 34. Summary  Universal eXtensible Communicator  Ergo, UXComm

Editor's Notes

  1. Original ASPO/AONet UXDriver used as model (direction setter).
  2. Capture the notion that the engine is modular, extensible dialect maker. Instead of a platform that tries to create a majority solution based on a majority rule, it uses a minimal, individual custom…
  3. Low-level service definitions