<<

EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019

Opus and Session Initiation Protocol Security in Voice over IP (VOIP)

Siddarth Kaul, and Anuj Jain

 Abstract—The purpose of the paper is to clearly elaborate III. MONO AND STEREO CODING FOR how Opus can be used as Voice over IP or Unified Opus supports both Mono and stereo coding within a Communication as known Opus is an which is royalty free and most versatile format of Audio Codec the single stream the reference encoder tries to make the optimal Opus codec is used for Interactive Voice and Multimedia decision on number of audio channel based on application, Opus codec with WEBRTC (Web Real Time versus quality trade off as it always desirable to encode Communication) is a framework based on the Chrome Web input stream for enough quality the stereo decoder outputs Browser the codec behavior is usually effectively utilized under identical left and right channel upon decoding a stereo bit testing conditions for understanding the MOS assessment in stream [2]. comparison to the Opus Codec.The Opus codec is generally a low codec used for real time interactive communication the Opus codec replaces both and for new A. Packet Loss Resilience applications. Interframe correlation and the AMR-WB loss of opus Index Terms—Codec, CELT, Session Border Controller codec is around 30% the opus format is a combination of (SBC), Session Initiation Protocol (SIP), Unified full bandwidth CELT codec and the speech-oriented Communication, Cloud Communication. format both heavily modified: CELT is based on MDCT using CELP techniques the CELT is also a lossless recovery codec. Opus is one of the Voice Codec selected as I. INTRODUCTION mandatory to implement in Webrtc as a codec Opus can Opus combines the speech oriented linear predictive support narrowband and up to stereo full band while using coding SILK algorithm with CELT algorithm for maximum low bitrates with high resiliency [3]. efficiency in interactive communication, the Opus codec B. Testing OPUS in WebRTC framework also has a Hybrid mode which uses SILK and CERT for wideband and full band audio Bandwidths in the Hybrid mode the frequency between the two cores is normally 8 KHZ. The SILK layer codes the low frequency up to 8 KHZ. Opus supports seamless switching between all its different operating modes. The Opus Codec is an inherent component of WebRTC capable browser the Opus codec supports the constant variable bit rate encoding from 6 kbit/s to 510 kbit/s for frame sizes from 2.5 ms to 60 ms the Opus codec can stream up to 255 audio channels. The Opus codec can handle wide range of audio application including VOIP, VideoConferencing etc. It can scale from low bit rate narrow band to high quality stereo music [1].

II. AUDIO BANDWIDTH AND BIT RATES The opus codec supports input and output of various audio bandwidths as defined in RFC 6716 the table below Fig. 1. Depicts the internal structure of Chrome browser for RTC shows the bit rates of Opus codec. communication.

TABLE I: BIT RATES OPUS CODEC The RTC communication functions are as under: - Bit Rate Range (Kb/s) Configuration 1. Audio and Capturing 8-12 Narrowband Speech 2. Session Establishment and P2P communication 16-20 Wideband Speech 28-40 Full band Speech 3. Transport Function 48-64 Full Band Mono Music 4. Video and Voice engine codec session 64-128 Full Band Stereo Music generation capability. The for Business also uses Opus Codec for audio on top of Opus codec in ORTC the Opus codec has

Published on December 5, 2019 native support in skype for business media stack for all Authors are with Bhagawant University, India.

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 27 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019 operations5. Fig.2 depicts the codec flow in Opus which involves an HTTPS connection of opus with skype or Skype for business audio and video service, the SFB uses the media relay service over HTTPS for negotiation the Opus codec is also used in VVX Business Media Phones. Many session border controller manufacturers also are now supporting the Opus Codec.

Fig. 3c. Cisco Call manger sequence for service parameter configuration.

Fig. 2. Opus codec in Skype

Opus Codec supports the Cisco Unified Communication Manager (CUCM) on version 11 there are also various CISCO devices support OPUS these are CISCO phones 7811/7822/7841/7861. The service parameters for Opus Fig. 3d. Cisco Call manger sequence for enabling Opus Volume Protcol. Codec need to be enabled on Cisco Unified Administration Page (CUCM) under system and service parameters [7]. IV. OPUS CODEC FOR ASTERISK The Opus Codec for Asterisk exposes a few configuration options that allow adjustments to be made on the encoder the following option is defined for custom types within configuration file. The option includes error correction.

[Opus Playback rate] Type=opus Max_playback_rate=8000; Limit the bandwidth on the encoder to narrow band Fec=no; Do not include in-band forward error correction data The option of a constant Bit Rate [Myopus, Playback rate] Fig .3a. Cisco Call manger sequence for enabling Opus codec Type=opus

Bitrate=16000; Maximum encoded bit rate used

V. OPUS CODEC IN Linear Predictive Coding involves the autoagressive modelling method the processing of Opus Codec is formed as a response to mostly IIR (Infinite Impulse Response Filters) the autocorrelation analysis. Figure 5 indicates the operation is divided so that the crossover sample rate is 16 KHZ in other words the input Fig .3b. Cisco Call manger sequence for enabling MOH. signal is divided into two coding paths in which it is decimated to 16KHZ sample rate for SILK and CELT frequency. The coding is divided in two branches represents the encoder is delayed in the D block to match the different times, Opus uses additional internal framing to allow the packing of multiple frames into single packet the MUX and DEMUX input output represents the Bit by Bit encoding of audio data stream in the OPUS Protocol.

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 28 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019 a(1) (1) = r(0) r(1) r(2) …………… r(p–1) (1) transport protocol provides necessary parameters for time sensitive exchange of the protocol assigns a per a(2) r(2) = r(1) r(0) r(3) …………… r(p–2) (2) application playout buffer where packets are sorted for movingmedia stream ofeither a VOLTE or 4G or broadband a(3) r(3) = r(2) r(1) r(0) …………… r(p–3) (3) ready network. Opus seems to be more sensitive to jitter but performs better than Speex at extreme conditions, Opus has a(p) r(p) = r(p–1) r(p–2) r(p–3) …… r(n–1) (4) better voice quality at low jitter under heavier network

perturbation [12].

Fig. 5. Block diagram of Opus Codec

VI. SESSION BORDER CONTROLLER (SBC) OPUSTRANSCODING SUPPORT Opus audio codec as developed by IETF (Internet Engineering Task Force) which supports constant and variable bit rate support from 6 Kbit/sec to 510 Kbit/sec and Fig. 6. Correlation between Jitter and Subjective Quality of Experience sampling rate from 8 KHZ to 48 KHZ it incorporates The audio Jitter quality of experience in the above Figure technology from Skype speech-oriented SILK codec and 6 depicts that Opus codec used in 4G communication CELT codec. This feature adds the OPUS codec as well as networks will conceptualize design of VOLTE based support for translating and and pooled network the comes out of 3GPP transcoding of different platforms in SBC [10]. working group the opus codec maximum packet width does A. Oracle Session Border Controller (SBC) Transcoding not fit into MTU without fragmenting into segmented Support packets into separate support of Opus Codec the maximum Opus is an Audio Codec developed by IETF that supports number of Bytes encoded in a bit stream is large as compare constant and variable bit rate encoding from 6 Kbit/sec to to capacity of MTU transfer the total signal to noise ratio 510 Kbit/sec and sampling rate of 8 KHZ to 48 KHZ. It needs to be precise and to the point so that sufficient bit incorporates technology from both skype speech-oriented stream can be transferred with message and audio packets to SILK codec and XIPH.The feature adds OPUS Codec as and fro [13]. well for support and Trans rating, transcoding11. SDP A. Testing of Opus Codec parameters rate specifies the sampling frequency. This Opus codec can be tested in two ways of functionality and parameter is mapped to the RTP clock rate in “a=rtpmap” performance the codec is implemented in a manner to be the range is limited to and must be 48000 Hz. tested through RAW PCM that can be fed to API B. Sonus Session Border Controller (SBC) Transcoding functions and the performance was measured to evaluate Support how efficient the codec algorithms are and how much Opus audio codec is supported by various Sonus SBC in processors capacity is used for this purpose the different accordance with RFC 6716. Opus functionality is supported performance measurement parameters can be used as with an encoder and decoder format for various bandwidth constant value attributes for the purpose [13]. and call support for transcoding calls and for both support to B. Functional Testing of Opus Codec 8, 12, 16 and 24 KHz. Opus. Opus codec functionality testing can be done with the TABLE II: TRANSCODING USING THE PARAMETERS help of module testing thus the codec module can be tested Parameter Behavior individually with a given input and output to a reference the Maxaveragebitrate Mini (offer/answer of peer, route PSP,20Kbit/s) module has an existing file as well as an input In band FEC is used, if useinbandfec is set in the Useinbandfec route PSPand if the peer requests it and output to a reference data binary files which can be used DTX is used, if usedx is set in the route PSP and if to input and output the data files for reference outputs. Used Tx the peer requests,it Figure 7 shows a test bench procedure the test can be run in Constant bit rate if either peer requests cbr=1 OR Usedbr two phases in the first phase the input files are opened and route is configurated for cbr=1 loaded into memory after which they are encoded or decoded for the test cases the output files can be compared VII. OPUS VOICE QUALITY ESTIMATION to reference files so that the output is identical otherwise the test fail. The PCM input format is a Opus codec which can Interactive real time audio streaming is very sensitive to be controlled parameter of the encoder the sample rate can timing parameters it’s very common to use specific be transmitted from test environment to configuration file protocols for media transmission. UDP based real time

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 29 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019 the test data normally used in the experiment should contain VIII. OPUS the opus packets the packet normally should flow in a The OGG OPUS is a new format of lossy audio codec transmitted test framework format only [14]. format developed by Xiph foundation it was designed for a

single stream of audio format with low latency the essential features include the metadata and the fast-accurate seeking, corruption detection after errors with the ability to multiplex Opus with minimal buffering. OGG bit streams are made up of streams of series of pages containing data from one or more packets each stream contains a checksum and capture packet for beginning and end of logical streams of different packets. The packet organization is organized into the first OGG Bit stream packets which uniquely identifies a stream as Opus codec on the first stream of the page. The second

Fig.7.Module testing Block Diagram packet in the logical OGG bit stream containing header for supplied metadata the duration of the audio in the Meta data The module tests were run with invalid input data these page should contain the opus packet in different streams. valid test results were used with internal data pointers the The Granule position of the audio data has a total of 48 tests can be used for error handling situations the internal KHZ of audio sample rate the Opus encoder help minimize data framework as per the testing block diagram clearly the jitter and other latency ratio [17]. indicates the valid use of error correction codes the error situation can be handled to avoid uncontrolled behavior [15]. IX. BIG DATA ANALYTICS OPUS CODEC . Data Test Generation The big data analytics for OPUS Codec can be used with Because there were no exact test vectors provided with various types of tools involving the analytical generation of the codec, they needed to be generated for essential aspect to different types of reports these reports can be generated cover all possible parameters the test can contain a PCM through the various tools involving report analyzer in a raw files with sampling rate of 48 KHZ furthermore it can segmented function involving CDR reports, Latency and encode speech samples of different varied types. In addition network analysis records. Big Data analysis is used in Opus to continuous tests the decoder required data with silence or Codec is used in determent of the below depicted diagram background noise periods. As a result, some of the test files which indicates the various parameters including Loss, Jitter are connected with several second gap test generation files. and MOS values which smoothers the effect of packet loss The input data for the mobile networks is likely to contain to the acceptable result of 30 % loss. Opus codec involves the background noises the test cases were generated for performance better than 2%. audio to be tested should be encoded with reference application at different sample rates of 8 to 16 KHZ11. The bit rate selection should be of higher limits recommended in Opus for all audio bandwidths was set to a maximum of 510 Kbit/sec. D. Performance Testing The performance testing can be computed with the execution of speed for encoder and decoder the number of clock cycle elapsed for coding the real time processor analytics, the test application can be run natively on any platform and the application can be measured to the highest class of real time method used in affinity to the core set for DSP implementation15. The actual execution speed integrated to whole surrounding is the approximate time which can be used in DSP implementation the performance Fig. 8. Opus Depiction by Using Big Data Analysis can be compared with the two platforms on which Opus can Opus Codec parameters running on communication be tested this will help in DSP implementation of Opus the services with Webrtc and other services. Opus codec hence number of cycles does not indicate the execution speed is very different and relatively simple in terms of the totally because it is independent of the performance different varying amount of traffic types and data types. measured by computing how many cycles are consumed Opus codec in is also used in with new techniques within a certain set of parameters when processing data the for wideband and narrowband noise includes the maximum data is normally processed so that the different clock cycles and minimum playback time or rate at which the end point are consumed with a certain parameter set when processing allows opus for error correction at constant and variable one second of data for multiple times[16]. playback rate [18].

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 30 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019

[opus] and RTP (Remote Transport Protocol) packing is used on type=opus top of UDP as IETF has standardized as how the RTP Max_playback_rate=8000; Limit the bandwidth on the encoder to narrow band packet should be packed when the transmission of Opus in Fec=no; Do not include in-band forward error correction data. Bit stream, the time stamp increment of the RTP packet is normally set to the maximum possible limit the timestamp of the RTP packets has to be set to the maximum possible X. OPUS CODEC APPLICATION IN IBM CLOUD limit of around 48000 Hz per sample. Session Initiation Opus codec in the IBM Cloud is usually used involving Protocol Security threats with Opus Codec normally involve the audio data is normally used with the sampling frequency the client server model where the operations of the client of 16000 samples per second or equal to 16 Hz the and server involves the substitution transition of the packet Narrowband audio for real time application the service flow between the CS and SC channel [20]. support to both applications involve the ideal analysis with help of Big data for real time information about Bit Rate flow in the cloud in Kbps and Mbps for two sampling rates XII. THE CPN MODEL OF SESSION INITIATION PROTOCOL of variable speeds. Big data analytics is also used in the (SIP) compression and reduction of audio wavelength formats in The CPN model carriers out tasks through different lossless and lossy format of audio by as much as 10 times to transactions including Invite and Non-Invite Transactions in the sampled rate of compression the audio / Ogg and Audio our CPN model the top-level client substitution transaction /Webm formats are the compression types which relies on will include two second level substitution Client Invite and the codec to encode Opus or Vorbis. The audio/ format Client _ NonInvite and the top-level server substitution of compression can include uncompressed lossy or lossless transition will have second level of transaction for both the data through various speech to text format [18]. scenarios. In the model we use Client to Model the Invite to the server for the server Invite transactions the events Compression format types in IBM Cloud including sending and receiving , timeout and error Audio format and compression can be in three format Lossy, Lossless, None. reporting are modelled with transitions the REQUESTS and Content-type specification can be in required and optional format RESPONSES model the channel from client to server. The depending on the type of audio compression. CPN model for client request and responses is a substitution Required parameters can be None and Rate with Integer Optional parameters can be None with Channel type Big and of the top to bottom approach of voice and video approach. Little In the CPN model we use the client invite including sending and receiving messages through a substitution model the CPN model does combine the reachable state and XI. OPUS CODEC INTEGRATION WITH SESSION INITIATION occurrence sequences [21]. PROTOCOL (SIP) Opus integration to Session Initiation Protocol can be performed with API provided by the developers of IETF it provides all the functionality needed for coding with Opus the Opus codec involves the API divided by its functionality and different interface levels in Encoder and Decoder communication and codec translation as depicted in the below Fig 9 [19].

Fig. 10. Top Level CPN model with SIP

XIII. OPUS CODEC AUDIO TESTS WITH SIP (SESSION INITIATION PROTOCOL)

Fig. 9 SIP and Opus API Integration The tests done by Broadcom suggests the different configuration of CELT mode for Opus codec with MP3 and The API helps in Initialization, Processing and release of AAC_LC by using 10 diverse full band audio tracks with SIP data and codec translation which helps the processing of 44.1 KHz sampling used: voice information in I/O. The Opus framework helps in error handling and information flow in different situations. 2 Pure Speech Opus codec will be able to transmit the encoded bit steam 2 Vocal these frames are transmitted in encoded stream the packing 2 Solo Instruments can be performed within the codec with no external 1 Rock and Roll functionality needed the normally consist of lower 1 Pop level of bit stream of UDP and RTP packet flow reducing 1 Classical Orchestra the overall packet flow information of Opus packets. Opus 1 Jazz

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 31 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019

Fig.13. Opus and SIP Call Hijacking scenario

Opus and SIP (Session Initiation Protocol) normally do Fig 11 Opus Audio Test Results with SIP [21] dissociate in different environments and both the protocol are tested in situations involving either the different tests either by flow type, data transfer and communication types. XIV. SESSION INITIATION PROTOCOL (SIP) ARCHITECTURE The hijacking effects all scenarios in a condition where all WITH IMS the services involving development services, Operational IMS uses Session initiation protocol to control the services, Infrastructural and Application services are establishment of Voice and Multimedia sessions with SIP affected in a way that the message workflow and logging runs end to end as it originates and terminates end users’ services are normally affected the storage, Clustering and terminals in the IMS the applications are implemented on a Elasticity are also effected in a continuous code [24]. SIP server which may be augmented by logic on terminal equipment the SIP AS is a service execution platform on which one or more services are deployed it can be connected to control call function announcements [22].

Fig. 14. SIP and OPUS service chart

Figure 14 describes the 6-step approach to the services of SIP with OPUS involving work load optimization, embedded management of services, in purpose Fig 12. IMS architecture [22] programming model continuous agility involving rapid changes involve micro computation for health of these services. A. Information regarding Call High jack

Call High Jack is performed by establishing a SIP based VOIP call between 2 SIP softphone users and an intruder XV. TEAMS AND OPUS CODEC using packet sniffer tools like Wireshark in absence of The Opus codec is now days used in Microsoft teams. encryption. In the figure call high jacking is performed with The architecture of Microsoft teams involves legacy video, the help ofusing the intercepting tool media and intercepting the flow of media packets both ways by the hijacker H.264 video tele presence, cloud phone, team’s client associated with a team combined ecosystem with MNP24 between the User A and the SIP registrar and Proxy server the call direction flow is normally Hijacked by the intruder and SILK codec for teams’ conversation, teams messaging, calling and audio conferencing and video conferencing to be changed to allow stealing of Information packets and through SIP (Session initiation protocol and G711/G722 data associated with flow of these packets. The registration of SIP packets along with Opus media is nowadays a part of Codec support. The base of Microsoft teams involves Azure and share point services. The opus and SILK codec both asterisk and free source PBX and Skype also [23]. involve the transparency data flow through which the background services of each and every protocol is evaluated on real time bases. The continues data stream of packet flow data information is communicated with Azure and share point cloud services.

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 32 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019

Microsoft, Broadcom, , and . All of these normally used the opus repository with SIP. The format of different modes involving speech, hybrid and CELT when using SILK audio frequencies for higher band width of above 8KHZ. SILK also supports with opus and SIP the different frame sizes of SILK from 10, 20, 40, 60m/s. frame shorter then 10m/s use CELT mode a typical opus packet can have transparency switch between modes, frame sizes, band width, peer packet analysis and differential cost and channel counts. The sampling and band width rate for opus helps in encoding and decoding the output sample rate for

Fig.15a. Microsoft Teams Architecture with Opus and SIP narrow band, medium band, wide band, super wide band. Opus helped in standardization of different wide band and narrow band audio formats.25The development and standardization of opus with SIP helped in development and standardization of various communication standards like skype, polycom video conferencing and cisco tele presence technology. Representatives across the globe feels that a hybrid format always presents a new way of codec standardization in which submitted information either in the format of different communication mediums always helps in quality

Fig. 15b. Teams type layer comparision comparison and low latency performance of the new standard formulized for communication mediums across the The sample rate for the different comparision for SILK globe. The direct routing for Teams is supported with a SIP wide protocol are as narrow band, medium band, wide band, for PSTN (Public Switched Network) which super WB, full band with audio bit rates of 12-32 Kbps for enables you to virtually any PSTN trunk and Microsoft mono and 24-64 Kbps for stereo. Phone system and configuring the Interoperability between Microsoft team’s communication flow is classified as in PBX (Private Branch Exchange) and Microsoft Phone different sampling rates of 8 ,12 ,16,24 and 48 KHZ with system. A Hybrid Voice solution which involves the different audio bands like narrowband, medium band, scheduled conferencing which requires proper licensing wideband, super-wideband and full band. Mono and Stereo with online capabilities the direct routing supports the user’s encoder bit rates varies depending on their use with silk phone system the domain name registered is your tenant it is wide, Hybrid CELT. there are different encoding rates from possible for SIP address space in one tenant. Direct routing 12kbps to 64 kbps. supports a wildcard with SAN which needs to conform to The integration between service workload and application standard of HTTP over TLS. communication between the various flow levels for The connection routing can be used with FQDN are as: Microsoft teams to work involving share point, exchange, 1. Sip.pstnhub.microsoft.com - Global FQDN and skype in as a continuous work flow service. These all 2. Sip2.pstnhub.microsoft.com – Secondary FQDN services are broken down into different workloads involving 3. Sip3.pstnhub.microsoft.com – Tertiary FQDN various file share options, regulatory compliance and unified The FQDN are as above and normally are resolved using communication features [25]. All these services these IP addresses: independently of any technique work in continues momentum involving SIP as the primarily communication  52.114.148.0 flow protocol with RTP media and opus protocol used for  52.114.132.46 audio communication. The opus protocol continuously  52.114.75.24 works with different other protocols and standard. The  52.114.76.76 wideband integration of these protocols with SIP and opus protocol helps in better experimental results as depicted in  52.114.7.24 the above diagram26. Opus and Session Initiation Protocol  52.114.14.70 Security in Voice over IP (VOIP) clearly illustrates that the opus protocol is a loss-oriented audio coding format which The firewall ports and protocols are as to connect a clearly integrates with SIP standardized by ITF for low normal SIP trunk a possible proxy is used is 5061 you can latency better speech analysis complexity and bit rate ratio. use port number 5061 and a sip proxy for your sbc to port The opus clearly improves the music and audio performance 1024-656536 with the media range of different addresses thus reducing the gap to around 5m/s from .The SBC (Session Border Controller) connects to SIP proxy over 100m/s being an format the opus codec which requires the Public IP where sip signaling is to be clearly has no patents and is freely available under routed, Public DNS IP, Wildcard Support to DNS some of no license term which helps in easy integration of this codec the SBC use TLS certificate with Public IP address and format with rest of the media flow protocols. Opus has a NAT is not supported with Direct Routing and Public IP . high variety of usage by various organizations like address assigned to SBC[26]

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 33 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019

XVI. MICROSOFT TEAMS AND OPUS CODEC SIP MEDIA a*rtpmap 99 speex/32000 a*rtpmap 97 speex/8000 BYPASS INTERNALLY AND EXTERNALLY

The SIP media bypass in a direct routing scenario of All credit for the original Asterisk patch to meet echoand where server is in the cloud is that the media is local, andthe forked by for Asterisk 11.20 or higher support. media path is always optimal the media path is always supported by SBC providers with support to ICE light configuration at the SBC end and hear pinning with NAT is always supported for both directions. Media bypass externally is possible with SFB from outside the corporate network the client needs to be resolved with SBC on FQDN side the client can connect relay with SIP proxy. Media bypass in SIP with use of Proxy is considerably the most used phenomenon and nowadays is available with the server and the SBC it depends on the ways by which it will be configured for both the infrastructure usage methods to and fro [27].

XVII. RESULTS A. Microsoft Teams and Opus Codec SIP media Bypass [28] Example of a NS lookup of a SFB server involving Opus codec for Voice call joining through VNC remote desktop setup Go to Run>NSlookup>Enter Server IP

The results as described above is the extension of SIP with Opus it allows the use of G.722 under Audio Codecs the test results have been conducted with use of a SIP IP phone where the phone always send an unauthenticated SIP invite and gets declined the Phone responds with 100 Trying and 180 ringing and 200 ok with cause code 16 this clearly shows that SIP with Opus and asterisk is only working in a particular scenario.29Understand that the Cloud Relay in and of itself really does nothing other than ‘phone home’ and wait for instructions. When it is first brought online and configured on the local network it will then immediately attempt to connect to a handful of hardcoded Fully Qualified Domain Names (FQDNs) which point to several services running across multiple Azure datacenters. If these connections are successfully established, then the new relay will then sit indefinitely in a holding pen, waiting to be manually integrated into a specific cloud tenant. Once this

Fig. 16. SFB server involving Opus codec for Voice call joining through pairing step is completed by an administrator then the VNC remote correct relay will be permanently linked to that tenant and

begin pulling down any provisioned services which have B. Asterisk and Opus Codec SIP media Bypass Results already configured in the tenant. This includes the automatic download of any apps associated to the configuration, which V=0 are essentially docked into the Cloud Relay30. So in short, 0=3666106261 3666106261 IN IP4 192.168.1.45 this relay is something that is simply brought online the first Sip media C=IN IP4 12.168.1.45 time using the local console and then from that point B=A5/63 forward all management and configuration is performed T=0 through the appropriate cloud portal. Configuration changes A=x nat 1 N×Audio 4009 RTP/AVP 108.99.98.97.96 and even software updates to the individual apps are all a*rtpmap 108 opus/4800 automatic. Currently the Cloud Relay itself is not updated so a*rtpmap 98 speex/1600 when new versions of the server image are released it would

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 34 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019 require the deployment of a new image, or replacement of GroupsToAddContactsTo Group2, Group3 -AddToFavoritesGroupAdds the existing. But the majority of the various service contact2 and contact3 to Group2 and Group3 and Favorites Set-CsUserContactList -SipAddress [email protected] - offering’s features and functionality comes from the ContactsSipAddress [email protected] -GroupsToAddContactsTo individual apps which are automatically updated as stated. Group3 -RemoveFromAllGroupsFirst removes contact2 from all groups The cloud configuration simply uses the capabilities to then adds contact2 to Group3 Set-CsUserContactList -SipAddress [email protected] - locate the source mailbox the authentication configuration ContactsSipAddress [email protected] - mailbox creates credentials for each device to be well GroupsToRemoveContactsFrom Group3Removes contact2 from Group3 connected. The office 365 features involve the PowerShell cmdlets there are several commands which suffice the Presence Specify the presence to set for simple features of these services. Of the more recent the user. When setting the presence, it is invalid to set it to changes which improve upon and simplify the overall Unknown. -SipAddressSpecify the sip address of management experiences there are two primary concepts the user that you want to act on. The following formats are worth calling out. One is the creation of a central repository accepted: [email protected]:[email protected] for PowerShell resources and the other is the inclusion of ServerOptional. Specifies the FQDN of the Skype Modern Authentication. The newer PowerShell Gallery is for Business pool where the user is homed. Useful if now used to store and distribute various modules making automatic server discovery is not properly configured in installation and updates of future module version much your environment. One of the following DNS records needs easier. Also, by leveraging Modern Authentication each of to be configured in your internal environment to enable these modules utilize the same approach for providing automatic server SRV. administrative credentials for access31. 3) User Presence Parameters 1) PowerShell Commands for SIP with opus implementation in Teams: Get-CsUserPresence [-SipAddress] [-Server ] [] Set-CsUserTeamMembers -SipAddress [email protected] -AddMembers Get-CsOnlinePSTNGateway V1.0 tmp_v5fiulno.wxt [email protected], sip: [email protected] - New-CsOnlinePSTNGateway V1.0 tmp_v5fiulno.wxt RemoveAllMembersFirst -DelayRingTime 10 Remove-CsOnlinePSTNGateway V1.0 tmp_v5iulno.wxt Set-CsOnlinePSTNGateway V1.0 tmp_v5fiulno.wxt First removes all contacts from the user’s team then adds Identity: sbc.contoso.com contact1 and contact2 as team members. Sets the ring delay Fqdn: sbc.contoso.com SipSignallingPort: 5067 to 10 so that incoming calls wait 10 seconds before ringing FailoverTimeSeconds: 10 the team. ForwardCallHistory: False Use this to request and install the registration ForwardPai: False SendSipOptions: True key for SEFAUtil Server. Below are the 2 ways to run this MaxConcurrentSessions: 100 command:Set-SefautilServerRegistration -Name “contact Enabled: True name” -EmailAddress “[email protected]” - PhoneNumber “phone number” -ImplementationType 2) Command for Paired Gateway to appear with Partner or PartnerImplement or SelfImplementThe above Options output method requires Internet access to the following URL https://lcregistration.landiscomputer.comSet- Get-CsOnlinePSTNGateway -Identity sbc.contoso.com SefautilServerRegistration -RegistrationKey “paste key Identity: sbc.contoso.com here”Contact [email protected] to request a key to Fqdn: sbc.contoso.com SipSignallingPort: 5067 use with the above method.To generate an auth key, the sip Codec Priority: SILKWB, SILKNB, PCMU, PCMA address of the trusted application endpoint is needed. To get Excluded Codecs: that, run the following command: Get-Cs Trusted FailoverTimeSeconds: 10 ForwardCallHistory : False Application Endpoint -Application Id sefautil server [31]. ForwardPai: False SendSipOptions : True C. Genesys opus SIP Interaction MaxConcurrentSessions : 100 If a Genesys call media server is used for interaction Enabled: True New-CsOnlineVoiceRoute -Identity “Redmond 1” - NumberPattern based recording the call media and recording uses “^\+1(425|206) administration to the recording of Opus the (\d {7})$” -OnlinePstnGatewayList sbc1.contoso.biz, sbc2.contoso.biz - interaction recorder object is used for communication of Priority 1 -OnlinePstnUsages “US and Canada” G711 and G729 audio speech codec the media server Identity: Redmond 1 Priority: 1 completes the call recording operation and the system Description: retrieves the call recording over HTTP and deletes the call NumberPattern: ^\+1(425|206) (\d{7})$ recording from its location the workgroup is used for OnlinePstnUsages: {US and Canada} OnlinePstnGatewayList: {sbc1.contoso.biz, sbc2.contoso. iz} recording the different sets of calls as SIP protocol is pivotal Name: Redmond 1 in interaction of these recordings the Opus protocol helps in SuppressCallerId: analysis of different audio wave ranges for these calls when AlternateCallerId: Set-CsUserContactList -Sip Address [email protected] - the calls are recorded the Opus on a Genesys server enables ContactsSipAddress [email protected] -GroupsToAddContactsTo the use of mono and dual channel recordings of high quality “Group 1” Adds contact1 to Group 1 which utilizes the RTP and SRTP use of CIC servers which Set-CsUserContactList -SipAddress [email protected] - ContactsSipAddress [email protected], [email protected] - enables redundancy to one or more high interaction servers. All file transfer including recordings use HTTP server

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 35 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019 instead of file sharing the supervisory monitoring of calls flow rates of 8000,10000 or 20000 KHz transfer data speech works on automatic speech recognition of these remote coding rates we also observed that signaling and media flow media file types. Vorbis is also used with genesys SIP mediums are not impacted in even SIP trunks used in the interaction protocol where sending and receiving the ASR communication mediums. WEBRTC service itself used with media is possible with call flow protocol and media control various communication mediums do not see much change in mechanism for either T.38 and T.30 protocol for voice terms of protocol medium flow data types and rates of data communication [32]. medium change. The Big data analytics only help improve the analysis of the collection of data in and from various D. Packet Loss of Audio SIP system in Gensys service providers thus providing a low cost high availability Packet Degradation – If a packet cannot read the solution for better analysis of consequent solutions information on RTP media the node discards the packet the involving jitter, latency and packet loss information with degradation results in interference across the transmission high impact real time monitoring of these services in the media and problems of transmission. Long delays in single event of resolution and quick information collection despite packets – Individual packets because long delays as in a complex workflow and architectural reliability. Smart SBC VOIP system the discarded packets are replaced in an audio and Protocol simulators and Protocol brokers actively help stream passed their system because their position in the analyzing the tactics and media working reliability of these audio stream is replaced with surrounding packets. tools with ease of data collection and analysis, this E. Windows event Logs difference is setup probes to monitor your network in real- The windows event logs requests resources for interaction time from SIP interfaces which decouples issues from media to necessary create a call log used for a call with vendor specific equipment and log files. The “box-level” event details and event ID the probation is a condition where approach to monitoring better isolates issues regardless of the interaction media analyses the event of logs.Interaction vendors on your network or which SIP trunk provider you Media Server can enter the probation state for the following use. This also help define and resolve network equipment reasons: You configured Interaction Media Server to apply interoperability issues allowing you to focus on the service Quality of Service (QoS) to Real-time Transport Protocol assurance. The idea of interoperability between those (RTP) communications, but you did not install the Pure platforms and the Lync/Skype for Business platforms, both Connect QoS driver. The RtpPortRange property value on on-premises and online and teams continues to be a popular Interaction Media Server is too small and all available ports topic. While much has changed over time in terms of are currently in use. Use the Interaction Media Server workflows and feature capabilities the overall need is no less Config-Properties page to configure the property. Another important than before. In the event of the specific analysis application is using User Datagram Protocol (UDP) ports and workflow there is not much need of change of all and no other UDP ports are available for Interaction Media medium of different workflow scenarios These are Server to service the interaction. If Interaction Media Server individual on-premises server installations, some of which uses one network interface card (NIC) for Notifier traffic started as hardware appliances and were later also released and one NIC for RTP traffic, Interaction Media Server as virtual servers, while others have been virtual servers cannot service the interaction if the RTP NIC fails. since their inception. At this point all the components Interaction Media Server has no available media engines to covered are available as software, where the MCU support the interaction. Interaction Media Server does not component could alternatively be deployed as hardware if respond within a 10-second period to a resource creation desired in the event of clear instructions with the need by request from CIC [32]. some or more specific needs as deployed.

REFERENCES XVIII. CONCLUSION [1] Doxygen Opusfile 0.7 https://opus-codec.org/docs/opusfile_api-0.7 The various results show whether the Opus Protocol used [2] Flavio E Goncalves Building system with Open SIPS pp 78- with SIP in any of the technologies either Asterisk, Free 83 PBX or Skype or Microsoft Teams and Gensys there is not [3] Salvatore Loreto and Simon Pietro Romano Real time communicationwith Webrtc chapter 5. much change in terms of understanding the security working [4] Michael Maruschke, Oliver Jokisch, Martin Meszaros and Viktor needs of the either and the result also show communication IaroshenkoReview of the Opus Codec in a WebRTC Scenario for itself within these technologies may change in terms of the Audio and Speech Communication Conference Paper · September 2015 audio bandwidth rates but the protocol working is not much [5] Jenkins Refmanhttps://mf4.xiph.org/jenkins/view/opus/job/opus effected we have observed through the test results that either [6] https://www.microsoft.com/en-us/microsoft the call hijacking is one of the scenarios where the SIP 365/blog/2015/09/18/enabling-seamless-communication-experiences- for-the-web-with-skype-skype-for-business-and-microsoft-edge/ media flow is effected in either of the scenario and the RTP [7] https://www.cisco.com/c/en/us/support/docs/unified- media packets do not have much effect in any scenario communications/unified-communications-manager- involving the media port opening and closing it is also clear callmanager/introduction. that the various commands do not affect the call hijack [8] https://www.cisco.com/c/en/us/support/docs/unified- communications/unified-communications-manager-callmanager. scenario despite any change in media packet flow type we [9] Doxygen Opusfile1.2 https://opus-codec.org/docs/opus_api-1.2. also observed that irrespective of the various communication [10] J.Skoglund and M. GraczykIETF https://tools.ietf.org/pdf/rfc8486, flow mediums the Opus with SIP protocol have same October 2018. [11] J.Spittika,K.Voctone,JM.ValinandMozillahttps://tools.ietf.org/pdf/rfc response of media streams irrespective of different media 7587, June 2015.

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 36 EJERS, European Journal of Engineering Research and Science Vol. 4, No. 12, December 2019

[12] R. Bonica, C. Pignataro and J. Touch [29] http://highsecurity.blogspot.com/2016/11/opus-vp8-codec-with- https://tools.ietf.org/pdf/rfc7588, July 2015 asterisk-1120-or.html. [13] https://www.academia.edu/28092185/audio_and_speech_quality_surv [30] http://www.opusteam.co.uk/sip-trunks/callworkflowinformation. ey_of_the_opus_codec_in_web_real-time_communication. [31] http://downloads.landiscomputer.com/sefautilserver/SEFAUtil- [14] H. Tscofenig, J. Arkko, D. Thaler and D. McPherson Server-Manual-en.pdf. https://tools.ietf.org/pdf/rfc8486, March 2015. [32] https://help.genesys.com/cic/mergedProjects/wh_tr/desktop/pdfs/medi [15] JM. Valin, k.Vos and a_server_tr.pdf. T.Terriberryhttps://tools.ietf.org/pdf/rfc6716,September 2012. [16] Jean- Siddarth Kaul born in Delhi 11/1/1988, received his MarcValin,GregoryMaxwell,TimothyB.Terriberry,andKoenVoshttps: Diploma in Electronics and Communication //jmvalin.ca/papers/aes135_opus_celt,2013 October 17-20. Engineering from Board of [17] Koen Vos, Karstenvandborg,Sorensen, Soren Skak Jensen and Jean Technical Education, Delhi, India, and Bachelor of Marc Valin https://jmvalin.ca/papers/aes135_opus_silk. 2013 Engineering degree in Electronics and Communication October 17-20. Engineering from GGSIP University, Delhi India in [18] Eric Steven Raymond The art of Programming Bell 2011, PGDCA from Sam Higginbottom Institute of SystemTechnical Journal, v57 #6 part 2 (July-Aug. 1978) pp. 69-70. Agriculture, Technology and Sciences, Allahabad, India [19] Sabu M thampi , Gregorio Martinez, and Carlos Becker West MSC (IT) from Lovely Professional University, Punjab, India & MTech phallSecurity in Computing and communication 5th International degree in Software Engineering from Singhania University, Rajasthan, Symposium pp 121-123 India in 2013. He is presently pursuing Ph.D. in Computer Science [20] Ilya GrigorikHigh performance Browser Networking pp 66-70 Engineering from Bhagwat University, Ajmer, Rajasthan, India. He is a [21] Ted Wallingford Switching to VOIP O Reilly pp 55-58. certified CCNA (Voice) professional and he has worked with TCIL [22] Ian E Richardson VideoCodec Design Developing Image ( Consultants India Limited) on overseas project for andVideCompression pp 66-69. two years as VSAT Engineer. He has also worked on Panterra Networks as [23] Amruta Ambre and Narendra ShekokarDetection and prevention Engineer Level 3 in Software Engineering Division. He had worked as mechanism on call hijacking in voip system International Journal of Voice Engineer with Polycom, India before Joining Atkins (SNC Computer Applications 90(6) · February 2014 LAVALIN Company). Presently he is working as Consultant Unified [24] Dan RisticLearning Webrtc pp 66-69. Communication in Accenture India. He is a unified communication SME in [25] JeanMarcValin1,GregoryMaxwell1,TimothyB.Terriberry1,andKoenV Voice and Video domain. os https://arxiv.org/pdf/1602.04845, 2013 October17-20,pp3-5. [26] https://o365pp.blob.core.windows.net/media/Training%20Videos/Inte Dr Anuj Jain is presently working as Associate Professor in information lligent%20Communications/Microsoft%20Teams%20%20Now%20A technology in Lovely Professional University Punjab India. He is doctorate %20Complete%20Meeting%20And%20Calling%20Solution. in computer science prior to his joining in Lovely Professional university [27] http://blog.schertz.name/author/jeff-schertz/page/1-2 on Microsoft Punjab India he worked with Bhagwant university Ajmer Rajasthan as teams assistant professor in Computer Science Engineering Department. [28] Asterisk.forum.com/testresultscallestablishmentscenario.

DOI: http://dx.doi.org/10.24018/ejers.2019.4.12.1625 37