1 Content positioning
With the proposal of the next generation Internet, many key technologies are being applied more and more widely. The purpose of CDN (Content Distribution Network) technology is to solve the contradiction between the overall bandwidth surplus and local bandwidth shortage of the Internet, and provide users with better services. CDN is a special network built and covered on the Internet, which is specially used to efficiently deliver rich multimedia content through the Internet. CDN can enable website content to be released to the “edge” of the network closest to users, so that users can obtain the required content nearby, improve the efficiency of information flow in the Internet, technically comprehensively solve the “congestion” caused by small network bandwidth, large user visits, and uneven distribution of outlets, and improve the response speed of users when visiting websites.
The user content retrieval time RTT consists of two parts: the time for content localization and the time for content servers (CS) to provide content. Improving content localization efficiency is more important in high-speed networks. At present, the method that supports content localization is DNS services, which have become increasingly unsuitable for content localization. Its main shortcomings include: (1) When cache misses occur, customers need to access the DNS root server to obtain the address of the authorized name server for the site, and query the authorized name server to obtain the address of the content server near the customer. The time from accessing the DNS root server to obtaining the content server address is completely an additional overhead, which affects system performance. When the network data transmission speed increases to the Gbps level, this problem becomes particularly prominent. (2) DNS based content localization systems generally use short lifetime on address records returned to customers, but this can cause customers to send name requests more frequently, increase the load on DNS servers, and thus increase network latency. (3) A system that only uses network level metrics will not respond to application level failures, so user requests may be continuously directed to the same unresponsive web server. (4) Due to the fact that content providers must use indirect methods to determine which content server users access, there is a problem of selecting multiple paths.
2 Name based routing
DNS is the abbreviation for Domain Name System, RED521 1MRK002003-BA. It consists of a parser and a domain name server. A domain name server refers to a server that stores the domain names and corresponding IP addresses of all hosts in the network, and has the ability to convert domain names into IP addresses. The domain name must correspond to an IP address, and an IP address may not necessarily have a domain name. The domain name system adopts a hierarchical structure similar to a directory tree. A domain name server is the server side in the client/server model, which mainly takes two forms: the main server and the forwarding server. The process of mapping domain names to IP addresses is called “domain name resolution”. On the Internet, domain names and IP addresses are one-to-one (or many to one), and although domain names are easy for people to remember, machines can only recognize each other’s IP addresses. The conversion between them is called domain name resolution, which requires a dedicated domain name resolution server to complete. DNS is the server that performs domain name resolution.
Due to the low efficiency of locating content based on DNS services, name based routing technology is introduced. Based on name routing technology, the problem of content localization is regarded as a routing problem. Its guiding principle is that the user’s desired connectivity is not to a specific server or IP address, but to connect some content specified by name (usually URL). The replicated content server in this way can be seen as an alternative route for accessing content. The schematic diagram of content layer routing is shown in Figure 1. Assuming that each server has content that needs to be retrieved, users can choose to retrieve it through server 1, server 2, or server 3.
Name based routing is actually executed by Content Routers (CRs) that support naming, which operate like regular IP routers and name servers and participate in both IP based and name based routing, forming the foundation of the content layer. Most content routers are firewalls, gateways, and BGP level routers. Name based routing requires adding two new protocols to the existing Internet: Internet Name Resolution Protocol (INRP) and Name based Routing Protocol (NBRP).
2.1 Name search
When using name routing, name lookup is supported by the INRP protocol in RED521 1MRK002003-BA. INRP is compatible with DNS and has the same record type and packet format as DNS, but with different meanings. The customer connects to a local router to initiate a content request, just like connecting to a pre-set DNS server. The customer’s request can include the entire URL or only the “server” information of the URL.
There are several core items in the routing table of each content router:
(1) Name. Represented in URL format (such as example, com, cn), used to identify the content server or its replica on the CDN.
(2) NextHop. is used to identify the IP address of the next peer.
(3) Path. is used to identify the time of arrival at the content server and provide parameters for selecting a path for the content router.
Each content router maintains a mapping set from a name to the next hop, just like an IP router maintains a mapping set from an address prefix to the next hop. When an INRP request arrives, the content router will search for the longest suffix in the routing table based on the requested content name, and then select the next content router peer based on the policy of the shortest latency to reach the destination content server. In this way, INRP requests are directed to the nearest content server inferred by the routing algorithm. The routing diagram of INRP is shown in Figure 2. When the INRP request reaches the last router near the destination content server, this router returns a reply message containing the address of the destination content server. If there is no response from the content router or content server, the intermediate content router will choose an alternative route and search for the name again. In this way, user requests can be directed to the requested content through the best routing and can be recovered from expired content servers or outdated routing information, allowing INRP to handle any situation at the content layer.