Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Lewin, MA

Anne E. Lewin, Charlestown, MA US

Patent application numberDescriptionPublished
20090094382EDGE SIDE COMPONENTS AND APPLICATION PROGRAMMING ENVIRONMENT FOR BUILDING AND DELIVERING HIGHLY DISTRIBUTED HETEROGENOUS COMPONENT-BASED WEB APPLICATIONS - A method is provided for processing an application on an edge server, wherein the application comprises a set of defined presentation, code and data components, each of which are preferably URI-addressable objects. In response to a client request, the presentation, code and data components are processed according to a set of metadata to generate a response, and the response is delivered to the client. The presentation components are typically content such as HTML fragments, WML fragments, or some combination thereof. The code components are typically Java servlets or beans, XSLT style sheets, or some combination thereof. The data components are typically XML files, native database formatted files, and the like. Each of the presentation, code and data components may have a distinct management profile, cacheability profile, deployment profile, invalidation profile, and security profile. These profiles are settable via metadata or other similar means. Using this framework, heterogenous components may be composed into other components and complete applications or services.04-09-2009
20090150518Dynamic content assembly on edge-of-network servers in a content delivery network - The present invention enables a content provider to dynamically assemble content at the edge of the Internet, preferably on content delivery network (CDN) edge servers. Preferably, the content provider leverages an “edge side include” (ESI) markup language that is used to define Web page fragments for dynamic assembly at the edge. Dynamic assembly improves site performance by catching the objects that comprise dynamically generated pages at the edge of the Internet, close to the end user. The content provider designs and develops the business logic to form and assemble the pages, for example, by using the ESI language within its development environment. Instead of being assembled by an application/web server in a centralized data center, the application/web server sends a page template and content fragments to a CDN edge server where the page is assembled. Each content fragment can have its own cacheability profile to manage the “freshness” of the content. Once a user requests a page (template), the edge server examines its cache for the included fragments and assembles the page on-the-fly.06-11-2009
20100011107HTML delivery from edge-of-network servers in a content delivery network (CDN) - A content delivery network is enhanced to provide for delivery of cacheable markup language content files such as HTML. To support HTML delivery, the content provider provides the CDNSP with an association of the content provider's domain name (e.g., www.customer.com) to an origin server domain name (e.g., html.customer.com) at which one or more default HTML files are published and hosted. The CDNSP provides its customer with a CDNSP-specific domain name. The content provider, or an entity on its behalf, then implements DNS entry aliasing (e.g., a CNAME of the host to the CDNSP-specific domain) so that domain name requests for the host cue the CDN DNS request routing mechanism. This mechanism then identifies a best content server to respond to a request directed to the customer's domain. The CDN content server returns a default HTML file if such file is cached; otherwise, the CDN content server directs a request for the file to the origin server to retrieve the file, after which the file is cached on the CDN content server for subsequent use in servicing other requests. The content provider is also provided with log files of CDNSP-delivered HTML.01-14-2010
20100023601Extending an Internet content delivery network into an enterprise - An Internet content delivery network deploys one or more CDN server regions in an enterprise and manages those regions as part of the Internet CDN. In one aspect of the invention, a CDN service provider (CDNSP) deploys one or more CDN regions behind an enterprise's corporate firewall(s). The regions are used to deliver Internet content—content that has been tagged or otherwise made available for delivery over the Internet from the CDN's content servers. This content includes, for example, content that given content providers have identified is to be delivered by the CDN. In addition, the enterprise may tag intranet content, which is then also served from the CDN regions behind the firewall. Intranet content remains secure by virtue of using the enterprise's existing security infrastructure. In accordance with another aspect of the invention, the CDNSP implements access controls and deploys one or more CDN regions outside an enterprise's firewall(s) such that intranet content can be served from regions located outside the firewall(s). In this embodiment, the CDNSP can provide granular control, such as permissions per groups of users. In this way, the CDNSP, in effect, extends a conventional virtual private network (VPN) to all or a portion of the ICDN, thereby enabling the CDNSP to use multiple regions and potentially thousands of content servers available to serve the enterprise's internal content. In addition to making internal content available from the edge of the network, the CDNSP provides a mechanism by which an enterprise may share secure data with its business partner(s) without setting up any special infrastructure.01-28-2010
20100274819Dynamic content assembly on edge-of-network servers in a content delivery network - The disclosed technique enables a content provider to dynamically assemble content at the edge of the Internet, preferably on content delivery network (CDN) edge servers. Preferably, the content provider leverages an “edge side include” (ESI) markup language that is used to define Web page fragments for dynamic assembly at the edge. Dynamic assembly improves site performance by catching the objects that comprise dynamically generated pages at the edge of the Internet, close to the end user. The content provider designs and develops the business logic to form and assemble the pages, for example, by using the ESI language within its development environment. Instead of being assembled by an application/web server in a centralized data center, the application/web server sends a page template and content fragments to a CDN edge server where the page is assembled. Each content fragment can have its own cacheability profile to manage the “freshness” of the content. Once a user requests a page (template), the edge server examines its cache for the included fragments and assembles the page on-the-fly.10-28-2010

Patent applications by Anne E. Lewin, Charlestown, MA US

Daniel Lewin, Cambridge, MA US

Patent application numberDescriptionPublished
20080212492SYSTEM AND METHOD FOR RESOURCE DISCOVERY - In distributed networks of cooperating nodes, it is useful to perform resource discovery in a manner that is efficient but that also minimizes communication complexity. A system and method in which nodes in a network efficiently are provided with information about the presence of, and other information about, other nodes in the network provides tangible benefits. In general, in one aspect, a system and method according to the invention features a distributed method for communicating information among a plurality of nodes. The method includes choosing, by a first node, one second node from information about nodes that the first node is aware of. The method further includes communicating from the first node to the second node information about the first node and nodes that the first node is aware of. The method further includes adding or merging, by the second node, the information about the first node and nodes that the first node is aware of with information about nodes that the second node is aware of. The method further includes each of the plurality of cooperating nodes repeating these steps.09-04-2008
20090248874METHOD AND APPARATUS FOR DISTRIBUTING REQUESTS AMONG A PLURALITY OF RESOURCES - The invention relates to a method and apparatus for distributing a request to one of a plurality of resources. A request is mapped to a location in mathematical mapping space. Each of the plurality of resources is mapped to a respective location or locations in the mathematical mapping space. The request is allocated to one of the resources based on a mathematical relationship between the request location and the resource location in the mathematical mapping space. An apparatus for distributing a request to one of a plurality of resources includes the plurality of resources and an input receiving a resource request. A mapper in communication with the input maps the request to a request location in a mathematical mapping space and maps each of the plurality of resources to at least one resource locations in the mathematical mapping space. A distributor distributes the request to one of the plurality of resources in response to a mathematical relationship between the locations of the request and resources in the mathematical mapping space. The invention also relates to a method and apparatus for requesting data from one of a plurality of servers. An virtual network of nodes is generated in response to a data request. A first node on the virtual network of nodes is chosen randomly, and a path generated from the first node to the root on the virtual network. At least one node on the path is mapped to a respective one of the plurality of servers and data is requested from a server. The node may be mapped to the server using the method and apparatus for distributing a request to one of a plurality of resources of the present invention.10-01-2009
20110106887SYSTEM AND METHOD FOR RESOURCE DISCOVERY - In distributed networks of cooperating nodes, it is useful to perform resource discovery in a manner that is efficient but that also minimizes communication complexity. A system and method in which nodes in a network efficiently are provided with information about the presence of, and other information about, other nodes in the network provides tangible benefits. In general, in one aspect, a system and method according to the invention features a distributed method for communicating information among a plurality of nodes. The method includes choosing, by a first node, one second node from information about nodes that the first node is aware of. The method further includes communicating from the first node to the second node information about the first node and nodes that the first node is aware of. The method further includes adding or merging, by the second node, the information about the first node and nodes that the first node is aware of with information about nodes that the second node is aware of. The method further includes each of the plurality of cooperating nodes repeating these steps.05-05-2011

Patent applications by Daniel Lewin, Cambridge, MA US