WO2018067710A1 - Network addresses with encoded dns-level information - Google Patents
Network addresses with encoded dns-level information Download PDFInfo
- Publication number
- WO2018067710A1 WO2018067710A1 PCT/US2017/055156 US2017055156W WO2018067710A1 WO 2018067710 A1 WO2018067710 A1 WO 2018067710A1 US 2017055156 W US2017055156 W US 2017055156W WO 2018067710 A1 WO2018067710 A1 WO 2018067710A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- dns
- network
- network address
- request
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/20—Hop count for routing purposes, e.g. TTL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/604—Address structures or formats
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/659—Internet protocol version 6 [IPv6] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
Definitions
- computing devices utilize a communication network, or a series of communication networks, to exchange data.
- Companies and organizations operate computer networks that interconnect a number of computing devices to support operations or provide services to third parties.
- the computing systems can be located in a single geographic location or located in multiple, distinct geographic locations (e.g., interconnected via private or public communication networks).
- data centers or data processing centers herein generally referred to as "data centers,” may include a number of interconnected computing systems to provide computing resources to users of the data center.
- the data centers may be private data centers operated on behalf of an organization or public data centers operated on behalf, or for the benefit of, the general public.
- Service providers or content creators can employ a series of interconnected data centers to deliver content (such as web sites, web content, or other digital data) to users or clients.
- content delivery networks CDNs
- CDNs content delivery networks
- Existing routing and addressing technologies can enable multiple data centers associated with a content delivery system to provide similar or identical content to client computing devices.
- each data center providing a set of content may be referred to as a point-of-presence ("POP").
- POP point-of-presence
- a content delivery system can maintain POPs over a wide area (or worldwide) to enable the system to efficiently service requests from clients in a variety of locations.
- server computing devices are generally associated with network addresses, enabling requests for communication with the server computing devices to be routed across a network.
- These network addresses are generally formed by a series of bits formatted according to a defined protocol, such as the Internet Protocol (IP) version four (IPv4) or version 6 (IPv6).
- IP Internet Protocol
- IPv4 Internet Protocol version four
- IPv6 version 6
- CDNs can utilize resolution systems that function to resolve human-readable identifiers into corresponding network addresses.
- DNS Domain Name System
- DNS services and CDNs operate independently and according to differing protocols.
- DNS requests from a client computing device are generally routed via the DNS protocol through multiple DNS components to a DNS service, where a network address corresponding to a domain name is returned via the DNS protocol.
- the client computing device may then communicate with a server computing device associated with the network address (e.g., via the hypertext transport protocol, or "HTTP").
- HTTP hypertext transport protocol
- FIG. 1 is a block diagram depicting an illustrative logical network including multiple accessing computing devices 102 and content providers 104, as well as a content delivery system 110 including a DNS service and multiple POPs;
- FIG. 2 is a block diagram depicting an illustrative configuration of one embodiment of a server that may implement the DNS service of FIG. 1;
- FIG. 3A is a block diagram depicting interactions between an accessing computing device and the DNS service of FIG. 1 to resolve a distribution identifier into a network address including encoded DNS-level information;
- FIG. 3B is a block diagram depicting interactions between an accessing computing device and a POP of FIG. 1 to provide content corresponding to a distribution identifier via a network address including encoded DNS-level information;
- FIG. 4 is an illustrative visualization of a format for encoding DNS-level information into a network address.
- aspects of the present disclosure relate to the utilization of specifically formatted network addresses in order to facilitate the retrieval and transmission of content on a content delivery system. More particularly, aspects of the present disclosure enable a domain name system (DNS) service to generate and use network addresses that include encoded information available to the DNS service at least at a time that a client computing device requests to resolve an identifier, such as a domain name, into a corresponding network address.
- DNS domain name system
- DNS-level information may include, for example, a domain name that a client computing device requested to resolve, security information (such as transport security layer ["TLS”] or secure sockets layer ["SSL”] certificates associated with a domain name), validity information (such as time-to-live, or "TTL,” information), or other information available at a DNS service.
- security information such as transport security layer ["TLS”] or secure sockets layer ["SSL”] certificates associated with a domain name
- validity information such as time-to-live, or "TTL,” information
- a DNS service may encode all or a portion of such DNS-level information within a network address advertised by the DNS service (e.g., included within DNS records provided by the DNS service), and thus make such DNS-level information available to routers or other computing devices that receive requests to communicate with the network address.
- these routers or other computing devices may gain access to the DNS-level information, which would otherwise not be communicated to the routers or other computing devices in a traditional request addressed to a network address.
- Use of such information may enable more efficient operation of such routers or other computing devices.
- a router or computing device may directly obtain a domain name to which a request relates from a network address of the request, without relying on external information or mappings.
- a router or computing device may determine whether a request to communicate with a network address should be considered valid, based on validity information encoded into the network address.
- aspects of the present disclosure significantly increase the amount of information available to a computing device or router based on a network address, and enable such routers or computing devices to more efficiently handle network communications by utilizing this newly-available information.
- aspects of the present disclosure may be utilized, for example, by a content delivery system hosting content of a multitude of entities.
- a content delivery system can function to provide client computing devices with access to a variety of different sets of content hosted by the content delivery system on behalf of third-party content providers or an operator of the content distribution service itself.
- Such a set of content can be generally referred to as a "distribution,” and may correspond to a specific web site (e.g., as associated with a specific domain name) or other network-accessible service.
- Content delivery systems generally make distributions available at one or more network addresses (e.g., internet protocol or "IP" addresses), to which a computing device— either legitimate or malicious— may transmit a request for information.
- IP internet protocol
- IPv4 IP address
- embodiments of the present disclosure can utilize one or more encoding rules to encode DNS -level data, such as a domain name to which a DNS request is directed, into a network address.
- DNS -level data such as a domain name to which a DNS request is directed
- a router or other computing device receiving a data transmissions addressed to the network address may decode the network address itself in order to obtain the encoded DNS-level data.
- encoding of DNS-level data into a network address can enable routers or other computing devices to determine, from a network address to which a data packet is addressed, what domain name was included within a DNS request that preceded generation of the data packet.
- DNS-level data may therefore be determined subsequent to DNS resolution, without relying on independent or additional communication with a DNS service, and without relying on the content of data packets themselves (which, particularly in the case of network attacks, may be malformed).
- a computing device may determine that malicious data packets transmitted to a given network address are the result of a DNS resolution of a particular domain name, and thus may further determine that the distribution associated with the domain name is the target of a network attack. The computing device may then take mitigating action to reduce or eliminate negative effects of the network attack.
- embodiments of the present disclosure may be particularly suited for implementation with respect to network address formats having a large address space.
- a network address format is the IPv6 format, which utilizes 128 bit network addresses.
- the large number of potential network addresses within the IPv6 format can enable DNS-level information to be encoded without negatively impacting the traditional identification and routing functions of network addresses.
- a DNS service may encode within a network address "hint information," that enables a router or other computing device (e.g., a server within a POP) to more efficiently service requests to communicate with the network address.
- the hint information may include an identifier of a security certificate (e.g., and SSL or TLS certificate) associated with a domain name to which the request is directed.
- a computing device when a computing device receives a request to communicate with a network address including encoded hint information, the computing device may decode the hint information, determine the security certificate identified by the hint information, and establish a secure communication channel with a client computing device.
- encoding of hint information within a network address may reduce or eliminate the need for a router or other computing device (e.g., of a CDN) to maintain a mapping of network addresses to associated security certificates, or to inspect data packets for information identifying a relevant security certificate (e.g., a "host header" within an HTTP packet). Because decoding of hint information within a network address may require less processing power or memory usage than would packet inspection or using lookups to external mappings, use of hint information can reduce the computing resources used by a router or other computing device.
- hint information may include a network address or other information of a device from which a DNS resolution request was received (e.g., an accessing computing device, a DNS resolver used by that accessing computing device, etc.).
- components of a CDN may use such information to determine how to handle subsequent requests to access content, stemming from an initial DNS resolution request. For example, where request to access content results in a "cache miss" at a POP of a CDN (e.g., where an accessing computing device requests content not stored at the POP), a POP can be configured to retrieve the requested information from another server (sometimes referred to as an "origin server").
- the POP may in some instances use hint information to select an appropriate origin server. For example, where a content request is addressed to a network address with hint information identifying a particular geographic or network location (e.g., as the region from which a corresponding DNS request originated), the POP may select an origin server nearby to that geographic or network location from which to obtain the relevant content.
- hint information identifying a particular geographic or network location (e.g., as the region from which a corresponding DNS request originated)
- the POP may select an origin server nearby to that geographic or network location from which to obtain the relevant content.
- DNS-level information may further include validity information encoded into a network address by a DNS service.
- validity information encoded into a network address
- a client computing device attempts to communicate with a destination computing device (e.g., a server within a POP) associated with the network address
- that destination computing device may verify the validity information prior to initiating communication with the client computing device.
- a DNS service and a destination computing device may work cooperatively to ensure that all client computing devices accessing the destination computing device are legitimate users of the DNS service. Such cooperation may assist, for example, in mitigating network attacks.
- DoS attack function by instructing a first device to resolve a domain name of an attack target into an IP address using a DNS service, and then instructing a large number of additional devices to transmit malicious data packets to the IP address.
- additional devices do not interact directly with the DNS service, but instead repeat IP address information maintained by the first device.
- embedding validity information within an IP address that is tied specifically to the first device may enable an attack target (or other computing device) to distinguish between the first device and the additional device, substantially reducing the volume of attack traffic.
- network attacks are in some instances "non-re-resolving," such that resolution of a domain name of an attack target into a network address occurs only once (or very infrequently).
- changes to DNS records for an attack target such as changing the network address of the attack target, can function to redirect legitimate traffic to a new network address while malicious traffic continues to flow to the defunct network address.
- some systems may modify configurations of routers or other computing devices to halt processing of traffic directed to a defunct network address.
- blackholing the defunct network address
- Traditional creation of a blackhole network address generally involves propagation of new routing information (e.g., routing tables, such as a forwarding information base or "FIB") across a network, a process that introduces additional traffic into a network and therefore can utilize significant computing resources.
- new routing information e.g., routing tables, such as a forwarding information base or "FIB”
- FIB forwarding information base
- blackholing can be automated without requiring distribution of new routing information across a network. Rather, each device on a network may be configured such that any packet with invalid validity information is automatically dropped by a router or other computing device.
- the protocol by which validity information is generated or verified may be modified over time, such as on an hourly basis.
- a network attacks that continue after modification of validity information, without re-resolving a domain name into a corresponding valid network address would result in data packets being transmitted to an invalid network address, and such data packets could be automatically dropped within a network.
- the inclusion of validity information within a network address can enable computing devices to readily and efficiently distinguish legitimate from illegitimate traffic.
- DNS -level information are provided above, a network address encoded according to embodiments of the present disclosure may include additional or alternative DNS-level data.
- a DNS service may in some instances encode a unique "request identifier" into each network address provided in response to a DNS request, in order to uniquely identify content requests that stem from the DNS request. Thereafter, data can be collected from both the DNS service and corresponding POPs of a CDN, in order to determine correlations between DNS requests and subsequent content requests. For example, the CDN may determine that a given DNS request resulted in n content requests to the network address referenced in the DNS request.
- the examples of DNS-level data provided herein are illustrative in nature.
- a DNS service and a destination computing device can each maintain one or more rules indicating how information is encoded within a network address.
- the rules may specify, for example, which bits of a network address represent different types of DNS-level information, and how that information is represented.
- a rule may specify that the last 16 bits of a network address represent an identifier of a distribution associated with the network address (e.g., a domain name or other unique identifier of the distribution).
- a rule may further specify that the penultimate 16 bits of a network address represent validity information for the network address, hint information, etc.
- the rule may specify how that information is encoded. For example, a domain name may be encoded by processing the domain name according to a hash algorithm, to result in a hash value of the corresponding number of bits. Thereafter, the hash value may be included in a network address as an encoded domain name.
- information may be encoded according to a cryptographic hash algorithm, such as an algorithm of the Secure Hash Algorithm family (e.g., SHA-2 or SHA-3) or an algorithm of the Message-Digest Algorithm family (e.g., MD6).
- validity information may be generated by passing some set of inputs (e.g., values of the remaining fields encoded within a network address, a current time, an identifier of a client computing device, etc.) through a cryptographic hash to produce a digest, and then encrypting the digest with a private key to produce a digital signature that can be included in the validity information.
- the process of utilizing cryptographic hashes and encoding via private keys to result in digital signatures is sometimes referred to as "public key cryptography” or "asymmetric cryptography.” This process is known in the art and therefore will not be described in detail herein.
- the use of public key cryptography to generate digital signatures for inclusion in a network address can provide substantial certainty that any valid network address (e.g., with a verifiable digital signature) was obtained by interaction with a DNS service that had access to a corresponding private key.
- a network address may be encrypted, to avoid conveyance or modification of information to unauthorized parties.
- DNS- level data e.g., including a digital signature value
- a DNS service may utilize a public key associated with a content server to encrypt DNS -level data of a network address (or any given portion of a network address), and the content server, on receiving data addressed to the network address, may utilize a corresponding private key to decrypt the portion and utilize the DNS-level data (or other data represented by the portion) in provide the requested information.
- a router of the CDN may utilize a corresponding private key to decrypt a network address to which data is addressed, and utilize a decrypted value to route the data on the CDN.
- Encryption of DNS-level data may be beneficial in preventing authorized entities from obtaining knowledge of actual network addresses utilized within the CDN (e.g., where the decrypted network address represents a network address of a content server), or obtaining knowledge of DNS-level data encoded within a network address.
- digital signatures and encryption of network address information may be used in conjunction to provide confidentiality, integrity, and authenticity of the network address. To ensure routability of data addressed to an encrypted network addresses, a portion of such network addresses (e.g., a routing prefix) may be left encrypted.
- network addresses may be formatted to enable an alteration of the rules for encoding information within those network addresses. For example, one or more bits of a network address may be assigned to represent a version identifier, indicative of a format of the network address.
- a destination device may inspect the version identifier to determine corresponding rules, indicative of how DNS-level information is encoded within the network address.
- a DNS service and corresponding CDN may alter encoding rules for network addresses periodically, or in some instances utilize multiple different encoding formats simultaneously.
- the DNS service and CDN may identify "high risk" distributions, associated with a higher likelihood of being targeted in a network attack, and provide a distinct set of encoding rules for network address of these distributions. These rules, for example, may include stronger validity information, or may by altered more rapidly than network addresses of other, non-high risk distributions.
- the rules may specify a similar or identical encoding format of information, but may vary other parameters used in such encoding. For example, the rules may specify a particular public/private key pair to utilize in encoding network addresses. Version information encoded within a network address can enable the DNS service and CDN to determine the rules under which a given network address has been encoded.
- both a DNS service and destination devices of a CDN may be provided with access to an application programming interface (API) of a network address encoding service, such that the DNS service and destination devices may transmit requests to the network address encoding service to generate network addresses for a given distribution or to decode DNS -level information from a network address.
- API application programming interface
- Use of such a network address encoding service may, for example, simplify requirements to synchronize rules between a DNS service and destination devices.
- embodiments of the present application may be implemented with respect to any network of computing devices that operates to serve discrete sets of content to client computing devices. Moreover, while some examples are provided with respect to a content distribution network as a whole, embodiments of the present application may also be implemented in whole or in part by discrete portions of the content delivery system. Thus, the examples provided herein are intended to be illustrative, and not exhaustive, in nature.
- embodiments disclosed herein substantially increase the ability of computing systems, such as content delivery systems, to handle network communications. Specifically, embodiments disclosed herein enable more efficient routing or communication handling by providing hint information directly within a network address, reducing or eliminating the need for routing or destination devices to maintain such information separately. Moreover, embodiments disclosed herein enable identification of a specific set of content (a distribution) to which transmissions are directed, based on the network address of the transmission and regardless of the contents of the transmission. Still further, embodiments disclosed herein enable inclusion of validity information, such as a digital signature, within a network address, to assist in distinguishing legitimate communications from invalid and potentially malicious communications.
- validity information such as a digital signature
- the presently disclosed embodiments represent an improvement in the functioning of such computing systems, by enabling content delivery systems or other networked devices to more efficiently route and handle communications, to more efficiently identify and discard malicious communications, and to continue to service legitimate client requests even while receiving large numbers of illegitimate requests.
- the presently disclosed embodiments address technical problems inherent within computing systems; specifically, the limited ability of computing systems to process network-based requests, the reliance of traditional network routing technologies on external information when routing requests to communicate with a network address, and the disassociation between a DNS service and a destination network device caused by commonly used network communication protocols.
- FIG. 1 is a block diagram depicting an illustrative logical network 100 including multiple accessing computing devices 102 and multiple content providers 104 in communication with a content delivery system 110 via a network 106.
- the content delivery system 110 includes a DNS service 112 enabling accessing computing devices 102 to resolve identifiers of distributions on the content delivery system 110 (e.g., domain names) into network addresses.
- the content delivery system 110 further includes one or more points-of-presence (POPs) providing access to content of the distributions on the content delivery system 110.
- POPs points-of-presence
- the accessing computing devices 102 and the content providers 104 are shown as a group within FIG. 1, the accessing computing devices 102 and content providers 104 may be geographically distant, and independently owned or operated.
- the accessing computing devices 102 could represent a multitude of users in various global, continental, or regional locations accessing the content delivery system 110.
- the content providers 104 could represent a multitude of related or distinct parties that have associated with the content delivery system 110 to provide content, such as web sites, multimedia, or other digital, network-deliverable content to the accessing computing devices 102.
- the groupings of accessing computing devices 102 and content providers 104 within FIG. 1 is intended to represent a logical, rather than physical, grouping.
- each of the components of the content delivery system 110 may be located within geographically diverse areas.
- the DNS service 112 and POPs 124 within the content delivery system 110 may be globally, continentally, or regionally disparate, in order to provide a wide geographical presence for the content delivery system 110.
- Network 106 may be any wired network, wireless network, or combination thereof.
- the network 106 may be a personal area network, local area network, wide area network, cable network, satellite network, cellular telephone network, or combination thereof.
- network 106 is a global area network (GAN), such as the Internet. Protocols and components for communicating via the other aforementioned types of communication networks are well known to those skilled in the art of computer communications and thus, need not be described in more detail herein.
- GAN global area network
- each of the accessing computing devices 102, content providers 104, and content delivery system 110 is depicted as having a single connection to the network 106, individual components of the accessing computing devices 102, content providers 104, and content delivery system 110 may be connected to the network 106 at disparate points. Accordingly, communication times and capabilities may vary between the components of FIG. 1.
- Accessing computing devices 102 may include any number of different computing devices capable of communicating with the content delivery system 110.
- individual accessing computing devices may correspond to a laptop or tablet computer, personal computer, wearable computer, server, personal digital assistant (PDA), hybrid PDA/mobile phone, mobile phone, electronic book reader, set-top box, camera, digital media player, and the like.
- PDA personal digital assistant
- accessing computing devices 102 may include devices utilized by both legitimate clients of the content delivery system 110 and devices utilized by malicious parties to undertake network-based attacks, such as DoS attacks, on the content delivery system 110.
- Content providers 104 may include any computing device owned or operated by an entity that has provided content to the content delivery system 110 for subsequent transmission to client computing devices (which may include one or more accessing computing devices 102).
- content providers 104 may include servers hosting web sites, streaming audio, video, or multimedia services, data analytics services, or other network- accessible services. While illustratively shown in FIG. 1 as a network-attached computing device, content providers 104 may additionally or alternatively provide content to the content delivery system 110 via non-networked communication channels (e.g., via physical delivery of data).
- Each POP 120 may include a variety of computing devices configured to serve content to accessing computing devices 102. Specifically, each POP 120 may include one or more content servers 122 associated with network addresses to which accessing computing devices 102 may address requests to obtain content from the content delivery system 110. Each POP 120 may further include a data cache 126 on which such content can be stored.
- content servers 122 of the POPs 112 can be configured to detect "cache misses”— instances in which data requested by an accessing computing device 102 is not available in the data cache 126— and to retrieve such data from another device (e.g., the content providers 104 or other data stores not shown in FIG. 1).
- the content servers 112 may be logically viewed as "edge" devices, providing a first-level cache of content on the content delivery system 110.
- the general operation of content servers 112 within a POP 120 to obtain and provide content is known within the art, and therefore will not be described in detail herein.
- each POP 120 may further include a decoding rules data store 124 configured to store one or more rules indicating how DNS -level data is encoded into network addresses.
- rules may indicate the specific bits of a network address that represent different types of DNS -level information, and the algorithms or encoding by which such information is encoded.
- Each POP 120 may be associated with a number of network addresses via which accessing computing devices 102 may address the POP 120 via the network 106.
- each network address is an internet protocol version 6 (IPv6) address.
- IPv6 internet protocol version 6
- each POP 114 may be associated with one or more specific "blocks" of network addresses, such as the "2001:db8::/48" block of IPv6 addresses (represented in classless inter- domain routing or "CIDR" notation, as is common in the art).
- each POP 120 may be configured to provide multiple sets of content, each of which may be associated with a specific content provider 104.
- Each distribution may represent a specific network-accessible service, such as a web site, available from the POP 114 or the content delivery system 110 generally.
- network addresses encoded with DNS-level information may include a first section, sometimes referred to as a routing prefix, corresponding to the block of network addresses associated with a POP 120.
- a routing prefix corresponding to the block of network addresses associated with a POP 120.
- One or more remaining bits of such network addresses may be used to designate a distribution of the content delivery system 110 from which content is requested, as well as other information utilizable by the content servers 112 to handle requests to communicate with the network addresses.
- the illustrative content delivery system 110 of FIG. 1 further includes a DNS service 112 configured to enable accessing computing devices 102 to resolve human-readable network identifiers of distributions (such as domain names or URLs) into network addresses (such as IP addresses) encoded with DNS-level information, to which requests to access content of a distribution may be transmitted.
- the DNS service 112 includes one or more DNS servers 114, each including one or more processors, memories, and data storage devices collectively configured to receive requests from accessing computing devices 102 for a specific domain name associated with a distribution.
- the DNS servers 112 may further be configured, in response, to provide one or more network addresses, associated with one or more computing devices within a POP 120, at which content of that distribution may be obtained.
- such network addresses may include encoded DNS- level information (e.g., information available at the DNS service 112 at least at the time of the request). Thereafter, the accessing computing device 114 may communicate with the POP 120, via the network addresses, to access the distribution.
- network addresses corresponding to an identifier of content on the content distribution system 110 may be included within DNS records pre-generated by the DNS service 112, and stored within a DNS record data store 119.
- one or more DNS servers 114 may generate DNS records based on one or more rules included within the encoding rules data store 116, which rules specify the format of network addresses encoded with DNS-level information, as well as information regarding a distribution to which the network address should correspond.
- Such information may be stored, for example, within the distribution data store 118, and may comprise prefix information for one or more POPs 120 at which the distribution can be accessed, hint information for the distribution (e.g., an identifier of a security certificate applicable to the distribution, an identifier of a resolver from which a corresponding DNS request was received or a location of that resolver, etc.), identifiers of rules applicable to the distribution, etc.
- the DNS service 112 may identify a prefix associated with a POP 120 from which the distribution can be accessed in order to determine the first portion of a network address for the distribution.
- the DNS service 112 may further utilize the one or more rules to determine a set of bits corresponding to an identifier of the distribution, a set of bits corresponding to hint information for the distribution, a set of bits corresponding to validity information for the network address, and a set of bits corresponding to a version identifier for the one or more rules.
- the DNS service 112 may then concatenate the prefix, set of bits for the identifier, set of bits for the hint information, set of bits for the validity information, and the set of bits for the version identifier to result in a network address in an applicable format specified under the one or more rules (e.g., IPv6).
- the DNS server 112 may then store a DNS record associating the identifier of the distribution with the generated network address with the DNS record data store 119.
- the DNS server 112 may retrieve a DNS record corresponding to the identifier (e.g., identifying one or more network addresses mapped to the identifier), and return the DNS record to the accessing computing device 102.
- a DNS server 112 may generate DNS records for a distribution periodically (e.g., every hour). In other instances, a DNS server 112 may generate DNS records for a distribution "on-the-fly," in response to requests from accessing computing devices 102 to resolve a distribution identifier. Such on-the-fly record generation may be beneficial, for example, in order to allow for use of request-specific information during generation of a network address.
- a DNS server 114 may use a region identifier associated with a resolution request (e.g., an identifier of a geographical or logical region from which the resolution request stemmed) as an input to an algorithm for generating validity information for a network address, such that POPs 120 respond to requests to communicate with the network address only if such requests stem from the same region.
- a region identifier associated with a resolution request e.g., an identifier of a geographical or logical region from which the resolution request stemmed
- the encoding rules data store 116, distribution data store 118, and DNS record data store 119 of the DNS service 112, as well as the decoding rules data store 124 and data cache 126 of the POPs 120, may correspond to any persistent or substantially persistent data storage, such as a hard drive (HDD), a solid state drive (SDD), network attached storage (NAS), a tape drive, or any combination thereof.
- HDD hard drive
- SDD solid state drive
- NAS network attached storage
- tape drive any combination thereof.
- the DNS server 112 and POPs 120 may in some embodiments utilize an external address encoding service (not shown in FIG. 1) to encode or decode DNS-level data into or from network addresses.
- the address encoding may include one or more servers configured to provide an API or other interface through which requests may be received to encode DNS-level data into a network address of a distribution, or to decode DNS-level data from a network address.
- Such servers may be in communication with a rules data store, and utilize rules from such a data store to encode or decode network addresses, in accordance with embodiments of the present disclosure.
- the content delivery system 110 may have fewer or greater components than are illustrated in FIG. 1.
- the content delivery system 110 could include various web services and/or peer-to-peer network configurations.
- the depiction of the content delivery system 110 in FIG. 1 should be taken as illustrative.
- components of the content delivery system 110 such as the DNS server 112 may be executed by one more virtual machines implemented in a hosted computing environment.
- a hosted computing environment may include one or more rapidly provisioned and released computing resources, which computing resources may include computing, networking and/or storage devices.
- a hosted computing environment may also be referred to as a cloud computing environment.
- Any one or more of the DNS servers 112, encoding rules data store 116, DNS record data store 119, distribution data store 118, content servers 122, decoding rules data store 124, and data cache 126 may be embodied in a plurality of components, each executing an instance of the respective DNS servers 112, encoding rules data store 116, DNS record data store 119, distribution data store 118, content servers 122, decoding rules data store 124, and data cache 126.
- a server or other computing component implementing any one of DNS servers 112, encoding rules data store 116, DNS record data store 119, distribution data store 118, content servers 122, decoding rules data store 124, and data cache 126 may include a network interface, memory, processing unit, and computer readable medium drive, all of which may communicate which each other may way of a communication bus.
- the network interface may provide connectivity over the network 106 and/or other networks or computer systems.
- the processing unit may communicate to and from memory containing program instructions that the processing unit executes in order to operate the respective DNS servers 112, encoding rules data store 116, DNS record data store 119, distribution data store 118, content servers 122, decoding rules data store 124, and data cache 126.
- the memory may generally include random access memory (RAM), read only memory (ROM), other persistent and auxiliary memory, and/or any non-transitory computer-readable media.
- FIG. 2 depicts one embodiment of an architecture of a server 200 that may implement a DNS server 114 of the DNS service 112 or other components described herein.
- the general architecture of server 200 depicted in FIG. 2 includes an arrangement of computer hardware and software components that may be used to implement aspects of the present disclosure.
- the server 200 includes a processing unit 204, a network interface 206, a computer readable medium drive 207, an input/output device interface 220, a display 222, and an input device 224, all of which may communicate with one another by way of a communication bus.
- the network interface 206 may provide connectivity to one or more networks or computing systems, such as the network 106 of FIG. 1.
- the processing unit 204 may thus receive information and instructions from other computing systems or services via a network.
- the processing unit 204 may also communicate to and from memory 210 and further provide output information for an optional display 222 via the input/output device interface 220.
- the input/output device interface 220 may also accept input from the optional input device 224, such as a keyboard, mouse, digital pen, etc.
- the server 200 may include more (or fewer) components than those shown in FIG. 2.
- some embodiments of the server 200 may omit the display 222 and input device 224, while providing input/output capabilities through one or more alternative communication channel (e.g., via the network interface 206).
- the memory 210 may include computer program instructions that the processing unit 204 executes in order to implement one or more embodiments.
- the memory 210 generally includes random access memory (RAM), read only memory (ROM) and/or other persistent or non-transitory memory.
- RAM random access memory
- ROM read only memory
- the memory 210 may store an operating system 214 that provides computer program instructions for use by the processing unit 204 in the general administration and operation of the server 200.
- the memory 210 may further include computer program instructions and other information for implementing aspects of the present disclosure.
- the memory 210 includes user interface software 212 that generates user interfaces (and/or instructions therefor) for display upon a computing device, e.g., via a navigation interface such as a web browser installed on the computing device
- memory 210 may include or communicate with one or more auxiliary data stores, such as data store 226, which may correspond to any persistent or substantially persistent data storage, such as a hard drive (HDD), a solid state drive (SDD), network attached storage (NAS), a tape drive, or any combination thereof.
- the data store 226 may correspond to the encoding rules data store 116, the DNS record data store 119, the distribution data store 118, or any combination thereof.
- the memory 210 may include address encoding software 216 that may be executed by the processing unit 204.
- the address encoding software 216 implements various aspects of the present disclosure, e.g., the generation DNS records including network address encoded with DNS-level information.
- FIGS. 3 A and 3B a set of illustrative interactions will be described for the generation and use of network addresses encoded with DNS-level information on a content delivery system 110.
- FIG. 3A depicts illustrative interactions for the generation of DNS records mapping a distribution identifier to a network address encoded with DNS-level information, and for transmission of such a DNS record to an accessing computing device 102A.
- FIG. 3B depicts illustrative interactions for the handling of a communication request from the accessing computing device 102A to the network address encoded with DNS- level information. For the ease of illustration, the interactions of FIGS.
- 3 A and 3B will be described with reference to an individual accessing computing device 102A requesting to access an individual distribution on the content delivery system 110, and with reference to an individual network address of that distribution. However, similar interactions may occur in some embodiments with respect to multiple accessing computing devices 102A (accessing one or more distributions), multiple distributions, multiple network addresses for a given distribution, or any combination thereof.
- the interactions of FIG. 3A begin at (1), where the DNS service 112 loads encoding rules for encoding DNS-level information of a distribution into a network address.
- such rules may be loaded from the encoding rules data store 116.
- the loaded rules may be generally static or constant across time or distributions.
- the loaded rules may differ based on the specific distribution (e.g., as a high risk or non-high risk distribution), based on the time of day (e.g., to vary network address formats to prevent knowledge by unauthorized devices), or based on other criteria.
- the DNS service 112 encodes DNS-level data into a network address according to the obtained rules.
- the DNS service 112 may determine one or more fields for DNS-level information specified by the rules, generate data corresponding to each field according to an algorithm specified in the rule, and concatenate that data according to an ordering specified within the rule to result in a network address. Thereafter, at (3), the DNS service 112 can generate a DNS record mapping an identifier of the distribution, such as a domain name, to the network address encoded with DNS-level data, and store the DNS record within the DNS record data store 119.
- an identifier of the distribution such as a domain name
- FIG. 4 is an illustrative visualization or graphical depiction of a potential format for network addresses with encoded DNS-level data.
- FIG. 4 depicts an illustrative format for a 128 bit network address, which may conform, for example, to the IPv6 format.
- the 128 bit network address of FIG. 4 is divided into 8 logical bit groups, each corresponding to 16 of the 128 bits of the network address.
- Each field of DNS-level data within an encoded network address may be represented by the values of bits within a given bit group. For example, as shown in FIG.
- the first 48 bits of the network address may be used to represent a routing prefix.
- Each routing prefix may be associated, for example, with one or more POPs 120, such that network packets addressed to any network address with a given prefix will be routed via the network 106 to the corresponding POP 120 to which the prefix is assigned.
- the length and content of the routing prefix may be collectively agreed on by participants in the network 106, and thus the DNS service 112 may be configured to maintain such prefixes without encoding DNS-level data into the prefixes.
- all or a portion of the remaining bits of a network address (e.g., other than the routing prefix) may be used to represent encoded DNS-level information.
- bit group 8 (the final 16 bits of the network address) may be used to uniquely identify a distribution associated with the network address.
- a network address encoded according to the format of FIG. 4 may directly represent that unique identifier within bit group 8.
- a network address encoded according to the format of FIG. 4 may represent that unique identifier as a hash value, generated by passing the unique identifier through a hashing function.
- the specific number of bits utilized to represent a distribution identifier may vary, for example, on the number of different distribution identifiers supported under a given format, and the probability of collisions between different identifiers under a given encoding scheme.
- a receiving device e.g., a content server 122
- Additional DNS-level information that may be included within a network address according to the illustrative format of FIG. 4 includes a rule identifier represented by bit group 4, validity information represented by bit group 5, and hint information represented by bit group 6.
- the bits of group 4 may identify a rule that describes the network address encoding format shown in FIG. 4 (e.g., identifier "0001"), and may be used to identify network addresses encoded according to the network address encoding format shown in FIG. 4 from other potential formats.
- a receiving device e.g., a content server 122
- the bits of group 5, representing validity information may represent a digital signature generated based on a private key of the DNS service 112 along with a set of inputs, which may include, for example, the values of other bit groups of the network address.
- a receiving device e.g., a content server 122
- may verify the validity of the network address by confirming the digital signature e.g., decrypting the digital signature using a corresponding cryptographic public key and comparing a resulting value to an independent hash of the same set of inputs).
- the bits of groups 6 and 7, representing hint information may represent information informing a receiving device of how to handle requests to communicate with the network address, such as an identifier of a security certificate to utilize in creating a secure communication channel with an accessing computing device 102.
- a receiving device e.g., a content server 122
- Additional examples of hint information may include, for example, an identifier or network address of a resolver from which a DNS request corresponding to the encoded network address was received, a location of that resolver, etc.
- FIG. 4 While one potential format of a network address with encoded DNS-level information is shown in FIG. 4, other formats are possible and contemplated under the present disclosure. For example, more than 48 bits may be included within a routing prefix, or an additional bit group (e.g., bit group 4) may be used as a subnet prefix, in accordance with IPv6 protocols. Moreover, the specific bits used to identify each type of DNS-level data may vary according to different potential formats. While these bits are shown in FIG. 4 as 16-bit groups for ease of description, any number of bits may be used to identify each type of DNS-level data.
- less than 16 or 32 bits may be sufficient to store a rule identifier or hint information, respectively (e.g., in the instance where less 65,536 total rule identifiers or 2 32 hint information values are intended to be supported). More than 16 bits may be used to store validity information (e.g., according to a strength of security desired) or distribution identifiers (e.g., according to the number of identifiers supported and a potential for collisions should a hash function be utilized). Any number of algorithms, including a variety of known hash algorithms, may be utilized to determine the bit values representative of given DNS-level data. Thus, the size, content, and arrangement of DNS-level data as encoded into a network address may vary.
- a network address may be encrypted.
- the values of any one or more of bit groups 4 through 8 as shown in FIG. 4 may be encrypted according to public key encryption (using a public key) to represent an encrypted bit group, and a network address may be returned including at least one encrypted bit group. Thereafter, the values of the encrypted bit groups may be decrypted utilizing a corresponding private key, to determine the unencrypted values of the bit groups.
- a DNS server 112 may be configured to provide network addresses including at least one encrypted bit group within a DNS response, and one or more routers of the content delivery system 110 may be configured to decrypt the bit groups on receiving a data packet addressed to a network address including an encrypted bit group.
- the router may validate or verify integrity of the network address (e.g., using validity information encoded into the network address, such as a digital signature), before forwarding the data packet within the content delivery system 110 (e.g., utilizing the unencrypted network address).
- the network addresses utilized within the content delivery system 110 may be kept confidential to devices outside of the content delivery system 110 (or without a private key utilized by the content delivery system 110).
- DNS-level information may be encrypted as described above, other data conveyed by a network address may additionally or alternatively be encrypted.
- a network assigns network addresses sequentially, randomly, or via another distribution mechanism
- all or a portion of such network addresses may be encrypted before being provided in a DNS response
- a receiving device e.g., a content server 112, a router, etc.
- the DNS service 112 may function to obtain requests to resolve an identifier of the distribution from an accessing computing device 102A, as shown at (4). While this request is shown in FIG. 3A as beginning at the accessing computing device 102A and terminating at the DNS service 112, the request may be transmitted according to well-known DNS transmission protocols, and thus may pass through any number of intermediary devices (e.g., DNS resolvers) prior to arriving at the DNS service 112. Thus, the DNS service 112 may not be directly aware of the identity of the accessing computing device 102A.
- intermediary devices e.g., DNS resolvers
- the DNS service 112 may return the DNS record referencing the network address encoded with DNS-level data.
- the response may be transmitted according to well-known DNS transmission protocols, and thus may pass through any number of intermediary devices (e.g., DNS resolvers) prior to arriving at the accessing computing device 102A.
- the accessing computing device 102A may then transmit network data to the network address referenced in the DNS record, as will be described with reference to FIG. 3B.
- the DNS service 112 may in some instances maintain multiple DNS records for a distribution (e.g., each including a network address associated with a different POP 120), and distribute the DNS records according to a load balancing or traffic shaping algorithm (e.g., round robin).
- the DNS service 112 may in some instances operate to generate or modify DNS records on-the-fly, in response to requests to resolve a distribution identifier.
- the DNS service 112 may generate validity data for a network address based at least in part on attributes of the request, such as a geographic or logical region from which the request was received.
- the DNS service 112 may in some instances modify a TTL value for a DNS record to corresponding to a length of time until the DNS service 112 is configured to generate new validity data for network addresses of a distribution associated with the DNS record.
- these devices can be expected to consider a DNS record expired at or before the content delivery system 110 would consider the network address in the record as invalid due to a change in validity information.
- different accessing computing devices 102 may obtain different DNS records from the DNS service 112, even when requesting to resolve the same distribution identifier, and the ordering and content of the interactions of FIG. 3A should be viewed as illustrative in nature.
- FIG. 3B illustrative interactions will be described for the handling of a communication request from the accessing computing device 102A to the network address encoded with DNS-level information.
- the interactions of FIG. 3B are numbered in sequence with those of FIG. 3A; however, the interactions of FIG. 3A and 3B may in some instances occur separately (e.g., in the case of a network attack, where multiple accessing computing devices 102A may transmit data to a network address obtained by DNS request of a different accessing computing device 102A).
- the interactions of FIG. 1 begin at (6), where the accessing computing device 102A transmits a request to access content of a distribution to a network address including encoded DNS-level data (e.g., as referenced within a DNS record obtained from the DNS service 112).
- the request may be routed via the network to a POP 120 associated with a routing prefix within the network address, where the request may be processed according to a content server 122 (e.g., as selected according to load balancing of the POP 120).
- the POP 120 may load one or more decoding rules for the network address from the decoding rules data store 124. In some instances, the loaded rules may be generally static, and the POP 120 may load a current set of decoding rules.
- the POP 120 may load a set of rules corresponding to a version identifier represented by bits of the encoded network address (e.g., where the bits of the encoded network address representing the version identifier are identifiable without the rules themselves, such as by locating the bits in a common position across a set of potential rules).
- the POP 120 can decode DNS-level data from the network address, according to the decoding rules.
- the POP 120 may utilize the decoding rules to determine a distribution identifier, hint information, and validity information associated with the request.
- each type of DNS-level data may be obtained my inspecting a set of bits corresponding to the DNS-level data, as identified in the decoding rules.
- a set of bits may be further processed according to algorithms of the decoding rules to transform the bits into a format useable by the POP 120 (e.g., by reversing an encoding of a particular type of DNS-level data).
- the POP 120 can validate the request to access content at least partly based on validity information included within the network address to which the request is transmitted.
- validity information may include both a time of generation of a network address and a TTL value for the network address (or for a DNS record including the network address).
- a receiving device may decode the time of generation value and TTL value, and utilize these values to determine whether the network address should be considered valid (e.g., wherein if the time of generation value plus the TTL value does not meet or exceed a current time, the network address may be considered invalid.
- the POP 120 may generate a corresponding hash using those remaining bits of the network address and a decrypted value representing a decryption of the digital signature using a public key of the DNS service 112, and verify that the decrypted value and generated hash match.
- the public/private key pair utilized to generate a digital signature may be specified within the network address (e.g., by a version identifier identifying a public/private key pair from a pre-established list). In other instances, the public/private key pair utilized to generate a digital signature may be separately agreed upon by the DNS service 112 and the POP 120.
- the DNS server 112, the POP 120, or a third component may periodically generate or select a new public/private key pair for use by the DNS service 112 and the POP 120, and the POP 120 may, after a threshold period of time subsequent to generation of a new public/private key pair (e.g., matching a TTL value of DNS records provided by the DNS service 112), consider network addresses with digital signatures generated under prior public/private key pairs to be invalid. This may enable the POP 120 to independently enforce TTL values of DNS records using digital signature verification.
- a threshold period of time subsequent to generation of a new public/private key pair e.g., matching a TTL value of DNS records provided by the DNS service 112
- the POP 120 may verify the digital signature using such inputs. In the instance that the network address is considered valid, the POP 120 may continue to process the request. Otherwise, the POP 120 may consider the request invalid, and decline to further process the request (e.g., by "blackholing" the request). While validation of a request is described with reference to the POP 120 generally, such validation may occur at a variety of locations within the POP 120, such as at a content server 122 or at routers of the POP 120 (which routers are not shown in FIG. 3B) acting as intermediaries between a content server 112 and the accessing computing device 102A.
- the public key corresponding to a digital signature may be made publically available by the content delivery system 110.
- components external to the content delivery system 110 may be enabled to verify digital signatures included within network addresses.
- an accessing computing device 102 may include software configured to validate digital signatures in network addresses returned as part of a response to a DNS request, which may prevent or deter falsification or modification of DNS responses (e.g., via a man-in-the-middle attack).
- routers or communication devices on the network 106 may be configured to verify digitally signed network addresses before forwarding such addresses, to prevent malicious traffic on the network 106.
- the POP 120 initiates communication with the accessing computing device 102A and obtains content responsive to the request, based at least partly on the DNS-level information.
- the POP 120 may initiate secure communications with the accessing computing device 102A based on a security certificate identified by the hint information of the network address.
- the POP 120 may further access a requested portion of content corresponding to the distribution within the data cache 126 based on a distribution identifier of the network address. Thereafter, the POP 120 can return the requested content to the accessing computing device 102, at (11).
- the accessing computing device 102A can utilize a network address encoded with DNS-level information to access content on the content delivery system 110.
- POPs 120 may additionally be configured to process and handle malicious communications from illegitimate accessing computing devices 102.
- malicious communications may include invalid validity information (e.g., by virtue of the fact that the DNS service 112 has altered the validity information since a targeted network address was obtained by the illegitimate accessing computing devices 102), and thus may be ignored by the POP 120.
- network addresses may include a distribution identifier as encoded DNS-level data, the POPs 120 may be enabled to identify, from the network address (and potentially without any additional information), a distribution targeted by a network attack.
- the POPs 120 may then undertake actions to mitigate the network attack, such as requesting that the DNS service 112 modify DNS records for the targeted distribution to include new validity information. Further illustrations of actions that may be used to mitigate network attacks are described in more detail within U.S. Patent Application No. 14/864,683, entitled “MITIGATING NETWORK ATTACKS,” and filed 09/24/2015, the entirety of which is hereby incorporated by reference.
- All of the methods and processes described above may be embodied in, and fully automated via, software code modules executed by one or more general purpose computers or processors.
- the code modules may be stored in any type of non-transitory computer-readable medium or other computer storage device. Some or all of the methods may alternatively be embodied in specialized computer hardware.
- Disjunctive language such as the phrase "at least one of X, Y or Z," unless specifically stated otherwise, is otherwise understood with the context as used in general to present that an item, term, etc., may be either X, Y or Z, or any combination thereof (e.g., X, Y and/or Z). Thus, such disjunctive language is not generally intended to, and should not, imply that certain embodiments require at least one of X, at least one of Y or at least one of Z to each be present.
- a device configured to are intended to include one or more recited devices. Such one or more recited devices can also be collectively configured to carry out the stated recitations.
- a processor configured to carry out recitations A, B and C can include a first processor configured to carry out recitation A working in conjunction with a second processor configured to carry out recitations B and C.
- a system to provide digitally signed network addresses comprising:
- DNS domain name system
- the network address includes at least the routing prefix and the encrypted portion
- a router computing device associated with the network and configured with computer-executable instructions to:
- Clause 3 The system of Clause 1, wherein the network address is formatted as an Internet Protocol version 6 (IPv6) address.
- IPv6 Internet Protocol version 6
- Clause 4 The system of Clause 1, wherein the network address is formatted to include the routing prefix as a first set of bits within the network address and the encrypted portion as a second set of bits within the network address.
- Clause 5 The system of Clause 1, wherein the routing prefix represents routing information to route a data packet to the network including the content server from a publically addressable network.
- a computer-implemented method comprising:
- obtaining a DNS request to resolve a domain name into a network address determining a routing prefix of the network address, wherein the routing prefix is associated with a network including a computing device associated with the domain name;
- the network address includes at least the routing prefix and the encrypted portion
- Clause 7 The computer-implemented method of Clause 6, wherein the additional portion includes at least one of a value assigned to the content server, DNS- level information associated with the DNS request, or a digital signature associated with a DNS server.
- Clause 8 The computer- implemented method of Clause 6, wherein the DNS- level information includes at least one of the domain name, security information associated with the domain name, timing information of the DNS request, or information specifying a source of the DNS request.
- Clause 9 The computer-implemented method of Clause 8 further comprising generating the DNS -level information by encoding at least one of the domain name according to one or more encoding rules.
- Clause 10 The computer-implemented method of Clause 6 further comprising:
- routing the data packet based at least in part on the decrypted information comprises:
- TTL time-to-live
- routing the data packet based at least in part on whether a current time exceeds a combination of the time of generation and the TTL value.
- Clause 12 The computer-implemented method of Clause 10, wherein routing the data packet based at least in part on the decrypted information comprises:
- Clause 13 The computer-implemented method of Clause 10, wherein routing the data packet based at least in part on the decrypted information comprises:
- routing the data packet based at least in part on the validity of the encrypted value by at least one of routing the data packet to a content server when the encrypted value is valid or discarding the data packet when the encrypted value is invalid.
- Non-transitory computer-readable media comprising computer- executable instructions that, when executed, cause a computing system to:
- routing prefix of the network address, wherein the routing prefix is associated with a network including a content server associated with the domain name;
- the network address includes at least the routing prefix and the encrypted portion
- Clause 15 The non-transitory computer-readable media of Clause 14, wherein the computer-executable instructions further cause the computing system to:
- hash the additional portion of the network address according to a cryptographic hash function to result in a hash value
- the network address further includes the digital signature.
- Clause 16 The non-transitory computer-readable media of Clause 14 further comprising second computer executable instructions that, when executed by a router computing device, cause the router computing device to:
- routing the data packet based at least in part on the validity of the encrypted value by at least one of routing the data packet to a content server when the encrypted value is valid or discarding the data packet when the encrypted value is invalid.
- Clause 18 The non-transitory computer-readable media of Clause 14, wherein the computer-executable instructions cause the computing system to determine the additional portion of the network address by referencing information mapping the content server to the additional portion.
- Clause 19 The non-transitory computer-readable media of Clause 14, wherein the computer-executable instructions cause the computing system to determine the additional portion of the network address by encoding DNS-level information associated with the DNS request according to one or more encoding rules.
- Clause 20 The non-transitory computer-readable media of Clause 14, wherein the network address further comprises a version identifier indicating at least one of the cryptographic public key or a cryptographic private key corresponding to the cryptographic public key.
- a content delivery system configured to mitigate network attacks on a domain name, wherein the domain name is associated with content provided by the content delivery system, the content delivery system comprising:
- DNS domain name system
- a computing device comprising a processor configured with computer- executable instructions to:
- Clause 22 The content delivery system of Clause 21, wherein the network address is formatted as an Internet Protocol version 6 (IPv6) address.
- IPv6 Internet Protocol version 6
- Clause 23 The content delivery system of Clause 21, wherein the one or more encoding rules specify information to be included within individual bits of the network addresses.
- Clause 24 The content delivery system of Clause 21, wherein the network address comprises a first portion corresponding to routing information on a publically addressable network, and a second portion including encoded DNS-level information.
- Clause 25 The content delivery system of Clause 21, wherein the computing device is at least one of a content server computing device or a networking routing computing device.
- Clause 26 A computer-implemented method for providing DNS-level information within encoded network addresses, the computer-implemented method comprising:
- routing the data packet based at least in part on the DNS-level information decoded from the network address.
- Clause 27 The computer- implemented method of Clause 26, wherein the DNS-level information includes at least one of the domain name, security information associated with the domain name, timing information of the DNS request, information specifying a source of the DNS request, or validity information indicating a validity of the network address generated based at least in part on the DNS request.
- Clause 28 The computer-implemented method of Clause 26, wherein the DNS-level information includes the domain name, the computer-implemented method further comprising:
- Clause 30 The computer-implemented method of Clause 26, wherein the DNS -level information includes validity information, and wherein routing the data packet based at least in part on the DNS -level information decoded from the network address comprises:
- Clause 31 The computer- implemented method of Clause 26, wherein the validity information indicates a time of the DNS request, and wherein detecting that the validity information indicates that network packet is addressed to the valid network address includes detecting that a period of time between a current time and the time of the DNS request falls with a threshold time-to-live value.
- Clause 32 The computer-implemented method of Clause 26, wherein the validity information includes a digital signature associated with a public key, and wherein detecting that the validity information indicates that network packet is addressed to the valid network address includes verifying the digital signature using the public key.
- Non-transitory computer-readable media comprising computer- executable instructions for encoding DNS -level information within network addresses that, when executed, cause a computing system to: obtain one or more rules for encoding the DNS-level information into the network addresses and decoding the DNS-level information from the network addresses;
- the request includes DNS-level information associated with a DNS request to resolve a domain name into the encoded network address;
- Clause 34 The non-transitory computer-readable media of Clause 33, wherein the network request is at least one of a request to decode the encoded network address or a request to obtain content associated with the encoded network address.
- Clause 35 The non-transitory computer-readable media of Clause 33, wherein the computer-executable instructions cause the computing system to respond to the network request based at least in part on the DNS-level information by at least one of: returning the DNS-level information in response to the network request; returning content associated with the network request; discarding the network request; or forwarding the network request to a content server associated with the DNS-level information.
- Clause 36 The non-transitory computer-readable media of Clause 33, wherein the DNS-level information includes a domain name and an identifier of a security certificate associated with the domain name, and wherein the computer-executable instructions cause the computing system to respond to the network request at least partly by initiating a secure connection utilizing the security certificate.
- Clause 37 The non-transitory computer-readable media of Clause 33, wherein the one or more rules comprise multiple rule versions, and wherein the DNS-level information includes a version identifier associated with a rule version of the multiple rule versions utilized in encoding the encoded network address.
- Clause 38 The non-transitory computer-readable media of Clause 37, wherein the computer-executable instructions cause the computing system to determine a rule version of the multiple rule versions to utilize in encoding the encoded network address based at least in part on a current time and a security level associated with the domain name.
- Clause 40 The non-transitory computer-readable media of Clause 39, wherein the hash function is a cryptographic hash function.
- a system to provide digitally signed network addresses comprising:
- DNS domain name system
- hash the portion of the network address according to a cryptographic hash function to result in a hash value
- the network address includes at least the portion of the network address and the digital signature
- a router computing device configured with computer-executable instructions to:
- hash the portion of the network address according to the cryptographic hash function to result in a second hash value
- Clause 42 The system of Clause 41, wherein the router computing device is configured to route the data packet based at least in part on the validity of the digital signature by at least one of routing the data packet to a content server when the digital signature is valid or discarding the data packet when the digital signature is invalid.
- Clause 43 The system of Clause 41, wherein the network address is formatted as an Internet Protocol version 6 (IPv6) address.
- IPv6 Internet Protocol version 6
- Clause 44 The system of Clause 41, wherein the network address is formatted to include the portion as a first set of bits within the network address and the encrypted value as a second set of bits within the network address.
- a computer- implemented method comprising:
- obtaining a DNS request to resolve a domain name into a network address determining a portion of the network address based at least in part on the
- hashing the portion of the network address according to a cryptographic hash function to result in a hash value
- the network address includes at least the portion of the network address and the encrypted value; and returning the network address in response to the request.
- Clause 46 The computer-implemented method of Clause 45 further comprising:
- routing the data packet based at least in part on the validity of the encrypted value.
- Clause 47 The computer-implemented method of Clause 46, the method is performed without inspection of the content of the data packet.
- routing the data packet based at least in part on the validity of the encrypted value comprises at least one of routing the data packet to a content server when the encrypted value is valid or discarding the data packet when the encrypted value is invalid.
- Clause 49 The computer-implemented method of Clause 46, wherein the private key is included in a set of private keys, wherein individual private keys of the set of private keys are associated with individual time periods, wherein the cryptographic private key is selected according to a time of the encrypting, and wherein the cryptographic public key is selected according to a time of the decrypting.
- Clause 50 The computer-implemented method of Clause 45, wherein hashing the portion of the network address according to the cryptographic hash function comprises hashing a combination of the portion and a routing prefix according to the cryptographic hash function.
- Clause 51 The computer- implemented method of Clause 45, wherein the network address includes a first set of bits representing a routing prefix, a second set of bits representing the portion of the network address, and a third set of bits representing the encrypted value.
- Clause 52 The computer-implemented method of Clause 45, wherein the portion of the network address represents DNS -level information associated with the DNS request, the DNS -level information including at least one of the domain name, security information associated with the domain name, timing information of the DNS request, or information specifying a source of the DNS request.
- Clause 53 The computer- implemented method of Clause 45, wherein the portion of the network address includes a cryptographic public key.
- Clause 54 The computer-implemented method of Clause 45 further comprising providing a cryptographic public key to an originating device of the DNS request, wherein the originating device is configured to:
- Non-transitory computer-readable media comprising computer- executable instructions that, when executed, cause a computing system to:
- the request includes DNS- level information associated with a DNS request to resolve a domain name into the encoded network address;
- hash the portion of the network address according to a cryptographic hash function to result in a hash value
- Clause 56 The non-transitory computer-readable media of Clause 55, wherein the request for the network address is at least one of the DNS request or a request generated in response to the DNS request.
- Clause 57 The non-transitory computer-readable media of Clause 55, wherein the computer-executable instructions cause the computing system to determine the portion of the network address based at least in part on the DNS request by referencing information mapping the network address to the portion.
- Clause 58 The non-transitory computer-readable media of Clause 55, wherein the computer-executable instructions cause the computing system to determine the portion of the network address based at least in part on the DNS request by encoding the DNS -level information according to one or more encoding rules.
- Clause 59 The non-transitory computer-readable media of Clause 55, wherein the network address further comprises a version identifier indicating at least one of the cryptographic hash function or bits of the network address representing the encrypted value.
- Clause 60 The non-transitory computer-readable media of Clause 55, wherein the computer-executable instructions further cause the computing system to:
- hash the portion of the network address according to the cryptographic hash function to result in a second hash value
- Clause 61 The non-transitory computer-readable media of Clause 60, wherein the computer-executable instructions further cause the computing system to route the data packet based at least in part on the validity of the encrypted value by at least one of routing the data packet to a content server when the encrypted value is valid or discarding the data packet when the encrypted value is invalid.
- Clause 62 The non-transitory computer-readable media of Clause 55, wherein the computer-executable instructions further cause the computing system to encrypt the network address according to a cryptographic public key.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Systems and methods are described to enable a DNS service to encode information into a network address to be advertised by the DNS service. Information encoded by a DNS service may include, for example, an identifier of a content set to which the network address corresponds (e.g., a domain name) and validity information, such as a digital signature, that verifies the validity of the network address. On receiving a request to communicate with the network address, a destination device associated with the network address may decode the encoded information within the network address to assist in processing the request. In some instances, the encoded information may be used to identify malicious network transmissions, such as transmissions forming part of a network attack, potentially without reliance on other data, such as separate mappings or contents of the data transmission.
Description
NETWORK ADDRESSES WITH ENCODED DNS-LEVEL INFORMATION INCORPORATION BY REFERENCE TO ANY PRIORITY APPLICATIONS
[0001] Any and all applications for which a foreign or domestic priority claim is identified in the Application Data Sheet as filed with the present application are hereby incorporated by reference under 37 CFR 1.57.
BACKGROUND
[0002] Generally described, computing devices utilize a communication network, or a series of communication networks, to exchange data. Companies and organizations operate computer networks that interconnect a number of computing devices to support operations or provide services to third parties. The computing systems can be located in a single geographic location or located in multiple, distinct geographic locations (e.g., interconnected via private or public communication networks). Specifically, data centers or data processing centers, herein generally referred to as "data centers," may include a number of interconnected computing systems to provide computing resources to users of the data center. The data centers may be private data centers operated on behalf of an organization or public data centers operated on behalf, or for the benefit of, the general public.
[0003] Service providers or content creators (such as businesses, artists, media distribution services, etc.) can employ a series of interconnected data centers to deliver content (such as web sites, web content, or other digital data) to users or clients. These interconnected data centers are sometimes referred to as "content delivery networks" (CDNs) or content delivery systems. Existing routing and addressing technologies can enable multiple data centers associated with a content delivery system to provide similar or identical content to client computing devices. In some instances, each data center providing a set of content may be referred to as a point-of-presence ("POP"). A content delivery system can maintain POPs over a wide area (or worldwide) to enable the system to efficiently service requests from clients in a variety of locations.
[0004] To provide access to content, server computing devices are generally associated with network addresses, enabling requests for communication with the server computing devices to be routed across a network. These network addresses are generally formed
by a series of bits formatted according to a defined protocol, such as the Internet Protocol (IP) version four (IPv4) or version 6 (IPv6). Because network addresses may be difficult for humans to recognize and remember, CDNs can utilize resolution systems that function to resolve human-readable identifiers into corresponding network addresses. One example of such a resolution system is the Domain Name System (DNS), which functions to resolve domain names into corresponding network addresses.
[0005] Generally, DNS services and CDNs operate independently and according to differing protocols. For example, DNS requests from a client computing device are generally routed via the DNS protocol through multiple DNS components to a DNS service, where a network address corresponding to a domain name is returned via the DNS protocol. When a network address is obtained, the client computing device may then communicate with a server computing device associated with the network address (e.g., via the hypertext transport protocol, or "HTTP"). The respective processes of DNS resolution and communication with a network address are therefore generally logically distinct, such that a server computing device obtaining a request for content at a network address is unaware of a prior DNS resolution (if any) that facilitated the request.
BRIEF DESCRIPTION OF THE DRAWINGS
[0006] FIG. 1 is a block diagram depicting an illustrative logical network including multiple accessing computing devices 102 and content providers 104, as well as a content delivery system 110 including a DNS service and multiple POPs;
[0007] FIG. 2 is a block diagram depicting an illustrative configuration of one embodiment of a server that may implement the DNS service of FIG. 1;
[0008] FIG. 3A is a block diagram depicting interactions between an accessing computing device and the DNS service of FIG. 1 to resolve a distribution identifier into a network address including encoded DNS-level information;
[0009] FIG. 3B is a block diagram depicting interactions between an accessing computing device and a POP of FIG. 1 to provide content corresponding to a distribution identifier via a network address including encoded DNS-level information; and
[0010] FIG. 4 is an illustrative visualization of a format for encoding DNS-level information into a network address.
DETAILED DESCRIPTION
[0011] Generally described, aspects of the present disclosure relate to the utilization of specifically formatted network addresses in order to facilitate the retrieval and transmission of content on a content delivery system. More particularly, aspects of the present disclosure enable a domain name system (DNS) service to generate and use network addresses that include encoded information available to the DNS service at least at a time that a client computing device requests to resolve an identifier, such as a domain name, into a corresponding network address. Such information may be generally referred to herein as "DNS -level information" or "DNS-level data," and may include, for example, a domain name that a client computing device requested to resolve, security information (such as transport security layer ["TLS"] or secure sockets layer ["SSL"] certificates associated with a domain name), validity information (such as time-to-live, or "TTL," information), or other information available at a DNS service. In particular, a DNS service may encode all or a portion of such DNS-level information within a network address advertised by the DNS service (e.g., included within DNS records provided by the DNS service), and thus make such DNS-level information available to routers or other computing devices that receive requests to communicate with the network address. In this manner, these routers or other computing devices may gain access to the DNS-level information, which would otherwise not be communicated to the routers or other computing devices in a traditional request addressed to a network address. Use of such information may enable more efficient operation of such routers or other computing devices. For example, a router or computing device may directly obtain a domain name to which a request relates from a network address of the request, without relying on external information or mappings. As another example, a router or computing device may determine whether a request to communicate with a network address should be considered valid, based on validity information encoded into the network address. Should the request be invalid (e.g., due to an expired TTL), the request can be handled as erroneous or potentially malicious, thus enabling the router or computing device to determine validity as a function of a network address, potentially without referencing external information regarding the request. Thus, aspects of the present disclosure significantly increase the amount of information available to a computing device or router based on a network address,
and enable such routers or computing devices to more efficiently handle network communications by utilizing this newly-available information.
[0012] Aspects of the present disclosure may be utilized, for example, by a content delivery system hosting content of a multitude of entities. Such a content delivery system can function to provide client computing devices with access to a variety of different sets of content hosted by the content delivery system on behalf of third-party content providers or an operator of the content distribution service itself. Such a set of content can be generally referred to as a "distribution," and may correspond to a specific web site (e.g., as associated with a specific domain name) or other network-accessible service. Content delivery systems generally make distributions available at one or more network addresses (e.g., internet protocol or "IP" addresses), to which a computing device— either legitimate or malicious— may transmit a request for information. Traditionally, such network addresses are very limited in the amount of information they convey, because the network addresses are generally formatted to identify one or more destination computing devices on a network, and in some instances to assist in routing requests to those destination computing devices. However, due to the limited number of possible network addresses under some formats, such as IPv4, it was common to utilize the same network address to provide multiple sets of content (e.g., web sites). Thus, the same IPv4 address may identify an endpoint for many different distributions, which may or may not be associated with one another. Such scenarios presented numerous difficulties. For example, in a scenario where a specific web site was under a denial of service ("DOS") attack, data packets used to implement the attack could be addressed to a network address associated with many different web sites, making it difficult or impossible to determine the specific web site under attack based solely on the network address to which malicious data packets were addressed. Prior patent filings, such as U.S. Patent Application No. 14/815,863, entitled "IDENTIFYING TARGETS OF NETWORK ATTACKS," and filed 07/31/2015, the entirety of which is hereby incorporated by reference, sought to address such shortcomings by, for example, providing web sites with unique or substantially unique collections of network addresses.
[0013] The present application provides an additional or alternative solution to the above-noted problems, among others. Specifically, embodiments of the present disclosure can utilize one or more encoding rules to encode DNS -level data, such as a domain name to which a DNS request is directed, into a network address. Thus, a router or other computing device
receiving a data transmissions addressed to the network address may decode the network address itself in order to obtain the encoded DNS-level data. Illustratively, encoding of DNS-level data into a network address can enable routers or other computing devices to determine, from a network address to which a data packet is addressed, what domain name was included within a DNS request that preceded generation of the data packet. Advantageously, DNS-level data may therefore be determined subsequent to DNS resolution, without relying on independent or additional communication with a DNS service, and without relying on the content of data packets themselves (which, particularly in the case of network attacks, may be malformed). For example, a computing device may determine that malicious data packets transmitted to a given network address are the result of a DNS resolution of a particular domain name, and thus may further determine that the distribution associated with the domain name is the target of a network attack. The computing device may then take mitigating action to reduce or eliminate negative effects of the network attack.
[0014] Because the present disclosure enables encoding of DNS-level information into network addresses, embodiments of the present disclosure may be particularly suited for implementation with respect to network address formats having a large address space. One example of such a network address format is the IPv6 format, which utilizes 128 bit network addresses. The large number of potential network addresses within the IPv6 format (particularly in comparison to the IPv4 format) can enable DNS-level information to be encoded without negatively impacting the traditional identification and routing functions of network addresses.
[0015] While examples are provided above enabling domain names to be encoded into network addresses, other DNS-level information may additionally or alternatively be encoded into a network address under the present disclosure. For example, a DNS service may encode within a network address "hint information," that enables a router or other computing device (e.g., a server within a POP) to more efficiently service requests to communicate with the network address. Illustratively, the hint information may include an identifier of a security certificate (e.g., and SSL or TLS certificate) associated with a domain name to which the request is directed. Accordingly, when a computing device receives a request to communicate with a network address including encoded hint information, the computing device may decode the hint information, determine the security certificate identified by the hint information, and establish a secure communication channel with a client computing device. In some instances, encoding of
hint information within a network address may reduce or eliminate the need for a router or other computing device (e.g., of a CDN) to maintain a mapping of network addresses to associated security certificates, or to inspect data packets for information identifying a relevant security certificate (e.g., a "host header" within an HTTP packet). Because decoding of hint information within a network address may require less processing power or memory usage than would packet inspection or using lookups to external mappings, use of hint information can reduce the computing resources used by a router or other computing device.
[0016] Additional examples of hint information may include a network address or other information of a device from which a DNS resolution request was received (e.g., an accessing computing device, a DNS resolver used by that accessing computing device, etc.). In some instances, components of a CDN may use such information to determine how to handle subsequent requests to access content, stemming from an initial DNS resolution request. For example, where request to access content results in a "cache miss" at a POP of a CDN (e.g., where an accessing computing device requests content not stored at the POP), a POP can be configured to retrieve the requested information from another server (sometimes referred to as an "origin server"). Where the content is available at multiple origin servers, the POP may in some instances use hint information to select an appropriate origin server. For example, where a content request is addressed to a network address with hint information identifying a particular geographic or network location (e.g., as the region from which a corresponding DNS request originated), the POP may select an origin server nearby to that geographic or network location from which to obtain the relevant content.
[0017] In some embodiments, DNS-level information may further include validity information encoded into a network address by a DNS service. When such validity information is encoded into a network address, and a client computing device attempts to communicate with a destination computing device (e.g., a server within a POP) associated with the network address, that destination computing device may verify the validity information prior to initiating communication with the client computing device. In this way, a DNS service and a destination computing device may work cooperatively to ensure that all client computing devices accessing the destination computing device are legitimate users of the DNS service. Such cooperation may assist, for example, in mitigating network attacks. For example, some types of DoS attack function by instructing a first device to resolve a domain name of an attack target into an IP
address using a DNS service, and then instructing a large number of additional devices to transmit malicious data packets to the IP address. These additional devices do not interact directly with the DNS service, but instead repeat IP address information maintained by the first device. Thus, embedding validity information within an IP address that is tied specifically to the first device may enable an attack target (or other computing device) to distinguish between the first device and the additional device, substantially reducing the volume of attack traffic.
[0018] Further, network attacks are in some instances "non-re-resolving," such that resolution of a domain name of an attack target into a network address occurs only once (or very infrequently). Thus, changes to DNS records for an attack target, such as changing the network address of the attack target, can function to redirect legitimate traffic to a new network address while malicious traffic continues to flow to the defunct network address. To reduce the effect of such malicious traffic, some systems may modify configurations of routers or other computing devices to halt processing of traffic directed to a defunct network address. Such halting is sometimes referred to as "blackholing" the defunct network address, and generally involves discarding or "dropping" packets addressed to the defunct network address, either at a receiving computing device or at an intermediary network device. Traditional creation of a blackhole network address generally involves propagation of new routing information (e.g., routing tables, such as a forwarding information base or "FIB") across a network, a process that introduces additional traffic into a network and therefore can utilize significant computing resources. By inclusion of validity information into a network address, blackholing can be automated without requiring distribution of new routing information across a network. Rather, each device on a network may be configured such that any packet with invalid validity information is automatically dropped by a router or other computing device. In some instances, the protocol by which validity information is generated or verified may be modified over time, such as on an hourly basis. Thus, a network attacks that continue after modification of validity information, without re-resolving a domain name into a corresponding valid network address, would result in data packets being transmitted to an invalid network address, and such data packets could be automatically dropped within a network. Thus, the inclusion of validity information within a network address can enable computing devices to readily and efficiently distinguish legitimate from illegitimate traffic.
[0019] While illustrative examples of DNS -level information are provided above, a network address encoded according to embodiments of the present disclosure may include additional or alternative DNS-level data. For example, a DNS service may in some instances encode a unique "request identifier" into each network address provided in response to a DNS request, in order to uniquely identify content requests that stem from the DNS request. Thereafter, data can be collected from both the DNS service and corresponding POPs of a CDN, in order to determine correlations between DNS requests and subsequent content requests. For example, the CDN may determine that a given DNS request resulted in n content requests to the network address referenced in the DNS request. Thus, the examples of DNS-level data provided herein are illustrative in nature.
[0020] To enable encoding and decoding of information within a network address, a DNS service and a destination computing device (e.g., a device associated with a network address identified within a DNS record, which maps a domain name or other identifier to a network address) can each maintain one or more rules indicating how information is encoded within a network address. The rules may specify, for example, which bits of a network address represent different types of DNS-level information, and how that information is represented. Illustratively, a rule may specify that the last 16 bits of a network address represent an identifier of a distribution associated with the network address (e.g., a domain name or other unique identifier of the distribution). A rule may further specify that the penultimate 16 bits of a network address represent validity information for the network address, hint information, etc. For each type of information encoded within a network address, the rule may specify how that information is encoded. For example, a domain name may be encoded by processing the domain name according to a hash algorithm, to result in a hash value of the corresponding number of bits. Thereafter, the hash value may be included in a network address as an encoded domain name. In some instances, information may be encoded according to a cryptographic hash algorithm, such as an algorithm of the Secure Hash Algorithm family (e.g., SHA-2 or SHA-3) or an algorithm of the Message-Digest Algorithm family (e.g., MD6). For example, validity information may be generated by passing some set of inputs (e.g., values of the remaining fields encoded within a network address, a current time, an identifier of a client computing device, etc.) through a cryptographic hash to produce a digest, and then encrypting the digest with a private key to produce a digital signature that can be included in the validity information. The process
of utilizing cryptographic hashes and encoding via private keys to result in digital signatures is sometimes referred to as "public key cryptography" or "asymmetric cryptography." This process is known in the art and therefore will not be described in detail herein. However, with application to the embodiments of the present disclosure, the use of public key cryptography to generate digital signatures for inclusion in a network address can provide substantial certainty that any valid network address (e.g., with a verifiable digital signature) was obtained by interaction with a DNS service that had access to a corresponding private key.
[0021] In some instances, all or a portion of a network address may be encrypted, to avoid conveyance or modification of information to unauthorized parties. For example, DNS- level data (e.g., including a digital signature value) may be encrypted according to public key encryption. Illustratively, a DNS service may utilize a public key associated with a content server to encrypt DNS -level data of a network address (or any given portion of a network address), and the content server, on receiving data addressed to the network address, may utilize a corresponding private key to decrypt the portion and utilize the DNS-level data (or other data represented by the portion) in provide the requested information. As a further illustration, a router of the CDN may utilize a corresponding private key to decrypt a network address to which data is addressed, and utilize a decrypted value to route the data on the CDN. Encryption of DNS-level data (or other values represented in network addresses) may be beneficial in preventing authorized entities from obtaining knowledge of actual network addresses utilized within the CDN (e.g., where the decrypted network address represents a network address of a content server), or obtaining knowledge of DNS-level data encoded within a network address. In some embodiments, digital signatures and encryption of network address information may be used in conjunction to provide confidentiality, integrity, and authenticity of the network address. To ensure routability of data addressed to an encrypted network addresses, a portion of such network addresses (e.g., a routing prefix) may be left encrypted.
[0022] In some instances, network addresses may be formatted to enable an alteration of the rules for encoding information within those network addresses. For example, one or more bits of a network address may be assigned to represent a version identifier, indicative of a format of the network address. On receiving a request from a client computing device to communicate with a network address, a destination device may inspect the version identifier to determine corresponding rules, indicative of how DNS-level information is encoded within the network
address. Thus, a DNS service and corresponding CDN may alter encoding rules for network addresses periodically, or in some instances utilize multiple different encoding formats simultaneously. In one embodiment, the DNS service and CDN may identify "high risk" distributions, associated with a higher likelihood of being targeted in a network attack, and provide a distinct set of encoding rules for network address of these distributions. These rules, for example, may include stronger validity information, or may by altered more rapidly than network addresses of other, non-high risk distributions. In some instances, the rules may specify a similar or identical encoding format of information, but may vary other parameters used in such encoding. For example, the rules may specify a particular public/private key pair to utilize in encoding network addresses. Version information encoded within a network address can enable the DNS service and CDN to determine the rules under which a given network address has been encoded.
[0023] While the above description refers generally to a DNS service and corresponding destination device (e.g., as part of a CDN) that each maintain knowledge of rules for encoding network addresses, some embodiments of the present disclosure may utilize a distinct service to maintain such rules. Illustratively, both a DNS service and destination devices of a CDN may be provided with access to an application programming interface (API) of a network address encoding service, such that the DNS service and destination devices may transmit requests to the network address encoding service to generate network addresses for a given distribution or to decode DNS -level information from a network address. Use of such a network address encoding service may, for example, simplify requirements to synchronize rules between a DNS service and destination devices.
[0024] While examples are provided herein with respect to content distribution systems, embodiments of the present application may be implemented with respect to any network of computing devices that operates to serve discrete sets of content to client computing devices. Moreover, while some examples are provided with respect to a content distribution network as a whole, embodiments of the present application may also be implemented in whole or in part by discrete portions of the content delivery system. Thus, the examples provided herein are intended to be illustrative, and not exhaustive, in nature.
[0025] As will be appreciated by one of skill in the art in light of the description above, the embodiments disclosed herein substantially increase the ability of computing systems,
such as content delivery systems, to handle network communications. Specifically, embodiments disclosed herein enable more efficient routing or communication handling by providing hint information directly within a network address, reducing or eliminating the need for routing or destination devices to maintain such information separately. Moreover, embodiments disclosed herein enable identification of a specific set of content (a distribution) to which transmissions are directed, based on the network address of the transmission and regardless of the contents of the transmission. Still further, embodiments disclosed herein enable inclusion of validity information, such as a digital signature, within a network address, to assist in distinguishing legitimate communications from invalid and potentially malicious communications. Thus, the presently disclosed embodiments represent an improvement in the functioning of such computing systems, by enabling content delivery systems or other networked devices to more efficiently route and handle communications, to more efficiently identify and discard malicious communications, and to continue to service legitimate client requests even while receiving large numbers of illegitimate requests. Moreover, the presently disclosed embodiments address technical problems inherent within computing systems; specifically, the limited ability of computing systems to process network-based requests, the reliance of traditional network routing technologies on external information when routing requests to communicate with a network address, and the disassociation between a DNS service and a destination network device caused by commonly used network communication protocols. These technical problems are addressed by the various technical solutions described herein, including the encoding at a DNS service of DNS-level data within a network address, the decoding of such information at a destination device, and the use of such information to handle requests to communicate with the network address. Thus, the present application represents a substantial improvement on existing network systems and computing systems in general.
[0026] The foregoing aspects and many of the attendant advantages of the present disclosure will become more readily appreciated as the same become better understood by reference to the following, when taken in conjunction with the accompanying drawings.
[0027] FIG. 1 is a block diagram depicting an illustrative logical network 100 including multiple accessing computing devices 102 and multiple content providers 104 in communication with a content delivery system 110 via a network 106. As shown in FIG. 1, the content delivery system 110 includes a DNS service 112 enabling accessing computing
devices 102 to resolve identifiers of distributions on the content delivery system 110 (e.g., domain names) into network addresses. The content delivery system 110 further includes one or more points-of-presence (POPs) providing access to content of the distributions on the content delivery system 110. While the accessing computing devices 102 and the content providers 104 are shown as a group within FIG. 1, the accessing computing devices 102 and content providers 104 may be geographically distant, and independently owned or operated. For example, the accessing computing devices 102 could represent a multitude of users in various global, continental, or regional locations accessing the content delivery system 110. Further, the content providers 104 could represent a multitude of related or distinct parties that have associated with the content delivery system 110 to provide content, such as web sites, multimedia, or other digital, network-deliverable content to the accessing computing devices 102. Accordingly, the groupings of accessing computing devices 102 and content providers 104 within FIG. 1 is intended to represent a logical, rather than physical, grouping. Similarly, each of the components of the content delivery system 110 may be located within geographically diverse areas. For example, the DNS service 112 and POPs 124 within the content delivery system 110 may be globally, continentally, or regionally disparate, in order to provide a wide geographical presence for the content delivery system 110.
[0028] Network 106 may be any wired network, wireless network, or combination thereof. In addition, the network 106 may be a personal area network, local area network, wide area network, cable network, satellite network, cellular telephone network, or combination thereof. In the example environment of FIG. 1, network 106 is a global area network (GAN), such as the Internet. Protocols and components for communicating via the other aforementioned types of communication networks are well known to those skilled in the art of computer communications and thus, need not be described in more detail herein. While each of the accessing computing devices 102, content providers 104, and content delivery system 110 is depicted as having a single connection to the network 106, individual components of the accessing computing devices 102, content providers 104, and content delivery system 110 may be connected to the network 106 at disparate points. Accordingly, communication times and capabilities may vary between the components of FIG. 1.
[0029] Accessing computing devices 102 may include any number of different computing devices capable of communicating with the content delivery system 110. For
example, individual accessing computing devices may correspond to a laptop or tablet computer, personal computer, wearable computer, server, personal digital assistant (PDA), hybrid PDA/mobile phone, mobile phone, electronic book reader, set-top box, camera, digital media player, and the like. Further, accessing computing devices 102 may include devices utilized by both legitimate clients of the content delivery system 110 and devices utilized by malicious parties to undertake network-based attacks, such as DoS attacks, on the content delivery system 110.
[0030] Content providers 104 may include any computing device owned or operated by an entity that has provided content to the content delivery system 110 for subsequent transmission to client computing devices (which may include one or more accessing computing devices 102). For example, content providers 104 may include servers hosting web sites, streaming audio, video, or multimedia services, data analytics services, or other network- accessible services. While illustratively shown in FIG. 1 as a network-attached computing device, content providers 104 may additionally or alternatively provide content to the content delivery system 110 via non-networked communication channels (e.g., via physical delivery of data).
[0031] The content provided to the content delivery system 110 by the content providers 104 may be wholly or partially hosted in POPs 120. Each POP 120 may include a variety of computing devices configured to serve content to accessing computing devices 102. Specifically, each POP 120 may include one or more content servers 122 associated with network addresses to which accessing computing devices 102 may address requests to obtain content from the content delivery system 110. Each POP 120 may further include a data cache 126 on which such content can be stored. Because the amount of storage space of each data cache 126 may be limited, content servers 122 of the POPs 112 can be configured to detect "cache misses"— instances in which data requested by an accessing computing device 102 is not available in the data cache 126— and to retrieve such data from another device (e.g., the content providers 104 or other data stores not shown in FIG. 1). Thus, the content servers 112 may be logically viewed as "edge" devices, providing a first-level cache of content on the content delivery system 110. The general operation of content servers 112 within a POP 120 to obtain and provide content is known within the art, and therefore will not be described in detail herein. In accordance with embodiments of the present disclosure, each POP 120 may further include a
decoding rules data store 124 configured to store one or more rules indicating how DNS -level data is encoded into network addresses. As will be described below, such rules may indicate the specific bits of a network address that represent different types of DNS -level information, and the algorithms or encoding by which such information is encoded.
[0032] Each POP 120 may be associated with a number of network addresses via which accessing computing devices 102 may address the POP 120 via the network 106. In one embodiment, each network address is an internet protocol version 6 (IPv6) address. For example, each POP 114 may be associated with one or more specific "blocks" of network addresses, such as the "2001:db8::/48" block of IPv6 addresses (represented in classless inter- domain routing or "CIDR" notation, as is common in the art). Further, each POP 120 may be configured to provide multiple sets of content, each of which may be associated with a specific content provider 104. Generally, these discrete sets of content may be referred to herein as a "distribution." Each distribution may represent a specific network-accessible service, such as a web site, available from the POP 114 or the content delivery system 110 generally. As described below, network addresses encoded with DNS-level information may include a first section, sometimes referred to as a routing prefix, corresponding to the block of network addresses associated with a POP 120. Thus, communications transmitted to these network addresses via the network 106 would be expected to arrive at the POP 120 associated with the routing prefix. One or more remaining bits of such network addresses (e.g., other than the routing prefix) may be used to designate a distribution of the content delivery system 110 from which content is requested, as well as other information utilizable by the content servers 112 to handle requests to communicate with the network addresses.
[0033] The illustrative content delivery system 110 of FIG. 1 further includes a DNS service 112 configured to enable accessing computing devices 102 to resolve human-readable network identifiers of distributions (such as domain names or URLs) into network addresses (such as IP addresses) encoded with DNS-level information, to which requests to access content of a distribution may be transmitted. Specifically, the DNS service 112 includes one or more DNS servers 114, each including one or more processors, memories, and data storage devices collectively configured to receive requests from accessing computing devices 102 for a specific domain name associated with a distribution. The DNS servers 112 may further be configured, in response, to provide one or more network addresses, associated with one or more computing
devices within a POP 120, at which content of that distribution may be obtained. In accordance with embodiments of the present disclosure, such network addresses may include encoded DNS- level information (e.g., information available at the DNS service 112 at least at the time of the request). Thereafter, the accessing computing device 114 may communicate with the POP 120, via the network addresses, to access the distribution. In one embodiment, network addresses corresponding to an identifier of content on the content distribution system 110 (a "distribution identifier," which may correspond, for example, to a domain name or uniform resource identifier ["URI"]) may be included within DNS records pre-generated by the DNS service 112, and stored within a DNS record data store 119. Illustratively, one or more DNS servers 114 may generate DNS records based on one or more rules included within the encoding rules data store 116, which rules specify the format of network addresses encoded with DNS-level information, as well as information regarding a distribution to which the network address should correspond. Such information may be stored, for example, within the distribution data store 118, and may comprise prefix information for one or more POPs 120 at which the distribution can be accessed, hint information for the distribution (e.g., an identifier of a security certificate applicable to the distribution, an identifier of a resolver from which a corresponding DNS request was received or a location of that resolver, etc.), identifiers of rules applicable to the distribution, etc. For example, the DNS service 112 may identify a prefix associated with a POP 120 from which the distribution can be accessed in order to determine the first portion of a network address for the distribution. The DNS service 112 may further utilize the one or more rules to determine a set of bits corresponding to an identifier of the distribution, a set of bits corresponding to hint information for the distribution, a set of bits corresponding to validity information for the network address, and a set of bits corresponding to a version identifier for the one or more rules. The DNS service 112 may then concatenate the prefix, set of bits for the identifier, set of bits for the hint information, set of bits for the validity information, and the set of bits for the version identifier to result in a network address in an applicable format specified under the one or more rules (e.g., IPv6). The DNS server 112 may then store a DNS record associating the identifier of the distribution with the generated network address with the DNS record data store 119. When a request is obtained from an accessing computing device 102 to resolve the identifier of the distribution, the DNS server 112 may retrieve a DNS record corresponding to the identifier (e.g., identifying one or more network addresses mapped to the identifier), and return the DNS record
to the accessing computing device 102. In some instances, a DNS server 112 may generate DNS records for a distribution periodically (e.g., every hour). In other instances, a DNS server 112 may generate DNS records for a distribution "on-the-fly," in response to requests from accessing computing devices 102 to resolve a distribution identifier. Such on-the-fly record generation may be beneficial, for example, in order to allow for use of request-specific information during generation of a network address. For example, in some instances, a DNS server 114 may use a region identifier associated with a resolution request (e.g., an identifier of a geographical or logical region from which the resolution request stemmed) as an input to an algorithm for generating validity information for a network address, such that POPs 120 respond to requests to communicate with the network address only if such requests stem from the same region.
[0034] The encoding rules data store 116, distribution data store 118, and DNS record data store 119 of the DNS service 112, as well as the decoding rules data store 124 and data cache 126 of the POPs 120, may correspond to any persistent or substantially persistent data storage, such as a hard drive (HDD), a solid state drive (SDD), network attached storage (NAS), a tape drive, or any combination thereof.
[0035] As noted above, while the encoding and decoding of DNS-level data into or from network addresses is generally described with reference to the DNS server 112 and POPs 120, either or both the DNS server 112 and POPs 120 may in some embodiments utilize an external address encoding service (not shown in FIG. 1) to encode or decode DNS-level data into or from network addresses. For example, the address encoding may include one or more servers configured to provide an API or other interface through which requests may be received to encode DNS-level data into a network address of a distribution, or to decode DNS-level data from a network address. Such servers may be in communication with a rules data store, and utilize rules from such a data store to encode or decode network addresses, in accordance with embodiments of the present disclosure.
[0036] It will be appreciated by those skilled in the art that the content delivery system 110 may have fewer or greater components than are illustrated in FIG. 1. In addition, the content delivery system 110 could include various web services and/or peer-to-peer network configurations. Thus, the depiction of the content delivery system 110 in FIG. 1 should be taken as illustrative. For example, in some embodiments, components of the content delivery system 110, such as the DNS server 112, may be executed by one more virtual machines
implemented in a hosted computing environment. A hosted computing environment may include one or more rapidly provisioned and released computing resources, which computing resources may include computing, networking and/or storage devices. A hosted computing environment may also be referred to as a cloud computing environment.
[0037] Any one or more of the DNS servers 112, encoding rules data store 116, DNS record data store 119, distribution data store 118, content servers 122, decoding rules data store 124, and data cache 126 may be embodied in a plurality of components, each executing an instance of the respective DNS servers 112, encoding rules data store 116, DNS record data store 119, distribution data store 118, content servers 122, decoding rules data store 124, and data cache 126. A server or other computing component implementing any one of DNS servers 112, encoding rules data store 116, DNS record data store 119, distribution data store 118, content servers 122, decoding rules data store 124, and data cache 126 may include a network interface, memory, processing unit, and computer readable medium drive, all of which may communicate which each other may way of a communication bus. The network interface may provide connectivity over the network 106 and/or other networks or computer systems. The processing unit may communicate to and from memory containing program instructions that the processing unit executes in order to operate the respective DNS servers 112, encoding rules data store 116, DNS record data store 119, distribution data store 118, content servers 122, decoding rules data store 124, and data cache 126. The memory may generally include random access memory (RAM), read only memory (ROM), other persistent and auxiliary memory, and/or any non-transitory computer-readable media.
[0038] FIG. 2 depicts one embodiment of an architecture of a server 200 that may implement a DNS server 114 of the DNS service 112 or other components described herein. The general architecture of server 200 depicted in FIG. 2 includes an arrangement of computer hardware and software components that may be used to implement aspects of the present disclosure. As illustrated, the server 200 includes a processing unit 204, a network interface 206, a computer readable medium drive 207, an input/output device interface 220, a display 222, and an input device 224, all of which may communicate with one another by way of a communication bus. The network interface 206 may provide connectivity to one or more networks or computing systems, such as the network 106 of FIG. 1. The processing unit 204 may thus receive information and instructions from other computing systems or services via a
network. The processing unit 204 may also communicate to and from memory 210 and further provide output information for an optional display 222 via the input/output device interface 220. The input/output device interface 220 may also accept input from the optional input device 224, such as a keyboard, mouse, digital pen, etc. In some embodiments, the server 200 may include more (or fewer) components than those shown in FIG. 2. For example, some embodiments of the server 200 may omit the display 222 and input device 224, while providing input/output capabilities through one or more alternative communication channel (e.g., via the network interface 206).
[0039] The memory 210 may include computer program instructions that the processing unit 204 executes in order to implement one or more embodiments. The memory 210 generally includes random access memory (RAM), read only memory (ROM) and/or other persistent or non-transitory memory. The memory 210 may store an operating system 214 that provides computer program instructions for use by the processing unit 204 in the general administration and operation of the server 200. The memory 210 may further include computer program instructions and other information for implementing aspects of the present disclosure. For example, in one embodiment, the memory 210 includes user interface software 212 that generates user interfaces (and/or instructions therefor) for display upon a computing device, e.g., via a navigation interface such as a web browser installed on the computing device In addition, memory 210 may include or communicate with one or more auxiliary data stores, such as data store 226, which may correspond to any persistent or substantially persistent data storage, such as a hard drive (HDD), a solid state drive (SDD), network attached storage (NAS), a tape drive, or any combination thereof. Illustratively, the data store 226 may correspond to the encoding rules data store 116, the DNS record data store 119, the distribution data store 118, or any combination thereof.
[0040] In addition to the user interface module 212, the memory 210 may include address encoding software 216 that may be executed by the processing unit 204. In one embodiment, the address encoding software 216 implements various aspects of the present disclosure, e.g., the generation DNS records including network address encoded with DNS-level information.
[0041] With reference to FIGS. 3 A and 3B, a set of illustrative interactions will be described for the generation and use of network addresses encoded with DNS-level information
on a content delivery system 110. Specifically, FIG. 3A depicts illustrative interactions for the generation of DNS records mapping a distribution identifier to a network address encoded with DNS-level information, and for transmission of such a DNS record to an accessing computing device 102A. FIG. 3B depicts illustrative interactions for the handling of a communication request from the accessing computing device 102A to the network address encoded with DNS- level information. For the ease of illustration, the interactions of FIGS. 3 A and 3B will be described with reference to an individual accessing computing device 102A requesting to access an individual distribution on the content delivery system 110, and with reference to an individual network address of that distribution. However, similar interactions may occur in some embodiments with respect to multiple accessing computing devices 102A (accessing one or more distributions), multiple distributions, multiple network addresses for a given distribution, or any combination thereof.
[0042] The interactions of FIG. 3A begin at (1), where the DNS service 112 loads encoding rules for encoding DNS-level information of a distribution into a network address. Illustratively, such rules may be loaded from the encoding rules data store 116. In some instances, the loaded rules may be generally static or constant across time or distributions. In other instances, the loaded rules may differ based on the specific distribution (e.g., as a high risk or non-high risk distribution), based on the time of day (e.g., to vary network address formats to prevent knowledge by unauthorized devices), or based on other criteria. Thereafter, at (2), the DNS service 112 encodes DNS-level data into a network address according to the obtained rules. Illustratively, the DNS service 112 may determine one or more fields for DNS-level information specified by the rules, generate data corresponding to each field according to an algorithm specified in the rule, and concatenate that data according to an ordering specified within the rule to result in a network address. Thereafter, at (3), the DNS service 112 can generate a DNS record mapping an identifier of the distribution, such as a domain name, to the network address encoded with DNS-level data, and store the DNS record within the DNS record data store 119.
[0043] Further detail regarding the generation of network addresses with encoded DNS-level data will be described with reference to FIG. 4, which is an illustrative visualization or graphical depiction of a potential format for network addresses with encoded DNS-level data. Specifically, FIG. 4 depicts an illustrative format for a 128 bit network address, which may conform, for example, to the IPv6 format. For ease of depiction, the 128 bit network address of
FIG. 4 is divided into 8 logical bit groups, each corresponding to 16 of the 128 bits of the network address. Each field of DNS-level data within an encoded network address may be represented by the values of bits within a given bit group. For example, as shown in FIG. 4, the first 48 bits of the network address may be used to represent a routing prefix. Each routing prefix may be associated, for example, with one or more POPs 120, such that network packets addressed to any network address with a given prefix will be routed via the network 106 to the corresponding POP 120 to which the prefix is assigned. Illustratively, the length and content of the routing prefix may be collectively agreed on by participants in the network 106, and thus the DNS service 112 may be configured to maintain such prefixes without encoding DNS-level data into the prefixes. As shown in FIG. 4, all or a portion of the remaining bits of a network address (e.g., other than the routing prefix) may be used to represent encoded DNS-level information. For example, bit group 8 (the final 16 bits of the network address) may be used to uniquely identify a distribution associated with the network address. Illustratively, where each distribution on the content delivery system 110 is associated with a unique identifier representable in 16 bits or less, a network address encoded according to the format of FIG. 4 may directly represent that unique identifier within bit group 8. Where each distribution on the content delivery system 110 is associated with a unique identifier that may or may not be representable in 16 bits or less (e.g., a domain name of arbitrary length), a network address encoded according to the format of FIG. 4 may represent that unique identifier as a hash value, generated by passing the unique identifier through a hashing function. The specific number of bits utilized to represent a distribution identifier may vary, for example, on the number of different distribution identifiers supported under a given format, and the probability of collisions between different identifiers under a given encoding scheme. On receiving a request to communicate with the network address, a receiving device (e.g., a content server 122) may identify the distribution to which the request is directed based on the final bit group of the network address. Additional DNS-level information that may be included within a network address according to the illustrative format of FIG. 4 includes a rule identifier represented by bit group 4, validity information represented by bit group 5, and hint information represented by bit group 6. Illustratively, the bits of group 4, representing a rule identifier, may identify a rule that describes the network address encoding format shown in FIG. 4 (e.g., identifier "0001"), and may be used to identify network addresses encoded according to the network address encoding
format shown in FIG. 4 from other potential formats. Thus, on receiving a request to communicate with the network address, a receiving device (e.g., a content server 122) may identify the format of the network address according to the bits of group 4 (e.g., enabling the receiving device to obtain rules specifying how other DNS -level data is encoded into the network address). The bits of group 5, representing validity information, may represent a digital signature generated based on a private key of the DNS service 112 along with a set of inputs, which may include, for example, the values of other bit groups of the network address. Thus, on receiving a request to communicate with the network address, a receiving device (e.g., a content server 122) may verify the validity of the network address by confirming the digital signature (e.g., decrypting the digital signature using a corresponding cryptographic public key and comparing a resulting value to an independent hash of the same set of inputs). The bits of groups 6 and 7, representing hint information, may represent information informing a receiving device of how to handle requests to communicate with the network address, such as an identifier of a security certificate to utilize in creating a secure communication channel with an accessing computing device 102. Thus, on receiving a request to communicate with the network address, a receiving device (e.g., a content server 122) may retrieve a security certificate corresponding to the hint information and use such a certificate to establish secure communications with the accessing computing device 102. Additional examples of hint information may include, for example, an identifier or network address of a resolver from which a DNS request corresponding to the encoded network address was received, a location of that resolver, etc.
[0044] While one potential format of a network address with encoded DNS-level information is shown in FIG. 4, other formats are possible and contemplated under the present disclosure. For example, more than 48 bits may be included within a routing prefix, or an additional bit group (e.g., bit group 4) may be used as a subnet prefix, in accordance with IPv6 protocols. Moreover, the specific bits used to identify each type of DNS-level data may vary according to different potential formats. While these bits are shown in FIG. 4 as 16-bit groups for ease of description, any number of bits may be used to identify each type of DNS-level data. For example, less than 16 or 32 bits may be sufficient to store a rule identifier or hint information, respectively (e.g., in the instance where less 65,536 total rule identifiers or 2 32 hint information values are intended to be supported). More than 16 bits may be used to store validity information (e.g., according to a strength of security desired) or distribution identifiers
(e.g., according to the number of identifiers supported and a potential for collisions should a hash function be utilized). Any number of algorithms, including a variety of known hash algorithms, may be utilized to determine the bit values representative of given DNS-level data. Thus, the size, content, and arrangement of DNS-level data as encoded into a network address may vary.
[0045] As noted above, all or a portion of a network address may be encrypted. For example, the values of any one or more of bit groups 4 through 8 as shown in FIG. 4 may be encrypted according to public key encryption (using a public key) to represent an encrypted bit group, and a network address may be returned including at least one encrypted bit group. Thereafter, the values of the encrypted bit groups may be decrypted utilizing a corresponding private key, to determine the unencrypted values of the bit groups. Illustratively, a DNS server 112 may be configured to provide network addresses including at least one encrypted bit group within a DNS response, and one or more routers of the content delivery system 110 may be configured to decrypt the bit groups on receiving a data packet addressed to a network address including an encrypted bit group. In one embodiment, the router may validate or verify integrity of the network address (e.g., using validity information encoded into the network address, such as a digital signature), before forwarding the data packet within the content delivery system 110 (e.g., utilizing the unencrypted network address). In this manner, the network addresses utilized within the content delivery system 110 may be kept confidential to devices outside of the content delivery system 110 (or without a private key utilized by the content delivery system 110). While DNS-level information may be encrypted as described above, other data conveyed by a network address may additionally or alternatively be encrypted. For example, where a network assigns network addresses sequentially, randomly, or via another distribution mechanism, all or a portion of such network addresses may be encrypted before being provided in a DNS response, and a receiving device (e.g., a content server 112, a router, etc.) may be configured to decrypt the network address on receiving a data packet addressed to the encrypted network address
[0046] Returning to the interactions of FIG. 3A, once a DNS record for a distribution has been created, the DNS service 112 may function to obtain requests to resolve an identifier of the distribution from an accessing computing device 102A, as shown at (4). While this request is shown in FIG. 3A as beginning at the accessing computing device 102A and terminating at the DNS service 112, the request may be transmitted according to well-known DNS transmission protocols, and thus may pass through any number of intermediary devices (e.g., DNS resolvers)
prior to arriving at the DNS service 112. Thus, the DNS service 112 may not be directly aware of the identity of the accessing computing device 102A.
[0047] At (5), in response to the request, the DNS service 112 may return the DNS record referencing the network address encoded with DNS-level data. Similarly to interaction (4), while this response is shown as beginning at the DNS service 112 and terminating at the accessing computing device 102A, the response may be transmitted according to well-known DNS transmission protocols, and thus may pass through any number of intermediary devices (e.g., DNS resolvers) prior to arriving at the accessing computing device 102A. On receiving the DNS record, the accessing computing device 102A may then transmit network data to the network address referenced in the DNS record, as will be described with reference to FIG. 3B.
[0048] While a simplified set of interactions are described with reference to FIG. 3A, additional or alternative interactions may occur under embodiments of the present disclosure. For example, the DNS service 112 may in some instances maintain multiple DNS records for a distribution (e.g., each including a network address associated with a different POP 120), and distribute the DNS records according to a load balancing or traffic shaping algorithm (e.g., round robin). As a further example, the DNS service 112 may in some instances operate to generate or modify DNS records on-the-fly, in response to requests to resolve a distribution identifier. For example, the DNS service 112 may generate validity data for a network address based at least in part on attributes of the request, such as a geographic or logical region from which the request was received. As another example, the DNS service 112 may in some instances modify a TTL value for a DNS record to corresponding to a length of time until the DNS service 112 is configured to generate new validity data for network addresses of a distribution associated with the DNS record. In this way, where accessing computing device 102A comply with the TTL value of the DNS record, these devices can be expected to consider a DNS record expired at or before the content delivery system 110 would consider the network address in the record as invalid due to a change in validity information. Thus, different accessing computing devices 102 may obtain different DNS records from the DNS service 112, even when requesting to resolve the same distribution identifier, and the ordering and content of the interactions of FIG. 3A should be viewed as illustrative in nature.
[0049] With reference to FIGS. 3B, illustrative interactions will be described for the handling of a communication request from the accessing computing device 102A to the network address encoded with DNS-level information. For ease of reference, the interactions of FIG. 3B are numbered in sequence with those of FIG. 3A; however, the interactions of FIG. 3A and 3B may in some instances occur separately (e.g., in the case of a network attack, where multiple accessing computing devices 102A may transmit data to a network address obtained by DNS request of a different accessing computing device 102A).
[0050] The interactions of FIG. 1 begin at (6), where the accessing computing device 102A transmits a request to access content of a distribution to a network address including encoded DNS-level data (e.g., as referenced within a DNS record obtained from the DNS service 112). The request may be routed via the network to a POP 120 associated with a routing prefix within the network address, where the request may be processed according to a content server 122 (e.g., as selected according to load balancing of the POP 120). Specifically, at (7), the POP 120 may load one or more decoding rules for the network address from the decoding rules data store 124. In some instances, the loaded rules may be generally static, and the POP 120 may load a current set of decoding rules. In other instances, the POP 120 may load a set of rules corresponding to a version identifier represented by bits of the encoded network address (e.g., where the bits of the encoded network address representing the version identifier are identifiable without the rules themselves, such as by locating the bits in a common position across a set of potential rules).
[0051] At (8), the POP 120 can decode DNS-level data from the network address, according to the decoding rules. For example, the POP 120 may utilize the decoding rules to determine a distribution identifier, hint information, and validity information associated with the request. Illustratively, each type of DNS-level data may be obtained my inspecting a set of bits corresponding to the DNS-level data, as identified in the decoding rules. In some instances, a set of bits may be further processed according to algorithms of the decoding rules to transform the bits into a format useable by the POP 120 (e.g., by reversing an encoding of a particular type of DNS-level data).
[0052] At (9), the POP 120 can validate the request to access content at least partly based on validity information included within the network address to which the request is transmitted. For example, validity information may include both a time of generation of a
network address and a TTL value for the network address (or for a DNS record including the network address). Accordingly, a receiving device may decode the time of generation value and TTL value, and utilize these values to determine whether the network address should be considered valid (e.g., wherein if the time of generation value plus the TTL value does not meet or exceed a current time, the network address may be considered invalid. As another example, where the validity information is a digital signature generated based on a cryptographic hash of remaining bits of the network address, the POP 120 may generate a corresponding hash using those remaining bits of the network address and a decrypted value representing a decryption of the digital signature using a public key of the DNS service 112, and verify that the decrypted value and generated hash match. In some embodiments, the public/private key pair utilized to generate a digital signature may be specified within the network address (e.g., by a version identifier identifying a public/private key pair from a pre-established list). In other instances, the public/private key pair utilized to generate a digital signature may be separately agreed upon by the DNS service 112 and the POP 120. For example, the DNS server 112, the POP 120, or a third component (not shown in FIGS. 3A-3B) may periodically generate or select a new public/private key pair for use by the DNS service 112 and the POP 120, and the POP 120 may, after a threshold period of time subsequent to generation of a new public/private key pair (e.g., matching a TTL value of DNS records provided by the DNS service 112), consider network addresses with digital signatures generated under prior public/private key pairs to be invalid. This may enable the POP 120 to independently enforce TTL values of DNS records using digital signature verification.
[0053] In an instance where the decoding rules specify other inputs for validity information, such as a region from which the request originates, the POP 120 may verify the digital signature using such inputs. In the instance that the network address is considered valid, the POP 120 may continue to process the request. Otherwise, the POP 120 may consider the request invalid, and decline to further process the request (e.g., by "blackholing" the request). While validation of a request is described with reference to the POP 120 generally, such validation may occur at a variety of locations within the POP 120, such as at a content server 122 or at routers of the POP 120 (which routers are not shown in FIG. 3B) acting as intermediaries between a content server 112 and the accessing computing device 102A. In some instances, the public key corresponding to a digital signature may be made publically available by the content
delivery system 110. Thus, components external to the content delivery system 110 may be enabled to verify digital signatures included within network addresses. For example, an accessing computing device 102 may include software configured to validate digital signatures in network addresses returned as part of a response to a DNS request, which may prevent or deter falsification or modification of DNS responses (e.g., via a man-in-the-middle attack). As another example, routers or communication devices on the network 106 may be configured to verify digitally signed network addresses before forwarding such addresses, to prevent malicious traffic on the network 106.
[0054] At (10), in the instance that the network address is considered valid, the POP 120 initiates communication with the accessing computing device 102A and obtains content responsive to the request, based at least partly on the DNS-level information. Illustratively, the POP 120 may initiate secure communications with the accessing computing device 102A based on a security certificate identified by the hint information of the network address. The POP 120 may further access a requested portion of content corresponding to the distribution within the data cache 126 based on a distribution identifier of the network address. Thereafter, the POP 120 can return the requested content to the accessing computing device 102, at (11). Thus, the accessing computing device 102A can utilize a network address encoded with DNS-level information to access content on the content delivery system 110.
[0055] While the interactions of FIG. 3B generally describe interactions that may occur with respect to a legitimate accessing computing device 102A, POPs 120 may additionally be configured to process and handle malicious communications from illegitimate accessing computing devices 102. Illustratively, such malicious communications may include invalid validity information (e.g., by virtue of the fact that the DNS service 112 has altered the validity information since a targeted network address was obtained by the illegitimate accessing computing devices 102), and thus may be ignored by the POP 120. Furthermore, because network addresses may include a distribution identifier as encoded DNS-level data, the POPs 120 may be enabled to identify, from the network address (and potentially without any additional information), a distribution targeted by a network attack. The POPs 120 may then undertake actions to mitigate the network attack, such as requesting that the DNS service 112 modify DNS records for the targeted distribution to include new validity information. Further illustrations of actions that may be used to mitigate network attacks are described in more detail
within U.S. Patent Application No. 14/864,683, entitled "MITIGATING NETWORK ATTACKS," and filed 09/24/2015, the entirety of which is hereby incorporated by reference.
[0056] All of the methods and processes described above may be embodied in, and fully automated via, software code modules executed by one or more general purpose computers or processors. The code modules may be stored in any type of non-transitory computer-readable medium or other computer storage device. Some or all of the methods may alternatively be embodied in specialized computer hardware.
[0057] Conditional language such as, among others, "can," "could," "might" or "may," unless specifically stated otherwise, are otherwise understood within the context as used in general to present that certain embodiments include, while other embodiments do not include, certain features, elements and/or steps. Thus, such conditional language is not generally intended to imply that features, elements and/or steps are in any way required for one or more embodiments or that one or more embodiments necessarily include logic for deciding, with or without user input or prompting, whether these features, elements and/or steps are included or are to be performed in any particular embodiment.
[0058] Disjunctive language such as the phrase "at least one of X, Y or Z," unless specifically stated otherwise, is otherwise understood with the context as used in general to present that an item, term, etc., may be either X, Y or Z, or any combination thereof (e.g., X, Y and/or Z). Thus, such disjunctive language is not generally intended to, and should not, imply that certain embodiments require at least one of X, at least one of Y or at least one of Z to each be present.
[0059] Unless otherwise explicitly stated, articles such as 'a' or 'an' should generally be interpreted to include one or more described items. Accordingly, phrases such as "a device configured to" are intended to include one or more recited devices. Such one or more recited devices can also be collectively configured to carry out the stated recitations. For example, "a processor configured to carry out recitations A, B and C" can include a first processor configured to carry out recitation A working in conjunction with a second processor configured to carry out recitations B and C.
[0060] Any routine descriptions, elements or blocks in the flow diagrams described herein and/or depicted in the attached figures should be understood as potentially representing modules, segments, or portions of code which include one or more executable instructions for
implementing specific logical functions or elements in the routine. Alternate implementations are included within the scope of the embodiments described herein in which elements or functions may be deleted, or executed out of order from that shown or discussed, including substantially synchronously or in reverse order, depending on the functionality involved as would be understood by those skilled in the art.
[0061] The foregoing may be better understood in view of the following sets of clauses:
Clause 1. A system to provide digitally signed network addresses, the system comprising:
a domain name system (DNS) computing device configured with computer-executable instructions to:
obtain a request to resolve a domain name into a network address; determine a routing prefix of the network address, wherein the routing prefix is associated with a network including a content server associated with the domain name;
determine an additional portion of the network address associated with the content server;
encrypt the additional portion of the network address with a cryptographic public key to result in an encrypted portion;
generate the network address, wherein the network address includes at least the routing prefix and the encrypted portion; and
return the network address in response to the request; and a router computing device associated with the network and configured with computer-executable instructions to:
obtain a data packet addressed to the network address;
decrypt the encrypted portion of the network address using a cryptographic private key, corresponding to the cryptographic public key, to result in decrypted information representing the additional portion of the network address; and
route the data packet based at least in part on the decrypted information.
Clause 2. The system of Clause 1, wherein the router computing device is configured to route the data packet based at least in part on the decrypted information by routing the data packet to the content server.
Clause 3. The system of Clause 1, wherein the network address is formatted as an Internet Protocol version 6 (IPv6) address.
Clause 4. The system of Clause 1, wherein the network address is formatted to include the routing prefix as a first set of bits within the network address and the encrypted portion as a second set of bits within the network address.
Clause 5. The system of Clause 1, wherein the routing prefix represents routing information to route a data packet to the network including the content server from a publically addressable network.
Clause 6. A computer-implemented method comprising:
obtaining a DNS request to resolve a domain name into a network address; determining a routing prefix of the network address, wherein the routing prefix is associated with a network including a computing device associated with the domain name;
determining an additional portion of the network address associated with the content server;
encrypting the additional portion of the network address with a cryptographic public key to result in an encrypted portion;
generating the network address, wherein the network address includes at least the routing prefix and the encrypted portion; and
returning the network address in response to the request.
Clause 7. The computer-implemented method of Clause 6, wherein the additional portion includes at least one of a value assigned to the content server, DNS- level information associated with the DNS request, or a digital signature associated with a DNS server.
Clause 8. The computer- implemented method of Clause 6, wherein the DNS- level information includes at least one of the domain name, security information associated with the domain name, timing information of the DNS request, or information specifying a source of the DNS request.
Clause 9. The computer-implemented method of Clause 8 further comprising generating the DNS -level information by encoding at least one of the domain name according to one or more encoding rules.
Clause 10. The computer-implemented method of Clause 6 further comprising:
obtaining a data packet addressed to the network address; decrypting the encrypted portion of the network address using a cryptographic private key, corresponding to the cryptographic public key, to result in decrypted information representing the additional portion of the network address; and
routing the data packet based at least in part on the decrypted information. Clause 11. The computer- implemented method of Clause 10, wherein routing the data packet based at least in part on the decrypted information comprises:
identifying within the decrypted information a time of generation of the network address and a time-to-live (TTL) value for the network address; and
routing the data packet based at least in part on whether a current time exceeds a combination of the time of generation and the TTL value.
Clause 12. The computer-implemented method of Clause 10, wherein routing the data packet based at least in part on the decrypted information comprises:
identifying a domain name encoded into the decrypted information according to one or more encoding rules; and
routing the data packet to the content server associated with the domain name.
Clause 13. The computer-implemented method of Clause 10, wherein routing the data packet based at least in part on the decrypted information comprises:
identifying a digital signature included within the decrypted information; checking a validity of the digital signature utilizing a second cryptographic public key; and
routing the data packet based at least in part on the validity of the encrypted value by at least one of routing the data packet to a content server when
the encrypted value is valid or discarding the data packet when the encrypted value is invalid.
Clause 14. Non-transitory computer-readable media comprising computer- executable instructions that, when executed, cause a computing system to:
obtain information corresponding to a DNS request to resolve a domain name into a network address;
determine a routing prefix of the network address, wherein the routing prefix is associated with a network including a content server associated with the domain name;
determine an additional portion of the network address associated with the content server;
encrypt the additional portion of the network address with a cryptographic public key to result in an encrypted portion;
generate the network address, wherein the network address includes at least the routing prefix and the encrypted portion; and
return the network address in response to the request.
Clause 15. The non-transitory computer-readable media of Clause 14, wherein the computer-executable instructions further cause the computing system to:
hash the additional portion of the network address according to a cryptographic hash function to result in a hash value; and
encrypt the hash value according to a cryptographic private key of a DNS server to result in a digital signature;
wherein the network address further includes the digital signature.
Clause 16. The non-transitory computer-readable media of Clause 14 further comprising second computer executable instructions that, when executed by a router computing device, cause the router computing device to:
obtain a data packet addressed to the network address;
decrypt the encrypted portion of the network address using a cryptographic private key, corresponding to the cryptographic public key, to result in decrypted information representing the additional portion of the network address; and
route the data packet based at least in part on the decrypted information. Clause 17. The computer- implemented method of Clause 16, wherein the second computer executable instructions cause the router computing device to route the data packet based at least in part on the decrypted information by at least:
identifying a digital signature included within the decrypted information; checking a validity of the digital signature utilizing a second cryptographic public key; and
routing the data packet based at least in part on the validity of the encrypted value by at least one of routing the data packet to a content server when the encrypted value is valid or discarding the data packet when the encrypted value is invalid.
Clause 18. The non-transitory computer-readable media of Clause 14, wherein the computer-executable instructions cause the computing system to determine the additional portion of the network address by referencing information mapping the content server to the additional portion.
Clause 19. The non-transitory computer-readable media of Clause 14, wherein the computer-executable instructions cause the computing system to determine the additional portion of the network address by encoding DNS-level information associated with the DNS request according to one or more encoding rules.
Clause 20. The non-transitory computer-readable media of Clause 14, wherein the network address further comprises a version identifier indicating at least one of the cryptographic public key or a cryptographic private key corresponding to the cryptographic public key.
Clause 21. A content delivery system configured to mitigate network attacks on a domain name, wherein the domain name is associated with content provided by the content delivery system, the content delivery system comprising:
a domain name system (DNS) computing device comprising a processor configured with computer-executable instructions to:
obtain one or more encoding rules for encoding DNS-level information into network addresses provided by the DNS computing device;
obtain a request to resolve a domain name into a network address; encode, according to one or more encoding rules, the domain name into the network address; and
return the network address in response to the request;
a computing device comprising a processor configured with computer- executable instructions to:
obtain one or more decoding rules for decoding DNS-level information encoded into network addresses by the DNS computing device;
detect a malicious data packet addressed to the network address, wherein the malicious data packet forms at least a part of a network attack on the content delivery system;
decode, according to the one or more decoding rules, the domain name from the network address to which the malicious data packet is addressed; and
identify the domain name decoded from the network address to which the malicious data packet is addressed as a target of the network attack.
Clause 22. The content delivery system of Clause 21, wherein the network address is formatted as an Internet Protocol version 6 (IPv6) address.
Clause 23. The content delivery system of Clause 21, wherein the one or more encoding rules specify information to be included within individual bits of the network addresses.
Clause 24. The content delivery system of Clause 21, wherein the network address comprises a first portion corresponding to routing information on a publically addressable network, and a second portion including encoded DNS-level information.
Clause 25. The content delivery system of Clause 21, wherein the computing device is at least one of a content server computing device or a networking routing computing device.
Clause 26. A computer-implemented method for providing DNS-level information within encoded network addresses, the computer-implemented method comprising:
obtaining one or more rules for encoding DNS-level information into the encoded network addresses and decoding DNS-level information from the encoded network addresses, wherein the rules specify a format of the DNS-level information when encoded in the encoded network addresses and individual bits of the encoded network addresses to utilize in representing the DNS-level information;
receiving a DNS request to resolve a domain name into a network address; using the one or more rules to encode DNS-level information associated with the DNS request into the network address;
returning the network address in response to the DNS request; receiving a network packet addressed to the network address; using the one or more rules to decode the DNS-level information from the network address; and
routing the data packet based at least in part on the DNS-level information decoded from the network address.
Clause 27. The computer- implemented method of Clause 26, wherein the DNS-level information includes at least one of the domain name, security information associated with the domain name, timing information of the DNS request, information specifying a source of the DNS request, or validity information indicating a validity of the network address generated based at least in part on the DNS request.
Clause 28. The computer-implemented method of Clause 26, wherein the DNS-level information includes the domain name, the computer-implemented method further comprising:
identifying the network packet as malicious and forming at least part of a network attack; and
identifying the domain name decoded from the network address to which the malicious network packet is addressed as a target of the network attack.
Clause 29. The computer-implemented method of Clause 26, wherein the DNS -level information includes validity information, and wherein routing the data packet based at least in part on the DNS -level information decoded from the network address comprises:
detecting that the validity information indicates that network packet is addressed to an invalid network address; and
discarding the network packet.
Clause 30. The computer-implemented method of Clause 26, wherein the DNS -level information includes validity information, and wherein routing the data packet based at least in part on the DNS -level information decoded from the network address comprises:
detecting that the validity information indicates that network packet is addressed to a valid network address; and
routing the network packet to a content server associated with the domain name.
Clause 31. The computer- implemented method of Clause 26, wherein the validity information indicates a time of the DNS request, and wherein detecting that the validity information indicates that network packet is addressed to the valid network address includes detecting that a period of time between a current time and the time of the DNS request falls with a threshold time-to-live value.
Clause 32. The computer-implemented method of Clause 26, wherein the validity information includes a digital signature associated with a public key, and wherein detecting that the validity information indicates that network packet is addressed to the valid network address includes verifying the digital signature using the public key.
Clause 33. Non-transitory computer-readable media comprising computer- executable instructions for encoding DNS -level information within network addresses that, when executed, cause a computing system to:
obtain one or more rules for encoding the DNS-level information into the network addresses and decoding the DNS-level information from the network addresses;
obtain a request for an encoded network address, wherein the request includes DNS-level information associated with a DNS request to resolve a domain name into the encoded network address;
encode the DNS-level information into the encoded network address according to at least the one or more rules;
return the encoded network address in response to the request; receive a network request associated with the encoded network address; and
decode the encoded network address according to at least the one or more rules to result in the DNS-level information; and
respond to the network request based at least in part on the DNS-level information obtained by decoding the encoded network address.
Clause 34. The non-transitory computer-readable media of Clause 33, wherein the network request is at least one of a request to decode the encoded network address or a request to obtain content associated with the encoded network address.
Clause 35. The non-transitory computer-readable media of Clause 33, wherein the computer-executable instructions cause the computing system to respond to the network request based at least in part on the DNS-level information by at least one of: returning the DNS-level information in response to the network request; returning content associated with the network request; discarding the network request; or forwarding the network request to a content server associated with the DNS-level information.
Clause 36. The non-transitory computer-readable media of Clause 33, wherein the DNS-level information includes a domain name and an identifier of a security certificate associated with the domain name, and wherein the computer-executable instructions cause the computing system to respond to the network request at least partly by initiating a secure connection utilizing the security certificate.
Clause 37. The non-transitory computer-readable media of Clause 33, wherein the one or more rules comprise multiple rule versions, and wherein the DNS-level
information includes a version identifier associated with a rule version of the multiple rule versions utilized in encoding the encoded network address.
Clause 38. The non-transitory computer-readable media of Clause 37, wherein the computer-executable instructions cause the computing system to determine a rule version of the multiple rule versions to utilize in encoding the encoded network address based at least in part on a current time and a security level associated with the domain name.
Clause 39. The non-transitory computer-readable media of Clause 33, wherein the DNS-level information includes a domain name, and wherein the computer- executable instructions cause the computing system encode the DNS-level information into the encoded network address at least in part by:
hashing the domain name according to a hash function to result in a hash value; and
including the hash value as a portion of the encoded network address.
Clause 40. The non-transitory computer-readable media of Clause 39, wherein the hash function is a cryptographic hash function.
Clause 41. A system to provide digitally signed network addresses, the system comprising:
a domain name system (DNS) computing device configured with computer-executable instructions to:
obtain a request to resolve a domain name into a network address; determine a portion of the network address based at least in part on the domain name;
hash the portion of the network address according to a cryptographic hash function to result in a hash value;
encrypt the hash value with a cryptographic private key to result in a digital signature;
generate the network address, wherein the network address includes at least the portion of the network address and the digital signature; and
return the network address in response to the request; and
a router computing device configured with computer-executable instructions to:
obtain a data packet addressed to the network address;
hash the portion of the network address according to the cryptographic hash function to result in a second hash value;
decrypt the digital signature with a cryptographic public key corresponding to the cryptographic private key to result in a decryption output;
compare the decryption output and the second hash value to determine a validity of the digital signature; and
route the data packet based at least in part on the validity of the digital signature.
Clause 42. The system of Clause 41, wherein the router computing device is configured to route the data packet based at least in part on the validity of the digital signature by at least one of routing the data packet to a content server when the digital signature is valid or discarding the data packet when the digital signature is invalid.
Clause 43. The system of Clause 41, wherein the network address is formatted as an Internet Protocol version 6 (IPv6) address.
Clause 44. The system of Clause 41, wherein the network address is formatted to include the portion as a first set of bits within the network address and the encrypted value as a second set of bits within the network address.
Clause 45. A computer- implemented method comprising:
obtaining a DNS request to resolve a domain name into a network address; determining a portion of the network address based at least in part on the
DNS request;
hashing the portion of the network address according to a cryptographic hash function to result in a hash value;
encrypting the hash value with a cryptographic private key to result in an encrypted value;
generating the network address, wherein the network address includes at least the portion of the network address and the encrypted value; and
returning the network address in response to the request.
Clause 46. The computer-implemented method of Clause 45 further comprising:
obtaining a data packet addressed to the network address; hashing the portion of the network address according to the cryptographic hash function to result in a second hash value;
decrypting the encrypted value with a cryptographic public key to result in a decryption output;
comparing the decryption output and the second hash value to determine a validity of the encrypted value; and
routing the data packet based at least in part on the validity of the encrypted value.
Clause 47. The computer-implemented method of Clause 46, the method is performed without inspection of the content of the data packet.
Clause 48. The computer- implemented method of Clause 46, wherein routing the data packet based at least in part on the validity of the encrypted value comprises at least one of routing the data packet to a content server when the encrypted value is valid or discarding the data packet when the encrypted value is invalid.
Clause 49. The computer-implemented method of Clause 46, wherein the private key is included in a set of private keys, wherein individual private keys of the set of private keys are associated with individual time periods, wherein the cryptographic private key is selected according to a time of the encrypting, and wherein the cryptographic public key is selected according to a time of the decrypting.
Clause 50. The computer-implemented method of Clause 45, wherein hashing the portion of the network address according to the cryptographic hash function comprises hashing a combination of the portion and a routing prefix according to the cryptographic hash function.
Clause 51. The computer- implemented method of Clause 45, wherein the network address includes a first set of bits representing a routing prefix, a second set of bits representing the portion of the network address, and a third set of bits representing the encrypted value.
Clause 52. The computer-implemented method of Clause 45, wherein the portion of the network address represents DNS -level information associated with the DNS request, the DNS -level information including at least one of the domain name, security information associated with the domain name, timing information of the DNS request, or information specifying a source of the DNS request.
Clause 53. The computer- implemented method of Clause 45, wherein the portion of the network address includes a cryptographic public key.
Clause 54. The computer-implemented method of Clause 45 further comprising providing a cryptographic public key to an originating device of the DNS request, wherein the originating device is configured to:
obtain the network address;
hashing the portion of the network address according to the cryptographic hash function to result in a second hash value;
decrypting the encrypted value with the cryptographic public key to result in a decryption output;
comparing the decryption output and the second hash value to determine a validity of the network address.
Clause 55. Non-transitory computer-readable media comprising computer- executable instructions that, when executed, cause a computing system to:
obtain a request for a network address, wherein the request includes DNS- level information associated with a DNS request to resolve a domain name into the encoded network address;
determine a portion of the network address based at least in part on the DNS request;
hash the portion of the network address according to a cryptographic hash function to result in a hash value;
encrypt the hash value with a private key to result in an encrypted value; generate the network address, wherein the network address includes at least the portion of the network address and the encrypted value; and
return the network address in response to the request.
Clause 56. The non-transitory computer-readable media of Clause 55, wherein the request for the network address is at least one of the DNS request or a request generated in response to the DNS request.
Clause 57. The non-transitory computer-readable media of Clause 55, wherein the computer-executable instructions cause the computing system to determine the portion of the network address based at least in part on the DNS request by referencing information mapping the network address to the portion.
Clause 58. The non-transitory computer-readable media of Clause 55, wherein the computer-executable instructions cause the computing system to determine the portion of the network address based at least in part on the DNS request by encoding the DNS -level information according to one or more encoding rules.
Clause 59. The non-transitory computer-readable media of Clause 55, wherein the network address further comprises a version identifier indicating at least one of the cryptographic hash function or bits of the network address representing the encrypted value.
Clause 60. The non-transitory computer-readable media of Clause 55, wherein the computer-executable instructions further cause the computing system to:
obtain a data packet addressed to the network address;
hash the portion of the network address according to the cryptographic hash function to result in a second hash value;
decrypt the encrypted value with a cryptographic public key to result in a decryption output;
compare the decryption output and the second hash value to determine a validity of the encrypted value; and
route the data packet based at least in part on the validity of the encrypted value.
Clause 61. The non-transitory computer-readable media of Clause 60, wherein the computer-executable instructions further cause the computing system to route the data packet based at least in part on the validity of the encrypted value by at least one of routing the data packet to a content server when the encrypted value is valid or discarding the data packet when the encrypted value is invalid.
Clause 62. The non-transitory computer-readable media of Clause 55, wherein the computer-executable instructions further cause the computing system to encrypt the network address according to a cryptographic public key.
[0062] It should be emphasized that many variations and modifications may be made to the above-described embodiments, the elements of which are to be understood as being among other acceptable examples. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.
Claims
1. A content delivery system configured to mitigate network attacks on a domain name, wherein the domain name is associated with content provided by the content delivery system, the content delivery system comprising:
a domain name system (DNS) computing device comprising a processor configured with computer-executable instructions to:
obtain one or more encoding rules for encoding DNS -level information into network addresses provided by the DNS computing device;
obtain a request to resolve a domain name into a network address;
encode, according to one or more encoding rules, the domain name into the network address; and
return the network address in response to the request;
a computing device comprising a processor configured with computer-executable instructions to:
obtain one or more decoding rules for decoding DNS -level information encoded into network addresses by the DNS computing device;
detect a malicious data packet addressed to the network address, wherein the malicious data packet forms at least a part of a network attack on the content delivery system;
decode, according to the one or more decoding rules, the domain name from the network address to which the malicious data packet is addressed; and identify the domain name decoded from the network address to which the malicious data packet is addressed as a target of the network attack.
2. The content delivery system of Claim 1, wherein the network address is formatted as an Internet Protocol version 6 (IPv6) address.
3. The content delivery system of Claim 1, wherein the one or more encoding rules specify information to be included within individual bits of the network addresses.
4. The content delivery system of Claim 1, wherein the network address comprises a first portion corresponding to routing information on a publically addressable network, and a second portion including encoded DNS-level information.
5. The content delivery system of Claim 1, wherein the computing device is at least one of a content server computing device or a networking routing computing device.
6. A computer-implemented method for providing DNS -level information within encoded network addresses, the computer-implemented method comprising:
obtaining one or more rules for encoding DNS -level information into the encoded network addresses and decoding DNS -level information from the encoded network addresses, wherein the rules specify a format of the DNS-level information when encoded in the encoded network addresses and individual bits of the encoded network addresses to utilize in representing the DNS-level information;
receiving a DNS request to resolve a domain name into a network address;
using the one or more rules to encode DNS-level information associated with the DNS request into the network address;
returning the network address in response to the DNS request;
receiving a network packet addressed to the network address;
using the one or more rules to decode the DNS-level information from the network address; and
routing the data packet based at least in part on the DNS-level information decoded from the network address.
7. The computer-implemented method of Claim 6, wherein the DNS-level information includes at least one of the domain name, security information associated with the domain name, timing information of the DNS request, information specifying a source of the DNS request, or validity information indicating a validity of the network address generated based at least in part on the DNS request.
8. The computer-implemented method of Claim 6, wherein the DNS-level information includes the domain name, the computer-implemented method further comprising:
identifying the network packet as malicious and forming at least part of a network attack; and
identifying the domain name decoded from the network address to which the malicious network packet is addressed as a target of the network attack.
9. The computer-implemented method of Claim 6, wherein the DNS-level information includes validity information, and wherein routing the data packet based at least in part on the DNS-level information decoded from the network address comprises:
detecting that the validity information indicates that network packet is addressed to an invalid network address; and
discarding the network packet.
10. The computer-implemented method of Claim 6, wherein the DNS-level information includes validity information, and wherein routing the data packet based at least in part on the DNS-level information decoded from the network address comprises:
detecting that the validity information indicates that network packet is addressed to a valid network address; and
routing the network packet to a content server associated with the domain name.
11. The computer- implemented method of Claim 6, wherein the validity information indicates a time of the DNS request, and wherein detecting that the validity information indicates that network packet is addressed to the valid network address includes detecting that a period of time between a current time and the time of the DNS request falls with a threshold time-to-live value.
12. The computer-implemented method of Claim 6, wherein the validity information includes a digital signature associated with a public key, and wherein detecting that the validity information indicates that network packet is addressed to the valid network address includes verifying the digital signature using the public key.
13. A system comprising:
one or more processors; and
one or more memories having stored thereon computer-executable instructions for encoding DNS-level information within network addresses that, when executed on the one or more processors, cause the one more processors to:
obtain one or more rules for encoding the DNS-level information into the network addresses and decoding the DNS-level information from the network addresses;
obtain a request for an encoded network address, wherein the request includes DNS-level information associated with a DNS request to resolve a domain name into the encoded network address;
encode the DNS-level information into the encoded network address according to at least the one or more rules;
return the encoded network address in response to the request;
receive a network request associated with the encoded network address; and
decode the encoded network address according to at least the one or more rules to result in the DNS-level information; and
respond to the network request based at least in part on the DNS-level information obtained by decoding the encoded network address.
14. The system of Claim 13, wherein the network request is at least one of a request to decode the encoded network address or a request to obtain content associated with the encoded network address.
15. The system of Claim 13, wherein the computer-executable instructions cause the computing system to respond to the network request based at least in part on the DNS-level information by at least one of: returning the DNS-level information in response to the network request; returning content associated with the network request; discarding the network request; or forwarding the network request to a content server associated with the DNS-level information.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201780068210.6A CN109983752B (en) | 2016-10-05 | 2017-10-04 | Network address with encoded DNS-level information |
Applications Claiming Priority (8)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201662404723P | 2016-10-05 | 2016-10-05 | |
| US62/404,723 | 2016-10-05 | ||
| US15/389,302 | 2016-12-22 | ||
| US15/389,314 US10469513B2 (en) | 2016-10-05 | 2016-12-22 | Encrypted network addresses |
| US15/389,302 US10505961B2 (en) | 2016-10-05 | 2016-12-22 | Digitally signed network address |
| US15/389,276 | 2016-12-22 | ||
| US15/389,314 | 2016-12-22 | ||
| US15/389,276 US10616250B2 (en) | 2016-10-05 | 2016-12-22 | Network addresses with encoded DNS-level information |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018067710A1 true WO2018067710A1 (en) | 2018-04-12 |
Family
ID=61758418
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2017/055156 Ceased WO2018067710A1 (en) | 2016-10-05 | 2017-10-04 | Network addresses with encoded dns-level information |
Country Status (3)
| Country | Link |
|---|---|
| US (4) | US10469513B2 (en) |
| CN (1) | CN109983752B (en) |
| WO (1) | WO2018067710A1 (en) |
Families Citing this family (87)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
| US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
| US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
| US8601090B1 (en) | 2008-03-31 | 2013-12-03 | Amazon Technologies, Inc. | Network resource identification |
| US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
| US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
| US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
| US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
| US9407681B1 (en) | 2010-09-28 | 2016-08-02 | Amazon Technologies, Inc. | Latency measurement in resource requests |
| US8073940B1 (en) | 2008-11-17 | 2011-12-06 | Amazon Technologies, Inc. | Managing content delivery network service providers |
| US8412823B1 (en) | 2009-03-27 | 2013-04-02 | Amazon Technologies, Inc. | Managing tracking information entries in resource cache components |
| US8756341B1 (en) | 2009-03-27 | 2014-06-17 | Amazon Technologies, Inc. | Request routing utilizing popularity information |
| US8688837B1 (en) | 2009-03-27 | 2014-04-01 | Amazon Technologies, Inc. | Dynamically translating resource identifiers for request routing using popularity information |
| US8782236B1 (en) | 2009-06-16 | 2014-07-15 | Amazon Technologies, Inc. | Managing resources using resource expiration data |
| US8397073B1 (en) | 2009-09-04 | 2013-03-12 | Amazon Technologies, Inc. | Managing secure content in a content delivery network |
| US8433771B1 (en) | 2009-10-02 | 2013-04-30 | Amazon Technologies, Inc. | Distribution network with forward resource propagation |
| US9495338B1 (en) | 2010-01-28 | 2016-11-15 | Amazon Technologies, Inc. | Content distribution network |
| US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
| US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
| US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
| US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
| US8452874B2 (en) | 2010-11-22 | 2013-05-28 | Amazon Technologies, Inc. | Request routing processing |
| US10467042B1 (en) | 2011-04-27 | 2019-11-05 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
| US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
| US9154551B1 (en) | 2012-06-11 | 2015-10-06 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
| US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
| US10205698B1 (en) | 2012-12-19 | 2019-02-12 | Amazon Technologies, Inc. | Source-dependent address resolution |
| US9294391B1 (en) | 2013-06-04 | 2016-03-22 | Amazon Technologies, Inc. | Managing network computing components utilizing request routing |
| US10097448B1 (en) | 2014-12-18 | 2018-10-09 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
| US10091096B1 (en) | 2014-12-18 | 2018-10-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
| US10225326B1 (en) | 2015-03-23 | 2019-03-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
| US9819567B1 (en) | 2015-03-30 | 2017-11-14 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
| US9832141B1 (en) | 2015-05-13 | 2017-11-28 | Amazon Technologies, Inc. | Routing based request correlation |
| US10097566B1 (en) | 2015-07-31 | 2018-10-09 | Amazon Technologies, Inc. | Identifying targets of network attacks |
| US9774619B1 (en) | 2015-09-24 | 2017-09-26 | Amazon Technologies, Inc. | Mitigating network attacks |
| US10270878B1 (en) | 2015-11-10 | 2019-04-23 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
| US10949349B2 (en) * | 2015-12-01 | 2021-03-16 | Fastly, Inc. | Anonymized network addressing in content delivery networks |
| US10257307B1 (en) | 2015-12-11 | 2019-04-09 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
| US10348639B2 (en) | 2015-12-18 | 2019-07-09 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
| US10075551B1 (en) | 2016-06-06 | 2018-09-11 | Amazon Technologies, Inc. | Request management for hierarchical cache |
| US10110694B1 (en) | 2016-06-29 | 2018-10-23 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
| US9992086B1 (en) | 2016-08-23 | 2018-06-05 | Amazon Technologies, Inc. | External health checking of virtual private cloud network environments |
| US10033691B1 (en) | 2016-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Adaptive resolution of domain name requests in virtual private cloud network environments |
| US10469513B2 (en) | 2016-10-05 | 2019-11-05 | Amazon Technologies, Inc. | Encrypted network addresses |
| JP6743906B2 (en) * | 2016-11-30 | 2020-08-19 | 日本電気株式会社 | Communication device, communication method, program |
| US10372499B1 (en) | 2016-12-27 | 2019-08-06 | Amazon Technologies, Inc. | Efficient region selection system for executing request-driven code |
| US10831549B1 (en) | 2016-12-27 | 2020-11-10 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
| US10938884B1 (en) | 2017-01-30 | 2021-03-02 | Amazon Technologies, Inc. | Origin server cloaking using virtual private cloud network environments |
| US10791136B2 (en) * | 2017-03-20 | 2020-09-29 | Fair Isaac Corporation | System and method for empirical organizational cybersecurity risk assessment using externally-visible data |
| US10503613B1 (en) | 2017-04-21 | 2019-12-10 | Amazon Technologies, Inc. | Efficient serving of resources during server unavailability |
| FR3067198A1 (en) * | 2017-06-02 | 2018-12-07 | Orange | OPTIMIZING THE REFRESH FREQUENCY OF A DNS REGISTRATION |
| US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
| US10447648B2 (en) | 2017-06-19 | 2019-10-15 | Amazon Technologies, Inc. | Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP |
| US20190050376A1 (en) * | 2017-08-10 | 2019-02-14 | Sap Se | Automatic value formatting based on intrinsic structural semantics |
| US10742593B1 (en) | 2017-09-25 | 2020-08-11 | Amazon Technologies, Inc. | Hybrid content request routing system |
| EP4268757B1 (en) | 2017-10-06 | 2025-03-26 | VISIE Inc. | Generation of one or more edges of luminosity to form three-dimensional models of objects |
| US10592578B1 (en) | 2018-03-07 | 2020-03-17 | Amazon Technologies, Inc. | Predictive content push-enabled content delivery network |
| CN109347637B (en) * | 2018-08-01 | 2021-01-15 | 华为技术有限公司 | An authentication method, a content distribution network CDN, and a content server |
| CN109413221A (en) * | 2018-10-23 | 2019-03-01 | 新华三技术有限公司 | Address distribution method and device |
| US11297077B2 (en) * | 2018-10-31 | 2022-04-05 | Hewlett Packard Enterprise Development Lp | Gain customer trust with early engagement through visualization and data driven configuration |
| US12113768B2 (en) * | 2018-10-31 | 2024-10-08 | Hewlett Packard Enterprise Development Lp | Using intent to access in discovery protocols in a network for analytics |
| US10862852B1 (en) | 2018-11-16 | 2020-12-08 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
| US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
| US11218454B2 (en) * | 2019-02-05 | 2022-01-04 | Cisco Technology, Inc. | Facilitating user privacy in communications involving semantic-bearing IPv6 addresses |
| US10944714B1 (en) * | 2019-04-16 | 2021-03-09 | Amazon Technologies, Inc. | Multi-factor domain name resolution |
| US11171918B2 (en) * | 2019-06-03 | 2021-11-09 | Rockwell Automation Technologies, Inc. | Generating location-based addresses for wireless network communication |
| US11102169B2 (en) * | 2019-06-06 | 2021-08-24 | Cisco Technology, Inc. | In-data-plane network policy enforcement using IP addresses |
| CN110233839B (en) * | 2019-06-10 | 2021-10-15 | 北京奇艺世纪科技有限公司 | A data processing system and method |
| CN110830987B (en) * | 2019-11-27 | 2023-11-24 | 王培根 | Urban sewage treatment rate evaluation and calculation method, device and equipment |
| US10715484B1 (en) | 2019-12-11 | 2020-07-14 | CallFire, Inc. | Domain management and synchronization system |
| FR3105678A1 (en) * | 2019-12-20 | 2021-06-25 | Orange | Naming identifier resolution process |
| US11271898B2 (en) * | 2020-01-27 | 2022-03-08 | Dell Products L.P. | Hash collision prevention system |
| US11019022B1 (en) * | 2020-01-28 | 2021-05-25 | F5 Networks, Inc. | Processing packets with returnable values |
| CN113472908A (en) * | 2020-03-30 | 2021-10-01 | 深圳市利维坦技术有限公司 | Method and equipment for transmitting information through DNS (Domain name System) |
| US11374901B2 (en) | 2020-09-24 | 2022-06-28 | Apple Inc. | Network address compression for electronic devices |
| US11989113B2 (en) | 2020-10-19 | 2024-05-21 | Duality Technologies, Inc. | Efficiently debugging a program in homomorphically encrypted space |
| CN114500463B (en) * | 2020-11-13 | 2023-08-08 | 中盈优创资讯科技有限公司 | Method and device for address allocation based on IPv6 coding visualization |
| EP4229847A1 (en) * | 2020-11-20 | 2023-08-23 | Huawei Technologies Co., Ltd. | Interconnecting semantic routing islands using non-semantic routing based services |
| EP4009602B1 (en) * | 2020-12-07 | 2022-11-09 | Siemens Healthcare GmbH | Providing a first digital certificate and a dns response |
| CN112668061B (en) * | 2021-01-13 | 2022-08-12 | 海信视像科技股份有限公司 | Electronic equipment and method for reporting equipment code |
| US11271894B1 (en) * | 2021-03-10 | 2022-03-08 | Accenture Global Solutions Limited | Systems, devices, and methods for private query and exchange of domain information |
| US12483589B1 (en) * | 2021-06-24 | 2025-11-25 | Zscaler, Inc. | System and method for utilizing DHCP relay to accomplish quarantining client endpoints in a ransomware protected network |
| WO2023160775A1 (en) * | 2022-02-23 | 2023-08-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Generation of internet protocol address for a communication session |
| US11991291B1 (en) * | 2022-03-31 | 2024-05-21 | Amazon Technologies, Inc. | Content-based domain name enconding, encryption, and routing system |
| CN116980151A (en) * | 2022-04-22 | 2023-10-31 | 戴尔产品有限公司 | Method, electronic device and computer program product for address encryption |
| US11962565B1 (en) * | 2022-12-15 | 2024-04-16 | Microsoft Technology Licensing, Llc | Generating service-to-service dependency map from DNS and fleet management system logs |
| US20250071121A1 (en) * | 2023-08-25 | 2025-02-27 | Comcast Cable Communications, Llc | Methods and systems for checking resource integrity |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020083198A1 (en) * | 2000-12-27 | 2002-06-27 | Yong-Woon Kim | Method of automatically generating IPv6 address using E.164 telephone number and of looking up IP address assigned to E.164 telephone number |
| US20090043900A1 (en) * | 2007-08-09 | 2009-02-12 | Barber Timothy P | System and method for establishing unique sessions for DNS subscribers |
| US9584328B1 (en) * | 2015-10-05 | 2017-02-28 | Cloudflare, Inc. | Embedding information or information identifier in an IPv6 address |
| US20170155678A1 (en) * | 2015-12-01 | 2017-06-01 | Fastly, Inc. | Attack mitigation in content delivery networks using stenographic network addressing |
| US20170153980A1 (en) * | 2015-12-01 | 2017-06-01 | Fastly, Inc. | Anonymized network addressing in content delivery networks |
Family Cites Families (1377)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US1075551A (en) | 1912-04-19 | 1913-10-14 | Leon D Amours | Lubricator for vehicle-wheels. |
| AUPQ504100A0 (en) | 2000-01-11 | 2000-02-03 | Notron (No. 325) Pty Limited | A method for distribution of streamed data packets on a switched network utilising an intelligent distribution network |
| US5063500A (en) | 1988-09-29 | 1991-11-05 | Ibm Corp. | System for executing segments of application program concurrently/serially on different/same virtual machine |
| US5341477A (en) | 1989-02-24 | 1994-08-23 | Digital Equipment Corporation | Broker for computer network server selection |
| US5905248A (en) | 1990-09-11 | 1999-05-18 | Metrologic Instruments, Inc. | System and method for carrying out information-related transactions using web documents embodying transaction enabling applets automatically launched and executed in response to reading URL-encoded symbols pointing thereto |
| US6026452A (en) | 1997-02-26 | 2000-02-15 | Pitts; William Michael | Network distributed site cache RAM claimed as up/down stream request/reply channel for storing anticipated data and meta data |
| US5611049A (en) | 1992-06-03 | 1997-03-11 | Pitts; William M. | System for accessing distributed data cache channel at each network node to pass requests and data |
| US5459837A (en) | 1993-04-21 | 1995-10-17 | Digital Equipment Corporation | System to facilitate efficient utilization of network resources in a computer network |
| JP3433803B2 (en) | 1993-07-07 | 2003-08-04 | ヨーロピアン コンピューター − インダストリー リサーチ センター ゲーエムベーハー | Database structure |
| JPH07141305A (en) | 1993-11-16 | 1995-06-02 | Hitachi Ltd | Execution control method for parallel computers |
| JPH08328752A (en) | 1994-06-10 | 1996-12-13 | Canon Inc | Information recording apparatus and method |
| US6085234A (en) | 1994-11-28 | 2000-07-04 | Inca Technology, Inc. | Remote file services network-infrastructure cache |
| JP3865775B2 (en) | 1995-04-11 | 2007-01-10 | キネテック インコーポレイテッド | Data identification in data processing systems |
| US6003030A (en) | 1995-06-07 | 1999-12-14 | Intervu, Inc. | System and method for optimized storage and retrieval of data on a distributed computer network |
| US5627889A (en) | 1995-06-29 | 1997-05-06 | At&T | Service restoration technique for telecommunications facilities having a single degree of freedom |
| US5956509A (en) | 1995-08-18 | 1999-09-21 | Microsoft Corporation | System and method for performing remote requests with an on-line service network |
| US5815649A (en) | 1995-10-20 | 1998-09-29 | Stratus Computer, Inc. | Distributed fault tolerant digital data storage subsystem for fault tolerant computer system |
| JP2985756B2 (en) | 1996-02-16 | 1999-12-06 | 日本電気株式会社 | Information service terminal |
| US5764910A (en) | 1996-04-02 | 1998-06-09 | National Semiconductor Corporation | Method and apparatus for encoding and using network resource locators |
| US5790548A (en) | 1996-04-18 | 1998-08-04 | Bell Atlantic Network Services, Inc. | Universal access multimedia data network |
| US5999274A (en) | 1996-05-17 | 1999-12-07 | Nko, Inc. | Apparatus and method for transmitting facsimile data |
| US6199116B1 (en) | 1996-05-24 | 2001-03-06 | Microsoft Corporation | Method and system for managing data while sharing application programs |
| US6018619A (en) | 1996-05-24 | 2000-01-25 | Microsoft Corporation | Method, system and apparatus for client-side usage tracking of information server systems |
| US5991809A (en) | 1996-07-25 | 1999-11-23 | Clearway Technologies, Llc | Web serving system that coordinates multiple servers to optimize file transfers |
| US5774660A (en) | 1996-08-05 | 1998-06-30 | Resonate, Inc. | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network |
| US5933811A (en) | 1996-08-20 | 1999-08-03 | Paul D. Angles | System and method for delivering customized advertisements within interactive communication systems |
| US5991306A (en) | 1996-08-26 | 1999-11-23 | Microsoft Corporation | Pull based, intelligent caching system and method for delivering data over a network |
| US5893116A (en) | 1996-09-30 | 1999-04-06 | Novell, Inc. | Accessing network resources using network resource replicator and captured login script for use when the computer is disconnected from the network |
| SE507138C2 (en) | 1996-10-14 | 1998-04-06 | Mirror Image Internet Ab | Procedure and apparatus for information transmission on the Internet |
| US5852717A (en) | 1996-11-20 | 1998-12-22 | Shiva Corporation | Performance optimizations for computer networks utilizing HTTP |
| US5848233A (en) | 1996-12-09 | 1998-12-08 | Sun Microsystems, Inc. | Method and apparatus for dynamic packet filter assignment |
| US6098096A (en) | 1996-12-09 | 2000-08-01 | Sun Microsystems, Inc. | Method and apparatus for dynamic cache preloading across a network |
| US6052718A (en) | 1997-01-07 | 2000-04-18 | Sightpath, Inc | Replica routing |
| US7363291B1 (en) | 2002-03-29 | 2008-04-22 | Google Inc. | Methods and apparatus for increasing efficiency of electronic document delivery to users |
| US5796952A (en) | 1997-03-21 | 1998-08-18 | Dot Com Development, Inc. | Method and apparatus for tracking client interaction with a network resource and creating client profiles and resource database |
| CA2202572C (en) | 1997-04-14 | 2004-02-10 | Ka Lun Eddie Law | A scaleable web server and method of efficiently managing multiple servers |
| JP4134357B2 (en) | 1997-05-15 | 2008-08-20 | 株式会社日立製作所 | Distributed data management method |
| US6167438A (en) | 1997-05-22 | 2000-12-26 | Trustees Of Boston University | Method and system for distributed caching, prefetching and replication |
| US6351775B1 (en) | 1997-05-30 | 2002-02-26 | International Business Machines Corporation | Loading balancing across servers in a computer network |
| US6038601A (en) | 1997-07-21 | 2000-03-14 | Tibco, Inc. | Method and apparatus for storing and delivering documents on the internet |
| US6006264A (en) | 1997-08-01 | 1999-12-21 | Arrowpoint Communications, Inc. | Method and system for directing a flow between a client and a server |
| US6157942A (en) | 1997-08-13 | 2000-12-05 | Microsoft Corporation | Imprecise caching of directory download responses for dynamic directory services |
| US6223209B1 (en) | 1997-09-30 | 2001-04-24 | Ncr Corporation | Distributed world wide web servers |
| US6128279A (en) | 1997-10-06 | 2000-10-03 | Web Balance, Inc. | System for balancing loads among network servers |
| US6363411B1 (en) | 1998-08-05 | 2002-03-26 | Mci Worldcom, Inc. | Intelligent network |
| WO1999023571A1 (en) | 1997-11-03 | 1999-05-14 | Inca Technology, Inc. | Automatically configuring network-name-services |
| US7092914B1 (en) | 1997-11-06 | 2006-08-15 | Intertrust Technologies Corporation | Methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information |
| US5974454A (en) | 1997-11-14 | 1999-10-26 | Microsoft Corporation | Method and system for installing and updating program module components |
| US6016512A (en) | 1997-11-20 | 2000-01-18 | Telcordia Technologies, Inc. | Enhanced domain name service using a most frequently used domain names table and a validity code table |
| US6092100A (en) | 1997-11-21 | 2000-07-18 | International Business Machines Corporation | Method for intelligently resolving entry of an incorrect uniform resource locator (URL) |
| US20030173405A1 (en) | 2000-01-12 | 2003-09-18 | Metrologic Instruments, Inc. | Bar code symbol driven systems for accessing information resources on the internet |
| US6178160B1 (en) | 1997-12-23 | 2001-01-23 | Cisco Technology, Inc. | Load balancing of client connections across a network using server based algorithms |
| WO1999034305A1 (en) | 1997-12-24 | 1999-07-08 | America Online, Inc. | Localization of clients and servers |
| US6386043B1 (en) | 1998-01-02 | 2002-05-14 | University Of South Florida | Lateral motion sensing assembly |
| US8296396B2 (en) | 1998-02-10 | 2012-10-23 | Level 3 Communications, Llc | Delivering resources to clients in a distributed computing environment with rendezvous based on load balancing and network conditions |
| US7054935B2 (en) | 1998-02-10 | 2006-05-30 | Savvis Communications Corporation | Internet content delivery network |
| US6185598B1 (en) | 1998-02-10 | 2001-02-06 | Digital Island, Inc. | Optimized network resource location |
| US6438592B1 (en) | 1998-02-25 | 2002-08-20 | Michael G. Killian | Systems for monitoring and improving performance on the world wide web |
| JPH11249874A (en) | 1998-02-27 | 1999-09-17 | Toshiba Corp | Computer system, synchronous processing method and recording medium in the system |
| US6243761B1 (en) | 1998-03-26 | 2001-06-05 | Digital Equipment Corporation | Method for dynamically adjusting multimedia content of a web page by a server in accordance to network path characteristics between client and server |
| US7117227B2 (en) | 1998-03-27 | 2006-10-03 | Call Charles G | Methods and apparatus for using the internet domain name system to disseminate product information |
| US6173316B1 (en) | 1998-04-08 | 2001-01-09 | Geoworks Corporation | Wireless communication device with markup language based man-machine interface |
| US6389532B1 (en) * | 1998-04-20 | 2002-05-14 | Sun Microsystems, Inc. | Method and apparatus for using digital signatures to filter packets in a network |
| AU749314B2 (en) | 1998-05-15 | 2002-06-20 | Unicast Communications Corporation | A technique for implementing browser-initiated network-distributed advertising and for interstitially displaying an advertisement |
| US6223288B1 (en) | 1998-05-22 | 2001-04-24 | Protexis Inc. | System for persistently encrypting critical software file to prevent installation of software program on unauthorized computers |
| US6976093B2 (en) | 1998-05-29 | 2005-12-13 | Yahoo! Inc. | Web server content replication |
| US6256671B1 (en) | 1998-06-24 | 2001-07-03 | Nortel Networks Limited | Method and apparatus for providing network access control using a domain name system |
| US6330561B1 (en) | 1998-06-26 | 2001-12-11 | At&T Corp. | Method and apparatus for improving end to end performance of a data network |
| US6078960A (en) | 1998-07-03 | 2000-06-20 | Acceleration Software International Corporation | Client-side load-balancing in client server network |
| US7233978B2 (en) | 1998-07-08 | 2007-06-19 | Econnectix, Llc | Method and apparatus for managing location information in a network separate from the data to which the location information pertains |
| US7103640B1 (en) | 1999-09-14 | 2006-09-05 | Econnectix, Llc | Network distributed tracking wire transfer protocol |
| US6108703A (en) | 1998-07-14 | 2000-08-22 | Massachusetts Institute Of Technology | Global hosting system |
| US6256398B1 (en) | 1998-08-22 | 2001-07-03 | Kenneth H. P. Chang | Encoding and decoding a message within an image |
| US6286043B1 (en) | 1998-08-26 | 2001-09-04 | International Business Machines Corp. | User profile management in the presence of dynamic pages using content templates |
| US6324580B1 (en) | 1998-09-03 | 2001-11-27 | Sun Microsystems, Inc. | Load balancing for replicated services |
| US6286084B1 (en) | 1998-09-16 | 2001-09-04 | Cisco Technology, Inc. | Methods and apparatus for populating a network cache |
| US6529910B1 (en) | 1998-09-18 | 2003-03-04 | David E. Fleskes | Apparatus and method for automatically generating worldwide web pages based on real world domain data |
| JP3396639B2 (en) | 1998-09-30 | 2003-04-14 | 株式会社東芝 | Hierarchical storage device and hierarchical storage control method |
| EP0993163A1 (en) | 1998-10-05 | 2000-04-12 | Backweb Technologies Ltd. | Distributed client-based data caching system and method |
| US6182125B1 (en) | 1998-10-13 | 2001-01-30 | 3Com Corporation | Methods for determining sendable information content based on a determined network latency |
| US6151631A (en) | 1998-10-15 | 2000-11-21 | Liquid Audio Inc. | Territorial determination of remote computer location in a wide area network for conditional delivery of digitized products |
| US6304913B1 (en) | 1998-11-09 | 2001-10-16 | Telefonaktiebolaget L M Ericsson (Publ) | Internet system and method for selecting a closest server from a plurality of alternative servers |
| US7165117B1 (en) | 1998-11-12 | 2007-01-16 | Cisco Technology, Inc. | Dynamic IP addressing and quality of service assurance |
| US7225264B2 (en) | 1998-11-16 | 2007-05-29 | Softricity, Inc. | Systems and methods for delivering content over a computer network |
| US6795434B1 (en) | 1998-11-18 | 2004-09-21 | Intel Corporation | Replicated server discovery in client-proxy servers |
| CN1214567C (en) | 1998-11-24 | 2005-08-10 | 尼克桑公司 | Apparatus and method for collecting and analyzing communication data |
| JP2000155736A (en) | 1998-11-24 | 2000-06-06 | Nec Corp | Service request distribution method and address translator |
| US6442165B1 (en) | 1998-12-02 | 2002-08-27 | Cisco Technology, Inc. | Load balancing between service component instances |
| US6473804B1 (en) | 1999-01-15 | 2002-10-29 | Grischa Corporation | System for indexical triggers in enhanced video productions by redirecting request to newly generated URI based on extracted parameter of first URI |
| US6408360B1 (en) | 1999-01-25 | 2002-06-18 | International Business Machines Corporation | Cache override control in an apparatus for caching dynamic content |
| US6564380B1 (en) | 1999-01-26 | 2003-05-13 | Pixelworld Networks, Inc. | System and method for sending live video on the internet |
| US6192051B1 (en) | 1999-02-26 | 2001-02-20 | Redstone Communications, Inc. | Network router search engine using compressed tree forwarding table |
| WO2000052594A2 (en) | 1999-03-03 | 2000-09-08 | Ultradns, Inc. | Scalable and efficient domain name resolution |
| US20020135611A1 (en) | 1999-03-04 | 2002-09-26 | Trevor Deosaran | Remote performance management to accelerate distributed processes |
| US7188138B1 (en) | 1999-03-22 | 2007-03-06 | Eric Schneider | Method, product, and apparatus for resource identifier registration and aftermarket services |
| US6338082B1 (en) | 1999-03-22 | 2002-01-08 | Eric Schneider | Method, product, and apparatus for requesting a network resource |
| US9141717B2 (en) | 1999-03-22 | 2015-09-22 | Esdr Network Solutions Llc | Methods, systems, products, and devices for processing DNS friendly identifiers |
| US6493765B1 (en) | 1999-03-23 | 2002-12-10 | Nortel Networks Limited | Domain name resolution in a network having multiple overlapping address domains |
| JP4299911B2 (en) | 1999-03-24 | 2009-07-22 | 株式会社東芝 | Information transfer system |
| US20050192008A1 (en) | 1999-03-31 | 2005-09-01 | Nimesh Desai | System and method for selective information exchange |
| US6484161B1 (en) | 1999-03-31 | 2002-11-19 | Verizon Laboratories Inc. | Method and system for performing online data queries in a distributed computer system |
| US6832253B1 (en) | 1999-04-01 | 2004-12-14 | Cisco Technologies, Inc. | Proximity as an aid to caching and secondary serving of data |
| US6374290B1 (en) | 1999-04-01 | 2002-04-16 | Cacheflow, Inc. | Self moderated virtual communities |
| US6963850B1 (en) | 1999-04-09 | 2005-11-08 | Amazon.Com, Inc. | Computer services for assisting users in locating and evaluating items in an electronic catalog based on actions performed by members of specific user communities |
| US6647260B2 (en) | 1999-04-09 | 2003-11-11 | Openwave Systems Inc. | Method and system facilitating web based provisioning of two-way mobile communications devices |
| US20060224752A1 (en) | 1999-05-03 | 2006-10-05 | Parekh Sanjay M | Determining geographic locations of private network Internet users |
| US7685311B2 (en) | 1999-05-03 | 2010-03-23 | Digital Envoy, Inc. | Geo-intelligent traffic reporter |
| JP3617371B2 (en) | 1999-05-07 | 2005-02-02 | セイコーエプソン株式会社 | Projector and information storage medium |
| US6351743B1 (en) | 1999-05-26 | 2002-02-26 | Lucent Technologies Inc. | Method and apparatus for operating domain name servers |
| US20010049741A1 (en) | 1999-06-18 | 2001-12-06 | Bryan D. Skene | Method and system for balancing load distribution on a wide area network |
| US6411967B1 (en) | 1999-06-18 | 2002-06-25 | Reliable Network Solutions | Distributed processing system with replicated management information base |
| US6956852B1 (en) | 1999-06-25 | 2005-10-18 | Cisco Technology Inc. | Multi-function high-speed network interface |
| US6513112B1 (en) | 1999-07-26 | 2003-01-28 | Microsoft Corporation | System and apparatus for administration of configuration information using a catalog server object to describe and manage requested configuration information to be stored in a table object |
| US6560610B1 (en) | 1999-08-10 | 2003-05-06 | Washington University | Data structure using a tree bitmap and method for rapid classification of data in a database |
| US6658462B1 (en) | 1999-08-26 | 2003-12-02 | International Business Machines Corporation | System, method, and program for balancing cache space requirements with retrieval access time for large documents on the internet |
| US6928485B1 (en) | 1999-08-27 | 2005-08-09 | At&T Corp. | Method for network-aware clustering of clients in a network |
| US7296089B2 (en) | 1999-08-27 | 2007-11-13 | At&T Corp. | Method for improving web performance by adapting servers based on client cluster characterization |
| US20060179080A1 (en) | 1999-08-30 | 2006-08-10 | Meek Brian G | System for management of source and derivative data |
| US6785704B1 (en) | 1999-12-20 | 2004-08-31 | Fastforward Networks | Content distribution system for operation over an internetwork including content peering arrangements |
| US6810411B1 (en) | 1999-09-13 | 2004-10-26 | Intel Corporation | Method and system for selecting a host in a communications network |
| US6377257B1 (en) | 1999-10-04 | 2002-04-23 | International Business Machines Corporation | Methods and apparatus for delivering 3D graphics in a networked environment |
| JP3566152B2 (en) | 1999-10-27 | 2004-09-15 | 松下電器産業株式会社 | Data recording / reproducing device and program recording medium |
| EP1096755A1 (en) | 1999-10-28 | 2001-05-02 | Alcatel | Method to provide information in an internet telecommunication network |
| US20090164331A1 (en) | 1999-11-05 | 2009-06-25 | American Express Travel Related Services Company, Inc. | Systems for Locating a Payment System Utilizing a Point of Sale Device |
| US6721780B1 (en) | 1999-11-09 | 2004-04-13 | Fireclick, Inc. | Predictive pre-download of network objects |
| US7925713B1 (en) | 1999-11-22 | 2011-04-12 | Akamai Technologies, Inc. | Method for operating an integrated point of presence server network |
| US7363361B2 (en) | 2000-08-18 | 2008-04-22 | Akamai Technologies, Inc. | Secure content delivery system |
| US6405252B1 (en) | 1999-11-22 | 2002-06-11 | Speedera Networks, Inc. | Integrated point of presence server network |
| US6484143B1 (en) | 1999-11-22 | 2002-11-19 | Speedera Networks, Inc. | User device and system for traffic management and content distribution over a world wide area network |
| US6754699B2 (en) | 2000-07-19 | 2004-06-22 | Speedera Networks, Inc. | Content delivery and global traffic management network system |
| US7590739B2 (en) | 1999-11-22 | 2009-09-15 | Akamai Technologies, Inc. | Distributed on-demand computing system |
| US6694358B1 (en) | 1999-11-22 | 2004-02-17 | Speedera Networks, Inc. | Performance computer network method |
| US7523181B2 (en) | 1999-11-22 | 2009-04-21 | Akamai Technologies, Inc. | Method for determining metrics of a content delivery and global traffic management network |
| US8504482B1 (en) | 1999-11-26 | 2013-08-06 | Board Of Trustees Of Michigan State University | System and method for preparing educational materials |
| AU4710001A (en) | 1999-12-06 | 2001-06-12 | Warp Solutions, Inc. | System and method for enhancing operation of a web server cluster |
| US7441045B2 (en) | 1999-12-13 | 2008-10-21 | F5 Networks, Inc. | Method and system for balancing load distribution on a wide area network |
| US6754706B1 (en) | 1999-12-16 | 2004-06-22 | Speedera Networks, Inc. | Scalable domain name system with persistence and load balancing |
| US6529953B1 (en) | 1999-12-17 | 2003-03-04 | Reliable Network Solutions | Scalable computer network resource monitoring and location system |
| US7447509B2 (en) | 1999-12-22 | 2008-11-04 | Celeritasworks, Llc | Geographic management system |
| US7092505B2 (en) | 1999-12-23 | 2006-08-15 | Tekelec | Methods and systems for universal, automatic service selection in a telecommunications signaling network |
| JP2001184286A (en) | 1999-12-27 | 2001-07-06 | Nec Corp | Device and method for obtaining contents, contents server and system for obtaining contents |
| US7139728B2 (en) | 1999-12-30 | 2006-11-21 | Rod Rigole | Systems and methods for online selection of service providers and management of service accounts |
| US6546388B1 (en) | 2000-01-14 | 2003-04-08 | International Business Machines Corporation | Metadata search results ranking system |
| US7748005B2 (en) | 2000-01-28 | 2010-06-29 | Hewlett-Packard Development Company, L.P. | System and method for allocating a plurality of resources between a plurality of computing domains |
| CN1115839C (en) | 2000-01-28 | 2003-07-23 | 国际商业机器公司 | Method and device for balancing load of image server |
| US20010032133A1 (en) | 2000-01-28 | 2001-10-18 | Dan Moran | System for message delivery in interactive communication networks |
| JP2002247029A (en) | 2000-02-02 | 2002-08-30 | Sony Corp | Authentication device, authentication system and method, processing device, communication device, communication control device, communication system and method, information recording method and device, information restoration method and device, and recording medium |
| US6738766B2 (en) | 2000-02-02 | 2004-05-18 | Doongo Technologies, Inc. | Apparatus and methods for providing personalized application search results for wireless devices based on user profiles |
| US7454457B1 (en) | 2000-02-07 | 2008-11-18 | Parallel Networks, Llc | Method and apparatus for dynamic data flow control using prioritization of data requests |
| US6820133B1 (en) | 2000-02-07 | 2004-11-16 | Netli, Inc. | System and method for high-performance delivery of web content using high-performance communications protocol between the first and second specialized intermediate nodes to optimize a measure of communications performance between the source and the destination |
| US7073510B2 (en) | 2000-02-11 | 2006-07-11 | The General Hospital Corporation | Photochemical tissue bonding |
| GB2359221B (en) | 2000-02-12 | 2004-03-10 | Motorola Inc | Distributed cellular telephone antenna system with adaptive cell configuration |
| US6643707B1 (en) | 2000-02-14 | 2003-11-04 | General Instrument Corporation | Method and apparatus for defining, managing and distributing broadcast names |
| US6724770B1 (en) | 2000-02-17 | 2004-04-20 | Kenneth P. Birman | Multicast protocol with reduced buffering requirements |
| US7792745B2 (en) | 2000-02-25 | 2010-09-07 | Ipass Inc. | Method and system to facilitate financial settlement of service access transactions between multiple parties |
| US6799214B1 (en) | 2000-03-03 | 2004-09-28 | Nec Corporation | System and method for efficient content delivery using redirection pages received from the content provider original site and the mirror sites |
| US7506034B2 (en) | 2000-03-03 | 2009-03-17 | Intel Corporation | Methods and apparatus for off loading content servers through direct file transfer from a storage center to an end-user |
| US20020049608A1 (en) | 2000-03-03 | 2002-04-25 | Hartsell Neal D. | Systems and methods for providing differentiated business services in information management environments |
| JP2001249907A (en) | 2000-03-03 | 2001-09-14 | Ricoh Co Ltd | Startup processing method |
| US20020129123A1 (en) | 2000-03-03 | 2002-09-12 | Johnson Scott C | Systems and methods for intelligent information retrieval and delivery in an information management environment |
| US7565450B2 (en) | 2000-03-16 | 2009-07-21 | Adara Networks Inc. | System and method for using a mapping between client addresses and addresses of caches to support content delivery |
| US7162539B2 (en) | 2000-03-16 | 2007-01-09 | Adara Networks, Inc. | System and method for discovering information objects and information object repositories in computer networks |
| US7930285B2 (en) | 2000-03-22 | 2011-04-19 | Comscore, Inc. | Systems for and methods of user demographic reporting usable for identifying users and collecting usage data |
| WO2001071556A1 (en) | 2000-03-22 | 2001-09-27 | British Telecommunications Public Limited Company | Data access |
| US7493655B2 (en) | 2000-03-22 | 2009-02-17 | Comscore Networks, Inc. | Systems for and methods of placing user identification in the header of data packets usable in user demographic reporting and collecting usage data |
| US7650376B1 (en) | 2000-03-27 | 2010-01-19 | Blumenau Trevor I | Content distribution system for distributing content over a network, with particular applicability to distributing high-bandwidth content |
| US6687846B1 (en) | 2000-03-30 | 2004-02-03 | Intel Corporation | System and method for error handling and recovery |
| US7058706B1 (en) | 2000-03-31 | 2006-06-06 | Akamai Technologies, Inc. | Method and apparatus for determining latency between multiple servers and a client |
| US20050021862A1 (en) | 2000-03-31 | 2005-01-27 | Dickens Coal Llc | Automatic selection of content-delivery provider using link mapping database |
| US6684250B2 (en) | 2000-04-03 | 2004-01-27 | Quova, Inc. | Method and apparatus for estimating a geographic location of a networked entity |
| US7024466B2 (en) | 2000-04-07 | 2006-04-04 | Movielink, Llc | Network configured for delivery of content for download to a recipient |
| US20020154157A1 (en) | 2000-04-07 | 2002-10-24 | Sherr Scott Jeffrey | Website system and process for selection and delivery of electronic information on a network |
| US6622168B1 (en) | 2000-04-10 | 2003-09-16 | Chutney Technologies, Inc. | Dynamic page generation acceleration using component-level caching |
| US7240100B1 (en) | 2000-04-14 | 2007-07-03 | Akamai Technologies, Inc. | Content delivery network (CDN) content server request handling mechanism with metadata framework support |
| US6697805B1 (en) | 2000-04-14 | 2004-02-24 | Microsoft Corporation | XML methods and systems for synchronizing multiple computing devices |
| US6760721B1 (en) | 2000-04-14 | 2004-07-06 | Realnetworks, Inc. | System and method of managing metadata data |
| US6996616B1 (en) | 2000-04-17 | 2006-02-07 | Akamai Technologies, Inc. | HTML delivery from edge-of-network servers in a content delivery network (CDN) |
| US7120662B2 (en) | 2000-04-17 | 2006-10-10 | Circadence Corporation | Conductor gateway prioritization parameters |
| US6976090B2 (en) | 2000-04-20 | 2005-12-13 | Actona Technologies Ltd. | Differentiated content and application delivery via internet |
| EP1148688A1 (en) | 2000-04-20 | 2001-10-24 | Telefonaktiebolaget L M Ericsson (Publ) | Proxy apparatus and method |
| US7908337B2 (en) | 2000-04-28 | 2011-03-15 | Adara Networks, Inc. | System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content |
| US6950848B1 (en) | 2000-05-05 | 2005-09-27 | Yousefi Zadeh Homayoun | Database load balancing for multi-tier computer systems |
| US6785713B1 (en) | 2000-05-08 | 2004-08-31 | Citrix Systems, Inc. | Method and apparatus for communicating among a network of servers utilizing a transport mechanism |
| US6457047B1 (en) | 2000-05-08 | 2002-09-24 | Verity, Inc. | Application caching system and method |
| US20020083148A1 (en) | 2000-05-12 | 2002-06-27 | Shaw Venson M. | System and method for sender initiated caching of personalized content |
| US7562153B2 (en) | 2000-05-12 | 2009-07-14 | AT&T Intellectual Property II, L. P. | Method and apparatus for content distribution network brokering and peering |
| US7020718B2 (en) | 2000-05-15 | 2006-03-28 | Hewlett-Packard Development Company, L.P. | System and method of aggregating discontiguous address ranges into addresses and masks using a plurality of repeating address blocks |
| US7143142B1 (en) | 2000-05-15 | 2006-11-28 | Ricoh Co., Ltd. | Method and apparatus for appliance host supported network-based application delivery |
| US6961750B1 (en) | 2000-05-18 | 2005-11-01 | Microsoft Corp. | Server-side control objects for processing client-side user interface elements |
| US6990526B1 (en) | 2000-05-22 | 2006-01-24 | Pointred Technologies, Inc. | Method and apparatus for web caching |
| US7555542B1 (en) | 2000-05-22 | 2009-06-30 | Internap Network Services Corporation | Method and system for directing requests for content to a content server based on network performance |
| US7082476B1 (en) | 2000-05-24 | 2006-07-25 | Cisco Technology, Inc. | System and method of optimizing retrieval of network resources by identifying and substituting embedded symbolic host name references with network addresses in accordance with substitution policies |
| US8719562B2 (en) | 2002-10-25 | 2014-05-06 | William M. Randle | Secure service network and user gateway |
| US7974277B2 (en) | 2000-05-25 | 2011-07-05 | Cisco Technology, Inc. | System and method for routing calls |
| US7734815B2 (en) | 2006-09-18 | 2010-06-08 | Akamai Technologies, Inc. | Global load balancing across mirrored data centers |
| US6985945B2 (en) | 2000-12-07 | 2006-01-10 | Ipass, Inc. | Service quality monitoring process |
| CN1212584C (en) | 2000-05-30 | 2005-07-27 | 日本波技术集团有限公司 | Rental system of digital content, rental method and server of rental digital content |
| US20030154284A1 (en) | 2000-05-31 | 2003-08-14 | James Bernardin | Distributed data propagator |
| US20080005275A1 (en) | 2000-06-02 | 2008-01-03 | Econnectix, Llc | Method and apparatus for managing location information in a network separate from the data to which the location information pertains |
| US20030182413A1 (en) | 2000-06-02 | 2003-09-25 | Allen Matthew Robert | System and method for selecting a service provider |
| US7200673B1 (en) | 2000-06-09 | 2007-04-03 | Steven Augart | Determining the geographic location of a network device |
| US6782398B1 (en) | 2000-06-14 | 2004-08-24 | Microsoft Corporation | Method for executing commands on multiple computers of a network |
| AU2001268411A1 (en) | 2000-06-14 | 2002-01-02 | Core Express, Inc. | Route selection within a network with peering connections |
| US20020013823A1 (en) | 2000-06-16 | 2002-01-31 | Eubanks Thomas Marshall | Multicast peering in multicast points of presence (MULTIPOPs) network - neutral multicast internet exchange |
| US7003555B1 (en) | 2000-06-23 | 2006-02-21 | Cloudshield Technologies, Inc. | Apparatus and method for domain name resolution |
| US8204082B2 (en) | 2000-06-23 | 2012-06-19 | Cloudshield Technologies, Inc. | Transparent provisioning of services over a network |
| US7032031B2 (en) | 2000-06-23 | 2006-04-18 | Cloudshield Technologies, Inc. | Edge adapter apparatus and method |
| US9444785B2 (en) | 2000-06-23 | 2016-09-13 | Cloudshield Technologies, Inc. | Transparent provisioning of network access to an application |
| US6829654B1 (en) | 2000-06-23 | 2004-12-07 | Cloudshield Technologies, Inc. | Apparatus and method for virtual edge placement of web sites |
| JP4292693B2 (en) | 2000-07-07 | 2009-07-08 | 株式会社日立製作所 | Computer resource dividing apparatus and resource dividing method |
| US20020006591A1 (en) | 2000-07-07 | 2002-01-17 | Hugens John R. | Method and apparatus for mixing combustion gases |
| US7653706B2 (en) | 2000-07-19 | 2010-01-26 | Akamai Technologies, Inc. | Dynamic image delivery system |
| US7574499B1 (en) | 2000-07-19 | 2009-08-11 | Akamai Technologies, Inc. | Global traffic management system using IP anycast routing and dynamic load-balancing |
| US7725602B2 (en) | 2000-07-19 | 2010-05-25 | Akamai Technologies, Inc. | Domain name resolution using a distributed DNS network |
| US7484002B2 (en) | 2000-08-18 | 2009-01-27 | Akamai Technologies, Inc. | Content delivery and global traffic management network system |
| US7716367B1 (en) | 2000-07-20 | 2010-05-11 | Akamai Technologies, Inc. | Network performance monitoring in a content delivery service |
| JP3674471B2 (en) | 2000-07-25 | 2005-07-20 | 日本電気株式会社 | Content transfer method, network system, and machine-readable recording medium recording program |
| US6973038B1 (en) | 2000-07-28 | 2005-12-06 | Tactical Networks A.S. | System and method for real-time buying and selling of internet protocol (IP) transit |
| US20020165912A1 (en) | 2001-02-25 | 2002-11-07 | Storymail, Inc. | Secure certificate and system and method for issuing and using same |
| US6523036B1 (en) | 2000-08-01 | 2003-02-18 | Dantz Development Corporation | Internet database system |
| US7177945B2 (en) | 2000-08-04 | 2007-02-13 | Avaya Technology Corp. | Non-intrusive multiplexed transaction persistency in secure commerce environments |
| US7257581B1 (en) | 2000-08-04 | 2007-08-14 | Guardian Networks, Llc | Storage, management and distribution of consumer information |
| US20020016831A1 (en) | 2000-08-07 | 2002-02-07 | Vidius Inc. | Apparatus and method for locating of an internet user |
| WO2002014991A2 (en) | 2000-08-11 | 2002-02-21 | Incanta, Inc. | Resource distribution in network environment |
| US7006099B2 (en) | 2000-08-15 | 2006-02-28 | Aware, Inc. | Cache system and method for generating uncached objects from cached and stored object components |
| US7500243B2 (en) | 2000-08-17 | 2009-03-03 | Sun Microsystems, Inc. | Load balancing method and system using multiple load balancing servers |
| US8527639B1 (en) | 2000-08-18 | 2013-09-03 | Cisco Technology, Inc. | Content server selection for accessing content in a content distribution network |
| US6732237B1 (en) | 2000-08-29 | 2004-05-04 | Oracle International Corporation | Multi-tier caching system |
| US6681282B1 (en) | 2000-08-31 | 2004-01-20 | Hewlett-Packard Development Company, L.P. | Online control of a multiprocessor computer system |
| US20020116491A1 (en) | 2000-09-01 | 2002-08-22 | Boyd Eric L. | Method and system for probing a network |
| US20030154266A1 (en) | 2000-09-01 | 2003-08-14 | Mark Bobick | Server system and method for discovering digital assets in enterprise information systems |
| US20020082858A1 (en) | 2000-09-12 | 2002-06-27 | Infolibria, Inc. | Managing distribution and local execution of computing resources |
| KR20020022317A (en) | 2000-09-19 | 2002-03-27 | 윤종용 | Home gateway and Method for operating the same |
| US7010578B1 (en) | 2000-09-21 | 2006-03-07 | Akamai Technologies, Inc. | Internet content delivery service with third party cache interface support |
| US7039683B1 (en) | 2000-09-25 | 2006-05-02 | America Online, Inc. | Electronic information caching |
| US7454500B1 (en) | 2000-09-26 | 2008-11-18 | Foundry Networks, Inc. | Global server load balancing |
| US6769031B1 (en) | 2000-09-29 | 2004-07-27 | Interland, Inc. | Dynamically incorporating updates to active configuration information |
| US7664831B2 (en) | 2000-10-02 | 2010-02-16 | Verisign, Inc. | Determining alternative textual identifiers, such as for registered domain names |
| AU2002211482A1 (en) | 2000-10-04 | 2002-04-15 | Enic Corporation | Providing services and information based on a request that includes a unique identifier |
| US7249196B1 (en) | 2000-10-06 | 2007-07-24 | Juniper Networks, Inc. | Web page source file transfer system and method |
| AU2001296774A1 (en) | 2000-10-09 | 2002-04-22 | Enic Corporation | Registering and using multilingual domain names |
| US8117281B2 (en) | 2006-11-02 | 2012-02-14 | Addnclick, Inc. | Using internet content as a means to establish live social networks by linking internet users to each other who are simultaneously engaged in the same and/or similar content |
| US7756032B2 (en) | 2000-10-17 | 2010-07-13 | Avaya Inc. | Method and apparatus for communicating data within measurement traffic |
| US7707305B2 (en) * | 2000-10-17 | 2010-04-27 | Cisco Technology, Inc. | Methods and apparatus for protecting against overload conditions on nodes of a distributed network |
| US6981025B1 (en) | 2000-10-19 | 2005-12-27 | International Business Machines Corporation | Method and apparatus for ensuring scalable mastership during initialization of a system area network |
| US7139821B1 (en) | 2000-10-20 | 2006-11-21 | Sun Microsystems, Inc. | Method and apparatus for creating and deploying applications from a server application |
| US6944167B1 (en) | 2000-10-24 | 2005-09-13 | Sprint Communications Company L.P. | Method and apparatus for dynamic allocation of private address space based upon domain name service queries |
| US7890989B1 (en) | 2000-10-24 | 2011-02-15 | Sony Corporation | Automated context-sensitive updating on content in an audiovisual storage system |
| US6970939B2 (en) | 2000-10-26 | 2005-11-29 | Intel Corporation | Method and apparatus for large payload distribution in a network |
| US20020150094A1 (en) | 2000-10-27 | 2002-10-17 | Matthew Cheng | Hierarchical level-based internet protocol multicasting |
| US7111057B1 (en) | 2000-10-31 | 2006-09-19 | Akamai Technologies, Inc. | Method and system for purging content from a content delivery network |
| JP2002140202A (en) | 2000-11-01 | 2002-05-17 | Hitachi Ltd | Information distribution system and load distribution method thereof |
| US7117262B2 (en) | 2000-11-01 | 2006-10-03 | Inktomi Corporation | Cooperative management of distributed network caches |
| US7653700B1 (en) | 2000-11-16 | 2010-01-26 | Microsoft Corporation | System and method for performing client-centric load balancing of multiple globally-dispersed servers |
| US7296088B1 (en) | 2000-11-17 | 2007-11-13 | Microsoft Corporation | System and method for determining the geographic location of internet hosts |
| US7072982B2 (en) | 2000-11-22 | 2006-07-04 | Microsoft Corporation | Universal naming scheme for peer to peer resources |
| US20020065910A1 (en) | 2000-11-30 | 2002-05-30 | Rabindranath Dutta | Method, system, and program for providing access time information when displaying network addresses |
| US6941562B2 (en) | 2000-12-01 | 2005-09-06 | Appeon Corporation | Method of <script> based remote JavaScript function call of web page |
| US7389354B1 (en) | 2000-12-11 | 2008-06-17 | Cisco Technology, Inc. | Preventing HTTP server attacks |
| US20020112049A1 (en) | 2000-12-14 | 2002-08-15 | International Business Machines Corporation | Measuring response time for a computer accessing information from a network |
| US6643357B2 (en) | 2000-12-14 | 2003-11-04 | Nortel Networks Limited | Distributed redirect server |
| US20020116582A1 (en) | 2000-12-18 | 2002-08-22 | Copeland George P. | Batching of invalidations and new values in a web cache with dynamic content |
| US7565407B1 (en) | 2000-12-22 | 2009-07-21 | Nortel Networks Limited | Network proxy apparatus and methods |
| US7415429B2 (en) | 2000-12-22 | 2008-08-19 | Invenda Corporation | Providing navigation objects for communications over a network |
| US6968385B1 (en) | 2000-12-22 | 2005-11-22 | Bellsouth Intellectual Property | Systems and methods for limiting web site access |
| US6845400B2 (en) | 2000-12-28 | 2005-01-18 | Nortel Networks Limited | Storing subscriber location indication at DNS, to enable location specific provision of internet content |
| US6651141B2 (en) | 2000-12-29 | 2003-11-18 | Intel Corporation | System and method for populating cache servers with popular media contents |
| US6751673B2 (en) | 2001-01-03 | 2004-06-15 | Akamai Technologies, Inc. | Streaming media subscription mechanism for a content delivery network |
| US20020087374A1 (en) | 2001-01-03 | 2002-07-04 | International Business Machines Corporation | Apparatus and method for verifying categorization of services using canonical service description tests |
| US20020138437A1 (en) | 2001-01-08 | 2002-09-26 | Lewin Daniel M. | Extending an internet content delivery network into an enterprise environment by locating ICDN content servers topologically near an enterprise firewall |
| US20020092026A1 (en) | 2001-01-09 | 2002-07-11 | International Business Machines Corporation | Method and apparatus for broadcast delivery of content to a client-side cache based on user preferences |
| WO2002069608A2 (en) | 2001-01-16 | 2002-09-06 | Akamai Technologies, Inc. | Using virtual domain name service (dns) zones for enterprise content delivery |
| US7269784B1 (en) | 2001-01-22 | 2007-09-11 | Kasriel Stephane | Server-originated differential caching |
| US20020099616A1 (en) | 2001-01-23 | 2002-07-25 | Wim Sweldens | System and method for distributing web content on a network |
| US7240105B2 (en) | 2001-01-26 | 2007-07-03 | International Business Machines Corporation | Distributed multicast caching technique |
| US20020103935A1 (en) | 2001-01-26 | 2002-08-01 | Neil Fishman | Pushing rich content information to mobile devices |
| US6907022B2 (en) | 2001-01-27 | 2005-06-14 | Motorola, Inc. | Method and apparatus in a portable subscriber unit for minimizing a connection setup time through a communication network |
| US6598119B2 (en) | 2001-02-09 | 2003-07-22 | At&T Corp. | Database management system with a multiple-level cache arrangement |
| TWI223942B (en) | 2001-02-20 | 2004-11-11 | Li Jian Min | Contents transmission network system and creating method thereof |
| US20020120782A1 (en) | 2001-02-26 | 2002-08-29 | Douglas Dillon | Transparent proxying enhancement |
| US7274658B2 (en) | 2001-03-01 | 2007-09-25 | Akamai Technologies, Inc. | Optimal route selection in a content delivery network |
| WO2002071191A2 (en) | 2001-03-02 | 2002-09-12 | Kasenna, Inc. | Metadata enabled push-pull model for efficient low-latency video-content distribution over a network |
| US20020124047A1 (en) | 2001-03-02 | 2002-09-05 | M. Scott Gartner | Interactive remote monitoring of client page render times |
| US20020131428A1 (en) | 2001-03-13 | 2002-09-19 | Vivian Pecus | Large edge node for simultaneous video on demand and live streaming of satellite delivered content |
| US20020133601A1 (en) | 2001-03-16 | 2002-09-19 | Kennamer Walter J. | Failover of servers over which data is partitioned |
| ATE490504T1 (en) | 2001-03-19 | 2010-12-15 | Panasonic Corp | DATA RECEIVING SYSTEM WITH REPLACEABLE RECORDING MEDIUM AND METHOD THEREOF |
| DE10113577A1 (en) | 2001-03-20 | 2003-01-09 | Sap Ag | Method, computer program product and computer system to support multiple application systems using a single database system |
| US7840652B2 (en) | 2001-03-21 | 2010-11-23 | Ascentive Llc | System and method for determining network configuration settings that provide optimal network performance |
| US20020138286A1 (en) | 2001-03-26 | 2002-09-26 | Engstrom G. Eric | Method and apparatus for generating electronic personas |
| US7076633B2 (en) | 2001-03-28 | 2006-07-11 | Swsoft Holdings, Ltd. | Hosting service providing platform system and method |
| US7664119B2 (en) | 2001-03-30 | 2010-02-16 | Intel Corporation | Method and apparatus to perform network routing |
| US7340505B2 (en) | 2001-04-02 | 2008-03-04 | Akamai Technologies, Inc. | Content storage and replication in a managed internet content storage environment |
| US7065587B2 (en) | 2001-04-02 | 2006-06-20 | Microsoft Corporation | Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith |
| US7149797B1 (en) | 2001-04-02 | 2006-12-12 | Akamai Technologies, Inc. | Content delivery network service provider (CDNSP)-managed content delivery network (CDN) for network service provider (NSP) |
| US20020152326A1 (en) | 2001-04-03 | 2002-10-17 | David Orshan | System, method and computer program product for facilitating local internet service providers to deliver guaranteed bandwidth internet service |
| US20020143675A1 (en) | 2001-04-03 | 2002-10-03 | David Orshan | System, method and computer program product for facilitating the provision of internet service combining the advantages of local ISP ownership and national scale |
| US6920477B2 (en) | 2001-04-06 | 2005-07-19 | President And Fellows Of Harvard College | Distributed, compressed Bloom filter Web cache server |
| US20020184368A1 (en) | 2001-04-06 | 2002-12-05 | Yunsen Wang | Network system, method and protocols for hierarchical service and content distribution via directory enabled network |
| US7447182B2 (en) | 2001-04-06 | 2008-11-04 | Nortel Networks Limited | Discovering an address of a name server |
| US20020147770A1 (en) | 2001-04-09 | 2002-10-10 | Timothy Tang | Multicast enabled caching service |
| US7016972B2 (en) | 2001-04-23 | 2006-03-21 | International Business Machines Corporation | Method and system for providing and viewing performance analysis of resource groups |
| JP2002323986A (en) | 2001-04-25 | 2002-11-08 | Hitachi Ltd | Computer resource distribution system and method |
| US20020194324A1 (en) | 2001-04-26 | 2002-12-19 | Aloke Guha | System for global and local data resource management for service guarantees |
| US20020161767A1 (en) | 2001-04-30 | 2002-10-31 | Shapiro Aaron M. | System and method for updating content on a plurality of content server computers over a network |
| US7543024B2 (en) | 2001-05-03 | 2009-06-02 | Oracle International Corporation | System and method for monitoring multiple online resources in different formats |
| US20020165948A1 (en) | 2001-05-07 | 2002-11-07 | International Business Machines Corporation | Scalable resource discovery and reconfiguration for distributed computer networks |
| US6959333B2 (en) | 2001-05-08 | 2005-10-25 | Lucent Technologies Inc. | Technique for content delivery over the internet |
| US7185052B2 (en) | 2001-05-16 | 2007-02-27 | Akamai Technologies, Inc. | Meta content delivery network system |
| US7146560B2 (en) | 2001-05-18 | 2006-12-05 | Xerox Corporation | Systems and methods for managing identity information |
| US20040044791A1 (en) | 2001-05-22 | 2004-03-04 | Pouzzner Daniel G. | Internationalized domain name system with iterative conversion |
| US7376653B2 (en) | 2001-05-22 | 2008-05-20 | Reuters America, Inc. | Creating dynamic web pages at a client browser |
| US20040073707A1 (en) | 2001-05-23 | 2004-04-15 | Hughes Electronics Corporation | Generating a list of network addresses for pre-loading a network address cache via multicast |
| US8019807B2 (en) | 2001-05-23 | 2011-09-13 | Wireless Enterprise Solutions Technology Limited | Method and system for communication between computer systems |
| US7603403B2 (en) | 2001-05-30 | 2009-10-13 | International Business Machines Corporation | Localization in distributed computer environments |
| US20030182447A1 (en) | 2001-05-31 | 2003-09-25 | Schilling Frank T. | Generic top-level domain re-routing system |
| US7159014B2 (en) | 2001-06-04 | 2007-01-02 | Fineground Networks | Method and system for efficient and automated version management of embedded objects in web documents |
| US7617292B2 (en) | 2001-06-05 | 2009-11-10 | Silicon Graphics International | Multi-class heterogeneous clients in a clustered filesystem |
| US7320131B1 (en) | 2001-06-06 | 2008-01-15 | Cisco Technology, Inc. | Methods and apparatus for selecting a server to process a request |
| US7007089B2 (en) | 2001-06-06 | 2006-02-28 | Akarnai Technologies, Inc. | Content delivery network map generation using passive measurement data |
| US8005981B2 (en) | 2001-06-15 | 2011-08-23 | Advanced Network Technology Laboratories Pte Ltd. | Computer network with unique identification |
| TW560151B (en) | 2001-06-18 | 2003-11-01 | Ibm | Packet-oriented data communications between mobile and fixed data networks |
| US7185063B1 (en) | 2001-06-22 | 2007-02-27 | Digital River, Inc. | Content delivery network using differential caching |
| US7343399B2 (en) | 2001-06-25 | 2008-03-11 | Nortel Networks Limited | Apparatus and method for managing internet resource requests |
| US6986018B2 (en) | 2001-06-26 | 2006-01-10 | Microsoft Corporation | Method and apparatus for selecting cache and proxy policy |
| US7024477B2 (en) | 2001-06-29 | 2006-04-04 | International Business Machines Corporation | Service time analysis methods for the WSM QOS monitor |
| US20030004998A1 (en) | 2001-06-29 | 2003-01-02 | Chutney Technologies, Inc. | Proxy-based acceleration of dynamically generated content |
| US7095715B2 (en) | 2001-07-02 | 2006-08-22 | 3Com Corporation | System and method for processing network packet flows |
| US7027582B2 (en) | 2001-07-06 | 2006-04-11 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for resolving an entity identifier into an internet address using a domain name system (DNS) server and an entity identifier portability database |
| TWI240250B (en) | 2001-07-09 | 2005-09-21 | Matsushita Electric Industrial Co Ltd | Content management system and information recording medium |
| US20040128346A1 (en) | 2001-07-16 | 2004-07-01 | Shmuel Melamed | Bandwidth savings and qos improvement for www sites by catching static and dynamic content on a distributed network of caches |
| US6981029B1 (en) | 2001-07-17 | 2005-12-27 | Cisco Technology, Inc. | System and method for processing a request for information in a network |
| US6968389B1 (en) | 2001-07-17 | 2005-11-22 | Cisco Technology, Inc. | System and method for qualifying requests in a network |
| US6917951B2 (en) | 2001-07-26 | 2005-07-12 | Microsoft Corporation | System and method for replicating data in resource sets |
| US6633324B2 (en) | 2001-07-31 | 2003-10-14 | Forgent Networks, Inc. | System and method for video call configuration and scheduling |
| US7139811B2 (en) | 2001-08-01 | 2006-11-21 | Actona Technologies Ltd. | Double-proxy remote data access system |
| JP3748216B2 (en) | 2001-08-02 | 2006-02-22 | 日本電信電話株式会社 | Packet transfer method and packet transmitter / receiver |
| JP3707404B2 (en) | 2001-08-03 | 2005-10-19 | ソニー株式会社 | Inspection method, semiconductor device, and display device |
| US7174379B2 (en) | 2001-08-03 | 2007-02-06 | International Business Machines Corporation | Managing server resources for hosted applications |
| DE60211524T2 (en) | 2001-08-04 | 2006-12-14 | Kontiki, Inc., Sunnyvale | METHOD AND DEVICE FOR THE DISTRIBUTED DELIVERY OF CONTENT WITHIN A COMPUTER NETWORK |
| US6678791B1 (en) | 2001-08-04 | 2004-01-13 | Sun Microsystems, Inc. | System and method for session-aware caching |
| US7092997B1 (en) | 2001-08-06 | 2006-08-15 | Digital River, Inc. | Template identification with differential caching |
| US7188214B1 (en) | 2001-08-07 | 2007-03-06 | Digital River, Inc. | Efficient compression using differential caching |
| US6907525B2 (en) | 2001-08-14 | 2005-06-14 | Riverhead Networks Inc. | Protecting against spoofed DNS messages |
| US20030037284A1 (en) | 2001-08-15 | 2003-02-20 | Anand Srinivasan | Self-monitoring mechanism in fault-tolerant distributed dynamic network systems |
| US8346848B2 (en) | 2001-08-16 | 2013-01-01 | Juniper Networks, Inc. | System and method for maintaining statefulness during client-server interactions |
| US20030037139A1 (en) | 2001-08-20 | 2003-02-20 | Koninklijke Philips Electronics N.V. | Content distribution model |
| US7783727B1 (en) | 2001-08-30 | 2010-08-24 | Emc Corporation | Dynamic host configuration protocol in a storage environment |
| US7185084B2 (en) | 2001-09-05 | 2007-02-27 | Intel Corporation | Server-side measurement of client-perceived quality of service |
| WO2003025685A1 (en) | 2001-09-14 | 2003-03-27 | Ibex Process Technology, Inc. | Scalable, hierarchical control for complex processes |
| US7406522B2 (en) | 2001-09-26 | 2008-07-29 | Packeteer, Inc. | Dynamic partitioning of network resources |
| CN1575582A (en) | 2001-09-28 | 2005-02-02 | 塞维斯通讯公司 | Configurable Adaptive Global Communications Control and Management |
| US7860964B2 (en) | 2001-09-28 | 2010-12-28 | Level 3 Communications, Llc | Policy-based content delivery network selection |
| US7769823B2 (en) | 2001-09-28 | 2010-08-03 | F5 Networks, Inc. | Method and system for distributing requests for content |
| US20030065739A1 (en) | 2001-10-01 | 2003-04-03 | J. Mitchell Shnier | Methods for independently generating a reference to desired information available from a remote source |
| US7284056B2 (en) | 2001-10-04 | 2007-10-16 | Microsoft Corporation | Resolving host name data |
| US7613815B1 (en) | 2001-10-15 | 2009-11-03 | Netapp, Inc. | Method and apparatus for customized logging in a network cache |
| US7194553B2 (en) | 2001-10-16 | 2007-03-20 | Microsoft Corporation | Resolving virtual network names |
| US20030174648A1 (en) | 2001-10-17 | 2003-09-18 | Mea Wang | Content delivery network by-pass system |
| US20030079027A1 (en) | 2001-10-18 | 2003-04-24 | Michael Slocombe | Content request routing and load balancing for content distribution networks |
| US6934812B1 (en) | 2001-10-22 | 2005-08-23 | Apple Computer, Inc. | Media player with instant play capability |
| US7149809B2 (en) | 2001-11-13 | 2006-12-12 | One Touch Systems | System for reducing server loading during content delivery |
| US8000724B1 (en) | 2001-11-14 | 2011-08-16 | Sprint Spectrum L.P. | Method and system for subnet-based transmission of mobile station location |
| US20030093523A1 (en) | 2001-11-15 | 2003-05-15 | Cranor Charles D. | Method for associating clients with domain name servers |
| CA2411806A1 (en) | 2001-11-16 | 2003-05-16 | Telecommunications Research Laboratory | Wide-area content-based routing architecture |
| ITTO20011082A1 (en) | 2001-11-19 | 2003-05-19 | Telecom Italia Lab Spa | PROCEDURE TO CHECK THE FUNCTIONALITY OF A CDN NETWORK, ITS SYSTEM AND IT PRODUCT. |
| US7194656B2 (en) | 2001-11-28 | 2007-03-20 | Yottayotta Inc. | Systems and methods for implementing content sensitive routing over a wide area network (WAN) |
| US7062756B2 (en) | 2001-11-30 | 2006-06-13 | Sun Microsystems, Inc. | Dynamic object usage pattern learning and efficient caching |
| JP4040292B2 (en) | 2001-11-30 | 2008-01-30 | 日本電信電話株式会社 | Server selection method, server selection device, server selection program, and recording medium |
| JP2003167813A (en) | 2001-11-30 | 2003-06-13 | Oki Electric Ind Co Ltd | Stream data storing and distributing method and system |
| US6954456B2 (en) | 2001-12-14 | 2005-10-11 | At & T Corp. | Method for content-aware redirection and content renaming |
| US7426534B2 (en) | 2001-12-19 | 2008-09-16 | International Business Machines Corporation | Method and system for caching message fragments using an expansion attribute in a fragment link tag |
| US7730154B2 (en) | 2001-12-19 | 2010-06-01 | International Business Machines Corporation | Method and system for fragment linking and fragment caching |
| US6925499B1 (en) | 2001-12-19 | 2005-08-02 | Info Value Computing, Inc. | Video distribution system using disk load balancing by file copying |
| JP2003188901A (en) | 2001-12-20 | 2003-07-04 | Nec Corp | Communication system and communication method |
| US6961783B1 (en) | 2001-12-21 | 2005-11-01 | Networks Associates Technology, Inc. | DNS server access control system and method |
| US7257625B2 (en) | 2001-12-21 | 2007-08-14 | Nokia, Inc. | Cache on demand |
| US6745303B2 (en) | 2002-01-03 | 2004-06-01 | Hitachi, Ltd. | Data synchronization of multiple remote storage |
| US7139932B2 (en) | 2002-01-03 | 2006-11-21 | Hitachi, Ltd. | Data synchronization of multiple remote storage after remote copy suspension |
| US20030133554A1 (en) | 2002-01-11 | 2003-07-17 | Nokia Corporation | System and method for facilitating access to network based services |
| US7127713B2 (en) | 2002-01-11 | 2006-10-24 | Akamai Technologies, Inc. | Java application framework for use in a content delivery network (CDN) |
| US6907501B2 (en) | 2002-01-25 | 2005-06-14 | Ntt Docomo Inc. | System for management of cacheable streaming content in a packet based communication network with mobile hosts |
| US7350075B1 (en) | 2002-01-28 | 2008-03-25 | Network Appliance, Inc. | Method for autoconfiguration of authentication servers |
| JP2003223378A (en) | 2002-01-29 | 2003-08-08 | Fujitsu Ltd | Content delivery network service method and system |
| US7010598B2 (en) | 2002-02-11 | 2006-03-07 | Akamai Technologies, Inc. | Method and apparatus for measuring stream availability, quality and performance |
| US7853719B1 (en) | 2002-02-11 | 2010-12-14 | Microsoft Corporation | Systems and methods for providing runtime universal resource locator (URL) analysis and correction |
| US7228359B1 (en) | 2002-02-12 | 2007-06-05 | Cisco Technology, Inc. | Methods and apparatus for providing domain name service based on a client identifier |
| US7272227B1 (en) | 2002-02-12 | 2007-09-18 | David Beran | Delivery of data via omnidirectional digital transmission |
| US9167036B2 (en) | 2002-02-14 | 2015-10-20 | Level 3 Communications, Llc | Managed object replication and delivery |
| EP1485827A2 (en) | 2002-02-14 | 2004-12-15 | Transwitch Corporation | Efficient ipv4/ipv6 best matching prefix method and apparatus |
| US8533282B2 (en) | 2002-02-25 | 2013-09-10 | Broadcom Corporation | System, method and computer program product for selectively caching domain name system information on a network gateway |
| US7152118B2 (en) | 2002-02-25 | 2006-12-19 | Broadcom Corporation | System, method and computer program product for caching domain name system information on a network gateway |
| US7970816B2 (en) | 2002-03-01 | 2011-06-28 | NetSuite Inc. | Client-side caching of pages with changing content |
| US8972589B2 (en) | 2002-03-01 | 2015-03-03 | Enterasys Networks, Inc. | Location-based access control in a data network |
| US7290008B2 (en) | 2002-03-05 | 2007-10-30 | Exigen Group | Method to extend a uniform resource identifier to encode resource identifiers |
| US8224986B1 (en) | 2002-03-07 | 2012-07-17 | Cisco Technology, Inc. | Methods and apparatus for redirecting requests for content |
| US7254634B1 (en) | 2002-03-08 | 2007-08-07 | Akamai Technologies, Inc. | Managing web tier session state objects in a content delivery network (CDN) |
| US20030172291A1 (en) | 2002-03-08 | 2003-09-11 | Paul Judge | Systems and methods for automated whitelisting in monitored communications |
| US9087319B2 (en) | 2002-03-11 | 2015-07-21 | Oracle America, Inc. | System and method for designing, developing and implementing internet service provider architectures |
| US20040203630A1 (en) | 2002-03-15 | 2004-10-14 | Wang Charles Chuanming | Method and apparatus for targeting service delivery to mobile devices |
| US7130921B2 (en) | 2002-03-15 | 2006-10-31 | International Business Machines Corporation | Centrally enhanced peer-to-peer resource sharing method and apparatus |
| US7088718B1 (en) | 2002-03-19 | 2006-08-08 | Cisco Technology, Inc. | Server load balancing using IP option field approach to identify route to selected server |
| CA2479527C (en) * | 2002-03-20 | 2008-12-30 | Research In Motion Limited | System and method for supporting multiple certificate status providers on a mobile communication device |
| US20040044731A1 (en) | 2002-03-22 | 2004-03-04 | Kailai Chen | System and method for optimizing internet applications |
| US7096228B2 (en) | 2002-03-27 | 2006-08-22 | Microsoft Corporation | Method and system for managing data records on a computer network |
| US7343397B2 (en) | 2002-03-29 | 2008-03-11 | Lucent Technologies Inc. | Method and apparatus for performing predictive caching of DNS requests by correlating IP addresses |
| US8516114B2 (en) | 2002-03-29 | 2013-08-20 | International Business Machines Corporation | Method and apparatus for content pre-fetching and preparation |
| US7099936B2 (en) | 2002-03-29 | 2006-08-29 | International Business Machines Corporation | Multi-tier service level agreement method and system |
| US7143169B1 (en) | 2002-04-04 | 2006-11-28 | Cisco Technology, Inc. | Methods and apparatus for directing messages to computer systems based on inserted data |
| US6868439B2 (en) | 2002-04-04 | 2005-03-15 | Hewlett-Packard Development Company, L.P. | System and method for supervising use of shared storage by multiple caching servers physically connected through a switching router to said shared storage via a robust high speed connection |
| CN1647489A (en) | 2002-04-08 | 2005-07-27 | 艾利森电话股份有限公司 | Method and system capable of connecting to a network with a local address domain |
| US7174382B2 (en) | 2002-04-09 | 2007-02-06 | Hewlett-Packard Development Company, L.P. | Interest-based connections in peer-to-peer networks |
| US7133905B2 (en) | 2002-04-09 | 2006-11-07 | Akamai Technologies, Inc. | Method and system for tiered distribution in a content delivery network |
| US7114160B2 (en) | 2002-04-17 | 2006-09-26 | Sbc Technology Resources, Inc. | Web content customization via adaptation Web services |
| ITTO20020341A1 (en) | 2002-04-19 | 2003-10-20 | Telecom Italia Lab Spa | PROCEDURE FOR CARRYING OUT THE INTERLAPHY BETWEEN NETWORKS OF THE CONTENT DELIVERY NETWORK -CDN- TYPE, RELATIVE NETWORK SET AND INTERFAC COMPONENT |
| GB0208922D0 (en) | 2002-04-19 | 2002-05-29 | Ibm | Cache memory arrangement and methods for use in a cache memory system |
| US20030204602A1 (en) | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
| US7051102B2 (en) * | 2002-04-29 | 2006-05-23 | Microsoft Corporation | Peer-to-peer name resolution protocol (PNRP) security infrastructure and method |
| US7139808B2 (en) | 2002-04-30 | 2006-11-21 | Intel Corporation | Method and apparatus for bandwidth-efficient and storage-efficient backups |
| US7289519B1 (en) | 2002-05-01 | 2007-10-30 | Cisco Technology, Inc. | Methods and apparatus for processing content requests using domain name service |
| US7260598B1 (en) | 2002-05-03 | 2007-08-21 | Cisco Technology, Inc. | Methods and apparatus for processing client requests in a content distribution network using client lists |
| US7039672B2 (en) | 2002-05-06 | 2006-05-02 | Nokia Corporation | Content delivery architecture for mobile access networks |
| US20040194085A1 (en) | 2002-05-09 | 2004-09-30 | Globespanvirata Incorporated | Method and system for providing capability management and prioritization in a computer system |
| CA2481029A1 (en) | 2002-05-14 | 2003-11-27 | Akamai Technologies, Inc. | Enterprise content delivery network having a central controller for coordinating a set of content servers |
| US20030221000A1 (en) | 2002-05-16 | 2003-11-27 | Ludmila Cherkasova | System and method for measuring web service performance using captured network packets |
| US7653689B1 (en) | 2002-05-17 | 2010-01-26 | Abacast, Inc. | Intelligent virtual content distribution network system and method |
| US7216170B2 (en) | 2002-05-22 | 2007-05-08 | Microsoft Corporation | Systems and methods to reference resources in a television-based entertainment system |
| US7899067B2 (en) | 2002-05-31 | 2011-03-01 | Cisco Technology, Inc. | Method and apparatus for generating and using enhanced tree bitmap data structures in determining a longest prefix match |
| GB2389479B (en) | 2002-06-07 | 2005-12-28 | Hewlett Packard Co | Method of serving out video over a network of video servers |
| US20030233455A1 (en) | 2002-06-14 | 2003-12-18 | Mike Leber | Distributed file sharing system |
| US12299693B2 (en) | 2002-06-14 | 2025-05-13 | Dizpersion Corporation | Method and system for providing network based target advertising and encapsulation |
| US7747729B2 (en) | 2002-06-14 | 2010-06-29 | Hanoch Levy | Determining client latencies over a network |
| US20040030620A1 (en) | 2002-06-19 | 2004-02-12 | Ivor Benjamin | Method and system for charging a consumer for a packet based telecommunications transmission |
| US7343396B2 (en) | 2002-06-20 | 2008-03-11 | Fineground Networks | Precomputation of web documents |
| KR100477653B1 (en) | 2002-06-22 | 2005-03-23 | 삼성전자주식회사 | Apparatus and method for searching DNS server on outer net |
| US20030236700A1 (en) | 2002-06-25 | 2003-12-25 | International Business Machines Corporation | Method for improving of service brokers' quality of service |
| CA2391717A1 (en) | 2002-06-26 | 2003-12-26 | Ibm Canada Limited-Ibm Canada Limitee | Transferring data and storing metadata across a network |
| US20040010563A1 (en) | 2002-06-26 | 2004-01-15 | John Forte | Method for enterprise device naming for storage devices |
| JP4221646B2 (en) | 2002-06-26 | 2009-02-12 | 日本電気株式会社 | Shared cache server |
| US20040003101A1 (en) | 2002-06-26 | 2004-01-01 | Roth David J. | Caching control for streaming media |
| US7565398B2 (en) | 2002-06-27 | 2009-07-21 | International Business Machines Corporation | Procedure for dynamic reconfiguration of resources of logical partitions |
| US7149747B1 (en) | 2002-06-27 | 2006-12-12 | Siebel Systems, Inc. | Dynamic generation of user interface components |
| US7809813B2 (en) | 2002-06-28 | 2010-10-05 | Microsoft Corporation | System and method for providing content-oriented services to content providers and content consumers |
| AU2002368059A1 (en) | 2002-06-28 | 2004-01-19 | Nokia Corporation | Communicating information associated with provisioning of a service, over a user plane connection |
| US20040215823A1 (en) | 2002-06-28 | 2004-10-28 | Kleinfelter Kevin P. | System and method for reducing DNS lookup traffic in a computer data network |
| US8645862B2 (en) | 2002-06-28 | 2014-02-04 | International Business Machines Corporation | Displaying and executing web services in multiple content domains |
| JP4244572B2 (en) | 2002-07-04 | 2009-03-25 | ソニー株式会社 | Cache device, cache data management method, and computer program |
| US7260639B2 (en) | 2002-07-09 | 2007-08-21 | Akamai Technologies, Inc. | Method and system for protecting web sites from public internet threats |
| US7395355B2 (en) | 2002-07-11 | 2008-07-01 | Akamai Technologies, Inc. | Method for caching and delivery of compressed content in a content delivery network |
| US7370197B2 (en) * | 2002-07-12 | 2008-05-06 | Microsoft Corporation | Method and system for authenticating messages |
| US7058953B2 (en) | 2002-07-23 | 2006-06-06 | Microsoft Corporation | Managing a distributed computing system |
| US7836295B2 (en) | 2002-07-29 | 2010-11-16 | International Business Machines Corporation | Method and apparatus for improving the resilience of content distribution networks to distributed denial of service attacks |
| US20030140087A1 (en) | 2002-07-30 | 2003-07-24 | Patrick Lincoln | Systems and methods for negotiated resource utilization |
| US7086061B1 (en) | 2002-08-01 | 2006-08-01 | Foundry Networks, Inc. | Statistical tracking of global server load balancing for selecting the best network address from ordered list of network addresses based on a set of performance metrics |
| US8296393B2 (en) | 2002-08-12 | 2012-10-23 | David S. Morganstein | Media advertising over peer-to-peer networks |
| US6836827B2 (en) | 2002-08-13 | 2004-12-28 | Hewlett-Packard Development Company, L.P. | Delay cache method and apparatus |
| GB2391963B (en) | 2002-08-14 | 2004-12-01 | Flyingspark Ltd | Method and apparatus for preloading caches |
| US7185046B2 (en) | 2002-08-28 | 2007-02-27 | Sun Microsystems, Inc. | Submitting jobs in a distributed computing environment |
| US20030149581A1 (en) | 2002-08-28 | 2003-08-07 | Imran Chaudhri | Method and system for providing intelligent network content delivery |
| US8010707B2 (en) | 2002-08-30 | 2011-08-30 | Broadcom Corporation | System and method for network interfacing |
| JP4239060B2 (en) | 2002-08-30 | 2009-03-18 | ソニー株式会社 | Encoding apparatus and method, data processing apparatus and method, and program |
| US6826661B2 (en) | 2002-08-30 | 2004-11-30 | Veritas Operating Corporation | Methods and systems for storage architectures |
| ITTO20020762A1 (en) | 2002-09-02 | 2004-03-03 | Telecom Italia Lab Spa | PROCEDURE AND SYSTEM FOR REALIZING CONNECTIVITY ESTIMATES |
| US7249380B2 (en) | 2002-09-05 | 2007-07-24 | Yinan Yang | Method and apparatus for evaluating trust and transitivity of trust of online services |
| US7058633B1 (en) | 2002-09-09 | 2006-06-06 | Cisco Technology, Inc. | System and method for generalized URL-rewriting |
| US7389330B2 (en) | 2002-09-11 | 2008-06-17 | Hughes Network Systems, Llc | System and method for pre-fetching content in a proxy architecture |
| US7472201B1 (en) | 2002-09-12 | 2008-12-30 | Cisco Technology, Inc. | Method and system for resolving domain name system queries in a multiprotocol communications network |
| US20040054757A1 (en) | 2002-09-14 | 2004-03-18 | Akinobu Ueda | System for remote control of computer resources from embedded handheld devices |
| US7171469B2 (en) | 2002-09-16 | 2007-01-30 | Network Appliance, Inc. | Apparatus and method for storing data in a proxy cache in a network |
| US7206836B2 (en) | 2002-09-23 | 2007-04-17 | Sun Microsystems, Inc. | System and method for reforming a distributed data system cluster after temporary node failures or restarts |
| US7961736B2 (en) | 2002-09-26 | 2011-06-14 | Sharp Laboratories Of America, Inc. | Convergence and classification of data packets in a centralized communication system |
| US20040064501A1 (en) | 2002-09-30 | 2004-04-01 | Jan Salman Jaffer | Methods and apparatus for centralized provisioning of multi-domain web content |
| US7072944B2 (en) | 2002-10-07 | 2006-07-04 | Ebay Inc. | Method and apparatus for authenticating electronic mail |
| KR100485974B1 (en) | 2002-10-10 | 2005-05-03 | 엔에이치엔(주) | Method and System for Providing Contents |
| US7293242B2 (en) | 2002-10-15 | 2007-11-06 | International Business Machines Corporation | Facilitated source to target object editing functions |
| US7136922B2 (en) | 2002-10-15 | 2006-11-14 | Akamai Technologies, Inc. | Method and system for providing on-demand content delivery for an origin server |
| US7552237B2 (en) | 2002-10-17 | 2009-06-23 | International Business Machines Corporation | Network address cache apparatus and method |
| US20040078468A1 (en) | 2002-10-18 | 2004-04-22 | Jan Hedin | Proxy apparatus and method |
| US7310686B2 (en) | 2002-10-27 | 2007-12-18 | Paxfire, Inc. | Apparatus and method for transparent selection of an Internet server based on geographic location of a user |
| US20050027882A1 (en) | 2003-05-05 | 2005-02-03 | Sullivan Alan T. | Systems and methods for direction of communication traffic |
| US8504879B2 (en) | 2002-11-04 | 2013-08-06 | Riverbed Technology, Inc. | Connection based anomaly detection |
| US7650403B2 (en) | 2002-11-20 | 2010-01-19 | Microsoft Corporation | System and method for client side monitoring of client server communications |
| US20060146820A1 (en) | 2002-11-26 | 2006-07-06 | Robert Friedman | Geo-intelligent traffic manager |
| US7965719B2 (en) | 2002-12-11 | 2011-06-21 | Broadcom Corporation | Media exchange network supporting multiple broadband network and service provider infrastructures |
| US6874015B2 (en) | 2002-12-16 | 2005-03-29 | International Business Machines Corporation | Parallel CDN-based content delivery |
| US20040221034A1 (en) | 2002-12-18 | 2004-11-04 | Kausik Balas Natarajan | Centralized measurement of web performance |
| US7293263B2 (en) | 2002-12-20 | 2007-11-06 | Bea Systems, Inc. | System and method for memory leak detection in a virtual machine environment |
| US7782778B2 (en) | 2002-12-24 | 2010-08-24 | Samir Satish Sheth | Apparatus and method for fibre channel distance extension embedded within an optical transport system |
| US20040128344A1 (en) | 2002-12-30 | 2004-07-01 | Nokia Corporation | Content and service registration, query and subscription, and notification in networks |
| US20040148520A1 (en) | 2003-01-29 | 2004-07-29 | Rajesh Talpade | Mitigating denial of service attacks |
| WO2004072798A2 (en) | 2003-02-10 | 2004-08-26 | Internap Network Services Corporation | Methods and systems for providing dynamic domain name system for inbound route control |
| JPWO2004073269A1 (en) | 2003-02-13 | 2006-06-01 | 富士通株式会社 | Transmission system, distribution route control device, load information collection device, and distribution route control method |
| US20040167981A1 (en) | 2003-02-25 | 2004-08-26 | Douglas Christopher Paul | Method and system for monitoring relationships between content devices in a content delivery network |
| US7975043B2 (en) | 2003-02-25 | 2011-07-05 | Hewlett-Packard Development Company, L.P. | Method and apparatus for monitoring a network |
| US20040167982A1 (en) | 2003-02-26 | 2004-08-26 | Cohen Michael A. | Multiple registrars |
| US20080109679A1 (en) | 2003-02-28 | 2008-05-08 | Michael Wright | Administration of protection of data accessible by a mobile device |
| US7254636B1 (en) | 2003-03-14 | 2007-08-07 | Cisco Technology, Inc. | Method and apparatus for transparent distributed network-attached storage with web cache communication protocol/anycast and file handle redundancy |
| US7363626B2 (en) | 2003-03-24 | 2008-04-22 | Sun Microsystems, Inc. | Thread level application partitioning |
| US7624264B2 (en) | 2003-03-27 | 2009-11-24 | Microsoft Corporation | Using time to determine a hash extension |
| US8261062B2 (en) | 2003-03-27 | 2012-09-04 | Microsoft Corporation | Non-cryptographic addressing |
| US7949785B2 (en) * | 2003-03-31 | 2011-05-24 | Inpro Network Facility, Llc | Secure virtual community network system |
| US7680897B1 (en) | 2003-04-08 | 2010-03-16 | Novell, Inc. | Methods and systems for managing network traffic |
| US20040205162A1 (en) | 2003-04-11 | 2004-10-14 | Parikh Jay G. | Method of executing an edge-enabled application in a content delivery network (CDN) |
| US7373416B2 (en) | 2003-04-24 | 2008-05-13 | Akamai Technologies, Inc. | Method and system for constraining server usage in a distributed network |
| US8423662B1 (en) | 2003-04-28 | 2013-04-16 | Akamai Technologies, Inc. | Forward request queuing in a distributed edge processing environment |
| US7143170B2 (en) | 2003-04-30 | 2006-11-28 | Akamai Technologies, Inc. | Automatic migration of data via a distributed computer network |
| US7299491B2 (en) | 2003-04-30 | 2007-11-20 | Microsoft Corporation | Authenticated domain name resolution |
| US7308499B2 (en) | 2003-04-30 | 2007-12-11 | Avaya Technology Corp. | Dynamic load balancing for enterprise IP traffic |
| US7308475B1 (en) | 2003-05-06 | 2007-12-11 | F5 Networks, Inc. | Method and system for accessing network services |
| JP4303688B2 (en) | 2003-05-21 | 2009-07-29 | 富士通株式会社 | Data access response system and method for accessing data access response system |
| US20040249939A1 (en) | 2003-05-23 | 2004-12-09 | International Business Machines Corporation | Methods and apparatus for dynamic and optimal server set selection |
| US7403939B1 (en) | 2003-05-30 | 2008-07-22 | Aol Llc | Resolving queries based on automatic determination of requestor geographic location |
| KR100524071B1 (en) | 2003-06-09 | 2005-10-26 | 삼성전자주식회사 | DNS server address advertisement method, and routing method thereby |
| EP1631929B1 (en) | 2003-06-11 | 2013-08-07 | Draeger Medical Systems, Inc. | A portable patient monitoring system including location identification capability |
| JP2005010970A (en) | 2003-06-18 | 2005-01-13 | Hitachi Ltd | Distributed cache control method, network system, and control server or router used in the network |
| US7769826B2 (en) | 2003-06-26 | 2010-08-03 | Nominum, Inc. | Systems and methods of providing DNS services using separate answer and referral caches |
| US7093073B2 (en) | 2003-06-26 | 2006-08-15 | International Business Machines Corporation | Systems and methods for adjusting caching policies for web service requests |
| US8001187B2 (en) | 2003-07-01 | 2011-08-16 | Apple Inc. | Peer-to-peer active content sharing |
| US7362703B1 (en) | 2003-07-10 | 2008-04-22 | Sprint Communications Company L.P. | Method for deflection routing of data packets to alleviate link overload in IP networks |
| US7519705B1 (en) | 2003-07-10 | 2009-04-14 | Sprint Communications Company L.P. | Method for computing aggregate traffic between adjacent points of presence in an internet protocol backbone network |
| US7370089B2 (en) | 2003-07-11 | 2008-05-06 | International Business Machines Corporation | Autonomic learning method to load balance output transfers of two peer nodes |
| US7409712B1 (en) | 2003-07-16 | 2008-08-05 | Cisco Technology, Inc. | Methods and apparatus for network message traffic redirection |
| US20050015471A1 (en) * | 2003-07-18 | 2005-01-20 | Zhang Pu Paul | Secure cluster configuration data set transfer protocol |
| US8122100B2 (en) | 2003-07-28 | 2012-02-21 | Limelight Networks, Inc. | Multiple object download |
| EP1654829A1 (en) | 2003-08-15 | 2006-05-10 | Nokia Corporation | Broadcast storage arrangement |
| US7313700B2 (en) | 2003-08-26 | 2007-12-25 | Yahoo! Inc. | Method and system for authenticating a message sender using domain keys |
| US7788400B2 (en) | 2003-09-19 | 2010-08-31 | Hewlett-Packard Development Company, L.P. | Utilizing proximity information in an overlay network |
| US9584360B2 (en) | 2003-09-29 | 2017-02-28 | Foundry Networks, Llc | Global server load balancing support for private VIP addresses |
| EP1680887A4 (en) | 2003-10-16 | 2013-06-26 | Maxxian Technology Inc | METHOD AND SYSTEM FOR DETECTING AND PREVENTING UNAUTHORIZED SIGNAL USE IN A CONTENT DISTRIBUTION NETWORK |
| US8191160B2 (en) | 2003-10-16 | 2012-05-29 | Rene Juneau | Method and system for auditing and correcting authorization inconsistencies for reception equipment in a content delivery network |
| US7412709B2 (en) | 2003-11-07 | 2008-08-12 | International Business Machines Corporation | Method and apparatus for managing multiple data processing systems using existing heterogeneous systems management software |
| US20050108024A1 (en) | 2003-11-13 | 2005-05-19 | Fawcett John Jr. | Systems and methods for retrieving data |
| US8180922B2 (en) | 2003-11-14 | 2012-05-15 | Cisco Technology, Inc. | Load balancing mechanism using resource availability profiles |
| US20050108169A1 (en) | 2003-11-14 | 2005-05-19 | Mukund Balasubramanian | Contract based enterprise application services |
| US7318074B2 (en) | 2003-11-17 | 2008-01-08 | International Business Machines Corporation | System and method for achieving deferred invalidation consistency |
| JP2005157521A (en) | 2003-11-21 | 2005-06-16 | Hitachi Ltd | Status information monitoring method and storage subsystem of remote storage device |
| JP4516306B2 (en) | 2003-11-28 | 2010-08-04 | 株式会社日立製作所 | How to collect storage network performance information |
| US7552235B2 (en) | 2003-12-11 | 2009-06-23 | International Business Machines Corporation | Autonomic selection of a request routing policy based upon cache effectiveness |
| US7464142B2 (en) | 2003-12-12 | 2008-12-09 | International Business Machines Corporation | Port type agnostic proxy support for web services intermediates |
| US7519726B2 (en) | 2003-12-12 | 2009-04-14 | International Business Machines Corporation | Methods, apparatus and computer programs for enhanced access to resources within a network |
| US7774411B2 (en) | 2003-12-12 | 2010-08-10 | Wisys Technology Foundation, Inc. | Secure electronic message transport protocol |
| US9032096B2 (en) | 2003-12-17 | 2015-05-12 | Cisco Technology, Inc. | Reducing the impact of network latency on application performance |
| US7657622B1 (en) | 2003-12-23 | 2010-02-02 | At&T Intellectual Property Ii, L.P. | Unified web hosting and content distribution system and method for assuring predetermined performance levels |
| US20050198303A1 (en) | 2004-01-02 | 2005-09-08 | Robert Knauerhase | Dynamic virtual machine service provider allocation |
| US20050149529A1 (en) | 2004-01-02 | 2005-07-07 | Andi Gutmans | Efficient handling of download requests |
| US7693991B2 (en) | 2004-01-16 | 2010-04-06 | International Business Machines Corporation | Virtual clustering and load balancing servers |
| KR100447041B1 (en) | 2004-01-17 | 2004-09-07 | 박기복 | Method and system for making performance test scenarios and for testing, analyzing and motoring the performance of servers in multi-tier distributed computing environment. |
| JP4241410B2 (en) | 2004-01-30 | 2009-03-18 | キヤノン株式会社 | Layout adjustment method and apparatus, and layout adjustment program |
| US8265058B2 (en) | 2004-02-05 | 2012-09-11 | Ericsson Ab | Method and an apparatus for route selection in routing protocols |
| US7843906B1 (en) | 2004-02-13 | 2010-11-30 | Habanero Holdings, Inc. | Storage gateway initiator for fabric-backplane enterprise servers |
| US7561571B1 (en) | 2004-02-13 | 2009-07-14 | Habanero Holdings, Inc. | Fabric address and sub-address resolution in fabric-backplane enterprise servers |
| US20050192814A1 (en) | 2004-02-13 | 2005-09-01 | International Business Machines Corporation | Browser URL and content preloading based on autonomic collaboration |
| JP2005234660A (en) | 2004-02-17 | 2005-09-02 | Nec Corp | Personal digital assistant and mail system |
| US7773596B1 (en) | 2004-02-19 | 2010-08-10 | Juniper Networks, Inc. | Distribution of traffic flow criteria |
| US20070204107A1 (en) | 2004-02-24 | 2007-08-30 | Analog Devices, Inc. | Cache memory background preprocessing |
| US7111139B2 (en) | 2004-03-02 | 2006-09-19 | Hitachi, Ltd. | Data synchronization of multiple remote storage |
| US7502036B2 (en) | 2004-03-03 | 2009-03-10 | Virtual Iris Studios, Inc. | System for delivering and enabling interactivity with images |
| US8484348B2 (en) | 2004-03-05 | 2013-07-09 | Rockstar Consortium Us Lp | Method and apparatus for facilitating fulfillment of web-service requests on a communication network |
| WO2005084132A2 (en) | 2004-03-08 | 2005-09-15 | First Oversi Ltd | A method and device for peer to peer file sharing |
| EP1723763A1 (en) | 2004-03-12 | 2006-11-22 | THOMSON Licensing | Cache server network and method of scheduling the distribution of content files |
| US7653683B2 (en) | 2004-03-24 | 2010-01-26 | Electronics For Imaging, Inc. | Systems for providing information access to network devices |
| US7685273B1 (en) | 2004-03-31 | 2010-03-23 | Compuware Corporation | Methods and apparatus for collecting and displaying performance metrics from a web site |
| US20050229119A1 (en) | 2004-04-07 | 2005-10-13 | Nokia Corporation | Method for the presentation and selection of document links in small screen electronic devices |
| US7849135B2 (en) | 2004-04-09 | 2010-12-07 | At&T Mobility Ii Llc | Sharing content on mobile devices |
| US7640307B2 (en) | 2004-04-19 | 2009-12-29 | Bigstring Corporation | Universal recallable, erasable, secure and timed delivery email |
| US20050234864A1 (en) | 2004-04-20 | 2005-10-20 | Shapiro Aaron M | Systems and methods for improved data sharing and content transformation |
| US7617496B2 (en) | 2004-04-23 | 2009-11-10 | Apple Inc. | Macroscalar processor architecture |
| US20050240574A1 (en) | 2004-04-27 | 2005-10-27 | International Business Machines Corporation | Pre-fetching resources based on a resource lookup query |
| US20070291739A1 (en) | 2004-05-04 | 2007-12-20 | Sullivan Alan T | Systems and Methods for Direction of Communication Traffic |
| US7496651B1 (en) | 2004-05-06 | 2009-02-24 | Foundry Networks, Inc. | Configurable geographic prefixes for global server load balancing |
| US7966391B2 (en) | 2004-05-11 | 2011-06-21 | Todd J. Anderson | Systems, apparatus and methods for managing networking devices |
| US7372809B2 (en) | 2004-05-18 | 2008-05-13 | Time Warner Cable, Inc. | Thwarting denial of service attacks originating in a DOCSIS-compliant cable network |
| US7523193B2 (en) | 2004-05-18 | 2009-04-21 | International Business Machines Corporation | Method and apparatus for DNS pre-fetching for multiple clients |
| US7606236B2 (en) | 2004-05-21 | 2009-10-20 | Intel Corporation | Forwarding information base lookup method |
| US7702724B1 (en) | 2004-05-27 | 2010-04-20 | Oracle America, Inc. | Web services message broker architecture |
| WO2005117386A1 (en) | 2004-05-31 | 2005-12-08 | Telecom Italia S.P.A. | A method and system of digital content sharing among users over communications networks, related telecommunications network architecture and computer program product therefore |
| US9209989B2 (en) | 2004-06-01 | 2015-12-08 | Inmage Systems, Inc. | Causation of a data read operation against a first storage system by a server associated with a second storage system according to a host generated instruction |
| WO2007001247A2 (en) | 2004-06-02 | 2007-01-04 | Yahoo! Inc. | Content-management system for user behavior targeting |
| JP4188281B2 (en) | 2004-06-03 | 2008-11-26 | 株式会社日立製作所 | Program execution reservation method and apparatus, processing program therefor, and program execution system |
| IL167628A (en) | 2004-06-04 | 2010-11-30 | Optier Ltd | System and method for performance management in a multi-tier computing environment |
| US7711647B2 (en) | 2004-06-10 | 2010-05-04 | Akamai Technologies, Inc. | Digital rights management in a distributed network |
| US20060036720A1 (en) | 2004-06-14 | 2006-02-16 | Faulk Robert L Jr | Rate limiting of events |
| US20060037037A1 (en) | 2004-06-14 | 2006-02-16 | Tony Miranz | System and method for providing virtual video on demand |
| US7571167B1 (en) | 2004-06-15 | 2009-08-04 | David Anthony Campana | Peer-to-peer network content object information caching |
| US7529802B2 (en) | 2004-06-16 | 2009-05-05 | International Business Machines Corporation | Method for performing multiple hierarchically tests to verify identity of sender of an email message and assigning the highest confidence value |
| US7478361B2 (en) | 2004-06-17 | 2009-01-13 | International Business Machines Corporation | Method and system for managing application deployment |
| US7836044B2 (en) | 2004-06-22 | 2010-11-16 | Google Inc. | Anticipated query generation and processing in a search engine |
| US8161184B2 (en) | 2004-06-25 | 2012-04-17 | Apple Inc. | Method and apparatus for facilitating long-lived DNS queries |
| US7489706B2 (en) | 2004-06-28 | 2009-02-10 | Spirent Communications, Inc. | Method and apparatus for placing a timestamp in a frame |
| US20060031239A1 (en) | 2004-07-12 | 2006-02-09 | Koenig Daniel W | Methods and apparatus for authenticating names |
| US7317918B2 (en) | 2004-07-19 | 2008-01-08 | Motorola, Inc. | Method for domain name service (DNS) in a wireless ad hoc network |
| US7921226B2 (en) | 2004-07-20 | 2011-04-05 | Alcatel-Lucent Usa Inc. | User specific request redirection in a content delivery network |
| US8578441B2 (en) | 2004-07-22 | 2013-11-05 | Hewlett-Packard Development Company, L.P. | Enforcing network security policies with packet labels |
| US20060020714A1 (en) | 2004-07-22 | 2006-01-26 | International Business Machines Corporation | System, apparatus and method of displaying images based on image content |
| US7395258B2 (en) | 2004-07-30 | 2008-07-01 | International Business Machines Corporation | System and method for adaptive database caching |
| US7756913B1 (en) | 2004-08-02 | 2010-07-13 | Cisco Technology, Inc. | System and methods for selecting content distribution |
| US20080319862A1 (en) | 2004-08-10 | 2008-12-25 | Hiromedia Ltd. | Method and system for preventing ad stripping from ad-supported digital content |
| US20060036966A1 (en) | 2004-08-10 | 2006-02-16 | Slava Yevdayev | Method and system for presenting links associated with a requested website |
| US20060034494A1 (en) | 2004-08-11 | 2006-02-16 | National Background Data, Llc | Personal identity data management |
| US20060039352A1 (en) | 2004-08-19 | 2006-02-23 | International Business Machines Corporation | System and method for designating a priority access order of domain name service servers |
| EP1779216A1 (en) | 2004-08-20 | 2007-05-02 | Rhoderick John Kennedy Pugh | Server authentication |
| US7281045B2 (en) | 2004-08-26 | 2007-10-09 | International Business Machines Corporation | Provisioning manager for optimizing selection of available resources |
| CA2580753A1 (en) | 2004-08-28 | 2006-03-09 | Streamaware, Llc | Link analysis method and system |
| US8023417B2 (en) | 2004-08-30 | 2011-09-20 | International Business Machines Corporation | Failover mechanisms in RDMA operations |
| US7461170B1 (en) | 2004-09-01 | 2008-12-02 | Microsoft Corporation | Zone-based rendering of resource addresses |
| US7382260B2 (en) | 2004-09-01 | 2008-06-03 | Microsoft Corporation | Hot swap and plug-and-play for RFID devices |
| US7657613B1 (en) | 2004-09-09 | 2010-02-02 | Sun Microsystems, Inc. | Host-centric storage provisioner in a managed SAN |
| US20060059246A1 (en) | 2004-09-10 | 2006-03-16 | Grove Adam J | System and method for connection optimization |
| US7555532B2 (en) | 2004-09-23 | 2009-06-30 | Orbital Data Corporation | Advanced content and data distribution techniques |
| US20070271375A1 (en) | 2004-09-27 | 2007-11-22 | Symphoniq Corporation | Method and apparatus for monitoring real users experience with a website capable of using service providers and network appliances |
| US20060070060A1 (en) | 2004-09-28 | 2006-03-30 | International Business Machines Corporation | Coordinating service performance and application placement management |
| US20060085536A1 (en) | 2004-09-30 | 2006-04-20 | International Business Machines Corporation | System and method for sharing data polling and buffering for multiple requesters |
| US7478429B2 (en) | 2004-10-01 | 2009-01-13 | Prolexic Technologies, Inc. | Network overload detection and mitigation system and method |
| US8099482B2 (en) | 2004-10-01 | 2012-01-17 | E-Cast Inc. | Prioritized content download for an entertainment device |
| US8671457B2 (en) | 2004-10-15 | 2014-03-11 | Maxxian Technology Inc. | Method and system for identifying and correcting location discrepancies for reception equipment in a content delivery network |
| EP1803066B1 (en) | 2004-10-20 | 2012-01-04 | Telecom Italia S.p.A. | Method and system for monitoring performance of a client-server architecture |
| US8095601B2 (en) | 2004-10-22 | 2012-01-10 | Microsoft Corporation | Inter-proximity communication within a rendezvous federation |
| US20060088026A1 (en) | 2004-10-27 | 2006-04-27 | Microsoft Corporation | Message based network configuration of domain name services |
| US8145908B1 (en) | 2004-10-29 | 2012-03-27 | Akamai Technologies, Inc. | Web content defacement protection system |
| US7440453B2 (en) | 2004-11-12 | 2008-10-21 | International Business Machines Corporation | Determining availability of a destination for computer network communications |
| US8458467B2 (en) | 2005-06-21 | 2013-06-04 | Cisco Technology, Inc. | Method and apparatus for adaptive application message payload content transformation in a network infrastructure element |
| US8180759B2 (en) | 2004-11-22 | 2012-05-15 | International Business Machines Corporation | Spell checking URLs in a resource |
| US7664879B2 (en) | 2004-11-23 | 2010-02-16 | Cisco Technology, Inc. | Caching content and state data at a network element |
| US20060117020A1 (en) | 2004-12-01 | 2006-06-01 | John Toebes | Arrangement for selecting a server to provide distributed services from among multiple servers based on a location of a client device |
| US7499998B2 (en) | 2004-12-01 | 2009-03-03 | Cisco Technology, Inc. | Arrangement in a server for providing dynamic domain name system services for each received request |
| US20060120385A1 (en) | 2004-12-02 | 2006-06-08 | Atchison Darrell T | Method and system for creating and managing multiple subscribers of a content delivery network |
| CA2490682A1 (en) | 2004-12-16 | 2006-06-16 | Ibm Canada Limited - Ibm Canada Limitee | Method and system for advanced downloadings of urls for web navigation |
| US7640296B2 (en) | 2004-12-21 | 2009-12-29 | Sap Ag | Mapping of a content request for a cache server |
| US7626940B2 (en) | 2004-12-22 | 2009-12-01 | Intruguard Devices, Inc. | System and method for integrated header, state, rate and content anomaly prevention for domain name service |
| US20060143442A1 (en) | 2004-12-24 | 2006-06-29 | Smith Sander A | Automated issuance of SSL certificates |
| US20060149529A1 (en) | 2005-01-04 | 2006-07-06 | Loc Nguyen | Method for encoding messages between two devices for transmission over standard online payment networks |
| US20060155862A1 (en) | 2005-01-06 | 2006-07-13 | Hari Kathi | Data traffic load balancing based on application layer messages |
| US20060161541A1 (en) | 2005-01-19 | 2006-07-20 | Microsoft Corporation | System and method for prefetching and caching query results |
| US7606168B2 (en) | 2005-01-28 | 2009-10-20 | Attenex Corporation | Apparatus and method for message-centric analysis and multi-aspect viewing using social networks |
| US7562125B2 (en) | 2005-02-02 | 2009-07-14 | Cisco Technology, Inc. | Techniques for locating distributed objects on a network based on physical communication costs |
| US8064467B2 (en) | 2005-02-04 | 2011-11-22 | Level 3 Communications, Llc | Systems and methods for network routing in a multiple backbone network architecture |
| US20060184936A1 (en) | 2005-02-11 | 2006-08-17 | Timothy Abels | System and method using virtual machines for decoupling software from management and control systems |
| US8140371B2 (en) | 2005-02-18 | 2012-03-20 | International Business Machines Corporation | Providing computing service to users in a heterogeneous distributed computing environment |
| US7690044B2 (en) | 2005-02-18 | 2010-03-30 | Fuji Xerox Co., Ltd. | Medium storing program selecting electronic ticket, electronic ticket processing apparatus and electronic ticket selection method |
| US7703114B2 (en) | 2005-02-25 | 2010-04-20 | Microsoft Corporation | Television system targeted advertising |
| US7710865B2 (en) | 2005-02-25 | 2010-05-04 | Cisco Technology, Inc. | Disaster recovery for active-standby data center using route health and BGP |
| US20060206586A1 (en) | 2005-03-09 | 2006-09-14 | Yibei Ling | Method, apparatus and system for a location-based uniform resource locator |
| US7529850B2 (en) | 2005-03-11 | 2009-05-05 | International Business Machines Corporation | Method and system for rapid dissemination of public announcements |
| US20110016214A1 (en) | 2009-07-15 | 2011-01-20 | Cluster Resources, Inc. | System and method of brokering cloud computing resources |
| US8589561B2 (en) | 2005-03-22 | 2013-11-19 | Alcatel Lucent | Session level technique for improving web browsing performance on low speed links |
| JP2006279466A (en) | 2005-03-29 | 2006-10-12 | Fujitsu Ltd | Monitoring system, monitoring program, and monitoring method |
| GB0506560D0 (en) | 2005-03-31 | 2005-05-04 | Univ Court Of The Univeresity | Method of operating a telecommunications network |
| US7685270B1 (en) | 2005-03-31 | 2010-03-23 | Amazon Technologies, Inc. | Method and apparatus for measuring latency in web services |
| US20060221971A1 (en) | 2005-04-05 | 2006-10-05 | Laure Andrieux | Method and apparatus for automatically managing network routes |
| US8887233B2 (en) | 2005-04-08 | 2014-11-11 | Netapp, Inc. | Cookie-based acceleration of an authentication protocol |
| US7894432B2 (en) | 2005-04-09 | 2011-02-22 | Audiocodes, Inc. | Apparatus and method creating virtual routing domains in an internet protocol network |
| GB2425853A (en) | 2005-04-12 | 2006-11-08 | Christopher Gare | Presence information and location monitor |
| FR2884671B1 (en) | 2005-04-19 | 2007-07-27 | Streamezzo Sa | METHOD OF OPTIMIZING THE MANAGEMENT OF A SERVER CACHE THAT CAN BE CONSULTED BY CLIENT TERMINALS OF DIFFERENT CHARACTERISTICS |
| US7594189B1 (en) | 2005-04-21 | 2009-09-22 | Amazon Technologies, Inc. | Systems and methods for statistically selecting content items to be used in a dynamically-generated display |
| US7788378B2 (en) | 2005-04-22 | 2010-08-31 | Microsoft Corporation | Apparatus and method for community relay node discovery |
| US20060265508A1 (en) | 2005-05-02 | 2006-11-23 | Angel Franklin J | System for administering a multiplicity of namespaces containing state information and services |
| US7844735B2 (en) | 2005-05-03 | 2010-11-30 | International Business Machines Corporation | Determining address of edge server by using authoritative domain name server and bypassing assigned domain name server |
| US8079087B1 (en) | 2005-05-03 | 2011-12-13 | Voltage Security, Inc. | Universal resource locator verification service with cross-branding detection |
| US7694008B2 (en) | 2005-05-04 | 2010-04-06 | Venturi Wireless | Method and apparatus for increasing performance of HTTP over long-latency links |
| US7809597B2 (en) | 2005-05-05 | 2010-10-05 | Siebel Systems, Inc. | Progressive refinement model for business processes |
| US20060259690A1 (en) | 2005-05-10 | 2006-11-16 | Cisco Technology, Inc. | Methods and system for prepositioning frequently accessed web content |
| CN1870562A (en) | 2005-05-23 | 2006-11-29 | 国际商业机器公司 | Dynamic web service calling method, system and web service agent |
| US8856279B2 (en) | 2005-05-26 | 2014-10-07 | Citrix Systems Inc. | Method and system for object prediction |
| US7630392B2 (en) | 2005-05-31 | 2009-12-08 | Cisco Technology, Inc. | Multi-homing using controlled route leakage at a backup service provider |
| US7801881B1 (en) | 2005-05-31 | 2010-09-21 | Google Inc. | Sitemap generating client for web crawler |
| JP4742682B2 (en) | 2005-06-01 | 2011-08-10 | 富士ゼロックス株式会社 | Content protection device and content protection release device |
| BRPI0520273A2 (en) | 2005-06-02 | 2009-04-28 | Thomson Licensing | Method and content synchronization system |
| US8155126B1 (en) | 2005-06-03 | 2012-04-10 | At&T Intellectual Property Ii, L.P. | Method and apparatus for inferring network paths |
| US7647424B2 (en) | 2005-06-15 | 2010-01-12 | Hostway Corporation | Multi-level redirection system |
| US8082348B1 (en) | 2005-06-17 | 2011-12-20 | AOL, Inc. | Selecting an instance of a resource using network routability information |
| US8266327B2 (en) | 2005-06-21 | 2012-09-11 | Cisco Technology, Inc. | Identity brokering in a network element |
| GB0513045D0 (en) | 2005-06-27 | 2005-08-03 | Vidus Ltd | Resource scheduling method and system |
| US7565489B2 (en) | 2005-07-01 | 2009-07-21 | Microsoft Corporation | Identifying relevant data to cache |
| US20070011056A1 (en) | 2005-07-05 | 2007-01-11 | Netfire 1 Pty Ltd | Content monitor |
| KR100663546B1 (en) | 2005-07-08 | 2007-01-02 | 주식회사 케이티 | Malicious bot response method and system |
| US20070014241A1 (en) | 2005-07-14 | 2007-01-18 | Banerjee Dwip N | Resolver caching of a shortest path to a multihomed server as determined by a router |
| CA2513018A1 (en) | 2005-07-22 | 2007-01-22 | Research In Motion Limited | Method for training a proxy server for content delivery based on communication of state information from a mobile device browser |
| US20090103707A1 (en) | 2005-07-28 | 2009-04-23 | Mcgary Faith | System and method for enhanced ENUM applications |
| US7415645B2 (en) | 2005-07-28 | 2008-08-19 | International Business Machines Corporation | Method and apparatus for soft-error immune and self-correcting latches |
| US7584507B1 (en) | 2005-07-29 | 2009-09-01 | Narus, Inc. | Architecture, systems and methods to detect efficiently DoS and DDoS attacks for large scale internet |
| US7961625B2 (en) | 2005-08-01 | 2011-06-14 | Limelight Networks, Inc. | Routing under heavy loading |
| US7567582B2 (en) | 2005-08-19 | 2009-07-28 | Microsoft Corporation | Branch office DNS storage and resolution |
| US20070050703A1 (en) | 2005-08-26 | 2007-03-01 | Pierre Lebel | Methods, systems and computer program products for analyzing a hypertext markup language (HTML) document |
| US7505464B2 (en) | 2005-08-30 | 2009-03-17 | Cisco Technology, Inc. | Method of identifying a home gateway using network traffic sniffing and apparatus employing the same |
| GB0517585D0 (en) | 2005-08-30 | 2005-10-05 | Ramakrishna Madhusudana | Intuitive search which delivers fast results on the mobile phone |
| US20070056042A1 (en) | 2005-09-08 | 2007-03-08 | Bahman Qawami | Mobile memory system for secure storage and delivery of media content |
| US20110258049A1 (en) | 2005-09-14 | 2011-10-20 | Jorey Ramer | Integrated Advertising System |
| US8429630B2 (en) | 2005-09-15 | 2013-04-23 | Ca, Inc. | Globally distributed utility computing cloud |
| US7979509B1 (en) | 2005-09-15 | 2011-07-12 | Juniper Networks, Inc. | Clustered network acceleration devices having shared cache |
| US7818454B2 (en) | 2005-09-15 | 2010-10-19 | Hostway Corporation | Host migration system |
| US7992208B2 (en) | 2005-09-19 | 2011-08-02 | University Of Maryland | Detection of nonconforming network traffic flow aggregates for mitigating distributed denial of service attacks |
| US20110166935A1 (en) | 2005-09-19 | 2011-07-07 | Paxfire, Inc. | Analysis and monetization of lookup terms |
| US7934216B2 (en) | 2005-10-03 | 2011-04-26 | International Business Machines Corporation | Method and system for load balancing of computing resources |
| US8549646B2 (en) | 2005-10-20 | 2013-10-01 | The Trustees Of Columbia University In The City Of New York | Methods, media and systems for responding to a denial of service attack |
| EP1777962A1 (en) | 2005-10-24 | 2007-04-25 | Alcatel Lucent | Access/edge node supporting multiple video streaming services using a single request protocol |
| US8166197B2 (en) | 2005-10-25 | 2012-04-24 | Oracle International Corporation | Multipath routing process |
| US20070101061A1 (en) | 2005-10-27 | 2007-05-03 | Guruprasad Baskaran | Customized content loading mechanism for portions of a web page in real time environments |
| US8566928B2 (en) | 2005-10-27 | 2013-10-22 | Georgia Tech Research Corporation | Method and system for detecting and responding to attacking networks |
| JP2007128371A (en) | 2005-11-04 | 2007-05-24 | Fujitsu Ltd | Content search system |
| US20070118667A1 (en) | 2005-11-21 | 2007-05-24 | Limelight Networks, Inc. | Domain name resolution based dynamic resource assignment |
| US8291117B1 (en) | 2012-02-15 | 2012-10-16 | Limelight Networks, Inc. | Scaled domain name service |
| US7707314B2 (en) | 2005-11-21 | 2010-04-27 | Limelight Networks, Inc. | Domain name resolution resource allocation |
| US7730187B2 (en) | 2006-10-05 | 2010-06-01 | Limelight Networks, Inc. | Remote domain name service |
| US7725658B2 (en) | 2005-11-29 | 2010-05-25 | Siemens Aktiengesellschaft | Self-optimizing caching system and method for data records |
| US20070134641A1 (en) | 2005-12-08 | 2007-06-14 | Mobicom Corporation | Personalized content delivery |
| US20080288458A1 (en) | 2005-12-08 | 2008-11-20 | Nortel Networks Limited | Session Initiation Protocol (Sip) Multicast Management Method |
| US7904875B2 (en) | 2005-12-12 | 2011-03-08 | Microsoft Corporation | Configuring and allocating software product technical services |
| CA2634489C (en) | 2005-12-21 | 2016-08-30 | Digimarc Corporation | Rules driven pan id metadata routing system and network |
| US8191098B2 (en) | 2005-12-22 | 2012-05-29 | Verimatrix, Inc. | Multi-source bridge content distribution system and method |
| US7685109B1 (en) | 2005-12-29 | 2010-03-23 | Amazon Technologies, Inc. | Method and apparatus for data partitioning and replication in a searchable data service |
| US7801912B2 (en) | 2005-12-29 | 2010-09-21 | Amazon Technologies, Inc. | Method and apparatus for a searchable data service |
| US7706740B2 (en) | 2006-01-06 | 2010-04-27 | Qualcomm Incorporated | Apparatus and methods of selective collection and selective presentation of content |
| US20070162331A1 (en) | 2006-01-10 | 2007-07-12 | Michael Sullivan | Systems and methods for providing information and conducting business using the internet |
| EP1977334A4 (en) | 2006-01-25 | 2011-01-12 | Greystripe Inc | System and methods for managing content in pre-existing mobile applications |
| US7496667B2 (en) | 2006-01-31 | 2009-02-24 | International Business Machines Corporation | Decentralized application placement for web application middleware |
| US7873065B1 (en) | 2006-02-01 | 2011-01-18 | F5 Networks, Inc. | Selectively enabling network packet concatenation based on metrics |
| US20070183342A1 (en) | 2006-02-06 | 2007-08-09 | Mediazone.Com, Inc. | Peer-to-peer broadcast management system |
| WO2007091243A2 (en) | 2006-02-07 | 2007-08-16 | Mobixell Networks Ltd. | Matching of modified visual and audio media |
| US8132242B1 (en) | 2006-02-13 | 2012-03-06 | Juniper Networks, Inc. | Automated authentication of software applications using a limited-use token |
| US20070198982A1 (en) | 2006-02-21 | 2007-08-23 | International Business Machines Corporation | Dynamic resource allocation for disparate application performance requirements |
| US7609701B2 (en) | 2006-02-22 | 2009-10-27 | Zheng Yang | Communication using private IP addresses of local networks |
| US7774459B2 (en) | 2006-03-01 | 2010-08-10 | Microsoft Corporation | Honey monkey network exploration |
| US20070214232A1 (en) | 2006-03-07 | 2007-09-13 | Nokia Corporation | System for Uniform Addressing of Home Resources Regardless of Remote Clients Network Location |
| CN101438256B (en) | 2006-03-07 | 2011-12-21 | 索尼株式会社 | Information processing device, information communication system, information processing method |
| US20070263604A1 (en) | 2006-03-10 | 2007-11-15 | Yen-Po Tai | Ring back notification system and method therefor |
| US20070220010A1 (en) | 2006-03-15 | 2007-09-20 | Kent Thomas Ertugrul | Targeted content delivery for networks |
| US20070219795A1 (en) | 2006-03-20 | 2007-09-20 | Park Joseph C | Facilitating content generation via paid participation |
| US9219686B2 (en) | 2006-03-31 | 2015-12-22 | Alcatel Lucent | Network load balancing and overload control |
| US8190682B2 (en) | 2006-03-31 | 2012-05-29 | Amazon Technologies, Inc. | Managing execution of programs by multiple computing systems |
| US8028041B2 (en) | 2006-04-07 | 2011-09-27 | Ebay Inc. | Dynamic content for online transactions |
| US8565424B2 (en) | 2006-04-12 | 2013-10-22 | International Business Machines Corporation | Secure non-invasive method and system for distribution of digital assets |
| US8423408B1 (en) | 2006-04-17 | 2013-04-16 | Sprint Communications Company L.P. | Dynamic advertising content distribution and placement systems and methods |
| US20070250611A1 (en) | 2006-04-20 | 2007-10-25 | Bhogal Kulvir S | Method of and System for Providing Performance Information in a UDDI System |
| US7552467B2 (en) | 2006-04-24 | 2009-06-23 | Jeffrey Dean Lindsay | Security systems for protecting an asset |
| US7685255B2 (en) | 2006-04-24 | 2010-03-23 | Blue Coat Systems, Inc. | System and method for prefetching uncacheable embedded objects |
| US8069182B2 (en) | 2006-04-24 | 2011-11-29 | Working Research, Inc. | Relevancy-based domain classification |
| US20070250467A1 (en) | 2006-04-24 | 2007-10-25 | Imakenews, Inc. | Systems and methods for targeted content delivery |
| US8739278B2 (en) | 2006-04-28 | 2014-05-27 | Oracle International Corporation | Techniques for fraud monitoring and detection using application fingerprinting |
| US20070255843A1 (en) | 2006-04-28 | 2007-11-01 | Zubev Alexander I | Configuration of clients for multiple computer services |
| US20070253377A1 (en) | 2006-04-28 | 2007-11-01 | Motorola, Inc. | Apparatus and method for name resolution in an aggregation of mobile networks |
| US7684394B1 (en) | 2006-05-01 | 2010-03-23 | Sun Microsystems, Inc. | System and method for increasing host visibility in network address translation environments |
| US7890612B2 (en) | 2006-05-08 | 2011-02-15 | Electro Guard Corp. | Method and apparatus for regulating data flow between a communications device and a network |
| US8949368B2 (en) | 2006-05-12 | 2015-02-03 | Citrix Systems, Inc. | Method for cache object aggregation |
| US7873725B2 (en) | 2006-05-12 | 2011-01-18 | W.W. Grainger, Inc. | System and method for directing attention to web site content |
| JP2007310437A (en) | 2006-05-16 | 2007-11-29 | Sun Corp | Information terminal device and character data display method |
| US20070271560A1 (en) | 2006-05-18 | 2007-11-22 | Microsoft Corporation | Deploying virtual machine to host based on workload characterizations |
| JP4961833B2 (en) | 2006-05-19 | 2012-06-27 | 日本電気株式会社 | Cluster system, load balancing method, optimization client program, and arbitration server program |
| US20080082662A1 (en) | 2006-05-19 | 2008-04-03 | Richard Dandliker | Method and apparatus for controlling access to network resources based on reputation |
| US20070270165A1 (en) | 2006-05-19 | 2007-11-22 | Viswanath Poosala | Methods and apparatus for providing location-based services in a wireless communication system |
| US7839840B2 (en) | 2006-05-30 | 2010-11-23 | Lockheed Martin Corporation | Method and system for routing traffic in a communication network |
| US8571580B2 (en) | 2006-06-01 | 2013-10-29 | Loopt Llc. | Displaying the location of individuals on an interactive map display on a mobile communication device |
| US8606926B2 (en) | 2006-06-14 | 2013-12-10 | Opendns, Inc. | Recursive DNS nameserver |
| US7873620B2 (en) | 2006-06-29 | 2011-01-18 | Microsoft Corporation | Desktop search from mobile device |
| US7787380B1 (en) | 2006-06-30 | 2010-08-31 | Juniper Networks, Inc. | Resource reservation protocol with traffic engineering point to multi-point label switched path hierarchy |
| US8099487B1 (en) | 2006-07-06 | 2012-01-17 | Netapp, Inc. | Systems and methods for determining placement of virtual machines |
| AU2006100925B4 (en) | 2006-07-21 | 2006-11-30 | Globecharge Pty Ltd | A system and method for placing orders via the internet |
| WO2008011728A1 (en) | 2006-07-28 | 2008-01-31 | Pattern Intelligence Inc. | System and method for detecting and analyzing pattern relationships |
| US8209695B1 (en) | 2006-07-28 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Reserving resources in a resource-on-demand system for user desktop utility demand |
| US7995576B2 (en) | 2006-07-31 | 2011-08-09 | Cisco Technology, Inc. | Method and system for reducing latency in a multi-channel multicast streaming environment in content-delivery networks |
| US8185422B2 (en) | 2006-07-31 | 2012-05-22 | Accenture Global Services Limited | Work allocation model |
| US20080072264A1 (en) | 2006-08-02 | 2008-03-20 | Aaron Crayford | Distribution of content on a network |
| US8064875B2 (en) | 2006-08-04 | 2011-11-22 | At&T Intellectual Property I, L.P. | Methods and apparatus to update geographic location information associated with internet protocol devices for E-911 emergency services |
| US8055747B2 (en) | 2006-08-15 | 2011-11-08 | Microsoft Corporation | Message based network transmission for selection and auditing of internet services |
| EP2052335A4 (en) | 2006-08-18 | 2010-11-17 | Sony Corp | SYSTEM AND METHOD FOR SELECTIVE ACCESS TO MULTIMEDIA CONTENT VIA A RECOMMENDATION ENGINE |
| US7808918B2 (en) | 2006-08-22 | 2010-10-05 | Embarq Holdings Company, Llc | System and method for dynamically shaping network traffic |
| US9264355B2 (en) | 2006-09-05 | 2016-02-16 | Telefonaktiebolaget L M Ericsson (Publ) | Name-address management and routing in communication networks |
| WO2008057653A2 (en) | 2006-09-06 | 2008-05-15 | Akamai Technologies, Inc. | Hybrid content delivery network (cdn) and peer-to-peer (p2p) network |
| US20080062997A1 (en) | 2006-09-07 | 2008-03-13 | Go2Call.Com, Inc. | Intelligent call routing through distributed VoIP networks |
| US7756017B2 (en) | 2006-09-08 | 2010-07-13 | The Uwm Research Foundation, Inc. | System and method for scheduling routing table calculation in link state routing protocols |
| US7788449B2 (en) | 2006-09-20 | 2010-08-31 | International Business Machines Corporation | Cache configuration in a database system |
| US20100146380A1 (en) | 2006-09-26 | 2010-06-10 | Accoona Corp. | Apparatuses, Methods and Systems For An Information Comparator Preview Generator |
| US7617170B2 (en) | 2006-10-09 | 2009-11-10 | Radware, Ltd. | Generated anomaly pattern for HTTP flood protection |
| US20080225779A1 (en) | 2006-10-09 | 2008-09-18 | Paul Bragiel | Location-based networking system and method |
| US7661027B2 (en) | 2006-10-10 | 2010-02-09 | Bea Systems, Inc. | SIP server architecture fault tolerance and failover |
| US20080228574A1 (en) | 2006-10-11 | 2008-09-18 | Monitor110, Inc. | System And Method For Conveying Content Changes Over A Network |
| US8578481B2 (en) | 2006-10-16 | 2013-11-05 | Red Hat, Inc. | Method and system for determining a probability of entry of a counterfeit domain in a browser |
| US7593935B2 (en) | 2006-10-19 | 2009-09-22 | Paxfire | Methods and systems for node ranking based on DNS session data |
| EP2087425B1 (en) | 2006-10-25 | 2019-07-24 | Dynatrace LLC | Methods and apparatus for monitoring web page rendering |
| US8195605B2 (en) | 2006-10-27 | 2012-06-05 | Purdue Pharma L.P. | Data cache techniques in support of synchronization of databases in a distributed environment |
| CN101305563B (en) | 2006-10-31 | 2012-05-23 | 华为技术有限公司 | Method and system for allocating communication resources in terrestrial wireless communication system |
| EP1919155A1 (en) | 2006-10-31 | 2008-05-07 | Alcatel Lucent | Resolution of flexible address schemes for IMS services |
| US8156199B1 (en) | 2006-11-10 | 2012-04-10 | Juniper Networks, Inc. | Centralized control of client-side domain name resolution using VPN services |
| US7890576B2 (en) | 2006-11-13 | 2011-02-15 | Microsoft Corporation | Selective communication of targeted information |
| US7676635B2 (en) | 2006-11-29 | 2010-03-09 | International Business Machines Corporation | Recoverable cache preload in clustered computer system based upon monitored preload state of cache |
| US8862735B1 (en) | 2006-12-05 | 2014-10-14 | Aol Inc. | IP address management of multiple DHCP and DNS servers |
| EP1933333A1 (en) | 2006-12-15 | 2008-06-18 | ABB Technology Ltd | An electric power cable, an off-shore installation provided therewith, and use thereof |
| JP5146634B2 (en) | 2006-12-18 | 2013-02-20 | 日本電気株式会社 | Streaming delivery method and system, server system, terminal, and computer program |
| WO2008080139A1 (en) | 2006-12-22 | 2008-07-03 | Integrated Mobile, Inc. | System and method for managing mobile devices and services |
| US8938765B2 (en) | 2006-12-22 | 2015-01-20 | Time Warner Cable Enterprises Llc | Methods, apparatus and user interface for providing content on demand |
| US8438603B2 (en) | 2006-12-22 | 2013-05-07 | Time Warner Cable Inc. | Methods and apparatus for supporting content distribution |
| JP4529974B2 (en) | 2006-12-26 | 2010-08-25 | 日本電気株式会社 | Server load balancing system, server load balancing device, content management device, and server load balancing program |
| US9195996B1 (en) | 2006-12-27 | 2015-11-24 | Qurio Holdings, Inc. | System and method for classification of communication sessions in a social network |
| US8826032B1 (en) | 2006-12-27 | 2014-09-02 | Netapp, Inc. | Systems and methods for network change discovery and host name resolution in storage network environments |
| US20080162821A1 (en) | 2006-12-27 | 2008-07-03 | Duran Louis A | Hard disk caching with automated discovery of cacheable files |
| US7734954B2 (en) | 2007-01-03 | 2010-06-08 | International Business Machines Corporation | Method, computer program product, and system for providing a multi-tiered snapshot of virtual disks |
| US20080175222A1 (en) | 2007-01-23 | 2008-07-24 | International Business Machines Corporation | Url patterns for multi tenant systems |
| US9135334B2 (en) | 2007-01-23 | 2015-09-15 | Cox Communications, Inc. | Providing a social network |
| US8122493B2 (en) | 2007-01-25 | 2012-02-21 | Drako Dean M | Firewall based on domain names |
| US7694016B2 (en) | 2007-02-07 | 2010-04-06 | Nominum, Inc. | Composite DNS zones |
| US8065275B2 (en) | 2007-02-15 | 2011-11-22 | Google Inc. | Systems and methods for cache optimization |
| US20080201332A1 (en) | 2007-02-20 | 2008-08-21 | Souders Steven K | System and method for preloading content on the basis of user context |
| US8140384B2 (en) | 2007-02-21 | 2012-03-20 | Unoweb, Inc. | Advertising revenue sharing |
| US20080202764A1 (en) | 2007-02-22 | 2008-08-28 | Halliburton Energy Services, Inc. | Consumable downhole tools |
| US8504775B2 (en) | 2007-03-12 | 2013-08-06 | Citrix Systems, Inc | Systems and methods of prefreshening cached objects based on user's current web page |
| US20080228920A1 (en) | 2007-03-16 | 2008-09-18 | Souders Steven K | System and method for resource aggregation and distribution |
| US20080235383A1 (en) | 2007-03-22 | 2008-09-25 | Eric Schneider | Methods, Systems, Products, And Devices For Generating And Processing DNS Friendly Identifiers |
| US7853680B2 (en) | 2007-03-23 | 2010-12-14 | Phatak Dhananjay S | Spread identity communications architecture |
| US7693813B1 (en) | 2007-03-30 | 2010-04-06 | Google Inc. | Index server architecture using tiered and sharded phrase posting lists |
| EP1978704A1 (en) | 2007-04-02 | 2008-10-08 | British Telecommunications Public Limited Company | Content delivery |
| US20080256087A1 (en) | 2007-04-16 | 2008-10-16 | Nokia Corporation | Apparatuses and methods for managing content stored in devices |
| KR101409991B1 (en) | 2007-04-16 | 2014-06-20 | 삼성전자주식회사 | Method and apparatus for data transmission in a P2P communication environment |
| US8065391B2 (en) | 2007-04-19 | 2011-11-22 | Hugh Olliphant | System and method for selecting and displaying webpages |
| US20080275772A1 (en) | 2007-05-01 | 2008-11-06 | At&T Knowledge Ventures, Lp | System and method of facilitating targeted content delivery |
| US8533283B2 (en) | 2007-05-03 | 2013-09-10 | Gary Stephen Shuster | Redirection method for electronic content |
| US7889921B2 (en) | 2007-05-23 | 2011-02-15 | Eastman Kodak Company | Noise reduced color image using panchromatic image |
| US8682916B2 (en) | 2007-05-25 | 2014-03-25 | F5 Networks, Inc. | Remote file virtualization in a switched file system |
| US7865953B1 (en) | 2007-05-31 | 2011-01-04 | Trend Micro Inc. | Methods and arrangement for active malicious web pages discovery |
| US8762984B2 (en) | 2007-05-31 | 2014-06-24 | Microsoft Corporation | Content distribution infrastructure |
| US8526405B2 (en) | 2007-06-13 | 2013-09-03 | Apple Inc. | Routing network requests based on requesting device characteristics |
| US8332141B2 (en) | 2007-06-15 | 2012-12-11 | Microsoft Corporation | Route modifications |
| US7685251B2 (en) | 2007-06-21 | 2010-03-23 | International Business Machines Corporation | Method and apparatus for management of virtualized process collections |
| US7882216B2 (en) | 2007-06-21 | 2011-02-01 | International Business Machines Corporation | Process and methodology for generic analysis of metrics related to resource utilization and performance |
| US8782322B2 (en) | 2007-06-21 | 2014-07-15 | International Business Machines Corporation | Ranking of target server partitions for virtual server mobility operations |
| US8938489B2 (en) | 2007-06-22 | 2015-01-20 | Red Hat, Inc. | Monitoring system performance changes based on configuration modification |
| US7991910B2 (en) | 2008-11-17 | 2011-08-02 | Amazon Technologies, Inc. | Updating routing information based on client location |
| US8028090B2 (en) | 2008-11-17 | 2011-09-27 | Amazon Technologies, Inc. | Request routing utilizing client location information |
| US20090013063A1 (en) | 2007-07-02 | 2009-01-08 | Mrs. NIRALI SANGHI | Method for enabling internet access to information hosted on csd |
| US9014047B2 (en) | 2007-07-10 | 2015-04-21 | Level 3 Communications, Llc | System and method for aggregating and reporting network traffic data |
| US8180720B1 (en) | 2007-07-19 | 2012-05-15 | Akamai Technologies, Inc. | Content delivery network (CDN) cold content handling |
| US20090031376A1 (en) | 2007-07-24 | 2009-01-29 | The Directv Group, Inc. | Method and system for managing content in a content processing system having multiple content delivery networks |
| US20090031367A1 (en) | 2007-07-24 | 2009-01-29 | The Directv Group, Inc. | Method and system for utilizing multiple content delivery networks for distributing content |
| US10097291B2 (en) | 2007-07-24 | 2018-10-09 | The Directv Group, Inc. | Method and system for distributing content using device-specific content delivery networks |
| US7966364B2 (en) | 2007-07-26 | 2011-06-21 | Northeastern University | System and method for virtual server migration across networks using DNS and route triangulation |
| US8793748B2 (en) | 2007-07-26 | 2014-07-29 | The Directv Group, Inc. | Method and system for controlling communication between a user device and a content delivery network |
| US8751146B2 (en) | 2007-08-30 | 2014-06-10 | Telenav, Inc. | Navigation system having location based service and temporal management |
| US8285870B2 (en) | 2007-09-05 | 2012-10-09 | Echostar Technologies L.L.C. | Systems and methods for statistical resolution of domain name service (DNS) requests |
| US7921259B2 (en) | 2007-09-07 | 2011-04-05 | Edgecast Networks, Inc. | Content network global replacement policy |
| JP2009087330A (en) | 2007-09-11 | 2009-04-23 | Nikon Corp | Electronic album providing system and file providing system |
| JP2009071538A (en) | 2007-09-12 | 2009-04-02 | Fuji Xerox Co Ltd | Image distribution system |
| CN101394341B (en) | 2007-09-17 | 2011-08-03 | 华为技术有限公司 | Route maintaining method, system and apparatus |
| US20090259971A1 (en) | 2007-09-21 | 2009-10-15 | Scott Rankine | Media mashing across multiple heterogeneous platforms and devices |
| US8041773B2 (en) | 2007-09-24 | 2011-10-18 | The Research Foundation Of State University Of New York | Automatic clustering for self-organizing grids |
| US20090083413A1 (en) | 2007-09-24 | 2009-03-26 | Levow Zachary S | Distributed frequency data collection via DNS |
| US8561116B2 (en) | 2007-09-26 | 2013-10-15 | Charles A. Hasek | Methods and apparatus for content caching in a video network |
| US7912062B2 (en) | 2007-09-28 | 2011-03-22 | Genband Us Llc | Methods and apparatus for managing addresses related to virtual partitions of a session exchange device |
| US7817547B2 (en) | 2007-10-02 | 2010-10-19 | Microsoft Corporation | Uncovering the differences in backbone networks |
| US8224942B1 (en) | 2007-10-02 | 2012-07-17 | Google Inc. | Network failure detection |
| EP2212771A4 (en) | 2007-10-05 | 2011-06-01 | Aharon Mizrahi | System and method for enabling search of content |
| US8606846B2 (en) | 2007-10-15 | 2013-12-10 | Nbcuniversal Media, Llc | Accelerating peer-to-peer content distribution |
| US8949398B2 (en) | 2007-10-18 | 2015-02-03 | Telefonaktiebolaget L M Ericsson (Publ) | Shared DNS domain handling |
| US20090132368A1 (en) | 2007-10-19 | 2009-05-21 | Paul Cotter | Systems and Methods for Providing Personalized Advertisement |
| US8699349B2 (en) | 2007-10-26 | 2014-04-15 | Microsoft Corporation | Multi-factor optimized routing |
| US20090125934A1 (en) | 2007-11-11 | 2009-05-14 | Microsoft Corporation | User rating mechanism for media content |
| US20090125393A1 (en) | 2007-11-13 | 2009-05-14 | Sony Corporation | System and method for utilizing account tiers in an electronic network |
| US9231999B2 (en) | 2007-11-28 | 2016-01-05 | Red Hat, Inc. | Multi-level load balancer |
| US20100312861A1 (en) | 2007-11-30 | 2010-12-09 | Johan Kolhi | Method, network, and node for distributing electronic content in a content distribution network |
| US8656298B2 (en) | 2007-11-30 | 2014-02-18 | Social Mecca, Inc. | System and method for conducting online campaigns |
| US8055792B2 (en) | 2007-11-30 | 2011-11-08 | Quova, Inc. | Method and system for evaluating and selecting traceroutes to be used in determining the geographic location of a network block |
| US8131927B2 (en) | 2007-11-30 | 2012-03-06 | Hitachi, Ltd. | Fast accessible compressed thin provisioning volume |
| US7908362B2 (en) | 2007-12-03 | 2011-03-15 | Velocix Ltd. | Method and apparatus for the delivery of digital data |
| US20090150926A1 (en) | 2007-12-06 | 2009-06-11 | General Instrument Corporation | Method And Apparatus For Delivering SDV Programming With Targeted Advertising To Selected Groups Of Subscribers |
| JP4782100B2 (en) | 2007-12-11 | 2011-09-28 | 株式会社日立製作所 | Management computer for monitoring performance of storage system, computer system including the management computer, and control method thereof |
| EP2235642A4 (en) | 2007-12-13 | 2016-08-03 | Highwinds Holdings Inc | CONTENT DELIVERY NETWORK |
| JP5029700B2 (en) | 2007-12-13 | 2012-09-19 | 富士通株式会社 | Packet communication system, packet communication method, node and user terminal |
| US20090157504A1 (en) | 2007-12-13 | 2009-06-18 | Christian Nielsen Braemer | System and method for advertising to a target demographic of internet users |
| US20090158163A1 (en) | 2007-12-17 | 2009-06-18 | Slingpage, Inc. | System and method to facilitate social browsing |
| US8756340B2 (en) | 2007-12-20 | 2014-06-17 | Yahoo! Inc. | DNS wildcard beaconing to determine client location and resolver load for global traffic load balancing |
| GB2456026A (en) | 2007-12-26 | 2009-07-01 | Contendo Inc | CDN balancing and sharing platform |
| US7912812B2 (en) | 2008-01-07 | 2011-03-22 | International Business Machines Corporation | Smart data caching using data mining |
| US8042054B2 (en) | 2008-01-10 | 2011-10-18 | At&T Intellectual Property I, L.P. | System for managing media content |
| US7734714B2 (en) | 2008-01-11 | 2010-06-08 | Spacecurve, Inc. | Spatial Sieve Tree |
| US9130968B2 (en) | 2008-01-16 | 2015-09-08 | Netapp, Inc. | Clustered cache appliance system and methodology |
| US7979447B2 (en) | 2008-01-18 | 2011-07-12 | Sony Corporation | Method and apparatus for use in providing information to accessing content |
| US7937456B2 (en) | 2008-01-18 | 2011-05-03 | Red Hat, Inc. | Configuration profiling for remote clients |
| US20100299438A1 (en) | 2008-01-21 | 2010-11-25 | Gottfried Zimmerman | Online resource server for allowing device control and access to digital content trhough pluggable user interfaces |
| US8775550B2 (en) | 2008-02-08 | 2014-07-08 | Microsoft Corporation | Caching HTTP request and response streams |
| US8838669B2 (en) | 2008-02-08 | 2014-09-16 | Oracle International Corporation | System and method for layered application server processing |
| US8175863B1 (en) | 2008-02-13 | 2012-05-08 | Quest Software, Inc. | Systems and methods for analyzing performance of virtual environments |
| US9075777B1 (en) | 2008-02-27 | 2015-07-07 | Amazon Technologies, Inc. | System and method for dynamically changing web uniform resource locators |
| US7813308B2 (en) | 2008-02-27 | 2010-10-12 | Dell Products L.P. | System and method for location-based configuration of an information handling system |
| US7930427B2 (en) | 2008-03-03 | 2011-04-19 | Microsoft Corporation | Client-side load balancing |
| US8533465B2 (en) | 2008-03-05 | 2013-09-10 | The Johns Hopkins University | System and method of encrypting network address for anonymity and preventing data exfiltration |
| US8639267B2 (en) | 2008-03-14 | 2014-01-28 | William J. Johnson | System and method for location based exchanges of data facilitating distributed locational applications |
| US8266672B2 (en) | 2008-03-21 | 2012-09-11 | Sophos Plc | Method and system for network identification via DNS |
| WO2009120301A2 (en) | 2008-03-25 | 2009-10-01 | Square Products Corporation | System and method for simultaneous media presentation |
| US20090248852A1 (en) | 2008-03-30 | 2009-10-01 | Oded Fuhrmann | Evaluating Entities Associations with their Respective Environments |
| US8156243B2 (en) | 2008-03-31 | 2012-04-10 | Amazon Technologies, Inc. | Request routing |
| US8533293B1 (en) | 2008-03-31 | 2013-09-10 | Amazon Technologies, Inc. | Client side cache management |
| US7962597B2 (en) | 2008-03-31 | 2011-06-14 | Amazon Technologies, Inc. | Request routing based on class |
| US7970820B1 (en) | 2008-03-31 | 2011-06-28 | Amazon Technologies, Inc. | Locality based content distribution |
| US8601090B1 (en) | 2008-03-31 | 2013-12-03 | Amazon Technologies, Inc. | Network resource identification |
| US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
| US8447831B1 (en) | 2008-03-31 | 2013-05-21 | Amazon Technologies, Inc. | Incentive driven content delivery |
| US8321568B2 (en) | 2008-03-31 | 2012-11-27 | Amazon Technologies, Inc. | Content management |
| US8745731B2 (en) | 2008-04-03 | 2014-06-03 | Microsoft Corporation | Clustering botnet behavior using parameterized models |
| US7814229B1 (en) | 2008-04-04 | 2010-10-12 | Amazon Technologies, Inc. | Constraint-based domain name system |
| WO2009123868A2 (en) | 2008-04-04 | 2009-10-08 | Level 3 Communications, Llc | Handling long-tail content in a content delivery network (cdn) |
| US9762692B2 (en) | 2008-04-04 | 2017-09-12 | Level 3 Communications, Llc | Handling long-tail content in a content delivery network (CDN) |
| US20090265786A1 (en) | 2008-04-17 | 2009-10-22 | Microsoft Corporation | Automatic botnet spam signature generation |
| US20090265707A1 (en) | 2008-04-21 | 2009-10-22 | Microsoft Corporation | Optimizing application performance on virtual machines automatically with end-user preferences |
| US7860735B2 (en) | 2008-04-22 | 2010-12-28 | Xerox Corporation | Online life insurance document management service |
| US7924715B2 (en) | 2008-05-12 | 2011-04-12 | Nortel Networks Limited | Method and apparatus for discovering, negotiating, and provisioning end-to-end SLAs between multiple service provider domains |
| US8010705B1 (en) | 2008-06-04 | 2011-08-30 | Viasat, Inc. | Methods and systems for utilizing delta coding in acceleration proxy servers |
| US20100020699A1 (en) | 2008-06-17 | 2010-01-28 | Hanson On | Method and apparatus for oam & p of wireless network |
| US8078974B2 (en) | 2008-06-27 | 2011-12-13 | Microsoft Corporation | Relating web page change with revisitation patterns |
| US7925782B2 (en) | 2008-06-30 | 2011-04-12 | Amazon Technologies, Inc. | Request routing using network computing components |
| US9912740B2 (en) | 2008-06-30 | 2018-03-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
| US9407681B1 (en) | 2010-09-28 | 2016-08-02 | Amazon Technologies, Inc. | Latency measurement in resource requests |
| CN101631133A (en) | 2008-07-15 | 2010-01-20 | 华为技术有限公司 | Domain name analyzing system, equipment and method |
| US8165915B1 (en) | 2008-07-23 | 2012-04-24 | Google Inc. | Advertisement customization |
| US8271652B2 (en) | 2008-07-24 | 2012-09-18 | Netapp, Inc. | Load-derived probability-based domain name service in a network storage cluster |
| US8645565B2 (en) | 2008-07-31 | 2014-02-04 | Tekelec, Inc. | Methods, systems, and computer readable media for throttling traffic to an internet protocol (IP) network server using alias hostname identifiers assigned to the IP network server with a domain name system (DNS) |
| US8718383B2 (en) | 2008-08-06 | 2014-05-06 | Obschestvo s ogranischennoi otvetstvennostiu “KUZNETCH” | Image and website filter using image comparison |
| US8429715B2 (en) * | 2008-08-08 | 2013-04-23 | Microsoft Corporation | Secure resource name resolution using a cache |
| US10027688B2 (en) | 2008-08-11 | 2018-07-17 | Damballa, Inc. | Method and system for detecting malicious and/or botnet-related domain names |
| US20100042725A1 (en) | 2008-08-13 | 2010-02-18 | Sk Telecom Co., Ltd. | Contents provider participation type contents delivery system and method, and contents delivery network domain name system server thereof |
| US8694666B2 (en) | 2008-08-21 | 2014-04-08 | Apple Inc. | Personalized streaming digital content |
| EP2159983A1 (en) | 2008-08-26 | 2010-03-03 | BRITISH TELECOMMUNICATIONS public limited company | Content distribution network |
| US8954548B2 (en) | 2008-08-27 | 2015-02-10 | At&T Intellectual Property Ii, L.P. | Targeted caching to reduce bandwidth consumption |
| US8365183B2 (en) | 2008-09-02 | 2013-01-29 | Ca, Inc. | System and method for dynamic resource provisioning for job placement |
| US8949161B2 (en) | 2008-09-12 | 2015-02-03 | Alcatel Lucent | Cache management system and method and content distribution system incorporating the same |
| US20100070603A1 (en) | 2008-09-18 | 2010-03-18 | Eran Moss | Method and Apparatus for Unifying Interfaces at Content Sources and Content Distributors |
| US8516082B2 (en) | 2009-03-25 | 2013-08-20 | Limelight Networks, Inc. | Publishing-point management for content delivery network |
| US20090282028A1 (en) | 2008-09-23 | 2009-11-12 | Michael Subotin | User Interface and Method for Web Browsing based on Topical Relatedness of Domain Names |
| US8122124B1 (en) | 2008-09-29 | 2012-02-21 | Amazon Technologies, Inc. | Monitoring performance and operation of data exchanges |
| US7865594B1 (en) | 2008-09-29 | 2011-01-04 | Amazon Technologies, Inc. | Managing resources consolidation configurations |
| US8117306B1 (en) | 2008-09-29 | 2012-02-14 | Amazon Technologies, Inc. | Optimizing content management |
| US8286176B1 (en) | 2008-09-29 | 2012-10-09 | Amazon Technologies, Inc. | Optimizing resource configurations |
| US8316124B1 (en) | 2008-09-29 | 2012-11-20 | Amazon Technologies, Inc. | Managing network data display |
| US7930393B1 (en) | 2008-09-29 | 2011-04-19 | Amazon Technologies, Inc. | Monitoring domain allocation performance |
| US8051166B1 (en) | 2008-09-29 | 2011-11-01 | Amazon Technologies, Inc. | Service provider optimization of content management |
| US8131519B2 (en) | 2008-09-30 | 2012-03-06 | Hewlett-Packard Development Company, L.P. | Accuracy in a prediction of resource usage of an application in a virtual environment |
| US20100088405A1 (en) | 2008-10-08 | 2010-04-08 | Microsoft Corporation | Determining Network Delay and CDN Deployment |
| EP2175613A1 (en) | 2008-10-08 | 2010-04-14 | Research In Motion Limited | Mobile wireless communications device and system providing dynamic management of carrier applications and related methods |
| US7805516B2 (en) | 2008-10-14 | 2010-09-28 | Dell Products L.P. | Enabling throttling of resources on a virtualization enabled information handling system |
| US8656404B2 (en) | 2008-10-16 | 2014-02-18 | Palo Alto Research Center Incorporated | Statistical packing of resource requirements in data centers |
| CN101729442B (en) | 2008-10-23 | 2013-03-20 | 华为技术有限公司 | Method and device for realizing content sharing |
| US8266288B2 (en) | 2008-10-23 | 2012-09-11 | International Business Machines Corporation | Dynamic expiration of domain name service entries |
| US9996572B2 (en) | 2008-10-24 | 2018-06-12 | Microsoft Technology Licensing, Llc | Partition management in a partitioned, scalable, and available structured storage |
| US8108623B2 (en) | 2008-10-26 | 2012-01-31 | Microsoft Corporation | Poll based cache event notifications in a distributed cache |
| US20120209942A1 (en) | 2008-10-28 | 2012-08-16 | Cotendo, Inc. | System combining a cdn reverse proxy and an edge forward proxy with secure connections |
| US8392928B1 (en) | 2008-10-28 | 2013-03-05 | Hewlett-Packard Development Company, L.P. | Automated workload placement recommendations for a data center |
| JP5401922B2 (en) | 2008-11-04 | 2014-01-29 | 富士通株式会社 | Virtual system control program, method and apparatus |
| US7930428B2 (en) | 2008-11-11 | 2011-04-19 | Barracuda Networks Inc | Verification of DNS accuracy in cache poisoning |
| US9426029B2 (en) | 2008-11-12 | 2016-08-23 | Teloip Inc. | System, apparatus and method for providing improved performance of aggregated/bonded network connections with cloud provisioning |
| US9929964B2 (en) | 2008-11-12 | 2018-03-27 | Teloip Inc. | System, apparatus and method for providing aggregation of connections with a secure and trusted virtual network overlay |
| US9692713B2 (en) | 2008-11-12 | 2017-06-27 | Teloip Inc. | System, apparatus and method for providing a virtual network edge and overlay |
| EP3567881B1 (en) | 2008-11-17 | 2021-02-24 | Amazon Technologies, Inc. | Request routing and updating routing information utilizing client location information |
| US8122098B1 (en) | 2008-11-17 | 2012-02-21 | Amazon Technologies, Inc. | Managing content delivery network service providers by a content broker |
| US8732309B1 (en) | 2008-11-17 | 2014-05-20 | Amazon Technologies, Inc. | Request routing utilizing cost information |
| US8521880B1 (en) | 2008-11-17 | 2013-08-27 | Amazon Technologies, Inc. | Managing content delivery network service providers |
| US8060616B1 (en) | 2008-11-17 | 2011-11-15 | Amazon Technologies, Inc. | Managing CDN registration by a storage provider |
| US8073940B1 (en) | 2008-11-17 | 2011-12-06 | Amazon Technologies, Inc. | Managing content delivery network service providers |
| US8065417B1 (en) | 2008-11-17 | 2011-11-22 | Amazon Technologies, Inc. | Service provider registration by a content broker |
| US8359402B2 (en) | 2008-11-19 | 2013-01-22 | Seachange International, Inc. | Intercept device for providing content |
| US8135840B2 (en) | 2008-11-20 | 2012-03-13 | At&T Intellectual Property I, Lp | Systems and methods for directing content requests to servers |
| US8447856B2 (en) | 2008-11-25 | 2013-05-21 | Barracuda Networks, Inc. | Policy-managed DNS server for to control network traffic |
| CN101431539B (en) | 2008-12-11 | 2011-04-20 | 华为技术有限公司 | Domain name resolution method, system and apparatus |
| US7936754B2 (en) | 2008-12-12 | 2011-05-03 | At&T Intellectual Property I, L.P. | Methods and apparatus to dynamically store network routes for a communication network |
| KR101207510B1 (en) | 2008-12-18 | 2012-12-03 | 한국전자통신연구원 | Cluster Data Management System And Method for Data Restoring Using Shared Read-Only Log in Cluster Data Management System |
| KR101259557B1 (en) | 2008-12-18 | 2013-04-30 | 한국전자통신연구원 | Cluster data management system and method for data recovery using parallel processing in cluster data management system |
| US7930429B2 (en) | 2008-12-18 | 2011-04-19 | At&T Intellectual Property I, Lp | System and method for obtaining content from a content delivery network |
| WO2010078489A2 (en) | 2008-12-31 | 2010-07-08 | Akamai Technologies, Inc. | Enforcing single stream per sign-on from a content delivery network (cdn) media server |
| US20100174811A1 (en) | 2009-01-05 | 2010-07-08 | Microsoft Corporation | Network isolation and identity management of cloned virtual machines |
| US8046468B2 (en) | 2009-01-26 | 2011-10-25 | Vmware, Inc. | Process demand prediction for distributed power and resource management |
| US20100192225A1 (en) | 2009-01-28 | 2010-07-29 | Juniper Networks, Inc. | Efficient application identification with network devices |
| US8296375B1 (en) | 2009-02-03 | 2012-10-23 | Sprint Communications Company L.P. | Parallel management of load servers, cache servers, and feed servers |
| US20100223364A1 (en) | 2009-02-27 | 2010-09-02 | Yottaa Inc | System and method for network traffic management and load balancing |
| WO2010102084A2 (en) | 2009-03-05 | 2010-09-10 | Coach Wei | System and method for performance acceleration, data protection, disaster recovery and on-demand scaling of computer applications |
| US20100235915A1 (en) | 2009-03-12 | 2010-09-16 | Nasir Memon | Using host symptoms, host roles, and/or host reputation for detection of host infection |
| US7917618B1 (en) | 2009-03-24 | 2011-03-29 | Amazon Technologies, Inc. | Monitoring web site content |
| US8756341B1 (en) | 2009-03-27 | 2014-06-17 | Amazon Technologies, Inc. | Request routing utilizing popularity information |
| US8412823B1 (en) | 2009-03-27 | 2013-04-02 | Amazon Technologies, Inc. | Managing tracking information entries in resource cache components |
| US8688837B1 (en) | 2009-03-27 | 2014-04-01 | Amazon Technologies, Inc. | Dynamically translating resource identifiers for request routing using popularity information |
| US8521851B1 (en) | 2009-03-27 | 2013-08-27 | Amazon Technologies, Inc. | DNS query processing using resource identifiers specifying an application broker |
| US8521908B2 (en) | 2009-04-07 | 2013-08-27 | Verisign, Inc. | Existent domain name DNS traffic capture and analysis |
| US8464267B2 (en) | 2009-04-10 | 2013-06-11 | Microsoft Corporation | Virtual machine packing method using scarcity |
| US8433749B2 (en) | 2009-04-15 | 2013-04-30 | Accenture Global Services Limited | Method and system for client-side scaling of web server farm architectures in a cloud data center |
| US8046432B2 (en) | 2009-04-17 | 2011-10-25 | Microsoft Corporation | Network caching for multiple contemporaneous requests |
| US8769055B2 (en) | 2009-04-24 | 2014-07-01 | Microsoft Corporation | Distributed backup and versioning |
| US8261266B2 (en) | 2009-04-30 | 2012-09-04 | Microsoft Corporation | Deploying a virtual machine having a virtual hardware configuration matching an improved hardware profile with respect to execution of an application |
| US8730844B2 (en) | 2009-05-04 | 2014-05-20 | Lockheed Martin Corporation | Self-forming ad-hoc network system |
| US9424094B2 (en) | 2009-06-01 | 2016-08-23 | International Business Machines Corporation | Server consolidation using virtual machine resource tradeoffs |
| US8218965B1 (en) | 2009-06-01 | 2012-07-10 | Lockheed Martin Corporation | Optical failover routing |
| US8782236B1 (en) | 2009-06-16 | 2014-07-15 | Amazon Technologies, Inc. | Managing resources using resource expiration data |
| US8745334B2 (en) | 2009-06-17 | 2014-06-03 | International Business Machines Corporation | Sectored cache replacement algorithm for reducing memory writebacks |
| US9210065B2 (en) | 2009-06-22 | 2015-12-08 | Alcatel Lucent | Providing cloud-based services using dynamic network virtualization |
| US8959157B2 (en) | 2009-06-26 | 2015-02-17 | Microsoft Corporation | Real-time spam look-up system |
| US8219562B1 (en) | 2009-06-29 | 2012-07-10 | Facebook, Inc. | Efficient storage and retrieval for large number of data objects |
| US8694638B2 (en) | 2009-06-29 | 2014-04-08 | Red Hat Israel | Selecting a host from a host cluster to run a virtual machine |
| US9137301B1 (en) | 2009-06-30 | 2015-09-15 | Amazon Technologies, Inc. | Client based opportunistic routing |
| US9118680B1 (en) | 2009-06-30 | 2015-08-25 | Amazon Technologies, Inc. | Opportunistic routing |
| US20110010244A1 (en) | 2009-07-10 | 2011-01-13 | Microsoft Corporation | Sponsored application launcher suggestions |
| US8521809B2 (en) | 2009-07-31 | 2013-08-27 | Z2Live, Inc. | Mobile device notification controls system and method |
| US20110029398A1 (en) | 2009-07-31 | 2011-02-03 | Wesley John Boudville | Geo name service for validated locations and occupants and URLs |
| US8380870B2 (en) | 2009-08-05 | 2013-02-19 | Verisign, Inc. | Method and system for filtering of network traffic |
| US20110040893A1 (en) | 2009-08-14 | 2011-02-17 | Broadcom Corporation | Distributed Internet caching via multiple node caching management |
| US9448852B2 (en) | 2009-08-28 | 2016-09-20 | Oracle International Corporation | Managing virtual machines |
| US20110055386A1 (en) | 2009-08-31 | 2011-03-03 | Level 3 Communications, Llc | Network analytics management |
| US8789173B2 (en) | 2009-09-03 | 2014-07-22 | Juniper Networks, Inc. | Protecting against distributed network flood attacks |
| US9203816B2 (en) | 2009-09-04 | 2015-12-01 | Echostar Technologies L.L.C. | Controlling access to copies of media content by a client device |
| US8397073B1 (en) | 2009-09-04 | 2013-03-12 | Amazon Technologies, Inc. | Managing secure content in a content delivery network |
| US8942233B2 (en) | 2009-09-08 | 2015-01-27 | Wichorus, Inc. | Method and apparatus for performing network address translation |
| US7958258B2 (en) | 2009-09-09 | 2011-06-07 | Verizon Patent And Licensing, Inc. | Mobile communication device domain name system redirection |
| US8558693B2 (en) | 2009-09-10 | 2013-10-15 | Tribal Technologies, Inc. | System and method for location-based reminders on a mobile device |
| US8775553B2 (en) | 2009-09-11 | 2014-07-08 | The Directv Group, Inc. | Managing signal delivery to a plurality of display platforms |
| US9367876B2 (en) | 2009-09-18 | 2016-06-14 | Salesforce.Com, Inc. | Systems and methods for multimedia multipoint real-time conferencing allowing real-time bandwidth management and prioritized media distribution |
| US9037717B2 (en) | 2009-09-21 | 2015-05-19 | International Business Machines Corporation | Virtual machine demand estimation |
| US20110078230A1 (en) | 2009-09-25 | 2011-03-31 | Emilio Sepulveda | Method and system for providing a cdn with granular quality of service |
| CA2774990A1 (en) | 2009-09-25 | 2011-03-31 | Google Inc. | Controlling content distribution |
| US8219645B2 (en) | 2009-10-02 | 2012-07-10 | Limelight Networks, Inc. | Content delivery network cache grouping |
| US8433771B1 (en) | 2009-10-02 | 2013-04-30 | Amazon Technologies, Inc. | Distribution network with forward resource propagation |
| US8199752B2 (en) | 2009-10-02 | 2012-06-12 | Limelight Networks, Inc. | Enhanced anycast for edge server selection |
| US8611339B2 (en) | 2009-10-08 | 2013-12-17 | At&T Intellectual Property I, L.P. | Apparatus and method for providing presence |
| KR101377921B1 (en) | 2009-10-12 | 2014-03-25 | 엘지전자 주식회사 | Mobile terminated communication method and related devices |
| US8782207B2 (en) | 2009-10-20 | 2014-07-15 | At&T Intellectual Property I, L.P. | System and method to prevent endpoint device recovery flood in NGN |
| WO2011050368A1 (en) | 2009-10-23 | 2011-04-28 | Moov Corporation | Configurable and dynamic transformation of web content |
| US9122537B2 (en) | 2009-10-30 | 2015-09-01 | Cisco Technology, Inc. | Balancing server load according to availability of physical resources based on the detection of out-of-sequence packets |
| US9552497B2 (en) | 2009-11-10 | 2017-01-24 | Mcafee, Inc. | System and method for preventing data loss using virtual machine wrapped applications |
| US20110126197A1 (en) | 2009-11-25 | 2011-05-26 | Novell, Inc. | System and method for controlling cloud and virtualized data centers in an intelligent workload management system |
| US8443167B1 (en) | 2009-12-16 | 2013-05-14 | Western Digital Technologies, Inc. | Data storage device employing a run-length mapping table and a single address mapping table |
| US9389895B2 (en) | 2009-12-17 | 2016-07-12 | Microsoft Technology Licensing, Llc | Virtual storage target offload techniques |
| US8331371B2 (en) | 2009-12-17 | 2012-12-11 | Amazon Technologies, Inc. | Distributed routing architecture |
| US8331370B2 (en) | 2009-12-17 | 2012-12-11 | Amazon Technologies, Inc. | Distributed routing architecture |
| US9141433B2 (en) | 2009-12-18 | 2015-09-22 | International Business Machines Corporation | Automated cloud workload management in a map-reduce environment |
| US8607014B2 (en) | 2009-12-22 | 2013-12-10 | At&T Intellectual Property I, L.P. | Multi-autonomous system anycast content delivery network |
| US7970940B1 (en) | 2009-12-22 | 2011-06-28 | Intel Corporation | Domain name system lookup latency reduction |
| US8635367B2 (en) | 2009-12-23 | 2014-01-21 | Citrix Systems, Inc. | Systems and methods for managing static proximity in multi-core GSLB appliance |
| US8224971B1 (en) | 2009-12-28 | 2012-07-17 | Amazon Technologies, Inc. | Using virtual networking devices and routing information to initiate external actions |
| US9137302B1 (en) | 2009-12-29 | 2015-09-15 | The Directv Group, Inc. | Content distribution network selector |
| US9495338B1 (en) | 2010-01-28 | 2016-11-15 | Amazon Technologies, Inc. | Content distribution network |
| US20110191446A1 (en) | 2010-01-29 | 2011-08-04 | Clarendon Foundation, Inc. | Storing and streaming media content |
| US8769139B2 (en) | 2010-01-29 | 2014-07-01 | Clarendon Foundation, Inc. | Efficient streaming server |
| US20110191447A1 (en) | 2010-01-29 | 2011-08-04 | Clarendon Foundation, Inc. | Content distribution system |
| US8949533B2 (en) | 2010-02-05 | 2015-02-03 | Telefonaktiebolaget L M Ericsson (Publ) | Method and node entity for enhancing content delivery network |
| US8464003B2 (en) | 2010-02-17 | 2013-06-11 | Hitachi, Ltd. | Method and apparatus to manage object based tier |
| US8341745B1 (en) | 2010-02-22 | 2012-12-25 | Symantec Corporation | Inferring file and website reputations by belief propagation leveraging machine reputation |
| US8701155B2 (en) | 2010-02-23 | 2014-04-15 | Microsoft Corporation | Communicating using a cloud infrastructure |
| US8468455B2 (en) | 2010-02-24 | 2013-06-18 | Novell, Inc. | System and method for providing virtual desktop extensions on a client desktop |
| US9130912B2 (en) | 2010-03-05 | 2015-09-08 | International Business Machines Corporation | System and method for assisting virtual machine instantiation and migration |
| US9191393B2 (en) | 2010-03-18 | 2015-11-17 | Nominum, Inc. | Internet mediation |
| US8560658B2 (en) | 2010-03-23 | 2013-10-15 | Juniper Networks, Inc. | Managing distributed address pools within network devices |
| JP5544967B2 (en) | 2010-03-24 | 2014-07-09 | 富士通株式会社 | Virtual machine management program and virtual machine management apparatus |
| US10102301B2 (en) | 2010-04-01 | 2018-10-16 | Cloudflare, Inc. | Internet-based proxy security services |
| US20150149600A1 (en) | 2010-04-07 | 2015-05-28 | Limelight Networks, Inc. | Feedback loop for automatic content adjustment in digital presence controls |
| US8972953B2 (en) | 2010-04-16 | 2015-03-03 | Salesforce.Com, Inc. | Methods and systems for internally debugging code in an on-demand service environment |
| US8326980B2 (en) | 2010-04-28 | 2012-12-04 | Microsoft Corporation | Using DNS reflection to measure network performance |
| US8712950B2 (en) | 2010-04-29 | 2014-04-29 | Microsoft Corporation | Resource capacity monitoring and reporting |
| US9811662B2 (en) | 2010-05-03 | 2017-11-07 | Panzura, Inc. | Performing anti-virus checks for a distributed filesystem |
| US8463846B2 (en) | 2010-05-06 | 2013-06-11 | Cdnetworks Co., Ltd. | File bundling for cache servers of content delivery networks |
| EP2569871B1 (en) | 2010-05-13 | 2015-04-08 | Northwestern University | Geographic location system and method |
| US8918820B2 (en) | 2010-05-27 | 2014-12-23 | Istreamplanet Co. | Video workflow automation platform |
| US9436459B2 (en) | 2010-05-28 | 2016-09-06 | Red Hat, Inc. | Generating cross-mapping of vendor software in a cloud computing environment |
| US8959139B2 (en) | 2010-05-28 | 2015-02-17 | Juniper Networks, Inc. | Application-layer traffic optimization service endpoint type attribute |
| US8688775B2 (en) | 2010-05-28 | 2014-04-01 | Juniper Network, Inc. | Application-layer traffic optimization service spanning multiple networks |
| US8423607B2 (en) | 2010-06-01 | 2013-04-16 | Qualcomm Incorporated | Fallback procedures for domain name server update in a mobile IP registration |
| JP5488225B2 (en) | 2010-06-09 | 2014-05-14 | 富士通株式会社 | Data management system, data management method, and data management program |
| US8260914B1 (en) | 2010-06-22 | 2012-09-04 | Narus, Inc. | Detecting DNS fast-flux anomalies |
| US20110320559A1 (en) | 2010-06-23 | 2011-12-29 | Telefonaktiebolaget L M Ericsson (Publ) | Remote access with media translation |
| US8396954B2 (en) | 2010-06-24 | 2013-03-12 | Aryaka Networks, Inc. | Routing and service performance management in an application acceleration environment |
| US8321503B2 (en) | 2010-06-24 | 2012-11-27 | Microsoft Corporation | Context-specific network resource addressing model for distributed services |
| US8683023B1 (en) | 2010-06-30 | 2014-03-25 | Amazon Technologies, Inc. | Managing communications involving external nodes of provided computer networks |
| US8250135B2 (en) | 2010-07-09 | 2012-08-21 | Sap Ag | Brokered cloud computing architecture |
| EP2599004A4 (en) | 2010-07-26 | 2013-12-11 | Seven Networks Inc | Prediction of activity session for mobile network use optimization and user experience enhancement |
| WO2012015920A2 (en) | 2010-07-28 | 2012-02-02 | Admiemobile Llc | Systems and methods for establishing and maintaining virtual computing clouds |
| US9516058B2 (en) | 2010-08-10 | 2016-12-06 | Damballa, Inc. | Method and system for determining whether domain names are legitimate or malicious |
| US20120041899A1 (en) | 2010-08-10 | 2012-02-16 | Palo Alto Research Center Incorporated | Data center customer cost determination mechanisms |
| US8612413B2 (en) | 2010-08-12 | 2013-12-17 | Cdnetworks Co., Ltd. | Distributed data cache for on-demand application acceleration |
| US8301645B1 (en) | 2010-08-26 | 2012-10-30 | Adobe Systems Incorporated | Aggregated web analytics request systems and methods |
| US9003518B2 (en) | 2010-09-01 | 2015-04-07 | Raytheon Bbn Technologies Corp. | Systems and methods for detecting covert DNS tunnels |
| US8489724B2 (en) | 2010-09-14 | 2013-07-16 | Cdnetworks Co., Ltd. | CNAME-based round-trip time measurement in a content delivery network |
| US8977766B2 (en) | 2010-09-21 | 2015-03-10 | Edgecast Networks, Inc. | Scalability and redundancy enhancements for content streaming |
| US8296786B2 (en) | 2010-09-22 | 2012-10-23 | Microsoft Corporation | Agent-based remote function execution |
| US8458248B2 (en) | 2010-09-24 | 2013-06-04 | Research In Motion Limited | System and method for enabling VPN tunnel status checking |
| US9712484B1 (en) | 2010-09-28 | 2017-07-18 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
| US8819283B2 (en) | 2010-09-28 | 2014-08-26 | Amazon Technologies, Inc. | Request routing in a networked environment |
| US8468247B1 (en) | 2010-09-28 | 2013-06-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
| US8938526B1 (en) | 2010-09-28 | 2015-01-20 | Amazon Technologies, Inc. | Request routing management based on network components |
| US8577992B1 (en) | 2010-09-28 | 2013-11-05 | Amazon Technologies, Inc. | Request routing management based on network components |
| US8930513B1 (en) | 2010-09-28 | 2015-01-06 | Amazon Technologies, Inc. | Latency measurement in resource requests |
| US8924528B1 (en) | 2010-09-28 | 2014-12-30 | Amazon Technologies, Inc. | Latency measurement in resource requests |
| US10097398B1 (en) | 2010-09-28 | 2018-10-09 | Amazon Technologies, Inc. | Point of presence management in request routing |
| US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
| US9003035B1 (en) | 2010-09-28 | 2015-04-07 | Amazon Technologies, Inc. | Point of presence management in request routing |
| US8396963B2 (en) | 2010-09-29 | 2013-03-12 | Schneider Electric USA, Inc. | Networked devices for monitoring utility usage and methods of using the same |
| US8619780B1 (en) | 2010-09-30 | 2013-12-31 | Amazon Technologies, Inc. | Processing packet routing information |
| US20120089972A1 (en) | 2010-10-08 | 2012-04-12 | Microsoft Corporation | Image Based Servicing Of A Virtual Machine |
| US20120089700A1 (en) | 2010-10-10 | 2012-04-12 | Contendo, Inc. | Proxy server configured for hierarchical caching and dynamic site acceleration and custom object and associated method |
| US8549148B2 (en) | 2010-10-15 | 2013-10-01 | Brocade Communications Systems, Inc. | Domain name system security extensions (DNSSEC) for global server load balancing |
| US8694642B2 (en) | 2010-10-21 | 2014-04-08 | Opendns, Inc. | Selective proxying in domain name systems |
| US8548992B2 (en) | 2010-10-28 | 2013-10-01 | Cary Scott Abramoff | User interface for a digital content management system |
| CN102232282B (en) | 2010-10-29 | 2014-03-26 | 华为技术有限公司 | Method and apparatus for realizing load balance of resources in data center |
| CN103314566B (en) | 2010-11-05 | 2017-05-03 | 思杰系统有限公司 | Systems and methods for managing domain name system security (DNSSEC) |
| US8301600B1 (en) | 2010-11-15 | 2012-10-30 | Amazon Technologies, Inc. | Failover recovery in a distributed data store |
| US8468222B2 (en) | 2010-11-16 | 2013-06-18 | Edgecast Networks, Inc. | Discrete mapping for targeted caching |
| EP2641383B1 (en) | 2010-11-17 | 2014-11-12 | Telefonaktiebolaget L M Ericsson (publ) | DNS server arrangement and method |
| US8452874B2 (en) | 2010-11-22 | 2013-05-28 | Amazon Technologies, Inc. | Request routing processing |
| US8825839B2 (en) | 2010-11-24 | 2014-09-02 | Unisys Corporation | Snooping DNS messages in a server hosting system providing overlapping address and name spaces |
| US8589558B2 (en) | 2010-11-29 | 2013-11-19 | Radware, Ltd. | Method and system for efficient deployment of web applications in a multi-datacenter system |
| US9391949B1 (en) | 2010-12-03 | 2016-07-12 | Amazon Technologies, Inc. | Request routing processing |
| US8626950B1 (en) | 2010-12-03 | 2014-01-07 | Amazon Technologies, Inc. | Request routing processing |
| US9009719B2 (en) | 2010-12-16 | 2015-04-14 | Hewlett-Packard Development Company, L.P. | Computer workload capacity estimation using proximity tables |
| US8880633B2 (en) | 2010-12-17 | 2014-11-04 | Akamai Technologies, Inc. | Proxy server with byte-based include interpreter |
| US8966622B2 (en) | 2010-12-29 | 2015-02-24 | Amazon Technologies, Inc. | Techniques for protecting against denial of service attacks near the source |
| US9354804B2 (en) | 2010-12-29 | 2016-05-31 | Microsoft Technology Licensing, Llc | Touch event anticipation in a computing device |
| US20120173760A1 (en) | 2010-12-30 | 2012-07-05 | International Business Machines Corporation | Domain name resolution for a hybrid cloud cluster |
| US8527633B2 (en) | 2011-01-06 | 2013-09-03 | International Business Machines Corporation | Techniques for addressing geographical location issues in computing environments |
| US10484232B2 (en) | 2011-01-12 | 2019-11-19 | Level 3 Communications, Llc | Customized domain names in a content delivery network (CDN) |
| WO2012095170A1 (en) | 2011-01-12 | 2012-07-19 | Telefonaktiebolaget L M Ericsson (Publ) | Policy management |
| JP5767480B2 (en) | 2011-01-31 | 2015-08-19 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Information processing apparatus, information processing system, arrangement configuration determining method, program, and recording medium |
| US8291083B2 (en) | 2011-02-01 | 2012-10-16 | Limelight Networks, Inc. | Distributed landing pad and brick topology for content storage in content delivery networks |
| US8832674B2 (en) | 2011-02-24 | 2014-09-09 | Software Ag Usa, Inc. | Off-heap direct-memory data stores, methods of creating and/or managing off-heap direct-memory data stores, and/or systems including off-heap direct-memory data store |
| US9075893B1 (en) | 2011-02-25 | 2015-07-07 | Amazon Technologies, Inc. | Providing files with cacheable portions |
| US9141410B2 (en) | 2011-03-08 | 2015-09-22 | Rackspace Us, Inc. | Pluggable allocation in a cloud computing system |
| US8510267B2 (en) | 2011-03-08 | 2013-08-13 | Rackspace Us, Inc. | Synchronization of structured information repositories |
| US10009315B2 (en) | 2011-03-09 | 2018-06-26 | Amazon Technologies, Inc. | Outside live migration |
| US8688817B2 (en) | 2011-03-14 | 2014-04-01 | Edgecast Networks, Inc. | Network connection hand-off using state transformations |
| US8589996B2 (en) | 2011-03-16 | 2013-11-19 | Azuki Systems, Inc. | Method and system for federated over-the-top content delivery |
| US9237087B1 (en) | 2011-03-16 | 2016-01-12 | Google Inc. | Virtual machine name resolution |
| US9275162B2 (en) | 2011-03-22 | 2016-03-01 | Blackberry Limited | Pre-caching web content for a mobile device |
| JP2012209623A (en) | 2011-03-29 | 2012-10-25 | Kyocera Document Solutions Inc | Image reader and image formation device including the same |
| US8683567B2 (en) | 2011-03-31 | 2014-03-25 | Belkin International, Inc. | Method of distributing information regarding one or more electrical devices and system for the same |
| US8837483B2 (en) | 2011-04-11 | 2014-09-16 | Alcatel Lucent | Mapping private and public addresses |
| US8433797B2 (en) | 2011-04-11 | 2013-04-30 | Ringcentral, Inc. | User interface for accessing messages |
| US8935683B2 (en) | 2011-04-20 | 2015-01-13 | Qualcomm Incorporated | Inline function linking |
| US9141982B2 (en) | 2011-04-27 | 2015-09-22 | Right Brain Interface Nv | Method and apparatus for collaborative upload of content |
| US10467042B1 (en) | 2011-04-27 | 2019-11-05 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
| US8813116B2 (en) | 2011-04-27 | 2014-08-19 | Morega Systems Inc. | Adaptive video server with virtual file system and methods for use therewith |
| US9489666B2 (en) | 2011-04-29 | 2016-11-08 | Verizon Patent And Licensing Inc. | Methods and systems for providing subsidized access to network content |
| US8645700B2 (en) | 2011-04-29 | 2014-02-04 | Verisign, Inc. | DNSSEC inline signing |
| ES2425626B1 (en) | 2011-05-12 | 2014-06-05 | Telefónica, S.A. | METHOD FOR DNS RESOLUTION OF CONTENT REQUESTS IN A CDN SERVICE |
| US20120297009A1 (en) | 2011-05-18 | 2012-11-22 | Oversi Networks Ltd. | Method and system for cahing in mobile ran |
| US8621274B1 (en) | 2011-05-18 | 2013-12-31 | Netapp Inc. | Virtual machine fault tolerance |
| US8914626B1 (en) | 2011-05-20 | 2014-12-16 | Amazon Technologies, Inc. | Providing configurable bootstrapping of software image execution |
| US8756322B1 (en) | 2011-06-16 | 2014-06-17 | Amazon Technologies, Inc | Fulfillment of requests for computing capacity |
| US8812727B1 (en) | 2011-06-23 | 2014-08-19 | Amazon Technologies, Inc. | System and method for distributed load balancing with distributed direct server return |
| US9407539B1 (en) | 2011-06-24 | 2016-08-02 | Amazon Technologies, Inc. | Techniques for utilizing network destination identifiers simultaneously announced from multiple locations |
| US8923294B2 (en) | 2011-06-28 | 2014-12-30 | Polytechnic Institute Of New York University | Dynamically provisioning middleboxes |
| US8582438B2 (en) | 2011-06-29 | 2013-11-12 | Cisco Technology, Inc. | Detecting and mitigating overload on switches by wireless mobile client devices |
| US8706860B2 (en) | 2011-06-30 | 2014-04-22 | Amazon Technologies, Inc. | Remote browsing session management |
| US8799412B2 (en) | 2011-06-30 | 2014-08-05 | Amazon Technologies, Inc. | Remote browsing session management |
| US9621406B2 (en) | 2011-06-30 | 2017-04-11 | Amazon Technologies, Inc. | Remote browsing session management |
| US8577963B2 (en) | 2011-06-30 | 2013-11-05 | Amazon Technologies, Inc. | Remote browsing session between client browser and network based browser |
| US8943170B2 (en) | 2011-07-08 | 2015-01-27 | Ming Li | Content delivery network aggregation with selected content delivery |
| JP5817299B2 (en) | 2011-08-01 | 2015-11-18 | 富士通株式会社 | Address translation apparatus, communication system, and address translation method |
| US9088415B2 (en) | 2011-08-03 | 2015-07-21 | Cisco Technology, Inc. | Authentication of cache DNS server responses |
| US8572680B2 (en) | 2011-08-11 | 2013-10-29 | Verisign, Inc. | White listing DNS top-talkers |
| US8533231B2 (en) | 2011-08-12 | 2013-09-10 | Nexenta Systems, Inc. | Cloud storage system with distributed metadata |
| US9037696B2 (en) | 2011-08-16 | 2015-05-19 | Amazon Technologies, Inc. | Managing information associated with network resources |
| US8510807B1 (en) | 2011-08-16 | 2013-08-13 | Edgecast Networks, Inc. | Real-time granular statistical reporting for distributed platforms |
| US9747592B2 (en) | 2011-08-16 | 2017-08-29 | Verizon Digital Media Services Inc. | End-to-end content delivery network incorporating independently operated transparent caches and proxy caches |
| US9195768B2 (en) | 2011-08-26 | 2015-11-24 | Amazon Technologies, Inc. | Remote browsing session management |
| US9432385B2 (en) | 2011-08-29 | 2016-08-30 | Arbor Networks, Inc. | System and method for denial of service attack mitigation using cloud services |
| US8789157B2 (en) | 2011-09-06 | 2014-07-22 | Ebay Inc. | Hybrid cloud identity mapping infrastructure |
| WO2013035243A1 (en) | 2011-09-08 | 2013-03-14 | 日本電気株式会社 | Cloud service recovery time prediction system, method and program |
| US8689280B2 (en) | 2011-09-09 | 2014-04-01 | Microsoft Corporation | DNS-based content routing |
| US8849976B2 (en) | 2011-09-26 | 2014-09-30 | Limelight Networks, Inc. | Dynamic route requests for multiple clouds |
| US8914514B1 (en) | 2011-09-27 | 2014-12-16 | Amazon Technologies, Inc. | Managing network based content |
| US20130080577A1 (en) | 2011-09-27 | 2013-03-28 | Brett R. Taylor | Historical browsing session management |
| US20130080576A1 (en) | 2011-09-27 | 2013-03-28 | Brett R. Taylor | Historical browsing session management |
| US8914521B2 (en) | 2011-09-27 | 2014-12-16 | Oracle International Corporation | System and method for providing active-passive routing in a traffic director environment |
| US8849802B2 (en) | 2011-09-27 | 2014-09-30 | Amazon Technologies, Inc. | Historical browsing session management |
| US8589385B2 (en) | 2011-09-27 | 2013-11-19 | Amazon Technologies, Inc. | Historical browsing session management |
| WO2013049163A1 (en) | 2011-09-28 | 2013-04-04 | Apperian, Inc. | Conveyance of configuration information in a network |
| CN103037314B (en) | 2011-09-30 | 2016-03-09 | 国际商业机器公司 | The method of pocket transmission news on the mobile terminal in autonomous network |
| US10452620B2 (en) | 2011-09-30 | 2019-10-22 | International Business Machines Corporation | Automatic file version verification within electronic mail |
| US9116803B1 (en) | 2011-09-30 | 2015-08-25 | Symantec Corporation | Placement of virtual machines based on page commonality |
| US8949459B1 (en) | 2011-10-06 | 2015-02-03 | Amazon Technologies, Inc. | Methods and apparatus for distributed backbone internet DDOS mitigation via transit providers |
| US8976711B2 (en) | 2011-10-07 | 2015-03-10 | Futurewei Technologies, Inc. | Simple topology transparent zoning in network communications |
| KR101258845B1 (en) * | 2011-10-10 | 2013-05-06 | 고려대학교 산학협력단 | Information save method and system using TCP communication |
| US8897753B2 (en) | 2011-10-12 | 2014-11-25 | Motorola Mobility Llc | Method for retrieving content by a wireless communication device having first and second radio access interfaces, wireless communication device and communication system |
| US20130103834A1 (en) | 2011-10-21 | 2013-04-25 | Blue Coat Systems, Inc. | Multi-Tenant NATting for Segregating Traffic Through a Cloud Service |
| US8914515B2 (en) | 2011-10-28 | 2014-12-16 | International Business Machines Corporation | Cloud optimization using workload analysis |
| US8738766B1 (en) | 2011-11-01 | 2014-05-27 | Edgecast Networks, Inc. | End-to-end monitoring and optimization of a content delivery network using anycast routing |
| US8745177B1 (en) | 2011-11-01 | 2014-06-03 | Edgecast Networks, Inc. | End-to-end monitoring and optimization of a content delivery network using anycast routing |
| CN103999071B (en) | 2011-11-02 | 2018-04-17 | 阿卡麦科技公司 | More configuration of territories processing in Edge network servers |
| US9792430B2 (en) | 2011-11-03 | 2017-10-17 | Cyphort Inc. | Systems and methods for virtualized malware detection |
| EP2592814A1 (en) | 2011-11-08 | 2013-05-15 | VeriSign, Inc. | System and method for detecting DNS traffic anomalies |
| US9805054B2 (en) | 2011-11-14 | 2017-10-31 | Panzura, Inc. | Managing a global namespace for a distributed filesystem |
| KR101585936B1 (en) | 2011-11-22 | 2016-01-18 | 한국전자통신연구원 | System for managing virtual private network and and method thereof |
| US8885584B2 (en) | 2011-11-30 | 2014-11-11 | Blackberry Limited | Multiple concurrent data link management |
| CN102523256B (en) | 2011-11-30 | 2014-07-30 | 华为技术有限公司 | Content management method, device and system |
| CN102668518B (en) | 2011-12-02 | 2013-10-02 | 华为技术有限公司 | Content distribution network routing method, system, and user terminal |
| US9009334B1 (en) | 2011-12-09 | 2015-04-14 | Amazon Technologies, Inc. | Remote browsing session management |
| US20130198341A1 (en) | 2012-01-31 | 2013-08-01 | Electronics And Telecommunications Research Institute | System and method for delivering segmented content |
| WO2013116530A1 (en) | 2012-02-01 | 2013-08-08 | Xerocole, Inc. | Dns outage avoidance method for recursive dns servers |
| US9037975B1 (en) | 2012-02-10 | 2015-05-19 | Amazon Technologies, Inc. | Zooming interaction tracking and popularity determination |
| US8904009B1 (en) | 2012-02-10 | 2014-12-02 | Amazon Technologies, Inc. | Dynamic content delivery |
| US10021179B1 (en) | 2012-02-21 | 2018-07-10 | Amazon Technologies, Inc. | Local resource delivery network |
| US9137210B1 (en) | 2012-02-21 | 2015-09-15 | Amazon Technologies, Inc. | Remote browsing session management |
| US8819275B2 (en) | 2012-02-28 | 2014-08-26 | Comcast Cable Communications, Llc | Load balancing and session persistence in packet networks |
| US8984094B2 (en) | 2012-03-15 | 2015-03-17 | Wideorbit Inc. | Systems and methods to deliver a personalized mediacast |
| US9172674B1 (en) | 2012-03-21 | 2015-10-27 | Amazon Technologies, Inc. | Managing request routing information utilizing performance information |
| US8832831B2 (en) | 2012-03-21 | 2014-09-09 | Radware, Ltd. | Method and system for detecting and mitigating attacks performed using cryptographic protocols |
| US10623408B1 (en) | 2012-04-02 | 2020-04-14 | Amazon Technologies, Inc. | Context sensitive object management |
| US11321414B2 (en) | 2012-04-17 | 2022-05-03 | Comcast Cable Communications, Llc | Self-validating data object locator for a media asset |
| US9130977B2 (en) | 2012-04-18 | 2015-09-08 | Radware, Ltd. | Techniques for separating the processing of clients' traffic to different zones |
| US9092141B2 (en) | 2012-04-18 | 2015-07-28 | Hitachi, Ltd. | Method and apparatus to manage data location |
| US8908523B2 (en) | 2012-04-23 | 2014-12-09 | Apple Inc. | Apparatus and methods for improved packet flow mobility |
| US8839243B2 (en) | 2012-04-23 | 2014-09-16 | International Business Machines Corporation | Remediating resource overload |
| US8966318B1 (en) | 2012-04-27 | 2015-02-24 | Symantec Corporation | Method to validate availability of applications within a backup image |
| US8838968B2 (en) | 2012-05-14 | 2014-09-16 | Ca, Inc. | System and method for virtual machine data protection in a public cloud |
| US9264388B2 (en) | 2012-05-18 | 2016-02-16 | Salesforce.Com, Inc. | Re-routing incoming email for a multi-tenant database system |
| US20130311555A1 (en) | 2012-05-18 | 2013-11-21 | Telefonica, S.A. | Method for distributing long-tail content |
| US9348724B2 (en) | 2012-05-21 | 2016-05-24 | Hitachi, Ltd. | Method and apparatus for maintaining a workload service level on a converged platform |
| US9154551B1 (en) | 2012-06-11 | 2015-10-06 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
| US9602472B2 (en) | 2012-06-15 | 2017-03-21 | Alcatel Lucent | Methods and systems for privacy protection of network end users including profile slicing |
| US20130346465A1 (en) | 2012-06-21 | 2013-12-26 | Microsoft Corporation | Application enhancement using edge data center |
| US8793381B2 (en) | 2012-06-26 | 2014-07-29 | International Business Machines Corporation | Workload adaptive cloud computing resource allocation |
| US10031782B2 (en) | 2012-06-26 | 2018-07-24 | Juniper Networks, Inc. | Distributed processing of network device tasks |
| US9996501B1 (en) | 2012-06-28 | 2018-06-12 | Amazon Technologies, Inc. | Validating document content prior to format conversion based on a calculated threshold as a function of document size |
| US9246874B2 (en) | 2012-06-29 | 2016-01-26 | Verizon Patent And Licensing Inc. | Virtual domain name system |
| US9363164B2 (en) | 2012-07-20 | 2016-06-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Logical inter-cloud dispatcher |
| US9386331B2 (en) | 2012-07-26 | 2016-07-05 | Mobitv, Inc. | Optimizing video clarity |
| EP3493408B1 (en) | 2012-07-27 | 2020-06-17 | Sun Patent Trust | Transmission method |
| US8891375B2 (en) | 2012-08-02 | 2014-11-18 | Cisco Technology, Inc. | System and method for virtual Ethernet interface binding |
| US8613089B1 (en) | 2012-08-07 | 2013-12-17 | Cloudflare, Inc. | Identifying a denial-of-service attack in a cloud-based proxy service |
| US8612588B1 (en) | 2012-08-09 | 2013-12-17 | Limelight Networks, Inc. | Point of presence to point of presence web page compression |
| US8356074B1 (en) | 2012-08-09 | 2013-01-15 | Limelight Networks, Inc. | Inter point of presence split architecture |
| US10652318B2 (en) | 2012-08-13 | 2020-05-12 | Verisign, Inc. | Systems and methods for load balancing using predictive routing |
| US9292376B2 (en) | 2012-08-24 | 2016-03-22 | Vmware, Inc. | Proactive resource reservation for protecting virtual machines |
| US9608886B2 (en) | 2012-08-26 | 2017-03-28 | At&T Intellectual Property I, L.P. | Methods, systems, and products for monitoring domain name servers |
| US9525659B1 (en) | 2012-09-04 | 2016-12-20 | Amazon Technologies, Inc. | Request routing utilizing point of presence load information |
| US9143926B2 (en) | 2012-09-06 | 2015-09-22 | Dell Products, Lp | Method and apparatus for context aware management of location optimization of virtual machines for mobility and real-time enterprise applications |
| US9323577B2 (en) | 2012-09-20 | 2016-04-26 | Amazon Technologies, Inc. | Automated profiling of resource usage |
| US9135048B2 (en) | 2012-09-20 | 2015-09-15 | Amazon Technologies, Inc. | Automated profiling of resource usage |
| AU2013318249B2 (en) | 2012-09-20 | 2016-04-21 | Amazon Technologies, Inc. | Automated profiling of resource usage |
| US9189260B2 (en) | 2012-09-27 | 2015-11-17 | International Business Machines Corporation | Resource allocation for virtual machines and logical partitions |
| US8527645B1 (en) | 2012-10-15 | 2013-09-03 | Limelight Networks, Inc. | Distributing transcoding tasks across a dynamic set of resources using a queue responsive to restriction-inclusive queries |
| US9015212B2 (en) | 2012-10-16 | 2015-04-21 | Rackspace Us, Inc. | System and method for exposing cloud stored data to a content delivery network |
| US9537973B2 (en) | 2012-11-01 | 2017-01-03 | Microsoft Technology Licensing, Llc | CDN load balancing in the cloud |
| US9374276B2 (en) | 2012-11-01 | 2016-06-21 | Microsoft Technology Licensing, Llc | CDN traffic management in the cloud |
| US8978032B2 (en) | 2012-11-15 | 2015-03-10 | Bank Of America Corporation | Host naming application programming interface |
| KR101740327B1 (en) | 2012-11-22 | 2017-06-08 | 한국전자통신연구원 | Apparatus and system for providing software service using software virtualization and method thereof |
| US9130970B2 (en) | 2012-11-26 | 2015-09-08 | Go Daddy Operating Company, LLC | Systems for accelerating content delivery via DNS overriding |
| US8447854B1 (en) | 2012-12-04 | 2013-05-21 | Limelight Networks, Inc. | Edge analytics query for distributed content network |
| US9548874B2 (en) | 2012-12-07 | 2017-01-17 | Verizon Patent And Licensing Inc. | Selecting a content delivery network |
| US9104625B2 (en) | 2012-12-11 | 2015-08-11 | International Business Machines Corporation | Disaster recovery internet protocol address failover |
| US9660874B2 (en) | 2012-12-13 | 2017-05-23 | Level 3 Communications, Llc | Devices and methods supporting content delivery with delivery services having dynamically configurable log information |
| US20140337472A1 (en) | 2012-12-13 | 2014-11-13 | Level 3 Communications, Llc | Beacon Services in a Content Delivery Framework |
| US10205698B1 (en) | 2012-12-19 | 2019-02-12 | Amazon Technologies, Inc. | Source-dependent address resolution |
| US9654579B2 (en) | 2012-12-21 | 2017-05-16 | Akamai Technologies, Inc. | Scalable content delivery network request handling mechanism |
| US9729605B2 (en) | 2012-12-27 | 2017-08-08 | Akamai Technologies Inc. | Mechanism for distinguishing between content to be served through first or second delivery channels |
| US9277005B2 (en) | 2013-01-09 | 2016-03-01 | Edgecast Networks, Inc. | Optimized consistent request distribution for balanced load distribution in a content delivery network |
| US20150347311A1 (en) | 2013-01-09 | 2015-12-03 | Hitachi, Ltd. | Storage hierarchical management system |
| US9596312B2 (en) | 2013-01-28 | 2017-03-14 | Facebook, Inc. | Static resource caching |
| US20150215656A1 (en) | 2013-02-06 | 2015-07-30 | Hitachi, Ltd. | Content management apparatus and method, and storage medium |
| US9319265B2 (en) | 2013-02-22 | 2016-04-19 | Hitachi Data Systems Engineering UK Limited | Read ahead caching of data from cloud storage and method thereof |
| US9277399B2 (en) * | 2013-02-22 | 2016-03-01 | Qualcomm Incorporated | Systems and methods for reduced latency when establishing communication with a wireless communication system |
| US9219667B2 (en) | 2013-03-14 | 2015-12-22 | Ixia | Methods, systems, and computer readable media for selectively processing packets using time to live (TTL) information |
| US9756142B2 (en) | 2013-03-14 | 2017-09-05 | The Regents Of The University Of California | System and method for delivering video data from a server in a wireless network by caching the video data |
| US9710469B2 (en) | 2013-03-15 | 2017-07-18 | Comcast Cable Communications, Llc | Efficient data distribution to multiple devices |
| US9276812B1 (en) | 2013-03-15 | 2016-03-01 | Amazon Technologies, Inc. | Automated testing of a direct network-to-network connection |
| CN103152357B (en) * | 2013-03-22 | 2015-09-30 | 北京网御星云信息技术有限公司 | A kind of defence method for DNS service, device and system |
| US9645840B2 (en) | 2013-04-02 | 2017-05-09 | Amazon Technologies, Inc. | User-defined pools |
| GB201306628D0 (en) | 2013-04-11 | 2013-05-29 | F Secure Oyj | Detecting and marking client devices |
| US10015102B2 (en) | 2013-04-11 | 2018-07-03 | Qualcomm Incorporated | Application traffic pairing |
| CN104123198B (en) | 2013-04-28 | 2018-08-31 | 国际商业机器公司 | The method and apparatus for managing data replication mode |
| US20140351871A1 (en) | 2013-05-22 | 2014-11-27 | Microsoft Corporation | Live media processing and streaming service |
| US9258270B2 (en) | 2013-05-23 | 2016-02-09 | International Business Machines Corporation | Selecting between domain name system servers of a plurality of networks |
| US9294391B1 (en) | 2013-06-04 | 2016-03-22 | Amazon Technologies, Inc. | Managing network computing components utilizing request routing |
| CN104243425B (en) | 2013-06-19 | 2018-09-04 | 深圳市腾讯计算机系统有限公司 | A kind of method, apparatus and system carrying out Content Management in content distributing network |
| US9419845B2 (en) | 2013-06-27 | 2016-08-16 | Cisco Technology, Inc. | Dynamic content distribution network selection based on context from transient criteria |
| US20160373789A1 (en) | 2013-07-05 | 2016-12-22 | Sony Corporation | Transmission device, transmission method, receiving device, and receiving method |
| US20150019637A1 (en) | 2013-07-12 | 2015-01-15 | Seven Networks, Inc. | Distributed caching systems with configurable extended caching optimization |
| US20150026407A1 (en) | 2013-07-19 | 2015-01-22 | Advanced Micro Devices, Inc. | Size adjusting caches based on processor power mode |
| US9882767B1 (en) | 2013-07-23 | 2018-01-30 | Zscaler, Inc. | Distributed cloud-based dynamic name server surrogation systems and methods |
| US9749148B2 (en) | 2013-07-31 | 2017-08-29 | Citrix Systems, Inc. | Systems and methods for load balancing non-IP devices |
| US9645808B1 (en) | 2013-08-26 | 2017-05-09 | Amazon Technologies, Inc. | Integrating software updates with the testing and deployment of software |
| US20150067171A1 (en) | 2013-08-30 | 2015-03-05 | Verizon Patent And Licensing Inc. | Cloud service brokering systems and methods |
| US9485805B2 (en) | 2013-09-12 | 2016-11-01 | Haier Us Appliance Solutions, Inc. | Network address translation for ZIGBEE™/802.15.4 bridges |
| US9525728B2 (en) | 2013-09-17 | 2016-12-20 | Bank Of America Corporation | Prediction and distribution of resource demand |
| US9998354B2 (en) | 2013-09-24 | 2018-06-12 | Netflix, Inc. | Server selection for content distribution |
| US9736131B2 (en) | 2013-09-24 | 2017-08-15 | Cellco Partnership | Secure login for subscriber devices |
| US9413842B2 (en) | 2013-09-25 | 2016-08-09 | Verizon Digital Media Services Inc. | Instantaneous non-blocking content purging in a distributed platform |
| US9471350B2 (en) | 2013-09-26 | 2016-10-18 | Intel Corporation | Live migration of virtualized systems |
| US10097503B2 (en) | 2013-09-27 | 2018-10-09 | Fastly, Inc. | Content node network address selection for content delivery |
| US9088803B2 (en) | 2013-10-14 | 2015-07-21 | Nec Laboratories America, Inc. | Software defined joint bandwidth provisioning and cache management for MBH video traffic optimization |
| WO2015060835A1 (en) | 2013-10-23 | 2015-04-30 | Empire Technology Development Llc | Intermediary graphics rendition |
| US8819187B1 (en) | 2013-10-29 | 2014-08-26 | Limelight Networks, Inc. | End-to-end acceleration of dynamic content |
| US9386038B2 (en) | 2013-11-20 | 2016-07-05 | Iboss, Inc. | Manage encrypted network traffic using spoofed addresses |
| US9647904B2 (en) | 2013-11-25 | 2017-05-09 | Amazon Technologies, Inc. | Customer-directed networking limits in distributed systems |
| US9407676B2 (en) | 2013-11-25 | 2016-08-02 | At&T Intellectual Property I, Lp | Method and apparatus for distributing media content |
| US10694000B2 (en) | 2013-12-02 | 2020-06-23 | Amazon Technologies, Inc. | Browser-based analysis of content request mode performance |
| CN104754491B (en) | 2013-12-26 | 2021-02-09 | 索尼公司 | Mobile terminal and method for realizing cooperative transmission between mobile terminals |
| KR102154800B1 (en) | 2014-01-10 | 2020-09-10 | 삼성전자주식회사 | Data streaming method of electronic apparatus and electronic apparatus thereof |
| US20150264009A1 (en) | 2014-01-22 | 2015-09-17 | Limelight Networks, Inc. | Client-selectable routing using dns requests |
| US9467506B2 (en) | 2014-01-27 | 2016-10-11 | Google Inc. | Anycast based, wide area distributed mapping and load balancing system |
| US9559964B2 (en) | 2014-01-31 | 2017-01-31 | Verizon Digital Media Services Inc. | Control message routing within anycast reliant platforms |
| US9887914B2 (en) | 2014-02-04 | 2018-02-06 | Fastly, Inc. | Communication path selection for content delivery |
| US9300535B2 (en) | 2014-02-20 | 2016-03-29 | Dell Products L.P. | Peer-assisted deployment of resources in a network |
| US9779113B2 (en) | 2014-03-20 | 2017-10-03 | NSONE Inc. | Systems and methods for improving domain name system traffic routing |
| JP6373633B2 (en) | 2014-04-30 | 2018-08-15 | 理想科学工業株式会社 | Image processing apparatus and program |
| US9544388B1 (en) | 2014-05-09 | 2017-01-10 | Amazon Technologies, Inc. | Client-side predictive caching for content |
| US10268492B2 (en) | 2014-05-20 | 2019-04-23 | Amazon Technologies, Inc. | Low latency connections to workspaces in a cloud computing environment |
| CN105338123B (en) * | 2014-05-28 | 2018-10-02 | 国际商业机器公司 | Methods, devices and systems for parsing domain name in a network |
| US10270876B2 (en) | 2014-06-02 | 2019-04-23 | Verizon Digital Media Services Inc. | Probability based caching and eviction |
| KR102185350B1 (en) | 2014-06-10 | 2020-12-01 | 삼성전자주식회사 | Network node and method for operating the network node |
| CN106537345B (en) | 2014-06-13 | 2020-10-13 | 皮沃塔尔软件公司 | Accurately tracking memory usage in a multi-process computing environment |
| WO2015195834A1 (en) | 2014-06-17 | 2015-12-23 | Rangasamy Govind | Resiliency director |
| US10757197B2 (en) | 2014-07-18 | 2020-08-25 | Microsoft Technology Licensing, Llc | Self-extending cloud |
| US9231965B1 (en) | 2014-07-23 | 2016-01-05 | Cisco Technology, Inc. | Traffic segregation in DDoS attack architecture |
| US9444718B2 (en) | 2014-07-28 | 2016-09-13 | Verizon Digital Media Services Inc. | Distributed platform test network |
| US9734659B2 (en) | 2014-08-06 | 2017-08-15 | Mido Play Inc. | Single platform system for multiple jurisdiction lotteries and social media |
| US9760420B1 (en) | 2014-09-03 | 2017-09-12 | Amazon Technologies, Inc. | Fleet host rebuild service implementing vetting, diagnostics, and provisioning pools |
| US20160132600A1 (en) | 2014-11-07 | 2016-05-12 | Shazam Investments Limited | Methods and Systems for Performing Content Recognition for a Surge of Incoming Recognition Queries |
| EP3021534B1 (en) | 2014-11-14 | 2018-01-10 | Telefonica S.A. | A network controller and a computer implemented method for automatically define forwarding rules to configure a computer networking device |
| US10135956B2 (en) | 2014-11-20 | 2018-11-20 | Akamai Technologies, Inc. | Hardware-based packet forwarding for the transport layer |
| US9866650B2 (en) | 2014-12-03 | 2018-01-09 | Verizon Digital Media Services Inc. | Stream monitoring across a distributed platform |
| US9900402B1 (en) | 2014-12-09 | 2018-02-20 | Amazon Technologies, Inc. | Capacity-independent demand assessment |
| US10027739B1 (en) | 2014-12-16 | 2018-07-17 | Amazon Technologies, Inc. | Performance-based content delivery |
| US9769248B1 (en) | 2014-12-16 | 2017-09-19 | Amazon Technologies, Inc. | Performance-based content delivery |
| US10097448B1 (en) | 2014-12-18 | 2018-10-09 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
| US10091096B1 (en) | 2014-12-18 | 2018-10-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
| US10033627B1 (en) | 2014-12-18 | 2018-07-24 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
| US20160182542A1 (en) | 2014-12-18 | 2016-06-23 | Stuart Staniford | Denial of service and other resource exhaustion defense and mitigation using transition tracking |
| US10225365B1 (en) | 2014-12-19 | 2019-03-05 | Amazon Technologies, Inc. | Machine learning based content delivery |
| US10311371B1 (en) | 2014-12-19 | 2019-06-04 | Amazon Technologies, Inc. | Machine learning based content delivery |
| US9426125B2 (en) | 2014-12-22 | 2016-08-23 | Verizon Digital Media Services Inc. | Real-time reconfigurable web application firewall for a distributed platform |
| KR102326282B1 (en) | 2015-02-09 | 2021-11-15 | 한국전자통신연구원 | Apparatus and method for providing streaming contents adaptive to bandwidth |
| US10630771B1 (en) | 2015-02-26 | 2020-04-21 | Akamai Technologies, Inc. | Content delivery network with network storage and support for on-demand content upload |
| US9703713B2 (en) | 2015-02-27 | 2017-07-11 | International Business Machines Corporation | Singleton cache management protocol for hierarchical virtualized storage systems |
| CA2977359A1 (en) | 2015-02-27 | 2016-09-01 | Level 3 Communications, Llc | Network address resolution |
| US9736710B2 (en) | 2015-03-10 | 2017-08-15 | Neumob, Inc. | Mobile accelerator |
| US9582298B2 (en) | 2015-03-20 | 2017-02-28 | Amazon Technologies, Inc. | Executing commands within virtual machine instances |
| US10225326B1 (en) | 2015-03-23 | 2019-03-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
| SG11201802931XA (en) * | 2015-03-25 | 2018-05-30 | Sixscape Communications Pte Ltd | Apparatus and method for managing digital certificates |
| US9887931B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
| US9887932B1 (en) | 2015-03-30 | 2018-02-06 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
| US9819567B1 (en) | 2015-03-30 | 2017-11-14 | Amazon Technologies, Inc. | Traffic surge management for points of presence |
| US9736059B2 (en) | 2015-04-06 | 2017-08-15 | Verizon Digital Media Services Inc. | Purging failover through application controlled transit selection |
| US10033699B2 (en) | 2015-05-08 | 2018-07-24 | Cloudflare, Inc. | Transparent DNSSEC-signing proxy |
| US9832141B1 (en) | 2015-05-13 | 2017-11-28 | Amazon Technologies, Inc. | Routing based request correlation |
| US11057446B2 (en) | 2015-05-14 | 2021-07-06 | Bright Data Ltd. | System and method for streaming content from multiple servers |
| US20180011913A1 (en) | 2015-06-09 | 2018-01-11 | Hewlett Packard Enterprise Development Lp | Data replication management |
| US10476926B2 (en) | 2015-06-12 | 2019-11-12 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for managing ABR bitrate delivery responsive to video buffer characteristics of a client |
| EP3318067B1 (en) | 2015-07-03 | 2022-05-18 | Telefonaktiebolaget LM Ericsson (publ) | A media user client, a media user agent and respective methods performed thereby for providing media from a media server to the media user client |
| US10097566B1 (en) | 2015-07-31 | 2018-10-09 | Amazon Technologies, Inc. | Identifying targets of network attacks |
| US9819763B2 (en) | 2015-08-07 | 2017-11-14 | Fortinet, Inc. | Cache management based on factors relating to replacement cost of data |
| US10185761B2 (en) * | 2015-08-07 | 2019-01-22 | Cisco Technology, Inc. | Domain classification based on domain name system (DNS) traffic |
| US9811451B1 (en) | 2015-09-17 | 2017-11-07 | Amazon Technologies, Inc. | Distributed software testing |
| US9774619B1 (en) | 2015-09-24 | 2017-09-26 | Amazon Technologies, Inc. | Mitigating network attacks |
| US9794281B1 (en) | 2015-09-24 | 2017-10-17 | Amazon Technologies, Inc. | Identifying sources of network attacks |
| US9742795B1 (en) | 2015-09-24 | 2017-08-22 | Amazon Technologies, Inc. | Mitigating network attacks |
| US20170099345A1 (en) | 2015-10-01 | 2017-04-06 | Fastly, Inc. | Content delivery network load balancing |
| US10178065B2 (en) | 2015-10-01 | 2019-01-08 | Fastly Inc. | Enhanced domain name translation in content delivery networks |
| US10031883B2 (en) | 2015-10-16 | 2018-07-24 | International Business Machines Corporation | Cache management in RDMA distributed key/value stores based on atomic operations |
| US10270878B1 (en) | 2015-11-10 | 2019-04-23 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
| US10958444B2 (en) | 2015-11-25 | 2021-03-23 | Akamai Technologies, Inc. | Uniquely identifying and securely communicating with an appliance in an uncontrolled network |
| US10623515B2 (en) * | 2015-12-01 | 2020-04-14 | Fastly, Inc. | Stenographic marking using network addressing |
| US10153905B2 (en) | 2015-12-04 | 2018-12-11 | Verisign, Inc. | Hash-based electronic signatures for data sets such as DNSSEC |
| US10049051B1 (en) | 2015-12-11 | 2018-08-14 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
| US10257307B1 (en) | 2015-12-11 | 2019-04-09 | Amazon Technologies, Inc. | Reserved cache space in content delivery networks |
| US10356038B2 (en) | 2015-12-14 | 2019-07-16 | Microsoft Technology Licensing, Llc | Shared multi-tenant domain name system (DNS) server for virtual networks |
| US9871794B2 (en) | 2015-12-14 | 2018-01-16 | Neustar, Inc. | Domain name system and method of operating using restricted channels |
| US20170180217A1 (en) | 2015-12-18 | 2017-06-22 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data tranmission rates |
| US10348639B2 (en) | 2015-12-18 | 2019-07-09 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
| EP3391628B1 (en) | 2015-12-18 | 2021-08-25 | Amazon Technologies, Inc. | Use of virtual endpoints to improve data transmission rates |
| US11575725B2 (en) | 2015-12-29 | 2023-02-07 | Verizon Patent And Licensing Inc. | Content delivery network streaming optimization |
| US20170214761A1 (en) | 2016-01-21 | 2017-07-27 | National Taiwan University | Method and Wireless Communication System for Processing Data |
| GB201601203D0 (en) | 2016-01-22 | 2016-03-09 | Garlick Anthony | Support arrangement for hanging a flexible line carrying an object from a support structure |
| US10075551B1 (en) | 2016-06-06 | 2018-09-11 | Amazon Technologies, Inc. | Request management for hierarchical cache |
| US10516715B2 (en) | 2016-06-22 | 2019-12-24 | Telefonaktiebolaget Lm Ericsson (Publ) | Network-controlled time-shift live media and advertisement content play for learned ABR video white spot coverage in a streaming network |
| US10110694B1 (en) | 2016-06-29 | 2018-10-23 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
| US9992086B1 (en) | 2016-08-23 | 2018-06-05 | Amazon Technologies, Inc. | External health checking of virtual private cloud network environments |
| US10033691B1 (en) | 2016-08-24 | 2018-07-24 | Amazon Technologies, Inc. | Adaptive resolution of domain name requests in virtual private cloud network environments |
| US10397136B2 (en) | 2016-08-27 | 2019-08-27 | Nicira, Inc. | Managed forwarding element executing in separate namespace of public cloud data compute node than workload application |
| US10904203B2 (en) | 2016-09-09 | 2021-01-26 | Arbor Networks, Inc. | Augmenting network flow with passive DNS information |
| EP3296828B1 (en) * | 2016-09-15 | 2022-08-24 | Siemens Aktiengesellschaft | Method for providing an expanded name service for an industrial automation system |
| US10469513B2 (en) | 2016-10-05 | 2019-11-05 | Amazon Technologies, Inc. | Encrypted network addresses |
| US20180173526A1 (en) | 2016-12-20 | 2018-06-21 | Invensys Systems, Inc. | Application lifecycle management system |
| US10831549B1 (en) | 2016-12-27 | 2020-11-10 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
| US10372499B1 (en) | 2016-12-27 | 2019-08-06 | Amazon Technologies, Inc. | Efficient region selection system for executing request-driven code |
| US10938884B1 (en) | 2017-01-30 | 2021-03-02 | Amazon Technologies, Inc. | Origin server cloaking using virtual private cloud network environments |
| US10447648B2 (en) | 2017-06-19 | 2019-10-15 | Amazon Technologies, Inc. | Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP |
| US10742593B1 (en) | 2017-09-25 | 2020-08-11 | Amazon Technologies, Inc. | Hybrid content request routing system |
| US10862852B1 (en) | 2018-11-16 | 2020-12-08 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
| US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
-
2016
- 2016-12-22 US US15/389,314 patent/US10469513B2/en active Active
- 2016-12-22 US US15/389,302 patent/US10505961B2/en active Active
- 2016-12-22 US US15/389,276 patent/US10616250B2/en active Active
-
2017
- 2017-10-04 CN CN201780068210.6A patent/CN109983752B/en active Active
- 2017-10-04 WO PCT/US2017/055156 patent/WO2018067710A1/en not_active Ceased
-
2020
- 2020-02-24 US US16/799,625 patent/US11330008B2/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020083198A1 (en) * | 2000-12-27 | 2002-06-27 | Yong-Woon Kim | Method of automatically generating IPv6 address using E.164 telephone number and of looking up IP address assigned to E.164 telephone number |
| US20090043900A1 (en) * | 2007-08-09 | 2009-02-12 | Barber Timothy P | System and method for establishing unique sessions for DNS subscribers |
| US9584328B1 (en) * | 2015-10-05 | 2017-02-28 | Cloudflare, Inc. | Embedding information or information identifier in an IPv6 address |
| US20170155678A1 (en) * | 2015-12-01 | 2017-06-01 | Fastly, Inc. | Attack mitigation in content delivery networks using stenographic network addressing |
| US20170153980A1 (en) * | 2015-12-01 | 2017-06-01 | Fastly, Inc. | Anonymized network addressing in content delivery networks |
Also Published As
| Publication number | Publication date |
|---|---|
| US20200195677A1 (en) | 2020-06-18 |
| US20180097831A1 (en) | 2018-04-05 |
| US11330008B2 (en) | 2022-05-10 |
| US10505961B2 (en) | 2019-12-10 |
| CN109983752A (en) | 2019-07-05 |
| CN109983752B (en) | 2022-02-25 |
| US20180097631A1 (en) | 2018-04-05 |
| US10616250B2 (en) | 2020-04-07 |
| US20180097634A1 (en) | 2018-04-05 |
| US10469513B2 (en) | 2019-11-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11330008B2 (en) | Network addresses with encoded DNS-level information | |
| Ahmed et al. | IPv6 neighbor discovery protocol specifications, threats and countermeasures: a survey | |
| JP5291725B2 (en) | IP address delegation | |
| US7620733B1 (en) | DNS anti-spoofing using UDP | |
| US20160149711A1 (en) | Distributed identification system for peer to peer message transmission | |
| CN107666383A (en) | Message processing method and device based on HTTPS agreements | |
| KR20150141362A (en) | Network node and method for operating the network node | |
| WO2014139444A1 (en) | Augmenting name/prefix based routing protocols with trust anchor in information-centric networks | |
| CN104468865A (en) | Domain name resolution control and response methods and corresponding device | |
| EP3442195B1 (en) | Reliable and secure parsing of packets | |
| US9680818B2 (en) | Method and apparatus for bulk authentication and load balancing of networked appliances | |
| US10142306B1 (en) | Methods for providing a secure network channel and devices thereof | |
| US10601443B1 (en) | Protocol for lightweight and provable secure communication for constrained devices | |
| Rathore et al. | Simple, secure, efficient, lightweight and token based protocol for mutual authentication in wireless sensor networks | |
| El Ksimi et al. | Towards a new algorithm to optimize IPv6 neighbor discovery security for small objects networks | |
| Herzberg et al. | Less is more: cipher-suite negotiation for DNSSEC | |
| Liu et al. | A survey on ipv6 security threats and defense mechanisms | |
| Herzberg et al. | Cipher-suite negotiation for dnssec: Hop-by-hop or end-to-end? | |
| US8978143B2 (en) | Reverse authorized SYN cookie | |
| Srinivasan et al. | XTRA—eXtended bit-Torrent pRotocol for Authenticated covert peer communication: Authenticated covert P2P communication | |
| El Ksimi et al. | An enhancement approach for securing neighbor discovery in IPv6 networks | |
| Meng et al. | Establish the intrinsic binding in naming space for future internet using combined public key | |
| Bansal et al. | Survey on domain name system security problems-DNS and blockchain solutions | |
| El Ksimi et al. | A new mechanism to secure IPv6 networks using symmetric cryptography | |
| Rui et al. | Network access control mechanism based on locator/identifier split |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17788012 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 17788012 Country of ref document: EP Kind code of ref document: A1 |