Connectivity

If the clinics are to switch to an electronic system, these systems would become “mission critical”, meaning that without access to the application their ability to provide service to their patients would be greatly impaired.

One of the major issues that the architecture group faces is how to ensure that the clinic sites will be guaranteed access to the Internet. There have been some problems with the connectivity, particularly at the PB site, and the Baker site (which relies upon the schools connection). The Downtown site uses a wireless network range extender which is not an ideal way of connecting two floors with each other.

Connection Testing

In order to evaluate the quality of a connection we will want to monitor the uptime of the connection between the centralized server and the client site. This can be achieved by using a tool called Nagios (http://www.nagios.org) to monitor uptime.

A “host” entry will be created for each clinic location. If the clinic has a dynamic IP address, it must be set up with an DNS update service such as No-IP (http://www.no-ip.org). Otherwise we will determine the IP of the clinic’s host and set it to be periodically pinged to see if it is online.

A site with a connectivity problem would be defined as something less than 99% uptime. Once these sites are identified we can go about attempting to solve the problem.

Connection Optimization

In order to improve connectivity, the source of the connection problems would need to be identified. Problems are split between the following categories. A third category “Internet Backbone Problems” are very rare and are not discussed here.

Wireless Networking Problems

First the Access points should be checked to see that they are mounted in a high up on a wall and that the antennas are oriented vertically. This will make for maximum signal strength.

Signal strength problems occur from being too far from the wireless access point. In order to get wireless access to two different floors, instead of using a wireless “range extender” , an electrician will need to run cat-5 cable through the floor to connect two wireless access points together.

Cheap wireless access points (AP) designed for home uses are notorious for spontaneously failing. If a clinic is using a cheap or old AP, or the wireless connection becomes flakey despite having a strong signal, the access point should be immediately replaced.

Internet Service Provider Problems

Many ISP’s have periodic outages which come from problems with their routers or cables getting dug up. These problems often last several hours. The main solution to this would be to have a multi-homed connection and a router set up that can switch the traffic to another network if its primary network goes down. An example model of one of these is the Netgear FVX538NA which can be purchased for about $375.

On Site Application Servers

Rather than investing in advanced networking hardware and connections in order to ensure connectivity, another solution exists. The guaranteed solution to the connectivity problem is to have an application server placed at each clinic location. These servers would be able to perform synchronizations to centralized server. If somehow the outside connectivity is lost, the users would still be able to access this local server and work on the application.

What makes this solution less than incredibly difficult to implement is the fact that the clinics operate independently of each other. Meaning that while one clinic is up and running, the others are inactive. So the data will not have to be truly replicated between the sites.

Instead the clinic app-server will automatically connect to the central app-server and download the latest version of the database prior to the night it is scheduled to operate. Then after the clinic is finished it will send back the changed data to the central server.

Even if the server used a dial-up modem connection to synchronize the data, the application would still run extremely fast since the server would be on-site there would be zero latency waiting for packets to make their way through the network.