Академический Документы
Профессиональный Документы
Культура Документы
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 1
Application eXtension
Platform (AXP)
BRKDEV-1001
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 2
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 3
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 4
Integrated Services
Router
Embedded Security
Voice Ready
Application Optimization
L2 Switching
Network Analysis
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 5
$60,000
Direct and
$0
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 6
Feature Breadth
Performance and Services Density
and Scale at
Highest
Performance
3800 Series
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 7
Router-Integrated Services
Extending the Platform by Integrating
Applications and Services
Security Application Network
Voice/Video
Optimization Analysis
AONs
Network Access Extended Voice
Control Module
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 9
Services
Security
IP voice and video
WAN/app optimization
Mobility
Monitoring
WAN/LAN Access
N
tio
ew
a
id
Ap
ol
p
ns
lic
Co
at
Programmatic Router
io
al
n
Integration
ic
C
ys
ap
Ph
a
Custom Prop. Value-Added Network Bus. App.
bi
liti
Scripts Logic Services Utilities Components
se
Enterprise MSPs Integrators ISVs
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 11
June
Application eXtension Platform 2008
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 13
Network-Aware Applications
Use Case: Router Configured with High Bandwidth
Link for Primary, Low Bandwidth Link for Failover WAN
Application Utilizes High Bandwidth Link to
Provide Services to Local Clients Normal Operation
Network Failover with Typical Application
X
X
Utilizes the network for redundancy
Supports standard TCP based applications
Saves on costly HA infrastructure in the branch
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 15
Solution
Custom network utilities to monitor and
troubleshoot the network
X-Windows access allows admin to view
packets and utility results in real-time
Custom SLA utilities to measure
performance
Augmented with Cisco-supported
network utilities
Benefits
Platform to enable service providers to enable their
own tools and monitoring utilities
Management of customer networks—new services
Local survivability of business services
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 16
Solution
ISR with AXP hosting multiple common network
Remote Site
utilities (DNS, DHCP, TFTP, AAA)
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 17
Applications
multiple applications: IVR, Cisco
CallManager
Cisco Unity® Express, Contact Express
GE-1 GE-2
Lightweighted recording/ AUX
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 19
Java
Cisco IOS Interface
(C/C++) Application
Monitoring App
Standards-Based Hosting Infrastructure OSGI
Hardened Cisco Linux OS with virtualization Event Triggers Perl/Python
Java
Complete install/upgrade packaging utilities
Control Plane Virtual Instance Virtual Instance
Full appliance functionality
Data Plane Extensible Cisco IOS-Like CLI
Logging and debugging infrastructure
Cisco Linux OS
AUX GE-1 GE-2
Programming Support
Support for Native x86 C/C++
Java support with optional OSGI and Tomcat
Scripting support (BASH, Perl, Python) Cisco IOS APIs integrate the Application
into the Network
Value-Added Features Programmatically configure and monitor Cisco IOS
Serial tunneling providing application access to
React to changes in network conditions
external devices
Syslog server to store logs from router and other Programmatically influence routing, QoS, and
local devices IP-SLA
NetFlow collector to persist and analyze flows locally Monitor packets flowing through network
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 20
CPU
Index
Remaining
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 21
Supported Hardware
AIM-APPRE-102-K9 ISR Routers Supported
CPU: 300 Mhz
AIM 102 NME 302 NME 522
Memory: 256 MB
Compact Flash: 1 GB 1841 Y
NME-APPRE-302-K9 2801 Y
NME-APPRE-522-K9 2851 Y Y
Integrated Service
Service Engine 1/0 Engine 0/0 Cisco IOS
Interface Interface
WAN
WAN LAN LAN
Int Int
Development Cycle
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 24
Binaries
Package
ISR
AXP
Auth File + .pkg
Private Key AXP Blade
CLI> software install add
url ftp://.....AXP.pkg
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 27
AXP SDK
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 28
File name
axp-sdk<version>.tar.gz
Includes
Packaging and bundling tools
RPM extractor: rpm_extractor.sh
Package information: pkg_info.sh
Package builder: pkg_build.sh
Library dependency checker: pkg_check.sh
APIs
CLI plug-in utility tools
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 29
Packaging and
Installation
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 30
Checksum of
Certificate Encrypted
with AXP Private key
Install/Update
4
3
6 5
Uninstalling packages
Software uninstall
Upgrading packages
Third-party upgrade applications must meet the following criteria
UUID must match application being upgraded
Name must match application being upgraded
Version must be different than the application being upgraded
Commands
software install upgrade url <url> (for anonymous ftp directory)
software install upgrade url <url> username <user> password <pass>
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 35
API Overview
Languages supported
Most of the APIs support: C/C++, Java, Python, and Perl
Cisco IOS Service API (CLI)
Query and configuration capabilities into Cisco IOS router configuration
CLI Service API (CLI)
Query and configuration capabilities into AXP service module configuration
AXP Triggering API
Leverages Embedded Event Manager (EEM)
Send notifications to the application based on events; allows the application to react to
network conditions, changes to Cisco IOS configuration and other Cisco IOS events
Network packet monitoring
Mechanisms to send packets to third-party application for analysis or processing
Promiscuous mode
Serial device control
Access to serial port on Cisco IOS router where blade is deployed
Other add-on packages
Discuss functionality
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 36
Service API
Application
Cisco IOS
Cisco IOS
Services
Return_value(s)
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 37
Config_command(s)
AXP CLI
Exec_command(s)
Service API
Application
Cisco IOS
Return_value(s)
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 38
At event occurrence
TCL script is triggered by EEM
Event will be delivered to EEM event daemon on AXP host side
Event is then dispatched to registered application
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 40
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 42
Local AXP host TTY device interacts with the external Cisco IOS
serial device
Serial device must be RFC 2217 compliant
Device: i.e., /dev/modem, /dev/gps
Serial port settings (e.g., baud rate) configured through Cisco IOS
Async/Aux Port
Application
External
Serial
Tunnel
/dev/ttyx Device
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 43
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 45
CLI Plug-In
Allows hosted applications to add commands to the CLI
Application must depend upon package
axp-cli-plugin.<platform>.<version>.pkg
Components
CLI plug-in
XML definition file
Defines the commands specified by the user to execute the action script
Action
Executable file that runs when the CLI command is issued
Application
Must include a call to startCLIDistributionVMThread
Starts CLI plug-in listener
Must not terminate
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 46
3 7
1
AXP CLI Server XML
(Commands, Action Class)
4 6
2 5
Application Action
(Listener) Class
1. Register 5. Receive/Respond
2. Start up 6. Pass to CLI Server
3. Command entered 7. Pass to CLI Console
4. Send to Listener
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 47
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 48
se-10-1-1-20(exec-appservice-showtime)>
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 50
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 51
VI Running;
App_A Online —
App Health Unknown
Alive/Down VI Running;
App_B Online
Initializing App Health Known
VI Is Down;
App_C Offline —
App Is Down
Failure Detection
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 54
APP=test.sh
APPNAME_NO_EXT=test
PID_FILE=/var/run/${APPNAME_NO_EXT}.pid
if [ ! -e $PID_FILE ]; then
exit 1;
fi
PID_FROM_FILE=`cat ${PID_FILE}`
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 56
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 57
Recommended Reading
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 59
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 60
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 61
Functionality—Runtime—Startup
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 63
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 65
Packaging—Suggested
Deployment Details
/usr/local/<app>
/usr/local/<app>/lib + LD_LIBRARY_PATH
/usr/local/<app>/bin/postinstall.sh
#!/bin/sh
ln -s /bin/login.sh /bin/console
/usr/local/<app>/bin/login.sh
#!/bin/sh
/bin/bash -login
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 68
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 69
}
}
catch(Exception e){
System.out.println("Caught exception " + e.getMessage());
}
finally{
if(em!=null){
em.Deregister()
}
}
}
}
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 72
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 73
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 74
interface Serial0/0/0
physical-layer async
no ip address
encapsulation slip
line 0/0/0
no exec
transport input telnet
speed 115200
netconf max-sessions 16
netconf beep listener 2000 sasl SASL_PROFILE
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 75
app-service remoteSerialDevTest
bind interface eth0
hostname se-10-1-2-7
bind serial vtty000 modem
Note: The device vtty000 is the device name provided by the command ‘show device serial’
BRKDEV-1001
14592_05_2008_c1 © 2008 Cisco Systems, Inc. All rights reserved. Cisco Public 76