CDN

Content Delivery Network

Definition

CDN (Content Delivery Network) caches static resources, portal pages, API responses, etc., to the nearest user nodes by deploying edge nodes worldwide, accelerating global access, reducing origin server pressure, and improving availability. In ICMP, CDN works together with Edge Location and Multi-Region to ensure low-latency access to customer portals, consoles, RESTful API documentation, and more worldwide.

Technical Principle

CDN uses DNS intelligent resolution to route user requests to the nearest edge node; if the edge node has a cache, it returns directly; otherwise, it fetches from the origin and caches it. It supports static resources (JS, CSS, images), dynamic content acceleration, HTTPS offloading, DDoS protection, and more. Customers of the cross-border IoT platform are distributed globally, and CDN can significantly reduce first-screen load times and API latency in regions such as Asia-Pacific, Europe, and the Americas, improving user experience.

Application in ICMP

SimtoLink ICMP uses CDN acceleration for: customer portal and console pages; SDK, documentation, Swagger and other static resources; some read-heavy and write-light API responses. Combined with Multi-Region deployment and Region Failover, CDN can be configured with multiple origin servers and failover to ensure high availability. Sensitive APIs and billing-related interfaces usually bypass the CDN and go directly to the origin to ensure data consistency and security.

Selection and Compliance

When selecting a CDN, considerations should include node coverage, compliance requirements, and cost. In cross-border scenarios, attention needs to be paid to Data Residency and Data Localization: some countries require that data not leave the country, so CDN caching strategies must avoid caching sensitive data to overseas nodes; localized CDNs or edge computing nodes can be chosen to meet regulatory requirements.

What a cache hit and an origin fetch each depend on

A content delivery network places objects that can be read repeatedly on nodes closer to the visitor. A request is first resolved to a node. If the node holds a copy that has not expired, it returns that copy. That is a hit. If there is no copy, or the copy has expired, the node pulls from the origin and stores it according to the rules. That is an origin fetch. The decision depends on the cache key and the lifetime. The cache key usually includes the address, query parameters, and the headers that matter. Omit one parameter, and different customers receive the same copy. Include a parameter that changes on every request, and the cache never hits.

It speeds up distribution of content. It does not change the business data on the origin. After the origin is updated, the edge copy remains until the lifetime ends, unless it is purged. Documents, scripts, and images are suitable. A freshly generated invoice, real-time usage, and the result of a write are not something to leave to a lifetime and hope. The footprint of the nodes says where access enters. It does not say where data may be stored.

Which platform content may sit on a delivery node

What may sit on a node is content every visitor sees the same way, and that is either public or distinguished only by address: console scripts and styles, help images with no customer data, software-development-kit installers, and public API documentation. These objects change rarely, and one purge is enough. A public help page that is read often and written rarely can be cached briefly, but the page must not embed a customer’s SIM number or balance.

What should not sit on a node is identity tokens, sessions, invoices, detail records, card-diagnostic results, and any API response that varies by tenant. Even if the response looks like a “query,” once the content depends on who is signed in, the cache key would have to contain an identity that cannot be guessed, and going straight to the origin is usually the sounder choice. Together with an edge location, encryption offload and static files can stay at the edge, while billing queries stay at the regional origin. Content that must follow data residency must also be limited to nodes inside the agreed region. Do not copy it outside the region merely to be nearby.

The risk of caching invoice and token responses

Caching an invoice API by address is the most serious way the delivery layer mixes up data. If a later user hits an earlier user’s copy, they see someone else’s amounts and SIM identifiers. If a token response is cached, a later caller may receive an access credential that is still valid. Once personal data is on an edge disk, a business deletion leaves the copy until it expires or is purged. The deletion request has not really finished.

Another error is a cache key that ignores the customer number or billing period in the query string, so every customer shares one “usage this month.” After the origin urgently corrects a wrong document, the edge keeps serving the old file until the lifetime ends, and customers integrate against the old fields. A purge of only one region’s nodes leaves other regions serving the old copy. Marking a dynamic API as cacheable for a long time lets a later read cover the result of a write. Before launch, check the cache key, the lifetime, and whether the object may land on an edge disk. Authenticated APIs are not cached by default. If data has been mixed, invalidate the affected addresses immediately, then find out whether the key design was wrong or a response header marked private content as public.

Purge by object, not by the whole site. Invalidating every customer’s static assets because one API document changed floods the origin at once. Changing the file on the origin and not telling the nodes leaves the edge serving the old field description, and integrations fail against an expired document. If an address with query parameters includes a random number, the cache never hits, the delivery layer does nothing, and latency is still decided by the origin. After launch, sample the cache status and age in the response headers, and confirm that hits are the objects you expected. Response headers on private APIs should explicitly forbid shared caches. Do not rely on a node “not caching by default.”

Related Terms

Return to International IoT Cloud Platform Terminology