Beruflich Dokumente
Kultur Dokumente
Table of Contents
CA Mobile Device Management (MDM) is an enterprise solution for securing and managing the
following features:
Devices
Applications
Xnet protocol:
Request sent from the client will directly hit XComm and later database(Here it wont hit XSRedirector)
CA MDM Architecture:
Client-1
Client-3
Client-4
CAMDM
Rsoe relay server outbound enabler flow:
As CAMDM application is not a web-application and not browser dependent it is hard to record from the
JMeter which will use browser proxy for capturing the requests.
I have tried to record with the following tools to capture the requests, which didnt work
o Load Runner
o Grinder
o Gatling
o Fiddler
o NeoLoad
Finally, able to record the requests using tools like WIRE-SHARK and MICROSOFT NETWORK MONITOR
Added the requests captured from Wire-Shark into Jmeter tool and able to perform a Baseline Test with
Single User successfully.
CAMDM
Challenges faced while running with multiple users
Observed the dependency with unique parameters for each virtual user to run the load test.Below are
the parameters for reference.
o "CKY" COOKIE
o "CID" CLIENTID
o "USR" USER PROMPT
o "OSD" CLIENT OS DATA
o "SEV" SESSION VARIABLES
o "STE" OS SUITE
o "EDN" OS EDITION
o "BIT" OS BIT
By changing all the above parameters in the TCP Post request, I was able to add new machines to the
server.
There was a change in the requirement to execute the tests by navigating through Relay Server using
HTTP Protocol instead of sending requests to MDM server directly using TCP Protocol.
o Get request
o Post request
o Get request
For first GET request only header is going and response (means response code) is coming from the
server
For the POST request, along with header, data packets are also going like continuation requests.
For the second GET request only header is going to the server but the response for all the POST
continuation requests are coming as response in the GET continuation requests.
Solution: To resolve this issue, we used HTTP-Raw Request sampler in the Apache Jmeter.
2. Issue: Content-type, Content-size: Replicated content type and content size same as client which
was validated with wireshark.
Solution: To resolve this issue, exported the data into .bin file format from the wire shark and given
as .bin file in the http raw request.
3. Issue: Source port: Server is expecting all the post requests and get requests must use same source
port for all its communication with the server.
CAMDM
Solution: To resolve this issue, used only one http raw request for sending header data and data
packets.
4. Issue: Asynchronous calls: Server is expecting all Http get, Http post and Http get must hit the
server at the same time.
Solution: To resolve this issue, Used "Synchronous timer" so that all my requests will hit the server
at a time.
By resolving all the above issues I am able to send requests successfully from the Jmeter and I have
validated in admin portal for un-approved user scenario.
But for execution of normal channels we need to send multiple files in HTTP POST request along with
the header. Jmeter have least feasibility to replicate it.
2: sent only header in HTTP Raw request and data packets in another sampler with header. In this case
data packets are not going as continuation requests which server is not accepting
3: Later, used normal HTTP Sampler where we found content-type, content-size and content length are
changing by which server is not accepting.
For successful HTTP POST request these are the things need to be done
1: Content-Length must be 999999999
3: Header and all the data packets should send in one post request to replicate continuation requests.
(All the requests should come from the same source port)
As Jmeter tool is open source tool it wont have feasibility to replicate above requirement, I tried
multiple ways to send all the data packets in one HTTP request but due to tool infeasibility I was not able
to achieve this.
Later I tried JSR-223 sampler in which I can write java code for sending all the requests and I am able to
replicate all the requirements of the server.
Web socket sampler- I didnt achieve the requirement due to protocol issue so I didnt take the
following samplers into consideration.
OS process sampler- I didnt achieve the requirement because it dont have chance to parameterize
CAMDM
Http raw request sampler- I didnt achieve the requirement because it dont have option to send
multiple packets in order to achieve continuation requests.