1:CC攻击是正常的事务逻辑,大并发让你处理不过来,处理XP SP2,以上的体系都封了RAW格局协议封包自定义,除了根据应用层改协议,之外都是模仿或恳求来测验传输层 2:UDP不会粘包,不会少包,除非缓存区满 3:TCP主要特征有: 3次握手衔接、4次挥手断开、拥塞操控、重传操控 流传输方法,服务端需求额定解析方面有:协议粘包,协议少包,协议丢包、反常协议呼应、正常协议呼应
UDP主要特征有:包传输方法、无粘包错包、且无衔接,无拥塞操控,无重传机制 4:TCP主要特征有: 1.3次握手衔接: 一测验用例:压力机在恳求很多握手链接后敏捷封闭,需求大并发操作 一测验逻辑点:测验服务端底层逻辑封闭socket的一起,又来新的socket链接恳求,服务端底层逻辑这部分是否处理正常 我测验的项目BUG:创立ID为5000的socket端口后,因为压力机封闭socket,导致服务端收回这个ID为5000的SOCKET,新来的TCP衔接恳求,因为5000的开释又运用上这个SOCEKT,这时服务端报错:新的SOCKET无法运用 二测验用例:压力机在恳求很多握手链接,需求大并发操作 二测验逻辑点:测验服务端最大衔接SOCKET数量,以保证服务端有可用的SOCKET资源分配, 我测验的项目BUG:服务端创立5000个SOCKET后无法创立成功,因装备的JAVA内存不行及体系敞开的端口数不行 上述两点的测验东西实现:只要IOCP和AIO底层测验验证最有用,测验一起调查在 N并发/秒 得出瓶颈拐点 5:4次挥手断开: 测验用例:压力机设置SOCKET选项,在恳求很多握手链接后敏捷封闭,需求大并发操作//快速封闭socket ::setsockopt(pUsoc, SOL_SOCKET, SO_REUSEADDR, (const char*)&on, sizeof(bool));//复用端口 ::setsockopt(pUsoc, SOL_SOCKET, SO_DONTLINGER, (const char*)&off, sizeof(bool));//翻开LINGER ::setsockopt(pUsoc, SOL_SOCKET, SO_LINGER, (const char*)&m_sLinger, sizeof(linger));//设置强制封闭SOCKET 测验逻辑点:测验因压力机器人修正Socket装备,客户端主动断开,服务端无法得到4次挥手的告诉包,导致需求N时刻节点才封闭Socket/不封闭Socket 项目测验BUG:因无法得到4次挥手包,服务端存在很多反常长衔接,导致拒绝服务 6:拥塞操控-简略理解为,堵死轿车排气孔,一起踩油门 测验用例:压力机客户端设置1字节承受协议或1字节缓存区,一起恳求需求呼应的大数据:例如排行榜 测验逻辑点:因为拥塞操控特别性,TCP会开辟内存缓存这部分数据,简略说,服务端发生的协议多,但有用发出的少,体系缓存剩下协议越来越多,硬件监控服务端内存暴升 项目测验BUG:同上,设置好SOCKET参数后,恳求排行榜数据,服务端内存暴升,直接溃散 7:重传操控 测验用例:建立测验署理东西,对包传输顺序/丢包进行参数装备转发 测验逻辑点:因为重传的特别性是传输层操控,所以在应用层模仿丢包和乱序恳求 我们常用的kugou音乐的APP经过东西模仿重传操控,在试听音乐的时分,进行丢包和乱序测验,APP溃散 8:流传输方法,内容比较多,慢慢看
测验用例:协议粘包 - 经过署理东西主动*N倍,既123变123123123123123123 测验逻辑点: 1)测验服务端最大可切割的数据包上限, 2)测验服务端是否并发履行协议,如收取任务、购买物品、创立人物等等 项目BUG:创立N个123人物在数据库中,且完整协议切割最大上限为4,后期调至20份/Max缓存区 测验用例:协议少包 - 经过东西1字节发送 1)高速 2)慢速 测验逻辑点: 1)高速发送1字节,服务端读取处理协议,来耗费CPU资源, 2)占用服务端缓存区长时刻耗费资源,以上2点测验服务端对协议读取健壮性 测验用例:服务端私有协议 - 构造反常数据及有用数据进行测验 测验逻辑点: 1)有用数据 包体 - 这儿用的有用数据既为超大包体,如喊话等可变协议,超过服务端缓存器上限 协议接口 - 关于已知的服务端协议呼应接口遍历,遍历测验是否有未敞开的或频频调用 协议参数 - A运用B的参数如用户ID、数值类的:0 负数 鸿沟值 正数溢出 2)反常数据 包体 - 修正包体鸿沟值或自定义数据,既包体过短或超长数值 协议接口 - 遍历服务端接口,既不存在的接口,主动+N修正 协议参数 - 遍历字节既协议主动+N修正 特别协议 - 及发送非正常的协议如1字节 00 11 22 33 - FF 项目BUG: 1)协议包体:移动协议修正包体数据,包体修正为8字节,既无协议接口的参数,服务端报错溃散 2)协议参数: A用户运用 B用户ID登陆,强制踢B下线、购买数量*金额超服务端变量上限,数值溢出倒贴钱给玩家、负数不用多说,卖东西-1,多送一件给玩家、有除法计算的地方运用0数值,服务端溃散 3)协议接口: 副本调用怪自爆协议,秒杀一切怪、人物在监狱中调用传送接口越狱 攻击类,并发N/秒恳求大数据的协议接口,服务端内存Cpu暴升,后期约束恳求频率 10:UDP主要特征有:包传输、无粘包、错包、无衔接,无拥塞操控、无重传机制 测验用例: 应用层 1)协议测验同TCP 2)大并发恳求(功能测验同TCP) 测验逻辑点: 1)因为传输层无特别处理,即传输层在协议测验上只要丢包、乱序、推迟等3项,测验计划同TCP的测验用例 2)应用层的计划延用TCP中测验用例: 有用数据、反常数据 1)有用数据:包体 - 这儿用的有用数据既为超大包体,如喊话等可变协议,超过服务端缓存器上限 2)反常数据:包体 - 修正包体鸿沟值或自定义数据,既包体过短或超长数值 服务器租用托管,机柜租用,云服务器,高防服务器等等……QQ:1270298708
|