F5-BIG-IP-LTM-详解(工作原理-配置课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《F5-BIG-IP-LTM-详解(工作原理-配置课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- F5 BIG IP LTM 详解 工作 原理 配置 课件
- 资源描述:
-
1、F5 BIG-IP LTM详解北京先进数通信息技术有限公司十二月 19LTM基础架构VS Type详解Profile详解CMP 工作原理One Connect工作原理NAT、SNAT工作原理Monitor工作原理HA工作原理LTM工作原理LTM基础架构什么是TMMTraffic Management ModuleTMOS的核心进程,有自己独立的内存、CPU资源分配和I/O控制所有的生产流量都通过TMM接收一个CPU Core只能有一个TMM进程在V9版本上,15/34/64/68都是单TMM运行在V9版本上,16/36/69/89/84/88都是多TMM运行在V10版本上,16/36/69/8
2、9/84/88都是多TMM运行Viprion只支持9.6和10.0版本,默认都是多TMM运行TMM处理的范围TMM内部处理功能所有的VS入口流量LTM iRiules处理Profile处理会话保持处理负载均衡算法SSL加速(和硬件结合)HTTP 压缩SNAT静态CRL( Certificate revocation list证书吊销清单)文件校验不在TMM里面处理的功能Web Accelerator Module(包括压缩)Application Security ModuleGTM的分配算法处理(包括GTM rules)Named域名解析健康检查日志管理系统数据统计SNMP数据输出HA健康检
3、查BIGIP 内部结构-V9平台15/34/64/68TM/OS管理CPU万兆/千兆交换端口PVA(Packet Velocity ASIC)四层交换专用ASICHost OSWeb 界面管理健康检查SNMP.BridgeTMM0独立的管理机SCCPSSL加解密HTTP压缩AdminConsoleBIGIP 内部结构-Mecury平台16/36/69/896TM/OS管理CPU万兆/千兆交换端口HiSpeed BridgeTMM2Host OSWeb 界面管理健康检查SNMP.TMM3TMM1TMM0独立的管理机AOMCluster Muti Processor多CPU并行处理SSL加解密HT
4、TP压缩ConsoleAdminHost和TMM的内存分配Host在启动的时候限 定了内存分配的大小 ,在没有其他module 的情况下是384MBTMM进程启动后,将 自动获取余下的所有 物理内存Host MemoryTMM Memory查看Host内存占用情况# physmem /查看物理内存大小 8387584b memory show /查看内存分配情况MEMORY STATISTICS -| (Host) Total = 3.835GB Used = 3.590GB| (TMM) Total = 5.976GB Used = 93.22MB查看TMM内存占用情况TMM分配的内存是准确
5、的,Host内存显示在这里有一些偏差VS Type详解Performance L4Standard VSFast HTTPForwarding VSPerformance L4TMM只是负责客户端连接的分配和转发,不改变TCP连接中的任何参数客户端和服务器自行协商TCP传输参数在34/64/68平台上Performance L4可以有PVA加入实现硬件加速在15/16/36/69/89/Viprion平台上都通过TMM核心进行处理Performance L4 VS上只有4层的iRules可以使用默认状态下,新建连接的第一个包必须是Syn包,如果是其他的数据包比如ACK、RST等如果不在连接表中
6、,则全部丢弃。在Fast L4 profile打开Loose close和Loose Initial的时候对非Syn包也可以建立连接表TMM客户端客户端客户端服务器端服务器端服务器端Performance L4 攻击防护-Syn Cookie正常情况下客户端连接和服务器端连接是1:1的关系TMM在第一次收到客户端Syn包时,并不建立连接表TMM的Syn Ack回应通过算法回应给客户端Syn,并期待客户端回应的值TMM对客户端ACK进行计算,确认是真实客户端,再和后台服务器建立连接在84/88上可以实现硬件的Syn Cookie计算,其余的平台都是通过软件实现SynCookie计算Syn Coo
7、kie工作模式下,只有成功建立连接的TCP请求才转发到后台TMMSynSyn,Ack (syncookie)Ack(Cookie)SynSyn-AckAckDataStandard VS正常情况下客户端连接和服务器端连接是1:1的关系默认工作在全代理模式,客户端和服务器端的TCP连接完全独立客户端和服务器端的TCP参数都是由TMM和双方分别协商默认情况下以客户端源IP和后台建立连接,在打开SNAT的情况下用SNAT地址和后台建立连接Standard VS的端口永远对外开放,无论后台是否有服务器在工作TMMSynSyn,AckAckSynSyn-AckAckDataDataStandard 模式
8、下的攻击防护Standard VS模式具有天然的防攻击功能在遇到Syn攻击的时候会导致系统的连接表过大通过System-SYN Check Activation Threshold 的设置,在达到设置值的时候系统自动启动 Syn Cookie,避免建立过多连接,这个值对全局生效大部分的网络层攻击都无法通过Standard模式的VSFast HTTPFast HTTP VS仅用于HTTP协议默认开启One Connect Profile,对客户端连接进行聚合处理默认开启SNAT AutoMap,在服务器端收到的TCP连接请求都是来自于TMM没有会话保持功能不能处理SSL,HTTPSTMM客户端客
9、户端客户端服务器端服务器端服务器端Fowarding VS(Forwarding IP)只能使用Fast L4 Profile按照连接处理,类似于路由器工作,但不完全一样,在Fast L4 Profile中开启Loose Initial和Loose Close之后更为接近路由工作模式所有穿过Fowarding VS的连接都将产生连接表没有Pool Member,转发完全取决于本地路由可以使用基于4层的RulesTMM客户端查询本地路由表转发客户端请求VS和ProfileVS作为所有流量的入口Profile依赖于VS,对进入VS的流量进行格式化处理不同的VS可以用同一个Profile或者不同的P
10、rofileProfile之间存在有相互排斥和相互依存的关系VSTCP ProfileUDP ProfileFastL4 ProfileHTTPRTSPClient SSLServer SSLStreamingSMTPSIPOne ConnectRules的处理必须依赖于VS对流量的接收通过事件触发机制,Rules可以控制流量在VS内部处理的整个过程SSLCompressionClientSideServerSideTCP ExpressServerTCP ExpressCachingMicrokernelVirtual ServeriRulesClientiControl APITCP Pr
11、oxyOneConnectXMLRate ShapingTrafficShieldWeb Accel3rd PartyVS和RulesServeriRulesClientSideServerSideTCP ProxyClient Side EventClient_acceptClient_dataCache_requestDNS_requestHTTP_REQUESTHTTP_REQUEST_DATARTSP_REQUEST.Server Side EventServer_connectServer_dataCache_responseDNS_responseHTTP_RESPONSEHTTP
12、_RESPONSE_DATARTSP_RESPONSE.大部分rules只在同一个VS之内有效Rules内创建的变量以连接为生命周期一个VS上可以有多个Rules,它们将被顺序执行CLIENT_ACCPTEDCLIENT_DATALB_SELECTEDLB_FAILEDSERVER_ACCPTEDSERVER_DATACLIENT_CLOSEDSERVER_CLOSEDRULE_INITVSProfile的作用和工作范围Profile依赖于VSProfile是对VS的流量进行格式化处理举例如果一个VS上配置了TCP Profile, 则该VS对所有的UDP流量都不会接收Profile详解基本流
13、量处理类型Profile TCP, UDP, FastHTTP, Fast L4, SCTP( Stream Control Transmission Protocol )服务流量处理类型Profile HTTP, FTP, SMTP, RTSP( Real Time Streaming Protocol ), SIP( Session Initiation Protocol ), iSessionSSL处理类型 Client SSL,Server SSL会话保持类型 Cookie, Destination IP, hash, msrdp, source IP, Universal, SSL认
14、证处理类型 Radius, CRLDP( Constraint-Based Label Distribution Protocol ), OCSP( Online Certificate Status Protocol )其他处理类型 One Connect, Statistics, NTLM( NT LAN Manager ), Stream重要的Profile-FastL4Reset on Timeout: 在连接达到Time out的是否向两端发送Reset包Idel Timeout:多长时间连接里面没有数据流量的时候就删除连接表Loose Initiation/Loose Close:
15、 是否接收非Syn包建立连接Softare Syn Cookie Protection:是否在VS上启用Syn Cookie,实现Syn攻击防护可能调整的参数重要的Profile-TCP注意在Client Side和Server Side可以使 用不同的TCP Profile通常情况下建议: Client side:TCP WAN Optimized 或LAN Optimized Server side: TCP LAN Optimized除非你非常了解TCP的工作原理,否则不 要调整除idel Timeout以外的任何参数重要的Profile-Client SSL对所有进入VS的流量按照SS
16、L协议进行处理注意Client SSL profile不一定只能使用在HTTPS上使用Client SSL的VS不一定使用443端口TMM客户端客户端客户端服务器端服务器端服务器端SSLSSLSSL重要的Profile-FTPFTP Profile主要用于处理FTP的主动 和被动传输两种模式由于需要配置动态侦听端口,因此FTP 协议必须进行单独处理通过iRules也可以达到同样的目的,但 由于FTP协议使用非常广泛,因此使用 FTP profile来简化配置和处理FTP Profile必须依赖于TCP profile工作为什么要用CMP(Cluster Multi-Processor)性能增长
17、要求CPU的主频增加受到比较大的限制,目前的趋势是以多 核扩展为主ASIC(Application Specific Intergrated Circuits)、NP(Network Processor)的处理架构并不适合于复杂、灵活的流量处理对于不规范的流量,采用硬件加速将导致系统设计僵化, 很难加入新的功能实现市场需求需要充分利用CPU的多核处理能力来提升系统的整体性能CMP工作原理CMP的硬件支持CMP工作模式流量由HSB进行分配在多个TMM上,每个TMM占据一个CPU Core,每个TMM有自己独立的内存空间每个TMM都具有相同的配置,包括VS/Profile/iRules/Pool/
18、Persistence等TMM之间通过内存高速总线进行通讯共享通用信息如会话保持表,SNAT源端口等当CMP被Disable的时候,TMM0接管所有的流量64/68的硬件平台已经支持CMP,在10.0上自动开启VIPTMM0VIPTMM1VIPTMM2VIPTMM3HSBHSBSuper VIP如何查看CMP工作状态b tmm show可以观察每个TMM的状态关于CMP必须了解的内容V9平台启动WA(web应用加速器)和ASM(应用安全 管理器)将Disable CMPiRules中定义全局变量将Disable CMP所有的非TCP/UDP流量都只使用TMM0进行处理V9中使用Session
19、add, Session Lookup命令将 Disable CMPConnection Limit和Rate Shaping的配置是针对每 个TMM生效手工关闭CMP运行 b db Provision.tmmCount 1 调整后必须重启任何一个TMM Crash,将导致设备间FailoverTCPdump已经调整为可支持CMP查看Virtual Server的CMP工作状态如何查看TMM CPU占用率top命令可以显示每颗CPU的占用率和V9相比,TMM的CPU在Top命令中的显示发生了变化每颗CPU的CPU占用率目前在图形界面里都消失了,目前只有 整体的CPU占用率One Connect
20、工作原理连接聚合和内容交换index.htma.gifb.gifc.aspsales.htmd.gife.giff.aspsales.htmd.gife.gifindex.htma.gifb.gifc.aspServerf.aspindex.htma.gifb.gifc.aspsales.htmd.gife.giff.aspsales.htmd.gife.gifindex.htma.gifb.gifc.aspServerf.aspindex.htma.gifb.gifc.aspindex.htma.gifb.gifc.aspHTML server poolGIF server poolASP
21、server pool连接聚合内容交换注:eligible reuse 符合条件的再利用One Connect的典型工作场景实现连接聚合降低服务器的连接总数需要对每一个请求都进行单独处理(注意在多数 情况下,LTM只对一个连接的第一个包进行处理)典型的,打开Cookie会话保持有时候会出现保持 不正确的情况,这时就需要打开One Connect通过设置Mask=255.255.255.255,可以使后台服 务器可以“看到”客户端源IP,但这个时候 One-connect只对一个客户端的连接起作用One Connect和应用协议注意! One Connect Profile不是必须和HTTP P
22、rofile 共用,也可以用于其他应用协议。 用于其他应用协议的时候必须使用iRules编程 来调用One Connect在需要对长连接进行拆分处理的时候,也需要用 One Connect ProfileNAT的工作模式206.142.12.10NAT Address:197.12.100.50NAT和SNATSNAT全称:Secure Network Address TranslationSNAT的工作模式206.142.12.10172.16.12.1172.16.12.7172.16.12.8SNAT Address:197.12.100.50NAT和SNAT之间的差别NAT1比1接收所
23、有发往NAT地址的连接所有的连接只是通过LTM的连接表管理,但是是无状态的,连接不会被Timeout连接不能被镜像SNAT多对一或者多对多拒绝所有发往SNAT地址的连接请求.连接通过LTM的连接表管理,有timeout设置连接可以被镜像SNAT AutoMap当配置SNAT AutoMap的时候,请求从那个VLAN 发出去,则SNAT的源地址为VLAN上的SelfIP当一个VLAN上有多个SelfIP存在的时候,SNAT 的源地址是在多个SelfIP之间轮询SNAT Pool的工作模式SNATPool是提供了一个可用于SNAT源地址的列表BIGIP采用最小连接数的方式在SNAT的源地址之间进行
24、选择通过iRules控制SNATwhen CLIENT_ACCEPTED set snat_addr 1.1.1.1when HTTP_REQUEST set snat_addr HTTP:header X-Forwarded-For log X-Fowarded-For is HTTP:header X-Forwarded-Forwhen LB_SELECTED snat $snat_addrHTTPSSSL Offload替换源地址Server 端需要在TCP连接里面获取客户端源地址SNAT的源地址会话保持when RULE_INIT #log local5.warning -$cnc_s
25、natpoolset snat_length llength $cnc_snatpoollog local5.warning -snat pool length is $snat_lengthwhen LB_SELECTED #set client_addr 10.1.1.33set client_ip IP:client_addrset client_last getfield $client_ip . 4#log local5.warning -client last is $client_last set snat_addr lindex $cnc_snatpool expr $clie
展开阅读全文