Virtual Environment Concurrency via Regional Server Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current virtual environment systems struggle to scale for multiple users, leading to reduced real-time interaction and potential freezing due to overloaded computing resources, especially when many users converge in a shared region, and are limited by the single-server game-centric design.

Innovation Solution

Implementing a player-centric design with multiple virtual environment servers and a common backend to manage user states, where each single player client receives and transmits chunks of world data, updates state data periodically, and stores it in a database, allowing for efficient concurrency and distribution of user interactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single server is used to host the shared virtual environment, then the system architecture is simple, but the system cannot support a large number of concurrent users and may freeze when users converge in a small region

Engineering Contradiction:
Improvesystem architectureVSAvoidconcurrent user capacity
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent divides the single virtual environment into multiple region-specific sub-environments, each hosted on a separate server. This segmentation allows the system to distribute user loads across multiple servers rather than concentrating all users on a single server, thereby increasing concurrent user capacity while maintaining manageable architecture complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension to the architecture by adding regional segmentation across multiple servers. Instead of scaling vertically (adding more capacity to a single server), the system scales horizontally by adding regional dimensions, allowing multiple servers to handle different geographic or logical regions simultaneously.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If multiple users share the same virtual environment, then user interaction is enabled, but computing resources become overloaded when users assemble in a small shared region

Engineering Contradiction:
Improveuser interaction capabilityVSAvoidsystem stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies local quality by creating region-specific virtual environments with tailored computing resources. Each region can be optimized independently for its specific user density and interaction patterns, allowing high-user regions to have dedicated resources while maintaining system stability even when users converge in particular areas.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

By segmenting the user base into different regional sub-environments, the patent prevents resource overload in any single region. When users assemble in a small shared region, their computing demands are isolated to that specific region's servers rather than affecting the entire system, maintaining overall reliability.

Inventive Principle:
Principle #1Segmentation

3Ease of operation

If traffic is distributed across multiple proxies and coalesced to a single server, then user traffic management is improved, but the single server becomes a bottleneck for processing all user states

Engineering Contradiction:
Improvetraffic managementVSAvoiduser state processing capacity
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments both traffic management and user state processing across multiple regional servers. Each server handles traffic and state data for its specific region independently, eliminating the single-server bottleneck. This maintains ease of operation through distributed management while dramatically increasing total user state processing capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a single-dimensional traffic flow (all users to one server) to a multi-dimensional architecture where traffic is distributed across multiple regional servers. Each server operates independently in its own dimensional space, allowing parallel processing of user states without creating a central bottleneck.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Productivity

If a player-centric design is implemented with multiple servers, then concurrent user capacity increases, but system complexity increases

Engineering Contradiction:
Improveconcurrent user supportVSAvoidmulti-server architecture
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent uses segmentation to divide the player-centric virtual environment into multiple independent regional sub-environments. Each region operates as a self-contained unit with its own server, allowing the system to support more concurrent users while keeping each individual server's complexity manageable through clear functional separation.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11481373B2Systems, methods, and computer-readable media for improved concurrency of users of a shared virtual environment
Publication Date: 2022.10.25 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11481373B2 patent drawing
  • US11481373B2 patent drawing
  • US11481373B2 patent drawing

AI summary

Systems, methods, and computer-readable storage devices are disclosed for improved concurrency of users of a shared virtual environment. One method including: transmitting, to each single player client of, chunks of world chunk data of a shared virtual environment; receiving, at one or more virtual environment servers from each single player client connected to the shared virtual environment, state data of each user of a respective single player client connected to the shared virtual environment, wherein the single player client of each user manages state data of the user within the one or more virtual environment servers; periodically monitoring, from each user of the single player client connected to the shared virtual environment, updated state data for the user of a respective single player client connected to the shared virtual environment; storing, for the shared virtual environment in a database connected to one or more virtual environment servers, the updated state data for each user of the single player client; and periodically transmitting, for each user of the single player client, the updated state data of other users of the single player client within a predetermined distance of the user of the single player client.