F5 BIG-IP LTM 详解(工作原理 配置手册)ppt课件_第1页
F5 BIG-IP LTM 详解(工作原理 配置手册)ppt课件_第2页
F5 BIG-IP LTM 详解(工作原理 配置手册)ppt课件_第3页
F5 BIG-IP LTM 详解(工作原理 配置手册)ppt课件_第4页
F5 BIG-IP LTM 详解(工作原理 配置手册)ppt课件_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.,F5BIG-IPLTM详解,北京先进数通信息技术有限公司,2020年5月,LTM基础架构VSType详解Profile详解CMP工作原理OneConnect工作原理NAT、SNAT工作原理Monitor工作原理HA工作原理,LTM工作原理,LTM基础架构,什么是TMM,TrafficManagementModuleTMOS的核心进程,有自己独立的内存、CPU资源分配和I/O控制所有的生产流量都通过TMM接收一个CPUCore只能有一个TMM进程在V9版本上,15/34/64/68都是单TMM运行在V9版本上,16/36/69/89/84/88都是多TMM运行在V10版本上,16/36/69/89/84/88都是多TMM运行Viprion只支持9.6和10.0版本,默认都是多TMM运行,TMM处理的范围,TMM内部处理功能,所有的VS入口流量LTMiRiules处理Profile处理会话保持处理负载均衡算法SSL加速(和硬件结合)HTTP压缩SNAT静态CRL(Certificaterevocationlist证书吊销清单)文件校验,不在TMM里面处理的功能,WebAcceleratorModule(包括压缩)ApplicationSecurityModuleGTM的分配算法处理(包括GTMrules)Named域名解析健康检查日志管理系统数据统计SNMP数据输出HA健康检查,BIGIP内部结构-V9平台15/34/64/68,TM/OS,管理CPU,万兆/千兆交换端口,PVA(PacketVelocityASIC)四层交换专用ASIC,HostOSWeb界面管理健康检查SNMP.,Bridge,TMM0,独立的管理机SCCP,SSL加解密,HTTP压缩,Admin,Console,BIGIP内部结构-Mecury平台16/36/69/89,6,TM/OS,管理CPU,万兆/千兆交换端口,HiSpeedBridge,TMM2,HostOSWeb界面管理健康检查SNMP.,TMM3,TMM1,TMM0,独立的管理机AOM,ClusterMutiProcessor多CPU并行处理,SSL加解密,HTTP压缩,Console,Admin,Host和TMM的内存分配,Host在启动的时候限定了内存分配的大小,在没有其他module的情况下是384MBTMM进程启动后,将自动获取余下的所有物理内存,HostMemory,TMMMemory,查看Host内存占用情况,#physmem/查看物理内存大小8387584bmemoryshow/查看内存分配情况MEMORYSTATISTICS-|(Host)Total=3.835GBUsed=3.590GB|(TMM)Total=5.976GBUsed=93.22MB,查看TMM内存占用情况,TMM分配的内存是准确的,Host内存显示在这里有一些偏差,VSType详解,PerformanceL4StandardVSFastHTTPForwardingVS,PerformanceL4,TMM只是负责客户端连接的分配和转发,不改变TCP连接中的任何参数客户端和服务器自行协商TCP传输参数在34/64/68平台上PerformanceL4可以有PVA加入实现硬件加速在15/16/36/69/89/Viprion平台上都通过TMM核心进行处理PerformanceL4VS上只有4层的iRules可以使用默认状态下,新建连接的第一个包必须是Syn包,如果是其他的数据包比如ACK、RST等如果不在连接表中,则全部丢弃。在FastL4profile打开Looseclose和LooseInitial的时候对非Syn包也可以建立连接表,TMM,客户端,客户端,客户端,服务器端,服务器端,服务器端,PerformanceL4攻击防护-SynCookie,正常情况下客户端连接和服务器端连接是1:1的关系TMM在第一次收到客户端Syn包时,并不建立连接表TMM的SynAck回应通过算法回应给客户端Syn,并期待客户端回应的值TMM对客户端ACK进行计算,确认是真实客户端,再和后台服务器建立连接在84/88上可以实现硬件的SynCookie计算,其余的平台都是通过软件实现SynCookie计算SynCookie工作模式下,只有成功建立连接的TCP请求才转发到后台,TMM,Syn,Syn,Ack(syncookie),Ack(Cookie),Syn,Syn-Ack,Ack,Data,StandardVS,正常情况下客户端连接和服务器端连接是1:1的关系默认工作在全代理模式,客户端和服务器端的TCP连接完全独立客户端和服务器端的TCP参数都是由TMM和双方分别协商默认情况下以客户端源IP和后台建立连接,在打开SNAT的情况下用SNAT地址和后台建立连接StandardVS的端口永远对外开放,无论后台是否有服务器在工作,TMM,Syn,Syn,Ack,Ack,Syn,Syn-Ack,Ack,Data,Data,Standard模式下的攻击防护,StandardVS模式具有天然的防攻击功能在遇到Syn攻击的时候会导致系统的连接表过大通过System-SYNCheckActivationThreshold的设置,在达到设置值的时候系统自动启动SynCookie,避免建立过多连接,这个值对全局生效大部分的网络层攻击都无法通过Standard模式的VS,FastHTTP,FastHTTPVS仅用于HTTP协议默认开启OneConnectProfile,对客户端连接进行聚合处理默认开启SNATAutoMap,在服务器端收到的TCP连接请求都是来自于TMM没有会话保持功能不能处理SSL,HTTPS,TMM,客户端,客户端,客户端,服务器端,服务器端,服务器端,FowardingVS(ForwardingIP),只能使用FastL4Profile按照连接处理,类似于路由器工作,但不完全一样,在FastL4Profile中开启LooseInitial和LooseClose之后更为接近路由工作模式所有穿过FowardingVS的连接都将产生连接表没有PoolMember,转发完全取决于本地路由可以使用基于4层的Rules,TMM,客户端,查询本地路由表,转发客户端请求,VS和Profile,VS作为所有流量的入口Profile依赖于VS,对进入VS的流量进行格式化处理不同的VS可以用同一个Profile或者不同的ProfileProfile之间存在有相互排斥和相互依存的关系,VS,TCPProfile,UDPProfile,FastL4Profile,HTTP,RTSP,ClientSSL,ServerSSL,Streaming,SMTP,SIP,OneConnect,Rules的处理必须依赖于VS对流量的接收通过事件触发机制,Rules可以控制流量在VS内部处理的整个过程,SSL,Compression,ClientSide,ServerSide,TCPExpress,Server,TCPExpress,Caching,Microkernel,VirtualServer,iRules,Client,iControlAPI,TCPProxy,OneConnect,XML,RateShaping,TrafficShield,WebAccel,3rdParty,VS和Rules,Server,iRules,ClientSideEventClient_acceptClient_dataCache_requestDNS_requestHTTP_REQUESTHTTP_REQUEST_DATARTSP_REQUEST.,ServerSideEventServer_connectServer_dataCache_responseDNS_responseHTTP_RESPONSEHTTP_RESPONSE_DATARTSP_RESPONSE.,大部分rules只在同一个VS之内有效Rules内创建的变量以连接为生命周期一个VS上可以有多个Rules,它们将被顺序执行,CLIENT_ACCPTED,CLIENT_DATA,LB_SELECTED,LB_FAILED,SERVER_ACCPTED,SERVER_DATA,CLIENT_CLOSED,SERVER_CLOSED,RULE_INIT,VS,Profile的作用和工作范围,Profile依赖于VSProfile是对VS的流量进行格式化处理举例如果一个VS上配置了TCPProfile,则该VS对所有的UDP流量都不会接收,Profile详解,基本流量处理类型ProfileTCP,UDP,FastHTTP,FastL4,SCTP(StreamControlTransmissionProtocol)服务流量处理类型ProfileHTTP,FTP,SMTP,RTSP(RealTimeStreamingProtocol),SIP(SessionInitiationProtocol),iSessionSSL处理类型ClientSSL,ServerSSL会话保持类型Cookie,DestinationIP,hash,msrdp,sourceIP,Universal,SSL认证处理类型Radius,CRLDP(Constraint-BasedLabelDistributionProtocol),OCSP(OnlineCertificateStatusProtocol)其他处理类型OneConnect,Statistics,NTLM(NTLANManager),Stream,重要的Profile-FastL4,ResetonTimeout:在连接达到Timeout的是否向两端发送Reset包IdelTimeout:多长时间连接里面没有数据流量的时候就删除连接表LooseInitiation/LooseClose:是否接收非Syn包建立连接SoftareSynCookieProtection:是否在VS上启用SynCookie,实现Syn攻击防护,可能调整的参数,重要的Profile-TCP,注意在ClientSide和ServerSide可以使用不同的TCPProfile通常情况下建议:Clientside:TCPWANOptimized或LANOptimizedServerside:TCPLANOptimized除非你非常了解TCP的工作原理,否则不要调整除idelTimeout以外的任何参数,重要的Profile-ClientSSL,对所有进入VS的流量按照SSL协议进行处理注意ClientSSLprofile不一定只能使用在HTTPS上使用ClientSSL的VS不一定使用443端口,TMM,客户端,客户端,客户端,服务器端,服务器端,服务器端,SSL,SSL,SSL,重要的Profile-FTP,FTPProfile主要用于处理FTP的主动和被动传输两种模式由于需要配置动态侦听端口,因此FTP协议必须进行单独处理通过iRules也可以达到同样的目的,但由于FTP协议使用非常广泛,因此使用FTPprofile来简化配置和处理FTPProfile必须依赖于TCPprofile工作,为什么要用CMP(ClusterMulti-Processor),性能增长要求CPU的主频增加受到比较大的限制,目前的趋势是以多核扩展为主ASIC(ApplicationSpecificIntergratedCircuits)、NP(NetworkProcessor)的处理架构并不适合于复杂、灵活的流量处理对于不规范的流量,采用硬件加速将导致系统设计僵化,很难加入新的功能实现市场需求需要充分利用CPU的多核处理能力来提升系统的整体性能,CMP工作原理,CMP的硬件支持,CMP工作模式,流量由HSB进行分配在多个TMM上,每个TMM占据一个CPUCore,每个TMM有自己独立的内存空间每个TMM都具有相同的配置,包括VS/Profile/iRules/Pool/Persistence等TMM之间通过内存高速总线进行通讯共享通用信息如会话保持表,SNAT源端口等当CMP被Disable的时候,TMM0接管所有的流量64/68的硬件平台已经支持CMP,在10.0上自动开启,VIPTMM0,VIPTMM1,VIPTMM2,VIPTMM3,HSB,HSB,SuperVIP,如何查看CMP工作状态,btmmshow可以观察每个TMM的状态,关于CMP必须了解的内容,V9平台启动WA(web应用加速器)和ASM(应用安全管理器)将DisableCMPiRules中定义全局变量将DisableCMP所有的非TCP/UDP流量都只使用TMM0进行处理V9中使用Sessionadd,SessionLookup命令将DisableCMPConnectionLimit和RateShaping的配置是针对每个TMM生效手工关闭CMP运行bdbProvision.tmmCount1调整后必须重启任何一个TMMCrash,将导致设备间FailoverTCPdump已经调整为可支持CMP,查看VirtualServer的CMP工作状态,如何查看TMMCPU占用率,top命令可以显示每颗CPU的占用率和V9相比,TMM的CPU在Top命令中的显示发生了变化每颗CPU的CPU占用率目前在图形界面里都消失了,目前只有整体的CPU占用率,OneConnect工作原理,连接聚合和内容交换,sales.htm,d.gif,e.gif,index.htm,a.gif,b.gif,c.asp,Server,f.asp,sales.htm,d.gif,e.gif,index.htm,a.gif,b.gif,c.asp,Server,f.asp,index.htm,a.gif,b.gif,c.asp,index.htm,a.gif,b.gif,c.asp,HTMLserverpool,GIFserverpool,ASPserverpool,连接聚合,内容交换,注:eligiblereuse符合条件的再利用,OneConnect的典型工作场景,实现连接聚合降低服务器的连接总数需要对每一个请求都进行单独处理(注意在多数情况下,LTM只对一个连接的第一个包进行处理)典型的,打开Cookie会话保持有时候会出现保持不正确的情况,这时就需要打开OneConnect通过设置Mask=55,可以使后台服务器可以“看到”客户端源IP,但这个时候One-connect只对一个客户端的连接起作用,OneConnect和应用协议,注意!OneConnectProfile不是必须和HTTPProfile共用,也可以用于其他应用协议。用于其他应用协议的时候必须使用iRules编程来调用OneConnect在需要对长连接进行拆分处理的时候,也需要用OneConnectProfile,NAT的工作模式,0,NATAddress:0,NAT和SNAT,SNAT全称:SecureNetworkAddressTranslation,SNAT的工作模式,0,,,,SNATAddress:0,NAT和SNAT之间的差别,NAT1比1接收所有发往NAT地址的连接所有的连接只是通过LTM的连接表管理,但是是无状态的,连接不会被Timeout连接不能被镜像,SNAT多对一或者多对多拒绝所有发往SNAT地址的连接请求.连接通过LTM的连接表管理,有timeout设置连接可以被镜像,SNATAutoMap,当配置SNATAutoMap的时候,请求从那个VLAN发出去,则SNAT的源地址为VLAN上的SelfIP当一个VLAN上有多个SelfIP存在的时候,SNAT的源地址是在多个SelfIP之间轮询,SNATPool的工作模式,SNATPool是提供了一个可用于SNAT源地址的列表BIGIP采用最小连接数的方式在SNAT的源地址之间进行选择,通过iRules控制SNAT,whenCLIENT_ACCEPTEDsetsnat_addrwhenHTTP_REQUESTsetsnat_addrHTTP:headerX-Forwarded-ForlogX-Fowarded-ForisHTTP:headerX-Forwarded-ForwhenLB_SELECTEDsnat$snat_addr,HTTPS,SSLOffload替换源地址,Server端需要在TCP连接里面获取客户端源地址,SNAT的源地址会话保持,whenRULE_INIT#loglocal5.warning-$cnc_snatpoolsetsnat_lengthllength$cnc_snatpoolloglocal5.warning-snatpoollengthis$snat_lengthwhenLB_SELECTED#setclient_addr3setclient_ipIP:client_addrsetclient_lastgetfield$client_ip.4#loglocal5.warning-clientlastis$client_lastsetsnat_addrlindex$cnc_snatpoolexpr$client_last%$snat_length#loglocal5.warning-clientsnataddr$snat_addrsnat$snat_addr,Timeout定义和镜像,SNAT可以在两台设备之间镜像SNAT对于TCPidleTimeout和UDPidleTimeout可以有独立的设置,Monitor如何向外发送请求,所有的Monitor请求都是由bigd进程发起Monitor流量要穿过TMM发送到Server或者其他位置在bconn中可以看到Monitor的流量,TMM,bigd,Monitor工作原理,重要的Monitor-TCP,SendString:发送的请求字符串,支持C语言的转义符ReceiveString:在返回的内容中查询的字符串Transparent:数据包内的三层发送目的地是AliasAddress,二层的发送目的地是NodeAddress的MAC地址,重要的Monitor-ExternalMonitor,MEMBER=$1;PORT=$2;HOST_2_RESOLV=$3;$#-ne3&exit255PIDFILE=/var/run/pinger.$MEMBER.eav.$PORT.pidif-f$PIDFILEthenkill-9cat$PIDFILE/dev/null2&1fiecho$PIDFILEMEMBER=echo$1|seds/:ffff:/2/dev/nulllog_info()echo$*|#stocksyslog-ngdestinations-#-/var/log/ltm#-/var/log/ltm#-/var/log/messages#-/var/log/messages#thisisfordebugonly!donotcalllog_infobelowunless#youwanttoseeyoursyntaxandtheshellevaluationof#variables(variableexansion),HA工作模式-Active/Active,每个VS对外提供不同的服务服务器必须分组,分别指不同的网关在使用SNAT的情况下不需要服务器指不同的网关(建议模式),VS1,VS2,HA工作原理,串口心跳线的工作模式,没有数据在串口心跳线之间传输两台设备是通过监控Failover线上的电压来决定是否切换,备机一旦检测到主机电压为0则进行接管动作切换时间在200-300毫秒之间SOD(SwitchOverDeamon)进程负责监控Failover线上的电压,网络心跳线的工作模式,两台设备之间通过网络互相发送心跳信号NetworkFailover可以设置2条路径NetworkFailover和串口心跳线Failover可以同时使用在10.0里的NetworkFailover有巨大的变化,静态负载均衡算法轮询,比率,优先权动态负载均衡算法最少连接数,最快响应速度,观察方法,预测法,动态性能分配,动态服务器补充,服务质量,服务类型,规则模式,F5负载均衡算法,轮询(RoundRobin):顺序循环将请求一次顺序循环地连接每个服务器。当其中某个服务器发生第二到第7层的故障,BIG-IP就把其从顺序循环队列中拿出,不参加下一次的轮询,直到其恢复正常。,比率(Ratio):给每个服务器分配一个加权值为比例,根椐这个比例,把用户的请求分配到每个服务器。当其中某个服务器发生第二到第7层的故障,BIG-IP就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。,优先权(Priority):给所有服务器分组,给每个组定义优先权,BIG-IP用户的请求,分配给优先级最高的服务器组(在同一组内,采用轮询或比率算法,分配用户的请求);当最高优先级中所有服务器出现故障,BIG-IP才将请求送给次优先级的服务器组。这种方式,实际为用户提供一种热备份的方式。,最少的连接方式(LeastConnection):传递新的连接给那些进行最少连接处理的服务器。当其中某个服务器发生第二到第7层的故障,BIG-IP就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。,最快模式(Fastest):传递连接给那些响应最快的服务器。当其中某个服务器发生第二到第7层的故障,BIG-IP就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。,观察模式(Observed):连接数目和响应时间以这两项的最佳平衡为依据为新的请求选择服务器。当其中某个服务器发生第二到第7层的故障,BIG-IP就把其从服务器队列中拿出,不参加下一次的用户请求的分配,直到其恢复正常。,预测模式(Predictive):BIG-IP利用收集到的服务器当前的性能指标,进行预测分析,选择一台服务器在下一个时间片内,其性能将达到最佳的服务器响应用户的请求。(被BIG-IP进行检测),动态性能分配(DynamicRatio-APM):BIG-IP收集到的应用程序和应用服务器的各项性能参数,动态调整流量分配。动态服务器补充(DynamicServerAct.):当主服务器群中因故障导致数量减少时,动态地将备份服务器补充至主服务器群。服务质量(QoS):按不同的优先级对数据流进行分配。服务类型(ToS):按不同的服务类型(在TypeofField中标识)对数据流进行分配。规则模式:针对不同的数据流设置导向规则,用户可自行。,常用到的一般是最少连接数、最快反应、或者轮询,决定选用那种算法,主要还是要结合实际的需求,F5会话保持,F5BigIP支持多种的会话保持方法,其中包括:简单会话保持(源地址会话保持)、HTTPHeader的会话保持,基于SSLSessionID的会话保持,I-Rules会话保持以及基于HTTPCookie的会话保持,此外还有基于SIPID以及Cache设备的会话保持等,但常用的是简单会话保持,HTTPHeader的会话保持以及HTTPCookie会话保持以及基于I-Rules的会话保持。,简单会话保持简单会话保持又称为基于源地址的会话保持,是指负载均衡器在作负载均衡时是根据访问请求的源地址作为判断关连会话的依据。对来自同一IP地址的所有访问请求都会被保持到一台服务器上去。简单会话保持一个很重要的参数就是连接超时值,BIGIP会为每一个进行会话保持的会话设定一个时间值,两次会话之前的间隔如果小于这个超时值,BIGIP将会将新的连接进行会话保持,但如果这个间隔大于该超时值,BIGIP会将新来的连接认为是新的会话然后进行负载平衡。基于原地址的会话保持实现简单,效率较高。但是多个用户通过代理或地址转换的方式来访问服务器时,会导致服务器之间的负载严重失衡。另外当客户机数量很少,但每个客户机都产生多个并发访问,这时用这种方法也会导致负载均衡失效。,基于Cookie的会话保持,Cookie插入模式在Cookie插入模式下,BigIP将负责插入cookie,后端服务器无需作出任何修改。当客户进行第一次请求时,客户HTTP请求(不带cookie)进入BIGIP,BIGIP根据负载平衡算法策略选择后端一台服务器,并将请求发送至该服务器,后端服务器进行HTTP回复(不带cookie)被发回BIGIP,然后BIGIP插入cookie,将HTTP回复返回到客户端。当客户请求再次发生时,客户HTTP请求(带有上次BIGIP插入的cookie)进入BIGIP,然后BIGIP读出cookie里的会话保持数值,将HTTP请求(带有与上面同样的cookie)发到指定的服务器,然后后端服务器进行请求回复,由于服务器并不写入cookie,HTTP回复将不带有cookie,恢复流量再次经过进入BIGIP时,BIGIP再次写入更新后的会话保持cookie。,Cookie重写模式当客户进行第一次请求时,客户HTTP请求(不带cookie)进入BIGIP,BIGIP根据负载均衡算法策略选择后端一台服务器,并将请求发送至该服务器,后端服务器进行HTTP回复一个空白的cookie并发回BIGIP,然后BIGIP重新在cookie里写入会话保持数值,将HTTP回复返回到客户端。当客户请求再次发生时,客户HTTP请求(带有上次BIGIP重写的cookie)进入BIGIP,然后BIGIP读出cookie里的会话保持数值,将HTTP请求(带有与上面同样的cookie)发到指定的服务器,然后后端服务器进行请求回复,HTTP回复里又将带有空的cookie,恢复流量再次经过进入BIGIP时,BIGIP再次写入更新后会话保持数值到该cookie。,PassiveCookie模式服务器使用特定信息来设置cookie。当客户进行第一次请求时,客户HTTP请求(不带cookie)进入BIGIP,BIGIP根据负载平衡算法策略选择后端一台服务器,并将请求发送至该服务器,后端服务器进行HTTP回复一个cookie并发回BIGIP,然后BIGIP将带有服务器写的cookie值的HTTP回复返回到客户端。当客户请求再次发生时,客户HTTP请求(带有上次服务器写的cookie)进入BIGIP,然后BIGIP根据cookie里的会话保持数值,将HTTP请求(带有与上面同样的cookie)发到指定的服务器,然后后端服务器进行请求回复,HTTP回复里又将带有更新的会话保持cookie,恢复流量再次经过进入BIGIP时,BIGIP将带有该cookie的请求回复给客户端。,CookieHash模式当客户进行第一次请求时,客户HTTP请求(不带cookie)进入BIGIP,BIGIP根据负载均衡算法策略选择后端一台服务器,并将请求发送至该服务器,后端服务器进行HTTP回复一个cookie并发回BIGIP,然后BIGIP将带有服务器写的cookie值的HTTP回复返回到客户端。当客户请求再次发生时,客户HTTP请求(带有上次服务器写的cookie)进入BIGIP,然后BIGIP根据cookie里的一定的某个字节的字节数来决定后台服务器接受请求,将HTTP请求(带有与上面同样的cookie)发到指定的服务器,然后后端服务器进行请求回复,HTTP回复里又将带有更新后的cookie,恢复流量再次经过进入BIGIP时,BIGIP将带有该cookie的请求回复给客户端。,SSLSessionID会话保持在用户的SSL访问系统的环境里,当SSL对话首次建立时,用户与服务器进行首次信息交换以:1交换安全证书,2)商议加密和压缩方法,3)为每条对话建立SessionID。由于该SessionID在系统中是一个唯一数值,由此,BIGIP可以应用该数值来进行会话保持。当用户想与该服务器再次建立连接时,BIGIP可以通过会话中的SSLSessionID识别该用户并进行会话保持。基于SSLSessionID的会话保持就需要客户浏览器在进行会话的过程中始终保持其SSLSessionID不变,但实际上,微软InternetExplorer被发现在经过特定一段时间后将主动改变SSLSessionID,这就使基于SSLSessionID的会话保持实际应用范围大大缩小。,基于HTTHeader的会话保持BIGIP可以根据用户HTTP访问里http包头信息信息进行会话保持,HTTP包头里包含以下信息,BIGIP可以将用户访问里这些信息通过表达式来获得相应的数值从而进行会话保持。Accept:浏览器可接受的MIME类型。Accept-Charset:浏览器可接受的字符集。Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的HTML页面。许多情形下这可以减少5到10倍的下载时间。Accept-Language:浏览器所希望的语言种类,当服务器能够提供一种以上的语言版本时要用到。Authorization:授权信息,通常出现在对服务器发送的WWW-Authenticate头的应答中。Connection:表示是否需要持久连接。如果Servlet看到这里的值为“Keep-Alive”,或者看到请求使用的是HTTP1.1(HTTP1.1默认进行持久连接),它就可以利用持久连接的优点,当页面包含多个元素时(例如Applet,图片),显著地减少下载所需要的时间。要实现这一点,Servlet需要在应答中发送一个Content-Length头,最简单的实现方法是:先把内容写入ByteArrayOutputStream,然后在正式写出内容之前计算它的大小。,Content-Length:表示请求消息正文的长度。Cookie:这是最重要的请求头信息之一,参见后面Cookie处理一章中的讨论。From:请求发送者的email地址,由一些特殊的Web客户程序使用,浏览器不会用到它。Host:初始URL中的主机和端口。If-Modified-Since:只有当所请求的内容在指定的日期之后又经过修改才返回它,否则返回304“NotModified”应答。Pragma:指定“no-cache”值表示服务器必须返回一个刷新后的文档,即使它是代理服务器而且已经有了页面的本地拷贝。Referer:包含一个URL,用户从该URL代表的页面出发访问当前请求的页面。User-Agent:浏览器类型,如果Servlet返回的内容与浏览器类型有关则该值非常有用。,基于I-Rules的会话保持BIGIP交换机内置有强大的搜索引擎,可以高效的探测到网络流量中的IP包内容的部分,并可以读出该IP包内容部分进行会话保持这些内容部分包括如下部分:,下面是一个BIGIP根据IRULES进行会话保持的范例:if(http_uriends_with“.gif”)usepoolimage_serverselseif(http_uristarts_with“/foo”)usepoolfoo_serverselseif(http_cookie(“XYZ-Type”)=“direct”)usepoolcookie_serverselseif(findstr(http_uri,“?type=”,6,“&”)=“cgi”)usepoolcgi_serverselseusepoolweb_servers在此I-Rules里,可以看到,如果用户的uri部分以.gif字段结尾,也就是说如果用户访问的是图片服务器,则将用户的访问会话保持在图片服务器上;而如果用户的uri部分以/foo开始,则将会话保持到相应的服务器上。同样,根据用户访问中的cookie字段以及uri里面的某个特定字段里是否与规定的类型相符,从而进行相应的会话保持。,LTM组网架构,单臂接入模式双臂接入模式远程节点模式加入独立SSL/WA/ASM设备防火墙负载均衡多链路接入灾备站点静态路由注入,LTM单臂接入模式单臂模式下的网络物理结构,服务器,服务器,LTM,LTM,外部外部网络核心三层交换Vlan1,串口心跳线,核心三层交换,服务器,服务器,LTM,0,1,GW:54GW:54,VS::80,SelfIP:53GW:54,54,54,SIP,Sport,DIP,Dport,6787538888,1,8080,1,80,538888,,80,,6787,单臂接入-源地址替换模式数据访问流程Client,源地址替换后的处理,服务器,服务器,LTM,,0,1,GW:54GW:54,VS::80,SelfIP:53GW:54,54,54核心三层交换,HTTPProfile,whenHTTP_REQUESTHTTP:headerinsertClient_IP=IP:client_addr,ClientiRules,只有HTTP协议的时候,可以通过将源地址插入到客户端请求的HTTPHeader里,然后在服务器上,通过读取这个Header,获得客户端的真实源IP地址,单臂接入-npath模式数据访问流程,Client,,服务器0Lo:,服务器1Lo:,GW:54GW:54,LTMVS::80SelfIP:53,GW:54,54核心三层交换54,SIP,Sport,DIP,Dport,67876787,8080,,80,6787,npath模式的关键在于服务器上配置的loopback地址在上能找到各种服务器的loopback地址如何配置的文档,单臂接入-服务器非直连模式(无源地址替换),核心三层交换,LTM,Client,服务器0,GW:54GW:54,VS::80,SelfIP:53,GW:54,54,54,服务器1,SIP,Sport,DIP,Dport,1,678767878080,1,808067876787,54,客户端,服务器,LTM,0,GW:54,1,GW:54,VS::80,IP:53GW:54,同网段访问处理-必须通过SNAT实现54核心三层交换,SIP,Sport,DIP,Dport,0,6787,,80,538888,1,80,1,80,538888,,80,,6787,服务器,服务器,LTM,单臂接入-服务器更改网关数据访问流程Client,0,1,GW:53GW:53,VS::80,SelfIP:53GW:54,54,54核心三层交换,SIP,Sport6787,DIP,Dport80,1,67878080,1,8067876787,Client,服务器更改网关后的直接访问服务器问题,服务器0,GW:53GW:53,LTMVS::80,IP:53GW:54,SYN54,核心三层交换54SYN,服务器SYN-ACK1,SIP1,Sport678780,DIP1,Dport806787,FastL4Profile,双臂接入模式,双臂接入-服务器直连Client,服务器0,服务器1,VS:,EXTIP:53/VLANEXTINTIP:54/VLANINTGW:54,54,54核心三层交换,SIP,Sport,DIP,Dport,1,678767878080,1,808067876787,LTM,双臂接入-串联部署-扩展端口,Client,,服务器0,VS:,EXTIP:53/VLANEXTINTIP:54/VLANINTGW:54,54核心三层交换54,服务器1,LTM服务器接入交换,SIP,Sport,DIP,Dport,1,678767878080,1,808067876787,双臂接入-串联部署-扩展端口,Client,,服务器0,GW:54GW:54,VS:,EXTIP:53/VLANEXTINTIP:54/VLANINTGW:54,54核心三层交换54,服务器1,LTM服务器接入交换,SIP,Sport,DIP,Dport,1192.16

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论