Topics


Blogs


Forums


Samples


Media


Labs


Resources

 




DevCentral > Weblogs > Lori MacVittie - Two Different Socks

application delivery

There are 258 entries for the tag application delivery

The Order of (Network) Operations

Thought those math rules you learned in 6thgrade were useless? Think again…some are more applicable to the architecture of your data center than you might think. Remember back when you were in the 6th grade, learning about the order of operations in math class? You might recall that you learned that the order in which mathematical operators were applied can have a significant impact on the result. That’s why we learned there’s an order of operations – a set of rules – that we need to follow in order to ensure that we always get the correct answer when performing...


posted @ Tuesday, March 09, 2010 3:41 AM | Feedback (0)

When Everything is a Threat Nothing is a Threat

The current threat level is … the same as it was yesterday, and the day before, and will be tomorrow. We’ve all been in the airport before and heard the announcement. “The current threat level is orange. Blah blah blah blah yada yada whatever.” At least that’s what I hear today because I’ve become immune to the fact that “orange” means there’s a threat. There’s always a threat, it seems, and the announcement simply conveys what appears to many of us to be the “status quo.” We have effectively been desensitized to a “higher” threat level as...


posted @ Friday, March 05, 2010 3:48 AM | Feedback (0)

The IP Address – Identity Disconnect

The advent of virtualization brought about awareness of the need to decouple applications from IP addresses. The same holds true on the client side – perhaps even more so than in the data center. I could quote The Prisoner, but that would be so cliché, wouldn’t it? Instead, let me ask a question: just which IP address am I? Am I the one associated with the gateway that proxies for my mobile phone web access? Or am I the one that’s currently assigned to my laptop – the one that will change tomorrow because today I am...


posted @ Thursday, March 04, 2010 3:54 AM | Feedback (1)

Pay No Attention to the Infrastructure Behind the Cloudy Curtain

What is needed to customize the cloud is a pair of data center ruby slippers called Infrastructure 2.0. Frank Gens of IDC discussed the “New IDC IT Cloud Services Survey: Top Benefits and Challenges” in his blog and what is not surprising is that security continues to top the challenges associated with cloud services. What may be surprising to some is the increasing focus on customization. It shouldn’t be. As customers continue to push at the boundaries  of the cloud computing model they will inevitably find it unable to meet some need they have, such as customization....


posted @ Friday, February 26, 2010 3:31 AM | Feedback (3)

WILS: The Many Faces of Compression

There’s compression, and then there’s compression. One of the most common means of improving application performance is to reduce the size of the data being exchanged as redress for inherent network protocol behavior that can cause excessive delays in delivery of application data. Compression is often enabled to achieve this goal, and because most data being delivered to applications is text-based (XML, HTML, JSON) this technique generally works quite well. Depending on the architecture of the application delivery network, however, there may be other “types” of compression that can be used in addition to the “compression” typically associated...


posted @ Tuesday, February 23, 2010 3:48 AM | Feedback (0)

Knowing is Half the Battle

There’s a difference between automation and orchestration, and knowing which one you’re really doing is half the battle in achieving a truly dynamic data center. Randy Heffner on CIO.Com wrote an excellent article on SOA and its value, “SOA: Think Business Transformation, Not Code Reuse.” The problem I had with the article was not in any way related to its advice, conclusions, or suggestions. The problem I had was that I kept thinking about how perfectly much of his article could be applied to data center orchestration, operational transformation, and automation. Simply replace “SOA” with “orchestration”, “software reuse”...


posted @ Monday, February 22, 2010 3:43 AM | Feedback (1)

What if users could specify their own SLAs?

More interesting, what if you had the means to actually try to meet them? On the surface, Infrastructure 2.0 seems to have very little value to the end-user. It is, after all, about collaboration at the infrastructure layer. It is under the covers, as it were, of the application blanket with which end-users actually interact. But it may end up that Infrastructure 2.0 will have a direct impact on the control the user has over the way in which applications are delivered. Which is to say they might one day have some. What this means is something...


posted @ Wednesday, February 17, 2010 3:43 AM | Feedback (0)

The Devil is in the Details

Or more apropos, it’s in the complex and intimate relationship between applications and their infrastructure. What’s the difference between a highly virtualized corporate data center and a cloud computing environment? There are probably many, but the most important distinction – and the one that earns the latter a “cloud computing” tag – is certainly that the former lacks a comprehensive orchestration system and was likely not architected using a rapid, infrastructure inclusive, scalability strategy. Mitch Garnaat, “The Elastician”, recently managed to sum up what should be every modern data center’s motto in a...


posted @ Monday, February 15, 2010 4:06 AM | Feedback (2)

That Whole Concept is Broken

Agreed that cloud vendors need to differentiate on services. Disagreed that cloud standards will not forward that cause and that virtualization platform makes a difference.    The battle for virtualization platform dominance rages on, but it will not be virtualization that makes or breaks a cloud computing offering; it will be the diversity – or lack thereof - of the services it offers. We need to stop focusing on virtualization as the be-all and end-all of cloud computing and start bending our efforts toward what really matters: the ability of providers to efficiently offer a broad set of...


posted @ Wednesday, February 10, 2010 4:35 AM | Feedback (8)

Extend Cross-Domain Request Security using Access-Control-Allow-Origin with Network-Side Scripting

The W3C specification now offers the means by which cross-origin AJAX requests can be achieved. Leveraging network and application network services in conjunction with application-specific logic improves security of allowing cross-domain requests and has some hidden efficiency benefits, too. The latest version of the W3C working draft on “Cross-Origin Resource Sharing” lays out the means by which a developer can use XMLHTTPRequest (in Firefox) or XDomainRequest (in IE8) to make cross-site requests. As is often the case, the solution is implemented by extending HTTP headers, which makes the specification completely backwards and cross-platform compatible even if the...


posted @ Tuesday, February 09, 2010 4:18 AM | Feedback (1)

Scaling AJAX Applications is More About Architecture than Apache

Scaling applications that include AJAX and non-AJAX components may require more than just tuning your web server  A common problem after deploying a Web 2.0 AJAX-based application shows itself through poor performance or lower capacity on the server, often both. Web serving tuning is almost always the first step in improving performance and capacity, but the inherently competing behavior of AJAX-requests and “normal” HTTP requests quickly becomes problematic as well. Tune for the AJAX requests and performance of regular old HTTP requests suffers. Tune for regular old HTTP requests, and performance of AJAX-requests suffer. This is...


posted @ Monday, February 08, 2010 4:35 AM | Feedback (0)

VM Sprawl is Bad but Network Sprawl is Badder

We worry about VM sprawl but what about device sprawl? Management of a multitude of network-deployed solutions can be as operationally inefficient as managing hundreds of virtual machines, and far more detrimental to the health and performance of your applications. Turning them all into virtual network appliances that might need scaling themselves? That’s even badder. But all you hardware fanbois best not smirk too much because the proliferation of hardware network devices is only slightly less badder than the potential problems arising from virtual network appliance sprawl. WAIT, WHY IS DEVICE SPRAWL BAD AGAIN?...


posted @ Friday, February 05, 2010 4:02 AM | Feedback (0)

How to Gracefully Degrade Web 2.0 Applications To Maintain Availability

I haven’t heard the term “graceful degradation” in a long time, but as we continue to push the limits of data centers and our budgets to provide capacity it’s a concept we need to revisit. You might have heard that Twitter was down (again) last week. What you might not have heard (or read) is some interesting crunchy bits about how Twitter attempts to maintain availability by degrading capabilities gracefully when services are over capacity. “Twitter Down, Overwhelmed by Whales” from Data Center Knowledge offered up the juicy details: ...


posted @ Wednesday, January 27, 2010 2:55 AM | Feedback (1)

I Found the Missing Piece of the Virtualization Puzzle

Nope. Wasn’t under the couch. In fact it turns out it wasn’t even missing, it’s just been overlooked and might already be in your data center. As more organizations continue to make virtualization a core part of their overall application deployment strategy they are finding challenges associated with managing and, apparently, optimizing their newly created heterogeneous infrastructure. Kevin Fogarty, in “10 Virtualization Vendors to Watch in 2010”, writes of some of the challenges with virtualization to come in the next year. One of those challenges is, apparently, optimization of resources across physical and virtual assets, at least...


posted @ Tuesday, January 26, 2010 4:02 AM | Feedback (3)

Cloud Balancing, Reverse Cloud Bursting, and Staying PCI-Compliant

One of the concerns with cloud bursting specifically for the use of addressing seasonal scaling needs is that cloud computing environments are not necessarily PCI-friendly. But there may be a solution that allows the application to maintain its PCI-compliance and still make use of cloud computing environments for seasonal scaling efficiency. Cloud bursting, a.k.a. overdraft protection, is a great concept but in some situations, such as those involving PCI-compliance, it can be difficult if not impossible to actually implement. The financial advantages to cloud bursting for organizations requiring additional capacity on only a seasonal basis are well understood,...


posted @ Thursday, January 21, 2010 5:54 AM | Feedback (1)

Following Google’s Lead on Security? Don’t Forget to Encrypt Cookies

In the wake of Google’s revelation that its GMail service had been repeatedly attacked over the past year the search engine goliath announced it would be moving to HTTPS (HTTP over SSL) by default for all GMail connections. For users, nothing much changes except that all communication with GMail will be encrypted in transit using industry standard SSL, regardless of whether they ask for it by specifying HTTPS as a protocol or not. In the industry we generally refer to this as an HTTPS redirect, and it’s often implemented by automatically rewriting the URI using a load balancing /...


posted @ Friday, January 15, 2010 3:10 AM | Feedback (5)

When Did Specialized Hardware Become a Dirty Word?

If you’re just trading “specialized” hardware for “dedicated” hardware you’re losing more than you’re gaining.  Apparently I have not gotten the memo detailing why specialized hardware is a Very Bad Thing(TM) . I’ve looked for it, I really have, but I cannot find it anywhere. What I did find was any number of random press releases announcing how “virtual version X” of some network or application infrastructure solution was now virtualized and hey, you don’t specialized hardware to run it. These random press releases neglect, I might add, to mention that there's very little difference between the requirement...


posted @ Monday, January 11, 2010 3:21 AM | Feedback (9)

Pursuit of Intercloud is Practical not Premature

Kicking of the new year (and a new decade) with a lively debate on a technological concept that is barely out of its infancy is always a good thing. Fred Cummins over at HP recently penned “Pursuit of the Intercloud is Premature” and caught the eye of several of us for whom Intercloud is near and dear and, I think, provided a great way to start off the year by declaring the concept of Intercloud “not yet worthy of concern”.  If this elastic mesh is provided by a single cloud provider, then it is...


posted @ Friday, January 08, 2010 3:56 AM | Feedback (0)

Why Is Reusable Code So Hard to Secure?

Being an efficient developer often means abstracting functionality such that a single function can be applied to a variety of uses across an application. Even as this decreases risk of errors, time to develop, and the attack surface necessary to secure the application it also makes implementing security more difficult. Over the holidays I had the opportunity to do some coding on my latest web application project. I won’t bore you with the details of what it is because it’s to support a hobby of Don and mine except to say that it’s running on a LAMP stack...


posted @ Thursday, January 07, 2010 3:58 AM | Feedback (4)

Is Your Application Infrastructure Architecture Based on the Postal Service Delivery Model?

If it is, you might want to reconsider how you’re handling security, acceleration, and delivery of your applications before users “go postal” because of poor application performance. Sometimes wisdom comes from the most unexpected places. Take Jason Rahm’s status update on Facebook over the holidays. He’s got what is likely a common complaint regarding the delivery model of the US postal service: the inefficiency of where postage due is determined. Everyone has certainly had the experience of sending out a letter (you know, those paper things) and having it returned a week or more later...


posted @ Wednesday, January 06, 2010 3:19 AM | Feedback (1)

WILS: What Does It Mean to Align IT with the Business

We’ve been talking about “aligning IT with the business” since SOA first took legs but you rarely see CONCRETE EXMAPLES OF WHAT THAT REALLY MEANS. It sounds much more grand and lofty than it really is. To put it in layman’s terms, or at least take it out of marketing terms, aligning IT with the business is really nothing more than justifying or tying a particular IT investment or project to a specific business goal. What that means ultimately is that you, as an IT professional, must understand what those business goals are in the first place. Once...


posted @ Wednesday, December 30, 2009 5:11 AM | Feedback (0)

The Cloud Computing – Application Acceleration Connection

Like peanut-butter and jelly, cloud computing and application acceleration are just better together. Ann Bednarz of Network World waxes predictive regarding 2010 trends in application delivery and WAN optimization in WAN optimization in 2010. One of the interesting tidbits she offers from research firm Gartner is growth in the application acceleration market:  Second, the research firm is predicting a return to modest growth for the application acceleration market in 2010. Gartner is forecasting a compound annual growth rate of 12.22%, with 2014 revenue of $4.27 billion. This, when viewed alongside...


posted @ Thursday, December 17, 2009 3:21 AM | Feedback (2)

The XML Security Relay Race

A recent tweet about a free, Linux-based XML Security suite reminded me that we do not opine on the subject of XML security and its importance enough. SOA has certainly been dethroned as the technology darling du jour by cloud computing and virtualization and with that forced abdication has unfortunately also come a reduction in the focus on XML and security. That’s particularly disturbing when you recognize that what’s replaced SOA – primarily WOA and RESTful APIs – exchange data primarily via one of two formats: XML and JSON. Whether you prefer one over the other is...


posted @ Friday, December 11, 2009 3:51 AM | Feedback (2)

JSON versus XML: Your Choice Matters More Than You Think

Should the enterprise standardize on JSON or XML as their lingua franca for Web 2.0 integration? Or should they use both as best fits the application?The decision impacts more than just integration – it resounds across the entire infrastructure and impacts everything from security to performance to availability of those applications. One of the things a developer may or may not have control over when building enterprise applications is the format of the data used to communicate (integrate) with other applications. Increasingly services external to the enterprise are very Web 2.0 in that they provide HTTP-based APIs for...


posted @ Thursday, December 10, 2009 3:56 AM | Feedback (3)

XAJAX Perfect Choice to Build Scalable Web Applications for Cloud Computing Environments

An interesting thing happens when you combine toolkits like XAJAX and SAJAX and the ability to perform content-based routing: you can actually achieve function-level load balancing in both cloud-based and traditional architectures. As you might have discovered from previous posts mentioning it, I still do web application development to support hobby interests in my (very little) spare time. I’m currently in love with the XAJAX library, which has made development of what is supposed to be a very interactive application nearly effortless. I’m also very much enamored of load balancing/application delivery and cloud computing, specifically...


posted @ Wednesday, December 09, 2009 3:59 AM | Feedback (6)

Silos Belong on Farms Not in Clouds

Beware the danger of building out isolated network and application network infrastructures in the cloud lest we end up with silos from which it is difficult to escape.   While writing a separate post on the business value of public versus private cloud computing investments I specifically called out the fact that infrastructure – virtual or physical – provisioned in a cloud environment is applicable only to that cloud environment; it really can’t be shared within the enterprise architecture or other public cloud computing environments, for that matter. That led to considering the impact...


posted @ Tuesday, December 08, 2009 3:31 AM | Feedback (0)

The Application Delivery Spell Book: Contingency

The long, lost application delivery spell compendium has been found! Its once hidden, arcane knowledge is slowly being translated for the good of all web applications. Luckily, you don’t have to be Elminster or Gandalf or <insert powerful wizard you know here> to cast this spell over your infrastructure Contingency    School of Magic: Evocation    Components: Somatic (requires gestures), Material (requires physical component)    Saving Throw: None    Spell Resistance: No Through the use of the contingency spell, application delivery professionals can dictate the conditions...


posted @ Monday, December 07, 2009 3:37 AM | Feedback (5)

Grokking the Goodness of MapReduce and SPDY

Certainly no one would seriously argue that web applications are fast enough for everyone. SPDY is one suggested solution, but what if we combine MapReduce and SPDY? Could we develop an architectural solution that leverages the best of SPDY without requiring entire infrastructure changes to support a new protocol? More than a couple of people have mentioned Map/Reduce as a means to achieve workload-level distribution of applications in a cloud computing environment. I hadn’t looked into Map/Reduce but finally decided that if that many very smart people were thinking it was a solution, I should look into it....


posted @ Wednesday, December 02, 2009 3:14 AM | Feedback (0)

WILS: Client IP or Not Client IP, SNAT is the Question

Ever wonder why requests coming through proxy-based solutions, particularly load balancers, end up with an IP address other than the real client? It’s not just a network administrator having fun at your expense. SNAT is the question – and the answer. SNAT is the common abbreviation for Secure NAT, so-called because the configured address will not accept inbound connections and is, therefore, supposed to be secure. It is also sometimes (more accurately in the opinion of many) referred to as Source NAT, however, because it acts on source IP address instead of the destination IP address as is...


posted @ Tuesday, November 24, 2009 3:58 AM | Feedback (3)

Google SPDY Protocol Would Require Mass Change in Infrastructure

Google’s desire to speed up the web via a new protocol is laudable, but the SPDY protocol would require massive changes across networks to support ArsTechnica had an interesting article on one of Google’s latest projects, a new web protocol designed to replace HTTP called SPDY. SPDY uses a single SSL-encrypted session between a browser and a client, and then compresses all the request/response overhead. The requests, responses, and data are all put into frames that are multiplexed over the one connection. This makes it possible to send a higher-priority small file without...


posted @ Tuesday, November 17, 2009 4:20 AM | Feedback (2)

‘Drowsy’ Networking

No, not the kind you do on Facebook when you’re really, really tired but the kind defined as a means to reduce power consumption without affecting application performance or availability by eliminating non-essential processing and networking whenever possible.  An article on “Drowsy” computing as a means to reduce power consumption in data centers got me thinking about how such concepts might be applied to networking. To summarize the concept of “drowsy” computing its basic premise is that when applications aren’t being heavily used some mechanism is used to reduce the power consumption on...


posted @ Wednesday, November 11, 2009 3:23 AM | Feedback (4)

Maybe Ubuntu Enterprise Cloud Makes Cloud Computing Too Easy

With just a few clicks you, too, can create a cloud computing environment. But if you’re like a lot of organizations, you may not know what to do with it after that. The latest version of Ubuntu Server (9.10) includes the Ubuntu Enterprise Cloud (UEC), which is actually powered by Eucalyptus. The ability to deploy a “cloud” on any server running Ubuntu is really quite amazing, especially given the compatibility of Eucalyptus with Amazon and the plethora of application images available for nearly immediate deployment. It supports both a public and private option, and a hybrid model, and...


posted @ Tuesday, November 03, 2009 5:30 AM | Feedback (6)

Using Network-Side Scripting to Convert Microsoft Smart Quotes to HTML Entities

You can address the problem of converting smart quotes – and any other content - in your application if you control the code. What if you’re using third-party software for which you do not have the code? Or what if it is your code but the “defect” is so low on the priority list that you won’t get to it until the year 2020? Dealing with Microsoft smart quotes is a fact of life for developers. Almost every developer out there has a server-side script/function they use to strip them out of user-generated content and replace them with web-friendly HTML...


posted @ Monday, November 02, 2009 3:03 AM | Feedback (0)

WILS: Three Ways To Better Utilize Resources In Any Data Center

Cloud computing is, at its core, about using resources in the most operational and financially efficient manner possible. It’s about spreading resources around and sharing them to achieve greater scalability with fewer investments in hardware and software. But what if you aren’t moving to cloud? Or virtualization? Or perhaps you are, but the benefits won’t be really seen until you actually get enough resources shared across your organization. Isn’t there any other way to better utilize the resources you have now to improve the bottom line? Yes, yes, there is. And the best part is that these methods...


posted @ Thursday, October 29, 2009 3:30 AM | Feedback (2)

To Take Advantage of Cloud Computing You Must Unlearn, Luke.

Carrying over the provisioning and capacity planning techniques used in a traditional data center to cloud computing negates the full power of the Force cloud computing. One of the benefits of cloud computing is supposed to be efficiency, particularly in the utilization of compute resources. Over-provisioning of compute resources has long been one way in which IT combats the need for scalability and availability of applications but this often leaves a large percentage of compute resources unused. The utilization rule once employed as a means to ensure availability and performance of applications, i.e. no device...


posted @ Wednesday, October 28, 2009 3:32 AM | Feedback (4)

IT Myths and Legends: No One Understands Our Legacy Software

There is a common myth that the reason legacy code continues to run in businesses around the world is that no one understands it; that IT and businesses are afraid to replace it because they don’t know what it does. Once again, living in the mainframe capital of the world (the insurance industry heavy midwest), I get to talk to IT folks who deal with legacy software and hardware all the time. Do not doubt that they know exactly what that legacy software does and how it works, and perhaps frightening to proponents of change and the...


posted @ Monday, October 26, 2009 4:09 AM | Feedback (3)

The Cloud Is Not A Synonym For Cloud Computing

“Where are you storing your data these days,” he asked casually after trying to come up with a better opening line but failing. “Ah, dahhling,” she drawled while gesturing in no particular direction with an almost deprecating wave of her hand. “The Cloud, where else?” Thanks to the nearly constant misapplication of the phrase “The Cloud” and the lack of agreement on a clear definition from technical quarters I must announce that “The Cloud” is no longer a synonym for “Cloud Computing”. It can’t be. Do not be misled into trying, it will only cause you...


posted @ Wednesday, October 21, 2009 3:12 AM | Feedback (2)

Putting a Price on Uptime

A lack of ability in the cloud to distinguish illegitimate from legitimate requests could lead to unanticipated costs in the wake of an attack. How do you put a price on uptime and more importantly, who should pay for it? A “Perfect Cloud”, in my opinion, would be one in which the cloud provider’s infrastructure intelligently manages availability and performance such that when it’s necessary new instances of an application are launched to ensure meeting the customer’s defined performance and availability thresholds. You know, on-demand scalability that requires no manual intervention. It just “happens” the way it should....


posted @ Friday, October 16, 2009 3:15 AM | Feedback (8)

Amazon Elastic Load Balancing Only Simple On the Outside

Amazon’s ELB is an exciting mix of well-executed infrastructure 2.0 and the proper application of SOA, but it takes a lot of work to make anything infrastructure look that easy. The notion of Elastic Load Balancing, as recently brought to public attention by Amazon’s offering of the capability, is nothing new. The basic concept is pure Infrastructure 2.0 and the functionality offered via the API has long been available on several application delivery controllers for many years. In fact, looking through the options for Amazon’s offering leaves me feeling a bit, oh, 1999. As if load balancing hasn’t...


posted @ Thursday, October 15, 2009 3:50 AM | Feedback (3)

Dynamic Infrastructure Makes Static Connection Limitations Obsolete

One of the benefits of Infrastructure 2.0 is connectedness: the ability to collect and share pertinent data regarding the health and performance of applications and infrastructure services. Based on that data a dynamic infrastructure can adapt on-demand and make decisions that respect real capacity limits, not artificial ones. Randy Hayes writes “The CapCal Blog”, and describes CapCal as being about “measuring the performance and scalability of web apps using real, production level workloads.” In A Very Delicate Load Balancing Act he discusses the impact of load balancing configurations on the capacity and performance of applications. ...


posted @ Wednesday, October 14, 2009 4:20 AM | Feedback (0)

Paradox: When Cloud Is Both the Wrong and the Right Solution

Cloud offers an appealing “pay only for what you use” that makes it hard to resist. Paying on a per-usage hour basis sounds like a good deal, until you realize that your site is pretty much “always on” because of bots, miscreants, and users. In other words, you’re paying for 24x7x365 usage, baby, and that’s going to add up. Ironically, the answer to this problem is … cloud. Don and I occasionally discuss how much longer we should actually run applications on our own hardware. After all, the applications we’re running are generally pretty light-weight, and only see...


posted @ Tuesday, October 13, 2009 4:30 AM | Feedback (1)

Long Live(d) AJAX

The problem of AJAX, interstitial request patterns, and the effect on the performance and availability of your applications. There are several reasons why applications need to be scaled out but they all come down to essentially addressing the same core problem: resource consumption. In the case of networked applications this often means specifically TCP connection resources. Now most people don’t think of TCP connections as a resource, per se, but every web and application server has an upper limit to the number of TCP connections it can hold open at any given time. In some cases this...


posted @ Wednesday, October 07, 2009 3:53 AM | Feedback (4)

Using Network-Side Scripting to Implement Mock API Endpoints

Steve (apparently yes, we are on a first name basis) offers up his thoughts on developing APIs for the Cloud in “A Cloud Tools Manifesto.” While the inclusion of the word “manifesto” in the title raised quite the stir (“Manifestogate” is still fresh on the minds of many cloud-oriented people), what really caught my eye is his inclusion of a “mock endpoint” primarily for testing of API based integration and development. This is something that’s increasingly important not just to cloud but to Web 2.0 and social networking sites that provide APIs via which other sites and client applications can...


posted @ Monday, October 05, 2009 4:00 AM | Feedback (5)

Linux is Not the Answer to Security Problems

Malicious links served up in a browser are OS agnostic. They don’t care about the OS because the target is people, not technology. In response to the problem of links and trust put forth in a recent post a reader replies that the answer to “evil links” is simply to run Linux instead of Windows. the very best solution is to run something other than windows, and with ubuntu at its current state of maturity (and free-ness), why wouldn't you? I won’t disagree with the assessment of Ubuntu and its current...


posted @ Friday, October 02, 2009 5:04 AM | Feedback (5)

WILS: A Good Hall Monitor Actually Checks the Hall Pass

Are you monitoring the network, servers, stack, or the application? The answer may mean the difference between your application being available or not. One of the biggest problems with moving away from simple load balancing to application delivery is that network teams don’t often get the memo and the application teams don’t have a good understanding of what load balancers can do so they can’t even offer suggestions regarding how to architect a better   solution to availability. That means neither team really understands the role of health monitoring in maintaining availability for applications. What should happen...


posted @ Wednesday, September 30, 2009 3:25 AM | Feedback (0)

Your Network is Not My Network

Back in the day when I was actually allowed to write code for customers the pat answer to any code being returned from QA because of problems was a flat “but it works on my machine.” Alright, alright, I’ll be honest; it wasn’t flat at all, it usually a plaintive whine. This isn’t an uncommon scenario as differences in environments and interactions with other applications may be enough to cause problems on one machine and not another. Troubleshooting such subtle issues were painful, to say the least, and not something anyone wanted to do. Now comes the time...


posted @ Thursday, September 24, 2009 3:37 AM | Feedback (0)

WILS: The Concise Guide to *-Load Balancing

Understanding the various types of load balancing When someone says “load balancing” the immediate reaction is usually to think of pools of servers and applications being load balanced to provide high-availability for massive sites like Amazon or Google or Facebook. But there’s a couple of other types of load balancing that deserve to be recognized because although they sit in the shadow of “load balancing” they are often invaluable assets to network and application architects attempting to ensure availability and adherence to service level agreements. Link Load Balancing Link load balancing is the...


posted @ Wednesday, September 23, 2009 4:15 AM | Feedback (3)

Load Balancing on the Inside

Business critical internal processing systems often require high-availability and fault tolerance, too. Load balancing and application delivery is almost always associated with scaling out interactive, web-based applications. Rarely does anyone think about load balancing and application delivery in batch processing systems even when those systems might be critical to the business they are supporting. But scaling out non-interactive processing systems and providing high-availability to such critical systems is just as easily accomplished for an application delivery controller (ADC) as it is to scale out an interactive web-based application. Maybe easier. When that system also requires a...


posted @ Tuesday, September 22, 2009 4:06 AM | Feedback (0)

Cloud Computing versus Cloud Data Centers

Isolation of resources in “the cloud” is moving providers toward hosted data centers and away from shared resource computing. Do we need to go back to the future and re-examine mainframe computing as a better model for isolated applications capable of sharing resources?  James Urquhart in “Enterprise cloud computing coming of age” gives a nice summary of several “private” cloud offerings; that is, isolated and dedicated resources contracted out to enterprises for a fee. James ends his somewhat prosaic discussion of these offerings with a note that this “evolution” is just the beginning of a long process. ...


posted @ Monday, September 21, 2009 3:21 AM | Feedback (1)

If Load Balancers Are Dead Why Do We Keep Talking About Them?

Commoditized from solution to feature, from feature to function, load balancing is no longer a solution but rather a function of more advanced solutions that’s still an integral component for highly-available, fault-tolerant applications. Unashamed Parody of Monty Python and the Holy Grail Load balancers: I'm not dead. The Market: 'Ere, it says it’s not dead. Analysts: Yes it is. Load balancers: I'm not. The Market: It isn't. Analysts: Well, it will be soon,...


posted @ Thursday, September 17, 2009 4:00 AM | Feedback (1)

AJAX and Network-Side Scripting

AJAX enables the use of network-side scripting enabled application delivery solutions to offload client-side functionality and improve capacity and performance of dynamic (Web 2.0/AJAX) applications. In the last couple of weeks I’ve embarked on a home project to rewrite – from scratch – a couple of web applications that Don and I and friends use on a regular basis. Consider it a very restricted (in terms of users) social networking application, because that’s basically what it is. I made heavy use of AJAX for one component in the past version but have been really leveraging it a lot more...


posted @ Wednesday, September 16, 2009 5:02 AM | Feedback (13)

WILS: Network Load Balancing versus Application Load Balancing

Are you load balancing servers or applications? Network traffic or application requests? If your strategy to application availability is network-based you might need a change in direction (up the stack).           Can you see the application now? Network load balancing is the distribution of traffic...


posted @ Tuesday, September 15, 2009 4:16 AM | Feedback (1)

Impact of Load Balancing on SOAPy and RESTful Applications

A load balancing algorithm can make or break your application’s performance and availability It is a (wrong) belief that “users” of cloud computing and before that “users” of corporate data center infrastructure didn’t need to understand any of that infrastructure. Caution: proceed with infrastructure ignorance at the (very real) risk of your application’s performance and availability. Think I’m kidding? Stefan’s SOA & Enterprise Architecture Blog has a detailed and very explanatory post on Load Balancing Strategies for SOA Infrastructures that may change your  mind.  This post grew, apparently, out of some (perceived) bad behavior on...


posted @ Tuesday, September 08, 2009 4:11 AM | Feedback (1)

If Your Users See an HTTP Error Code You’re Doing It Wrong

There is no reason in a modern web application for users to see a white error page Sightings of the Twitter “fail whale” are, these days, fewer and far between. That’s a good thing. What’s interesting is that when it does show up, users are almost amused – as if they’re glad to see an old friend. I mean, come on; Twitter’s users named the whale, for crying out loud. How many of your users have a fan club for your error pages? Exactly. That’s the kind of reaction you want from HTTP errors but what you...


posted @ Thursday, September 03, 2009 2:52 AM | Feedback (10)

Cloud Computing’s (not so) Best Kept Secret

Cloud providers know the secret to a successful cloud computing implementation is integration between the infrastructure and virtualization Ever notice that cloud providers are v e r y reluctant to reveal on what foundation their cloud computing architectures are laid? Most providers don’t want to share their “secret sauce” because, well, then everyone else could get into the game as well. While it is certainly true that the infrastructure – and specifically the application delivery infrastructure – you choose to lay the foundation for a cloud computing architecture can affect your ability to succeed and innovate...


posted @ Tuesday, August 25, 2009 10:17 AM | Feedback (0)

WILS: Application Acceleration versus Optimization

Why do application delivery vendors talk about both? Aren’t they the same thing? In general, acceleration implies that something will be done to the application: caching, compression, etc… The actual behavior of the application is changed such that the client may need to participate in the acceleration. Acceleration is technically speaking disruptive in the sense that it requires participation of client, intermediary, and often the server. This generally takes a form that leverages existing standards, a la caching, such that no changes need be made to clients or servers, but the behavior of the application and its...


posted @ Thursday, August 20, 2009 6:00 AM | Feedback (2)

The Myth of 100% IT Efficiency

Idle resources will always need to exist, especially in a cloud architecture With IT focused on efficiency – for reduction in operating expenses and in the interests of creating a greener computing center – there’s a danger that we’ll attempt to achieve 100% efficiency. You know, the data center in which no compute resources are wasted; all are applied toward performing some task – whether administrative, revenue generating, development cycles, or business-related – and no machine is allowed to sit around idle. Because, after all, idleness is the devil’s playground, isn’t it?  But before...


posted @ Wednesday, August 19, 2009 3:17 AM | Feedback (3)

Dear Developer: Step Away from the Keyboard

When it comes to availability, coding a solution is just delaying the inevitable Jonathan Howell, in Five Things That Will Kill Your Site – an excellent read, by the way, for all web application developers – asserts that there are several ways to avoid web application death that do not require the implementation of “expensive redundant hardware with top of the line load balancers and an enterprise class SAN.” In general he’s got some good advice to which application developers should pay attention, but I had to disagree with his assertion that a solution to provide graceful degradation...


posted @ Tuesday, August 11, 2009 3:56 AM | Feedback (0)

Cloud is Not a Big Switch

Why Carr’s analogy doesn’t describe today’s cloud environments and how SOA can get us closer to what he describes Back when cloud first starting drifting in to obscure the computing landscape there were a lot of parallels drawn between it and grid, and a lot of analogies used to explain the concept behind it. Cloud computing is most often analogized using Nicolas Carr’s analogy of the cloud as an electrical grid; that’s always bothered me at almost a visceral level. But I could never articulate why well enough and a lot of smart people told me that if I...


posted @ Monday, August 10, 2009 3:57 AM | Feedback (1)

Cloud Changes Cost of Attacks

For some companies there’s never been a quantifiable financial impact from attacks. Cloud may change that. One of the frustrations with information security is that it’s always difficult – if not impossible – to quantify risk. Without the ability to quantify risk, it’s often the case that solutions that would mitigate the risk are left unimplemented because there’s no way to prove that the risk would turn into a breach, downtime, or other revenue impacting incident. Take the recent PayPal outage. Estimates are that the hour of downtime for the payment processing king might have...


posted @ Wednesday, August 05, 2009 3:37 AM | Feedback (4)

A Formula for Quantifying Productivity of Web Applications

Ever wanted to prove or understand how the network impacts productivity? There is a formula for that… We often talk in abstract terms about the affects of application performance on productivity. It seems to make sense that if an application is performing poorly – or unavailable – that it will certainly affect the productivity of those who rely upon that application. But it’s hard enough to justify the investment in application acceleration or optimization without being able to demonstrate a real impact on the organization. And right now justification is more of an issue than it’s ever been.  ...


posted @ Tuesday, August 04, 2009 4:15 AM | Feedback (1)

Cloud Computing Makes Servers Obsolete

The concept of a server needs to go the way of the dodo One of the reasons I enjoy Twitter is that quite frequently – if you’re following the right people – you’ll see a tweet that is absolutely profound despite its simplicity and the constraints placed upon the author. Recently we were having a mini-discussion on Twitter regarding the definition of availability that elicited just such a golden nugget from botchagalupe: “Apps designed for a cloud should remove the ‘server’ concept.” First, I really like the use of the article “a” in...


posted @ Friday, July 31, 2009 3:41 AM | Feedback (6)

Two Different Sock(et)s

The importance of a full-proxy architecture to application delivery, security, cloud computing, and virtualization People often describe the act of changing focus from one related but distinct task to another as “wearing two different hats.” Like moving from “developer” to “administrator” when you’re trying to deploy an application in a testing environment. You’re the developer, but then you have to “switch gears” and become a server administrator in order to ensure that the application server and its environment is configured properly before you can actually test the application you just wrote. But the metaphor...


posted @ Thursday, July 30, 2009 4:07 AM | Feedback (0)

Denied!

Context, it’s always about context (or the lack thereof) I received a call recently that most people have probably received: our banking institution just wanted to verify that yes, that was Don or I making purchases at midnight in Wisconsin and then later in Indiana and yet again that afternoon in Ohio. That’s a good thing, I’m sure, as they’re just trying to watch our back. But later in the day I tried to make a purchase and was, horror of horrors, denied. The bank, when called, seemed matter-of-fact about the situation. The security flag hadn’t been...


posted @ Wednesday, July 29, 2009 4:34 AM | Feedback (2)

Beware the Availability Rat Hole in the Cloud

Availability means more than the dread “d” word The focus on making servers unhackable to prevent service disruption (that’s such a politic way of saying the dread “d” word – downtime) is admirable but exposes the tendency of technical folks to go down rat holes when discussing application delivery challenges and specifically the challenge of assuring availability of applications and services. What generally seems to happen when we start talking about availability in the cloud is that we go down the rat hole of talking specifically about the cloud and not applications deployed...


posted @ Wednesday, July 22, 2009 2:57 AM | Feedback (2)

Rip and Replace Won’t Solve Twitter’s (Or Your) Security Problems

The “replace” in “rip and replace” essentially means getting rid of old security problems and replacing them with new ones. Twittergate is (thankfully) behind us but it’s almost assuredly going to be the case that we’ll be rehashing this one for a while. This certainly isn’t the first time Twitter and security issues have clashed, and as in the past Twitter (and really any very public application in a similar situation) is the clear loser. And of course there comes the unsolicited advice offered regarding what Twitter needs to do to address its security issues. I am, of...


posted @ Monday, July 20, 2009 3:43 AM | Feedback (2)

Use The Source, Luke!

Is ESB just an expensive integration hub or is there more to the story than we heard… In the beginning, the ESB (Enterprise Service Bus), was marketed as much more than an integration technology. While the core of an ESB is  certainly about connectivity between services, there was – and still is – so much more to an ESB than just integrating disparate protocols and technologies. Transformation, parallel processing, content based routing, and service orchestration are among the more useful and beneficial capabilities of an ESB. That’s why it was somewhat surprising to see the CTO of...


posted @ Friday, July 17, 2009 3:26 AM | Feedback (2)

Business-Layer Load Balancing

One of the interesting points that discussions around intercloud brings up is the need for infrastructure to, if you’ll pardon the use of marketing jargon, align with the business. What that really means is that applications and their supporting infrastructure need to be more business-aware. Thing is you don’t really need intercloud or even cloud or even virtualization for many of these business-aware capabilities. They are certainly a boon, but solutions that include application delivery functionality don’t need to wait for a fully-baked cloud or intercloud implementation. Consider, for example, the potential of business-layer load...


posted @ Wednesday, July 15, 2009 3:55 AM | Feedback (1)

The End of 3-Teared Architectures

No, that isn’t a homophonic mistake. Dan directed my attention to an interesting article recently, “Are 3-tier web architecture models too rigid?” in which the author postulates that “maybe it is time to finally break out of  the old 3-tier web architecture box and retire the concept…” In addition to a great mention of F5 and an “application delivery tier” in web architecture models (the concept of which deserves its very own blog post), the author inadvertently, I think, brings to the fore one of the reasons SOA might have failed to dominate the world: service...


posted @ Monday, July 13, 2009 3:22 AM | Feedback (0)

Scalability Only One Half the Reliability Equation

Without availability scalability is irrelevant I really enjoyed Jeff Atwood’s recent blog on Scaling Up vs Scaling Out, which includes a fairly detailed comparison of the costs associated with each approach to scalability. I enjoyed it because not only did it take into consideration the cost of hardware, but also remembered to include the cost of software licensing. And of course there’s the fact that Jeff’s site is focused on development and coding, and this discussion  broadened the discussion into the realm of application networking – a demesne with which I am of course particularly fond. ...


posted @ Friday, July 10, 2009 3:38 AM | Feedback (0)

Cloud Balancing, Cloud Bursting, and Intercloud

So once we have the intercloud, what are we going to do with it? Some debate is heating up, at least on Twitter, about a variety of cloud-related topics. As James Urquhart pointed out in his “Three debates that will benefit cloud computing” debate is good, because it fuels innovation and drives markets forward. One of the things that’s frustrating about new technology and concepts is that terminology often confuses the discussion. We periodically still see discussions – and debates – around the definition of cloud computing, after all, so that shouldn’t be surprising at all....


posted @ Thursday, July 09, 2009 3:15 AM | Feedback (4)

The Impact of HTML 5 on Application Infrastructure

Smashing Magazine has a cool “cheat sheet” for those interested in the ongoing development of HTML 5. Of interest is what’s being excluded and what’s new, as well as the length of time it’s going to take before HTML 5 is completely supported: XHTML is dead, long live HTML 5! According to W3C News Archive, XHTML 2 working group is expected to stop work end of 2009 and W3C is planning to increase resources on HTML 5 instead. And even although HTML 5 won’t be completely supported until 2022, it doesn’t mean that it won’t...


posted @ Tuesday, July 07, 2009 4:06 AM | Feedback (1)

Intercloud: The Evolution of Global Application Delivery

The concept of an “intercloud” is floating around the tubes and starting to gather some attention. According to Greg Ness you can “Think of the intercloud as an elastic mesh of on demand processing power deployed across multiple data centers. The payoff is massive scale, efficiency and flexibility.” Basically, the intercloud is the natural evolution of global application delivery. The intercloud is about delivering applications (services) from one of many locations based on a variety of parameters that will be, one assumes, user/organization defined. Some of those parameters could be traditional ones: application availability, performance, or user-location. Others...


posted @ Tuesday, June 30, 2009 3:25 AM | Feedback (1)

Being first to do something doesn’t automatically make it proprietary even if the first is Microsoft

Somebody has to be first Recently Microsoft came up with a solution, supported natively in IE8, to protect against clickjacking attempts. Apparently some folks have decided that because Microsoft has a history of implementing proprietary solutions that this one, too, must be proprietary. These same folks must also have very little understanding of today’s web application architectures, as they declared the solution pretty much useless based on some pretty poor assumptions regarding the implementation of said solution.  As noted in the Register, “some critics have contended the protection [X-FRAME-OPTIONS custom HTTP header] will be ineffective because...


posted @ Monday, June 29, 2009 3:15 AM | Feedback (2)

Forklifts, Rip and Replace, and Other IT Fairy Tales

I was chatting with my mother a couple weeks ago about cloud (she’s a used-to-be programmer turned project manager for a Fortune 500. Don’t look at me like that, I keep telling you it runs in the family) and one of the problems she lamented about was that folks don’t seem to understand how entrenched COBOL and the mainframe is in the organization. It’s so entrenched that given the choice between a client-server application and a COBOL application that did the same thing they chose the COBOL program because it was less expensive and they had the knowledge on staff...


posted @ Friday, June 26, 2009 2:50 AM | Feedback (2)

Five questions you need to ask about load balancing and the cloud

Whether you are aware of it or not, if you’re deploying applications in the cloud or building out your own “enterprise class” cloud, you’re going to be using load balancing. Horizontal scaling of applications is a fairly well understood process that involves (old skool) server virtualization of the network kind: making many servers (instances) look like one to the outside world. When you start adding instances to increase capacity for your application, load balancing necessarily gets involved as it’s the way in which horizontal scalability is implemented today. The fact that you may have already...


posted @ Thursday, June 25, 2009 3:14 AM | Feedback (5)

Clickjacking Protection Using X-FRAME-OPTIONS Available for Firefox

But browser support is only half the solution, don’t forget to implement the server-side, too. Clickjacking, unlike more well-known (and understood) web application vulnerabilities, has been given scant amount of attention despite its risks and its usage. Earlier this year, for example, it was used as an attack on Twitter, but never really discussed as being a clickjacking attack. Maybe because aside from rewriting applications to prevent CSRF (adding nonces and validation of the same to every page) or adding framekillers there just haven’t been many other options to prevent the attack technique from being utilized against...


posted @ Tuesday, June 23, 2009 3:27 AM | Feedback (4)

Opera Unite Cuts out the Middleman

The inclusion of a web server gives attackers clear line-of-sight to their targets There’s been a few articles on Opera Unite that have called into question the security of the decision to include a web server with the browser. Most of those discussions have centered around the ability to muck with files not intended by the host to be shared, but given current infection techniques there’s a far greater danger to Opera: mass injection attacks. As is often pointed out, current attack techniques are not necessarily targeting web sites per se, but are intended to infect...


posted @ Friday, June 19, 2009 3:56 AM | Feedback (0)

Your Cloud is Not a Precious Snowflake (But it Could Be)

 You can’t differentiate until you do something different Gartner analyst and cloud pundit Lydia Leong reminds us that without differentiation, all clouds look pretty much the same.  “These are traits that it doesn’t take a genius to think of. Most are known requirements established through a decade and a half of hosting industry experience. If you want to differentiate, you need to get beyond them.” [emphasis added] She lists traits common to most cloud providers: premium equipment, VMWare-based, private VLANs, private connectivity, and co-located dedicated gear but doesn’t really get into...


posted @ Thursday, June 18, 2009 2:40 AM | Feedback (2)

What is server offload and why do I need it?

One of the tasks of an enterprise architect is to design a framework atop which developers can implement and deploy applications consistently and easily. The consistency is important for internal business continuity and reuse; common objects, operations, and processes can be reused across applications to make development and integration with other applications and systems easier. Architects also often decide where functionality resides and design the base application infrastructure framework. Application server, identity management, messaging, and integration are all often a part of such architecture designs. Rarely does the architect concern him/herself with the network infrastructure, as that is...


posted @ Wednesday, June 17, 2009 4:07 AM | Feedback (4)

Not All Virtual Servers are Created Equal

How to optimize compute resources in a heterogeneous environment using weight/ratio-based load balancing Unless you’re starting from scratch your data center is full of physical servers of various and sundry sizes, colors, shapes, and compute resources. And even if you’re starting from scratch and you have beautiful racks of everything the same, it’s not likely to stay that way if for no other reason than, well, hardware moves on at an astonishing rate these days. So you’ve almost certainly got (or will have) a physically heterogeneous environment in terms of hardware compute resources. When you’re scaling...


posted @ Monday, June 15, 2009 4:25 AM | Feedback (0)

Out of Office Reply

I’m heading out today for a little time off and so you’ll have to make due the rest of the week without any (new) words of wisdom from me. I know, try to pull yourself together. You’ll live, really, and I’ll be back Monday with something interesting, promise. While I’m out, you might consider checking out some of the blogs I follow myself on a regular basis. They’re always full of interesting tidbits and stories and wisdom on a variety of subjects, and if you don’t follow them yourself you might find something interesting in them. ...


posted @ Wednesday, June 10, 2009 4:25 AM | Feedback (4)

Infrastructure Matters: Challenges of Cloud-based Testing

An interesting thing happened on the way to testing that application from the cloud. We broke the innertubes! Pros and Cons of Application Testing in the Cloud A firm wanted to test their application and need 100 browser instances. In the old days it would have required 100 machines -- that would be a massive undertaking. Even with hardware virtualization, you would need 5 to 10 machines, and there would be some complex configuration issues. However, by putting it all in the cloud, they were able to sync up 100 virtual instances of the browsers and take them down over...


posted @ Wednesday, June 10, 2009 3:24 AM | Feedback (4)

The Infrastructure 2.0 Trifecta

Balancing Cost, Performance, and Capacity in the Cloud There is a huge difference between provisioning applications to support capacity and provisioning them to support performance requirements. That as capacity increases performance decreases is one of the truisms of scalability that is likely to be one of the first axioms of cloud computing that will bite us in the proverbial rear-end while simultaneously reaching for our wallets. Alistair Croll of BitCurrent has a couple of great charts that illustrate this point perfectly. He then goes on to discuss how that affects cloud computing in “The cloud’s...


posted @ Tuesday, June 09, 2009 3:20 AM | Feedback (4)

The Gluten-free Application Network

If you haven’t got your (applications’) health, then you haven’t got anything If you happen to be unlucky enough to suffer from Celiac disease - gluten intolerance (wheat, barley, oats, rye) - then you know how important it is to keep gluten out of your diet. If you don’t know let’s just say that you have to keep even trace amounts of gluten out of your diet lest you suffer the consequences, which can be different from person to person, but none are pleasant. You feed off food; applications feed off requests and responses. Like those who...


posted @ Friday, June 05, 2009 4:08 AM | Feedback (0)

The network ain’t big enough for the both of us

There is a tendency to describe every device on a network as simply “the network” regardless of whether that device is dedicated to security, or application delivery (layer 4-7), or actual network (layer 2-3) functionality. It’s an artifact of aging data center architecture models that there exists an artificial line of demarcation between web and application servers and everything else. We used to depict “everything else” as a cloud, but with the emergence of The Cloud doing so simply complicates discussions even further because the “network” necessary to support a dynamic, on-demand operational model of computing like “cloud” is more...


posted @ Friday, May 29, 2009 3:49 AM | Feedback (9)

I am wondering why not all websites enabling this great feature GZIP?

Understanding the impact of compression on server resources and application performance While doing some research on a related topic, I ran across this question and thought “that deserves an answer” because it certainly seems like a no-brainer. If you want to decrease bandwidth – which subsequently decreases response time and improves application performance – turn on compression. After all, a large portion of web site traffic is text-based: CSS, JavaScript, HTML, RSS feeds, which means it will greatly benefit from compression. Typical GZIP compression affords at least a 3:1 reduction in size, with hardware-assisted compression yielding an average...


posted @ Wednesday, May 27, 2009 3:50 AM | Feedback (5)

F5 and the Cloud

There’s apparently been a bit of confusion over what, exactly, F5 thinks of cloud computing as an organization based on a recent blog post. I thought I’ve been fairly clear on where F5 stands in terms of cloud computing but I may be suffering what’s known as the “curse of knowledge”, which means I am so deeply entrenched in F5’s view of cloud that I forget that other people don’t have the luxury of that knowledge. So I’d like to take this opportunity to clear up any misconceptions that may be floating around and just set the record...


posted @ Tuesday, May 26, 2009 4:09 AM | Feedback (0)

How Reality Blew the Cloud Away at Interop

As a telecommuter – and one that lives in that technological mecca of the midwest, Green Bay – I don’t often get the chance to talk face to face with, well, anyone. Being conscripted into booth duty at Interop this week means I get to talk to people with real problems and with ones that can quickly bring anyone with their head in the clouds back down to earth. Imagine if you will an application. A real, honest to goodness client-server application. Not web-based, but client-server; like the kind we wrote in Delphi and Visual Basic back in...


posted @ Thursday, May 21, 2009 6:30 AM | Feedback (14)

Greedy (IT) Algorithms

Greedy algorithms can result in the right solution in the end, but rarely do Don and I were having a discussion with our oldest son the other night about writing a chess program. There are myriad options for implementing the learning aspects of a chess program, but this is not a task for the timid. He ended up proposing a much simpler solution (this was just an exercise in ‘can I write it’, after all) that would have essentially used a very greedy algorithm; one that made a decision regarding the computer’s next move based on current state of...


posted @ Monday, May 18, 2009 3:16 AM | Feedback (0)

Get your SaaS off my cloud

Why architecture matters not only to security but to the future of cloud computing It seems the phrase “in the cloud”, sadly, has become a marketing-hyped euphemism for “the Internet.” I say sadly because the use of cloud to refer to every and any service delivered over the Internet dirties up the cloud. It obscures the intent of cloud computing and makes it difficult for technologists in the trenches to get a handle on how cloud – both external and internal – can provide benefits and solutions to problems they have right now. The very loose use of the...


posted @ Monday, May 11, 2009 3:38 AM | Feedback (11)

Cloud computing is not Burger King. You can’t have it your way. Yet.

Don’t confuse computing services with infrastructure services. We aren’t there yet. The subtext to the cloud computing discussion is subtle, as is the wont of subtext. But it is clear that underlying all the concerns about cloud computing is a common theme: control. Whether we’re talking about reliability or security, it should be obvious if you’re reading between and beneath the lines that the biggest stumbling block to massive cloud adoption is the issue of control. There is a very real difference between on-demand computing and on-demand infrastructure. What the cloud provides now, and is described...


posted @ Thursday, May 07, 2009 3:11 AM | Feedback (4)

Five Key Questions Developers Need to Ask before Starting the Troubleshooting Process

Brother, can you give a developer a hand? As the topology of networks delivering applications becomes increasingly complex it becomes more and more difficult to troubleshoot problems, especially for developers tasked with figuring out why their “application broke” in production when it was working just fine thank you very much in “DEV” and “QA.” It is rare, after all, that the production environment – including all the moving parts – is duplicated in development and testing environments. It is already difficult enough for developers to track down problems due to the complex nature of application infrastructure...


posted @ Wednesday, May 06, 2009 4:17 AM | Feedback (1)

Your load balancer wants to take a level of fighter and wizard

If you’ve ever played Dungeons & Dragons for an extended period of time (a campaign, in the vernacular) you know that of all the classes available the cleric is the least likely to be chosen willingly. The cleric class is much like the kid picked last in kickball, chosen only because you have to, not because you want to. Okay, bard may actually be less likely but cleric is really, really close and you need a cleric, you don’t necessarily need a bard. The problem is that clerics can be somewhat dull to play but...


posted @ Tuesday, May 05, 2009 3:38 AM | Feedback (6)

Picard and Dathon at El-Adrel

The importance of context in solving the problems created by tying web applications to deeply rooted local metaphors (IP addresses). The relationship between IP addresses and web applications to most end-users is much like the metaphorical language of the Tamarians in Star Trek: The Next Generation “Darmok”. It is incomprehensible without the proper foundational concepts; to anyone who lacks the proper context. In the case of IP addresses and web applications that foundation is technological rather than the historical basis of the Tamarian’s metaphorical language. The diseconomy of scale inherent in our reliance on IP addresses...


posted @ Thursday, April 30, 2009 2:45 AM | Feedback (0)

Lack of Disclosure Taints Recent Debate

The undisclosed relationship between o3 magazine and application delivery startup Carbon Mountain Robert Scoble recently lamented the “free meals” the newspaper industry has given away but mentions that there are still some meals left, most notably “objectivity”: Meal left #4: objectivity and accountability. I can argue that lots of journalists aren’t objective, but the truth is they are part of a system that adds objectivity and accountability as a system BEFORE publishing. Blogging and Twittering, I have noticed, can be objective and accountable, but it sometimes takes time to figure that out, especially...


posted @ Thursday, April 23, 2009 10:54 AM | Feedback (2)

Jedi Mind Tricks: HTTP Request Smuggling

How to defeat the ancient Jedi mind trick known as HTTP Request Smuggling.  HTTP Request Smuggling (HRS) is not a new technique; it's been around since 2005. It takes advantage of architectures where one or more intermediaries (proxies) are deployed between the client and the server. HRS is can be used to poison web-caches and bypass security solutions such as web application firewalls as well as for the delivery of malicious payloads such as worms, viruses, and those used to exploit known vulnerabilities in web and application servers. The good news is that to exploit HRS,...


posted @ Thursday, April 23, 2009 3:39 AM | Feedback (1)

No soup for you!

Automation isn’t some special brand of soup and there’s no “automation nazi” who can deny access to its benefits. The recent McKinsey report on cloud computing has pundits everywhere choking on their donuts and scrambling to dispute the report’s findings, which essentially end up saying “cloud ain’t cheaper.” I’m not going to rehash the arguments. I’m not going to analyze the report. But I am going to dig into a few comments on the report by Thorsten at RightScale who started off by saying: “Its claim that cloud computing (in the...


posted @ Wednesday, April 22, 2009 3:18 AM | Feedback (4)

OVF: A few layers short of a full stack

OVF (Open Virtualization Format) apparently just isn’t getting enough mindshare out there in the discussions of cloud computing that focus on portability and interoperability. The goal of OVF is to provide a portable, interoperable non-vendor specific meta-data that describes an application, its virtual container, and the attributes necessary to deploy it in a new environment with minimal human intervention. This will, allegedly, allow it to move seamlessly from cloud to cloud, drifting ever-so-gently and making the entire process appear effortless. Given that lofty goal, it’s no surprise that Jon Oltsik, senior analyst at the Enterprise Strategy Group, wonders...


posted @ Tuesday, April 21, 2009 2:58 AM | Feedback (4)

It’s like load balancing. On steroids.

What is this application delivery thing that everyone keeps telling me I need? Isn’t that just the latest marketing term for load balancing? A recently released Forrester report concludes that “firms must develop and integrated strategy for application delivery.” We don’t disagree with that, or with the Gartner report claiming that “Load Balancing is Dead, Time to Focus on Application Delivery.” Application delivery is the next step in the logical evolutionary path from the tactical solution of load balancing to a comprehensive application infrastructure strategy. Forrester’s research indicates that despite the fact that application...


posted @ Monday, April 20, 2009 3:40 AM | Feedback (6)

Why not network-side pre-fetching?

The acceleration technique known as pre-fetching went the way of the do-do bird sometime around 2002. But perhaps it should be resurrected, just in a different place and with a slightly different focus. A SHORT HISTORY OF ACCELERATION TECHNIQUES Most modern acceleration techniques revolve around two things: decreasing the amount of data to be transferred (compression, optimization of the client-side cache) or twiddling with protocols (TCP, HTTP) and their associated behaviors to improve the overall speed at which a client and server communicate. Back in the early days of application acceleration most technologies were...


posted @ Tuesday, April 14, 2009 3:01 AM | Feedback (0)

The Revolution Begins: Arming the Data Center

You’ve declared your Data Center Independence. You’ve agreed on a basic set of rights. The problem now is ensuring that those rights are upheld and that you can achieve that independence. We’re not innocent bystanders in the data center revolution; we wholly support your rights to choose the architecture and solutions that best fit your environment. You can’t do it alone. You need tools with which to fight the data center revolution. So we’re arming you with at least some of those tools (hey, we can’t do it all alone) with the introduction of BIG-IP v10...


posted @ Wednesday, April 08, 2009 4:47 AM | Feedback (4)

The Revolution Begins: The IT Bill of Rights

First Amendment Vendors shall make no law respecting an establishment of architecture, or prohibiting the free design thereof; or constraining the flow of data, or of packets; or the right of the administrators easily to configure, and to ensure the fast, secure, and available delivery of applications. Second Amendment A well-performing network being necessary to the delivery of applications, the right of IT to optimization of any network environment, shall not be infringed. Third Amendment Budgetary constraints, though required for an efficient business, shall not force IT to compromise on security or...


posted @ Friday, March 27, 2009 2:10 AM | Feedback (3)

The Data Center Declaration of Independence

When in the course of deploying applications, it becomes necessary for administrators to dissolve the technical shackles which have connected them to products, and to assume among the powers of IT, the separate and equal station to which management entitles them, a decent respect for their valuable time requires that vendors should provide them with the means by which they may enact this separation. We hold these truths to be self-evident, that not all applications are created equal, that they are endowed by their developers with certain quirky behaviors, that among these are chattiness, vulnerabilities, and very large...


posted @ Wednesday, March 25, 2009 4:03 AM | Feedback (2)

Hardware Acceleration Critical Component for Cost-Conscious Data Centers

Better performance, reduced costs and data center footprint are not niche-market interests. The fast-paced world of finance is taking a hard look at the benefits of hardware acceleration for performance and finding additional benefits such as a reduction in rack-space via consolidation of server hardware. Rich Miller over at Data Center Knowledge writes: Hardware acceleration addresses computationally-intensive software processes that task the CPU, incorporating special-purpose hardware such as a graphics processing unit (GPUs) or field programmable gate array (FPGA) to shift parallel software functions to the hardware level. ...


posted @ Tuesday, March 24, 2009 3:27 AM | Feedback (5)

Not all application requests are created equal

ArsTechnica has an interesting little article on what Windows Azure is and is not. During the course of discussion with Steven Martin, Microsoft's senior director of Developer Platform Product Management, a fascinating – or disturbing in my opinion – statement was made: There is a distinction between the hosting world and the cloud world that Martin wanted to underline. Whereas hosting means simply the purchase of space under certain conditions (as opposed to buying the actual hardware), the cloud completely hides all issues of clustering and/or load balancing, and it offers an entirely virtualized...


posted @ Tuesday, March 17, 2009 4:34 AM | Feedback (1)

Windows Vista Performance Issue Illustrates Importance of Context

Decisions about routing at every layer require context A friend forwarded a blog post to me last week mainly because it contained a reference to F5, but upon reading it (a couple of times) I realized that this particular post contained some very interesting information that needed to be examined further. The details of the problems being experienced by the poster (which revolve around a globally load-balanced site that was for some reason not being distributed very equally) point to an interesting conundrum: just how much control over site decisions should a client have? Given the...


posted @ Thursday, March 12, 2009 4:11 AM | Feedback (5)

WAN Optimization is not Application Acceleration

Increasingly WAN optimization solutions are adopting the application acceleration moniker, implying a focus that just does not exist. WAN optimization solutions are designed to improve the performance of the network, not applications, and while the former does beget improvements of the latter, true application acceleration solutions offer greater opportunity for improving efficiency and end-user experience as well as aiding in consolidation efforts that result in a reduction in operating and capital expenditure costs. WAN Optimization solutions are, as their title implies, focused on the WAN; on the network. It is their task to improve the utilization of bandwidth,...


posted @ Wednesday, March 04, 2009 3:29 AM | Feedback (0)

Do you control your application network stack? You should.

Owning the stack is important to security, but it’s also integral to a lot of other application delivery functions. And in some cases, it’s downright necessary. Hoff rants with his usual finesse in a recent posting with which I could not agree more. Not only does he point out the wrongness of equating SaaS with “The Cloud”, but points out the importance of “owning the stack” to security. Those that have control/ownership over the entire stack naturally have the opportunity for much tighter control over the "security" of their offerings.  Why?  because they...


posted @ Wednesday, February 25, 2009 3:13 AM | Feedback (0)

Elvis is alive! He just logged into Facebook, or did he?

The case of Laura Dean has been treated as a “wake up call” to the millions of users of social networking sites. At first glance it appears there is nothing that Facebook (or any other social media site) could have done to prevent the theft and subsequent abuse of her identity. I was briefly on the “you can’t blame technology for this one” bandwagon until I stopped and thought about the ways in which fraud detection systems work and applied that process to the very simple login process used by every social media site in existence. ...


posted @ Friday, February 20, 2009 3:51 AM | Feedback (2)

Dynamic Infrastructure: The Cloud within the Cloud

When folks are asked to define the cloud they invariably, somewhere in the definition, bring up the point that “users shouldn’t care” about the actual implementation. When asked to diagram a cloud environment we end up with two clouds: one representing the “big cloud” and one inside the cloud, representing the infrastructure we aren’t supposed to care about, usually with some pretty graphics representing applications being delivered out of the cloud over the Internet. But yet some of us need to care what’s obscured; the folks tasked with building out a cloud environment need to know what’s...


posted @ Wednesday, February 18, 2009 4:14 AM | Feedback (2)

True or False: Application acceleration solutions teach developers to write inefficient code

It has been suggested that the use of application acceleration solutions as a means to improve application performance would result in programmers writing less efficient code. In a comment on “The House that Load Balancing Built” a reader replies: Not only will it cause the application to grow in cost and complexity, it's teaching new and old programmers to not write efficient code and rely on other products and services on [sic] thier behalf. I.E. Why write security into the app, when the ADC can do that for me. Why write code that...


posted @ Tuesday, February 17, 2009 3:41 AM | Feedback (8)

The House that Load Balancing Built

The year 2009 may be remembered as the year technologies died. First Anne Thomas Maynes of Burton Group declared SOA dead, and more recently Mark Fabbi of Gartner announced the death of load balancers. The difference in the obituaries is striking: Maynes declare an entire architectural model dead while Fabbi merely declares the death of a product, not the technological concepts behind it. Load balancers may be dead, the concept of load balancing lives on as a critical foundation for more advanced and valuable features available in the load balancer’s evolutionary replacement: the application delivery controller. Where Maynes gives...


posted @ Monday, February 16, 2009 5:10 AM | Feedback (4)

If you aren’t asking “what if” now you’ll be asking “why me” later

One of the negatives of providing a solution is that it necessarily assumes there is a problem. That’s actually a fair assumption in the technology world, as problems seem to abound with no end in sight. What it also does, unfortunately, is lead to a culture within IT that is more tactical than strategic. Because IT is almost always trying to put out one fire or another, they rarely have time to think – and plan – ahead. Honestly, that’s the responsibility of directors and C-level executives, anyway. It’s their responsibility to look ahead not just months...


posted @ Thursday, February 12, 2009 3:41 AM | Feedback (0)

More on the Meta-data Menagerie

Rich Miller, in response to some questions I maintain on meta-data ownership and interoperability with regards to the CCIF's efforts in defining a cloud interoperability specification, had some questions of his own: The part I'm itching to ask her about ... or start a more open conversation: the possibility of "a specification regarding application network delivery metadata" which, if properly (??) abstracted and generic, could "allow the meta-data policies to be transported and applied across different cloud implementations while preserving the specific details of implementation within the cloud computing infrastructure."  Whoa!! Tall order, isn't it? ...


posted @ Monday, February 09, 2009 4:19 AM | Feedback (1)

Who owns application delivery meta-data in the cloud?

While the vast majority of folks are still debating what is or is not "cloud computing", there are already groups trying to get ahead of the curve by focusing on broader issues such as interoperability and portability. Indeed, by addressing the potential pitfalls associated with portability across cloud implements now rather than later, it is hoped that there won't be as many problems when it does finally become an issue. There is a very real danger, however, that cloud interoperability and portability specifications will fail to address the very real need to include all the relevant application and...


posted @ Friday, February 06, 2009 4:39 AM | Feedback (23)

Web Application Security: Where do we go from here?

You're standing in line at the bank when someone walks in. You instinctively look around and notice the newcomer is wearing sunglasses,  and a hooded sweatshirt. His hands are both inside the pockets of his sweatshirt, even though it's warm inside. He chooses a line, and dances nervously from foot to foot, craning his neck to see to the front of the line. After a few minutes he leaves the line and chooses a new one, growing increasingly agitated at the wait. He keeps looking from the clock to the line to the tellers, and appears to be wringing his...


posted @ Tuesday, February 03, 2009 4:01 AM | Feedback (2)

The Great Client-Server Architecture Myth

The webification of applications over the years has led to the belief that client-server as an architecture is dying. But very few beliefs about architecture have been further from the truth. The belief that client-server was dying - or at least falling out of favor -  was primarily due to fact that early browser technology was used only as a presentation mechanism. The browser did not execute application logic, did not participate in application logic, and acted more or less like a television: smart enough to know how to display data but not smart enough to do anything...


posted @ Monday, February 02, 2009 4:38 AM | Feedback (3)

Infrastructure 2.0: As a matter of fact that isn't what it means

We've been talking a lot about the benefits of Infrastructure 2.0, or Dynamic Infrastructure, a lot about why it's necessary, and what's required to make it all work. But we've never really laid out what it is, and that's beginning to lead to some misconceptions. As Daryl Plummer of Gartner pointed out recently, the definition of cloud computing is still, well, cloudy. Multiple experts can't agree on the definition, and the same is quickly becoming true of dynamic infrastructure. That's no surprise; we're at the beginning of what Gartner would call the hype cycle for both concepts, so...


posted @ Wednesday, January 28, 2009 7:19 AM | Feedback (1)

Cloud interoperability must dig deeper than the virtualization layer

Open APIs are a matter of much discussion these days in the realm of cloud computing. Just take a peek at the discussion that occurred via Twitter during Cloud Connect. Many folks were not shy in putting forth the notion that cloud portability and interoperability can only be achieved through accepted "cloud" standards. Integration standards, for the cloud, if you will. The fear is that any emerging standards will focus only the portability of the application or virtual container environment. They are likely to ignore the fact that no application is an island, and that the application delivery...


posted @ Monday, January 26, 2009 3:40 AM | Feedback (3)

Twitter's API limit: Static control in a dynamic world

Twitter is, once again, feeling growing pains. This time the microblogging darling of the social networking world is proactively addressing the problem - by further rate limiting its APIs. Alex Payne, API Lead for Twitter, explained on the Twitter Developers mailing list: “Starting later this week we’ll be limiting those on the whitelist to 20,000 requests per hour. Yes, you read that right: twenty THOUSAND requests per hour. According to our logs, this accounts for all but the very largest consumers of our API. This is essentially a ...


posted @ Thursday, January 22, 2009 6:14 AM | Feedback (1)

Cloud Computing: Location is important, but not the way you think

The debate this week is on location, specifically we're back arguing over whether there exist such things as "private" clouds. Data Center Knowledge has a good recap of some of the opinions out there on the subject, and of course I have my own opinion. Location is, in fact, important to cloud computing, but probably not in the way most people are thinking right now. While everyone is concentrating on defining cloud computing based on whether it's local or remote, folks have lost sight that location is important for other reasons. It is the location...


posted @ Wednesday, January 21, 2009 7:13 AM | Feedback (1)

The Dynamic Infrastructure Mashup

Infrastructure 2.0 is, at its core, about evolving to a new level of interconnectedness, one in which the underlying infrastructure becomes as flexible and adaptable as the applications and virtualization infrastructure it is responsible for managing and delivering. In order to be connected, however, you need a way in which disparate infrastructure components can communicate, either directly or via a third party (coordination | management | orchestration) server. That communication is almost certainly going to take (and in many cases has already taken) the form of service-enabled control planes. These "services" are necessary in order to provide the...


posted @ Tuesday, January 20, 2009 5:42 AM | Feedback (1)

How Obama's Blueprint For Change Impacts IT

While doing some research on a related topic I dug into the technical aspects of Obama's Blueprint For Change. The plans around technology are fairly nebulous, with a few exceptions, such as those related specifically to broadband access: Deploy Next-Generation Broadband: Barack Obama believes we can get broadband to every community in America through a combination of reform of the Universal Service Fund, better use of the nation’s wireless spectrum, promotion of next-generation facilities, technologies and applications, and new tax and loan incentives. On this front, a U.S. House committee recommended yesterday...


posted @ Friday, January 16, 2009 4:08 AM | Feedback (0)

Building an elastic environment requires elastic infrastructure

One of the reasons behind some folks pushing for infrastructure as virtual appliances is the on-demand nature of a virtualized environment. When network and application delivery infrastructure hits capacity in terms of throughput - regardless of the layer of the application stack at which it happens - it's frustrating to think you might need to upgrade the hardware rather than just add more compute power via a virtual image. The truth is that this makes sense. The infrastructure supporting a virtualized environment should be elastic. It should be able to dynamically expand without requiring a new network architecture,...


posted @ Tuesday, January 13, 2009 4:15 AM | Feedback (10)

Virtualization Gone Wild: Infrastructure as virtual appliances

It has been suggested more than once, by folks normally considered rational, that in a cloud computing implementation everything - and I mean everything - should be virtualized. Even the infrastructure. The hype surrounding virtualization has spread not just to applications and their virtual image deployment as a means to achieve dynamic horizontal scale but also to infrastructure, to routers and switches and security devices. Indeed, there are a good number of infrastructure vendors currently offering and others feverishly working on virtual appliance versions of hardware devices for deployment in cloud and virtual computing environments. Part...


posted @ Monday, January 12, 2009 4:29 AM | Feedback (7)

Infrastructure 2.0: Flexibility is Key to Dynamic Infrastructure

dy·nam·ic (adj) Characterized by continuous change, activity, or progress flex·i·ble (adj) Responsive to change; adaptable. Able to bend without breaking   Infrastructure 2.0 is, at its core, about not just the network but the entire infrastructure evolving to a new level of interconnectedness, one in which the underlying infrastructure devices become flexible and adaptable; capable of responding to the continuous change in the next generation data center without breaking. The demands placed upon infrastructure by virtualization, consolidation, and the cloud require that networks grow out of their static configuration models and adopt a more...


posted @ Tuesday, January 06, 2009 6:56 AM | Feedback (3)

How VM sprawl will drive the urgency of the network evolution

VM sprawl is predicted to be one of the outcomes of early adoption and excitement over virtualization. Just as IT struggled to manage the explosion of PCs and servers across the enterprise, it is predicted that now it will need to find a way to manage the explosion of virtual machines as they pop up all over the enterprise with surprising alacrity. Part of the difficulty in managing new technology is the rogue deployment of X. Whether that's physical or virtual servers is irrelevant, the challenges associated with managing what are essentially unmanaged applications and servers deployed outside...


posted @ Friday, December 19, 2008 7:10 AM | Feedback (1)

What's good for the network is not always good for applications

Just because you can, doesn't mean you should. I'm going to start this one by quoting Hoff who was quoting Andreas Antonopoulos of Nemertes Research Group who was paraphrasing a concept put forth by Doug Gourlay. From Rational Survivability "How about using netflow information to re-balance servers in a data center" Routing: Controlling the flow of network traffic to an optimal path between two nodes Virtual-Routing or Anti-Routing: VMotioning nodes (servers) to optimize the flow of traffic on the network. Using netflow information, identify those...


posted @ Wednesday, December 17, 2008 4:03 AM | Feedback (0)

The Secret Knowledge of Developers that Network Administrators Want

When an application is deployed into a high-availability production environment there are a number of interesting infrastructure related things need to happen. The application delivery controller (ADC) needs to be configured, DNS entries updated, storage allocated, and all the other associated network infrastructure must be prepared to handle the delivery of the new application.  We have a BIG-IP. Do I have to talk to the network guys?? ...


posted @ Tuesday, December 16, 2008 5:55 AM | Feedback (3)

Curing the Business-class Broadband Blues with Cloud Computing

One of the most affordable options for small and medium businesses in terms of Internet connectivity is business-class service from cable and telco providers like Time Warner Cable, Cox, Verizon, and AT&T. Unfortunately, the definition of "business-class" is ill-suited to businesses that host their own web applications or mail servers. If you've ever looked into business class service, you'll notice that like residential services, they are only truly cost effective if you don't really care about upload speed. For example, Verizon has a promotional offer that promises download speeds up to 7.1Mbps, but limits upload speeds to 768Kbps....


posted @ Friday, December 12, 2008 3:46 AM | Feedback (0)

9 ways to use network-side scripting to architect faster, scalable, more secure applications

You may recall a recent overview on network-side scripting that described a few uses of this technology integrated with application delivery controllers. With thousands of examples of the uses of network-side scripting it's hard to choose just one to adequately represent its potential. Luckily, we don't have to stick to just one. Viva la Internet! Based on the technical session the great network-side scripting guru Colin and I ran at SD Best Practices in October, I've pulled nine ways to use network-side scripting that can enhance the scalability, security, and performance of web applications into a presentation for...


posted @ Thursday, December 11, 2008 4:04 AM | Feedback (4)

Why Flash can't win the Web application war

As an application delivery solution provider focused on securing, accelerating, and optimizing web applications, we pay a lot of attention to web application development trends. Languages, environments, and technologies are all of significant interest because in many cases the decisions regarding development affect the security and performance of applications deployed in production. AJAX-based applications, for example, can have a significant impact on performance of the application and on the network (and vice-versa), so we pay attention to its adoption and use and are always looking for new ways to secure and accelerate applications using the technology. ...


posted @ Wednesday, December 10, 2008 4:35 AM | Feedback (30)

Security is not a luxury item

In the face of a recession everyone, individuals and organizations alike, begin scaling back spending. The first thing to go is luxury items; after all, you probably didn't need that big screen TV for Christmas, and the kids will likely be just as happy with used video games as they would with new ones. IT departments quickly scale back as well, putting off larger, more costly projects that aren't critical to the core business and re-evaluating much of their infrastructure in an attempt to cut costs and reduce the impact of the hardware and software costs of running...


posted @ Monday, December 08, 2008 3:52 AM | Feedback (2)

Cloud Computing: Application session management in a dynamic environment

Deploying applications in a cloud computing environment, whether private or public, requires a bit of proactive thinking on the ramifications of a dynamic, on-demand environment, particularly when considering the impact on application session management. Consider that today, application sessions are often relied upon to remain in memory, on the application server, for hours. Persistence is achieved by storing the session in a file if necessary on the local server rather than in a database. This is particularly true of web applications developed in scripting languages like PHP that do not require a separate application server. But users who...


posted @ Thursday, December 04, 2008 7:15 AM | Feedback (1)

How Sears Could Have Used the Cloud to Stay Available Black Friday

The prediction of the death of online shopping this holiday season were, apparently, greatly exaggerated. As it's been reported, Sears, along with several other well known retailers, were victims of heavy traffic on Black Friday. One wonders if the reports of a dismal shopping season this year due to economic concerns led retailers to believe that there would be no seasonal rush to online sites and therefore preparation to deal with sudden spikes in traffic were unnecessary. Most of the 63 objects (375 KB of total data) comprising sears.com home page are served from sears.com...


posted @ Wednesday, December 03, 2008 3:10 AM | Feedback (8)

The Context-Aware Cloud

Christofer Hoff, better known as @Beaker to the Twitterverse, put on his devil's advocacy hat (yes, it really is a good color for him) yesterday and questioned whether there was a need for hardware application delivery solutions in the cloud.  He postulated via Twitter that application delivery functions would become part of the cloud fabric and thus whether they were implemented in hardware or software was largely irrelevant. Generally speaking we're in agreement on that one. But then he really used that devil's advocacy hat and suggested that the application delivery control layer might be virtualized and...


posted @ Tuesday, December 02, 2008 7:15 AM | Feedback (7)

Managing Virtual Infrastructure Requires an Application Centric Approach

Thanks to a tweet from @Archimedius, I found an insightful blog post from cloud computing provider startup Kaavo that essentially makes the case for a move to application-centric management rather than the traditional infrastructure-centric systems on which we've always relied. We need to have an application centric approach for deploying, managing, and monitoring applications.  A software which can provisions optimal virtual servers, network, storage (storage, CPU, bandwidth, Memory, alt.) resources on-demand and provide automation and ease of use to application owners to easily and securely run and maintain their applications will be critical for the...


posted @ Monday, December 01, 2008 2:59 AM | Feedback (4)

Cloud Computing: Vertical Scalability is Still Your Problem

Horizontal scalability achieved through the implementation of a load balancing solution is easy. It's vertical scalability that's always been and remains difficult to achieve, and it's even more important in a cloud computing or virtualized environment because now it can hurt you where it counts: the bottom line. Horizontal scalability is the ability of an application to be scaled up to meet demand through replication and the distribution of requests across a pool or farm of servers. It's the traditional load balanced model, and it's an integral component of cloud computing environments. Vertical scalability is the ability of...


posted @ Tuesday, November 25, 2008 3:29 AM | Feedback (5)

Infrastructure 2.0: The Diseconomy of Scale Virus

The diseconomy of scale so adversely affecting the IP address management space isn't limited to network infrastructure; it's crawling up the stack steadily and infecting all layers of the data center like some kind of unstoppable infrastructure management virus. That is why, even with the simple act of managing an enterprise network’s IP addresses, which is critical to the availability and proper functioning of the network, actually goes up as IP addresses are added.  As TCP/IP continues to spread and take productivity to new heights, management costs are already escalating. -- Greg Ness, "What Are the Barriers to...


posted @ Monday, November 24, 2008 3:47 AM | Feedback (4)

The death of SOA has been greatly exaggerated

Amidst the hype of cloud computing and virtualization have been the publication of several research notes regarding SOA. Adoption, they say, is slowing. Oh noes! Break out the generators, stock up on water and canned food! An article from JavaWorld quotes research firm Gartner as saying: The number of organizations planning to adopt SOA for the first time decreased to 25 percent; it had been 53 percent in last year's survey. Also, the number of organizations with no plans to adopt SOA doubled from 7 percent in 2007 to...


posted @ Friday, November 21, 2008 3:09 AM | Feedback (1)

Cloud Computing: Is your cloud sticky? It should be.

Load balancing an application should, by now, be a fairly routine scaling exercise. But too often when an application is moved into a load balanced architecture it breaks. The reason? Application sessions are often specific to an application server instance. The solution? Persistence, also known as sticky connections. The use of sessions on application servers to add state to web (HTTP) applications is a common practice. In fact, it's one of the greatest "hacks" in the history of the web. It's an excellent solution to the problem of using a stateless application protocol to build applications for which...


posted @ Wednesday, November 19, 2008 3:40 AM | Feedback (2)

Why routers should route and switches should switch

Michael Vizard over at eWEEK makes an interesting prediction about the future of application acceleration: "Some day the whole concept of application acceleration will be baked into the core routers and switches we have in place." I disagree. Routers and switches are packet-based. They focus on getting a single packet from here to there based on layer 2/3 information. Application acceleration solutions require action higher in the stack, usually layer 4 through 7; they are flow or connection based, and are often specific to the application (think CIFS, SAMBA, HTTP, etc..). The information necessary for application acceleration solutions...


posted @ Tuesday, November 18, 2008 3:38 AM | Feedback (1)

A client is still a client even when it's on the space station

While I was at SD Best Practices in Boston last month I got to talk to a lot of engineers, developers, and architects about their environments and about what F5 does for application delivery. One of the developers glibly told me he wasn't sure we could help him out because his environment was the international space station. Yeah, how cool is that? Now that's cloud computing. Another architect, who turned out to be a friend of a friend who I've conversed with but never met in person said the same thing, but...


posted @ Friday, November 14, 2008 3:08 AM | Feedback (0)

Cloud Computing: What's stopping service-oriented clouds?

Whenever there is a shift in architectural thinking about technology, such as is happening right now with cloud computing and virtualization, we start thinking forward, past the now, and into the future about how that technology might be leveraged. We start looking at the impact to architecture from the top of the stack to the bottom. For a company that's focused on application delivery, that means taking a good hard look at how that new technology might impact the architecture of applications. It's been suggested that perhaps, just maybe, we'll see service-oriented clouds; that the concepts of SOA...


posted @ Wednesday, November 12, 2008 8:52 AM | Feedback (2)

Why you should not use clustering to scale an application

It is often the case that application server clustering and load-balancing are mistakenly believed to be the same thing. They are not. While server clustering does provide rudimentary load-balancing functionality, it does a better job of providing basic fail-over and availability assurance than it does load-balancing. In fact, load balancing has effectively been overtaken by application delivery, which builds on load balancing but is much, much more than that today. Clustering essentially turns one instance of an application server into a controlling node, a proxy of sorts, through which requests are funneled and then distributed amongst several...


posted @ Tuesday, November 11, 2008 7:05 AM | Feedback (0)

Virtualization: How to Isolate Application Traffic

Many people are concerned with virtualization security (already coined VirtSec), and they're applying that concern from the virtual images all the way down the stack, to the network infrastructure through which virtualized application traffic is delivered. The desire for network infrastructure to be itself virtualized is growing out of a perceived need to isolate application traffic at every point in the infrastructure. But the technology to isolate application traffic at layer 2 and 3 of the infrastructure already exists, and has been essentially virtualized for years. The sudden desire for everything in the infrastructure to be virtualized completely is borne...


posted @ Friday, November 07, 2008 6:33 AM | Feedback (2)

Cloud Computing: The Last Definition You'll Ever Need

The VirtualDC has asked the same question that's been roaming about in every technophile's head since the beginning of the cloud computing craze: what defines a cloud? We've chatted internally about this very question, which led to Alan's questions in a recent blog post. Lori and others have suggested that the cloud comes down to how a service is delivered rather than what is delivered, and I’m fine with that as a long term definition or categorization. I don’t think it’s narrow enough, though, to answer the question “Is Gmail a cloud service?” because...


posted @ Wednesday, November 05, 2008 6:53 AM | Feedback (6)

The Politics of Load Balancing

If you're in the US, and even if you aren't, it's nearly impossible to ignore the fact that we're in the midst of a presidential election that will be resolved today. And we're quite passionate about the process. That's because the concepts of democracy are ingrained in us from the time we are small children and permeate almost every aspect of our lives, even though we may not realize it. Even our technology is colored by our belief in the democratic process. Remember token ring networks? If the "leader" (the active monitor) of the token ring failed for...


posted @ Tuesday, November 04, 2008 2:56 AM | Feedback (0)

Understanding network-side scripting

We all understand the lines in the sand (or the architectural diagram) that separate client-side scripting from server-side scripting. It's very clear that client-side scripting, e.g. JavaScript, VBScript, ActionScript, executes on the client while server-side scripting, e.g. PHP, ASP, executes on the server. But what about network-side scripting? "There is no such thing!" might be the first response to this question, but I beg to disagree. Programmable proxies, a la F5's BIG-IP Local Traffic Manager, that provide a scripting language such as iRules, are simultaneously client-side and server-side, with the best definition to describe their placement in architectures being network-side...


posted @ Friday, October 31, 2008 5:26 AM | Feedback (9)

Infrastructure 2.0: The Feedback Loop Must Include Applications

Greg Ness calls it "connectivity intelligence" but it seems that we're really talking about is the ability of network infrastructure to both be agile itself and enable IT agility at the same time. Brittle, inflexible infrastructures - whether they are implemented in hardware or software or both - are not agile enough to deal with an evolving, dynamic application architecture. Greg says in a previous post The static infrastructure was not architected to keep up with these new levels of change and complexity without a new layer...


posted @ Wednesday, October 29, 2008 4:08 AM | Feedback (3)

3 steps to a fast, secure, and reliable application infrastructure

You have just been promoted to CTO of Widgets, Inc. (Congratulations, by the way!) In your new role, on which of the following will you focus the most attention (and budget): (a) the network (b) the applications (c) the data Trick...


posted @ Thursday, October 23, 2008 4:40 AM | Feedback (0)

Automating scalability and high availability services

There are a lot of SOA governance solutions out there that fall into two distinct categories of purpose: one is to catalog services and associated security policies and the other is to provide run-time management for services, including enforcement of security and performance-focused policies. Vendors providing a full "SOA Stack" of functionality across the service lifecycle (design, development, testing, production) often integrate their disparate product sets for a more automated (and thus manageable) SOA infrastructure. But very few integrate those same products and functionality with the underlying network and application delivery infrastructure required to provide high-availability and scalability...


posted @ Wednesday, October 15, 2008 5:37 AM | Feedback (0)

Silverlight 2.0 released, support for Eclipse included

Silverlight, if you recall, appears to be Microsoft's answer to Adobe's AIR platform. Microsoft released Silverlight 2.0 today, as expected. Part of the big exciting news is that you can now code up Silverlight applications in Eclipse. Yeah, not kidding. I know, you just hit weather.com too and checked to see what the temperature was. But seriously, Microsoft is fully supportive of the Eclipse environment for Silverlight despite its own support with its own free tool, Visual Web Developer Express. I haven't checked out the Eclipse version yet, so I'll be interested to see it and hear how...


posted @ Tuesday, October 14, 2008 1:19 PM | Feedback (0)

3 Really good reasons you should use TCP multiplexing

AJAX. SOA. Social network API integration. What is TCP Multiplexing? All of aforementioned technologies have one thing in common. Okay, they have more than that in common,  but for the purposes of this discussion there's one very TCP multiplexing is a technique used primarily by load balancers and application delivery controllers (but also by some stand-alone web application acceleration solutions) that...


posted @ Tuesday, October 14, 2008 5:10 AM | Feedback (7)

Data center consolidation drives business case for secure remote access

Everybody is jumping on the data center consolidation bandwagon again. It never really went away, it just took a leisurely Sunday drive through the countryside for a few years before turning back up on the streets of busy data centers everywhere. RELATED LINKS This time, it's virtualization that's driving consolidation, and this time it appears that the movement may actually have a better chance at...


posted @ Monday, October 13, 2008 4:16 AM | Feedback (0)

8 things you can do with a proxy

After having recently discussed all the different kinds of proxies that exist, it occurred to me that it might be nice to provide some examples of what you can do with proxies besides the obvious web filtering scenario. This is by no means an exhaustive list, but is provided to show some of the more common (and cool, I think) uses of proxies. What's really awesome is that while some of these uses are available with only one type of proxy (reverse or forward), a full proxy can provide all these uses, and more, in a single, unified...


posted @ Wednesday, October 08, 2008 4:27 AM | Feedback (0)

Which security strategy takes more time: configuration or coding?

One of the arguments against the deployment of web application firewalls (WAF) is that it takes time to configure these devices to fit each individual environment. This is allegedly one of the reasons that secure coding is preferred over security devices. But it takes time to code solutions and deploy them, too. In fact, depending on the lifecycle management at any given organization, it can take more time to code a solution and get it moved through a phased environment into production. One of the benefits of an application delivery platform and web application security deployed at...


posted @ Monday, September 29, 2008 4:38 AM | Feedback (4)

The day of the virtual desktop has come...and gone

Desktop virtualization. Virtual desktops. Application streaming. Whatever you want to call it makes no nevermind to me because the problem driving the entire concept is gone. Eradicated. Made irrelevant by the cloud. Made irrelevant by cloudware, SaaS (Software as a Service), and the ubiquitous browser. I cannot count the number of times I've heard complaints about some form of desktop virtualization/application streaming in the past. It's slow. The server died in the middle of my exam. It's slow. There are no more licenses left. It's slow today (why do you add "today", it's slow every day!). Sensing a...


posted @ Wednesday, September 24, 2008 5:01 AM | Feedback (1)

My application is not the next Twitter so why should I care about high availability?

It often seems that load balancing and high availability are associated with only high traffic sites, like Twitter and Google. But load balancing and high availability isn't just for Web 2.0 phenomenons or web monsters; it can be an invaluable tool in your strategy to maintain service level agreements and customer satisfaction no matter how large or small your customer base - and data center - might be. ...


posted @ Tuesday, September 23, 2008 4:34 AM | Feedback (3)

Building a Cloudbursting Capable Infrastructure

Reuven Cohen of the Elastic Vapor blog, in this article, puts forth the notion that infrastructure is required to enable cloudbursting and then asks an excellent question: To truly enable a capable cloudbursting infrastructure, I feel there needs to be a common consensus on how this may be archived and by what means. So the question in...


posted @ Thursday, September 18, 2008 8:41 AM | Feedback (1)

The Three "Itys" of Cloud Computing

No matter where you deploy it, it's still your application Related Reading Everyone's talking about cloud computing and cloudware (applications in the cloud) services and pointing to the hiccups of several major cloud providers already this year. Reliability, availability, and security are still major concerns, and yet some reports indicate these three "itys" aren't impeding adoption of cloud computing models at all. ...


posted @ Wednesday, September 17, 2008 3:20 AM | Feedback (0)

Why you still need layer 7 persistence

Tony Bourke of the Load Balancing Digest points out that mega proxies are largely dead. Very true. He then wonders whether layer 7 persistence is really all that important today, as it was largely implemented to solve the problems associated with mega-proxies - that is, large numbers of users coming from the same IP address. Layer 7...


posted @ Tuesday, September 16, 2008 6:03 AM | Feedback (0)

BusinessWeek takes viral advertising a little too seriously

Yesterday it was reported that BusinessWeek had been infected with malware via an SQL injection attack. [begin Mom lecture] Remember when we talked about PCI DSS being a good idea for everyone, even though it's just a requirement for the payment card industry? If I've told you once, I've told you a million times: safer is better, more protection never hurts. ...


posted @ Tuesday, September 16, 2008 5:40 AM | Feedback (1)

The impact of the network on ... everything

Back in the day when I was a technical architect and actually wrote code (yes, they did let me do that once) I got into a discussion with the rest of my team about the impact of our code on performance. I was saying white-space was evil because it can unnecessarily increase the number of packets necessary to transfer data. I wanted to go through the code (mostly JavaScript and HTML output) and reduce the white-space to make application...


posted @ Thursday, September 11, 2008 8:01 AM | Feedback (1)

IE8: Robbing Peter to pay Paul

For those of you unfamiliar with the idiom, it should be taken to mean "benefiting one at the expense of another." In this case, Paul is the end-user and Peter is the server administrator. Or better yet, Paul is the browser and Peter is the server. All web browsers, including IE (Internet Explorer), impose a per-server connection limit was imposed to reduce overload on servers. This was introduced back when the web was exploding and browsers opened up connections willy-nilly and made server operators cry. Often. The limitation imposed by IE (two connections per host) was harsher...


posted @ Friday, September 05, 2008 4:19 AM | Feedback (5)

If Kernighan were a network architect he would say...

My brother sent over a question to Don and I on a coding problem he's having. Yes, most of my family members are geeks, thank you. You can probably blame that on my COBOL-coding mother. In any case, his signature always contains this lovely quote from Brian Kernighan: Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it. That got me thinking about network topology and...


posted @ Wednesday, September 03, 2008 9:28 AM | Feedback (1)

Bursting the Cloud

The cloud computing craze is leading to some interesting new terms. Cloudware and cloudbursting are two terms I particularly like for their ability to describe specific computing models based on cloud computing. Today we're going to look at cloudbursting, which is basically a new twist on an old concept. Cloudbursting appears to be to marry the traditional safe enterprise computing model with cloud computing; in essence, bursting into the cloud when necessary or using the cloud when additional compute resources are required temporarily. Jeff at Amazon Web Services Blog talks about the inception of this term as applied...


posted @ Wednesday, September 03, 2008 5:10 AM | Feedback (1)

Dear Data Center Guy

You walked past me again today without stopping. I remember when you used to stop and admire my glowing red ball every day. But that was back when I was brand new and you thought I was the center of your data center. I heard you talking to some friends about looking for a web acceleration solution yesterday. You were going to a meeting about it later that afternoon and you were so excited it was almost like old times, until you pointed me out on the way by and said, "Oh yeah, there's our load balancer." ...


posted @ Friday, August 29, 2008 4:05 AM | Feedback (2)

The Best Post on Latency You Will Ever Read

No, it's not this one. It's not even mine. It's this one on High Scalability written by Todd Hoff. Not only does he explain latency and its sources, but its costs. Then he goes on to offer a plethora of ways to reduce latency. A couple of suggestions he offers are: Use a TCP Offload Engine (TOE). TOE tech offloads the TCP/IP stack from the main CPU and puts it on the network controller. This means network adapters can respond faster which means faster end-to-end communication. Network adapters respond faster because bus...


posted @ Monday, August 25, 2008 8:49 AM | Feedback (0)

I do not think that word means what you think it means

Greg Ferro over at My Etherealmind has a, for lack of a better word, interesting entry in his Network Dictionary on the term "Application Delivery Controller." He says: Application Delivery Controller (ADC) - Historically known as a “load balancer”, until someone put a shiny chrome exhaust and new buttons on it and so it needed a new marketing name. However, the Web Application Firewall and Application Acceleration / Optimisation that are in most ADC are not really load balancing so maybe its alright. Feel free to call it a load balancer when the sales rep is on the ground, guaranteed to...


posted @ Friday, August 22, 2008 4:49 AM | Feedback (7)

Is your epic application being dragged down by green shoes?

My son was bemoaning the fact that while his WoW (World of Warcraft, a.k.a. Digital Crack) character has "epic" shoulders (that still cracks me up), he's still wearing green shoes. Of course I asked what that meant because he made "green shoes" sound like some kind of digital disease. Apparently in WoW (I am a gamer, but I stick to table-top games. MMORPGs hold little fascination for me) the power and effectiveness of items are represented by color. Green shoes are magical, but they're only one step away from "the shoes you left home to...


posted @ Wednesday, August 20, 2008 4:31 AM | Feedback (2)

All your control are belong to us

Abhik, in a reply to "Why can't clouds be inside (the data center)?" says that "the whole point (and primary benefit) of cloud computing is that someone else manages the computing resources. That set of resources is drawn as a cloud in a network diagram because you, the developer or the company using cloud resources, neither knows or cares to know the specifics of the computing infrastructure. An in-house cloud would require procurement, management, maintenance and continuous cost even during idle time -- it is just a grid." Is it? Is that the primary reason enterprises might be considering cloud computing?...


posted @ Wednesday, August 20, 2008 3:46 AM | Feedback (0)

Why can't clouds be inside (the data center)?

Ken Oestreich of the Fountainhead blog has an interesting take on cloud computing. Ken cites many examples of cloud computing experts who essentially claim that cloud computing cannot be done "inside" the data center. Then he postulates that yes, yes in fact it can. In general, I agree with Ken's assessment. A CRM (Customer Relationship Management) system is still a CRM whether it's hosted inside the data center or remotely by a SaaS (Software as a Service) provider. Similarly, a cloud is still a cloud regardless of whether it's implemented in someone else's data center, such as Amazon,...


posted @ Tuesday, August 19, 2008 9:40 AM | Feedback (7)

Reliability does not come from SOA Governance

An interesting InformationWeek article asks whether SOA intermediaries such as "enterprise service bus, design-time governance, runtime management, and XML security gateways" are required for an effective SOA. It further posits that SOA governance is a must for any successful SOA initiative. As usual, the report (offered free courtesy of IBM), focuses on SOA infrastructure that while certainly fitting into the categories of SOA intermediary and governance does very little to assure stability and reliability of those rich Internet applications and composite mashups being built atop the corporate SOA. Effective SOA Requires Intermediaries via InformationWeek ...


posted @ Monday, August 18, 2008 5:00 AM | Feedback (1)

What's the difference between a web application and a blog?

Nothing. At least not from an attacker's perspective. A blog is an individual content management system, requiring storage (either database or flat file) and the ability to write to that storage. Comments allow discussion but also require access to files and or databases. It's an app, and that means it comes with all the baggage today's web applications necessarily come with: vulnerabilities. Those vulnerabilities are likely to become more visible as more organizations adopt blogging and other Web 2.0 applications in the next two years. Analyst firm Gartner recently highlighted 27 technologies in its 2008 Hype Cycle for...


posted @ Wednesday, August 13, 2008 3:35 AM | Feedback (3)

Layer 7 Switching + Load Balancing = Layer 7 Load Balancing

Modern load balancers (application delivery controllers) blend traditional load-balancing capabilities with advanced, application aware layer 7 switching to support the design of a highly scalable, optimized application delivery network. Here's the difference between the two technologies, and the benefits of combining the two into a single application delivery controller. LOAD BALANCING Load balancing is the process of balancing load (application requests) across a number of servers. The load balancer presents to the outside world a "virtual server" that accepts requests on behalf of a pool (also called a cluster or farm) of servers and distributes those requests...


posted @ Tuesday, August 12, 2008 4:44 AM | Feedback (2)

Redefining SOA

We all know that SOA stands for Service Oriented Architecture, right? Gaurav Sharma over at Infosys-Oracle has another definition of SOA and it really fits well with both the business and IT goals surrounding SOA. Gaurav redefines SOA as Scalable, Open, and Adaptable, and then walks through how Oracle solutions fit this definition. This actually makes a lot of sense, because open and adaptable are inexorably tied to SOA as an architectural methodology. SOA is built on open standards like SOAP, WSDL, and XML and its meta-data driven execution style is highly adaptable, making it flexible or, in...


posted @ Thursday, August 07, 2008 5:20 AM | Feedback (0)

Server Virtualization versus Server Virtualization

No, that's not a typo. That's the reality of virtualization terminology today: a single term means multiple technology implementations. Server virtualization is used to describe at least two (and probably more) types of virtualization. 1. Server virtualization a la load balancing and application delivery 2. Server virtualization a la VMWare and Microsoft Server virtualization as implemented by load balancers/application delivery controllers is a M:1 virtualization scheme. An application delivery controller like BIG-IP can make many servers look like one server, a virtual server. This type of server virtualization is used...


posted @ Thursday, August 07, 2008 4:14 AM | Feedback (9)

Compliance in the Cloud

Who is responsible for security in the cloud? Let's say you just developed a web app through which customers can order widgets. You're pretty sure your widgets are going to be the hit of the year and you want to make sure that you don't suffer outages and performance issues like many retailers have in the past, especially around Black Friday. So you've decided to take advantage of the fact that a cloud computing provider can and will shoulder the responsibility for scaling your application even in the face of hundreds of thousands of customers knocking on your...


posted @ Tuesday, August 05, 2008 4:56 AM | Feedback (0)

Is Your Cloud Opaque or Transparent?

Cloud computing promises customers the ability to deliver scalable applications on-demand without the overhead of a massive data center. The visibility - and flexibility as well as control - you have into and over the cloud computing environment depends on whether the provider you select offers an opaque or a transparent cloud computing environment. OPAQUE CLOUD COMPUTING MODEL In an opaque cloud computing model all details are hidden from the organization. The hardware and software infrastructure details are not necessarily known or controlled by the organization but are completely managed by the cloud computing provider. This allows for a completely...


posted @ Monday, August 04, 2008 5:04 AM | Feedback (4)

Wanna know a secret? You can consolidate servers by using acceleration technologies

Forrester Research recently conducted a survey on virtualization, citing server consolidation as one of the primary drivers behind the 73% of enterprises already or planning on implementing virtualization technology. But virtualization, particularly operating system virtualization, assumes you have additional cycles on servers to spare. In some cases, that's just not true. Your application servers are working as hard as they can to serve up your applications and virtualizing them isn't going to change that fact. But application acceleration technologies can change that, and offer you the chance to consolidate servers. I know that sounds crazy. How can...


posted @ Thursday, July 31, 2008 5:49 AM | Feedback (0)

One Size Does Not Fit All

Outside of the technology world a lot of products are billed as "one size fits all". Anyone who's purchased such a product generally knows, no, no they don't. They're close, but never a truly good fit. Inside the technology world we know better. Software and solutions are never a "one size fits all" proposition, that's why so many business software solutions are "customizable": ERP (enterprise resource planning), CRM (customer relationship management), workflow, automation, and portals. Just about every software solution you can purchase these days takes a customizable approach to actually meeting the needs of the business. ...


posted @ Monday, July 28, 2008 6:46 AM | Feedback (0)

Architecting for Speed

              I'm going to give you an engine low to the ground.               An extra-big oil pan that'll cut the wind underneath you.               That'll give you more horsepower.               I'll give you a fuel line that'll hold an extra gallon of gas.               I'll shave half an inch off you and shape you like a bullet.               When I get you primed, painted and weighed... ...


posted @ Friday, July 25, 2008 11:30 AM | Feedback (0)

Your Stack Trace, Show It To Me

Of all the reasons you need an application delivery controller capable of bi-directional inspection of application data this is one of the best. I was trying to check out the results of a poll on PollDaddy.com and ended up with this beautiful Microsoft .NET error page, filled with so much valuable information that potential attackers must even now be laughing in that "evil genius" laugh you so often hear in retro-cartoons. This error page tells me so many things about the application, it's environment, and its associated infrastructure that it should be a crime to let this information...


posted @ Tuesday, July 22, 2008 8:46 AM | Feedback (6)

Interactive F5 SOA Reference Architecture

I do an awful lot of talking about SOA: problems, challenges, concepts, solutions, security, products. But I don't often present "the big picture", and certainly rarely discuss how F5 and SOA go together like ice-cream and pretzels. I know, that isn't a traditional simile, but if you've ever tried hot pretzels and ice-cream you might agree with me in saying that while they don't sound like they go together they really do, and they do so well. It's also applicable because when you think of ice-cream you don't immediately think of pretzels, and I'm fairly certain...


posted @ Tuesday, July 22, 2008 4:17 AM | Feedback (0)

Does your virtualization strategy create an SEP field?

There is a lot of hype around all types of virtualization today, with one of the primary drivers often cited being a reduction in management costs. I was pondering whether or not that hype was true, given the amount of work that goes into setting up not only the virtual image, but the infrastructure necessary to properly deliver the images and the applications they contain. We've been using imaging technology for a long time, especially in lab and testing environments. It made sense then because a lot of work goes into setting up a server and...


posted @ Monday, July 21, 2008 4:33 AM | Feedback (0)

4 Things You Need in a Cloud Computing Infrastructure

Cloud computing is, at its core, about delivering applications or services in an on-demand environment. Cloud computing providers will need to support hundreds of thousands of users and applications/services and ensure that they are fast, secure, and available. In order to accomplish this goal, they'll need to build a dynamic, intelligent infrastructure with four core properties in mind: transparency, scalability, monitoring/management, and security.  Transparency One of the premises of Cloud Computing is that services are delivered transparently regardless of the physical implementation within the "cloud". Transparency is one of the foundational concepts of cloud computing, in that the actual implementation of...


posted @ Thursday, July 10, 2008 5:45 AM | Feedback (4)

3 Reasons not to use Apache mod_rewrite

After reading this discussion on Slashdot regarding an anti-virus agent pretending to be Internet Explorer and flooding sites with requests I waited to see a response come from an Apache fan on using mod_rewrite to detect and stop the flood of useless traffic coming from these robots. It was sure to come, particularly after the first post in the discussion pointed out how to use an iRule to detect and "nuke from orbit" these nasty little requests. I was not disappointed. It's not the case that the solution won't work. It will, and it's certainly a viable solution....


posted @ Monday, July 07, 2008 6:18 AM | Feedback (12)

The Disadvantages of DSR (Direct Server Return)

I read a very nice blog post yesterday discussing some of the traditional pros and cons of load-balancing configurations. The author comes to the conclusion that if you can use direct server return, you should. I agree with the author's list of pros and cons; DSR is the least intrusive method of deploying a load-balancer in terms of network configuration. But there are quite a few disadvantages missing from the author's list. Author's List of Disadvantages of DSR The disadvantages of Direct Routing are: Backend server...


posted @ Thursday, July 03, 2008 4:29 AM | Feedback (10)

Web 2.0: Integration, APIs, and Scalability

Web 2.0 is built on primarily two technologies: AJAX and RSS. AJAX is used to develop interactive, real-time applications while RSS is primarily used as for integration and syndication. Import a feed, share a feed, drag-n-drop a gadget, widget, or component. It's all RSS (XML) today. It's further becoming a requirement of Web 2.0 sites that they provide some sort of API through which developers can write add-on applications. Twitter, Tumblr, Facebook. They all offer APIs that are quite heavily used at this time and startups are following suit. Other sites offer richer media, like video or slideware,...


posted @ Tuesday, July 01, 2008 4:53 AM | Feedback (1)

Articulate: Web 2.0 and The Impact on the Network

Been wondering what the impact of Web 2.0 on the network might be? Click on over to this Articulate presentation and find out! You'll discover how Web 2.0 applications and its associated technologies affect the network, and what you can do about it.  Technorati Tags: MacVittie,F5,Web 2.0,networking,application delivery,challenges,presentation


posted @ Friday, June 27, 2008 10:01 AM | Feedback (0)

SlideCast: Scaling Web 2.0 with Application Delivery

  | View | Upload your own   If you prefer, you can listen to the audio as a podcast. Get the Flash Player to see this player. Technorati Tags: MacVittie,F5,Web 2.0,application delivery,slideshare,presentation,podcast,audio


posted @ Friday, June 27, 2008 9:57 AM | Feedback (0)

The Role of the Application Delivery Controller in Multi-Tenant Applications

Multi-tenant applications are extremely popular in the SaaS (Software as a Service) world. Almost all SaaS delivered CRM (Customer Relationship Manager) and SFA (Sales Force Automation) applications are necessarily multi-tenant. These applications use a meta-data driven model to enable the customization of applications on a per customer basis. This allows the provider to deploy a single application to scale vertically, supporting a wide variety of industries with a single code base. In order to scale horizontally, however, it is necessary to deploy multiple instances of that single code base. To enable a scalable architecture to properly support (hopefully)...


posted @ Tuesday, June 24, 2008 5:35 AM | Feedback (0)

Green IT: More is Less

One of the primary tenets of environmentalism is that we ought to minimize waste. When we apply these concepts to "green" computing initiatives, we often translate that to mean we need to waste fewer resources - RAM, CPU, and storage. A golden rule of IT over the past decade was to not run critical infrastructure past an acceptable point of resource usage, usually somewhere between 60 and 70 percent of CPU utilization. Green IT, however, tells us that we ought to push that limit further and stop wasting those resources. Whether we achieve more efficient use of those...


posted @ Monday, June 23, 2008 10:53 AM | Feedback (0)

6 Reasons You Need an Application Delivery Controller Now

Application delivery controllers, and load balancing in general, are often seen as solutions waiting for a problem to solve. We know what those problems are, but until we experience them we often don't feel a sense of urgency in acquiring and deploying an application delivery controller. While it's certainly true that an application delivery controller can solve many problems that arise, it's also true that there are benefits to acquiring and deploying an application delivery controller before it becomes absolutely necessary in order to save your application, your site, or your job. So here are six...


posted @ Wednesday, June 18, 2008 7:59 AM | Feedback (0)

Application Acceleration 2.0 : Breaking Browser Limitations

Several years ago it became necessary for browsers to put limitations on the number of simultaneous connections allowed not only to be open, but how many of those could be open to a single domain. This helped prevent unintentional (and, in some cases, intentional) denial of service situations where a site's poor web server just couldn't keep up with the demand. After all, managing TCP/IP connections is expensive and if one user hogs all the available connections (as determined by web server configuration and RAM) there may be hundreds of users out there that are denied access to the latest...


posted @ Tuesday, June 17, 2008 8:00 AM | Feedback (0)

What Dungeons & Dragons and Application Delivery Have in Common

Yes, I've got gaming on the brain after this month's release of the latest edition of D&D and a weekend with friends "geeking" out with polyhedral dice and imaginary monsters. You might recall that Don stood in line at midnight earlier this month to pick up our copy of the newest (4th) edition of Dungeons & Dragons (D&D). Since then we've been dissecting the game, noting its similarities and differences from earlier versions. Bemoaning the loss of some features while nodding our heads appreciatively at some of the other changes. It took me most of...


posted @ Monday, June 16, 2008 5:44 AM | Feedback (1)

Load Balancing: Welcome to the 21st Century

Kevin Saitta, a solution consultant, has a nice blog post on architecting a Microsoft BizTalk 2006 R2 solution. Unfortunately, amidst the goodness, is a statement regarding load balancers that needs to be corrected. Kevin is not alone in his beliefs regarding load balancers, unfortunately, I've seen a lot of posts lately that seem to indicate that folks out there still have a circa 1999 knowledge set regarding the capabilities of load balancers. Kevin writes Load Balancer A load balancer balances the load between servers, but more importantly, if one server...


posted @ Wednesday, June 11, 2008 5:12 AM | Feedback (0)

Top 3 Lessons We Can Learn from Amazon's Outage

Everyone's now familiar with last week's Amazon outage, it's been all over the web. Amazon is still not detailing what went wrong, but lots of folks are speculating on the reasons for the failure. Alistair Croll over at gigaom had a nice recap of the recent Amazon outage, including a list of facts and what we can deduce them, and the rumor mill is, of course, churning away with fantastic stories of what went wrong. Rather than add to the speculation on the reasons behind Amazon's outage - because we may never know the truth - it's a...


posted @ Tuesday, June 10, 2008 5:50 AM | Feedback (1)

Where art thou, Internet?

In an interesting, if not annoying to those affected, situation it appears that Windows XP SP3 has been named the culprit in a string of broadband router crashes and reboots. This is obviously causing a great deal of stress to those affected, who must certainly find it difficult to obtain the necessary firmware upgrades released by the router manufacturer without access to the Internet. Dan Warne writes: Broadband modem/router maker Billion says XP SP3 has been causing its BiPAC 5200-series routers to go into a constant crash and reboot cycle. ...


posted @ Monday, June 09, 2008 5:08 AM | Feedback (0)

Sessions and Cookies and Persistence, oh my!

At some point (you hope!) it becomes necessary to implement load-balancing for your applications. So you went out and got one, either from a hardware vendor or maybe downloaded a solution, and put it into place. Now you're ready to go, right? Maybe not just yet. Do your applications require persistence? Yes? You did remember to validate that your solution is capable of performing persistence-based load-balancing, didn't you?  If you're shaking your head wondering why this application thing is important to load balancing, read on. Persistence is one of the best examples of why it's so...


posted @ Wednesday, June 04, 2008 4:50 AM | Feedback (0)

Sharing Knowledge: Application Ready Networks

I was out trying to trim the hedges the other day, and doing...poorly. I tried, I really did, to make them as neat as the guys I hired last year, but alas, I just couldn't. Oh, it's "good enough", that's for sure, but it isn't as good as it could be. And when I went to clean up the landscaping - picking up small pieces of hedges and leaves - I couldn't help but think that those guys had some kind of secrets to doing this much more efficiently than I. Which got me thinking about application networking....


posted @ Tuesday, June 03, 2008 6:35 AM | Feedback (0)

Making the most of your IP address space with layer 7 switching

Organizations trying to make their presence known on the Internet today run into an interesting dilemma - there's just not enough IP addresses to go around. Long gone are the days when any old organization could nab a huge chunk of a Class A or even Class B network. Today they're relegated to a small piece of a Class C, which is often barely enough to run their business. This is especially true for smaller businesses who are lucky if they can get a /29 at a reasonable rate. While we wait for IPv6 to be fully adopted...


posted @ Wednesday, May 28, 2008 6:38 AM | Feedback (0)

Built to fail

Individual servers in a farm may be expected to fail, but the site - that's a different story Tom's Hardware has an interesting look at an architecture I'm going to call "built to fail". This architecture is focused on building a fault tolerant site, not necessary a fault tolerant web application infrastructure. While the author of the article implies that this architecture is something new, it's really not except in the sense that today's Web 2.0 app providers might not care if a server is lost because it's cheap to replace while other, more cost conscious organizations...


posted @ Tuesday, May 27, 2008 5:00 AM | Feedback (0)

HTTP: The de facto application transport protocol of the Web

When the OSI defined its model it included a transport layer which was supposed to handle end-to-end connections and address communication reliability. In the early days of the web HTTP sat at the application layer (layer 7) and rode atop TCP, its transport layer. An interesting thing happened on the way to the 21st century; HTTP became an application transport layer. Many web applications today use HTTP to transport other application protocols such as JSON and SOAP and RSS. Applications now "speak" using a variety of languages to communicate, but underlying them all is HTTP. This...


posted @ Wednesday, May 21, 2008 5:41 AM | Feedback (6)

Accelerating AJAX

If you've ever used the quite popular Prototype framework, you've noticed that there are some unique options available that are designed to help reduce the number of connections made to the server when automatically updating specific content. The decay rate in Prototype's PeriodicalUpdater is designed to help reduce the number of requests made to the server when content is not refreshing on every request.         Ajax.PeriodicalUpdater("content-id", "url", { frequency: 10, decay: 2, method: 'get'} ) This code will start making a call to url and updating content-id every 10 seconds. If the content hasn't changed, decay will...


posted @ Tuesday, May 20, 2008 4:36 AM | Feedback (0)

Some requests are more equal than others

This is an interesting little article on load balancing that's very close and yet very far from being completely accurate in today's world. Overall the author does a good job of hitting upon the basic concepts of load balancing, why it's important, and what some of the benefits are. But there's just one thing that I absolutely must address. Even distribution? Load balancing is the even distribution of computer processing and communication activities so that a server is not overwhelmed. Load balancing is especially important for networks where it is difficult to predict the number of...


posted @ Monday, May 19, 2008 9:43 AM | Feedback (0)

Silos belong on farms, not in IT

The role of "application delivery expert" is really coming into its own of late, along with the understanding that the traditional siloed approach to management of applications in IT no longer makes sense. TechTarget :: How networking professionals can prove their worth Jim Metzler [vice president of Ashton, Metzler & Associates] recently worked with NetQoS to survey more than 175 NOC and non-NOC IT professionals about how the evolving role of the NOC affects both network and IT professionals. Metzler moderated several sessions at Interop that had...


posted @ Wednesday, May 14, 2008 11:29 AM | Feedback (0)

Microsoft's Live Mesh: The "Killer App" for Application Delivery?

At Web 2.0 Expo Microsoft essentially stole the show with the introduction of its Live Mesh platform. Live Mesh is, essentially, an integration hub that incorporates and manages Internet connected devices that today are unrelated and managed individually using open standards. Microsoft might not like the term "integration hub", but that's basically what it is. Yes, on the surface it's a platform that enables inter-device communication and seamless access to a variety of services, but under the hood it's got to be doing some pretty complex integration work. While Microsoft plans on using open standards, that doesn't mean...


posted @ Tuesday, May 13, 2008 7:06 AM | Feedback (0)

What OS Virtualization and Christmas Lights Have in Common

Anyone who's listened to Bob Rivers' Twisted The Twelve Pains of Christmas can probably relate to the angry husband screaming, "When one light goes out they all go out!" because, yeah, we've all been there. Imagine now, if you will, a data center. A data center filled with servers humming along, each running three or four applications in virtual machines a la VMWare. Imagine now - it shouldn't be hard at all - that one of those servers suddenly just stops working. Let's say the drive crashes. After the blue smoke dissipates and the screams of...


posted @ Tuesday, May 13, 2008 6:07 AM | Feedback (0)

(Security) Thunder from Down Under

This is an interesting article from Network World about how CIOs in Australia and New Zealand perceive security as being easier than reducing costs. The IDC Annual Forecast for Management report surveyed 363 IT executives from Australia (254 respondents) and New Zealand (109 respondents) across industries including finance, distribution, leisure and the public sector. CIO Challenges   ...


posted @ Friday, May 09, 2008 8:15 AM | Feedback (0)

Green IT: You don't have to sacrifice speed

The Green Tech Blog on CNET News postulates that the next green trend will be to s l o w down the innertubes, or more accurately, the flow of data. Now that slow down is apparently measured in terms of milliseconds, and is "not enough for Web surfers to notice" according to researchers. But as we recently discussed, milliseconds at every hop can potentially add up to seconds, and seconds will certainly be noticeable by Web surfers - particularly those who might be engaged in sensitive financial transactions like selling and buying stocks. And we won't even discuss the...


posted @ Wednesday, May 07, 2008 11:04 AM | Feedback (0)

A Virtual Challenge

According to a recent CIO article and survey data, the top challenge to virtualization success today is balancing server workloads and maintaining application service levels.  That makes sense; if you're going to create 3 or 4 or 99 virtual servers you need to be sure that the workload isn't going to suck dry the resources available on any particular machine. And, too, you'll probably need some solution to load balance those applications across virtual instances. That part, at least, seems easy: get thee a load balancer, pronto. Turns out that the concern regarding balancing server workloads is more complex than most likely realize. A load balancer will,...


posted @ Tuesday, May 06, 2008 6:38 AM | Feedback (0)

Green IT: Reduce, Reuse, Recycle

There's more than one way to go green with application delivery networks The past few months have seen a high volume in the number of "green" products announced, many of them in the application delivery realm. Almost universally these announcements have focused on the products themselves as a method of reducing power consumption both in power required to run the device and in lessening the amount of heat generated that requires cooling. But there's another way to "go green" with application delivery, one that doesn't necessarily rely on the application delivery controller being "green" itself. The Three "R"s ...


posted @ Monday, May 05, 2008 12:19 PM | Feedback (0)

The Shortest Distance Between Two Points

The shortest distance between two points is, according to geometry, a straight line. Unfortunately for everyone, there's no way we can hope to physically have a straight line between us and any server - unless we're in the data center troubleshooting a problem. Whether it's because of physical distance limitations, location, or the device we're using, there's bound to be many points along the path between our client and any given server. But when we diagram network architectures we often obscure in a cloud the actual representation of the network - either because there's just too many devices (the...


posted @ Monday, May 05, 2008 6:52 AM | Feedback (2)

Web 2.0 Expo: Presentation Now Available

I had several requests for access to my presentation at Web 2.0 Expo. Today, the fine folks at O'Reilly indicated that the presentation is now available for download. Enjoy! Imbibing: Mountain Dew Technorati tags: MacVittie, F5, presentation, Web 2.0 Expo, application delivery, scalability, Web 2.0


posted @ Tuesday, April 29, 2008 8:36 AM | Feedback (0)

Web 2.0: What Lies Beneath

The dirty secrets of Web 2.0 There's something a lot of people don't want you to know about Web 2.0. People who are trying to sell you on Web 2.0 as the greatest thing to hit technology since the first web page appeared at CERN. And while undoubtedly Web 2.0 is having a huge impact on organizations across a broad spectrum - from the enterprise to startups - when you peek under the covers you may be surprised to learn that things haven't changed all that much. Oh, Web 2.0 appears magical indeed but from the view of an...


posted @ Monday, April 28, 2008 7:05 AM | Feedback (0)

Web 2.0 Expo: HTTP is not scalable?

The second session I attended today was hosted by Blaine Cook (formerly of Twitter) and discussed the problems inherent in building the real-time web. His reason for dismissing HTTP as a method for building the real-time web: hard to scale for frequent updates and frequent polling. I call shenanigans. HTTP is not hard to scale in those situations if you have the right infrastructure. In fact, just about every application delivery controller in existence can easily scale HTTP - even under circumstances described by Blaine. The frequency of updating and polling is similarily a problem with any real-time web application,...


posted @ Wednesday, April 23, 2008 3:28 PM | Feedback (2)

San Francisco Here We Come

All 8500 (or so) of us Well, tomorrow I'm off to San Francisco for the Web 2.0 Expo. Apparently a lot of folks are going to be there (estimates are in the 8500 range) so this ought to be an interesting and well-attended show. That's not too surprising given a recent Forrester report that claims: "As a standard enterprise tool, Web 2.0 has a bright future, one that companies are expected to spend $4.6 billion by 2013 to integrate into their corporate computing environments." That's a lot of cash to be spent on Web 2.0 in general, and the Web 2.0...


posted @ Monday, April 21, 2008 9:59 AM | Feedback (0)

Wanted: Application Delivery Network Experts

On the heels of seeing a job posting for an Application Delivery Support Analyst this ComputerWorld article lists "Application Delivery" as #5 of the top 10 IT skills needed today. Unlike the job posting, this article actually seems to get the role of an application delivery expert right. While the author only cites the appropriate skills in general terms, at least she hit on all three of the primary categories and, to my surprise, added in the rarely cited fourth domain of application delivery: storage. Application delivery networks, according to Gartner, are required if companies want to deploy...


posted @ Friday, April 18, 2008 12:21 PM | Feedback (0)

Web Acceleration: Web Server versus ADC

This is an interesting, albeit very short, post on web acceleration options. The author, Todd, gives a pretty quick "hit list" of reasons to use hardware (such as an application delivery controller) over the built-in capabilities of your web server: 1. Compression 2. Caching 3. TCP enhancements (optimizations) There are additional benefits to using a hardware solution with specific features/functionality that address web acceleration that Todd doesn't mention, perhaps because these options are not necessarily available for web servers and operating systems. 1. Better browser control. Many web application acceleration products are capable of manipulating the...


posted @ Thursday, April 17, 2008 9:02 AM | Feedback (0)

When Your Site Gets Slashdotted, Don't Get Farked

Anxiety's attacking me, and my air is getting thin.I'm in trouble for the things I havent got to yet.I'm chomping at the bit, and my palms are getting wet, sweating bullets. --Megadeth, "Sweating Bullets" If you can relate to the kind of stress and anxiety sung about by Megadeth - and it's coming from the workplace - you aren't alone. Last fall InformationWeek ran a short story based on a survey they conducted and concluded that "two out of three IT managers say they're kept awake at night worrying about work, and 75% admit ongoing anxiety about application performance concerns."...


posted @ Wednesday, April 16, 2008 6:19 AM | Feedback (0)

Hi-ho, Hi-ho, to Web 2.0 I go

[ Imagine seven dwarves whistling the appropriate tune here ]  Despite Disney's insistence that the plural of dwarf is dwarfs, the rules of English and the Dungeons and Dragons Player's Handbook (PH) says it is dwarves. As the PH is obviously the authoritative source on demi-human races, it wins. Besides, dwarfs is a verb, dwarves is a noun. 'Nuff said. The point of this post is not really to engage in a grammar war regarding dwarves and spelling, it's about the upcoming Web 2.0 Expo (April 22-25). I'm starting to think more about the conference as it's approaching quickly and...


posted @ Friday, April 11, 2008 11:21 AM | Feedback (1)

"Application Delivery" Role Missing "Delivery" Focus

Like many people, I scour the Internet using Google Alerts that focus on keywords pertinent to my employer's business. Just this morning a digest from Google searching for the term "application delivery" landed in my inbox with an interesting job title: Application Delivery Support Analyst. My first thought was "Hey, that's cool!" I haven't seen such a title before and I got a little excited thinking that perhaps application delivery was finally coming into its own. Then I read the requirements and job description. Technical Skill sets Experience using SQL/ PL-SQL, SQLServer and Oracle to identify and...


posted @ Tuesday, April 08, 2008 10:59 AM | Feedback (0)

Web 2.0: Putting lipstick on a pig means you need a .plan

Do you have a .plan for your .com? You should. Remember when users had a .plan? When the screech of a modem was the most annoying sound you'd hear while online? When multiplayer interaction meant joining a MUD, MOO, or MUSH? When FTP was the only way to transfer files, and if you wanted to chat you'd hop on #IRC? When discussions were for newsgroups, if you ignored alt.binaries.pictures.anything, which was certainly not for discussions. It wasn't necessarily the proliferation of broadband that caused a massive leap in users on the Internet. Just as there are plenty of...


posted @ Thursday, April 03, 2008 4:09 PM | Feedback (0)

Web 2.0: Driving Adoption of Firefox?

Matt Asay has an interesting post regarding the adoption of Firefox in the enterprise. According to a recent Forrester study, Firefox has garnered an 18% market share in that space in the US with an even larger share in Europe. Matt postulates that one of the drivers for adoption of Firefox is better performance. While he cites an evaluation of improved memory consumption as evidence of better performance, I'm willing to assert that it goes beyond simply memory consumption and into the realm of rendering speed and time to retrieve content. For example, modern browsers render content as it...


posted @ Tuesday, April 01, 2008 1:55 PM | Feedback (0)

What a Tangled Web We Weave

By deploying multiple point solutions when one would suffice I know it doesn't rhyme but honestly, between the number of words that rhyme with "weave" and the meter it was nearly impossible for my sleep deprived brain to come up with one that made sense. Feel free to come up with one and add it via the comments or mail me. Now it's time for a little story: In the beginning OSI created a model. Now the network was formless and empty, darkness was over the optical connections, and the spirit of the OSI was hovering over the web. ...


posted @ Tuesday, April 01, 2008 11:32 AM | Feedback (0)

You say "Late", I say "Delayed"

The language of application delivery and SOA finally meets in the middle Ronald Schmelzer at ZapThink wrote a recent ZapFlash titled, "Why Service Consumers and Service Providers Should Never Directly Communicate." Yes, I agree, the title is way too long, but you should read it anyway. The basic premise of this one is that there is a need for a service proxy to protect your investment in SOA. I'll save my kudos and comments for another post, but in general I agree with Ron and his vision of SOA and the need for a proxy/intermediary to prevent the loss...


posted @ Tuesday, March 04, 2008 9:33 AM | Feedback (0)

Don't just balance the load, distribute it

Using application fluency and layer 7 routing to implement of an efficient, scalable, and cost-effective application architecture There is a subtle difference between the word balance and distribute. Balancing implies a simple decision process. If I have three boxes and three people, I give one box to each person in order - regardless of the weight of those boxes and the ability of the people to carry them. Distribution, on the other hand, implies some form of intelligence behind the decision process. I give the boxes to the people most capable of carrying their weight so that no person gets overloaded...


posted @ Wednesday, February 27, 2008 10:15 AM | Feedback (2)

Imagine No More

It's been a month of imagining a lot of changes in the way we think about application delivery networks. Imagining unmatched performance, manageability of a system that's both green as in cash as well as in grass, and intelligence beyond what is currently available in most of today's application delivery controllers. It's been a long road to get here, but it's finally arrived: a bladed, chassis-based application delivery controller from F5. That's right - bladed and modular and with all the flexibility and intelligence you've come to expect from F5 combined with performance that's counted in the millions of transactions per...


posted @ Wednesday, January 23, 2008 9:52 AM | Feedback (1)

Imagine...Intelligence

Every morning while I drink my allowed daily allowance of caffeine I peruse through my news and blog feeds via Google Reader. I expect, and am not disappointed, to find that those items I marked as "read" yesterday are still marked as such, and that those I "starred" for follow up are also still marked as such. And of course every feed I've subscribed to still exists, just as it did the night before. This seems like a trivial thing, because we've come to expect that our web applications are intelligent enough to remember our personal settings and configuration....


posted @ Wednesday, January 16, 2008 2:25 PM | Feedback (0)

iRules: Ask and ye shall receive

Erik Dafforn recently posted his Webmaster Wish List for 2008. What it sounds like is that Erik is really asking for tools that make it easier to configure web sites and, more specifically, how web servers respond to requests. What's interesting about his list is that most of his wish list can easily be answered with the implementation of a simple iRule on BIG-IP Local Traffic Manager. For example, you might have pages such as www.companyname.com/products/ and www.companyname.com/products/index.aspx. Typically, these URLs contain exactly the same content, but due to inconsistent linking throughout the site (and from third-party sites),...


posted @ Friday, January 11, 2008 1:42 PM | Feedback (6)

Imagine...Manageability

We don't often consider the impact of manageability of technology in our daily lives, even though it's become an integral part of just about every aspect of our lives. Likely most prevalent amongst technology management issues is how we deal with our home entertainment systems. From a desire to manage all the devices that deliver and control various forms of media - cable, DVDs, games, etc... - with a single, intelligent mangement device evolved what we like to call the "universal remote". These little management devices are able to control every component comprising our home entertainment system, greatly reducing the cost...


posted @ Wednesday, January 09, 2008 2:31 PM | Feedback (0)

Availability and the Rise of the Mashup

Google. Amazon. Facebook. LinkedIn. Salesforce.com. While certainly not an all inclusive list, these very recognizable web monsters all offer access to their "platforms" via a web-based API, a.k.a. services. With the notable exception of Salesforce.com, most have implemented these services as a REST (Representational State Transfer) or REST-like set of interfaces, but in general these APIs meet the criteria necessary to be referred to as services. They're SOA as surely as any other service out there. These services are being incorporated at a rapid pace into other web-based (dare I say Web 2.0) applications, and a plethora of others...


posted @ Friday, January 04, 2008 10:09 AM | Feedback (0)

Imagine...Performance

Every industry measures performance, we just use different jargon to discuss it. When we talk about the raw power of a car engine we talk in terms of horsepower; of harnessing the performance of hundreds of horses such that they work together as a single unit. In the world of computing we use terms like MIPS (million instructions per second), and in the world of application delivery we measure performance in terms of transactions per second (TPS). The problem in the world of computing is, unfortunately, that simply adding more "horses" to the mix doesn't linearly increase performance. Generally...


posted @ Wednesday, January 02, 2008 2:12 PM | Feedback (0)

Isn't That Just a Bunch of Templates?

An analyst friend of mine recently asked about F5's Application Ready Networks. The question was, "Isn't that just a bunch of templates?" Now it's true that this particular analyst friend is not an application analyst, so the question was a good one coming from his background, but it got me to thinking that if he was confused, maybe others were as well. So what's an Application Ready Network anyway? F5 has a long history of deep strategic partnerships with application vendors like Oracle, BEA, Microsoft, and SAP. Through these partnerships, and F5's comprehensive technology center in Seattle, our...


posted @ Wednesday, December 19, 2007 9:47 AM | Feedback (0)

The Answer is More than just Load Balancing

This was just one of those press releases that was so close to being right and yet was missing half the picture. Chicago-based managed dedicated server provider, SingleHop, Inc., advises shoppers to be prepared to suffer through the dreaded "high traffic volume" warnings this holiday season as retailers may be hit with higher than average website traffic. That's really no surprise, after all I'm fairly certain my shopping alone is enough to cause outages. If you've run into an outage lately, my apologies. I'll be finished shopping shortly. I promise. In any case, Zak Boca, President, SingleHop, goes...


posted @ Friday, December 14, 2007 11:20 AM | Feedback (0)

iRules: Adjusting AJAX-based Update Intervals in Real-Time

You've just deployed a Web 2.0 application that includes an AJAX-based real-time updating component. Maybe it's something like Twitter, or a stock chart, or sports scores. Whatever the content is, you've been hearing from users that sometimes those updates just ... fail. Upon further investigation you might discover - will likely discover - that users for which the updates fail have high-latency or low-bandwidth connections. Or both. You don't want to penalize broadband users for whom the app works just fine, but you don't want to alienate those users stuck on dial-up or poor connections. Worse, you can't know...


posted @ Monday, November 19, 2007 9:26 AM | Feedback (0)

Load Balancing as an ESB Service

Most people, upon hearing the term "load balancing" immediately think of web and application servers deployed at the edge of the network. After all, that's where load balancing is most often used - to ensure that a public facing web site is always as available and fast as possible. What many architects don't consider, however, is that in the process of deploying a SOA (Service Oriented Architecture) those same web and application servers end up residing deeper in the data center, away from the edge of the network. These web and application servers are hosting the services that make...


posted @ Wednesday, November 14, 2007 9:19 AM | Feedback (2)

The Impact of the Network on AJAX

The importance of an application ready network I've been talking a lot about how AJAX and SOA impact the network of late, specificially focusing on the increase in traffic - both the amount of data and frequency of requests. Saturday night I was reminded of how important a properly tuned network can be to applications, especially those based on AJAX. TimeWarner Cable, our only choice in broadband providers, has thoughtfully reconfigured its network as part of a consolidation in the midwest. That shouldn't affect me, it's mostly about routing and such, right? That's what I thought, but it's...


posted @ Monday, November 12, 2007 9:49 AM | Feedback (0)

The Fix Must Occur by Rewriting the Code. Wait, What?

This article is just full of interesting ideas. First we're told that the only way to secure Web 2.0/SOA/Web applications is to rewrite the code. This "rewrite the application code" to address any number of delivery issues - security, performance, availability - is old and busted. There are other more efficient mechanisms that can certainly be used to address application delivery issues, such as an application delivery network comprising appropriate intelligent, application aware devices capable of ensuring that all applications are fast, secure, and available. These solutions do not require that the application be rewritten, and in fact in...


posted @ Tuesday, November 06, 2007 1:22 PM | Feedback (8)

iRules: Simulating RESTful Behavior

One of the premises of REST (Representational State Transfer) is that it is simpler to use well-known HTTP methods (PUT, DELETE, GET, POST) to perform actions upon resources than it is to construct complex SOAP or traditional HTTP-based application messages. REST resources are identified by URI (Uniform Resource Identifiers) that are specific to the resource. For example, instead of retreiving information about a city with a URI something like this: http://www.example.com/getcityinformation.php?city=Madison&state=WI you would use the GET HTTP method along with a URI that looks more like this: http://www.example.com/Madison/WI You could also (ostensibly) use the PUT method to...


posted @ Friday, November 02, 2007 8:54 AM | Feedback (2)

Application Acceleration: To Compress or Not Compress

One of the core components of an application acceleration solution is almost always compression, and almost always implemented using industry standard algorithms supported by the ubiquitous browser. Compression is used as an application acceleration technique to decrease the total amount of data that needs to be transmitted, thereby reducing the total number of packets that must traverse the network. This results in an overall decrease in the amount of data and protocol overhead required which ultimately means the client gets the data faster. Developers and architects might be thinking: "Hey, my web/app server can compress content, I just have...


posted @ Friday, October 19, 2007 8:16 AM | Feedback (6)

Client-side vs Server-side Load Balancing

Lei Zhu @ Digital Web Magazine has an interesting article on Client Side Load Balancing for Web 2.0 Applications. It is interesting in that it presents an alternative mechanism for implementing high-availability without the use of an intermediate load balancing solution. His solution relies solely on the client and takes advantage of the dynamic nature of Web 2.0. The problem with Lei's article is that there are a few assumptions made that are simply inaccurate. Lei contends that the negatives to using an intermediate load balancing solution are: There is a limit to the number of...


posted @ Monday, October 08, 2007 8:28 AM | Feedback (1)

Application Acceleration: Bigger is Not Always Better

More bandwidth can't always solve your application performance problems We have, over the years, come to the realization that application performance issues cannot always be solved simply by increasing the amount of bandwidth available. The concept was inherently flawed from the beginning anyway. You can increase the number of lanes on the highway but that doesn't mean that you'll get to your destination faster, it just means more people can get where they're going in about the same amount of time. This is because there is an upper bound on the speed of a car, just as there is an...


posted @ Thursday, September 27, 2007 1:30 PM | Feedback (4)

Clustering versus load-balancing

What's the difference, really? There are actually quite a few differences, even if you ignore that clustering is generally used to refer to the capability of a software product to provide load-balancing services and load-balancing is often used to refer to a hardware-based (or at least third-party software) solution. Clustering is most often used in conjunction with application servers such as BEA WebLogic, IBM WebSphere, and Oracle AS (10g). So are load-balancing features found within Application Delivery Controllers (ADC) like BIG-IP. In the world of hardware load balancers the term "pool" or "farm" is used to describe a grouping...


posted @ Tuesday, September 25, 2007 4:02 PM | Feedback (2)

Performance vs Reliability

Our own Deb Allen posted a great tech tip yesterday on conditional logic using HTTP::retry with iRules. This spawned a rather heated debate between Don and myself on the importance of performance versus reliability and application delivery, specifically with BIG-IP. Performance is certainly one of the reasons for implementing an application delivery network with an application delivery controller like BIG-IP as its foundation. As an application server becomes burdened by increasing requests and concurrent users, it can slow down as it tries to balance connection management with execution of business logic with parsing data with executing queries against a database with making...


posted @ Thursday, September 20, 2007 9:35 AM | Feedback (1)

The XML Gateway Sandwich

Occassionally I get to chat with the guys in the trenches about ongoing implementations involving BIG-IP. Often these involve deploying BIG-IP in front of XML/SOA gateways for load balancing and high-availability (a la failover) duties, as well as session management capabilities. This is primarily due to a lack of support for these options on the part of XML/SOA gateways combined with the need to horizontally scale out the gateways to deal with high volume throughput. I got to thinking about this deployment scenario during a chat with very smart SOA guys Tony Bishop and Jim Haughton and we decided that...


posted @ Wednesday, August 29, 2007 3:39 PM | Feedback (0)

Follow up: Speeding Up JavaScript

Diving more deeply into the issue of speeding up JavaScript and the load balancing question, Scott Conroy points out: The single URL strategy has a major downside, though it is certainly cleaner than having to deal with many URLs. Since HTTP 1.1 says that user agents and servers SHOULD have only two concurrent connections, requests for multiple resources can easily develop into blocking operations. If, say, I have a page that includes twenty images to download, my browser (in its default config) will only download 2 images at a time. If I put those images on multiple "servers"...


posted @ Monday, August 27, 2007 8:34 AM | Feedback (1)

Speeding Up JavaScript

An interesting article on "How JavaScript is Slowing Down the Web (And What To Do About It)". The basic premise is that Web 2.0 applications like blogs are using so much JavaScript to load widgets and perform other functions that it's causing the initial page load to be s l o w. That's so true. The author has many (okay, there are five) suggestions for improving performance, but one sticks out in my mind, probably because it's core to F5 and its products - and it's not entirely accurate. 3. Load-balance requests by generating different...


posted @ Friday, August 17, 2007 9:55 AM | Feedback (3)

Why Acopia?

There have been a lot of questions about the recent announcement of our intention to acquire Acopia Networks, with the most oft repeated question being "Why?" I'm guessing "why not" isn't an acceptable answer. But before we dive into the why, let me tell you a little story... The Death of a NAS Our home network is always growing. Because Don and I both work from home and he's doing a lot of interesting integration work with Java and iControl and I like to play with interesting ways to use iRules, we have incorporated a BIG-IP into our home network. It fronts several...


posted @ Thursday, August 09, 2007 10:41 AM | Feedback (0)

Performance Impact: Granularity of Services

ZapThink has a great article regarding the granularity of services; that is, how fine or coarse grained services are in terms of the services and interactions available. What is mentioned, but not highlighted, and appears to be somewhat assumed (at least in this article), is that the end-result, regardless of the process used to build services, revolves around business processes. [The] concept of granularity is incredibly important to the enterprise architect because it has a direct impact on two major goals of Service-orientation: the composability of loosely-coupled Services, and the reusability of individual Services in different contexts. Before an architect...


posted @ Friday, August 03, 2007 11:56 AM | Feedback (0)

That's Not Always an Option

Improving the performance of AJAX applications by switching servers isn't always feasible in a real environment It's nice to see the analysis of AJAX I did last year being validated, especially by one of the creators of the popular AJAX-focused toolkit, Dojo. While I agree with Dylan's assessment of where to begin the "search & destroy mission" and the reasons behind poor performance of AJAX-based applications, I just can't get behind his suggestion to switch Web servers simply to resolve highly aggressive polling-based applications. The best place to begin a thorough search & destroy mission is with...


posted @ Tuesday, July 24, 2007 12:57 PM | Feedback (0)

KPiRules

KPI (Key Performance Indicators) are quantifiable metrics that can be measured against organizational goals. KPIs vary from business to business, based on what the company does. If it's a sales oriented company, a KPI might be something like "increase sales by X% year over year"; if it's a retail company it might be both "increase sales" and "increase customer retention". The key is that a KPI must be measurable in some way. That's why most KPIs are directly related to revenue, customer retention/churn, and other quantifiable aspects of doing business. Aggregating this measurable data is generally the responsibility of...


posted @ Friday, July 13, 2007 9:36 AM | Feedback (0)

Relative Speed

When being chased by a dragon, you don't need to be faster than the dragon. You just need to be faster than the halfling behind you. I had a lot of discussions at RSA this past week, and of course some of them centered on performance. One of the challenges often associated with pure proxy-based application anything involves dealing with the argument that proxies degrade performance, especially in something as intense as an application firewall. That's because of the associated computational cost of buffering input, reassembling packets, and parsing through data in addition to the requirement of managing TCP connections...


posted @ Monday, February 12, 2007 12:49 PM | Feedback (0)

SOA Performance: Round II

No Service is An Island No one has ever claimed that processing of XML was speedy. Indeed, my reaction to the results of the first test I ever conducted on SOA Security Gateways back in 2003 was to test them again. And again. It turns out that this was actually okay, as a subsequent review of the application servers these devices were protecting weren't capable of keeping up anyway. But that was back in 2003, right? Things have gotten better, haven't they? Well, yes and no. Another round of testing in 2005 showed that while the devices offloading XML processing...


posted @ Friday, January 19, 2007 12:09 PM | Feedback (0)

SOA and Performance

Is the pipe half-full or half-empty? David Linthicum does a good job of pointing out the factors that can affect performance of your SOA in his recent Real World SOA entry: When to Consider SOA Performance. I particularly liked rule #3: "Third, use of too many fine grained services may cause performance problems. Indeed, you should not be afraid to leverage fine grained services within your SOA. However, you need to understand the performance issues with doing so, taking careful consideration of the network bandwidth and how other applications leverage the services." You should indeed take the network into careful consideration when...


posted @ Wednesday, December 20, 2006 1:27 PM | Feedback (0)