Kannel performance

2008-02-13 Thread Illimar Reinbusch - Telejazz.com

Hi

Im testing Kannel performance using fakesmsc.
I have set-up three fake connections and im sending 20 000 SMS per 
connection

and kannel receives them in speed 2000 SMS/sec per connection and stores the
messages in Kannel buffer.

Now i have Apache2 server with PHP scripts that do the SMS logic and reply
to kannel.

I get about 600 sms/min speed both Kannel->Apache and Apache->Kannel
direction, theres no difference what PHP script does, just empty echo "haha"
or big sql queries, i still get the same speed.

Any advice how to speed up the process?

Illimar



Re: Kannel performance

2008-02-13 Thread Michael Bochkaryov
Hi!

First try to test only apache performance without kannel.
At least you'll be sure if it's apache+php problem or something else.

Some ideas (mostly about apache and php tuning):
1. Use eaccelerator to increase performance of PHP scripts.
2. Try to use some lightweight HTTP daemon (lighttpd or nginx).
3. Check if kannel uses keepalives for HTTP based services (I'm not sure
if it's possible).

Also question: are both kannel and apache running on the same server?

Illimar Reinbusch - Telejazz.com wrote:
> Hi
> 
> Im testing Kannel performance using fakesmsc.
> I have set-up three fake connections and im sending 20 000 SMS per
> connection
> and kannel receives them in speed 2000 SMS/sec per connection and stores
> the
> messages in Kannel buffer.
> 
> Now i have Apache2 server with PHP scripts that do the SMS logic and reply
> to kannel.
> 
> I get about 600 sms/min speed both Kannel->Apache and Apache->Kannel
> direction, theres no difference what PHP script does, just empty echo
> "haha"
> or big sql queries, i still get the same speed.
> 
> Any advice how to speed up the process?
> 
> Illimar


-- 
Michael Bochkaryov



wap config

2008-02-13 Thread Alvaro Cornejo
Hi All

After some time I can restart trying to get the wap push stuff to work.

I followed instructions from Juan and Mike and was able to have kannel send
the sms with wappush info and get it on the phone.

However, if I tell the cellphone to get the content, I get an " Sorry,
connection to server lost ". Never the last, if I do enter the same URL
directly from the same cel. I´m able to get the content.

What can be wrong?

 here are my logs:

2008-02-13 10:23:39 [13531] [11] DEBUG: HTTP: Creating HTTPClient for
`10.10.5.2'.
2008-02-13 10:23:39 [13531] [11] DEBUG: HTTP: Created HTTPClient area
0x993c790.
2008-02-13 10:23:39 [13531] [14] INFO: PPG: Accept request  from <
10.10.5.2>
2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: http_read_thread: pap multipart
accepted
2008-02-13 10:23:39 [13531] [14] INFO: client address was <+525513206766>,
accepted
2008-02-13 10:23:39 [13531] [14] DEBUG: PAP COMPILER: doing semantic
analysis for address type a phone number
2008-02-13 10:23:39 [13531] [14] DEBUG: PAP COMPILER: network orbearer
missing, reverting to GSM+SMS
2008-02-13 10:23:39 [13531] [14] INFO: reverting to default bearer and
network
2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: http_read_thread: pap control
entity compiled ok
2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: transform_message: push message
content and headers valid
2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: push machine 2 created
2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: store_push_data: push machine 2
appended to unit push list
2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: send_push_response: telling pi
2008-02-13 10:23:39 [13531] [14] DEBUG: HTTP: Resetting HTTPClient for
`10.10.5.2'.
2008-02-13 10:23:39 [13531] [14] INFO: PPG: handle_push_message: push
message accepted for processing
2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: OTA request for unit push
2008-02-13 10:23:39 [13531] [9] DEBUG: OTA: event arrived
2008-02-13 10:23:39 [13531] [14] INFO: PPG: unconfirmed push delivered to
OTA
2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: destroying push machine 2
2008-02-13 10:23:39 [13531] [2] DEBUG: WSP (UNIT): event arrived
2008-02-13 10:23:39 [13531] [2] DEBUG: WSP_UNIT: Connectionless push
accepted
2008-02-13 10:23:39 [13531] [10] DEBUG: HTTP: Destroying HTTPClient area
0x993c790.
2008-02-13 10:23:39 [13531] [10] DEBUG: HTTP: Destroying HTTPClient for
`10.10.5.2'.
2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping
`application/vnd.wap.sic', WSP 1.2 to 0x002e.
2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping `Authorization',
WSP 1.3to 0x0007.
2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping `Content-Length', WSP
1.3 to 0x000d.
2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping `Content-Type',
WSP 1.3to 0x0011.
2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping `Encoding-Version', WSP
1.3 to 0x0043.
2008-02-13 10:23:39 [13531] [2] DEBUG: WDP (wapbox): delivering 1 segments
to bearerbox
2008-02-13 10:23:39 [13531] [2] DEBUG: WSP (UNIT): delivering to wdp
2008-02-13 10:23:39 [13531] [9] DEBUG: OTA: made connectionless session
service request
2008-02-13 10:23:39 [13531] [0] WARNING: Received other message than
wdp/admin, ignoring!



[EMAIL PROTECTED] ~]# ./wap-push-test.php
HTTP/1.1 202 Accepted
Server: Kannel/cvs-20071108
Date: Wed, 13 Feb 2008 16:23:39 GMT
Content-Length: 403
Content-Type: application/xml

http://www.wapforum.org/DTD/pap_1.0.dtd";>
[EMAIL PROTECTED] ~]#

 my script:

$host = 'localhost';
$port = '8080';
$url  =  "http://$host:$port";;

$ppg_user = 'foo';
$ppg_pass = 'bar';

// $wap_push_id = get_rand_numbers(5);
$wap_push_id = "12346";

$body ="--multipart-boundary\r\n".
"Content-type: application/xml\r\n\r\n".
''."\r\n".
'http://www.wapforum.org/DTD/pap_1.0.dtd"; >'."\r\n".
''."\r\n".
''."\r\n\t".
''."\r\n\t".
''.
"\r\n\r\n".
"\r\n\r\n".
"--multipart-boundary\r\n".
"Content-type: text/vnd.wap.si\r\n\r\n".
''."\r\n".
'http://www.wapforum.org/DTD/si.dtd";>'."\r\n".
"\r\n".
''.$text.''."\r\n".
"\r\n"."--multipart-boundary--\r\n";

$post = "POST /wappush HTTP/1.1\r\n"."Host: $host:$port\r\n".
"Authorization: Basic ".base64_encode("$ppg_user:$ppg_pass")."\r\n".
"X-Kannel-SMSC: $smsc_id\r\n".'Content-Type: multipart/related;
boundary=multipart-boundary; type="application/xml"'."\r\n".
"Content-Length: ".strlen($body)."\r\n"."\r\n".$body;

// $url = iconv("ISO-8859-1","UTF-8",$url);
// $post = iconv("ISO-8859-1","UTF-8",$post);
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt ($ch,CURLOPT_CUSTOMREQUEST , $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$reply = curl_exec($ch);
curl_close ($ch);

print_r($reply);


my wap confi

Re: wap config

2008-02-13 Thread Alvaro Cornejo
Solved...


I misse-type a variable I send to my function.

Sorry


On 2/13/08, Alvaro Cornejo <[EMAIL PROTECTED]> wrote:
>
> Hi All
>
> After some time I can restart trying to get the wap push stuff to work.
>
> I followed instructions from Juan and Mike and was able to have kannel
> send the sms with wappush info and get it on the phone.
>
> However, if I tell the cellphone to get the content, I get an " Sorry,
> connection to server lost ". Never the last, if I do enter the same URL
> directly from the same cel. I´m able to get the content.
>
> What can be wrong?
>
>  here are my logs:
>
> 2008-02-13 10:23:39 [13531] [11] DEBUG: HTTP: Creating HTTPClient for
> `10.10.5.2'.
> 2008-02-13 10:23:39 [13531] [11] DEBUG: HTTP: Created HTTPClient area
> 0x993c790.
> 2008-02-13 10:23:39 [13531] [14] INFO: PPG: Accept request  from
> <10.10.5.2>
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: http_read_thread: pap
> multipart accepted
> 2008-02-13 10:23:39 [13531] [14] INFO: client address was <+525513206766>,
> accepted
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PAP COMPILER: doing semantic
> analysis for address type a phone number
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PAP COMPILER: network orbearer
> missing, reverting to GSM+SMS
> 2008-02-13 10:23:39 [13531] [14] INFO: reverting to default bearer and
> network
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: http_read_thread: pap control
> entity compiled ok
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: transform_message: push
> message content and headers valid
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: push machine 2 created
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: store_push_data: push machine
> 2 appended to unit push list
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: send_push_response: telling
> pi
> 2008-02-13 10:23:39 [13531] [14] DEBUG: HTTP: Resetting HTTPClient for
> `10.10.5.2'.
> 2008-02-13 10:23:39 [13531] [14] INFO: PPG: handle_push_message: push
> message accepted for processing
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: OTA request for unit push
> 2008-02-13 10:23:39 [13531] [9] DEBUG: OTA: event arrived
> 2008-02-13 10:23:39 [13531] [14] INFO: PPG: unconfirmed push delivered to
> OTA
> 2008-02-13 10:23:39 [13531] [14] DEBUG: PPG: destroying push machine 2
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WSP (UNIT): event arrived
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WSP_UNIT: Connectionless push
> accepted
> 2008-02-13 10:23:39 [13531] [10] DEBUG: HTTP: Destroying HTTPClient area
> 0x993c790.
> 2008-02-13 10:23:39 [13531] [10] DEBUG: HTTP: Destroying HTTPClient for
> `10.10.5.2'.
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping
> `application/vnd.wap.sic', WSP 1.2 to 0x002e.
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping `Authorization', WSP
> 1.3 to 0x0007.
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping `Content-Length', WSP
> 1.3 to 0x000d.
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping `Content-Type', WSP
> 1.3 to 0x0011.
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WSP: Mapping `Encoding-Version',
> WSP 1.3 to 0x0043.
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WDP (wapbox): delivering 1 segments
> to bearerbox
> 2008-02-13 10:23:39 [13531] [2] DEBUG: WSP (UNIT): delivering to wdp
> 2008-02-13 10:23:39 [13531] [9] DEBUG: OTA: made connectionless session
> service request
> 2008-02-13 10:23:39 [13531] [0] WARNING: Received other message than
> wdp/admin, ignoring!
>
>
>
> [EMAIL PROTECTED] ~]# ./wap-push-test.php
> HTTP/1.1 202 Accepted
> Server: Kannel/cvs-20071108
> Date: Wed, 13 Feb 2008 16:23:39 GMT
> Content-Length: 403
> Content-Type: application/xml
>
>  http://www.wapforum.org/DTD/pap_1.0.dtd";> push-id="12346" sender-name="srv.smsglobal.com.mx; WAP/1.3
> (Kannel/cvs-20071108)" reply-time="2008-02-13T16:23:39Z"
> sender-address="/wappush">
> [EMAIL PROTECTED] ~]#
>
>
>  my script:
>
> $host = 'localhost';
> $port = '8080';
> $url  =  "http://$host:$port";;
>
> $ppg_user = 'foo';
> $ppg_pass = 'bar';
>
> // $wap_push_id = get_rand_numbers(5);
> $wap_push_id = "12346";
>
> $body ="--multipart-boundary\r\n".
> "Content-type: application/xml\r\n\r\n".
> ''."\r\n".
> ' '"http://www.wapforum.org/DTD/pap_1.0.dtd"; >'."\r\n".
> ''."\r\n".
> ''."\r\n\t".
> ' address-value="WAPPUSH='.$country_code.$phone.'/[EMAIL PROTECTED]
> "/>'."\r\n\t".
> ' network="GSM" bearer="SMS"/>'.
> "\r\n\r\n".
> "\r\n\r\n".
> "--multipart-boundary\r\n".
> "Content-type: text/vnd.wap.si\r\n\r\n".
> ''."\r\n".
> ' '"http://www.wapforum.org/DTD/si.dtd";>'."\r\n".
> "\r\n".
> ' href="'. $push_url .'">'.$text.''."\r\n".
> "\r\n"."--multipart-boundary--\r\n";
>
> $post = "POST /wappush HTTP/1.1\r\n"."Host: $host:$port\r\n".
> "Authorization: Basic
> ".base64_encode("$ppg_user:$pp

RE: Kannel performance

2008-02-13 Thread info.ubichip
Hello,

Could you be more precise on the test environnement? Are you using mysql in
both? It could depend as well how you are coding your database request. If
you are asking for all the fields of each record or not Many things to
explain before we could advice if the issue is from kannel or not!

Hope it helps

Regards


-Original Message-
From: Illimar Reinbusch - Telejazz.com [mailto:[EMAIL PROTECTED]
Sent: mercredi 13 février 2008 04:55
To: users@kannel.org
Subject: Kannel performance

Hi

Im testing Kannel performance using fakesmsc.
I have set-up three fake connections and im sending 20 000 SMS per
connection and kannel receives them in speed 2000 SMS/sec per connection and
stores the messages in Kannel buffer.

Now i have Apache2 server with PHP scripts that do the SMS logic and reply
to kannel.

I get about 600 sms/min speed both Kannel->Apache and Apache->Kannel
direction, theres no difference what PHP script does, just empty echo "haha"
or big sql queries, i still get the same speed.

Any advice how to speed up the process?

Illimar





  _  

Antivirus avast!  : message Sortant sain. 


Base de donnees virale (VPS) : 080213-0, 13/02/2008
Analyse le : 13/02/2008 14:43:46
avast! - copyright (c) 1988-2008 ALWIL Software.






Re: Kannel performance

2008-02-13 Thread Stipe Tolj

Illimar Reinbusch - Telejazz.com schrieb:

Hi

Im testing Kannel performance using fakesmsc.
I have set-up three fake connections and im sending 20 000 SMS per 
connection
and kannel receives them in speed 2000 SMS/sec per connection and stores 
the

messages in Kannel buffer.

Now i have Apache2 server with PHP scripts that do the SMS logic and reply
to kannel.

I get about 600 sms/min speed both Kannel->Apache and Apache->Kannel
direction, theres no difference what PHP script does, just empty echo 
"haha"

or big sql queries, i still get the same speed.

Any advice how to speed up the process?


Hi Illimar,

as you say the throughput remains "the same" no matter what apache is doing, my 
quess is that your apache2 config is "limited" with a specific allowed client 
connection value. So Kannel's smsbox will open up that many connections to 
pipeline the requests to apache2, but it will hit to it's configured limit.


My suggestion:
Check apache's /server-status URI and see how many concurrent connections it 
handles when under load, then check apache's config to confirm it the limiting 
factor ;) ... I'm almost certain this is the place to look at.


Stipe

---
Kölner Landstrasse 419
40589 Düsseldorf, NRW, Germany

tolj.org system architecture  Kannel Software Foundation (KSF)
http://www.tolj.org/  http://www.kannel.org/

mailto:st_{at}_tolj.org   mailto:stolj_{at}_kannel.org
---



Re: Kannel performance

2008-02-13 Thread Stipe Tolj

Michael Bochkaryov schrieb:

Hi!

First try to test only apache performance without kannel.
At least you'll be sure if it's apache+php problem or something else.

Some ideas (mostly about apache and php tuning):
1. Use eaccelerator to increase performance of PHP scripts.
2. Try to use some lightweight HTTP daemon (lighttpd or nginx).
3. Check if kannel uses keepalives for HTTP based services (I'm not sure
if it's possible).


Kannel does HTTP/1.1 keep-alives.

Stipe

---
Kölner Landstrasse 419
40589 Düsseldorf, NRW, Germany

tolj.org system architecture  Kannel Software Foundation (KSF)
http://www.tolj.org/  http://www.kannel.org/

mailto:st_{at}_tolj.org   mailto:stolj_{at}_kannel.org
---



Re: Kannel performance

2008-02-13 Thread Garth Patil
Can you share your conf files for kannel and apache so we can help you test?
/Garth

On Feb 13, 2008 3:32 PM, Stipe Tolj <[EMAIL PROTECTED]> wrote:
> Michael Bochkaryov schrieb:
> > Hi!
> >
> > First try to test only apache performance without kannel.
> > At least you'll be sure if it's apache+php problem or something else.
> >
> > Some ideas (mostly about apache and php tuning):
> > 1. Use eaccelerator to increase performance of PHP scripts.
> > 2. Try to use some lightweight HTTP daemon (lighttpd or nginx).
> > 3. Check if kannel uses keepalives for HTTP based services (I'm not sure
> > if it's possible).
>
> Kannel does HTTP/1.1 keep-alives.
>
>
> Stipe
>
> ---
> Kölner Landstrasse 419
> 40589 Düsseldorf, NRW, Germany
>
> tolj.org system architecture  Kannel Software Foundation (KSF)
> http://www.tolj.org/  http://www.kannel.org/
>
> mailto:st_{at}_tolj.org   mailto:stolj_{at}_kannel.org
> ---
>
>



from number in wap push

2008-02-13 Thread Alvaro Cornejo
Hi,


is there a way to add a FROM number in a wap push?  I´m trying to setup that
info on the script provided by Juan but found no way to add it. Or does the
bearerbox should add it with the default from number??

Regards

Alvaro

-- 
|-|
Envíe y Reciba Datos y mensajes de Texto (SMS) hacia y desde cualquier
celular y
Nextel en México y en mas de 180 paises. Use aplicaciones 2 vias via SMS y
GPRS online
  Visitenos en www.smsglobal.com.mx y www.pravcom.com