Randomizing HTTP Proxy Server for Web Crawling Detection Prevention

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web crawlers can be detected and blocked by website owners due to the high number of similar HTTP requests originating from the same IP address, which hampers activities like law enforcement's efforts to locate illegal content online.

Innovation Solution

A randomizing HTTP proxy server system that forwards outgoing TCP connections through multiple IP addresses, using multiple Internet service providers and Network Address Translation algorithms to associate each request with a different source IP address, preventing detection by the web server.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a web crawler issues multiple HTTP requests to scan a target website, then the crawling activity can be performed, but the web server can detect and block the crawler based on multiple requests originating from the same IP address

Engineering Contradiction:
Improveweb crawling capabilityVSAvoiddetection and blocking by web server
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The system segments the single IP address into multiple IP addresses by routing requests through multiple HTTP proxy computing units, each with its own IP address. This allows the web crawler to maintain high productivity while avoiding detection, as each request appears to originate from a different IP address rather than the same source

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The randomizing HTTP proxy server acts as an intermediary between the web crawler and the target website. It receives requests from the crawler, randomly selects appropriate HTTP proxy computing units to forward requests through, and manages the IP address mapping. This intermediary layer prevents the web server from directly identifying the crawler's true IP address while maintaining crawling functionality

Inventive Principle:
Principle #24Intermediary (Mediator)

2Object-affected harmful factors

If multiple HTTP proxy computing units are used to prevent detection, then web crawling can remain undetected, but the system complexity increases

Engineering Contradiction:
Improvedetection preventionVSAvoidproxy server system structure
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

The randomizing HTTP proxy server performs multiple functions: it manages the pool of HTTP proxy computing units, randomly selects appropriate units for each request, performs IP address mapping, and routes traffic. This multi-functional design consolidates what could be separate complex systems into a single coordinated server, managing detection prevention through centralized control rather than distributed complexity

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system dynamically changes the IP address parameter for each request by randomly selecting different HTTP proxy computing units. This parameter change approach allows the same web crawler to appear as multiple different sources, preventing detection based on IP address patterns while maintaining a relatively simple system architecture through software-based randomization rather than hardware complexity

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7953868B2Method and system for preventing web crawling detection
Publication Date: 2011.05.31 RAKUTEN GROUP INC
  • US7953868B2 patent drawing
  • US7953868B2 patent drawing
  • US7953868B2 patent drawing

AI summary

A method and system for preventing a detection of web crawling. A randomizing HTTP proxy server receives a first request from a web crawler to scan a website and forwards the first request to a randomly selected first proxy computer. The first proxy computer utilizes a first network address translation (NAT)-enabled router to forward the first request to the website. A NAT algorithm associates a first source Internet Protocol (IP) address with the first request. The randomizing HTTP proxy server receives a second web crawler-initiated request to scan the website and forwards the second request to a randomly selected second proxy computer. The second proxy computer utilizes a second NAT-enabled router to forward the second request to the website. The NAT algorithm associates a second source IP address with the second request. The web server identifies the first and second source IP addresses as being different.