From 8ee14e5d13cc45f8f1ad678531f3c02f8609d471 Mon Sep 17 00:00:00 2001 From: Lucian Balaceanu Date: Wed, 9 Dec 2015 15:40:58 +0100 Subject: [PATCH 1/7] Fixing managed_sess_min interval statistic. --- daemon/call.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/daemon/call.c b/daemon/call.c index 776e8f692..689eeba06 100644 --- a/daemon/call.c +++ b/daemon/call.c @@ -1820,8 +1820,8 @@ void call_destroy(struct call *c) { mutex_lock(&m->totalstats_interval.managed_sess_lock); m->totalstats.managed_sess_crt--; - m->totalstats_interval.managed_sess_min = MIN(m->totalstats_interval.managed_sess_crt, - m->totalstats_interval.managed_sess_min); + m->totalstats_interval.managed_sess_min = MIN(m->totalstats_interval.managed_sess_min, + m->totalstats.managed_sess_crt); mutex_unlock(&m->totalstats_interval.managed_sess_lock); if (!ret) From 030912304bbe9fd817246b80ddc7669a1bc50c66 Mon Sep 17 00:00:00 2001 From: smititelu Date: Fri, 11 Dec 2015 13:13:46 +0100 Subject: [PATCH 2/7] Update README with REDIS details --- README.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/README.md b/README.md index e2b48bcaa..5c464a78e 100644 --- a/README.md +++ b/README.md @@ -556,6 +556,26 @@ then the start-up sequence might look like this: With this setup, the SIP proxy can choose which instance of *rtpengine* to talk to and thus which local interface to use by sending its control messages to either port 2223 or port 2224. +REDIS Database interaction +------------------------- + +Rtpengine is able to write call details in redis database and retore the calls from the same database. +To configure the redis parameters have a look on -r/-R, -z/-Z, -w/-W parameters. + +The three REDIS params could be specified in rtpengine's config file: +* REDIS -> specify the redis database for both read and write ops; expected role of redis is checked to be master and won't start if it is not +* REDIS_READ -> specify the redis database for read ops; expected role of redis may be any, master or slave +* REDIS_WRITE -> specify the redis database for write ops; expected role of redis could be any, master or slave + +One can specify combinations of REDIS/REDIS_READ/WRITE at the same time. For example: +* REDIS=IP1 -> will use IP1 for read and write operations +* REDIS=IP1, REDIS_READ=IP2 -> will use IP1 for write and IP2 for read operations +* REDIS=IP1, REDIS_WRITE=IP2 -> will use IP1 for read and IP2 for write operations +* REDIS=IP1, REDIS_READ=IP2, REDIS_WRITE=IP3 -> will use IP2 for read and IP3 for write operations +* REDIS_READ=IP1, REDIS_WRITE=IP2 -> will use IP1 for read and IP2 for write operations +* REDIS_READ=IP1 -> will use IP1 for read operations; write operations are ignored +* REDIS_WRITE=IP1 -> will use IP1 for write operations; read operations are ignored + The *ng* Control Protocol ========================= From 8f24fa374c6c3d08837ec77631d1b112ac1b24eb Mon Sep 17 00:00:00 2001 From: Jenkins User Date: Wed, 16 Dec 2015 09:33:26 +0100 Subject: [PATCH 3/7] Release new version 4.3.0.0+0~mr4.3.0.0 --- debian/changelog | 49 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/debian/changelog b/debian/changelog index d65d926c0..6d59de0d0 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,52 @@ +ngcp-rtpengine (4.3.0.0+0~mr4.3.0.0) unstable; urgency=medium + + [ Frederic-Philippe Metz ] + * [10f6e51] Replaced sprintf by snprintf for cdrbuffer + * [8219921] Extended callid space for list_* output + + [ smititelu ] + * [c406e6d] Some ICE NULL checks + * [637f9f9] Add logging related to kernelization and strict-source flag - master branch + * [4b92d14] Allow more than 65536 open files + * [c44c35a] Add 'rtpengine-ctl list maxsessions' command + * [00bb10b] Add 'rtpengine-ctl set maxsessions X' command + * [012bcc4] Add 'rtpengine-ctl list maxopenfiles' command + * [06b1293] Update rtpengine-ctl util + * [c969ab9] Change maxsessions feature behaviour + * [32a4299] Update README.md for --max-sessions + * [0309123] Update README with REDIS details + + [ Camille Oudot ] + * [fad4074] allow non-root users to control the kernel module + * [5a8f5c3] add possibility to choose rtpengine process user + * [88ce85e] remove kernel module uid/gid global switch + * [6f6a703] add option to set the group owning /proc/rtpengine + * [548b710] disable procfs uid/gid for kernels prior to 3.10 + + [ Richard Fuchs ] + * [99a3faf] MT#15289 add "reset" flag to un-learn certain parameters + * [ed75c99] fix a memory leak + * [1a67331] fix compiler warnings + * [28d877b] remove superfluous ice agent warning + * [2cff49b] support reset flag in ng-client + * [1c6eec4] additional DTLS debug log messages + * [59a69f0] Improve DTLS packet processing + * [cae0b4b] compile fix for debug builds + * [afa46a4] use `reset` flag to also reset and restart ICE agents + * [6d3865b] Mass update - manual merge of rfuchs/socket-rework branch + * [6b5c4e8] Mass update for non-daemon code (see `6d3865b`) + * [31d28a3] MT#16783 support via-branch matching in `delete` messages + * [cd34dde] fix missing redis expiry times + * [cb53218] fix incomplete dialogue association when initial offer contains to-tag + + [ Lucian Balaceanu ] + * [41fa252] Replacing redis hashkeys with -CALLID_IDX instead of -POINTER + * [8ee14e5] Fixing managed_sess_min interval statistic. + + [ Sipwise Jenkins Builder ] + + -- Sipwise Jenkins Builder Wed, 16 Dec 2015 09:33:26 +0100 + ngcp-rtpengine (4.2.0.0+0~mr4.2.0.0) unstable; urgency=medium [ Stefan Mititelu ] From 937bb710de53c4195bf29f377a4eb4b331e1ce54 Mon Sep 17 00:00:00 2001 From: Lucian Balaceanu Date: Thu, 17 Dec 2015 11:42:57 +0200 Subject: [PATCH 4/7] Adding images to illustrate redis database layout --- utils/images/RTPengine-Redis-DB-Model.graphml | 894 ++++++++++++++++++ utils/images/RTPengine-Redis-DB-Model.jpg | Bin 0 -> 175468 bytes 2 files changed, 894 insertions(+) create mode 100644 utils/images/RTPengine-Redis-DB-Model.graphml create mode 100644 utils/images/RTPengine-Redis-DB-Model.jpg diff --git a/utils/images/RTPengine-Redis-DB-Model.graphml b/utils/images/RTPengine-Redis-DB-Model.graphml new file mode 100644 index 000000000..b425cdbb3 --- /dev/null +++ b/utils/images/RTPengine-Redis-DB-Model.graphml @@ -0,0 +1,894 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + REDIS-DB + + + + + + + + + + + + + + + + + Key + + + + + + + Value + + + + + + + NUM_SFD + + + + + + + NUM_STREAM + + + + + + + NUM_STREAM + + + + + + + NUM_TAG + + + + + + + NUM_TAG + + + + + + + NUM_TAG + + + + + + + NUM_MEDIA + + + + + + + NUM_MEDIA + + + + + + + NUM_MEDIA + + + + + + + + NUM_MAP + + + + + + + NUM_MAP + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + SET: calls + + + + + + + + + + + + + + + + 1) "1-28893@192.168.12.3" + + + + + + + + + + + + + + + + HASH: call-1-28893@192.168.12.3 + + + + + + + + + + + + + + + + 1) "created" + 2) "1450198647" + 3) "last_signal" + 4) "1450198647" + 5) "tos" + 6) "4" + 7) "deleted" + 8) "0" + 9) "num_sfds" +10) "4" +11) "num_streams" +12) "4" +13) "num_medias" +14) "2" +15) "num_tags" +16) "2" +17) "num_maps" +18) "2" +19) "ml_deleted" +20) "0" +21) "created_from" +22) "10.25.1.9:49651" +23) "created_from_addr" +24) "10.25.1.9" + + + + + + + + + + + + + + + + HASH: sfd-1-28893@192.168.12.3-0 +HASH: sfd-1-28893@192.168.12.3-1 +HASH: sfd-1-28893@192.168.12.3-%NUM_SFD + + + + + + + + + + + + + + + + 1) "pref_family" +2) "IP4" +3) "localport" +4) "8192" +5) "logical_intf" +6) "default" +7) "local_intf_uid" +8) "0" +9) "stream" +10) "0" + + + + + + + + + + + + + + + + + HASH: stream-1-28893@192.168.12.3-%NUM_STREAM + + + + + + + + + + + + + + + + 1) "media" + 2) "0" + 3) "sfd" + 4) "0" + 5) "rtp_sink" + 6) "2" + 7) "rtcp_sink" + 8) "4294967295" + 9) "rtcp_sibling" +10) "1" +11) "last_packet" +12) "1450198647" +13) "ps_flags" +14) "1114368" +15) "endpoint" +16) "192.168.12.3:6087" +17) "advertised_endpoint" +18) "192.168.12.3:6087" +19) "stats-packets" +20) "0" +21) "stats-bytes" +22) "0" +23) "stats-errors" +24) "0" + + + + + + + + + + + + + + + + LIST: stream_sfds-1-28893@192.168.12.3-%NUM_STREAM + + + + + + + + + + + + + + + + 1) "0" + + + + + + + + + + + + + + + + HASH: tag-1-28893@192.168.12.3-%NUM_TAG + + + + + + + + + + + + + + + + 1) "created" +2) "1450198647" +3) "active" +4) "0" +5) "deleted" +6) "0" +7) "tag" +8) "1" + + + + + + + + + + + + + + + + LIST: other_tags-1-28893@192.168.12.3-%NUM_TAG + + + + + + + + + + + + + + + + 1) "1" + + + + + + + + + + + + + + + + LIST: medias-1-28893@192.168.12.3-%NUM_TAG + + + + + + + + + + + + + + + + 1) "1" + + + + + + + + + + + + + + + + HASH: media-1-28893@192.168.12.3-%NUM_MEDIA + + + + + + + + + + + + + + + + 1) "tag" + 2) "1" + 3) "index" + 4) "1" + 5) "type" + 6) "audio" + 7) "protocol" + 8) "RTP/AVP" + 9) "desired_family" +10) "IP4" +11) "sdes_in_tag" +12) "0" +13) "sdes_out_tag" +14) "0" +15) "logical_intf" +16) "default" +17) "media_flags" +18) "2162702" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + LIST: streams-1-28893@192.168.12.3-%NUM_MEDIA + + + + + + + + + + + + + + + + 1) "0" +2) "1" + + + + + + + + + + + + + + + + LIST: maps-1-28893@192.168.12.3-%NUM_MEDIA + + + + + + + + + + + + + + + + 1) "0" + + + + + + + + + + + + + + + + HASH: map-1-28893@192.168.12.3-%NUM_MAP + + + + + + + + + + + + + + + + 1) "wildcard" + 2) "0" + 3) "num_ports" + 4) "2" + 5) "intf_preferred_family" + 6) "IP4" + 7) "logical_intf" + 8) "default" + 9) "endpoint" +10) "192.168.12.3:6087" + + + + + + + + + + + + + + + + LIST: map_sfds-1-28893@192.168.12.3-%NUM_MAP + + + + + + + + + + + + + + + + 1) "loc-0" +2) "2" +3) "3" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/utils/images/RTPengine-Redis-DB-Model.jpg b/utils/images/RTPengine-Redis-DB-Model.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f92b52d5364560b667a38ac96278fedbe5cb5d53 GIT binary patch literal 175468 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 WVCz+aNJIV^Rnfou-|+u2^S=P8dIz@v literal 0 HcmV?d00001 From 7ae955cbaeb8dd5eb8f76e7e340f90bdb1b12149 Mon Sep 17 00:00:00 2001 From: Lucian Balaceanu Date: Fri, 18 Dec 2015 13:11:00 +0100 Subject: [PATCH 5/7] Fixing reversed parameters when calculating redis restore time --- daemon/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/daemon/main.c b/daemon/main.c index e3d4fc536..dd9641afe 100644 --- a/daemon/main.c +++ b/daemon/main.c @@ -598,7 +598,7 @@ no_kernel: gettimeofday(&redis_stop, NULL); // print redis restore duration - redis_diff += timeval_diff(&redis_start, &redis_stop) / 1000.0; + redis_diff += timeval_diff(&redis_stop, &redis_start) / 1000.0; ilog(LOG_INFO, "Redis restore time = %.0lf ms", redis_diff); gettimeofday(&ctx->m->latest_graphite_interval_start, NULL); From df2126f4e5382b1297317eea61e2faccc23a3c72 Mon Sep 17 00:00:00 2001 From: Guillem Jover Date: Fri, 18 Dec 2015 15:14:30 +0100 Subject: [PATCH 6/7] MT#16473 Convert debian/copyright to machine-readable format See . Converted via update-copyright. Update copyright years. Change-Id: I897af7d66d0901d46161cdd29fcc8b4a567bf888 --- debian/copyright | 61 ++++++++++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 30 deletions(-) diff --git a/debian/copyright b/debian/copyright index bad3fe81c..a5e3ea237 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,35 +1,36 @@ -Upstream Author: The Sipwise Team - http://sipwise.com -Copyright: 2007-2013, Sipwise GmbH, Austria +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Source: https://www.sipwise.com/ +Upstream-Contact: Sipwise Development Team + +Files: * +Copyright: + Copyright © 2007-2015 Sipwise GmbH, Austria License: GPL-3+ with OpenSSL exception - This program is free software; you can redistribute it - and/or modify it under the terms of the GNU General Public - License as published by the Free Software Foundation; either - version 3 of the License, or (at your option) any later - version. + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. . - In addition, as a special exception, the author of this - program gives permission to link the code of its - release with the OpenSSL project's "OpenSSL" library (or - with modified versions of it that use the same license as - the "OpenSSL" library), and distribute the linked - executables. You must obey the GNU General Public - License in all respects for all of the code used other - than "OpenSSL". If you modify this file, you may extend - this exception to your version of the file, but you are - not obligated to do so. If you do not wish to do so, - delete this exception statement from your version. + In addition, as a special exception, the copyright holders give + permission to link the code of this release with the OpenSSL project's + "OpenSSL" library (or with modified versions of it that use the same + license as the "OpenSSL" library), and distribute the linked executables. . - This program is distributed in the hope that it will be - useful, but WITHOUT ANY WARRANTY; without even the implied - warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - PURPOSE. See the GNU General Public License for more - details. + You must obey the GNU General Public License in all respects for all + of the code used other than "OpenSSL". If you modify file(s) with this + exception, you may extend this exception to your version of the file(s), + but you are not obligated to do so. If you do not wish to do so, + delete this exception statement from your version. If you delete + this exception statement from all source files in the program, then + also delete it here. . - You should have received a copy of the GNU General Public - License along with this package; if not, write to the Free - Software Foundation, Inc., 51 Franklin St, Fifth Floor, - Boston, MA 02110-1301 USA + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. . - On Debian systems, the full text of the GNU General Public - License version 3 can be found in the file - `/usr/share/common-licenses/GPL-3'. + You should have received a copy of the GNU General Public License + along with this program. If not, see . +Comment: + On Debian systems, the full text of the GNU General Public License + version 3 can be found in the file '/usr/share/common-licenses/GPL-3'. From ca04c9636f77f8b24de629a351eadb189b268d26 Mon Sep 17 00:00:00 2001 From: Pawel Kuzak Date: Mon, 21 Dec 2015 15:31:32 +0100 Subject: [PATCH 7/7] Make creation of iptables chain optional iptables might be managed via different tools by an administrator. In such a setup, insertion and deletion of rules in the INPUT chain as well as creation of new chains by an application is not wanted. By setting the corresponding configuration parameter in the config file, the init-script will not touch the INPUT queue nor will it create the rtpengine chain. It will still attempt to create a rule in the rtpengine chain, but will refuse to start if that chain does not exist. --- debian/ngcp-rtpengine-daemon.default | 1 + debian/ngcp-rtpengine-daemon.init | 58 +++++++++++++++++----------- 2 files changed, 37 insertions(+), 22 deletions(-) diff --git a/debian/ngcp-rtpengine-daemon.default b/debian/ngcp-rtpengine-daemon.default index f204ab19b..fab2f2510 100644 --- a/debian/ngcp-rtpengine-daemon.default +++ b/debian/ngcp-rtpengine-daemon.default @@ -32,3 +32,4 @@ TABLE=0 # GRAPHITE_INTERVAL=60 # GRAPHITE_PREFIX=myownprefix # MAX_SESSIONS=5000 +# CREATE_IPTABLES_CHAIN=no diff --git a/debian/ngcp-rtpengine-daemon.init b/debian/ngcp-rtpengine-daemon.init index ca7f5a7af..7fbabc63f 100755 --- a/debian/ngcp-rtpengine-daemon.init +++ b/debian/ngcp-rtpengine-daemon.init @@ -126,16 +126,24 @@ case "$1" in ip6tables -X mediaproxy 2> /dev/null rmmod xt_MEDIAPROXY 2>/dev/null - iptables -N rtpengine 2> /dev/null - iptables -D INPUT -j rtpengine 2> /dev/null - iptables -I INPUT -j rtpengine - iptables -D rtpengine -p udp -j RTPENGINE --id "$TABLE" 2>/dev/null - iptables -I rtpengine -p udp -j RTPENGINE --id "$TABLE" - ip6tables -N rtpengine 2> /dev/null - ip6tables -D INPUT -j rtpengine 2> /dev/null - ip6tables -I INPUT -j rtpengine - ip6tables -D rtpengine -p udp -j RTPENGINE --id "$TABLE" 2>/dev/null - ip6tables -I rtpengine -p udp -j RTPENGINE --id "$TABLE" + if [ "$CREATE_IPTABLES_CHAIN" != "no" ]; then + iptables -N rtpengine 2> /dev/null + iptables -D INPUT -j rtpengine 2> /dev/null + iptables -I INPUT -j rtpengine + ip6tables -N rtpengine 2> /dev/null + ip6tables -D INPUT -j rtpengine 2> /dev/null + ip6tables -I INPUT -j rtpengine + fi + if iptables -C INPUT -j rtpengine 1> /dev/null 2> /dev/null && iptables -n --list rtpengine 1> /dev/null 2> /dev/null; then + iptables -D rtpengine -p udp -j RTPENGINE --id "$TABLE" 2>/dev/null + iptables -I rtpengine -p udp -j RTPENGINE --id "$TABLE" + ip6tables -D rtpengine -p udp -j RTPENGINE --id "$TABLE" 2>/dev/null + ip6tables -I rtpengine -p udp -j RTPENGINE --id "$TABLE" + else + echo "" + echo "Missing rtpengine iptables chain - not starting" + exit 0 + fi set -e fi start-stop-daemon --start --quiet --pidfile $PIDFILE \ @@ -213,20 +221,26 @@ case "$1" in ip6tables -F mediaproxy 2> /dev/null ip6tables -X mediaproxy 2> /dev/null rmmod xt_MEDIAPROXY 2>/dev/null - - iptables -D INPUT -j rtpengine 2> /dev/null - iptables -D rtpengine -p udp -j RTPENGINE --id "$TABLE" 2>/dev/null - ip6tables -D INPUT -j rtpengine 2> /dev/null - ip6tables -D rtpengine -p udp -j RTPENGINE --id "$TABLE" 2>/dev/null rmmod xt_RTPENGINE 2>/dev/null - modprobe xt_RTPENGINE - iptables -N rtpengine 2> /dev/null - iptables -I INPUT -j rtpengine - iptables -I rtpengine -p udp -j RTPENGINE --id "$TABLE" - ip6tables -N rtpengine 2> /dev/null - ip6tables -I INPUT -j rtpengine - ip6tables -I rtpengine -p udp -j RTPENGINE --id "$TABLE" + if [ "$CREATE_IPTABLES_CHAIN" != "no" ]; then + iptables -D INPUT -j rtpengine 2> /dev/null + ip6tables -D INPUT -j rtpengine 2> /dev/null + iptables -N rtpengine 2> /dev/null + iptables -I INPUT -j rtpengine + ip6tables -N rtpengine 2> /dev/null + ip6tables -I INPUT -j rtpengine + fi + if iptables -C INPUT -j rtpengine 1> /dev/null 2> /dev/null && iptables -n --list rtpengine 1> /dev/null 2> /dev/null; then + ip6tables -D rtpengine -p udp -j RTPENGINE --id "$TABLE" 2>/dev/null + iptables -D rtpengine -p udp -j RTPENGINE --id "$TABLE" 2>/dev/null + iptables -I rtpengine -p udp -j RTPENGINE --id "$TABLE" + ip6tables -I rtpengine -p udp -j RTPENGINE --id "$TABLE" + else + echo "" + echo "Missing rtpengine iptables chain - not starting" + exit 0 + fi set -e fi start-stop-daemon --start --quiet --pidfile \