Building a test tool

Vinit Karandikar vinit at estacado.net
Fri Jun 5 00:27:57 CEST 2009


>
> ------------------------------
>
> Message: 4
> Date: Tue, 02 Jun 2009 00:48:56 +0200
> From: Alan DeKok <aland at deployingradius.com>
> Subject: Re: Building a test tool
> To: FreeRadius users mailing list
> 	<freeradius-users at lists.freeradius.org>
> Message-ID: <4A245AD8.4050104 at deployingradius.com>
> Content-Type: text/plain; charset=ISO-8859-1
>
> Vinit Karandikar wrote:
>   
>> Not sure how radclient will help, Tim.
>> Based on my limited exposure, I get the impression that I can use
>> radclient to simulate 1 network element (like the PDSN).
>> I'm trying to simulate 10 different ones simultaneously.
>>     
>
>   So... run 10 copies of radclient.
>   
That requires a separate manual setup for each of 50 test cases which is 
bound to be error prone.
So if I could run 10 copies of radclient in one process (each in a 
different thread for example), I can write code to co-ordinate what each 
thread should do for each test case.

>   
>> As mentioned in my initial email, I need the tool to simulate the PDSN,
>> the Pre-Paid  Server and hosts of other network elements (possibly 10
>> such like the Foreign AAA, the Carrier Exchange and so on...)
>>     
>
>   What do those do?  Send RADIUS packets?  If so, radclient can likely
> emulate them.
>   
Some of them receive RADIUS packets and send responses (acting as 
servers). Others initiate the traffic (acting as clients).
Can radclient act as a server ?
>   
>> Am I underestimating what the radclient can do ?
>>     
>
>   It's not clear what you want out of a RADIUS client.
>
>   radclient simulates a RADIUS client by sending packets, and looking
> for responses.  If you need different functionality, you need to first
> define what that functionality is.
>   

Fair enough. Here are 2 cases that describe the functionality that need 
a radclient-like network element simulation.

Hope this illustrates the functionality I mentioned as desired in my 
original email.
In BOTH cases, the AAA server is expected to forward RADIUS requests to 
a different network element and it behooves a test application to see 
both ends.
In Case 1, the AAA server proxies the Disconnect Request to a different 
network element based on the location of the subscriber.
In Case 2, the AAA server proxies the Access Requests from different 
network elements to another network element 

Case 1:
=======

      Mother Ship                     AAA                          PDSN 
(new)                    PDSN (old)
          |                             |                             
|                             |
          |                             |  (1) Access-Request         
|                             |
          |                             
|<----------------------------|                             |
          |(2) Access-Request           |                             
|                             |
          |<----------------------------|                             
|                             |
          |(3) Access-Accept            |                             
|                             |
          |---------------------------->|                             
|                             |
          |                             |(4) Access-Accept            
|                             |
          |                             
|---------------------------->|                             |
          |                             |                             
|                             |
          |                             | Accounting pieces skipped   
|                             |
          |                             |                             
|                             |
          |(5) Disconnect Request       |                             
|                             |
          |---------------------------->|                             
|                             |
          |                             |(6) Disconnect Request       
|                             |
          |                             
|---------------------------------------------------------->|
          |                             |(7) Disconnect ACK           
|                             |
          |                             
|<----------------------------------------------------------|
          |(8) Disconnect ACK           |                             
|                             |
          |<----------------------------|                             
|                             |
          |                             |                             
|                             |
          |                             | Accounting pieces skipped   
|                             |
          |                             |           again             
|                             |
          |                             |                             
|                             |

  OR
  ==

Case 2:
=======

      Mother Ship                     AAA                           
PDSN                           HA
          |                             |                             
|                             |
          |                             |  (1) Access-Request         
|                             |
          |                             
|<----------------------------|                             |
          |(2) Access-Request           |                             
|                             |
          |<----------------------------|                             
|                             |
          |(3) Access-Accept            |                             
|                             |
          |---------------------------->|                             
|                             |
          |                             |(4) Access-Accept            
|                             |
          |                             
|---------------------------->|                             |
          |                             |                             
|                             |
          |                             |                            
PDSN communication with HA skipped
          |                             |                             
|                             |
          |                             |  (5) Access-Request         
|                             |
          |                             |  related to above accept    
|                             |
          |                             |  in order to get more info  
|                             |
          |                             
|<----------------------------------------------------------|
          |(6) Access-Request           |                             
|                             |
          |<----------------------------|                             
|                             |
          |(7) Access-Accept            |                             
|                             |
          |---------------------------->|                             
|                             |
          |                             |(8) Access-Accept            
|                             |
          |                             
|---------------------------------------------------------->|
          |                             |                             
|                             |
          |                             | Accounting pieces skipped   
|                             |
          |                             |        yet again            
|                             |
          |                             |                             
|                             |


The point once again is just to ask if
a) there is already a tool that can simulate multiple network elements 
and co-ordinate between them to know when to expect a packet and when to 
initiate traffic
b) there is re-usable software that I can beat into shape to do such a 
thing.

Thanks again,
-Vinit

>   Alan DeKok.
>
>
> ------------------------------
>
>
>   
>   




More information about the Freeradius-Users mailing list