1
Realtime Application QOS Monitoring (RAQMON)
60th IETF Session – San DiegoRMON Work Group
Anwar Siddiqui, AvayaBin Hu, Motorolla
Mahfuzur Rahman, PanasonicEugene Golovinsky, BMC Software
Yong Kim, Broadcom
<draft-siddiqui-rmonmib-raqmon-tcpsip-00.txt>
2
Motivation
To facilitate real time reporting from embedded devices– embedded device friendly transport binding to carry
RAQMON PDUs within RAQMON specification
RMON WG email thread and email concensus compiled into this draft
3
Options covered in the draft
OPTION A: RAQMON PDU over TCP
OPTION B: RAQMON PDU over SIP Event/Notification
Choice to RMON Work Group
a. Option A only
b. Option B only
c. Option A and B both
4
Functional RAQMON Framework
RAQMON PDU(TCP or SIP or SNMP)
RAQMON Report
Collector (RRC) # 1
(IP Address, port)
SNMPManagement Application
IP End Device
RAQMON Data Source
(RDS)
APPLICATION
RAQMON PDU(TCP or SIP or SNMP)
RAQMON MIB
(IP Address, port)
IP End Device
RAQMON Data Source
(RDS)
APPLICATION
SNMP
RAQMON Report
Collector (RRC) # 2 RAQMON
MIB
Application Communication
5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | V |PDT = 1|B|T|P|I| RC | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | DSRC | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SMI Enterprise Code = 0 | Report Type = 0 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ …………….
…………….…………….
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | …… | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SMI Enterprise Code = “VENDOR”| Report Type = 0 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
………….………….………….
RMON Reserved
Vendor Extension
RMON Specified Names/Length
“APP filled Value”
“App filled vendor specific Value”
Vendor Specified Names/Length
RAQMON PDU
TCP Transport binding
Option A: RAQMON PDU over TCP
6
Option A: PROS vs. CONS
Basic Transport layer Services within TCP comes for FREE
– Congestion– Fragmentation/De-Fragmentation– Retransmission– Flow control
RAQMON PDU Definition has gone thru iterations within earlier RAQMON PDU work within RMON
– Trivial work to define the TCP binding
Maximal deployment possible in embedded device
– Every IP Device has TCP stack
New Charter ?
PROS CONS
7
Option B: RAQMON PDU over SIP Event
<?xml version="1.0" encoding="UTF-8"?> <raqmonpdu xmlns="urn:ietf:params:xml:ns:rmpdu" xmlns:raqmon="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:ietf:params:xml:ns:rmpdu rmpdu.xsd" dsrc="12345">
<smi enterpriseCode="0"> <rc_n id="1">
<ntp>14587393</ntp> <da>1.2.3.4</da> <ra>2.3.4.5</ra> <jitter type="inter-arrival">1234</jitter> <jitter type="absolute">sdfsdf</jitter>
</rc_n> </smi> <smi enterpriseCode=“VENDOR’S SMI">
<extension> [VENDOR SPECIFIC INFO that vendors can define] </extension>
</smi> </raqmonpdu>
NOTIFY sip:[email protected] SIP/2.0 From: <sip:[email protected]>;tag=4442 To: <sip:[email protected]>;tag=78923 Date: Mon, 28 June 2004 03:59:09 GMT Call-Id: k3l43id034kevnx7334s CSeq: 20 NOTIFY Contact: <sip:[email protected]> Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY Event: raqmon Accept: application/sdp, message/sipfrag Subscription-State: active;expires=3600 Content-Type:application/raqmon-pdu+xml Content-Length: ..
New SIP Event Package (IANA Registered)
RAQMON PDU
defined (XML SCHEMA)
SIP NOTIFY HEADER
RMON WG RAQMON PDU
8
Option B: PROS vs. CONS
Basic Transport layer Services within SIP comes for FREE
– Congestion– Fragmentation/De-Fragmentation– Retransmission– Rate Control– Security
XML Schema can be as simple or fancy as it needs to be
Re-use SIP NAT/Firewall Traversal is covered within SIP Framework
WG Re-charter issue
Limited by SIP Deployment in hand devices – not as widely deployed as TCP
PROS CONS
9
Backgrounder
10
RAQMON Network Configuration
Telephone
Laptop computer
Telephone
IP Network
Video/IP/IM/Voice
Voice over IP
Router
Media GatewayFax
Wireless Gateway
Regional Report Collector (Periodic Packets to populate MIB)
LAN/VPN INTRANET
Laptop computer
Corporate Network
Application Administrator
Monitoring Applications via
SNMP
PDANetwork /
Application Service Provider
SNMP
SNMP
SNMP
SNMP
Statistics Reported
Telephone
PDABluetooth
11
RAQMON Context Setting
IP Network
Applications
RTP / FTP/ HTTP
TCP/UDP
MAC IEEE 802.3
PHYSICAL
IP
MAC 802.3
IP
IP End Points Router
PHYSICAL
MAC 802.3
IP
Router
PHYSICAL
Applications
RTP / FTP/ HTTP
TCP/UDP
MAC IEEE 802.3
PHYSICAL
IP
IP End Points
PDAMG
Streaming Media, Transaction, Bulk data transfer etc
Application level priority (e.g. RSVP for S1, but no RSVP for S2)
Various packet level priority ( TOS, DiffServ etc.)
Domain 1
Domain 2 …….
Domain N+1
Multiple Equipment vendors, Multiple geographic locations, Multiple xSPs Control multiple Administrative and Provisioning domain
Domain N
12
RAQMON Framework Definition
RRC
Scope of the Framework
SNMP
RAQMON MIB
RDS RDS
X End DeviceEnd Device
RAQMON PDU is Out of Communication Data Forwarding Path
12
UNDERLYING TRANSPORT
(RTCP, SNMP)
1
2
Communication Data Forwarding Path
RDS/RRC RAQMON PDU Path
(e.g. RTCP, HTTP, FTP, TLS, SIP, H.323)
Communication Data Forwarding Path
13
- Data Source Name (DN) - Receiver Name (RN)- Data Source Address (DA) - Receiver Address (RA) - Data Source Device Port used - Receiver Device Port used - Session Setup Date/Time - Session Setup delay - Session duration- Session Setup Status - End-to-End Delay (Round Trip)- End-to-End Delay (One Way)- Inter Arrival Jitter - Total number of Packets Received - Total number of Packets Sent
- Total number of Octets Received- Total number of Octets Sent - Cumulative Packet Loss - Packet Loss in Fraction (in %)- Source Payload Type - Receiver Payload Type - Source Layer 2 Priority - Destination Layer 2 Priority - Source Layer 3 Priority - Destination Layer 3 Priority - CPU utilization in Fraction (in %)- Memory utilization in Fraction (in %)
- Application Name/version
Current set of suggested metrics …..
Parameters “pushed” from RDS to RRC
Framework Accommodates addition of new parameters to the list …..
14
RAQMON PDU Size - over time
1st PDU for VoIP- Data Source Name (DN) - Receiver Name (RN)- Data Source Address (DA) - Receiver Address (RA) - Data Source Device Port used - Receiver Device Port used - Session Setup Date/Time - Session Setup delay - Session Setup Status - End-to-End Delay (Round Trip)- Inter Arrival Jitter - Total number of Packets
Received - Total number of Packets Sent- Packet Loss in Fraction (in %)- Source Payload Type - Receiver Payload Type - Source Layer 2 Priority - Destination Layer 2 Priority - Source Layer 3 Priority - Destination Layer 3 Priority - CPU utilization in Fraction (in
%)- Memory utilization in Fraction
(in %) - Application Name/version
2nd PDU for VoIP- Data Source Name (DN) - Receiver Name (RN)- End-to-End Delay (Round Trip)- Inter Arrival Jitter - Total number of Packets
Received - Total number of Packets Sent- Cumulative Packet Loss - Packet Loss in Fraction (in %)- CPU utilization in Fraction (in %)- Memory utilization in Fraction (in
%)
………………..
Nth PDU for VoIP- Data Source Name (DN) - Receiver Name (RN)- Session Setup Duration- End-to-End Delay (Round Trip)- Inter Arrival Jitter - Total number of Packets
Received - Total number of Packets Sent- Cumulative Packet Loss - Packet Loss in Fraction (in %)- CPU utilization in Fraction (in
%)- Memory utilization in Fraction
(in %)
tt1 t2 tn
Avg. MTU ~ 1500 Bytes Recommended
NOTIFICATION upto ~ 490 Bytes
15
Suggested RAQMON Use Case Examples Based on Application Type
RAQMON PDU for VoIP- Data Source Name (DN) - Receiver Name (RN)- Data Source Address (DA) - Receiver Address (RA) - Data Source Device Port used - Receiver Device Port used - Session Setup Date/Time - Session Setup delay - Session duration- Session Setup Status - End-to-End Delay (Round Trip)- End-to-End Delay (One Way)- Inter Arrival Jitter - Total number of Packets Received - Total number of Packets Sent- Total number of Octets Received- Total number of Octets Sent - Cumulative Packet Loss - Packet Loss in Fraction (in %)- Source Payload Type - Receiver Payload Type - Source Layer 2 Priority - Destination Layer 2 Priority - Source Layer 3 Priority - Destination Layer 3 Priority - CPU utilization in Fraction (in %)- Memory utilization in Fraction (in %)
- Application Name/version
RAQMON PDU for Instant Messaging
- Data Source Name (DN) - Receiver Name (RN)- Data Source Address (DA) - Receiver Address (RA) - Data Source Device Port used - Receiver Device Port used - Session Setup Date/Time - Session Setup delay - Session duration- Session Setup Status - Total number of Packets
Received - Total number of Packets Sent- Cumulative Packet Loss - Source Layer 3 Priority - Destination Layer 3 Priority - CPU utilization in Fraction (in
%)- Memory utilization in Fraction
(in %) - Application Name/version
RAQMON PDU for Pagers- Data Source Name (DN) - Receiver Name (RN)- Data Source Address (DA) - Receiver Address (RA) - Data Source Device Port used - Receiver Device Port used - Session Setup Date/Time - Session duration- Session Setup Status - Total number of Packets Sent- Application Name/version
16
Congestion Safety
Use TCP as Transport when possible– Scalability of RRCs may be reduced!
If TCP cannot be used following modes of operation are recommended
a. Constant Transmission Rate– 1 RAQMON PDU every 2 minutes (as good as TCP)– End of communication Session– “Engineered” Constant Rate e.g. 1 PDU every 5 sec
b. Retransmission timers with back offs – Ping/Pongs e.g. Process SNMP INFORMS from RRC
c. By restricting transmission to MTU Size
No more than 10% network bandwidth be used for RAQMON
17
RAQMON PDU Transported Over RTCP or SNMP - changes in draft-02
RAQMON PDU over RTCP– RAQMON PDUs inside RTCP APP Packets per RFC 1889– RTCP XR reports can also be used carry RAQMON PDUs
RAQMON PDU over SNMP– Encoding RAQMON PDU by using the RAQMON RDS MIB
– Map the RAQMON PDUs on SNMP Notifications transport
RAQMON PDU
Name=RMON (ascii)
SSRC/CSRC
LengthPT=204Version & subtype
RAQMON specific and
IANA
Registered
RTCP APP Packet