SDN Resource Allocation for Client Geographic Movement
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Content delivery networks (CDNs) are unable to customize resource allocation for specific clients or react to changes in a client's location until a request is made, leading to inefficiencies in data caching and resource management.
Innovation Solution
Implementing software-defined networking (SDN) to monitor client geographic movements and reallocate resources based on these movements, using APIs to identify clients and predict their locations, allowing for proactive caching and resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If CDN caches data based on perceived client location using IP address, then data can be delivered closer to the client, but the CDN cannot identify specific client identity or react to location changes until a request is made
Solution Approach 1:
The system performs preliminary actions by identifying the client device and predicting its future geographic location before the client actually requests content. This allows the CDN to proactively cache data at the predicted location in advance, rather than waiting for a request to be made. The client identification module assigns unique identifiers to devices, and the location prediction module uses historical movement data to forecast where the client will be, enabling pre-positioning of content.
Solution Approach 2:
The system implements feedback mechanisms by continuously monitoring client device movements and using this information to dynamically adjust caching strategies. The location prediction module receives feedback from GPS coordinates and network location data, refining its predictions over time. This feedback loop enables the CDN to adapt to changing client behaviors and optimize content placement based on actual movement patterns rather than static IP-based assumptions.
2Productivity
If CDN waits for client request before caching data, then resource allocation is demand-driven, but latency occurs and client-specific needs cannot be met
Solution Approach 1:
The system performs preliminary caching actions by predicting client location and pre-caching data before the client actually requests content. The prediction module analyzes historical GPS data and movement patterns to forecast where the client will be within a predicted time period, allowing the CDN to proactively store content at edge servers in that location. This eliminates the waiting period between request and caching, reducing latency while maintaining demand-driven resource allocation through intelligent prediction.
3Device complexity
If CDN uses static IP-based location estimation, then implementation is simple, but the system cannot track client movement or provide customized service
Solution Approach 1:
The system introduces an intermediary client identification module that sits between the CDN infrastructure and the client device. This module assigns unique identifiers to client devices and collects GPS coordinates and location data, acting as a mediator that bridges the simple CDN caching mechanism with sophisticated location tracking capabilities. The intermediary handles the complexity of movement tracking and prediction, allowing the core CDN system to remain relatively simple while gaining advanced location-aware functionality.
Data Source
Figure 1
Figure 2
Figure 3A~3B
AI summary
Embodiments described herein use APIs on network devices in a SDN enabled network to monitor the network traffic flowing through the network devices and determine an identity of the client initiating the network traffic. Specifically, the APIs provide a user application with user credentials, IP addresses, MAC addresses, and other identifying information mined from the network flows. Once the identity is found, the application may identify the client's current geographic location. The network devices may continue to monitor the network devices to identify any movement events associated with the client. In response to a movement event, the application may reallocate resources proximate to the new geographic location of the client.