You should: Sign up > Write articles > tell people about your articles > Monetize them > Earn money  > learn/do/earn more

Akamai Technologies

From Wikiafripedia, the free afripedia (encyclopedia)
Jump to navigation Jump to search
Akamai Technologies, Inc.
Public
Traded as
IndustryInternet
Cloud computing
Founded1998; 22 years ago (1998)
FoundersDaniel Lewin
F. Thomson Leighton
Randall Kaplan
Jonathan Seelig
Headquarters,
U.S.
Key people
F. Thomson Leighton
(CEO and Co-Founder)
Frederic V. Salerno
(Chairman)
RevenueIncrease $2.894 billion (2019)
Increase $549 million (2019)
Increase $478 million (2019)
Total assetsIncrease $7.007 billion (2019)
Total equityIncrease $3.658 billion (2019)
Number of employees
7,650 (2018)
Websiteakamai.com
Footnotes / references
[1]

Akamai Technologies, Inc. is a global content delivery network (CDN), cybersecurity, and cloud service company, providing web and Internet security services.[2][3] Akamai's content delivery network is one of the world's largest distributed computing platforms, responsible for serving between 15% and 30% of all web traffic.[4] The company operates a network of servers around the world and rents out capacity on these servers to customers who want their websites to work faster by distributing content from locations near the user. When a user navigates to the URL of an Akamai customer, their browser is redirected to one of Akamai's copies of the website.

History[edit source | edit]

Akamai Technologies entered the 1998 MIT $50K competition with a business proposition based on their research on consistent hashing, and were selected as one of the finalists.[5] By August 1998 they had developed a working prototype, and with the help of Jonathan Seelig and Randall Kaplan, they began taking steps to incorporate the company.[6]

In late 1998 and early 1999, a group of business professionals joined the founding team. Most notably, Paul Sagan, former president of New Media for Time Inc. and George Conrades, former chairman and chief executive officer of BBN Corp. and senior vice president of US operations for IBM. Conrades became the chief executive officer of Akamai in April 1999 and led the company from start-up to sustained profitability and positive free cash-flow before turning the reins over to Sagan in 2005.[7][8][9] The company launched its commercial service in April 1999 and was listed on the NASDAQ Stock Market from October 29, 1999.[10]

On July 1, 2001, Akamai was added to the Russell 3000 Index and Russell 2000 Index.[11]

On September 11, 2001, co-founder Daniel M. Lewin died in the September 11 attacks at the age of 31 when he was stabbed during his flight aboard American Airlines Flight 11, the first plane to crash into the World Trade Center.[12]

In 2005, Paul Sagan was named chief executive officer of Akamai. Sagan worked to differentiate Akamai from its competitors by expanding the company's breadth of services.[9] Under his leadership the company grew to $1.37 billion in revenues.[13] Sagan served as chief executive officer until co-founder and current CEO, Tom Leighton, was elected to the position in 2013.[14]

Akamai's headquarters are in Kendall Square. Akamai started out in Technology Square and later expanded to multiple buildings in Cambridge Center. They consolidated their offices in a purpose-built building at 145 Broadway in December 2019.[15]

Technologies[edit source | edit]

Akamai Intelligent Platform[edit source | edit]

The Akamai Intelligent Platform is a distributed cloud computing platform that operates worldwide. It is a network of over approximately 275,000 servers deployed in more than 136 countries.[16] These servers reside in roughly 1,500 of the world's networks gathering real-time information about traffic, congestion, and trouble spots.[16] Each Akamai server is equipped with proprietary software that uses complex algorithms to process requests from nearby users, then serve the requested content.[17]

Content delivery process[edit source | edit]

Akamai content delivery to a user

The content delivery process begins with a user submitting a request to a browser. When a user enters a URL, a DNS request is triggered and an IP address is retrieved. With the IP address, the browser can then contact a web server directly for subsequent requests.[18] In a content delivery network structure, the domain name of the URL is translated by the mapping system into the IP address of an edge server to serve the content to the user.[17]

Akamai delivers web content over its Intelligent Platform by transparently mirroring elements such as HTML, CSS, software downloads, and media objects from customers' servers. The Akamai server is automatically chosen depending on the type of content and the user's network location. Receiving content from an Akamai server near the user allows faster downloads and less vulnerability to network congestion. Akamai claims to provide better scalability by delivering the content over the last-mile from servers close to end-users, avoiding the middle-mile bottleneck of the Internet.[19] The Download Delivery product line includes HTTP downloads for large downloadable objects, a customizable application for consumers, and analytics tools with metrics that monitor and report on the download process.[20]

Peer-to-peer networking[edit source | edit]

In addition to using Akamai's own servers, Akamai delivers content from other end-users' computers, in a form of peer-to-peer networking.[21][22]

Network Operations Command Center[edit source | edit]

Akamai's Network Operations Command Center (NOCC) is used for proactive monitoring and troubleshooting of all servers in the global Akamai network.[23] The NOCC provides real time statistics of Akamai's web traffic. The traffic metrics update automatically and provide a view of the Internet traffic conditions on Akamai's servers and customer websites.[24]

State of the Internet[edit source | edit]

The State of the Internet report is a quarterly report Akamai releases based on data gathered from its Intelligent Platform, which provides global Internet statistics such as connection speed, broadband adoption, attack traffic, network connectivity, and mobile connectivity.[25][26]

Visualizing the Internet[edit source | edit]

Akamai's data visualization tools display how data is moving across the Internet in real-time. Viewers are able to see global web conditions, malicious attack traffic, and Internet connectivity.[27] In addition, the net usage indices monitor global news consumption, industry specific traffic, and mobile trends.[28] Akamai also offers the Internet Visualization application, which allows users to view real-time data on their mobile device.[29]

OPEN Initiative[edit source | edit]

On October 9, 2013 Akamai announced its Open Initiative at the 2013 Akamai Edge Conference. OPEN allows customers and partners to develop and customize the way they interact with the Akamai Intelligent Platform. Key components of OPEN include system and development operations integration, real-time big data integration, and a single-point user interface.[30]

Primary domains[edit source | edit]

Akamai Technologies owns about 60 other domains, but the primary domains it uses include:

Corporate[edit source | edit]

  • akamai.com – Akamai's domain

Content (delivery) domains[edit source | edit]

  • akamai.net
  • akamaiedge.net
  • akamaized.net
  • akamaihd.net
  • edgesuite.net
  • edgekey.net
  • srip.net[31][32]
  • akamaitechnologies.com
  • akamaitechnologies.fr

DNS servers[edit source | edit]

  • akamaitech.net
  • akadns.net
  • akagtm.org
  • akam.net
  • akamaistream.net
  • akamaiedge.net
  • akamaihd.net
  • akamai.com

Customers[edit source | edit]

On July 21, 1999, at Macworld Expo New York, Apple and Akamai announced a strategic partnership to build Apple's new media network, QuickTime TV (QTV), based on QuickTime Streaming Server.[33] Both companies later announced that Apple had made a $12.5 million investment in the company the previous month.[34] Apple continues to use Akamai as their primary content delivery network[35] for a wide range of applications including software downloads from Apple's Website, QuickTime movie trailers, and the iTunes Store.[36]

In September 1999, Microsoft and Akamai formed a strategic relationship to incorporate Windows Media technology in Akamai's FreeFlow service, as well as to facilitate the porting of the FreeFlow product to the Windows platform; this relationship exists to this day.[37] Microsoft Azure offers Akamai (along with Verizon) as options for its "standard" CDN service.[38]

Arabic news network Al-Jazeera was a customer from March 28, 2003, until April 2, 2003, when Akamai decided to end the relationship.[39] The network's English-language managing editor claimed this was due to political pressure.[40]

In June 2008, The NewsMarket teamed with Akamai to accelerate dynamic content and applications to global media ahead of the Beijing Olympics.[41]

The BBC iPlayer uses Akamai to stream its recorded and live programs, focused through an XML playlist.

The entire China Central Television website (CCTV.com), including its streaming video, has been hosted on Akamai's edge servers since late 2009.[42][43] Hulu uses Akamai for hosting video.[44] MIT OpenCourseWare utilizes Akamai's EdgeSuite for its content delivery network.[45]

Trend Micro uses Akamai for their Housecall antivirus application.

Valve's Steam service uses Akamai's Content Delivery Network for storing screenshots and icons uploaded by users.

Akamai provided streaming services to ESPN Star (India) during the course of the ICC Cricket World Cup 2011.[46]

Rackspace's Cloud Files use Akamai's Content Delivery Network (CDN) for storing its customer's files.

Other customers include Adobe Systems, Airbnb, AMD, AutoTrader.com, COS, ESPN, The Great Courses, Hewlett-Packard, Hilton Worldwide, IBM, J. C. Penney, Jehovah's Witnesses, MTV Networks, NASA, National Academy of Recording Arts and Sciences, NBC Sports, Pearson Education, Red Bull GmbH, Red Hat, Sony PlayStation and Yahoo!.[47]

In August 2017, Nintendo launched its new game console and mobile gaming application simultaneously around the world via Akamai's Media Delivery Solutions.[48]

Acquisitions[edit source | edit]

  • On February 10, 2000, Akamai acquired Network24 Communications[49] for an aggregate purchase price of $203,600,000.[50]
  • On April 20, 2000,[50] Akamai acquired InterVU Inc.[51] for an aggregate purchase price of $2,800,000,000.
  • In July. 25, 2000, Akamai acquired CallTheShots, Inc., for an aggregate purchase price of $3,700,000.[50]
  • On June 10, 2005, Akamai acquired Speedera Networks, Inc. for an aggregate purchase price of $142,200,000.[52]
  • In December 13, 2006, Akamai acquired Nine Systems, Inc.,[53] for an aggregate purchase price of $157,500,000.[54]
  • On March 13, 2007, Akamai acquired Netli Inc. (Netli),[55] for an aggregate purchase price of $154,400,000.
  • On April 12, 2007, Akamai acquired Red Swoosh Inc.[56] for an aggregate purchase price of $18,700,000.[57]
  • On November 3, 2008, Akamai acquired aCerno Inc.,[57] for an aggregate purchase price of $90,800,000.[58]
  • On June 10, 2010, Akamai acquired Velocitude LLC,[59] for an aggregate purchase price of $12,000,000.[60]
  • On February 7, 2012, Akamai acquired Blaze Software, Inc.,[61] for an aggregate purchase price of $19,300,000.[62]
  • On March 6, 2012, Akamai acquired Cotendo, Inc.,[61] for an aggregate purchase price of $278,900,000.[63]
  • On September 13, 2012, Akamai acquired FastSoft, Inc.,[61] for an aggregate purchase price of $14,400,000.[64]
  • On December 4, 2012, Akamai acquired Verivue, Inc.,[61] for an aggregate purchase price of $30,900,000.[65]
  • On November 8, 2013, Akamai acquired Velocius Networks[66] for an aggregate purchase price of $4,300,000.[67]
  • In February 2014, Akamai acquired cyber security provider, Prolexic Technologies[66] for an aggregate purchase price of $390,000,000.[68]
  • In February 2015, Akamai acquired Xerocole Inc., a domain name system technology company.[69]
  • On April 6, 2015, Akamai acquired cloud OTT IPTV service provider Octoshape,[70] for an undisclosed amount.[71]
  • On November 2, 2015, Akamai acquired Bloxx, a provider of Secure Web Gateway (SWG) technology,[72] for an undisclosed amount.[73]
  • On September 28, 2016, Akamai acquired Concord Systems, a provider of technology for the high performance processing of data at scale,[74] for an undisclosed amount.[75]
  • On October 4, 2016, Akamai acquired Soha Systems, an enterprise secure access delivered as a service provider,[76] for an undisclosed amount.[77]
  • On December 19, 2016, Akamai acquired Cyberfend, a bot and automation detection solutions provider,[78] for an undisclosed amount.[79]
  • On March 29, 2017, Akamai acquired SOASTA, a digital performance management company based in Mountain View, CA, for an undisclosed all-cash amount.[80]
  • On October 11, 2017, Akamai acquired Nominum, a carrier-grade DNS and DHCP provider and one of the major players in the creation of the modern DNS system, for an undisclosed all-cash amount.[81]
  • In October 2019, Akamai acquired security software provider ChameleonX for $20 million.[82][83]
  • On January 7, 3009, Akamai and Janrain announced an agreement for the acquisition Janrain, a major CIAM provider.

Litigation[edit source | edit]

One of Akamai's patents covers a method of delivering electronic data using a content delivery network. Internet Web site proprietors (content providers) contract with Akamai to deliver their Web sites' content to individual Internet users. The patented method permits large files, such as video or music files, to be stored on Akamai's servers and accessed from those servers by Internet users. This increases the speed with which Internet users access the content from Web sites.

Unfortunately for Akamai, its patent was written in a way that called for or permitted actions by multiple persons or entities—such as the content provider customer and the company providing the CDN service.[84] Akamai's competitor Limelight chose to operate its allegedly infringing service in that manner—it performed most steps of the patented process and its customers performed a so-called tagging step. Under the interpretation of patent law at the time when Akamai decided to sue Limelight for patent infringement, a method patent could be held infringed only when a single actor performed all of the steps. The court therefore overturned a $40 million jury verdict in Akamai's favor.

Akamai initially lost the case, even taking it to the Supreme Court. The Supreme Court returned the case to the United States Court of Appeals for the Federal Circuit, however, with an invitation to re-evaluate its rule, if it chose to do so, that all the steps of a method had to be performed by a single actor for there to be infringement. On remand, the Federal Circuit considered the matter en banc (all active judges of the circuit) and modified its rule. It now held that a patent could also be directly infringed if "an alleged infringer conditions participation in an activity or receipt of a benefit upon performance of a step or steps of a patented method and establishes the manner or timing of that performance." On that basis, the Federal Circuit reinstated the $40 million jury verdict. It said that "Akamai presented substantial evidence demonstrating that Limelight conditions its customers' use of its content delivery network upon its customers' performance of" the steps that Limelight does not itself perform. This has been considered a substantial change in patent law. The case is known as Akamai Techs., Inc. v. Limelight Networks, Inc..

Controversies[edit source | edit]

The National Security Agency and Federal Bureau of Investigation have reportedly used Facebook's Akamai content delivery network (CDN) to collect information on Facebook users.[85] This report appears to show intelligence analysts intercepting communications between Facebook and its CDN provider, but does not indicate Akamai as being complicit in this process.

According to researchers from the Universities of Cambridge and California-Berkeley, University College London, and International Computer Science Institute-Berkeley, Akamai has been blocking access to web sites for visitors using Tor.[86] This feature, known as 'network lists,' is optional for and implemented by customers of Akamai, and is a legitimate feature common to many major IT vendors that provide network security feeds, such as Emerging Threats, which provides such a feed for free.[87]

See also[edit source | edit]

References[edit source | edit]

  1. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  2. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  3. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  4. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  5. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  6. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  7. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  8. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  9. 9.0 9.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  10. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  11. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  12. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  13. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  14. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  15. "Akamai Opens New HQ In Cambridge", WBUR
  16. 16.0 16.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  17. 17.0 17.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  18. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  19. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  20. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  21. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  22. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  23. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  24. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  25. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  26. Q2 2014 Report Akamai's State of the Internet
  27. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  28. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  29. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  30. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  31. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  32. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  33. July 21, 1999 – Apple and Akamai Create High Quality Network for Internet Streaming. Akamai.com. Retrieved on July 8, 2011. Archived March 31, 2014, at the Wayback Machine
  34. August 18, 1999 – Apple and Akamai Reveal Apple Investment to Cement Strategic Agreement. Akamai.com. Retrieved on July 8, 2011. Archived October 21, 2013, at the Wayback Machine
  35. Customer List. Akamai.com (September 30, 2003). Retrieved on July 8, 2011. Archived February 9, 2014, at the Wayback Machine
  36. April 29, 2003 – Akamai and Apple Extend Commitment to Deliver Industry Leading Internet Streaming Content and Software Downloads. Akamai.com. Retrieved on July 8, 2011. Archived January 22, 2014, at the Wayback Machine
  37. Microsoft and Akamai Form Strategic Relationship to Enhance Internet Content Delivery. Akamai.com. September 27, 1999. Retrieved on July 8, 2011. Archived February 19, 2014, at the Wayback Machine
  38. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  39. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  40. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  41. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  42. www.cctv.com. Robtex. Retrieved on July 8, 2011. Archived March 21, 2014, at the Wayback Machine
  43. Site report for www.cctv.com
  44. About. Hulu (March 12, 2008). Retrieved on July 8, 2011. Archived October 5, 2012, at the Wayback Machine
  45. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  46. espnstar.com Breaks India Online Cricket Match Streaming Record. Teck.In (April 18, 2011). Retrieved on August 14, 2013. Archived February 20, 2014, at the Wayback Machine
  47. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  48. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  49. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  50. 50.0 50.1 50.2 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  51. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  52. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  53. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  54. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  55. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  56. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  57. 57.0 57.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  58. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  59. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  60. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  61. 61.0 61.1 61.2 61.3 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  62. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  63. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  64. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  65. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  66. 66.0 66.1 Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  67. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  68. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  69. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  70. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  71. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  72. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  73. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  74. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  75. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  76. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  77. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  78. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  79. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  80. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  81. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  82. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  83. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  84. It is usually possible, however, to write such method patent claims in a way that all steps are performed by a single actor, for example, by replacing a step of sending a signal to the person performing the other steps with a step, instead, of receiving that signal. See, e.g., Michael Dzwonczyk Bulletproofing Method Claims for Post-Limelight Enforcement (Feb. 2014). Dzwonczyk asserts that the patent claim "could easily have been rewritten as a single-actor method claim that would not require the performance of any step by a second actor," and provides a rewritten version. See also Harold Wegner, Akamai II: Direct Infringement Déjà Vu (Aug. 2014) at 20-21, to similar effect.
  85. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  86. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).
  87. Lua error in ...ribunto/includes/engines/LuaCommon/lualib/mwInit.lua at line 23: bad argument #1 to 'old_ipairs' (table expected, got nil).

Additional sources[edit source | edit]

  • Erik Nygren, Ramesh K. Sitaraman, and Jennifer Sun. "The Akamai Network: A Platform for High-Performance Internet Applications". ACM SIGOPS Operating Systems Review, Vol. 44, No. 3, July 2010.

External links[edit source | edit]