TTCN-3 based Implementation of ETSI TISPAN IMS Benchmark George Din, Diana Vega, Razvan Petre, Andreas Hoffman Fraunhofer Institute for Open Communication.

Slides:



Advertisements
Similar presentations
TTCN-3 Users Conference
Advertisements

AG Projects P2PSIP solutions for operators Adrian GeorgescuMaastricht 2007 IMS-in-a-box or How to compete with the Internet players.
Solving IMS problems using P2P technology
AG Projects QoS in Next Generation Networks Telecom Signaling Networks and Service Forum January 18, 2006 Amsterdam.
Performance Testing - Kanwalpreet Singh.
22-23 June 2004TISPAN-3GPP Workshop - Sophia-Antipolis 1 TISPAN NGN Architecture Overview Richard Brennan pulver.com, WG2 Chair
The Use of TTCN-3 for Software Testing Ina Schieferdecker FOKUS, Berlin
1 Requirements Catalog Scott A. Moseley Farbum Scotus.
Signalling Flows for the IP Multimedia Call Control in 3G Wireless Network Master’s Project By Sanjeev Kayath.
TTCN-3 Test Case Generation from arbitrary traces Capture & Replay Bogdan Stanca-Kaposta & Theofanis Vassiliou-Gioles (Testing Technologies)
SIP Testing Methodology Elie Cohen ProLab PM 17/01/2003.
Lawful Interception in 3G IP Multimedia Subsystem
SIP and the application of SIP as used in 3GPP Keith Drage - Lucent Technologies.
Load Testing Using NeoLoad
Peering Architecture IETF-63 VoIP Peering BOF Sohel Khan, Sprint, TR&D August 4, 2005 Copyright © Sprint All rights reserved.
Testing SIP Services Over IP. Agenda  SIP testing – advanced scenarios  SIP testing - Real Life Examples.
Session Initiation Protocol (SIP) By: Zhixin Chen.
Implementing Remote Procedure Calls Authors: Andrew D. Birrell and Bruce Jay Nelson Xerox Palo Alto Research Center Presenter: Jim Santmyer Thanks to:
 3G is the third generation of tele standards and technology for mobile networking, superseding 2.5G. It is based on the International Telecommunication.
SIP, Session Initiation Protocol Internet Draft, IETF, RFC 2543.
Agenda Introduction to 3GPP Introduction to SIP IP Multimedia Subsystem Service Routing in IMS Implementation Conclusions.
Session Initialization Protocol (SIP)
Overview SAP Basis Functions. SAP Technical Overview Learning Objectives What the Basis system is How does SAP handle a transaction request Differentiating.
Load Test Planning Especially with HP LoadRunner >>>>>>>>>>>>>>>>>>>>>>
1 S. WEYL – 31/01/2011 Basic Call Flows cases and analogic IMSloader subscribers AGW Belgacom.
Developing A Sip User Agent Using The Jain Sip Stack. Robert.V Masango Supervisors: Alfredo Terzoli, Ming Hsieh.
Session Initiation Protocol Team Members: Manjiri Ayyar Pallavi Murudkar Sriusha Kottalanka Vamsi Ambati Girish Satya LeeAnn Tam.
Damian Zolich, TTCN-3 User Conference 2011
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.
“Securing IP Multimedia Subsystem (IMS) infrastructures …,” M. Tsagkaropoulos UNIVERSITY OF PATRAS Department of Electrical & Computer Engineering Wireless.
AG Projects IMS and P2P Solving IMS problems using P2P technology By Adrian Georgescu Telecom Signalling World Forum October 4, 2006 Hilton Olympia, London.
Sasken Confidential © 2009 Sasken Communication Technologies Future of TTCN-3 Power Management and Testing Infrastructure 3 May 2012.
Call Control with SIP Brian Elliott, Director of Engineering, NMS.
Session Initiation Protocol (SIP). What is SIP? An application-layer protocol A control (signaling) protocol.
1. Validating Wireless Protocol Conformance Test Cases Amresh Nandan Paresh Jain June 2004.
IP Multimedia Subsystems By Vamsee K Pemmaraju. Agenda IMS Example IMS Example Overview Overview Basic Principles Basic Principles Architecture Architecture.
A Comparative Study of the Linux and Windows Device Driver Architectures with a focus on IEEE1394 (high speed serial bus) drivers Melekam Tsegaye
A performance evaluation approach openModeller: A Framework for species distribution Modelling.
Presented By Team Netgeeks SIP Session Initiation Protocol.
CP-a Emergency call stage 2 requirements - A presentation of the requirements from 3GPP TS Keith Drage.
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.
Client Call Back Client Call Back is useful for multiple clients to keep up to date about changes on the server Example: One auction server and several.
Rhodes University 29 October 2002,Robert V MasangoCopyright 2002, Rhodes University, SIP User SIP User Agent The IRT is the oldest of the New York City.
Server to Server Communication Redis as an enabler Orion Free
IMS 架構與話務分析 網路管理維運資源中心 日期 : 2013/07/25 網路管理維運資源中心 日期 : 2013/07/25 限閱.
All Rights Reserved © Alcatel-Lucent 2006, ##### 2G IMS CAVE Based Security Replay Protection Alec Brusilovsky, Zhibi Wang Alcatel-Lucent, July 24, 2007.
1 © NOKIA Functionality and Testing of Policy Control in IP Multimedia Subsystem Skander Chaichee HUT/Nokia Networks Supervisor: Professor Raimo.
VoIP Signaling Protocols A signaling protocol is a common language spoken by telephones and call-management servers, the PSTN, and legacy PBX systems as.
Session Initiation Protocol (SIP) Chapter 5 speaker : Wenping Zhang data :
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 13. Review Shared Data Software Architectures – Black board Style architecture.
1 Access Authentication to IMS Systems in Next Generation Networks Authors: Silke Holtmanns, Son Phan-Anh ICN’07 IEEE Speaker: Wen-Jen Lin.
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.
1 3GPP2 IMS Charging Infrastructure Presented for 3GPP2 TSG-X by Nick Mazzarella of Lucent Technologies September 25, 2004.
1 RFC4028 Session Timer in the Session Initiation Protocol Speaker : Ying Shun Lin Adviser : Quincy Wu.
Page 1TTT - May 12, GPP IMS Standardization Update Bell Labs Innovations Lucent Technologies Room 9C Lucent Ln. Naperville, IL E Mail.
The overview How the open market works. Players and Bodies  The main players are –The component supplier  Document  Binary –The authorized supplier.
By Nitin Bahadur Gokul Nadathur Department of Computer Sciences University of Wisconsin-Madison Spring 2000.
Multimedia Retrieval Architecture Electrical Communication Engineering, Indian Institute of Science, Bangalore – , India Multimedia Retrieval Architecture.
Introduction to Performance Testing Performance testing is the process of determining the speed or effectiveness of a computer, network, software program.
The Session Initiation Protocol - SIP
S Postgraduate Course in Radio Communications. Application Layer Mobility in WLAN Antti Keurulainen,
1 Personal Mobility Management for SIP-based VoIP Services 王讚彬 國立台中教育大學資訊工程學系
TTCN-3 Testing and Test Control Notation Version 3.
Unified functional/load test architecture and methodology using TTCN-3 TELEFÓNICA I+D Date: June 1st, 2007.
1 Implementation of IMS-based S-CSCF with Presence Service Jenq-Muh Hsu and Yi-Han Lin National Chung Cheng University Department of Computer Science &
Simulation and load testing with TTCN-3 Mobile Node Emulator
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
3GPP and SIP-AAA requirements
Chapter 4: Threads.
ETSI–3GPP NGN ACTIVITIES
Presentation transcript:

TTCN-3 based Implementation of ETSI TISPAN IMS Benchmark George Din, Diana Vega, Razvan Petre, Andreas Hoffman Fraunhofer Institute for Open Communication Systems

TTCN-3 User Conference, Contents  Motivation  What do we test?  How do we test?  Implementation details  Benchmark Results  Conclusions

TTCN-3 User Conference, Motivation  Goal - performance benchmark for IMS components Performance and scalability testing of all IMS and related components with simulated real-world traffic Measurement and analysis of important QoS parameters  Why Creation of objective means to compare overall IMS of different systems by performance (and price) Check ability of hardware/software to run the IMS  How Define standard scenarios and traffic models for the work load Define the metrics to be measured Standardize the test procedure, the test parameters and the Benchmark test report  Where Standardization of IMS benchmarking at ETSI TISPAN WG6 Version 1.0 of IMS benchmarking standard has been released.

TTCN-3 User Conference, System under Test Charging Functions IP Transfer (Access and Core) MRFP BGCFMRFC SLF MGCF Other IP Networks Resource and Admission Control Subsystem IWF I-BGF IBCF AS PSTN / ISDN SGF T-MGF Network Attachement Subsystem Gm Gq’ MpMn Mx Mg Mj Gq’ Dh Dx Rf / Ro Mw Mx Sh Cx Ut ISC/Ma Iw Ic Ie Ib Mr Mk Mle2 I/S-CSCF UE UPSF IMS Core Fokus Open IMS UE P-CSCF

TTCN-3 User Conference, Test Report Benchmark Information Model Use case 1 (e.g.: registration) Scenario 1.1 (e.g. user not registered) Message flow Metrics & graphs to collect SuT parameters Design objectives Scenario 1.2 (e.g. already registered) Benchmark Test Traffic Set Preamble Registration Phase SuT Characteristics Traffic Profile Initial load Step duration Step Increase Amount Number Of Steps Other parameters Use case 2 (e.g.: session setup) Scenario 2.1 (e.g. successful call) Message flow Metrics & graphs to collect SuT parameters Design objectives Scenario 2.2 (e.g. rejected call) Background Load X% of scenario 1.1 y% of scenario 2.1 z% of scenario 2.2 DisclaimerBenchmark Test Run SuT configuration and parameters Metrics and graphics with Design Objective Capacity (overall and for each scenario) Test System configuration and parameters Observations and interpretations Exceptions Metrics and graphics with SuT resource consumption

TTCN-3 User Conference, Scenario: Successful Call INVITE 100 Trying INVITE 180 Ringing200 OK180 Ringing200 OK ACK BYE 200 OK REGISTER 401 REGISTER 200 OK RegistrationSection Tear Up Tear Down Client 1IMS CN REGISTER 401 REGISTER 200 OK Client 2IMS CN Client1Client2CN Talking Time Ringing Time

TTCN-3 User Conference, Scenario: Successful Call INVITE 100 Trying INVITE 180 Ringing200 OK180 Ringing200 OK ACK BYE 200 OK Section Tear Up Tear Down Client1 Client2 CN TRT-SES1 TRT-REL1 TRT-SES2 Talking Time Ringing Time

TTCN-3 User Conference, Estimated Maximum Load No Load Initial Load Initial Call Load Stop Condition Met Time To Stop Condition Plus Load Plus Load Plus Load Ramp Load Steady Plus Load Stability Or Settling Time Linear, Immediate? Stability? Rate Increase Fluctuations, Steady state? Fluctuations, Steady state? Benchmark Procedure

TTCN-3 User Conference, TTCN-3 ATS Architecture Scenario-Independent Scenario-dependant User State Machine User State Machine Imports from Benchmar k Testcase Benchmar k Testcase Module for Instant Messaging Scenarios Data Templates Module for Registration Scenarios Data Templates Module for Calling Scenarios Data Templates Common Types Common Behavior Common Templates Benchmark Constants Benchmark Parameters

TTCN-3 User Conference, Test Adapter usrN+1 Component Handler 2 usrN+2usr2N Users Database usr1usr2usrN Component Handler 1 Users Database Test Configuration SuT Component Sender User 1 stackUser 2 stackUser N stack Load Generator

TTCN-3 User Conference, User Concept 1.A user is a state machine running a scenario 2.A user may be „callee“ or/and „caller“ 3.A user may create > 1 calls 4.A user may be reused to create other calls 5.A user may call randomly any other user

TTCN-3 User Conference, Simultaneous Scenarios calling messaging calling Same user involved in more than another instance of same scenario Same user involved in different scenario

TTCN-3 User Conference, Population Clusters all other scenarios like messaging, calling, reregistration b c registration (not registerred yet) a deregistration (registerred and not involved in any other scenario)

TTCN-3 User Conference, TTCN-3 Message Types // general type for a SIP Request // can be extended by any // other request type (i.e. INVITE_Request) type record Request { integer transactionId, RequestLine requestLine, MessageHeader msgHeader, charstring messageBody optional } type set MessageHeader { Authorization authorization optional, CallId callId optional, Contact contact optional, CSeq cSeq optional, Expires expires optional, From fromField optional, RecordRoute recordRoute optional, Route route optional, ServiceRoute serviceroute optional, To toField optional, Via via optional, MaxForwards maxForwards optional, ContentLength contentLength optional, WwwAuthenticate wwwAuthenticate optional, Event event optional } // [20.7 RFC ] type record Authorization { FieldName fieldName(AUTHORIZATION_E), //Credentials body charstring body optional }

TTCN-3 User Conference, TTCN-3 State Handling alt { // P-CSCF REQUEST > User [] p2SUT.receive (TRequest) -> value request { // P-CSCF INVITE > User if (match(request, Request_INVITE_r)) { } // P-CSCF MESSAGE > User else if (match(request, Request_MESSAGE_r)) { } // P-CSCF ACK > User else if (match(request, Request_ACK_r)) { } ………………. } // P-CSCF RESPONSE > User [] p2SUT.receive (TResponse) -> value response { // P-CSCF OK > User if (match(response, Response_200_r)) { if (response.msgHeader.cSeq.seqMethod == "INVITE") {} else if (response.msgHeader.cSeq.seqMethod == "BYE") {} ………………. else if (response.msgHeader.cSeq.seqMethod == "REGISTER") {} } // P-CSCF OK > User else if (match(response, Response_401_r)) { } ………………. }

TTCN-3 User Conference, Messages Creation // P-CSCF RESPONSE > User [] p2SUT.receive (TResponse) -> value response { // P-CSCF OK > User if (match(response, Response_200_r)) { if (response.msgHeader.cSeq.seqMethod == "INVITE") { ackReq := ACK_Request_s; ackReq.transactionId := getNewTransactionId(); ackReq.requestLine.method := ACK_E; ackReq.msgHeader.callId := response.msgHeader.callId; ackReq.msgHeader.cSeq := response.msgHeader.cSeq; ackReq.msgHeader.cSeq.seqMethod := "ACK"; ackReq.msgHeader.fromField := response.msgHeader.fromField; ackReq.msgHeader.toField := response.msgHeader.toField; ackReq.msgHeader.via := response.msgHeader.via; ackReq.msgHeader.route := getServiceRoute(response); userChannel := getChannel(response); p2SUT.send (ackReq) to userChannel; delTransactionId(response.transactionId);

TTCN-3 User Conference, Processing of Messages message processor RESP REQ identify update state validate transaction state process response SUT test component Platform adaptor

TTCN-3 User Conference, Adaptation Layer Aim: Maximize TTCN-3 system performance !  Handles multiple parallel connections with SUT  Uses Pools of Threads and Listeners  Smaller number of threads and context switches mutex-es and semaphores contended message queues Test Management (TM) Component Handling (CH) Coding Decoding (CD) TTCN-3 Executable (TE) System Adapter (SA) Platform Adapter (PA) TTCN-3 Executable (TE) System under Test Test System System Adapter (SA)

TTCN-3 User Conference, Adapter Transactions Stack ListeningPoint SipProvider SipListener SIP Messages SIP Events Stack ListeningPoint SipProvider SipListener SIP Messages SIP Events SUT PTC

TTCN-3 User Conference, Test Adapter Design Test System (TS) 6: handle message TE SA 3: read request Message Handlers Thread Pool 9: write ready Initiation Dispatcher (Reactor) 2: read ready 1: request message System under Test (SUT) 4: message ready 5: notify TE (put message in the appropriate port queue) 7: response message 10: write message 8: send response message I/O operations are made completely separately by the processing of the message. Concurrent I/O are possible on a SMP system. Advantages:

TTCN-3 User Conference, Overall Traffic

TTCN-3 User Conference, CPU Monitoring on SuT

TTCN-3 User Conference, Distribution of SAPS

TTCN-3 User Conference, Average Delay for Invite Requests

TTCN-3 User Conference, Conclusions  TTCN-3 specification has a big impact on the performance of the hole test system Using a component to simulate more than one user Using a component sender Using a tree like mechanism for matching the messages  Efficient Adaptation Layer Design has an important role in the overall performance Smart codec/decoder system Non-blocking I/O for protocol stack Optimized runtime for specific needs of the benchmark

TTCN-3 User Conference, Thank you ! Time for questions …