forked from voipmonitor/sniffer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathChangeLog
3136 lines (2375 loc) · 160 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
19.5 17.5.2017
==============
- add support for ssl in simple read from file (parameter -r) [VS-611]
- ignore too high jitter values in rcpt packets [VS-590]
- fix G722 audio decode [VS-613]
- use new cloud protocol which solves problem with the connection stability
- fix fix dssl condition for check invalid record length and allow ssl decoding even if the tcp handshake is incomplete [VS-591]
- fix cleaning spooldir when combining options (when maxpoolsize and maxpoolrtpsize were set it deleted all sip before rtp) [VS-616]
19.4.3 10.5.2017
================
- fix storing SQL when query_cache = yes
19.4.2 27.4.2017
================
- dump ss7 fix
- fix incorrect report about last RTP ends before last SIP packet in case it was call put on hold [VS-609]
19.4.1 26.4.2017
================
- fix opt_rtp_firstleg option (deprecated) [VS-610]
- add support for multiple ss7 messages in one packet [VG-1191]
19.4 25.4.2017
==============
- new cloud protocol (not default yet)
- fix set called / caller side for rtp streams in skinny [VS-592]
- fix missing BYE packet when tcp/udp SIP packets are used within one dialog [VS-593]
- make skinny port optional and allow multiple skinny ports [VS-597]
- disable option pcap_queue_use_blocks for receiver mode if t2_boost is enabled [VS-600]
- fix issue with fake gzip header inside tar.gz [VS-599]
- fix skinny spool flush [VS-572]
- fix issue when http & webrtc & ssl is configured - (add ip filters before enter to http & webrtc procedure) [VS-591]
- do not abort voipmonitor process in case of pcapscan failure [VS-601]
- imeplement mikrotik encapsulation (voipmonitor can now dissect mikrotik mirroring) [VS-603]
- fix SIP registrations for some cases [VS-598]
- flush rtp_stat when sniffer ends
- check time synchronization between sender and receiver mode [VS-589]
19.3 1.4.2017
=============
- Disable curl timeout when in cloud mode querying cloud.database
- check partition limit based on mysql version [VS-580]
- mark call as fax if there is udptl data [VS-582]
- vx-opus support [VS-386]
- add support for NANPA numbers without '1' prefix [VG-1178]
- new mysql logger (if heap is growing)
- ISUP SS7 libwireshark support (experimental) [VG-1191]
- fix crash in dssl - add recLen condition to ssl3_record_layer_decoder
- fix loading pcap from file [VS-588]
- add support for IEEE 802.1ad with VLAN [VG-1208]
- fix mirroring packets (sender/receiver) in some case where it can use all CPU
- fix some false positive SIP registration expires [VG-1205]
- fix IP condition in fraud register filter [VG-1195]
- fix load/cpu usage in syslog
- fix issue with incorrect maxpoolsize in configuration
- new use_id_sensor_for_receiver_in_files option
19.2.1 7.3.2017
===============
- fix memory leak for cloud more
- new tool for .raw and .rawInfo conversion: voipmonitor -c -k --conv-raw-info directory_with_rawinfo&raw
19.2 3.3.2017
=============
- command line parameter --fax-deduplicate for deduplicate udptl by seq
19.1.1 2.3.2017
===============
- fix and enhance SIP decryption, now SSLv3, TLSv1, TLSv1.1 and TLSv1.2 are supported (new libdssl) (for old implementation use ssl = old, default is now libdssl if ssl = yes) [VS-573]
- fix SSLv3 only when upgrading from 19.0.1 (if on static 19.0.1 you must upgrade manually)
- fix registration expirations [VG-1167]
- new command line parameter --fax-deduplicate which deduplicates udptl by seq [VS-569] [VS-571]
- allow rtpfromsdp_onlysip option also for skinny [VS-574]
- fix loading SIP REGISTER expire default filters [VG-1148]
- reimplement heurestic which determines which streams should be assigned to which party (caller/called) in case of many streams in a call
- fix caller/called stream assign when using callidmerge_header option in voipmonitor.conf
- fix choppy audio when two streams (parallel) belongs to caller or called with different SSRC
- fix parsing from/to headers for 1 character lenght (like called "*") [VS-577]
- less memory usage
- add support for destination mysql port for '-X10' switch (db migration) [VS-576]
19.0.2 16.2.2017
================
- compile with opensslv3 support
19.0.1 16.2.2017
================
- fix broken audio decode (since 19.0) when multiple RTP streams were recorded which belongs both to caller or called (with the same SSRC) [VS-357]
- fix alert register expire, set filter for only state rs_Expired (the GUI was sending blank emails when register expire was used) [VG-1148]
19.0 16.2.2017
==============
- new TCP reassembler is now default for reassembling SIP messages which can reassemble more messages than the old one (tested for months). It can be changed to the old one with sip_tcp_reassembly_ext=no [VS-565]
- allow space separator for country prefixes setting
- check & create folder packetbuffer_file_path [VS-503]
- fix scanpcapdir if interface is not set in voipmonitor.conf [VS-566]
- fix audio decode in case one RTP stream is interleaved with another RTP stream with different codec (example: G711(ssrc:0x00001111) - G729(ssrc:0x00009999) - G711(ssrc:0x00001111)) [VS-357]
18.3 15.2.2017
==============
- fix memory leak when using pauserecording feature
- fix parsing From and To in case the format is From: "Call Manager" <sip:10.0.0.1>;tag=486739~121a78c0-1834-4f45-9aef-960da02c9618-29204586 (Cisco CUCM-8.6) [VS-557]
- implemented l2tp udp tunnel decapsulation [VS-560]
- do not use 'local' string in country detect [VG-1159]
- check and create country tables if they are not created yet [VG-1158]
- fix crash in simple read mode (-r) - fix call function CountryDetectTerm [VS-563]
- use query_cache in cloud mode only if set opt_fork
18.2 10.2.2017
==============
- implement country grouping also for SIP MESSAGE [VS-319]
- add missing convert lzo to gzip for mode tar=no
18.1 8.2.2017
=============
- enabling extended reassembling for tcp also when loading pcap from GUI - in case it i enabled in voipmonitor.conf
- document database_backup* options
- store country source/destination by IP / tel.prefixes (new table cdr_country_code ) [VG-319]
18.0 6.2.2017
=============
- added freeBSD support again
- fix crash when storing SIP REGISTER to pcap files
- new parameterers --print-config-file and --print-config-file-default (need together with parameter --new-config which loads config from the DB) [VG-12]
17.15 30.01.2017
================
- send id-sensor for activecalls (listcalls in manager) [VG-781]
- store DTMF type to cdr_dtmf so user can see DTMF type in db (GUI) [VG-845]
- add two new special types in custom header 'max_length_sip_data', 'max_length_sip_packet' which allows to store and search by the largest SIP packet so user can find packets with >= N bytes [VG-1067]
- add support for dynamic payload in skinny (supports newer protocol) [VG-1132]
- allow concurrent calls alert trigger by summarize which will not filter by IP or by tel.num (so it is like global concurrent calls alert) [VG-1134]
- new config options - bye_timeout, bye_confirmed_timeout, ignore_rtp_after_bye_confirmed (see voipmonitor.conf for more details) [VS-554]
- new detect_alone_bye option which if enabled (default disabled) marks CDR in case there is BYE within dialog with transaction does not exists reply [VG-808]
- fix parameter rtpfromsdp_onlysip [VG-1137]
17.14 13.01.2017
================
- fix ssrc conversion from hexadecimal value in SIP/PUBLISH/LocalAddr/SSRC (pairing RTCP-XR) VS-551
- add configuration parameters for spooldir permissions, new options: spooldir_file_permission (default 0666), spooldir_dir_permission (default 0777), spooldir_owner, spooldir_group [VS-362]
- fix GRE encapsulation pcap storing (broken since 17.11) [VG-1131]
- fix fast forward voice in case caller/called sample rate differs (one direction G722 the other G711)
17.13 13.01.2017
================
- apply new operator (and/or/both directions) between src / dst in rcc alert [VG-1079]
- add id_sensor condition to functions in check_exists_act_... in cleanspool
- add / fix cleanup registers cache when reading from file with -rpb
- fix '!' operator in active registers filter
- add the posibility of using custom headers in 'easy caller' [VG-1082]
- fix RTP threading when pcapsplit is set to no (rare configuration)
17.12 09.01.2017
================
- optimize number of register_failed and _state
17.11 06.01.2017
================
- fix one way calls (only one RTP stream) for some cases (broken since >= 17.8)
- fix memory leak in IP defrag
- check if id is bigint in register_failed [VS-545]
- fix missing load fraud parameter international_number_min_length_prefixes_stric [VG-1112]
- fix skinny callername (add support for skinny header CM5CALL_INFO_MESSAGE V22) [VS-546]
- add option skinny_call_info_message_decode_type (1 for wireshark < 2, 2 (default) for wireshark >= 2) [VS-546]
- fix increment counter in register failed (prevents duplicate records) [VS-543]
- cleanspool optimizations (more friendly to amazon s3)
- allow to disable cleanspool (option cleanspool no/yes)A
- set timeout for curl request (fix cloud variant)
- extend support for fake ERSPAN [VS-548]
- new option saveaudio_answeronly which will store audio only for connected calls (no ringing) [VS-521]
17.10.1 19.12.2016
==================
- fix issue with message without content and with exists dcs [VG-870]
- fix pcap_queue_use_blocks mode
- fix leak / unlock issue with http / tcpreassembly
- suppress warning 'incorrect dataoffset/caplen' when udpfrag is enabled
17.10 19.12.2016
=================
- fix register failed 404 which was adding new record instead of increasing count [VS-543]
- prioritize RTP stream with src port:ip from SDP in case there are same IP:port destination RTP streams [VS-506]
- fix loop (100% cpu) for 32bit
- fix vsz & thread handlers overflow in receiver with bad time in sender
- rebuild create dirname for files in spool
- fix memory leak in udp defrag if exists duplicity in fragments
- fix cachedir
- fix ipaccount
- fix saveaudio=wav for some case
17.9 14.12.2016
===============
- fix loading fraud alerts >= 17.8 when some DB columns are missing (if GUI was not yet upgraded)
- new parameter packetbuffer_compress_ratio (0-100) if CPU is bottleneck when mirroring packets
- fix use capture rules from csv if not exist capture rules in db, add parameter --check-db which forces db upgrade
- fix load filter-groups in send_call_info [VG-1100]
- clear default international prefixes when loading international rules for alerts (fixes strict prefix in GUI) [VG-1101]
17.8 13.12.2016
===============
- support filtering sensors in fraud [VG-960]
- enhance sip register flood - add select group by src / dst ip, pcap dump [VG-964]
- do not remove RTP IP:port from call which shares the same IP:port [VS-541]
- fraud "alert change register country" - add filter by ip, add destination ip in report [VG-975]
17.7 7.12.2016
==============
- allow store SIP / RTP / GRAPH and AUDIO to different folders (new options spooldir_rtp spooldir_graph spooldir_audio) [VS-440]
- new option capture_rules_telnum_file = capturerules.csv loads capture rules from csv file - this file will be loaded first before mysql capture rules. First line has to contain columns name [VS-525]
- speedup extended TCP reassembler
- add option sip-register-ignore-res401 (default no) and sip-register-ignore-res401-nonce-has-changed which will ignore failed SIP registrations which ends with 401 response code or 401 with specific nonce-has-changed reason [VG-1047]
- in capture rules by sip header flags save rtp and save audio are now recognized also in all SIP messages [VS-537]
- detect and mark calls which shares the same RTP stream so it can be searched in database (cdr_rtp column flag&1 [VG-920]
- fix SKINNY not storing CDR
- fix crash in cleanspool at terminating (fixes upgrade)
- use gunzip library when upgrading sniffer instead of calling gunzip from shell (fixes upgrade errors)
17.6 21.11.2016
===============
- fix G.729 MOS score when ptime is 60ms in rare case
- disable pcap_queue_use_blocks when mirroring packets [VS-480]
- apply new parameter international_number_min_length_prefixes_strict to international rules [VG-1066]
- tweak more parameters when t2 boos is enabled
- add 'special types' to message custom headers gsm dcs and gsm voicemail [VG-870]
- ignore % suffix for realtime concurrent calls alerts
- fix destination number when calling to multiple destinations at once (store that one which send 200 OK) [VS-441]
- fix TCP reassembler for extended mode
17.5.1 4.11.2016
================
- store at least one RTP stream with <= 2 packets (it worked only for reading offline pcaps)
- fix mysqlhost DNS resolution if mysql was disconnected and DNS changed [VS-515]
- fix wrong frame check sequence error in saved pcap packets (for TCP) - GUI sip history ignored such packets (all versions) [VS-498]
- fix udp connection for sip_send [VS-520]
17.5 2.11.2016
==============
- fix deadlock >= 17.4
- fix REGISTER failed for response codes 401 and 403 when passing through SIP proxies [VG-1047]
- do not mark call as T.38 if negotiation failes (response 488 / 606) [VS-403]
- fix loading pcap for old database schema [VS-516]
- fix start all t2 threads in t2_boost mode
- store at least one RTP stream to cdr_rtp table with cdr_rtp.received <= 2 packets
17.4.3 31.10.2016
=================
- fix rare race condition when storing RTP packets (which can result in invalid packet size in pcap - failing to download pcap) (all versions)
17.4.2 26.10.2016
=================
=================
- fix deadlock >= 17.4
17.4.1 26.10.2016
=================
- fix mirror sender mode crash
- apply no MESSAGE hash VG-838
17.4 24.10.2016
===============
- flush fixed jitterbuffer when resyncing to avoid false low mos score which happens when sender sends RTP in bursts
- speed optimization in t2 treads (new option t2_boost = yes) - removes bottleneck >= 15000 concurrent calls (around 2Millions RTP packets / sec)
- fix early call termination when 3,4,5XX response is received in the middle of a call (response to OPTION) [VS-502]
- fix RTP detection when calling to multiple phones at once [VS-498]
- fix memory leak when RTP threads are lowering / rising
- fix store record to register_failed after timeout in register without response (new configuration option sip-register-timeout-disable_save_failed to not to save failed registration on timeout) [VS-382]
- fix lastSIPresponseNum in register [VS-382]
- create record in failed register every 120 seconds for the same register failed alert so the register alert can be triggered again [VG-1002]
- add SIP MESSAGE proxy table [VG-826]
- fix content_type and content_length in message table
- fix checksum32buf for big endian (fixes mirroring on rpi) [VS-488]
- fix file handler leak in cloud mode
- add support for URL preview in SIP MESSAGE with url [VG-835]
- fix cdr_ua store when reading pcap with -r [VS-505]
- add support for destination prefixes condition in realtime concurrent calls alert [VG-836]
- fix decode gsm message with (DCS & 0xC0) == 0xC0 [VG-870]
- add indications voicemail active / inactive to SIP MESSAGE [VS-870]
- fix cleaning spool directory - when restarted actual date was counted twice to used space
17.3.4 26.9.2016
================
- fix cleaning spool directory - when restarted actual date was counted twice to used space
17.3.3 9.9.2016
===============
- fix crash in defrag if pcap_queue_use_blocks is enabled
- fix RTP stream recognizing if callidmerge_header is enabled [VG-1004]
17.3.2 8.9.2016
===============
- fix alert ip condition if the IP ends with 0 [VG-1008]
- fix new option rtpfromsdp_onlysip which ignored certain streams [VS-489]
- fix audio conversion when RTP streams have different sample rate (G722 vs G711 in one call etc.) [VS-461] [VS-490]
17.3.1 6.9.2016
===============
- remove debug when reading pcap
17.3 5.9.2016
=============
- support vlan for live sniffing in GUI [VG-758]
17.2 31.8.2016
==============
- do not remove RTP streams when converting to audio which cannot be duplicates based on its timeframe (when phone puts on hold and SSRC does not change for example)
- add amr-wb support (fixes MOS score for amr-wb)
- fix cachedir option [VS-486]
- add sniffer version to end of syslog lines
- fix filtering in register active by sniffer id [VG-999]
- fix UA store in register_state and register_failed
17.1 24.8.2016
==============
- fix MOS scoring for all codecs which was gradually increasing to 4.5. Longer calls have always better MOS score. MOS intervals were always higher with time increase.
- fix MOS score for AMR which was always 4.5
- fix memory leak in case sip-register was enabled(>= 17.0) (add cleanupregisters manager command for testing purpose)
- add mark line in .graph for AMR VAD frames
- new option rtpthreads_start (only for testing purpose)
- fix crash when voipmonitor is stopped during spool cleaning [VS-481]
- new option rtpfromsdp_onlysip (default no) which if enabled it takes RTP for audio decode only with the same IP addresses as SIP packets (in other words it will ignore all RTP streams with another IPs than SIP packets) [VS-469]
- fix pcap_queue_use_blocks option which if enable threading mod >= 2 must be enabled [VS-480]
- fix sql query for alter table files (remove db name)
- fix memory limit when buffer reaches limit (it could be still possible to eat all memory if sniffer cannot keep up with traffic)
- add new option snaplen [VS-477]
- fix crash in query_cache mode at start if cache file / line not contain separator ':'
- fix conditions for hide message option in capture rule
- signifficantly speedup sniffer mirroring
- new options mirror_require_confirmation and mirror_use_checksum
17.0.1 8.8.2016
===============
- refactor call live listenting [VG-977]
- fix filtercommand disable in capture rules and do not run it on REGISTER (only INVITE and MESSAGE) [VG-983]
- fix capture rules sniffer reload which was applied only from second call [VG-982]
17.0 1.8.2016
=============
- redesign SIP REGISTER alerts - it now uses memory storage instead of sending every SIP registration to the database [VG-43] [VS-467]
- make mirroring packets more robust - added crc and block count confirmations (do not loose data in case sniffers gets disconnected or other faulty state)
- new in-memory SIP REGISTER alert rules
- new secondary spool which can be enabled per single capture rules (in GUI -> capture rules -> secondary storage) - this allows to store recordings for longer period than default [VG-57]
- added new command line options: --reindex-all, --run-cleanspool
- when converting to audio do not remove streams which looks like duplicate but it is not
- fix pcapscandir option in case some call are divided to more files [VS-473]
16.1.2 8.7.2016
===============
- fix potential crash in pcap_queue_use_blocks mode (rare configuration option)
- fix mirror if set pcap_queue_use_blocks mode
- fix saving rtpc if save rtp is disabled [VG-944]
16.1.1 28.6.2016
================
- Merge SDP rtpmap instead of keeping rtpmap from last SDP - for example if re-INVITE does not have dynamic payload in SDP but the RTP stream continues on dynamic payload from previous INVITE the voipmonitor will now handle it properly
16.1 27.6.2016
==============
- fix call lenght for some cases (optimize use of set_last_packet_time and destroy_call_at) [VS-448]
- add option --update-schema which forces db update (normally this is done automatically when upgrading between sniffers
- Added loadavg type of graph into RRD charts [VG-366]
- trim strings (white characters from start/end) when loading capture rules from database [VG-937]
- add support for capturing SIP with MPLS header [VS-456]
16.0.2 7.6.2016
===============
- fix mos_f1|f2|adapt_min_mult10 which could have random value sometimes (all versions)
16.0.1 27.5.2016
================
- fix query_cache in cloud mode
16.0 27.5.2016
==============
- fix jitter calcultion (rounding problem - all sniffer versions). Now jitter calculation is on par with wireshark and RTCP reports. voipmonitor jitter value was less than it should be. It also fixes PDV calculations (it was also less than it should). MOS scoring was not affected since it uses different algorythms. It also fixes wrong graph charts for high jittered calls. More information http://www.voipmonitor.org/doc/Jitter-bug (thanks Ole Ernst for fixing this)
15.7.8 26.5.2016
================
- fix packet order in case interface option contains lo (loopback) VS-435
- store cdr_rtp.index if column exists which solves problem with invalid .graph in GUI if there are multiple RTP streams (rare cases) [VG-917]
- solve problem with processing multiple RTP streams in one call (when decoding audio - rare cases) [VS-442]
- fix live audio listening stability
15.7.7 23.5.2016
================
- Fix SKINNY RTP loss false alert if call is on hold
15.7.6 17.5.2016
================
- check number of partitions in all tables (for cleaning) instead only cdr table (which fixes syslog error: Table has no partition for value XXX)
15.7.5 17.5.2016
================
- do not check/upgrade database schema for every restart - only if version differs (speedups sniffer start)
- fix SIP REGISTER pcap save in case it contains multiple REGISTER requests [VS-428]
- ignore RTP packets without payload [VS-397]
- compress SQL quaery cache by default
- fix opus/silk/g722/g729 out of sync audio
- fix live sniffer for OPTIONS/SUBSCRIBE etc [VS-438]
- fix problem with createSchema_init_cdr_partitions
- fix packetbuffer_file_totalmaxsize option (it could be more than set value)
15.7.4 28.4.2016
================
- fix cloud reconnect
- fix mirroring when mirroring from 32bit - 64bit sniffers
15.7.3 21.4.2016
================
- fix >= 15.7 sip tcp reassemble
15.7.2 21.4.2016
================
- fix function TcpReassemblySip::checkSip - detect content-length short tag (l:)
15.7.1 21.4.2016
================
- fix g.723 audio out of sync in case call starts with SID frames (all versions)
- log drop on NIC card if drop rate is > rx * 0.2
15.7 21.4.2016
==============
- ignore packet loss and jitter after REINVITE (removes false positive loss/PDV in case of HOLD / re-INVITE for some cases)
- added experimental feature sip_tcp_reassembly_ext = yes which uses another SIP TCP reassemble code
- fixed loading pcap file via command line (-r)
- fix issue in tcp reassembly - if reading pcap contain packets from split multisip tcp
- new option cdr_ua_reg_remove allows to trim user-agent sip header (strip unique strings to prevent mysql cdr_ua growing (more details in voipmonitor.conf) [VS-425]
15.6 11.4.2016
==============
- implement pause/unpause recording for "182 Queued avaya-cm-data" (new option 182queuedpauserecording) [VS-321]
- fix save only right part of packet data if data contains multiple packets and option 'virtualudppacket' is set in configuration [VS-418]
- do not put destination IP from INVITE to proxy column if the second INVITE is just next SIP proxy due to failure of first SIP proxy [VS-402]
- fix spool cleaning if query cache is enabled in configuration
- new option mysql_client_compress (default no) enables compression between sniffer and mysql server
- add new pause/unpause recording possibility with custom sip header - new option pauserecordingheader in voipmonitor.conf
- check content-length validity (in case some faulty device sends nonsense)
- implement storing http packets to another database
- fix 'receive bad packet buffer block' - force reconnect [VS-405]
- fix >= 15.5 broken SKINNY protocol
15.5.6 1.4.2016
===============
- fix pause recording DTMF
15.5.5 1.4.2016
===============
- fix SIP gsm content-type payload crash
15.5.4 31.3.2016
================
- fix race / crash in rtp process (with simple mode without rtp preprocess threads)
- fix >= 15.5.1 syslog flood in rare cases
- cloud fixes: reenable table & procedure operations for cloud (create, alter) and fix reverse connection
- add configuration parameter dumpallallpackets_path
- add log traffic per interface
15.5.3 30.3.2016
================
- fix rare bad packet reorder when sniffing from multiple interfaces or in receiver mode and multiple mirrorers (all versions)
15.5.2 30.3.2016
================
- fix 15.5.1 start on some installations
15.5.1 28.3.2016
================
- enhance t2cpu threads performance (auto add/remove threads)
- ignore packets with smaller time than previous packet
- ignore same RTP when receiving from multiple mirrorers with the same id_sensor
- fix user agent problem when multiple INVITE [VG-860]
- add thread monitor (watch -n 1 'echo "sniffer_threads" | nc 127.0.0.1 5029')
15.4.5 16.3.2016
================
- fix cloud active connection check
15.4.4 15.3.2016
================
- fix cloud mode mysql connection for rpi
15.4.3 10.3.2016
================
- fix cloud mode
15.4.2 7.3.2016
===============
- fix (all versions) getting files from remote pcap files through TCP manager for files >2GB <4GB and its multiplies (32bit overflow)
15.4.1 7.3.2016
===============
- fix >= 15.2 crash when IP defragmenting packets and threading mode is 1 (which is by default)
15.4 4.3.2016
=============
- fix IP reassemble broken in 15.3 versions [VS-398]
- parse rtcp-xr from publish packets [VS-87]
- fix crash in untar function [VS-400]
- fix performance issue for t0eth thread which might lead to THREAD T0 buffer full message
- new threading_mod = 5 offloads reading from t0eth first thread
15.3.1 22.2.2016
================
- fix use size of tcp header (Sensor shows UDP packets while it arrived as TCP in rare case) [VS-394]
- fix crash when storing rtp/sip to tar in rare case (all versions)
- fix load fraud ip src/dst condition by fraud type (fixes 15.3)
15.3 19.2.2016
==============
- count src or dst IP address for RTP concurrent calls filter
15.2.1 18.2.2016
================
- fix 15.2 crashing when SIP REGISTER packet comes from non ethernet type (any,ppp, etc.)
15.2 17.2.2016
==============
- added MAC address of the first SIP register to the register active table
15.1 16.2.2016
==============
- new option 'utc = 1' will use utc time for cdr and pcap files which is useful for multiple sniffers acros different timezones [VG-817]
- add support for rtp streams fraud [VG-829]
- fix issue / crash in receiver - ignore bad data
- fix crash if new_invite_register return NULL in preprocess sip extend mode
- fix - add sql escape for fraud alert_info
- modify start create partitions - run with thread storing_cdr if create separate thread failed
15.0.8 1.2.2016
===============
- optimize number of RTP threads on large traffic (creation was not fast enough when starting sniffer on huge traffic)
- optimize thread creation
- fix traffic indication in syslog for huge traffic (it showed more trafffic)
15.0.7 29.1.2016
================
- fix thread terminating crash in 15.0.6
15.0.6 29.1.2016
================
- fix memory leak when creating new threads (decoding audio / sql queues etc) (all versions)
15.0.5 29.1.2016
================
- fix race condition leading to crash which can happen on huge traffic (~2Gbit) all >=15 versions
15.0.4 27.1.2016
================
- fix critical bug when reloading sniffer (via GUI or manager command) SIP parser stopped. Fixes all >= 15
15.0.3 26.1.2016
================
- fix IP/UDP defragmentation also for GRE and other IP protocols (not only IPinIP)
- fix SIP REGISTER missing message for some cases (under heavy load) (fixes >= 15.0)
15.0.2 20.1.2016
================
- fix 15.0.1 distribution calls amongs RTP threads leading to buffer full
15.0.1 19.1.2016
================
- SIP processing is now multithreaded (it automatically creates new thread when needed)
- RTP processing is now auto-threaded instead of fixed number of threads which lowers CPU load mainly on virtual servers with multiple cores and low traffic
- SIP and RTP locking were optimized to use less CPU
- redesign mirroring feature which is now more robust to network issues (nonblocking mode and auto reconnecting)
- add support for fragmented gsm sms [VS-340]
- new option fbasenameheader allows to name file based on SIP custom header [VS-351]
- enhance live sniffer for filtering "From" and "To" [VS-242]
- properly parse urn in From/To headers [VG-788]
- fix save rtcp without rtp (savertp=no, savertcp=yes) [VS-367]
- fix .tar write race condition if more sniffers are saving to the same folder (which user should avoid)
- fix untar tar.gz with multiple gzip headers (used by GUI)
- force clesning spool directory when reindexfiles was send to the manager (it was waiting 5 minutes)
- fix Q.850 header is not recognized when there is space char between Q.850 and ;cause=
- do not paerse MESSAGE during SIP INVITE session [VS-355]
- fix crash in function save_packet for skinny
- fix issue with gethostbyname which fixes weired issues in cloud mode
- fix SIP SSL decoding for some cases [VS-375]
14.4.2 9.12.2015
================
- fix SIP tcp reassemble (100% cpu usage) - fixes >= 14.4
14.4.1 8.12.2015
================
- properly fix RTP audio decode in case merging legs are enabled
14.4 7.12.2015
==============
- redesign TCP SIP reassembler which can miss some TCP packets or duplicate content inside SIP
- fix issue with convertRawToWav on multiple instance and one spool
- fix listcalls manager command (proper char escaping). Fix situation where call can dissapear from listcalls
- fix RTP audio decode in case merging legs are enabled
- some RTP packets might be ignored on overloaded server (few packets before BYE)
- do DNS lookup at startup after fork so it will not block init script when server boots and is without the internet
14.3.5 1.12.2015
================
- fix filter_num table creation
- add load average to syslog output [VS-354]
- do not count opened files for write when doing reindex files and count opened files when calculating free space for cleaning spool (fixes 100% used space for some cases) [VG-760]
14.3.4 30.11.2015
=================
- fix rare crash when restarting sniffer
- fix possible crash when converting audio
14.3.3 26.11.2015
=================
- fix critical bug >= 14.3.1 calls were not closing / stroing to the database when .graph storing is enabled (by default)
14.3.2 26.11.2015
=================
- fix sniffer terminating when kill signal is sent
- Fixing problem when disabling options used - savertp,saveaudio,savegraph=no in configuration files in conf.d directory
14.3.1 24.11.2015
=================
- reload manager command reloads only capture rules and not the configuration
- new option save_sip_responses enables sip_response storing
- fix possible race condition when savegraph only is enabled
14.3 20.11.2015
===============
- fix issue with convertchar option when download files through tcp manager
- implement RTCP XR extension - store mos score to rtcp_xr new cdr columns
- resolve some TCP mirroring issues on very small traffic
14.2.6 19.11.2015
=================
- fix 14.2.5 exit when rtcp packet is received
14.2.5 19.11.2015
=================
- fix MySQL partition creation in some case
14.2.4 16.11.2015
=================
- fix performance issue 14.2.3 which might lead to increasing heap when there are many SIP messages (REGISTER/INVITE)
14.2.3 13.11.2015
=================
- fix race condition leading to crash for RTCP mux calls (>= 12.4)
- fix terminating sniffer when MEMORY IS FULL
14.2.2 13.11.2015
=================
- fix >= 14.1.4 not decoding some audio streams where comfort noise was at the and of it
14.2.1 12.11.2015
=================
- fix .graph invalid values race condition >= 14 versions)
14.2 12.11.2015
===============
- optimize thread mod 4 the last thread which was bottleneck on some older CPU for very high throughputs (>= 1500Mbit)
- enable tcmalloc again (lowers CPU when allocating memory)
14.1.5 12.11.2015
=================
- fix memory leak in threading_mode 2 (if dedup or defrag is enabled) (>= 14.X)
- fix potential crash in threading_mode 1 (default mode)
- add limitation to syslog reg_match and reg_replace to one per sec only to not spam syslog
14.1.4 12.11.2015
=================
- fix audio decode (concatenated caller/called and sync issue) in case there are multiple duplicated RTP streams going to same ports (proper fix for netsapiens)
14.1.3 11.11.2015
=================
- fix G729 out of sync for 30ms packetization (ptime)
14.1.2 9.11.2015
================
- fix bug in case large random RTP packet arrived to any call and savertp is enabled which might lead to race condition (double write) leading to crash (fixes all versions)
14.1.1 6.11.2015
================
- fix partition creation for some installations (fixes error Table has no partition for value XXXXX)
14.1 5.11.2015
==============
- add support for MySQL 5.7
- add new antifraud concurrent calls by tel. number (tracking by source ip is done) [VG-719]
- add support for udp protocol in sip send - add option sip_send_udp (yes / NO) [VS-335]
- fix bad timestamp in RTP packets in rare case
- on very low traffic (like testing one call) the sniffer can hold some packets in buffer not releasing it before another call is done
14.0.4 4.11.2015
================
- fix disable_dbupgradecheck option which still has to check for columns in tables
14.0.3 4.11.2015
================
- fix partition creation rtp_stat for older mysql
- add support for gsm message content-type [VG-658]
14.0.2 2.11.2015
================
- do not remove caller or called audio for some rare cases (problem started from 14.0)
14.0.1 2.11.2015
================
Optimizations and new feature
-----------------------------
- Optimize t2cpu processing which is now automatically threaded only on demand. This saves a lot of CPU cycles on most installations where inter-thread synchronization is not needed (especially on virtual machines)
- Fix t2cpu in multithread which called gettime too often causing higher CPU load even when there were no traffic
- Optimize processing RTP packets. The limit was around 2.5Gbit / 1.2Millinos RTP packets / second (CPU lowered from 100% to 40% on t0CPU thread). It probably allows to go over 5Gbit (2Millions RTP packets / second) on Xeon E5-2650 v2
- If audio conversion is enabled do not block storing CDR into database if server is not able to process it in realtime
- Use all available CPUs for audio conversion if saveaudio is enabled (or via capture rules) - new option audioqueue_threads_max (default 10 threads max)
- Redesign MOS scoring and sample it every 10 seconds. Final MOS score is calculated from average MOS score sampled every 10 seconds. Result is much more consistent MOS score. Sniffer is storing into the database also minimal 10 seconds samples MOS score alongside with average MOS
- .graph: chart now shows MOS score sampled every 10 seconds for jitterbuffer fixed 50ms, fixed 200ms, adaptive 500ms and graphically shows green/yeallow/green indication.
- .graph: chart now contains silence and consecutive loss duration so now is possible to see when RTP was not sent
- .graph: shows DTMF blue line mark which helps to understand gaps/jumps in chart
- Implement round trip time monitoring for SIP REGISTER from initial registration to 200 OK. The value is in register.rrd_avg and it represents last 10 values [VS-172]
- new rtp_stat SQL table stores MOS/loss/jitter every 10 seconds aggregated per RTP src ip address. It will be used in future GUI versions to watch realtime RTP trending
- listcalls manager command now exports realtime MOS/jitter/delay metrics
- use bigint for cdr.id to overcome 32bit unsigned limit (which is around 4billions CDR only).
Buf fixes
---------
- fix false low MOS score and false packet loss for some DTMF RTP streams
- fix not processing RTP in case INVITE is received after BYE (which happens if call merge is enabled)
- fix destination SIP port if call is traversing through proxy [VS-299]
- fix Makefile which always linked local libpcap instead of /usr/local/lib/libpcap
- properly fix audio decoding for some more cases when there are more RTP streams going to the same IP:port (netsapiens)
- fix iLBC packetization and false MOS score
- do not start new RTP stream for the same SSRC stream if dst ip changes but source ip/port is the same which fixes some false MOS score / graph in some NAT scenarios
- fix flooding syslog if pcap_next_ex detect error on the interface (like interface is down)
- fix some mirroring receiver problems
- fix reindexfiles / cleaning loops for some configuration cases
- fix RTP file creation if RTP are completely turned off in GUI->capture rules (empty RTP files) [VG-718]
- fix g723 missing audio if stream starts with dtmf or rtp event of any kind. fix sync issues for g723 if packetization > 30ms
- fix some cloud mode issues with storing to cloud database
12.5.2 6.10.2015
================
- do not report packet loss and low MOS score for case where RTP stream changes SSRC back and forth which happens on some rtp proxies or asterisk when call is redirecting
12.5.1 6.10.2015
================
- fix mirroring mode when the receiver can sometimes refuse connection from remote sniffer (broken since >= 12.1)
12.5 5.10.2015
==============
- fix low MOS score for AMR NB codec when sending VAD frames
- add AMR NB audio decode support
- save 1GB RAM for each 5000 concurrent calls with 1.5% compress ratio tradeoff
- Added option to disable mysql tables check and upgrade after service start (disable_dbupgradecheck = yes)
12.4.5 1.10.2015
================
- fix memory leak when adaptive jitterbuffer simulator is enabled (which is by default) - all versions >= 12.4
12.4.4 1.10.2015
=================
- fix audio decode (duplicated sound) for case when the same RTP destination port is used by SIP UA for both legs (workaround for netsapiens)
12.4.3 30.09.2015
=================
- fix packet loss conter if loss is > 200 packets in a row (fixes versions >= 12.0)
12.4.2 30.09.2015
=================
- fix rare crash introduced in >= 12.3 when RTCP mux appears in calls
12.4.1 24.09.2015
=================
- fix 12.4 crashes
12.4 24.09.2015
===============
- do not allocate memory for each packet when processing RTP and use fixed allocated memory. It saves 1 CPU core for 1Gbit traffic
- use semaphores for thread synchronization which fixes throughput for very high traffic (>= 1Gbit)
- fix issues with creatting partitions when there is different sniffer versions
- fix rctp mux which can lead to crash (>= 12.3)
- fix false low MOS score if packet with mark bit has the same seq number as previous packet.
- fix adaptive jitterbuffer which did not count packet loss at all (all versions). Fixed jitterbuffers are not affected.
- new option vlan_siprtpsame - filter RTP packets by VLAN tag from first SIP packet. This solves situation when sniffing with one sniffer on multiple VLAN (tagged) with the same IP for different PBXs but same IP addresses. Without this configuration RTP packets are mixed togather.
12.3.3 18.09.2015
=================
- fix storing NULL instead of 0 when Silence detection enabled and silence were not detected (and silencedetect activated).
- Added new option silencethreshold for adjustable detection sensitivity
- fix one more case of pcap unpack from tar.gz (very rare case)
12.3.2 17.09.2015
=================
- fix unpackicg pcap from tar.gz in some case (Data not yet written to disk error in GUI)
12.3.1 16.09.2015
=================
- fix RTCP race condition introduced in version 12.3 leading to crash
- fix rare crash when using http tcp reassemble (not used for SIP)
12.3 04.09.2015
===============
- add support for RTCP muxing (rfc5761) which fixing short graphs in case RTCP is muxed with RTP ports
- fix support for cisco skinny >= 17 version
12.2 03.09.2015
===============
- fix SIP TCP reassembler which in rare case combine two unreleated SIP packets pieces (all versions)
- add support for ieee 8021ad ethernet header (known as QinQ and is an amendment to IEEE standard IEEE 802.1Q-1998) - voipmonitor ignored such packets completely [VS-303]
- optimize RTP graph file handling
- fix crash if async write is not enabled (it is rare if this is disabled)
12.1.4 28.08.2015
=================
- fix cisco skinny V21 header version and all other header versions (calls were skipped)
12.1.3 28.08.2015
=================
- fix memory detection and small heap on 32bit version
- fix CPU% metrics in syslog on 32bit version (all versions)
12.1.2 27.08.2015
=================
- fix autocleaning feature for files in AUDIO - wav/ogg were not cleaning properly and disk space was leaking (all versions)
12.1.1 26.08.2015
=================
- immediately close calls which ends with 301 or 302 SIP response and do not wait 5 minutes which prevents to use all memory (high calls in syslog)
- do not abort sniffer if saveaudio = yes (or wav/ogg files are enabled in capture rules) and there is no space to create such files (all versions)
- fix custom headers in case there are two headers with the same name but different case sensitive letters
12.1 25.08.2015
===============
- store detected RTP ptime (packetization) into the database (a_rtp_ptime, b_rtp_ptime)
- allow to specify ogg audio format in capture rules and allow to select savertp header in capture rules
- do not use T1 thread and inter thread compression (t1CPU) which now allows to utilize full heap instead of only low inter-thread ringbuffer in case T2CPU is blocked due to CPU spikes.
- remove alter for obsolete table sensor_conf
- having lzo library is now mandatory
- disable manager and receiver if reading from file (-r)
12.0 20.08.2015
===============
- make LZO compression default for rtp storing (8x faster)
- reduce locking in t2CPU threads by 1000x which allows now to sniff over 1.1M packets (2 Gbit traffic)
- do not report packet loss if there is sequence and timestamp change without mark bit
- fix MySQL issue 'Deadlock found when trying to get lock; try restarting transaction' by rearranging query order
- disable storing cdr_sipresp (every SIP response in database) which was too much for database to handle (reduces SQLq growing)
11.11.5 19.08.2015
==================
- fix broken active calls in 11.11.4 (use select on descriptor)
- fix q850 reason string logic
11.11.4 18.08.2015
==================
- fix support for multiple vlan tag in packets [VG-672]
- fix issue with long manager command for getfile_in_tar (fixes retrieving long RTP files from remote sniffers)
- fix receiver mode terminating
- add cdr_rtpsrcport configuration option
- fix random crash when q850 reason is enabled (which is when mysql columns were added)
11.11.3 14.08.2015
==================
- reenable tcmalloc allocation library if present (speedups sniffer)
11.11.2 14.08.2015
==================
- fix cloud sniffer DNS possible crash on timeout in curl library
11.11.1 13.08.2015
==================
- fix capture rules in case savertp = header and capture rule is set to save full RTP (it was still saving only rtp headers)