#### Type Of Change
- [X] New feature (non-breaking change which adds new functionality)
#### Checklist:
- [ ] PR should be backported to stable branches
- [X] Tested changes locally
#### Description
- new ms_timer parameter to enable millisecond precision timer
- new async_ms_route and async_ms_sleep functions with milliseconds as a param
- implementation:
Each async_ms_sleep adds an entry to a linked list sorted by expiry time.
List is checked every ms_timer ms for expired entries.
All expired entries are pushed for execution on a pool of async workers.
This allows easy implementation of request traffic shaping with an external leaky bucket microservice
Assuring a maximum rate with no dropped requests by introducing delay.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/2016
-- Commit Summary --
* async: added support for millisecond resolution sleep
-- File Changes --
M src/modules/async/async_mod.c (134)
M src/modules/async/async_sleep.c (210)
M src/modules/async/async_sleep.h (8)
M src/modules/async/doc/async_admin.xml (113)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/2016.patchhttps://github.com/kamailio/kamailio/pull/2016.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/2016
Module: kamailio
Branch: master
Commit: ce710ce13a622c3c62334f2ee045b1983d3122f2
URL: https://github.com/kamailio/kamailio/commit/ce710ce13a622c3c62334f2ee045b19…
Author: PaweÅ PierÅcionek <ppierscionek(a)gmail.com>
Committer: Henning Westerholt <henningw(a)users.noreply.github.com>
Date: 2019-07-28T16:28:35+02:00
async: added support for millisecond resolution sleep
- new ms_timer parameter to enable millisecond precision timer
- new async_ms_route and async_ms_sleep functions with milliseconds as a param
- implementation:
Each async_ms_sleep adds an entry to a linked list sorted by expiry time.
List is checked every ms_timer ms for expired entries.
All expired entries are pushed for execution on a pool of async workers.
---
Modified: src/modules/async/async_mod.c
Modified: src/modules/async/async_sleep.c
Modified: src/modules/async/async_sleep.h
Modified: src/modules/async/doc/async_admin.xml
---
Diff: https://github.com/kamailio/kamailio/commit/ce710ce13a622c3c62334f2ee045b19…
Patch: https://github.com/kamailio/kamailio/commit/ce710ce13a622c3c62334f2ee045b19…
… subpackaging from alpine repo
Reference commit
https://github.com/alpinelinux/aports/commit/280b4b05da6dff3980267a0d27b228…
#### Pre-Submission Checklist
- [x] Commit message has the format required by CONTRIBUTING guide
- [x] Commits are split per component (core, individual modules, libs, utils, ...)
- [x] Each component has a single commit (if not, squash them into one commit)
- [x] No commits to README files for modules (changes must be done to docbook files
in `doc/` subfolder, the README file is autogenerated)
#### Type Of Change
- [x] Small bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds new functionality)
- [ ] Breaking change (fix or feature that would change existing functionality)
#### Checklist:
- [ ] PR should be backported to stable branches
- [x] Tested changes locally
- [ ] Related to issue #XXXX (replace XXXX with an open issue number)
#### Description
Please check commit message.
If ok,then can be merged.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/2015
-- Commit Summary --
* pkg/kamailio/alpine: backported python3 ruby openrc subpackaging from alpine repo
-- File Changes --
M pkg/kamailio/alpine/APKBUILD (38)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/2015.patchhttps://github.com/kamailio/kamailio/pull/2015.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/2015
Hello all
I am facing a different kind of problem
my SIP provider getting registered with sip.conf
![image](https://user-images.githubusercontent.com/32220165/61198001-554fc400-a6f5-11e9-8826-de25ffb1857b.png)
but when i am doing same configuration in kamailio with PJSIP
sip registry getting timeout
![image](https://user-images.githubusercontent.com/32220165/61198012-6993c100-a6f5-11e9-9225-7f58a41f7161.png)
below the sip configuration which i am using in sip.conf and getting registered
------------------------------------------------------------------------------------------
[general]
;register => +911XXXXX12100:XXX56:+911XXXX2100@dxxxhi.rexxxxeims.in/91141xxxxx2100
register => +9114xxxxx100@xxxhi.relxxxims.in:1xxxxxx56:+9114xxxxx100@dxxxxhi.relixxxms.in@10.237.252.225/+911xxxxx2100
username=+91xxx4xxx00
secret=xxxxxx56
type=friend
host=dxxxxxhi.rxxxxxxms.in
dtmfmode=rfc2833
nat=no
canreinvite=no
fromuser=+911xxxxxx100
disallow=all
allow=ulaw
allow=alaw
allow=gsm
context=default
defaultexpiry = 1900
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/2007
This is a ringless implementation of millisecond precision timer and millisecond async_sleep function.
I've added the functionality to the current async mod but this can me moved to a dedicated module.
For now only the async_ms_sleep is implemented but async_ms_route is just a few lines.
Anyway how should I proceed with cleanup so this can be accepted ?
With millisecond precision sleep one can easily implement a leaky bucket request shaper that delays incoming requests to achieve perfect rate limits per customer/sip-trunk/whatever without dropping requests. No more spikes and no more 503s.
I've implemented external HTTP microservice that returns millisecond delays per dialog initiating request and tested it with SIPP with 3 flows/streams each with 250 CAPS. No leaks nor other issues in 24hrs of testing.
You can view, comment on, or merge this pull request online at:
https://github.com/kamailio/kamailio/pull/2008
-- Commit Summary --
* ms resolution sleep
* fix leak
* add functions
* register additional timer
* don't forget the tail
* timeradd expects normalized parameteres
* Don not eat the chain links
-- File Changes --
M src/modules/async/async_mod.c (83)
M src/modules/async/async_sleep.c (210)
M src/modules/async/async_sleep.h (8)
-- Patch Links --
https://github.com/kamailio/kamailio/pull/2008.patchhttps://github.com/kamailio/kamailio/pull/2008.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/pull/2008
Hi all,
I read some portion of imc_isc_mod.c, specially isc_from_as function. In
that function there is some function call that searching for some marks in
the SIP message. Also I read section 5.7.3 from TS 24.229 but I didn't find
the marking mechanism that used in isc_from_as function.
Would you please point me to the technical specification that implemented
in IMS_ISC module?
Regards,
Ali