For many organizations, the e-commerce submodule facilitates interaction between the company and the outside world, and it is often the only way customers see the company’s products and services. In this regard, companies must be able to provide applications and Web services quickly, securely, and with high availability to potential customers. Downtime in the e-commerce submodule can be catastrophic and there are many examples of companies that have failed by not providing security or high availability.
For some companies, downtime in the e-commerce submodule can cost millions of dollars, maybe on an hourly basis. Network designers should think about high availability techniques that can be used in the e-commerce design and they should take five main components into consideration:
- Redundancy
- Technology
- People
- Processes
- Tools
Redundancy
Redundancy involves having hot spares and cold spares to eliminate any single points of failure. Redundancy should be implemented in several different areas of the e-commerce solution (both hardware and software), so if one component goes down, the service is not interrupted for at least an acceptable period of time. This is accomplished using the following techniques:
- Dual devices (routers, switches, firewalls, and servers)
- Dual links between the network devices
- Multiple ISP links (multi-homing)
- Diverse paths
- Diverse geography (the e-commerce submodule components are not placed in a single location)
- Redundant data centers and facilities (warm sites, cold sites, hot sites, and mobile sites)
- Cost-benefit analysis to minimize costs and maximize functionality
Technology
Some of the technologies that help improve high availability in the e-commerce submodule include:
- Stateful Switchover (SSO) – especially in firewall systems
- Non-Stop Forwarding (NSF)
- Server Load Balancing (SLB)
- Enhanced Object Tracking (EOT)
- IP SLA
- Performance Routing (PfR)/Optimized Edge Routing (OER)
- Fast routing convergence
NSF is a Layer 3 process that works together with SSO to minimize the amount of time the network is unavailable to users, following a switchover from a primary device to a secondary device. The main goal is to continue forwarding IP packets after the route processor switchover. NSF is supported by a wide variety of dynamic routing protocols (e.g., EIGRP, OSPF, IS-IS, and BGP). If a router is running one of these protocols, it can detect the internal switchover and take the proper steps to continue forwarding network traffic using and leveraging the FIB, while recovering route information from its peer devices.
Cisco NSF with SSO is a mechanism of supervisor redundancy that is part of the IOS software and it provides an extremely fast supervisor switchover at Layers 2, 3, and 4. SSO allows the standby route processor to take control of the device once a hardware or software fault occurs on the active route processor. SSO synchronizes the following parameters:
- Startup configurations
- Startup variables
- Running configuration
- Layer 2 protocol states for ports and trunks
- Layer 2 and Layer 3 tables (e.g., FIB, adjacency tables, and MAC tables)
- Access Control Lists
- QoS tables
Monitoring content load balancers will achieve scalability and high availability by distributing the requests from the clients for services across active servers. The load balancer can provide a virtual IP address for all of its servers, and then clients will resolve that address to DNS requests. The load balancer will intelligently pass the traffic to a pool of real servers, according to configured balancing rules. SLB can rewrite source and destination MAC/IP addresses depending on the mode in which it is running.
EOT is an IOS function that uses a standalone process to track the status of objects and notify other processes when it detects a problem. This is useful for verifying end-to-end path availability and for noticing situations where the network might be transmitting traffic along a path that is actually black holing packets or experiencing traffic congestion.
PfR is a technology that detects undesirable situations along a path. It provides automatic outbound route optimization and load distribution for multiple connections by choosing the optimal exit point. PfR/OER facilitates path selection based on policies that can be measured for parameters such as loss, jitter, delay, load, and reachability.
People
The most overlooked resource for providing high availability in e-commerce submodules is well-trained engineers, who are critical in such environments. People resources should have the following skills:
- Reliable
- Communicative
- Consistent
- Skilled in creating documentation
- Skilled in troubleshooting
An organization’s security policies may involve a rotation of duties so that more than one person is skilled in providing high availability solutions and managing the e-commerce submodule. This should also include good program and project management because it is very important to understand all of the hardware and software components of the e-commerce submodule and to manage different tasks efficiently. People are an important high availability resource and it is vital that the team responsible for e-commerce functionality is always aligned with services and business needs.
Processes
Processes are also very important for managing the e-commerce submodule and they should meet the PPDIOO lifecycle, the ITIL, or other framework goals. Some of the most important considerations in this component include the following:
- Creating solid, repeatable and reusable processes
- Documenting change procedures
- Implementing a good change management strategy that includes testing and rollback procedures
- Documenting all of the plans for failover and the procedures for testing in labs
- Documenting the implementation of the network
- Making constant improvements and iterations to ensure that the best strategies are in place
- Establishing good labs to test processes whenever possible and ensuring that the lab environment is a prototype of the production network
- Implementing failover mechanisms that are documented and tested
- Ensuring that every update is tested and validated between deployments
- Ensuring that any changes have as little impact on end-users as possible
- Ensuring that everybody in the organization is aware of the way changes can affect their work
- Ensuring ongoing control of operations and maintenance of systems, including auditing, monitoring, reporting, tracking, and management
- Ensuring that all of the changes are correlated with a business impact analysis and possibly a risk analysis
Tools
Some of the most important actions and tools that should be used in an e-commerce environment include:
- Performance monitoring
- Performance reporting
- Reporting on trends (observing anomalies from baselines)
- Observing traffic drops, packet loss, latency, and jitter
- Investigating case studies before launching an e-commerce solution and perhaps implementing a prototype in a lab environment
- Documentation tools, including high-level and low-level network diagrams. Documentation should be kept up to date to reflect the most recent e-commerce submodule architecture and it should include reasons for choosing a particular network design and implementation steps. All of the devices, configuration, addressing information, and virtualization aspects should be documented.