Or: How the Military Can Use a Content Delivery Network (CDN)
By ENS William McGough, USN
ENS William McGough will speak at the San Diego chapter of Disruptive Thinkers on Monday, September 23rd at 7pm at the Co-merge workspace. This post was inspired by a question on the application for this year’s U.S. Chief of Naval Operations Rapid Innovation Cell (CRIC): “If you had $1 million and 18 months to change the Navy, what would you do, and how would you accomplish it?” We will be running additional innovative ideas in this series in conjunction with the CRIC’s new discussion forum “The Whiteboard.”
What is a CDN?
Several years ago, leading internet companies began to encounter a problem. As broadband internet became increasingly available, consumers’ demand for digital content likewise increased. However, in spite of the new speed afforded by end-users’ high-speed connections, content providers found it difficult to supply their data at the high-speed rates consumers could now handle and expected.
This problem resulted from the way the internet is organized. There is no direct connection between your computer and the server hosting the website you are accessing. Instead, an indirect connection is established via several intermediate servers. A similar arrangement is found in air travel, in the same way you might connect through a “hub” airport to fly to a regional airport not serviced by a direct flight. As in the analogy, the actual travel between hubs is quite rapid, occurring at the speed of light via fiber-optic connections. However, delay occurs at the hubs in a process called switching, where incoming data is analyzed for completeness and then retransmitted along the best-calculated path to its destination.
To solve this problem, the technology industry borrowed a technique from the military: forward staging/basing. Militaries often send soldiers and supplies to a base near an area of anticipated action (so that the troops can arrive on final station rapidly and with very little advance notice). Similarly, technology companies began to set up geographically-distributed servers which could transmit their content to nearby end-users much more rapidly than a more-distant central server could. These servers became known as Content Delivery Networks (CDNs). To use Netflix as an example, the company has even begun placing its CDN servers directly in the offices of local Internet Service Providers (ISPs) creating an almost-direct connection between their customers and their content.
Why does the Navy need a CDN?
At the time of writing, the rapid delivery of high-definition TV programs was not one of the CNO’s three tenets, nor could it be found in his more-exhaustive Sailing Directions. So, this raises the question: why would the Navy want or need a CDN? The answer is simple. Bandwidth at sea is very limited and demand for bandwidth is ever-increasing.
There are two potential approaches to this problem: 1) launch newer satellites in greater numbers or 2) make smarter use of bandwidth. In any fiscal environment, let alone a constrained one, the Navy/DoD can only afford to launch a limited number of billion-dollar communications satellites. Therefore, it is prudent to examine how to maximize the use of existing bandwidth. And, as internet-based companies have learned, the best way to maximize existing bandwidth is to employ a CDN.
What could a Navy CDN do?
1.Eliminate the duplicate transmission of data
Instead of transmitting a file to a ship every time a user on that ship requests it, a CDN server aboard the ship would cache (store) the file after it is originally downloaded, and deliver the file directly across the ship’s local network to any users who subsequently requested it. (Instead of retrieving the same file from the internet every time it was requested.) The end-user would notice no difference, except that the file would load considerably faster if they were not the first person to access it.
For example, every year sailors are required to complete online training in several areas (such as sexual-assault prevention and information security). If a sailor is deployed when the training is due, they will access the training presentation via ship’s internet. Without a CDN, all 5,500 sailors aboard an aircraft carrier might each download identical copies of the presentation across the ship’s limited internet connection (consequently slowing the connection speed to a crawl). With a CDN, that multimedia-rich presentation would be downloaded only once across the ship’s internet connection. The 5,500 sailors would then access it across the ship’s much faster Local Area Network (LAN). Messages indicating that each sailor had completed a training module would still have to be sent across the internet connection for each sailor; however, these messages are extremely small in size and so do not constitute a great problem – even when multiplied by 5,500. While some sailors achieve the bandwidth advantage by manually downloading frequently used files and storing them on a ship’s LAN “sharedrive,” a CDN can greatly reduce the administrative burden of such a method.
2.Smarter Content Delivery
Placing a CDN server on a ship or submarine would enable new methods of delivery – especially for the “Silent Service.” Surface ships typically have some degree of internet connectivity; however, submarines only have internet connectivity a minority of the time (typically while surfaced – their least-favorite state). If a submariner wanted to download a new publication or training file, they would have to wait until their boat next surfaced, quickly navigate the internet to find the correct file, and download it completely before they submerged (and lost connectivity).
However, with a CDN server, a sailor could request a file be downloaded when the internet was next available (which might be while he/she was otherwise engaged). If the file was only partially downloaded during the first period of connectivity, the incomplete file could be retained by the CDN server and the remainder downloaded during the next period(s) of connectivity. The sailor could then access the complete file, even when his/her ship had no internet access.
This would be similar to emailing a person on shore and asking them to send a reply email with the requested file attached. However, use of a CDN as described would have such advantages as being faster (as it is automated) and not being subject to the attachment-size limits of email.
b. Content Subscription:
Similarly, a ship’s CDN server could automatically download the latest version of a file (such as a reference publication) made available on the Navy’s shore-based CDN server.
• Ships in different fleets and of different classes could be subscribed to relevant files by shore commands.
• Each ship could subscribe to additional content as desired.
• When an update to an existing file is sent, the shore-based CDN server would calculate and transmit a diff file (a file describing the difference between the original file and the updated version). Upon receiving the diff file, the ship-based CDN server would patch (combine) the existing file with the diff file to recreate the updated version. This would save bandwidth by eliminating the transmission of all of the content which remained the same across the two versions of the files. (In the case of long publications with minor revisions, this savings would be substantial.) This would also eliminate the need to physically mail to ships CDs with revised publications that were too big to email or otherwise download in their entirety.
• Content updates could be scheduled during hours when bandwidth utilization is minimal (e.g. during the midwatch).
Impetus for a Navy CDN:
Implementing a Content Delivery Network will not provide the Navy with a new warfighting capability in the way a new weapons system would. However, at minimal cost – my rough back-of-the-envelope calculations estimate $100,000 for total software development, $2,500 for hardware per ship, the cost of day’s worth of contractor labor per ship, plus the additional government contract mark-up – it would eliminate a great deal of time wasted on administrative distractions and offer new support capabilities for submarines.
What is the Navy Doing?
At the time of writing, the Navy is implementing a service with many of the CDN features described above: the Navy Information Application Product Suite (NIAPS). This service has been used, for example, to allow consolidated and offline access to online training materials through a program called “NKO at Sea”.
Potential for Future Development
If development of the NIAPS CDN service continues and is successful, there is great potential for it to serve as the platform for a new generation of web-applications which would replace the Navy’s current myriad of outdated and poorly-designed software packages (or even, as this author argues for, a single web service progressively integrating all of these features into a single system). When combined with proposed on-ship WiFi networks, these applications could allow sailors efficiently complete work from anywhere onboard ship, regardless of internet connectivity. Although this may not sound like a great technological breakthrough for the military, it has great potential to free the Navy from the burdens of its paperwork while retaining the high-standards said paperwork was created to maintain.
William is a Surface Warfare Officer assigned to USS Shiloh (CG-67). He received his commission through the Naval ROTC program at the University of Notre Dame from where he graduated with a B.S. in Computer Science. He has eight years of experience designing websites and web applications on a freelance basis.