《F5会话保持的理解》由会员分享,可在线阅读,更多相关《F5会话保持的理解(12页珍藏版)》请在人人文库网上搜索。

1、1什么是会话保持?在大多数电子商务的应用系统或者需要进行用户身份认证的在线系统中,一个客户与服务器经常经过好几次的交互过程才能完成一笔交易或者是一个请求的完成。由于这几次交互过程是密切相关的,服务器在进行这些交互过程的某一个交互步骤时,往往需要了解上一次交互过程的处理结果,或者上几步的交互过程结果,服务器进行下一步操作时就要求所有这些相关的交互过程都由一台服务器完成,而不能被负载均衡器分散到不同的服务器上。而这一系列的相关的交互过程可能是由客户到服务器的一个连接的多次会话完成,也可能是在客户与服务器之间的多个不同连接里的多次会话完成。不同连接的多次会话,最典型的例子就是基于http的访问,一个。

2、客户完成一笔交易可能需多次点击,而一个新的点击产生的请求,可能会重用上一次点击建立起来的连接,也可能是一个新建的连接。会话保持就是指在负载均衡器上有这么一种机制,可以识别做客户与服务器之间交互过程的关连性,在作负载均衡的同时,还保证一系列相关连的访问请求会保持分配到一台服务器上。2F5支持什么样的会话保持方法?F5 Big-IP支持多种的会话保持方法,其中包括:简单会话保持(源地址会话保持)、HTTP Header的会话保持,基于SSL Session ID的会话保持,i-Rules会话保持以及基于HTTP Cookie的会话保持,此外还有基于SIP ID以及Cache设备的会话保持等,但常用。

3、的是简单会话保持,HTTP Header的会话保持以及 HTTP Cookie会话保持以及基于i-Rules的会话保持。2.1 简单会话保持简单会话保持也被称为基于源地址的会话保持,是指负载均衡器在作负载均衡时是根据访问请求的源地址作为判断关连会话的依据。对来自同一IP地址的所有访问 请求在作负载均时都会被保持到一台服务器上去。在BIG-IP设备上可以为“同一IP地址”通过网络掩码进行区分,比如可以通过对IP地址 192.168.1.1进行255.255.255.0的网络掩码,这样只要是来自于192.168.1.0/24这个网段的流量BIGIP都可以认为他们是来自于同一个用户,这样就将把来自于。

4、192.168.1.0/24网段的流量会话保持到特定的一台服务器上。简单会话保持里另外一个很重要的参数就是连接超时值,BIGIP会为每一个进行会话保持的会话设定一个时间值,当一个会话上一次完成到这个会话下次再来之前的间隔如果小于这个超时值,BIGIP将会将新的连接进行会话保持,但如果这个间隔大于该超时值,BIGIP将会将新来的连接认为是新的会话然后进行负载平衡。基于原地址的会话保持实现起来简单,只需要根据数据包三、四层的信息就可以实现,效率也比较高。存在的问题就在于当多个客户是通过代理或地址转换的方式来访问服务器时,由于都分配到同一台服务器上,会导致服务器之间的负载严重失衡。另外一种情况上客户。

5、机数量很少,但每个客户机都会产生多个并发访问,对这些并发访问也要求通过负载均衡器分配到多个服器上,这时基于客户端源地址的会话保持方法也会导致负载均衡失效。精品.2.2 基于Cookie的会话保持2.2.1 Cookie插入模式:在Cookie插入模式下,Big-IP将负责插入cookie,后端服务器无需作出任何修改当客户进行第一次请求时,客户HTTP请求(不带cookie)进入BIG-IP, BIG-IP根据负载平衡算法策略选择后端一台服务器,并将请求发送至该服务器,后端服务器进行HTTP回复(不带cookie)被发回BIGIP,然后 BIG-IP插入cookie,将HTTP回复返回到客户端。。

6、当客户请求再次发生时,客户HTTP请求(带有上次BIGIP插入的cookie)进入 BIGIP,然后BIGIP读出cookie里的会话保持数值,将HTTP请求(带有与上面同样的cookie)发到指定的服务器,然后后端服务器进行请求回复,由于服务器并不写入cookie,HTTP回复将不带有cookie,恢复流量再次经过进入BIG-IP时,BIG-IP再次写入更新后的会话保持 cookie。2.2.2 Cookie 重写模式当客户进行第一次请求时,客户HTTP请求(不带cookie)进入BIGIP, BIGIP根据负载均衡算法策略选择后端一台服务器,并将请求发送至该服务器,后端服务器进行HTTP回。

7、复一个空白的cookie并发回BIGIP,然后BIGIP重新在cookie里写入会话保持数值,将HTTP回复返回到客户端。当客户请求再次发生时,客户HTTP请求(带有上次BIGIP重写的 cookie)进入BIGIP,然后BIGIP读出cookie里的会话保持数值,将HTTP请求(带有与上面同样的cookie)发到指定的服务器,然后后端服务器进行请求回复,HTTP回复里又将带有空的cookie,恢复流量再次经过进入BIGIP时,BIGIP再次写入更新后会话保持数值到该 cookie。2.2.3 Passive Cookie 模式,服务器使用特定信息来设置cookie。当客户进行第一次请求时,客。

8、户HTTP请求(不带cookie)进入BIGIP, BIGIP根据负载平衡算法策略选择后端一台服务器,并将请求发送至该服务器,后端服务器进行HTTP回复一个cookie并发回BIGIP,然后 BIGIP将带有服务器写的cookie值的HTTP回复返回到客户端。当客户请求再次发生时,客户HTTP请求(带有上次服务器写的cookie)进入 BIGIP,然后BIGIP根据cookie里的会话保持数值,将HTTP请求(带有与上面同样的cookie)发到指定的服务器,然后后端服务器进行请 求回复,HTTP回复里又将带有更新的会话保持cookie,恢复流量再次经过进入BIGIP时,BIGIP将带有该coo。

9、kie的请求回复给客户端。2.2.4 Cookie Hash模式:当客户进行第一次请求时,客户HTTP请求(不带cookie)进入BIGIP, BIGIP根据负载均衡算法策略选择后端一台服务器,并将请求发送至该服务器,后端服务器进行HTTP回复一个cookie并发回BIGIP,然后 BIGIP将带有服务器写的cookie值的HTTP回复返回到客户端。当客户请求再次发生时,客户HTTP请求(带有上次服务器写的cookie)进入 BIGIP,然后BIGIP根据cookie里的一定的某个字节的字节数来决定后台服务器接受请求,将HTTP请求(带有与上面同样的cookie)发到指定的服务器,然后后端服务。

10、器进行请求回复,HTTP回复里又将带有更新后的cookie,恢复流量再次经过进入BIGIP时,BIGIP将带有该 cookie的请求回复给客户端。精品.2.3 SSL Session ID会话保持在用户的SSL访问系统的环境里,当SSL对话首次建立时,用户与服务器进行首次信息交换以:1交换安全证书,2)商议加密和压缩方法,3)为每条对话 建立Session ID。由于该Session ID在系统中是一个唯一数值,由此,BIGIP可以应用该数值来进行会话保持。当用户想与该服务器再次建立连接时,BIGIP可以通过会话中的 SSL Session ID识别该用户并进行会话保持。基于SSL Sessi。

11、on ID的会话保持就需要客户浏览器在进行会话的过程中始终保持其SSL Session ID不变,但实际上,微软Internet Explorer被发现在经过特定一段时间后将主动改变SSL Session ID,(IE标准缓存SSL ID 5分钟,BIGIPLTM默认缓存SSL ID 1小时)这就使基于SSL Session ID的会话保持实际应用范围大大缩小。2.4 基于HTTP Header的会话保持BIGIP可以根据用户HTTP访问里http包头信息信息进行会话保持,HTTP包头里包含以下信息,BIGIP可以将用户访问里这些信息通过表达式来获得相应的数值从而进行会话保持。Accept:浏。

12、览器可接受的MIME类型。Accept-Charset:浏览器可接受的字符集。Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间。 Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到。 Authorization:授权信息,通常出现在对服务器发送的WWW-Authenticate头的应答中。 Connection:表示是否需要持久连接。如果Servlet看到这里的值为“Keep-Alive”,或者看到请求。

13、使用的是HTTP 1.1(HTTP 1.1默认进行持久连接),它就可以利用持久连接的优点,当页面包含多个元素时(例如Applet,图片),显著地减少下载所需要的时间。要实现这一点,Servlet需要在应答中发送一个Content-Length头,最简单的实现方法是:先把内容写入ByteArrayOutputStream,然后在正式写出内容之前计算它的大小。 Content-Length:表示请求消息正文的长度。 Cookie:这是最重要的请求头信息之一,参见后面Cookie处理一章中的讨论。 From:请求发送者的email地址,由一些特殊的Web客户程序使用,浏览器不会用到它。 Host:初。

14、始URL中的主机和端口。 If-Modified-Since:只有当所请求的内容在指定的日期之后又经过修改才返回它,否则返回304“Not Modified”应答。 精品.Pragma:指定“no-cache”值表示服务器必须返回一个刷新后的文档,即使它是代理服务器而且已经有了页面的本地拷贝。 Referer:包含一个URL,用户从该URL代表的页面出发访问当前请求的页面。User-Agent:浏览器类型,如果Servlet返回的内容与浏览器类型有关则该值非常有用。2.5 基于I-Rules的会话保持BIGIP交换机内置有强大的搜索引擎,可以高效的探测到网络流量中的IP包内容的部分,并可以读出。

15、该IP包内容部分的进行会话保持,这些内容部分包括如下部分:下面是一个BIGIP根据IRULES进行会话保持的范例:if (http_uri ends_with “.gif”) use pool image_serverselse if (http_uri starts_with “/foo”) use pool foo_serverselse if (http_cookie(“XYZ-Type”) = “direct”) use pool cookie_servers精品.else if (findstr(http_uri, “?type=”, 6, “&”) = “cgi”) use poo。

16、l cgi_serverselse use pool web_servers在此I-Rules里,可以看到,如果用户的uri部分以.gif字段结尾,也就是说如果用户访问的是图片服务器,则将用户的访问会话保持在图片服务器上;而如果用户的uri部分以/foo开始,则将会话保持到相应的服务器上。同样,根据用户访问中的cookie字段以及uri里面的某个特定便宜字段里是否与规定的类型相符,从而进行相应的会话保持。服务器实际地址与端口提供服务的真实服务器IP地址与提供服务的端口。对外服务地址与端口F5设备向外提供服务的IP地址与端口,此选项可向网络处申请。负载均衡算法F5设备向服务器下发请求的分发方式。。

17、F5设备默认的是轮询,(例如:有两个提供服务的真实服务器,F5会把两个请求分别分配给服务器1和服务器2)会话保持类型会话保持可以将一个客户的持续请求落在一台服务器上。常用的会话保持类型有cookie与源地址方式。F5设备默认无会话保持。会话保持时间可以自定义需要保持的会话在多长时间内有效,或者只基于浏览器创建的一个会话。长连接保持一个连接的有效性。客户向提供服务的真实服务器先建立起通讯的连接,连接建立后并不断开(是否断开由长连接的时间决定),然后再进行报文的传输。长连接时间 F5默认5分钟精品.允许一个连接空闲的时间有多长,F5设备默认的是5分钟,也就是在5分钟内F5设备不会中断此连接。互访关。

18、系提供服务的服务器与服务器之间是否存在互访关系。透传源地址业务层面是否需要对客户的真实地址做了解,如果需要,F5设备将配置透传客户的源地址信息给后端提供服务的服务器。探测类型要求F5设备使用哪种类型做提供服务的服务器健康检查(健康检查就是F5设备检查提供服务的真实服务器是否可用的代名词)。在行内常用到的有HTTP与TELNET,(例如,F5配置了Telnet的类型后,F5设备就会定期对提供服务的真实服务器发送telnet的探测包,如果在定义的时间内没有返回信息给F5,F5便会停止此真实服务器对外提供服务。但F5会一直按照规定发送Telnet探测包至服务器,直到服务器给予正确的回应后,F5便恢复。

19、此服务器。)检查条件根据在检查类型中定义的类型,来填写检查条件,(例如“检查类型”填写的是ICMP,“检查条件”应填写192.168.1.1)成功返回值如果检查类型填写的是HTTP或者其他自定义的类型,那么在成功返回值中应该填写真实服务器正确返回给F5的是什么信息,F5即认为服务器是可用的。探测包发送间隔第一次探测与第二次探测的间隔时间。F5设备默认的间隔时间是5秒钟。即F5设备会每隔5秒钟对真实服务器发送一次探测包,来探测真实服务器是否正常。探测包重传次数连续探测多少次服务器。F5设备默认的次数是3次。即F5设备会每隔5秒钟对真实服务器做状态探测,如果连续3次没有返回给F5正确的信息后,F5。

20、便会将此真实服务器从提供服务的服务组里面摘除,直到其变为可用服务器后在放回提供服务的服务组里面。服务器最大响应时间提供服务的真实服务器在停止多长时间没有给F5正确的探测回应,F5便可以把此服务器从提供服务的服务组里面摘除。F5设备默认的是:间隔时间重传次数+1=最大响应时间。(例如:F5设备默认的发送间隔是5秒钟,重传次数是3次,那么最大响应时间应该是5精品.3+1=16秒)一、负载均衡算法随机 (Random) 随机分发轮询(Round Robin) 将请求依次顺序循环地分发给服务器,从1到N然后重新开始。此种均衡算法适合于服务器组中的所有服务器都有相同的软硬件配置并且平均服务请求相对均衡的。

21、情况。权重(Weighted Round Robin) 根据服务器的不同处理能力,给每个服务器分配不同的权值,使其能够接受相应权值数的服务请求。此种均衡算法能确保高性能的服务器得到更多的使用率,避免低性能的服务器负载过重。动态比率(Dynamic Round Robin)类似于权重,不过权重值是随着对服务器持续的监控而变化的。这是一个动态的负载均衡算法,基于对服务器性能的实时分析,如连接数或响应时间。最快模式(Fastest)传递连接给那些响应速度最快的服务器。这种算法可能对于服务器处于不同的逻辑网络中的情况特别有用。均衡器记录着每个服务器的响应时间并选择最快的那一个。这非常直接了当,但是可能。

22、会导致拥塞,因为当前的响应时间并不一定真的还是1s或是2s了。最小连接数(Least Connections)最少连接数均衡算法对内部中需负载的每一台服务器都有一个数据记录,记录当前该服务器正在处理的连接数量,当有新的服务连接请求时,将把当前请求分配给连接数最少的服务器,使均衡更加符合实际情况,负载更加均衡。此种均衡算法适合长时处理的请求服务,如FTP。观察模式(Observed) 以连接数和响应时间这两项的最佳平衡为依据来为新的请求选择服务器。预测模式(Predictive)预测模式使用和观察模式一样的评选方法,只不过BIGIP会利用收集到的服务器当前的性能指标(连接数和响应时间),进行预测分析,选择一台服务器在下一个时间片内,其性能将达到最佳的服务器来响应用户的请求。预测模式试图修复在观察模式中的一个问题,如果服务器的响应时间已经开始下滑,那么它是不太可能接受下一个请求的。如有侵权请联系告知删除,感谢你们的配合!精品。

f5 会话保持 负载均衡_F5会话保持的理解相关推荐

  1. f5 会话保持 负载均衡_F5会话保持

    最近项目中需要使用F5做负载均衡,将相关资料记录下来. 以下是F5变更申请中的相关参数说明,我们就以此顺藤摸瓜,我们挑几个重要参数去学习吧. 服务器实际地址与端口 提供服务的真实服务器IP地址与提供服 ...

  2. f5 会话保持 负载均衡_F5负载均衡配置-运维管理

    1.1 设备信息 进入system – platform可以对设备部分信息进行修改,如下图: IP地址是设备的带外管理地址(MGMT),在设备液晶面板处可以看到,也可以在液晶面板上更改地址.若需要进行 ...

  3. 常见的服务器集群负载均衡技术:二三四七层负载均衡,DNS、LVS、F5、nginx负载均衡

    服务器集群负载均衡技术 LB:load balance负载均衡器.有时也叫做director. DNS负载均衡 DNS负载均衡,最基础的是轮询方式,循环返回不同的服务器IP地址.可以同时返回多个服务器 ...

  4. f5 会话保持 负载均衡_四层负载均衡和七层负载均衡区别在哪里?

    年后至今这段时间工作重心都在调整公司现有API Gateway的系统架构以及对现有技术栈选型.经过对主流互联网网关所实现各种方案的调研,我们在API Gateway前置一层接入层,接入层主要用于实现限 ...

  5. 负载均衡,会话保持,session同步

    一,什么负载均衡 一个新网站是不要做负载均衡的,因为访问量不大,流量也不大,所以没有必要搞这些东西.但是随着网站访问量和流量的快速增长,单台服务器受自身硬件条件的限制,很难承受这么大的访问量.在这种情 ...

  6. Nginx的负载均衡 - 保持会话 (ip_hash)

    2019独角兽企业重金招聘Python工程师标准>>> 算法介绍 ip_hash算法的原理很简单,根据请求所属的客户端IP计算得到一个数值,然后把请求发往该数值对应的后端. 所以同一 ...

  7. LNMT/LAMT实现动静分离、负载均衡和会话保持

    1.本次试验主要是通过nginx代理到tomcat处理动态响应: 2.通过httpd代理到tomcat做动态请求的处理: 3.通过httpd和tomcat实现session会话的绑定: 4.通过htt ...

  8. Nginx学习总结(4)——负载均衡session会话保持方法

    负载均衡时,为了保证同一用户session会被分配到同一台服务器上,可以使用以下方法: 1.使用cookie 将用户的session存入cookie里,当用户分配到不同的服务器时,先判断服务器是否存在 ...

  9. Win2008学习(十五),RD会话主机服务器负载均衡

    当我们企业中有多台RD会话主机服务器的时候,我们可以使用RD连接代理实现RD会话主机服务器的负载均衡,其大致原理就是客户端通过域名连接RD会话主机,但是域名解析后发现有多条A记录对应一个IP地址,当用 ...

最新文章

  1. 【转载】使用Nexus搭建Maven服务器详细配置
  2. volatile 关键字是如何保证可见性的?
  3. 2017年关于数据科学的六大预言
  4. 如何用Linux命令行管理网络:11个你必须知道的命令
  5. java数组的四个要素_Java零基础系列教程04Java数组
  6. 自然语言10_分类与标注
  7. python自动填日志_Selenium3+python自动化012+日志logging基本用法、高级用法
  8. 请问基友,基金转换需要多长时间?
  9. springmvc源码阅读之启动加载(2)-----------初始化参数
  10. C语言运算符优先级列表(超全)
  11. excel单元格做下拉列表以及改变下拉列表的字体
  12. 领域驱动设计系列关键概念
  13. 微博分享代码怎么显示自定义来源
  14. 信息安全工程师学习笔记《第四章》
  15. Jenkins打包部署项目到Windows或Linux运行
  16. Windows操作系统各版本的历史
  17. 微信APP支付申请方法
  18. <计算机视觉 六> 深度学习目标检测模型的评估标准
  19. 通达信指标公式绘图函数简介——自定义指标颜色、线型等
  20. 【大唐杯备考】——5G网络组网部署(学习笔记)

热门文章

  1. 虚拟机中左键不能使用,鼠标滑轮和右键正常-解决方案
  2. 微服务-分布式事务seata
  3. 如何写英文科技论文 papers
  4. AD设计PCB新手入门
  5. [日推荐]『质安查』买到放心的产品就靠它了
  6. 三、elasticsearch 实际应用(碎片篇)
  7. 大数据能否解决城市所面临的环境问题
  8. FT2000+下40G网卡性能优化
  9. MySql创建Table的时候将编码设置为utf-8
  10. cad立体图怎么旋转看图_cad布局中图形怎么旋转