Client Workstation Requirements
To use the Sharpen platform as it is intended, we recommend the following specifications to provide a positive user experience while running with your other tools. Though the application may function while operating below these standards, we will focus our support on systems compliant with our recommendations.
Component | Specification |
---|---|
OS | Windows 7 or greater OSX Yosemite 10.10 or greater |
|
|
CPU | Intel or AMD CPU released after 2010 |
Memory | 6GB RAM or greater |
Network | 10/100 NIC (wired) or greater 802.11n (wireless) or later |
Display | 1680x1050 resolution or greater |
IP Phones | Polycom
Yealink
|
Headsets |
|
Browser |
|
Network Requirements
Ports and Protocols
It is important to make sure the following ports/protocols are free to communicate with our environment.
Due to the dynamic nature of Sharpen infrastructure, whitelisting is not recommended. The following items may be changed without advance notice.
Universal Domains
Access to these domains need to be open regardless of the isolation zone (IZ0,IZ1) in which your account is built.
Domain | Protocol/Port | Purpose |
---|---|---|
*.s3.amazonaws.com | TCP: 443 | Long-term audio and image file storage |
stun.l.google.com | UDP: 19302 | WebRTC STUN server |
stun1.l.google.com | UDP: 19302 | WebRTC STUN server |
stun2.l.google.com | UDP: 19302 | WebRTC STUN server |
stun3.l.google.com | UDP: 19302 | WebRTC STUN server |
stun4.l.google.com | UDP: 19302 | WebRTC STUN server |
*.yealink.com | TCP: 443 | Yealink auto-provisioning |
*.ckeditor.com | TCP: 443 | Visual editor/UI library |
*.loggly.com | TCP: 443 | Logging |
*.pendo.io | TCP: 443 | Analytics and logging |
*.ingest.io | TCP: 443 | Client logging |
*.gstatic.com | TCP: 443 | Font library |
*.googleapis.com | TCP: 443 | Font library |
*.fortawesome.com | TCP: 443 | Font library |
*.fontawesome.com | TCP: 443 | Font library |
Isolation Zone Domains
Access to these domains should be open with respect to which isolation zone your account is built in.
Isolation Zone 0 | Your users login to app.sharpencx.com
Domain | Protocol/Port | Purpose |
---|---|---|
*.sharpencx.com | TCP: 443,8089,8090 | App |
*.sharpen.cx | TCP: 443 | Supplemental app domain |
*.cx.shpn.co | TCP: 443 | CX and VCX |
*.sipvbx.com | UDP: 5060 | SIP registration and signaling |
*.fathomvoice.com | TCP: 80,443,9002 | Provisioning, API, webRTC registration |
Isolation Zone 1 | Your users login to app.iz1.sharpen.cx
Domain | Protocol/Port | Purpose |
---|---|---|
*.iz1.sharpen.cx | TCP: 80,443,8089,8090,9002 | Provisioning, app, webRTC registration |
*.cx-iz1.shpn.co | TCP: 443 | CX and VCX |
If whitelisting by IP is necessary, the following ranges/addresses apply. *IPs subject to change.
Prioritization
Use Quality of Service to maintain prioritization
Many devices support Quality of Service (QoS) tags to maintain traffic priority across the network. It is beneficial to tag your voice traffic with the appropriate tags, so it can be prioritized anywhere in the network in the event of a saturated link. This will help to prevent any audio issues caused by voice and data competing for the same bandwidth over your internet connection.
Use traffic shaping to offer voice traffic the necessary bandwidth
Due to potential contention of competing data on your network, it is important to ensure that your voice traffic has enough bandwidth to operate. As such, traffic shaping rules can be implemented to allow voice traffic to use additional bandwidth, or even limit other types of traffic to prioritize voice traffic.
QoS Settings
Protocol | Port Range | Priority |
---|---|---|
UDP | 10000-20000 | DSCP 46 - EF |
UDP | 5060-5081 | DSCP 46 - EF |
Protocols
SIP (Session Initiation Protocol)
5060 UDP (Desk phone) and 9002 TCP (Webrtc) Traffic - this is the call setup/signaling information about the call, such as phone 1 is calling phone 2 on server XYZ.
10000-20000 UDP Traffic - this is the Real-time Transfer Protocol (RTP) stream where actual packets of voice data are transmitted. This is the audio of the call.
While at rest, the phones only send 5060 UDP data as a ‘keep alive’ method for Network Address Translation (NAT), during this period there is no RTP traffic. Once a phone call is made and audio established, RTP traffic is sent from the phone to our servers.
WebRTC
WebRTC is an HTML5 specification which can be used to facilitate real-time media communications (video and audio) between browsers and other audio endpoints. The Sharpen Q phone built into the Sharpen Q application leverages WebRTC, allowing for seamless integration to the platform within the browser. *See “Ports and Protocols” above to make sure you have the proper ports open.
Network performance
Uninterrupted, consistent network performance is required for a good experience with the Sharpen platform. Due to the inherent nature of Voice interactions to be real-time, we need consistency in the underlying network. Otherwise, users may experience dropped calls, choppy call quality, latency, or an overall slow experience.
Assessment
Chrome by default blocks port 5060, which is what Sharpen’s speedtest uses. Flags need to be set when Chrome is launched. Instructions for Windows, Mac, and Linux can be found here.
Run this basic speed test to obtain your download, upload, latency, and jitter results.
<150ms latency to *.sipvbx.com (example: us1-webrtc-11.sipvbx.com for east coast US, or us2-webrtc-02.sipvbx.com for west coast US)
Average latency variation < 30ms
High variation represents interruption to your connection. This may be a result of competing network traffic, or general hardware/network instability
While high latency on its own simply means delay, latency variation typically comes coupled with packet loss, which will mean dropped calls and/or choppy audio
>10Mb/s internet connection
While voice itself is a fairly light operation, we recommend having enough bandwidth to handle all your operations. This value is more of a guideline, rather than a requirement. Most important is making sure your collection of tools, including Sharpen, have sufficient bandwidth.
The best way to determine bandwidth needs is to sample your tool set usage, and extrapolate from there.
Sharpen bandwidth utilization can vary widely based on how it is used some base-line examples of usage are as follows
Sharpen Q page load for single agent logged into 4 queues
~350 KB transferred
~7 MB page resources
1 minute outbound call from Sharpen Q
~125 KB transferred
~1 MB page resources
Reporting/Insights (10 reports) page load
~150 KB transferred
~ 8 MB page resources
< 1% packet loss
Voice requires basically no packet loss. If any packets are dropped, it will interrupt the audio stream. For this reason, packet loss directly influences the quality of a call. Enough packet loss will cause dropped calls
< 30ms jitter
Jitter is the variation in delay of packets. Having high jitter will also cause poor call quality
Common interruptions
SIP ALG - Present in many network device configurations as SIP ALG, SIP, VoIP, settings which enable SIP ALG are contrary to a successful network setup with multiple VoIP devices. Intermittent disconnection, audio drops, and the inability to register are common symptoms when SIP ALG is enabled. This must be shut off for optimal performance.
Sharpen strongly discourages the use of “combination” network equipment such as all-in-one modem/router devices. ISPs typically provide or rent these out to customers. They are known for having issues with VOIP traffic as well as having limited access to critical settings. If you are using a combination device and experiencing issues, the first step is to acquire a stand-alone modem and router.
If you can not acquire a stand-alone modem and router, we recommend reaching out to your ISP to see if they can place your combination device in “bridge” mode, then purchasing and connecting a 3rd party router to handle the local networking.
Ensure UDP timeouts are greater than 240 seconds (phones register every 240 sec). If you’re seeing a sawtooth pattern in your latency graphs, or your phones are sometimes unable to be reached, the UDP timeout is probably incorrect.
Disable Stateful Packet Inspection (SPI) as it often flags VOIP traffic incorrectly.
Disable any VOIP specific functions that come pre-setup on your network equipment.
Sharpen traffic over a VPN is discouraged due to likely latency and quality of service concerns.
Sharpen traffic over an MPLS is discouraged due to potential inefficient route paths to voice resources.