Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 47 Next »

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

 

  • 64-bit when using desktop app

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
  • VVX Series

  • IP Series

  • Soundpoint Series

  • Txx Series

  • Wxx Series

Headsets

  • Any USB or 3.5mm headset properly recognized by the client workstation and web browser

  • Wireless headsets are discouraged due to increased probability of signal interference which can resulted in degraded call quality

  • Sharpen does not officially certify or support any particular headset due to the wide variety of suitable devices

Browser

  • Google Chrome (Past 3 revisions)

  • Microsoft Edge Chromium (Past 3 revisions)

The use of VDI (Virtual Desktop Infrastructure) is not supported. Depending on the solution, VDIs can be configured to work with VoIP solutions such as Sharpen, but Sharpen does not actively test with these solutions to validate a good agent experience. If VDIs are in use, Sharpen will not be responsible for the quality of service and will troubleshoot only up to the edge of our network (webRTC registration servers).

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. These include some supporting services and libraries which allow Sharpen to run as designed.

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
UDP: 10000-20000

SIP registration and signaling
RTP media

*.fathomvoice.com 

TCP: 80,443,9002
UDP: 10000-20000
UDP: 1024-65535

Provisioning, API, webRTC registration
RTP media (WebRTC server port range)
RTP media (WebRTC client port range)

  • Isolation Zone 1 | Your users login to app.iz1.sharpen.cx

Domain

Protocol/Port

Purpose

*.iz1.sharpen.cx 

TCP: 80,443,8089,8090,9002
UDP: 5060
UDP: 10000-20000
UDP: 1024-65535

Provisioning, app, webRTC registration
SIP registration and signaling
RTP media (WebRTC server port range)
RTP media (WebRTC client port range)

*.cx-iz1.shpn.co 

TCP: 443

CX and VCX

If whitelisting by IP is necessary, the following ranges/addresses apply. *IPs subject to change.

 IZ0

Host

Region

IP

Purpose

us1-webrtc-01.fathomvoice.com

Virginia

54.173.127.71

WebRTC

us1-webrtc-02.fathomvoice.com

Virginia

54.173.127.61

WebRTC

us1-webrtc-03.fathomvoice.com

Virginia

54.173.127.25

WebRTC

us1-webrtc-04.fathomvoice.com

Virginia

54.173.127.136

WebRTC

us1-webrtc-05.fathomvoice.com

Virginia

54.173.127.104

WebRTC

us1-webrtc-06.fathomvoice.com

Virginia

54.173.127.155

WebRTC

us1-webrtc-11.fathomvoice.com

Virginia

54.173.127.156

WebRTC

us1-webrtc-12.fathomvoice.com

Virginia

54.173.127.157

WebRTC

us1-webrtc-13.fathomvoice.com

Virginia

54.173.127.158

WebRTC

us1-webrtc-14.fathomvoice.com

Virginia

54.173.127.162

WebRTC

us1-webrtc-15.fathomvoice.com

Virginia

54.173.127.139

WebRTC

us1-webrtc-16.fathomvoice.com

Virginia

54.173.127.65

WebRTC

us1-webrtc-17.fathomvoice.com

Virginia

54.173.127.70

WebRTC

us1-webrtc-18.fathomvoice.com

Virginia

54.173.127.72

WebRTC

us1-webrtc-19.fathomvoice.com

Virginia

54.173.127.74

WebRTC

us1-webrtc-20.fathomvoice.com

Virginia

54.173.127.75.

WebRTC

us2-webrtc-01.fathomvoice.com

Oregon

54.148.191.13

WebRTC

us2.webrtc-02.fathomvoice.com

Oregon

54.148.191.14

WebRTC

us2-webrtc-03.fathomvoice.com

Oregon

54.148.191.15

WebRTC

us2-webrtc-04.fathomvoice.com

Oregon

54.148.191.16

WebRTC

ap2-webrtc-01.fathomvoice.com

Sydney

54.79.78.17

WebRTC

ap2-webrtc-02.fathomvoice.com

Sydney

13.236.115.208

WebRTC

ap4-webrtc-01.fathomvoice.com

Mumbai

35.154.209.148

WebRTC

ap4-webrtc-02.fathomvoice.com

Mumbai

35.154.184.39

WebRTC

eu1-webrtc-01.fathomvoice.com

Ireland

52.17.219.38

WebRTC

eu1-webrtc-02.fathomvoice.com

Ireland

52.17.29.105

WebRTC

eu2-webrtc-01.fathomvoice.com

Frankfurt

35.156.15.138

WebRTC

eu2-webrtc-02.fathomvoice.com

Frankfurt

35.158.26.231

WebRTC

sa1-webrtc-01.fathomvoice.com

São Paulo

18.229.19.155

WebRTC

sa1-webrtc-02.fathomvoice.com

São Paulo

52.67.80.43

WebRTC

us1.vbx20.sipbvx.com

Virginia

54.173.127.177

Desk Phone Registrar

us1.vbx21.sipbvx.com

Virginia

54.173.127.147

Desk Phone Registrar

us1.vbx22.sipbvx.com

Virginia

54.165.169.174

Desk Phone Registrar

us1.vbx23.sipbvx.com

Virginia

54.173.127.178

Desk Phone Registrar

us1.vbx24.sipbvx.com

Virginia

54.173.127.133

Desk Phone Registrar

us1.vbx25.sipbvx.com

Virginia

54.173.127.131

Desk Phone Registrar

us1.vbx26.sipbvx.com

Virginia

54.173.127.119

Desk Phone Registrar

us1.vbx27.sipbvx.com

Virginia

54.173.127.171

Desk Phone Registrar

us1.vbx28.sipbvx.com

Virginia

54.173.127.138

Desk Phone Registrar

us1.vbx29.sipbvx.com

Virginia

54.173.127.153

Desk Phone Registrar

us1.vbx31.sipbvx.com

Virginia

54.173.127.112

Desk Phone Registrar

us1.vbx32.sipbvx.com

Virginia

54.173.127.150

Desk Phone Registrar

us1.vbx33.sipbvx.com

Virginia

54.173.127.179

Desk Phone Registrar

us1-vbx34.sipbvx.com

Virginia

54.173.127.73

Desk Phone Registrar

us1-vbx41.sipbvx.com

Virginia

54.173.127.44

Desk Phone Registrar

us1-vbx42.sipbvx.com

Virginia

54.173.127.63

Desk Phone Registrar

us1-vbx60.sipbvx.com

Virginia

54.173.127.173

Desk Phone Registrar

us2.vbx30.sipbvx.com

Oregon

54.148.191.1

Desk Phone Registrar

us2.vbx32.sipbvx.com

Oregon

54.148.191.11

Desk Phone Registrar

ap1.vbx20.sipbvx.com

Singapore

54.169.184.3

Desk Phone Registrar

ap2-vbx33.sipbvx.com

Sydney

13.54.48.191

Desk Phone Registrar

ap2-vbx61.sipbvx.com

Sydney

3.105.88.13

Desk Phone Registrar

ap4.vbx20.sipbvx.com

Mumbai

3.6.246.156

Desk Phone Registrar

eu1.vbx20.sipbvx.com

Ireland

54.76.35.133

Desk Phone Registrar

 IZ1

Host

Region

IP

Purpose

us1-webrtc-01.iz1.sharpen.cx

Virginia

18.205.175.46

WebRTC

us1-webrtc-02.iz1.sharpen.cx

Virginia

3.91.123.104

WebRTC

us1-webrtc-03.iz1.sharpen.cx

Virginia

3.228.252.37

WebRTC

us1-vbx-01.iz1.sharpen.cx

Virginia

35.174.79.112

Desk Phone Registrar

us1-vbx-02.iz1.sharpen.cx

Virginia

18.215.195.239

Desk Phone Registrar

us1-vbx-03.iz1.sharpen.cx

Virginia

23.23.74.83

Desk Phone Registrar

 Yealink Provisioning

Yealink Provisioning

52.71.103.102, 35.156.148.166, 106.15.89.161, 47.75.58.202, 47.89.187.0

Prioritization

Use Quality of Service to maintain prioritization
Configuring Quality of Service (QoS) can help 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 saturation. 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
DSCP 56 - CS7 (for webRTC)

UDP

5060-5081

DSCP 46 - EF

Voice 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

    • For a positive experience, voice requires minimal packet loss. If packets are dropped, it will interrupt the audio stream. You may experience disruptive delay or choppy audio. 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 is enabled

    • Perhaps contrary to its name, SIP ALG is not compatible with most enterprise VoIP solutions, such as Sharpen. Depending on the manufacturer, network device configurations will show up as “SIP ALG”, “SIP”, “VoIP”, or something similar. Intermittent disconnection, dropped calls, one-way audio, and the inability to register are common symptoms when SIP ALG is enabled.

    • Depending on your device manufacturer or ISP, it may be difficult to get a straight answer on confirming this setting is off. Commonly, ISPs will have this setting enabled, because it supports their own options for VoIP solutions. It is not uncommon to have to work through a couple layers of support or technical team members to validate the proper setting is turned off. 

  • Stateful Packet Inspection (SPI) is enabled

    • Similar to SIP ALG, SPI is a setting which has its benefits, but can conflict with the proper operation of voice traffic. Stateful Packet Inspection is a dynamic packet filtering technology for firewalls which inspects the state of packets to determine whether packets should be blocked or allowed. WebRTC traffic is stateless, and thus you may experience issues with the inability to establish a connection or 2 way audio if it is enabled. This happens because SPI may not recognize webRTC and thus treat it as unapproved UDP traffic.

  • NAT misconfigurations

    • NAT (Network Address Translation) exists to provide security and preserve local IPv4 addresses. NATs associate or bind private IP:port addresses to public IP:port addresses. Hosts outside the local network will only see and know of the bound outside IP:Port.  Hosts directing traffic to this bound IP:port will first arrive at the NAT before being translated and sent to the actual destination IP:Port.

    • With VoIP and webRTC, NAT can cause challenges if not configured optimally. Though the STUN protocol exists to overcome this challenge through its participation with ICE candidate negotiation. Some NAT configurations can still get in the way. For instance, utilizing a Sonicwall firewall without the use of its “Consistent NAT” feature, will result in 1-way audio. Consistent NAT uses an MD5 hashing method to consistently assign the same mapped public IP address and UDP Port pair to each internal private IP address and port pair.

  • UDP timeout is set less than 240 seconds

    • Sharpen’s expected SIP registration interval is 4 minutes (240 seconds). If your network is set to “timeout” UDP connections at less than that, it will disconnect an active registration. Depending on when this happens, you’ll see the following symptoms.

      • Dropped calls

      • Inability to be reached on the phone which has lost its connection. 

      • You’ll be able to dial outbound without issue, since registration is established on an attempted outbound call, if it does not already exist. 

      • You’re probably seeing a sawtooth pattern in your latency graphs.

  • ISP provided “combination” network equipment

    • Especially if you’re working from home on your residential internet connection, be weary of the Internet Service Provider (ISP) controlled settings which may exist on these managed devices. “Combination” devices are typically those which integrate modem, router, and wifi into one device. While in principle, the integration of these functions problematic, they can sometimes come with configuration hurdles which are difficult to overcome since you, as the borrower of the device, do not have administration access to the devices. It is not uncommon for settings like SIP ALG to be enabled but invisible to you as the user. These situations require that you work with your ISP’s support team to change a setting. 

    • As a result, Sharpen discourages the use of combination network equipment. Instead we recommend purchasing a stand alone modem which is compatible with your ISP, and connecting a router of choice to it. This allows you full control of any potentially conflicting setting. Most self-managed devices have these problematic settings disabled by default.

    • 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. 

  • VPN

    • VPNs have many valid use cases, especially for work from home users. However, VPNs are not always configured to be optimal for voice traffic. Adding the additional virtual layer to the network, in most situations, will cause a recognizable degradation in network performance. Voice requires low latency, with minimal packet loss. As a result, if the VPN introduces too much interruption, your quality of service will be impacted. If VPN is necessary, it is recommended to configure it so Sharpen traffic can be omitted through the us of split tunneling.

  • MPLS

    • Similar to VPN, an MPLS has its place in the enterprise network configuration realm. However, the use of an MPLS with Sharpen is strongly discouraged. Most commonly, customers will have had MPLS configurations remaining from previous on-premise or direct to data center VoIP solutions. This makes sense because you have narrowly identified VoIP endpoints which you can create a specific path to through the MPLS. Your users then connect to your corporate network and then their traffic tunnels through that optimal connection. However, this architecture actually causes problems for a more universally available cloud-based solution such as Sharpen. 

    • Consider this example. You’re a user based in San Jose working for an organization headquartered in Chicago. You have an MPLS configured to connect from Chicago HQ to your datacenter in Indianapolis, where your ISP has its terminating hardware. All internet traffic from Chicago traverses the MPLS to get to its final destination. I, the San Jose user, connect to the VPN so I can access my corporate network assets. I login to Sharpen. My connection, which could go directly, over the internet, to our west coast Oregon location, instead is connecting over 1 virtual layer, then a physical MPLS to Indianapolis to get to the internet. At this point, the quickest available path to Sharpen becomes our east coast Virginia location. You know how a user connecting across the United States for a voice connection which most optimally works on a low latency, low packet loss environment.

    • The best solution is a solid internet connection with standalone network equipment. This allows for the lowest latency path to our resources, and the best experience.

  • No labels