C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y M.T.S. Multiprotocol Test Suite Technical presentation Fabien Henry

Slides:



Advertisements
Similar presentations
Running SIP behind NAT Dr. Christian Stredicke, snom technology AG Tokyo, Japan, Oct 22 th 2002.
Advertisements

Test Case Management and Results Tracking System October 2008 D E L I V E R I N G Q U A L I T Y (Short Version)
Snort & ACID. UTSA IS 6973 Computer Forensics SNORT.
Snejina Lazarova Senior QA Engineer, Team Lead CRMTeam Dimo Mitev Senior QA Engineer, Team Lead SystemIntegrationTeam Telerik QA Academy SOAP-based Web.
Nada Abdulla Ahmed.  SmoothWall Express is an open source firewall distribution based on the GNU/Linux operating system. Designed for ease of use, SmoothWall.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
CS490T Advanced Tablet Platform Applications Network Programming Evolution.
JMeter Workshop Friday 1 December 2006 Anthony Colebourne IT Services The University of Manchester.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
SIMPLEStone – A presence server performance benchmarking standard SIMPLEStone – A presence server performance benchmarking standard Presented by Vishal.
MCITP Guide to Microsoft Windows Server 2008 Server Administration (Exam #70-646) Chapter 14 Server and Network Monitoring.
Introduction to eValid Presentation Outline What is eValid? About eValid, Inc. eValid Features System Architecture eValid Functional Design Script Log.
Monitoring System Monitors Basics Monitor Types Alarms Actions RRD Charts Reports.
Check Disk. Disk Defragmenter Using Disk Defragmenter Effectively Run Disk Defragmenter when the computer will receive the least usage. Educate users.
Click to edit Master subtitle style Chapter 17: Troubleshooting Tools Instructor:
Hands-On Microsoft Windows Server 2008 Chapter 11 Server and Network Monitoring.
Lecture slides prepared for “Business Data Communications”, 7/e, by William Stallings and Tom Case, Chapter 8 “TCP/IP”.
Windows Server 2008 Chapter 11 Last Update
Overview SAP Basis Functions. SAP Technical Overview Learning Objectives What the Basis system is How does SAP handle a transaction request Differentiating.
Automatic Software Testing Tool for Computer Networks ARD Presentation Adi Shachar Yaniv Cohen Dudi Patimer
Linux Operations and Administration
Form Handling, Validation and Functions. Form Handling Forms are a graphical user interfaces (GUIs) that enables the interaction between users and servers.
INTRODUCTION TO WEB DATABASE PROGRAMMING
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
IT 424 Networks2 IT 424 Networks2 Ack.: Slides are adapted from the slides of the book: “Computer Networking” – J. Kurose, K. Ross Chapter 2: Application.
K. Jamroendararasame*, T. Matsuzaki, T. Suzuki, and T. Tokuda Department of Computer Science, Tokyo Institute of Technology, JAPAN Two Generators of Secure.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y IMSLoader Technical presentation Fabien Henry IMSLoader.
1 GAIA VoIP traffic generator and analyzer Presentation by Amrut Bang Ashish Deshpande Vijay Gabale Santosh Patil Sponsored by GS Lab Pvt. Ltd Pune Institute.
JavaScript, Fourth Edition Chapter 12 Updating Web Pages with AJAX.
9/15/2015© 2008 Raymond P. Jefferis IIILect Application Layer.
Tutorial 1 Getting Started with Adobe Dreamweaver CS3
Slide title 70 pt CAPITALS Slide subtitle minimum 30 pt M.T.S. Multiprotocol Test Suite DEMOS Fabien Henry
CINEMA’s UbiComp Subsystem Stefan Berger and Henning Schulzrinne Department of Computer Science Columbia University
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
Slide title 70 pt CAPITALS Slide subtitle minimum 30 pt Fabien Henry M.T.S. Multiprotocol Test Suite Technical presentation.
Objectives Configure routing in Windows Server 2008 Configure Routing and Remote Access Services in Windows Server 2008 Network Address Translation 1.
Module 7: Fundamentals of Administering Windows Server 2008.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
Call Control with SIP Brian Elliott, Director of Engineering, NMS.
1 Version 3.0 Module 11 TCP Application and Transport.
C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y MTS Multiprotocol Test Suite Demos Fabien Henry
Module 10: Monitoring ISA Server Overview Monitoring Overview Configuring Alerts Configuring Session Monitoring Configuring Logging Configuring.
Cisco S2 C4 Router Components. Configure a Router You can configure a router from –from the console terminal (a computer connected to the router –through.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y IMSLoader Technical presentation Fabien Henry IMSLoader.
SIP Performance Benchmarking draft-ietf-bmwg-sip-bench-term-02 draft-ietf-bmwg-sip-bench-meth-02 July 24, 2010 Prof. Carol Davids, Illinois Inst. of Tech.
Computer Networking From LANs to WANs: Hardware, Software, and Security Chapter 13 FTP and Telnet.
Technical Presentation
Agilent Technologies Copyright 1999 H7211A+221 v Capture Filters, Logging, and Subnets: Module Objectives Create capture filters that control whether.
Security, NATs and Firewalls Ingate Systems. Basics of SIP Security.
Copyright © by Shayne R Flint Simplified Web Application Development Shayne R Flint Department of Computer Science Australian National University.
FTP File Transfer Protocol Graeme Strachan. Agenda  An Overview  A Demonstration  An Activity.
Building High Performance, Robust Server Applications with Internet Information Server 5.0 Van Van IIS - Program Manager Microsoft Corporation.
SOAP-based Web Services Telerik Software Academy Software Quality Assurance.
SIP Performance Benchmarking draft-ietf-bmwg-sip-bench-term-01 draft-ietf-bmwg-sip-bench-meth-01 March 22, 2010 Prof. Carol Davids, Illinois Inst. of Tech.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Anritsu Automation Platform (AAP) AAP PC Connects to the system via IP connection (system switch) AAP was developed to add features that were requested.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y IMSLoader Demos Fabien Henry
AFS/OSD Project R.Belloni, L.Giammarino, A.Maslennikov, G.Palumbo, H.Reuter, R.Toebbicke.
THE EYESWEB PLATFORM - GDE The EyesWeb XMI multimodal platform GDE 5 March 2015.
Technical lssues for the Knowledge Engineering Competition Stefan Edelkamp Jeremy Frank.
Rohde & Schwarz Topex TOPEX IP Radio Gateway July 2011.
Distributed Computing & Embedded Systems Chapter 4: Remote Method Invocation Dr. Umair Ali Khan.
Postech DP&NM Lab Session Initiation Protocol (SIP) Date: Seongcheol Hong DP&NM Lab., Dept. of CSE, POSTECH Date: Seongcheol.
How to develop a VoIP softphone in C# by using OZEKI VoIP SIP SDK This presentation demonstrates the first steps concerning to how to develop a fully-functional.
Windows Server 2003 { First Steps and Administration} Benedikt Riedel MCSE + Messaging
WWW and HTTP King Fahd University of Petroleum & Minerals
Presentation transcript:

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y M.T.S. Multiprotocol Test Suite Technical presentation Fabien Henry MTS

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 2 2 Basics Input files Interfaces Protocol Core Logging Statistics Documentation Master/slaves Capture/Genscript Conclusion MTS Table of contents

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 3 3 MTS Basics : features Multi-protocol tester specially designed for IMS architecture : * IMS protocols (SIP, RTP, DIAMETER, HTTP, GTP) + * application ones (iptv, mail, sms, aaa, signaling, media, alarm/notif, nat, …) + * basic transport ones (TCP, UDP, SCTP, TLS) Functional, non-regression or protocol tests => ‘Sequential’ mode Load, performance endurance stress tests => ‘Parallel’ mode Simulates equipments => client, server or both sides System supervision => capture mode (like wireshark) Definition of tests case in XML files : test and scenarios input files Graphical (very convivial) or command line (for test automation) user interfaces Easy to use : logging management and rich statistics presentation. Pure software solution (use standard IP network card) => support only IP based protocol (for PSTN combined with Asterisk acting as a gateway) Written in java => supports many famous platforms : Windows and Linux supported Open Source product since begin 2012 with GPLV3 license => free to use Possible to run a test remotely with the master feature

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 4 4 MTS Basics : architecture

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 5 5 MTS Described in XML syntax Used directly in the tool with the user interfaces A test begins with a tag => tests suite A test is defined as a testcase list Each testcase ( tag) is composed of a list of scenarios => call-flow chart For each scenario ( tag), the content is a reference to the XML scenario file which is relative to the test location or absolute => call-flow entity For all tags, you have “name” and “description” attributes Changes in the test file need a test reload from the user XML syntax : /N* /N* Input files : test description

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 6 6 Described in XML syntax A scenario file begins with the tag Consists in a list of operations which are run sequentially in the time When an operation failed (often a timeout on message receipt), the scenario running is stopped and return a failure to the testcase Protocol operations (this is the main goal of the tool) Core operations For all operations, you could defined 3 common attributes : “name”, “description” and “state” Changes in scenario file are taken into account immediately (without any reload) XML syntax : /N* MTS Input files : scenario description

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 7 7 MTS Interfaces : GUI overview

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 8 8 MTS Interfaces : GUI features Useful for scripts writing, testing and debugging Starts with “All programs/mts-x.y.z” windows menu Goes into the {root_dir}/bin directory and launches by the “startGui.xxx ” command Open, close, reload, edit the test file => menu “File” Show the list of testcases in the main windows Run a testcase manually one or many times => “Run” button Run a part of a test sequentially mode (only selected ones) Run a part of a test in parallel mode (simultaneously) at a given load (testcase by sec) => menu “Test” Configure the logging (file or memory) and display the memory main logs => menu “Log” Generate and show the statistic HTML report =>menu “Stats”

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 9 9 Based on message elements : data message format (text / binary) * => to send a message * => to wait until a message is received with filtering features Uses a way of transport : a channel element (connection) * => to open a transport channel * => to close a transport channel Listens dynamically to a host/port : listenpoint element * => to create a listenpoint * => to remove a listenpoint Capture network traffic on a interface : probe element => to create a capture probe => to remove a capture probe => Standardized XML grammar (easy to learn) MTS Protocol : operations

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 10 Generic stack features available for all protocols Generic information on messages like “type”, “result”, “request” flag, transport information (listenpoint channel)... Support of transactional protocol : transaction = a request and many response messages Manages automatically the retransmission of requests if no responses after a timeout (useful for un reliable transport as UDP) Perform retransmission filtering : not dispatch to the scenario Internal routing mechanism to dispatch a received message to the right scenario : using scenario name, message id, transaction id (for response) Support of session protocol : session = an initial messages and many subsequent requests MTS Protocol : generic stack features

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 11 MTS Protocol : supported main protocols (1/2) ProtocolStackTransportIO block Trans action SessionListen point ChannelCapture / Genscript IMS / EPS SIP jainJain SIP stackUDP,TCP, SCTP,TLS,RFC NYes No SIP lightJava.netUDP,TCP, SCTP,TLS,RFC B/NYes NoYes/Yes UDP only DIAMETERDK open sourceTCP, SCTPNYesNo Yes/Yes RTP jmfJMF stackUDPNNo YesNo RTP lightJava.netUDPB/NNo YesNoYes/Yes RTP flowJava.netUDPB/NNo YesNoYes HTTPJakartaTCP, TLSB/NYesNo YesNo GTP V2, V1, Prime Java.netTCP, SCTPB/NYesNoYes No Transport UDPJava.netUDPB/NNo YesNo TCPJava.netTCPB/NNo Yes No SCTPDK open sourceSCTP (Linux only) BNo Yes No TLSJava.netTCPBNo Yes No

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 12 (1)supports only M3UA, BICC, ISUP, SCCP layers and not ASN1 ones (like CAP, MAP, TCAP, …) MTS Protocol : supported application protocols (2/2) ProtocolStackTransportIO block Trans action SessionListen point ChannelCapture / Genscript Application RADIUSGP open sourceUDPBYesNo YesNo RTSPJava.netTCP,UDPB/NYesNoYes No SMTPJava.netTCPB/NYesNoYes No IMAPJava.netTCPB/NYesNoYes No POPJava.netTCPB/NYesNoYes No SMPPJava.netTCPB/NYesNoYes No UCPJava.netTCPB/NYesNoYes No SIGTRAN (1)Java.netTCP,SCTPB/NYesNo H248 (text)Java.netUDP, SCTPB/NYesNoYesNo MGCPJava.netUDP, SCTPB/NYesNoYesNo MSRPJava.netTCP, TLSB/NYesNoYes No SNMPSnmp4j MibbleUDPB/NYesNoYesNo STUNJava.net GP utilUDPB/NYesNoYesNo ETHERNETlibpcap + jpcapIPNNo Yes

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 13 MTS Protocol : benchmark Short summary of the main load figures on a Dell 5400 computer (2x4 core RAM 4gb): 1) SIP : 300 CAPS out CAPS in, calls (SIP only) 2) SIP/RTP: 1200 calls (SIP/RTP send only) 3) SIP UA: subscribers (for 3 GB of RAM) 4) Diameter: 5000 transaction/s 5) HTTP: 4400 transaction/s To have more information about performance figures, please look at the benchmark document.

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 14 MTS Core : main operations : set an internal parameter with a specific operation type; eg with a setFromMessage operation, you could analyze a received message : perform a basic test with a given condition type and put the test in the failed status / / : Define complex condition by using logical operator combining many operations. : make a conditional branching with a complex condition : make a conditional branching with equals condition / : jump to a label in the scenario running : perform a loop in the scenario running : run an external system command : perform a wait in the scenario running : synchronizes 2 scenarios with “wait” (blocking) and “notify” (releasing) actions. DEPRECATED : use instead of. : stops the scenario execution and returns optionally a failure : force the execution of a block even when there is a failure : escape errors on a sequence of operations

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 15 Useful for functional, non-regression, protocol testing 2 scopes for logging messages: scenario and application 3 storage locations: on files or into memory (GUI only) or no location (logs disabled) 4 levels : the minimum level is configurable = > DEBUG(0)/INFO(1)/WARN(2)/ERROR(3) 5 topics : for filtering =>CALLFLOW/PROTOCOL/CORE/PARAMETER/USER operation : the user defines its own logging information MTS Logging : features

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 16 MTS Logging : example

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 17 MTS Statistics : features Used for load, endurance, stress testing A real-time statistics panel (GUI only) Generation of an HTML report statistics on user demand and automatically at the test end. Many predefined statistics counters organized in sections : =>Request/Response/Transaction/Session/RtpflowTransport/Protocol/ Test/Testcase/Scenario/Operation/ Config/User operation : the user defines his own stat counter Counters organized as a tree to have more and more accurate information Temporal graph or value histogram or the same into the CSV format too

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 18 MTS Statistics : real-time examples

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 19 MTS Statistics : HTML report examples

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 20 MTS Interfaces : command line (CMD) Useful to run script automatically or with high performance Opens, runs the test and generates the statistics report Command startCmd.xxx usage : Usage: startCmd.xxx  => the test description file (mandatory)  -seq[uential]|-par[allel]| => the running mode (mandatory) Changes some editable parameters (-param option) or config values (-config) on the command-line Able to configure logging and statistic features with specific options on the command-line Some features are activated by key pressing (stop and generate report)

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 21 MTS Documentation : tutorial & user manual Tutorial : a complete a list of testcases given as examples * SIP call-flows (rfc 3261) and a lot of SIP extensions (INVITE, REGISTER, REGISTER_MD5, PRACK, UPDATE, PUBLISH, MESSAGE, SUBSCRIBE, NOTIFY, REFER, INFO, …) * SIP agent (PROXY, B2B, REGISTRAR, FORKING) * DIAMETER messages (rfc 3588) and all IMS interface (Cx, Dx, Rx, E2, E4, Rq, Gqp, …) * IMS Call-flow (TS 24228) (INVITE, INVITE_PRACK, REGISTER, REGISTER_MD5, SUBSCRIBE/NOTIFY, MESSAGE) * IMS core CSCF server (routing, authentication, AS trigerring features) => Learn the product or the protocols (pedagogic interest) => Start some new testcases as a starting point and just customize them (no blank page : => no worry for the tester) User manual : a detailed description of MTS features Technical presentation & demos : this one Provided with the product in the tool main directory

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 22 MTS Master/slaves : architecture

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 23 MTS Master/slaves : features Master function : GUI user interface to launch and monitor the running of many tests on remote hosts Slave function : command line process to run a test on the host on master demand Communication between master and slaves uses RMI protocol Input => Master XML file with a list of tests and remote URL to reach the slave hosts Runs the selected tests sequentially or in simultaneously mode (parallel) Output => Tests progress and status, statistics HTML report

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 24 MTS Master/slaves : GUI

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 25 MTS Capture mode For supervision of production equipment No message generated by tool : complete passive behaviour Check the messages on the network, detect the bad one and react by statistic counter, logs information, mail sending or SNMP trapping Capture network traffic on a interface : probe element => to create a capture probe => to remove a capture probe Of course all core operations available for getting information on a capture message (setFromMessage) and for testing it ( operation) Available on SIP (all transports), DIAMETER, RTP, RTPFLOW protocols Example provided in the tutorial for each of them

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 26 MTS Genscript module Generate automatically the XML scripts from a network capture (wireshark pcap format) Possibility to make a filter on messages contained into the capture file : based on a list of URL to simulate ( : : format) The user provides a capture file and a test file to get the result Create the scenario XML file (name is the port provided in URL) Generate and operations If port is not the default one, also generate and operations Add the scenario into the test file at the testcase level (name is the capture file name); if testcase does not exist, then create it. Available on SIP (UDP only), DIAMETER, RTP, RTPFLOW protocols Example provided in the tutorial into /tutorial/genscript Usage: genScript.xxx  => the list of URL to simulate (mandatory)  => the network capture file.pcap (mandatory)  => the test description file.xml (mandatory)

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 27 MTS Conclusion : last version story and future (2/2) V5.0.x : T => RTPFLOW improvement (for PSTN), Passive mode (capture) support Win 7, SUN JRE 7 V5.1.x : T => STUN V5.2.x : T => SIGTRAN (none AP layer) V5.3.x : T => DIAMETER improvement + genScript module V5.4.x : T => MGCP + Remove license control V5.5.x : T => Open Source version + new unified GUI V5.6.x : T => DIAMETER improvement + TCP/UDP socket parameters support + importSipp module + GTP (experimental) V5.7.x : T => GTP protocol V1, V2, Prime V5.8.x : T => SIGTRAN AP layers support, testcase multi- instances, binary to/from number operations

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 28 MTS Conclusion : new features pipe and priorities P.1 : Support AP layers in SIGTRAN protocol suite using an external asn.1 encoder P.1 : Manage many instances of the same testcase, add an instances attribute on the object to control the testcase population P.2 : Improve genScript result for DIAMETER (write the code and the name) P.2 : For DIAMETER take the vendorID into account to make link between code and name for AVP (MANTIS 000xxxxx) P.3 : Develop a light DIAMETER stack without Capability Exchange P.3 : Implement the capture and genScript for HTTP (change in the HTTP stack in required)

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 29 MTS Conclusion : benefits Rich : supports of all IMS protocols (SIP, RTP, DIAMETER, HTTP), others application ones (Radius, HTTP, SMTP, RTSP) and transport ones (TCP, UDP, SCTP, TLS) Customizable : easy to change the call flows or messages (XML input file) => no hard development needed Simple to use : to define the test scripts => reuse the tutorial scripts and just customize and configure them; quickly run what you want to test (no blank page syndrome) Easy to test : No script to develop to reproduce a network capture (for SIP, DIAMETER, RTP protocol only) using the genscript module Multi-purpose : functional, load testing, server-side simulation or supervision. Convivial : easy to use with its graphical user interface to run and tune the scripts : useful logging and statistics features High-performance: about 5000 trans/s in DIAMETER and 400 CAPS in SIP Software : No specific hardware (except for PSTN with Asterisk) Universal : Run on all the famous platforms (Windows Linux supported, Solaris tested) because java-written code Extensible : Possible development of a new protocol (20 to 40 days) Scalable : provided by the master/slave features

C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y 30 © DEVOTEAM GROUP This document is not to be copied or reproduced in any way without Devoteam express permission. Copies of this document must be accompanied by title, date and this copyright notice. AUSTRIA BELGIUM CZECH REPUBLIC DENMARK FRANCE LUXEMBOURG MOROCCO MIDDLE EAST NETHERLANDS NORWAY POLAND SPAIN SWEDEN SWITZERLAND UNITED KINGDOM CONTACT Fabien HENRY + 33(0) FRANCE File Info Date of release Authors MTS Conclusion : contacts Thank you for your attention