收藏 分销(赏)

F5LTM工作原理.ppt

上传人:精*** 文档编号:12815824 上传时间:2025-12-10 格式:PPT 页数:66 大小:796KB 下载积分:16 金币
下载 相关 举报
F5LTM工作原理.ppt_第1页
第1页 / 共66页
F5LTM工作原理.ppt_第2页
第2页 / 共66页


点击查看更多>>
资源描述
,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,F5 Networks,*,F5LTM工作原理,LTM,基础架构,VS Type,详解,Profile,详解,CMP,工作原理,One Connect,工作原理,NAT,、,SNAT,工作原理,Monitor,工作原理,HA,工作原理,Agenda,LTM,基础架构,3,什么是,TMM,Traffic Management Module,TMOS,的核心进程,有自己独立的内存、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/89/84/88都是多TMM运行,Viprion,只支持,9.6,和,10.0,版本,默认都是多,TMM,运行,4,TMM,处理的范围,5,TMM,内部处理功能,所有的,VS,入口流量,LTM,i,Riules,处理,Profile,处理,会话保持处理,负载均衡算法,SSL,加速(和硬件结合),HTTP,压缩,SNAT,静态,CRL,文件校验,不在,TMM,里面处理的功能,Web Accelerator Module(,包括压缩,),Application Security Module,GTM,的分配算法处理(包括,GTM rules,),Named,域名解析,健康检查,日志管理,系统数据统计,SNMP,数据输出,HA,健康检查,BIGIP 内部结构-V9平台15/34/64/68,6,TM/OS,管理,CPU,万兆,/,千兆交换端口,PVA,四层交换专用,ASIC,Host OS,Web,界面管理,健康检查,SNMP,.,Bridge,TMM,0,独立的管理机,SCCP,SSL,加解密,HTTP,压缩,Admin,Console,BIGIP,内部结构-Mecury平台16/36/69/89,7,TM/OS,管理,CPU,万兆,/,千兆交换端口,HiSpeed Bridge,TMM,2,Host OS,Web,界面管理,健康检查,SNMP,.,TMM,3,TMM,1,TMM,0,独立的管理机,AOM,Cluster,Muti,Processor,多,CPU,并行处理,SSL,加解密,HTTP,压缩,Console,Admin,Host,和,TMM,的内存分配,H,ost,在启动的时候限定了内存分配的大小,在没有其他,module,的情况下是,384MB,TMM,进程启动后,将自动获取余下的所有物理内存,8,H,ost Memory,TMM Memory,查看,Host,内存占用情况,#physmem /,查看物理内存大小,8387584,b memory show/,查看内存分配情况,MEMORY STATISTICS-,|(Host)Total=3.835GB Used=3.590GB,|(TMM)Total=5.976GB Used=93.22MB,9,查看,TMM,内存占用情况,TMM,分配的内存是准确的,,Host,内存显示在这里有一些偏差,10,BIGIP,的重要进程,bigstart status/,查看,F5,进程状态,top/,查看,Host,进程状态,top bcn 1/,显示,Host,的所有进程,11,TomCat4,TMM,TMM,MCPD,bigd,big3d,业务数据处理,本地健康检查,GTM/Mpack,通讯,配置管理界面,Tamd,外部认证,bcm56xxd,交换芯片管理,Module,工作模式,-GTM,所有的请求接收和响应都通过,TMM,进行,g,tm,d,负责动态策略解析,并将不在策略制定内的请求转发给,named,g,tmd,的所有状态来源均由,big3d,汇报,g,tmd,不会直接与,bigd,通讯,而是从,big3d,去获得信息,12,TMM,客户端请求,gtmd,named,bigd,big3d,mcpd,Listener,接收请求,动态策略解析,静态策略解析,RTT,探测,iQuery,信息收集和发送,本地健康检查,Module,工作模式,-WA,PVAC,是,WA Module,处理的主进程,与,TMM,之间采用,Plugin,模式通讯,PVAC,可以以多线程方式运行,所有的流量由,TMM,发送到,pvac,,,pvac,处理完成之后返回给,TMM,,再通过负载均衡策略转发到服务器,13,TMM,客户端请求,pvac,Web/,应用服务器,Web/,应用服务器,Web/,应用服务器,pvac,Module,工作模式,-ASM,14,asm,是,ASM,处理的主进程,与,TMM,之间采用,Plugin,模式通讯,asm,可以以多线程方式运行,所有的流量由,TMM,发送到,asm,,,asm,处理完成之后返回给,TMM,,再通过负载均衡策略转发到服务器,14,TMM,客户端请求,asm,Web/,应用服务器,Web/,应用服务器,Web/,应用服务器,asm,Module,工作模式,-SAM,TMM,接收所有流量请求,SSL VPN,通道建立处理在,TMM,内部完成,APD(Application Policy Daemon),负责策略执行,用户认证等,不处理具体的业务流量,15,TMM,客户端请求,APD,Web/,应用服务器,Web/,应用服务器,Web/,应用服务器,VS Type,详解,16,VS,Type,详解,Performance L4,Standard VS,Fast HTTP,Fowarding VS,17,Performance L4,TMM,只是负责客户端连接的分配和转发,不改变,TCP,连接中的任何参数,客户端和服务器自行协商,TCP,传输参数,在,34/64/68,平台上,Performance L4,可以有,PVA,加入实现硬件加速,在,15/16/36/69/89/Viprion,平台上都通过,TMM,核心进行处理,Performance L4,VS,上只有,4,层的,iRules,可以使用,默认状态下,新建连接的第一个包必须是,Syn,包,如果是其他的数据包比如,ACK,、,RST,等如果不在连接表中,则全部丢弃。,在,Fast L4 profile,打开,Loose close,和,Loose Initial,的时候对非,Syn,包也可以建立连接表,18,TMM,客户端,客户端,客户端,服务器端,服务器端,服务器端,Performance L4,攻击防护,-Syn Cookie,正常情况下客户端连接和服务器端连接是,1:1,的关系,TMM,在第一次收到客户端,Syn,包时,并不建立连接表,TMM,的,Syn Ack,回应通过算法回应给客户端,Syn,,并期待客户端回应的值,TMM,对客户端,ACK,进行计算,确认是真实客户端,再和后台服务器建立连接,在,84/88,上可以实现硬件的,Syn Cookie,计算,其余的平台都是通过软件实现,SynCookie,计算,Syn,Cookie,工作模式下,只有成功建立连接的,TCP,请求才转发到后台,19,TMM,Syn,Syn,Ack(syncookie),Ack(Cookie),Syn,Syn-,Ack,Ack,Data,Standard VS,正常情况下客户端连接和服务器端连接是,1:1,的关系,默认工作在全代理模式,客户端和服务器端的,TCP,连接完全独立,客户端和服务器端的,TCP,参数都是由,TMM,和双方分别协商,默认情况下以客户端源,IP,和后台建立连接,在打开,SNAT,的情况下用,SNAT,地址和后台建立连接,Standard VS,的端口永远对外开放,无论后台是否有服务器在工作,20,TMM,Syn,Syn,Ack,Ack,Syn,Syn-,Ack,Ack,Data,Data,Standard,模式下的攻击防护,Standard VS,模式具有天然的防攻击功能,在遇到,Syn,攻击的时候会导致系统的连接表过大,通过,System-,SYN Check Activation Threshold,的设置,在达到设置值的时候系统自动启动,Syn Cookie,,避免建立过多连接,这个值对全局生效,大部分的网络层攻击都无法通过,Standard,模式的,VS,21,Fast HTTP,Fast HTTP VS,仅用于,HTTP,协议,默认开启,One Connect Profile,,对客户端连接进行聚合处理,默认开启,SNAT AutoMap,,在服务器端收到的,TCP,连接请求都是来自于,TMM,没有会话保持功能,不能处理,SSL,,,HTTPS,22,TMM,客户端,客户端,客户端,服务器端,服务器端,服务器端,Fowarding VS,(,Forwarding IP,),只能使用,Fast L4 Profile,按照连接处理,类似于路由器工作,但不完全一样,在,Fast L4 Profile,中开启,Loose Initial,和,Loose Close,之后更为接近路由工作模式,所有穿过,Fowarding VS,的连接都将产生连接表,没有,Pool Member,,转发完全取决于本地路由,可以使用基于,4,层的,Rules,23,TMM,客户端,查询本地路由表,转发客户端请求,VS,和,Profile,VS,作为所有流量的入口,Profile,依赖于,VS,,对进入,VS,的流量进行格式化处理,不同的,VS,可以用同一个,Profile,或者不同的,Profile,Profile,之间存在有相互排斥和相互依存的关系,24,VS,TCP Profile,UDP Profile,FastL4 Profile,HTTP,RTSP,Client SSL,Server SSL,Streaming,SMTP,SIP,One Connect,VS,和,Rules,Rules,的处理必须依赖于,VS,对流量的接收,通过事件触发机制,,Rules,可以控制流量在,VS,内部处理的整个过程,25,SSL,Compression,Client,Side,Server,Side,TCP Express,Server,TCP Express,Caching,Microkernel,Virtual Server,iRules,Client,iControl API,TCP Proxy,OneConnect,XML,Rate Shaping,TrafficShield,Web Accel,3,rd,Party,VS,和,Rules,26,Server,iRules,Client,Side,Server,Side,TCP Proxy,Client Side Event,Client_accept,Client_data,Cache_request,DNS_request,HTTP_REQUEST,HTTP_REQUEST_DATA,RTSP_REQUEST,.,.,.,.,Server Side Event,Server_connect,Server_data,Cache_response,DNS_response,HTTP_RESPONSE,HTTP_RESPONSE_DATA,RTSP_RESPONSE,.,.,.,.,VS,和,Rules,大部分,rules,只在同一个,VS,之内有效,Rules,内创建的变量以连接为生命周期,一个,VS,上可以有多个,Rules,,它们将被顺序执行,27,CLIENT_ACCPTED,CLIENT_DATA,LB_SELECTED,LB_FAILED,SERVER_ACCPTED,SERVER_DATA,CLIENT_CLOSED,SERVER_CLOSED,RULE_INIT,VS,Profile,详解,28,Profile,的作用和工作范围,Profile,依赖于,VS,Profile,是对,VS,的流量进行格式化处理,举例如果一个,VS,上配置了,TCP Profile,,则该,VS,对所有的,UDP,流量都不会接收,29,Profile,的作用和工作范围,基本流量处理类型,Profile,TCP,UDP,FastHTTP,Fast L4,SC,TP,服务流量处理类型,Profile,HTTP,FTP,SMTP,RTSP,SIP,iSession,SSL,处理类型,Client SSL,,,Server SSL,会话保持类型,Cookie,Destination IP,hash,msrdp,source IP,Universal,SSL,认证处理类型,Radius,CRLDP,OCSP,其他处理类型,One Connect,Statistics,NTLM,Stream,30,重要的,Profile-FastL4,Reset on,Timeout:,在连接达到,Time out,的是否向两端发送,Reset,包,Idel Timeout,:多长时间连接里面没有数据流量的时候就删除连接表,Loose Initiation/Loose Close:,是否接收非,Syn,包建立连接,Softare Syn Cookie Protection:,是否在,VS,上启用,Syn Cookie,,实现,Syn,攻击防护,31,可能调整的参数,重要的,Profile-TCP,注意在,Client Side,和,Server Side,可以使用不同的,TCP Profile,通常情况下建议:,Client side,:,TCP WAN Optimized,或,LAN Optimized,Server side:TCP LAN Optimized,除非你非常了解,TCP,的工作原理,否则不要调整除,idel Timeout,以外的任何参数,32,重要的,Profile-Client SSL,对所有进入,VS,的流量按照,SSL,协议进行处理,注意,Client SSL profile,不一定只能使用在,HTTPS,上,使用,Client SSL,的,VS,不一定使用,443,端口,33,TMM,客户端,客户端,客户端,服务器端,服务器端,服务器端,SSL,SSL,SSL,重要的,Profile-FTP,FTP,的连接模式有两种,,PORT,(主动模式)和,PASV,(被动模式),主动模式的连接过程是:客户端动态的选择一个端口(这个端口号一定是,1024,以上的,因为,1024,以前的端口都已经预先被定义好)向服务器端的,FTP,端口(默认是,21,)发送连接请求,服务器接受连接,建立一个命令连接。当需要传送数据时或者列出服务器的文件列表时(通常使用,ls,或,dir,命令),客户端通过命令连接告诉服务器(使用,PORT,命令):“我已经打开了,XX,端口,请你过来连接”。于是服务器使用,20,端口向客户端的,XX,端口发送连接请求,建立一条数据连接来传送数据。被动模式:客户端首先使用与主动连接模式相同的方法与服务器建立命令连接。当需要传送数据时,客户端通过命令连接告诉服务器(使用,PASV,命令)“我要连接你的,XX,端口,请问是否空闲”,如果恰好该端口空闲,服务器会告诉客户端:“你请求的端口空闲,可以建立连接(,ACK,确认信息)”,否则服务器会说“该端口已经占用,请换个端口(,UNACK,信息)”。如果客户端得到的是空闲的提示,就会利用该端口建立连接,否则就换个端口重新尝试,这也就是所谓的连接建立的协商过程,.PORT,模式建立数据传输通道是由服务器端发起的,服务器使用,20,端口连接客户端的某一个大于,1024,的端口;在,PASV,模式中,数据传输的通道的建立是由,FTP,客户端发起的,他使用一个大于,1024,的端口连接服务器的,1024,以上的某一个端口。如果从,C/S,模型这个角度来说,,PORT,对于服务器来说是,OUTBOUND,,而,PASV,模式对于服务器是,INBOUND.,34,FTP Profile,主要用于处理,FTP,的主动和被动传输两种模式,由于需要配置动态侦听端口,因此,FTP,协议必须进行单独处理,通过,iRules,也可以达到同样的目的,但由于,FTP,协议使用非常广泛,因此使用,FTP profile,来简化配置和处理,FTP Profile,必须依赖于,TCP profile,工作,CMP,工作原理,35,为什么要用,CMP,性能增长要求,CPU,的主频增加受到比较大的限制,目前的趋势是以多核扩展为主,ASIC,、,NP,的处理架构并不适合于复杂、灵活的流量处理,对于不规范的流量,采用硬件加速将导致系统设计僵化,很难加入新的功能实现市场需求,需要充分利用,CPU,的多核处理能力来提升系统的整体性能,36,CMP,的硬件支持,37,CMP,工作模式,流量由,HSB,进行分配在多个,TMM,上,每个,TMM,占据一个,CPU Core,,每个,TMM,有自己独立的内存空间,每个,TMM,都具有相同的配置,包括,VS/Profile/iRules/Pool/Persistence,等,TMM,之间通过内存高速总线进行通讯共享通用信息如会话保持表,,SNAT,源端口等,当,CMP,被,Disable,的时候,,TMM0,接管所有的流量,64/68,的硬件平台已经支持,CMP,,在,10.0,上自动开启,38,VIP,TMM0,VIP,TMM1,VIP,TMM2,VIP,TMM3,HSB,HSB,Super VIP,如何查看,CMP,工作状态,b,tmm show,可以观察每个,TMM,的状态,39,关于,CMP,必须了解的内容,V9,平台启动,WA,和,ASM,将,Disable CMP,iRules,中定义全局变量将,Disable CMP,所有的非,TCP/UDP,流量都只使用,TMM0,进行处理,V9,中使用,Session add,Session Lookup,命令将,Disable CMP,Connection Limit,和,Rate Shaping,的配置是针对每个,TMM,生效,手工关闭,CMP,运行,b db Provision.tmmCount 1,调整后必须重启,任何一个,TMM Crash,,将导致设备间,Failover,TCPdump,已经调整为可支持,CMP,40,查看,Virtual Server,的,CMP,工作状态,41,如何查看,TMM CPU,占用率,top,命令可以显示每颗,CPU,的占用率,和,V9,相比,,TMM,的,CPU,在,Top,命令中的显示发生了变化,每颗,CPU,的,CPU,占用率目前在图形界面里都消失了,目前只有整体的,CPU,占用率,42,One Connect,工作原理,43,连接聚合和内容交换,44,index.htm,a.gif,b.gif,c.asp,sales.htm,d.gif,e.gif,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,sales.htm,d.gif,e.gif,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,HTML server pool,GIF server pool,ASP server pool,连接聚合,内容交换,One Connect,工作原理,45,One Connect,的典型工作场景,实现连接聚合降低服务器的连接总数,需要对每一个请求都进行单独处理(注意在多数情况下,,LTM,只对一个连接的第一个包进行处理),典型的,打开,Cookie,会话保持有时候会出现保持不正确的情况,这时就需要打开,One Connect,通过设置,Mask=255.255.255.255,,可以使后台服务器可以“看到”客户端源,IP,,但这个时候,One-connect,只对一个客户端的连接起作用,46,One Connect,和应用协议,注意!,One Connect Profile,不是必须和,HTTP Profile,共用,也可以用于其他应用协议。,用于其他应用协议的时候必须使用,iRules,编程来调用,One Connect,在需要对长连接进行拆分处理的时候,也需要用,One Connect Profile,47,NAT,和,SNAT,48,SNAT,的全称,49,S,ecure,N,etwork,A,ddress,T,ranslation,SNAT,=,NAT,的工作模式,50,206.142.12.10,NAT Address:,197.12.100.50,SNAT,的工作模式,51,206.142.12.10,172.16.12.1,172.16.12.7,172.16.12.8,SNAT Address:,197.12.100.50,NAT,和,SNAT,之间的差别,52,NAT,1,比,1,接收所有发往,NAT,地址的连接,所有的连接只是通过,LTM,的连接表管理,但是是无状态的,连接不会被,Timeout,连接不能被镜像,SNAT,多对一或者多对多,拒绝所有发往,SNAT,地址的连接请求.,连接通过,LTM,的连接表管理,有,timeout,设置,连接可以被镜像,SNAT AutoMap,当配置,SNAT AutoMap,的时候,请求从那个,VLAN,发出去,则,SNAT,的源地址为,VLAN,上的,SelfIP,当一个,VLAN,上有多个,SelfIP,存在的时候,,SNAT,的源地址是在多个,SelfIP,之间轮询,53,SNAT Pool,的工作模式,SNATPool,是提供了一个可用于,SNAT,源地址的列表,BIGIP,采用最小连接数的方式在,SNAT,的源地址之间进行选择,54,通过,iRules,控制,SNAT,when CLIENT_ACCEPTED,set snat_addr 1.1.1.1,when HTTP_REQUEST,set snat_addr HTTP:header X-Forwarded-For,log X-Fowarded-For is HTTP:header X-Forwarded-For,when LB_SELECTED,snat$snat_addr,55,HTTPS,SSL Offload,替换源地址,Server,端需要在,TCP,连接里面获取客户端源地址,SNAT,的源地址会话保持,when RULE_INIT,#log local5.warning-$cnc_snatpool,set snat_length llength$cnc_snatpool,log local5.warning-snat pool length is$snat_length,when LB_SELECTED,#set client_addr 10.1.1.33,set client_ip IP:client_addr,set client_last getfield$client_ip.4,#log local5.warning-client last is$client_last,set snat_addr lindex$cnc_snatpool expr$client_last%$snat_length,#log local5.warning-client snat addr$snat_addr,snat$snat_addr,56,Timeout,定义和镜像,SNAT,可以在两台设备之间镜像,SNAT,对于,TCP idle Timeout,和,UDP idle Timeout,可以有独立的设置,57,Monitor,工作原理,58,Monitor,如何向外发送请求,所有的,Monitor,请求都是由,bigd,进程发起,Monitor,流量要穿过,TMM,发送到,Server,或者其他位置,在,b conn,中可以看到,Monitor,的流量,59,TMM,bigd,重要的,Monitor-TCP,Send String:,发送的请求字符串,支持,C,语言的转义符,Receive String:,在返回的内容中查询的字符串,Transparent:,数据包内的三层发送目的地是,Alias Address,,二层的发送目的地是,Node Address,的,MAC,地址,60,重要的,Monitor-External Monitor,MEMBER=$1;,PORT=$2;,HOST_2_RESOLV=$3;,$#-ne 3&exit 255,PIDFILE=/var/run/pinger.$MEMBER.eav.$PORT.pid,if -f$PIDFILE,then,kill-9 cat$PIDFILE /dev/null 2&1,fi,echo$PIDFILE,MEMBER=echo$1|sed s/:ffff:/2/dev/null,log_info(),echo$*|logger-p local0.info,#,#stock syslog-ng destinations-,#,local0.info-/var/log/ltm,#,local4.info-/var/log/ltm,#,local1.info-/var/log/messages,#,local3.info-/var/log/messages,#this is for debug only!do not call log_info below unless,#you want to see your syntax and the shell evaluation of,#variables(variable exansion),61,HA,工作原理,62,HA,工作模式,-Active/Active,每个,VS,对外提供不同的服务,服务器必须分组,分别指不同的网关,在使用,SNAT,的情况下不需要服务器指不同的网关(建议模式),63,VS 1,VS 2,串口心跳线的工作模式,没有数据在串口心跳线之间传输,两台设备是通过监控,Failover,线上的电压来决定是否切换,备机一旦检测到主机电压为,0,则进行接管动作,切换时间在,200-300,毫秒之间,SOD(Switch Over Deamon),进程负责监控,Failover,线上的电压,64,网络心跳线的工作模式,两台设备之间通过网络互相发送心跳信号,Network Failover,可以设置,2,条路径,Network Failover,和串口心跳线,Failover,可以同时使用,在,10.0,里的,Network Failover,有巨大的变化,65,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服