IP Address Virtualization for Terminal Server Sessions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In a terminal server environment, all applications share a single IP address, preventing simultaneous instances of applications that use IP addresses for identification purposes, and posing challenges for tracking user sessions and configuring access control.

Innovation Solution

Implementing IP address virtualization techniques that allow each terminal server session or application to have a unique virtual IP address, using a client component with a layer service provider and name service provider to intercept socket calls and manage virtual IP addresses from a server component, which allocates and manages these addresses from DHCP or static pools.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If all applications in a terminal server session share a single IP address, then the terminal server environment maintains simplicity and resource efficiency, but applications that require unique IP addresses for identification and tracking cannot run simultaneously

Engineering Contradiction:
Improveapplication compatibilityVSAvoidIP address management
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates virtual copies of IP addresses by assigning virtual IP addresses to terminal server sessions. These virtual IP addresses are not physical but logical representations that allow multiple applications to have unique identifiers while sharing the same physical network infrastructure. The virtual IP address manager allocates these virtual addresses from a pool, enabling application identification and tracking without requiring separate physical IP addresses for each application instance.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent introduces a virtual IP address manager as an intermediary component between the terminal server sessions and the network. This manager mediates IP address allocation and management, assigning virtual IP addresses to sessions and handling the mapping between virtual and physical addresses. The intermediary layer abstracts the complexity of IP management from individual applications while providing them with unique identifiers.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If multiple terminal server sessions share the same IP address, then network resources are optimized and simplified, but ISP requirements for tracking network usage and configuring access control per user cannot be met

Engineering Contradiction:
Improveuser session tracking capabilityVSAvoidIP address allocation system
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The system creates virtual copies of IP addresses that can be allocated to different terminal server sessions. These virtual IP addresses serve as unique identifiers for tracking user sessions and network usage by ISPs. The virtual IP address manager maintains a pool of virtual addresses and assigns them to sessions, enabling information tracking while sharing physical network resources.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent segments the IP address space into virtual IP addresses that can be independently allocated to different terminal server sessions. This segmentation allows each session to have its own unique virtual identifier for tracking purposes, while the physical network infrastructure remains shared. The virtual IP address manager handles the segmentation and allocation process.

Inventive Principle:
Principle #1Segmentation

3Reliability

If virtual IP addresses are assigned to all applications, then unique identification and tracking are enabled, but systems with multiple network adapters may experience undesirable side effects

Engineering Contradiction:
Improvenetwork communication stabilityVSAvoidside effects from multiple network adapters
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent applies local quality by selectively assigning virtual IP addresses based on the specific characteristics and requirements of each terminal server session. Not all applications or sessions receive virtual IP addresses - only those that require unique identification and tracking. The virtual IP address manager evaluates each session's needs and assigns virtual addresses accordingly, avoiding unnecessary assignments that could cause problems in systems with multiple network adapters.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9237175B2Internet protocol (IP) address virtualization for terminal server sessions
Publication Date: 2016.01.12 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9237175B2 patent drawing
  • US9237175B2 patent drawing
  • US9237175B2 patent drawing

AI summary

Techniques are disclosed for virtualizing internet protocol (IP) addresses in terminal server sessions. A client component comprises a layer service provider (LSP) and a name service provider (NSP) that intercept a socket call to associate a port with a socket for a terminal server session. The client component queries a server component for a virtual IP address, and the server component determines whether the terminal server session can use a virtual IP address. Where the session can use a virtual IP address, the server returns a virtual IP address and the client component binds the socket call to the virtual IP address. Where the session cannot use a virtual IP address, the server returns an indication of that, and the client component acts as a proxy for that socket call and any future calls for that socket.