HubLensRustbytedance/g3
// archived 2026-04-19
bytedance

g3

Infra#Rust#Proxy#Load Balancer#Networking#TLS
View on GitHub
857

// summary

The G3 project provides a collection of enterprise-oriented networking tools built with asynchronous Rust for high performance and reliability. Its primary component, g3proxy, offers advanced features including proxy chaining, TLS interception, and granular traffic control. The suite also includes specialized utilities for benchmarking, certificate generation, and statistical aggregation to support complex infrastructure needs.

// technical analysis

The G3 Project is a collection of enterprise-oriented networking tools built primarily in Rust, focusing on high-performance proxying, load balancing, and traffic analysis. By leveraging asynchronous Rust, the project provides a reliable and scalable architecture capable of handling complex traffic interception, TLS MITM, and protocol-specific adaptation. This modular design allows users to deploy specialized components like g3proxy for traffic management or g3bench for performance testing, addressing the need for robust, production-grade infrastructure in diverse network environments.

// key highlights

01
Utilizes asynchronous Rust to ensure high-performance and reliable network traffic processing.
02
Supports advanced TLS MITM interception and traffic decryption for protocols including HTTP, IMAP, and SMTP.
03
Provides flexible proxy chaining and dynamic egress route selection to optimize traffic flow.
04
Integrates ICAP adaptation to allow seamless connection with third-party security and inspection products.
05
Offers granular control through comprehensive ACLs, user-level configuration, and detailed monitoring metrics.
06
Includes a versatile benchmarking tool, g3bench, that supports modern protocols like HTTP/3, DNS over QUIC, and Thrift RPC.

// use cases

01
High-performance forward and reverse proxying with support for multiple protocols and TLS interception
02
Comprehensive network benchmarking for HTTP, DNS, and RPC services
03
Automated certificate management and IP location lookup services for proxy infrastructure

// getting started

To begin using the G3 project, developers should first consult the dev-setup guide located in the doc directory to configure their local environment. Users can explore specific applications by navigating to their respective subdirectories, such as g3proxy or g3bench, where individual README files and user guides are provided. For deployment, pre-built packages are available on Cloudsmith, though building from source is recommended for custom requirements.