HTTPTunnel

超详细Netty入门,看这篇就够了!

旧街凉风 提交于 2020-08-13 16:16:38
简介: 本文主要讲述Netty框架的一些特性以及重要组件,希望看完之后能对Netty框架有一个比较直观的感受,希望能帮助读者快速入门Netty,减少一些弯路。 思维导图 前言 本文主要讲述Netty框架的一些特性以及重要组件,希望看完之后能对Netty框架有一个比较直观的感受,希望能帮助读者快速入门Netty,减少一些弯路。 一、Netty概述 官方的介绍: Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty 是 一个 异步事件驱动 的网络应用程序框架,用于 快速开发可维护的高性能协议服务器和客户端 。 二、为什么使用Netty 从官网上介绍,Netty是一个网络应用程序框架,开发服务器和客户端。也就是用于网络编程的一个框架。既然是网络编程,Socket就不谈了,为什么不用NIO呢? 2.1 NIO的缺点 对于这个问题,之前我写了一篇文章 《NIO入门》 对NIO有比较详细的介绍,NIO的主要问题是: NIO的类库和API繁杂,学习成本高,你需要熟练掌握Selector、ServerSocketChannel

Java HTTP&Socksv5 隧道代理方案

北战南征 提交于 2019-12-06 16:38:39
一.名词解释 代理服务器: 通常意义上说的是,通过第三方途径到达目标服务器,以及和目标服务器通信的手段。 这种服务器同时具有客户端和服务端 的属性, 客户端用来和目标服务器交互 , 服务端用来和客户端交互 。 Tunnel: 隧道的意思,本篇指的是基于TLS/SSL的隧道代理通道 HTTP&SOCKS v5: HTTP和Socks v5不同于基于网络硬件的VPN技术,而是在应用层和传输层上实现的协议。对于非Tunnel模式下,前者是基于HTTP实现的透明代理,后者Socks v5直接基于TCP/UDP协议实现,也就是说,后者可以完成更多网络代理,如FTP,SSH,MAIL,SOCKET,HTTP等代理。前者可以实现的,后者完全可以实现,后者可以用在各种环境中,比如代理QQ聊天等,代理HTTP的ShadowSocks。 HTTP透明代理: HTTP可以代理非CONNECT的GET,POST,PUT,DELETE,OPTIONS等请求,这种称为透明代理,实现起来非常容易。 SOCKS v5透明代理: 默认情况下,SOCKS v5直接通过自身协议,而不通过TLS/SSL进行数据交换的问题。 二.HTTP&SOCKS v5隧道问题 HTTP&SOCKS v5隧道实质上说的是代理HTTPS或者其他TLS/SSL的网络请求,透明代理的实现如下。 [ 客户端 ] ----------------