TCP的请求代理与报文转发

HTTP做请求代理和TCP请求代理模式的区别
TCP请求代理模式运行在ISO/OSI网络结构的4层上面,而使用HTTP做请求代理时运行在7层上。
TCP的代理做的工作是:接收请求,选择后端节点,连接后端节点,转发内容;可以将上层其他协议的报文直接转发至后端RS。
HTTP代理的工作是:接收请求,解析请求,根据转发规则选择backend pool,根据ULB算法选择后端节点,连接后端节点,接收响应,解析响应头,添加适当的响应头(如Set-cookie等),返回响应内容给客户端。

TCP请求代理模式与TCP报文转发模式的区别
请求代理需要维护客户端到ULB和ULB到后端节点的两个TCP连接(需要经历两次TCP握手),而报文转发只需要对报文的解析和转发,少去了连接建立的开销,这样报文转发的效率高于请求代理模式多个数量级。

使用报文转发方式同时具有一些其他限制:

1、TCP报文转发模式不能支持同一个后端RS监听不同的端口,请求代理模式下并无此限制。

2、TCP报文转发模式的后端必须配置ULB的VIP,而TCP的请求代理模式则无需此配置。

故建议用户如不在一个RS上监听多个端口的需求,则可选择报文转发模式。

连接空闲超时
在第一次发包后连接将会保持60秒,如果距上一次发包60秒内没有新的TCP包,连接将会断开。

时间: 2024-10-11 07:10:40

TCP的请求代理与报文转发的相关文章

nginx1.9+做TCP代理(端口转发)

如题所示,nginx在1.9版本之后可以充当端口转发的作用,即:访问该服务器的指定端口,nginx就可以充当端口转发的作用将流量导向另一个服务器,同时获取目标服务器的返回数据并返回给请求者.nginx的TCP代理功能跟nginx的反向代理不同的是:请求该端口的所有流量都会转发到目标服务器,而在反向代理中可以细化哪些请求分发给哪些服务器:另一个不同的是,nginx做TCP代理并不仅仅局限于WEB的URL请求,还可以转发如memcached.MySQL等点到点的请求 实现步骤如下: (1)nginx

前端跨域方案-跨域请求代理(asp.net handler)

现在技术开发偏向于使用统一的接口处理浏览器或者app的http请求. 大家都知道因为浏览器的同源策略的原因 js直接请求webapi 接口会有一些问题,即使做好服务器端的配置 同样会有不少的 问题  并且会有浏览器的兼容性 而使用jsonp 又需要服务器端对返回数据做相关处理 所以考虑考虑使用代理来解决前端跨域请求的问题. 代理程序走asp.net的一般处理程序,来实现前端js请求的接受然后转发到api站点. 关键点: 1.使用url参数的方式传送api接口的站点路径 http://test.m

请求代理机制

1 // 请求代理机制: 2 proxyTable: { 3 '/api/**': {//当你的请求是以api开头的时候,将请求转发到当前服务器的8088端口上,只是路径做一个替换,pathRewrite 4 target: 'http://localhost:8088/', 5 pathRewrite:{ 6 '^/api': '/static/mock'//一旦你的请求是以api开头的,就转接到/static/mock这个文件夹下:这个功能是webpack-dev-server提供的 7 }

「SSH 黑魔法」: 代理、端口转发和 shell 共享

在好朋友的推荐下,我看了这个视频: The Black Magic Of SSH 这个视频里面,介绍了  ssh 的一些高级应用:结合工作的经历,两类问题会对我们平时的工作帮助很大: 1. 两个人怎么看同一个终端界面 2. 怎样用一台服务器做端口转发 Shell 共享 你可以把这个问题看成一个字符版的 vnc 或者 RDP,比如你的机器遇到了一个问题,但是又想看一下大牛是如何处理的:或者你需要别人手把手的想你演示一些东西,这个时候需要你和大牛同时看到同一个 shell 终端. 严格地说这个解决方

报文转发简介

1.二层转发  这里讨论以太报文的二层转发,即基于MAC地址的转发.一般在交换机的二层口(说明1)上,通过MAC层将接口设置为支持混杂模式(说明2),性能允许(说明4)的情况下,将所有报文上送CPU,接口上收到报文以后,对于合法报文(说明3)(说明5),首先检查该MAC地址对目的MAC为0xFFFFFFFF的广播报文在VLAN内进行广播,对MAC地址第一个字节BIT0为1的多播报文,按照多播报文处理.对于单波报文,先查MAC地址表,如果查到,则将报文发往相应的接口:如果未查到,未知单播向VLAN

vue.js学习之 跨域请求代理与axios传参

vue.js学习之 跨域请求代理与axios传参 一:跨域请求代理 1:打开config/index.js module.exports{ dev: { } } 在这里面找到proxyTable{},改为这样: proxyTable: { '/api': { target: 'http://121.41.130.58:9090',//设置你调用的接口域名和端口号 别忘了加http changeOrigin: true, pathRewrite: { '^/api': ''//这里理解成用'/ap

http请求代理类

一.http请求代理类 public class HttpProxy { /// <summary> /// get请求 /// </summary> /// <param name="url">接口地址</param> /// <returns></returns> public static string HttpGet(string url) { string result = string.Empty; t

TCP IP协议的分包,转发原理

IP分片和TCP分片的区别 tcp网络工作前段时间要做一个关于网络嗅探的程序,里面要重组IP分片,TCP分片. 但做的时候忽视了一个很重要的东西:IP分片与TCP分片弄混淆了. 首先声明:TCP分片应该称为TCP分段. —————————————————————————————————————————————————————— 区别: 1.IP分片产生的原因是网络层的MTU:TCP分段产生原因是MSS. 2.IP分片由网络层完成,也在网络层进行重组:TCP分段是在传输层完成,并在传输层进行重组.

修改请求和返回报文

一.Charles中修改请求.修改返回值 1. 找到要修改的请求, 设置断点 2.修改请求信息 3.修改返回信息,并重新发送 注意: 1.在手机上抓的包也可以通过上述方法进行修改请求和返回的报文. 2.https都是加密的,需要有证书的才可以抓包,http或者bbs的--一般的证书是以.cret结尾的文件双击就可以装证书 3.通过抓包,可以分析和定位问题 4.URL转码--浏览器对特殊字符处理时,就自己定义了比如%20=空格,以%开头正常的 二.Fiddler抓取请求 Fidder抓请求和cha