Book Chapter

WAN optimization basics

What makes WAN optimization count?

Seamless connectivity across distant and widely dispersed offices is essential for any global organization, especially those enterprises seeking to attain a truly global reach. Optimal WAN connectivity is essential when it comes to delivering services and information to anyone, anywhere, at any time. Disaster recovery, workflow automation (run books and IT process automation), server consolidation and voice services all require a well-designed and -managed WAN infrastructure to become truly effective, and to ensure an acceptable return on the investments involved in acquiring such capabilities.

Indeed WAN optimization is particularly important for many reasons; here, we clarify some of the most important ones that lead enterprises and organizations into investing in such technology. In terms of cost, the expense of WAN links is a primary drag upon their initial adoption and consequently, on exploiting WAN connectivity to the fullest extent possible. WAN services may be delivered across many different types of media that include: leased-line, local loop, frame relay, ATM, DSL, Internet, and so forth. Assembling various WAN links and their communications to be consistent and coherent enterprise-wide remains a challenge, even when WAN optimization helps to make the most of what those links can carry.

Bandwidth allocation can also be crucial, when it comes to providing and supporting end-users in a cost-efficient, effective manner over the long-term. The same urgency applies to uninterrupted service and unimpeded communications anywhere they're needed, because they can make or break how business is conducted and carried out. Finally, support for widely-distributed users, services, and databases are integral to the maintenance, management, and monitoring in any network with broad geographic span, even if it's not truly global. That's why we discuss these various topics in more detail in the sections that follow.

Hierarchy as a primitive form of WAN optimization

Organizations with complex network topologies spanning regional and territorial locations often utilize hub-and-spoke architectures for Wide Area Network (WAN) deployment. Each endpoint location represents a cog or spoke that links into a much larger hub represented by a headquarters data center. These larger networks might also include numerous smaller regional or territorial hubs -- each one implementing its own territorial hub-and-spoke network -- with any number and variety of high-bandwidth interconnections between them. This type of arrangement is depicted in Figure 3.1, but it's important to recognize that traffic volumes and priorities in this kind of scheme are built right into the architecture -- namely, that higher volumes (and importance) attaches to traffic from the regional hubs to the central hub, and lower volumes (and importance) attaches to outbound traffic on the outermost links from regional hubs to branch offices.

Legacy WAN optimization schemes come from this hierarchical environment, where traffic optimization maps readily into link optimization. Such systems arrange large devices (or large collections of devices) at hub locations, with smaller devices at each spoke endpoint. Each spoke communicates with the hub through an explicitly-configured site-to-site tunnel through which compressed packets reach their final destinations. Endpoints, aka branch offices, seldom need to communicate with each other so they learn to live with the delays inherent in jumping from endpoint to regional hub to central hub and back out again. The hierarchical arrangement of network sites typical of a hub-and-spoke WAN topology appears in Figure 3.1.

hub and spoke WAN topology
Figure 3.1: Blue links indicate "fat WAN pipes" between HQ and regional hubs, red links "skinny WAN pipes" between regional hubs and branch offices. Not shown: remote access links into all hubs!

But as the underpinnings of WAN technology have continued to evolve, a hierarchical, tunnel-based approach can be seen as an impairment rather than an improvement. Given the flexibility, scalability and performance available from more modern cloud architectures (which don't need implicit or explicit hierarchy to function), the hub and spoke model can pose problems when changes in relationships, traffic patterns, or even work assignments overload WAN links at the periphery. Organizations and enterprises have found themselves scrapping hub-and-spoke architectures in favor of MPLS clouds, because these allow them faster access between arbitrary pairs of endpoints, and because additional carrying capacity can be laid on (or taken off) as changing traffic patterns and needs dictate.

Grabbing text as a primitive form of data acquisition

Screen scraping is a term that refers to software techniques that open program windows, establish some kind of interactive session, initiate behavior, then read the results as they appear in the program's window. Thus, the notion of scraping the screen refers to grabbing the output text that appears thereupon to use as input to other programs and processes. Indeed, screen scraping represents a "lowest common denominator" form of software integration, and serves as the tool of last resort when grabbing data from any information source for which no other means of access or delivery is available. Where applications do offer any kind of more formal data access capabilities, typically through some kind of Application Programming Interface (API), there is no need for this type of practice. But where no direct APIs exist, screen scraping still prevails to this day. As painful as this process may sound, it's both a clever and brutal form of data acquisition. It is also pretty a pretty venerable practice in that it's been used for a long time, especially for legacy or older mainframe applications for which APIs aren't available and unlikely to be developed.

In essence, screen scraping is a method for manually processing and parsing character data to elicit its meaning and to supply record- or object-oriented data elements to other applications or services. Thus, screen scraping programs create links between modern platforms and legacy applications originally designed to work with inaccessible, inoperable or obsolete I/O devices and user interfaces. This extends their accessibility, and enhances the usability of associated logic and data, so that legacy programs and platforms can continue to serve some useful purpose.

Simplified computer interfaces that amount to text-based dumb terminals are often difficult to integrate with, or to interoperate with modern equipment. Elegant solutions require what may be non-existent luxuries: APIs, original documentation and source code, and legacy application programmers with experience on the target platform. Often the only practical solution is a screen scraper that acts as go-between for legacy and modern systems. A screen scraper may emulate command sequences or keystrokes to navigate the legacy user interface, process resulting display output, extract desired data, then pass it along to the modern system in whatever form and format it expects.

The concept of screen scraping is still utilized to harvest information in useful ways. Web scraping, a modern-age variant, generically describes any of several methods to extract content from Web sites to reformat or transform content into another context. Example scraper applications may scour retail sites -- all coded in various languages and differently formatted -- in search of books, cookware, and electronics categorized and indexed for online bargain hunters. Figure 3.2 shows a screen scraper at work, harvesting text from a Web browser and depositing same in a database.

screen scraper at work
Figure 3.2: A screen scraper operates a browser window just so it can harvest text on display there.

Screen scraping applications make excellent candidates for WAN optimization because they can fall prey to inefficiencies that WAN optimization tools address quite readily. First, they produce regular streams of character data that inevitably benefit from compression but also may benefit from dictionary and string caching capabilities. Second, screen scraping applications may utilize inefficient protocols, involve frequent communications, and be subject to "chatty" behavior. Properly repackaged through proxy agents, WAN optimization tools can help with all these shortcomings. But most important, the sheer doggedness of screen scraping as a technique for grabbing data when no other means is available shows us that clever programming techniques can also be applied when seeking to optimize WAN traffic, even if only at the level of brute force via compression or protocol streamlining.


  WAN optimization basics
  WAN optimization techniques
  State-of-the-art acceleration techniques
  WAN technologies summarized

About the author:
Ed Tittel is a 24-year computing industry veteran who has worked as a software developer, systems engineer, trainer, and manager. He has also contributed to more than 100 computer trade books, including several college textbooks, and writes regularly for TechTarget, Tom's Hardware, and Perhaps best known for creating the Exam Cram series of IT certification prep books in 1997, Ed also received the Best Networking Professional Career Achievement Award from the NPA in 2004, and has been a finalist in the "Favorite Study Guide Author" category in the Annual Reader's Choice Awards every year since those awards were launched in 2002.

This was first published in December 2008

There are Comments. Add yours.

TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: