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年4月 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 255 255 255 255 可以使后台服务器可以 看到 客户端源IP 但这个时候One connect只对一个客户端的连接起作用 OneConnect和应用协议 注意 OneConnectProfile不是必须和HTTPProfile共用 也可以用于其他应用协议 用于其他应用协议的时候必须使用iRules编程来调用OneConnect在需要对长连接进行拆分处理的时候 也需要用OneConnectProfile NAT的工作模式 206 142 12 10 NATAddress 197 12 100 50 NAT和SNAT SNAT全称 SecureNetworkAddressTranslation SNAT的工作模式 206 142 12 10 172 16 12 1 172 16 12 7 172 16 12 8 SNATAddress 197 12 100 50 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 ACCEPTED setsnat addr1 1 1 1 whenHTTP REQUEST setsnat addr HTTP headerX Forwarded For log X Fowarded Foris HTTP headerX Forwarded For whenLB SELECTED snat snat addr HTTPS SSLOffload替换源地址 Server端需要在TCP连接里面获取客户端源地址 SNAT的源地址会话保持 whenRULE INIT loglocal5 warning cnc snatpool setsnat length llength cnc snatpool loglocal5 warning snatpoollengthis snat length whenLB SELECTED setclient addr 10 1 1 33 setclient ip IP client addr setclient last getfield client ip 4 loglocal5 warning clientlastis client last setsnat addr lindex cnc snatpool expr client last snat length loglocal5 warning clientsnataddr snat addr snat 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 pid if f PIDFILE thenkill 9 cat PIDFILE dev null2 1fiecho PIDFILE MEMBER echo 1 sed s ffff 2 dev nulllog info echo logger plocal0 info stocksyslog ngdestinations local0 info var log ltm local4 info var log ltm local1 info var log messages local3 info 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 servers elseif http uristarts with foo usepoolfoo servers elseif http cookie XYZ Type direct usepoolcookie servers elseif findstr http uri type 6 cgi usepoolcgi servers else usepoolweb servers 在此I Rules里 可以看到 如果用户的uri部分以 gif字段结尾 也就是说如果用户访问的是图片服务器 则将用户的访问会话保持在图片服务器上 而如果用户的uri部分以 foo开始 则将会话保持到相应的服务器上 同样 根据用户访问中的cookie字段以及uri里面的某个特定字段里是否与规定的类型相符 从而进行相应的会话保持 LTM组网架构 单臂接入模式双臂接入模式远程节点模式加入独立SSL WA ASM设备防火墙负载均衡多链路接入灾备站点静态路由注入 LTM单臂接入模式单臂模式下的网络物理结构 服务器 服务器 LTM LTM 外部外部网络核心三层交换Vlan1 串口心跳线 核心三层交换 服务器 服务器 LTM 192 168 1 10 192 168 1 11 GW 192 168 1 254GW 192 168 1 254 VS 192 168 1 1 80 SelfIP 192 168 1 253GW 192 168 1 254 192 168 1 254 192 168 0 254 SIP Sport DIP Dport 192 168 0 16787192 168 1 2538888 192 168 1 1192 168 1 11 8080 192 168 1 11 80 192 168 1 2538888 192 168 1 1 80 192 168 0 1 6787 单臂接入 源地址替换模式数据访问流程192 168 0 1Client 源地址替换后的处理 服务器 服务器 LTM 192 168 0 1 192 168 1 10 192 168 1 11 GW 192 168 1 254GW 192 168 1 254 VS 192 168 1 1 80 SelfIP 192 168 1 253GW 192 168 1 254 192 168 1 254 192 168 0 254核心三层交换 HTTPProfile whenHTTP REQUEST HTTP headerinsert Client IP IP client addr ClientiRules 只有HTTP协议的时候 可以通过将源地址插入到客户端请求的HTTPHeader里 然后在服务器上 通过读取这个Header 获得客户端的真实源IP地址 单臂接入 npath模式数据访问流程 Client 192 168 0 1 服务器192 168 1 10Lo 192 168 1 1 服务器192 168 1 11Lo 192 168 1 1 GW 192 168 1 254GW 192 168 1 254 LTMVS 192 168 1 1 80SelfIP 192 168 1 253 GW 192 168 1 254 192 168 0 254核心三层交换192 168 1 254 SIP Sport DIP Dport 192 168 0 16787192 168 1 1 192 168 0 16787192 168 1 1 8080 192 168 1 1 80 192 168 0 16787 npath模式的关键在于服务器上配置的loopback地址在上能找到各种服务器的loopback地址如何配置的文档 单臂接入 服务器非直连模式 无源地址替换 核心三层交换 LTM 192 168 0 1Client 服务器192 168 2 10 GW 192 168 2 254GW 192 168 2 254 VS 192 168 1 1 80 SelfIP 192 168 1 253 GW 192 168 1 254 192 168 2 254 192 168 0 254 服务器192 168 2 11 SIP Sport DIP Dport 192 168 0 1192 168 0 1192 168 2 11192 168 1 1 678767878080 192 168 1 1192 168 2 11192 168 0 1192 168 0 1 808067876787 192 168 1 254 客户端 服务器 LTM 192 168 1 10 GW 192 168 1 254 192 168 1 11 GW 192 168 1 254 VS 192 168 1 1 80 IP 192 168 1 253GW 192 168 1 254 同网段访问处理 必须通过SNAT实现192 168 1 254核心三层交换 SIP Sport DIP Dport 192 168 0 10 6787 192 168 1 1 80 192 168 1 2538888 192 168 1 11 80 192 168 1 11 80 192 168 1 2538888 192 168 1 1 80 192 168 0 1 6787 服务器 服务器 LTM 单臂接入 服务器更改网关数据访问流程192 168 0 1Client 192 168 1 10 192 168 1 11 GW 192 168 1 253GW 192 168 1 253 VS 192 168 1 1 80 SelfIP 192 168 1 253GW 192 168 1 254 192 168 1 254 192 168 0 254核心三层交换 SIP192 168 0 1 Sport6787 DIP192 168 1 1 Dport80 192 168 0 1192 168 1 11192 168 1 1 67878080 192 168 1 11192 168 0 1192 168 0 1 8067876787 Client 服务器更改网关后的直接访问服务器问题192 168 0 1 服务器192 168 1 10 GW 192 168 1 253GW 192 168 1 253 LTMVS 192 168 1 1 80 IP 192 168 1 253GW 192 168 1 254 SYN192 168 0 254 核心三层交换192 168 1 254 SYN 服务器 SYN ACK192 168 1 11 SIP192 168 0 1192 168 1 11 Sport678780 DIP192 168 1 11192 168 0 1 Dport806787 FastL4Profile 双臂接入模式 双臂接入 服务器直连192 168 0 1Client 服务器192 168 2 10 服务器192 168 2 11 VS 192 168 1 1 EXTIP 192 168 1 253 VLANEXTINTIP 192 168 2 254 VLANINTGW 192 168 1 254 192 168 1 254 192 168 0 254核心三层交换 SIP Sport DIP Dport 192 168 0 1192 168 0 1192 168 2 11192 168 1 1 678767878080 192 168 1 1192 168 2 11192 168 0 1192 168 0 1 808067876787 LTM 双臂接入 串联部署 扩展端口 Client 192 168 0 1 服务器192 168 2 10 VS 192 168 1 1 EXTIP 192 168 1 253 VLANEXTINTIP 192 168 2 254 VLANINTGW 192 168 1 254 192 168 0 254核心三层交换192 168 1 254 服务器192 168 2 11 LTM服务器接入交换 SIP Sport DIP Dport 192 168 0 1192 168 0 1192 168 2 11192 168 1 1 678767878080 192 168 1 1192 168 2 11192 168 0 1192 168 0 1 808067876787 双臂接入 串联部署 扩展端口 Client 192 168 0 1 服务器192 168 2 10 GW 192 168 2 254GW 192 168 2 254 VS 192 168 1 1 EXTIP 192 168 1 253 VLANEXTINTIP 192 168 2 254 VLANINTGW 192 168 1 254 192 168 0 254核心三层交换192 168 1 254 服务器192 168 2 11 LTM服务器接入交换 SIP Sport DIP Dport 192 168 0 1192 168 0 1192 168 2 11192 168 1 1 678767878080 192 168 1 1192 168 2 11192 168 0 1192 168 0 1 808067876787 双臂接入 旁挂模式 核心三层交换 服务器 服务器 LTM Client 192 168 0 1 192 168 2 10192 168 2 11GW 192 168 2 254GW 192 168 2 254 VS 192 168 1 1 80EXTIP 192 168 1 253 VLANEXTINTIP 192 168 2 254 VLANINTGW 192 168 1 254 192 168 1 254 192 168 0 254 SIP Sport DIP Dport 192 168 0 1 6787 192 168 1 1 80 192 168 0 1192 168 2 11192 168 1 1 67878080 192 168 2 11192 168 0 1192 168 0 1 8067876787 External vlan Internal vlan 旁挂模式下LTM可以用不同的端口接入核心交换 也可以采用端口捆绑模式接入核心交换 然后在端口捆绑里通过VLANtag方式来划分多个VLAN 旁挂模式下的服务器直接访问 核心三层交换 LTM Client 192 168 0 1 服务器192 168 2 10 服务器192 168 2 11 VS 192 168 1 1EXTIP 192 168 1 253 VLANEXTINTIP 192 168 2 254 VLANINT GW 192 168 1 254 192 168 1 254 192 168 0 254 SIP Sport DIP Dport 192 168 0 1192 168 0 1192 168 2 11 6787678780 192 168 2 11192 168 2 11192 168 0 1 80806787 FastL4Profile 双臂接入 避免SpanningTree F5LTM有非常快速的切换机制 200ms 切换完成后会发送ARP广播SpanningTree的重算机制在一些情况下会阻止对端设备收到ARP广播不同设备的ARP更新机制有时会带来很大的麻烦通常情况下 也不建议采用服务器双网卡接入 Client核心三层交换LTM服务器接入交换服务器 Client核心三层交换LTM服务器接入交换服务器 远程节点模式 核心三层交换 LTM Client 192 168 0 1 服务器192 168 20 11 VS 192 168 1 1 80SelfIP 192 168

温馨提示

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

评论

0/150

提交评论