近一个月以来,笔者所在公司运营的网第([url]www.wondi.cn[/url])等网站访问速度感觉越来越慢。由于一直在专心处理别的事情,没有顾及过来。上周四上午开始,访问速度极其糟糕。
唐僧西天取经,经历九九八十一难。在随后的三天,通过技术手段对网站流量进行了全方位的分析。已成功地将服务器流量从1.5m/s以上降低到0.5m/s以下,服务器访问速度得到很大的提升。在此特别将这些技术手段记录下来,以籍总结和分享。
1. 分析各服务器的带宽使用情况
由于我们是多台服务器独享2M带宽,所以我们第一步是需要分析各服务器的带宽使用情况。我们通过查看各服务器任务管理器的“联网”实时数据即可知道大致流量情况。网络应用的平均使用率乘以线路速度就得到这台服务器的平均占用带宽。以下是一个查看服务器带宽使用的图示:
2008-4-21_1.gif
不要人为地认为服务器的网站内容简单,流量肯定不大。这次笔者就犯了这个错误,而导致没有去认真查看内容简单的服务器。而实际上真正占用带宽资源的就是这台服务器。
2. 诊断服务器上的IP带宽使用情况
通过第一步分析,我们了解每台服务器的带宽占用情况。对于带宽占用超过预估的服务器,我们需要进一步进行诊断。由于一台服务器上可以配置多个IP地址,因此我们需要了解不同IP的带宽使用情况。
在网络连接属性中,我们分别取消具体的IP地址,观测流量的变化即可知道这个IP大致的占用带宽比例。这种分析方法也适合在遭受恶意***时使用。
3. 分析各个网站的带宽使用情况
通过第二步分析,我们对流量在各个IP之间的占用比例有了大致的了解。我们需要对流量异常的IP进行进一步分析。由于同一IP下可能开设不同的网站或服务,所以我们需要逐一关闭单个网站或服务来观测流量变化。
需要特别注意的是:对于DOS等恶意***行为,关闭网站或服务是不能检测到流量的变化,而需要配合第二步,同时将域名解析逐一关闭掉进行跟踪分析才能得到受***的网站或IP。
4. 分析访问日志的具体行为
通过第三步跟踪,我们知道了出现异常的网站或服务,或者是被恶意***的网站或IP。对此,我们需要启用IIS或其他服务的访问日志记录。通过日志分析,我们能够了解异常流量的IP来源和行为。针对具体网站或服务,最好有独立的访问日志文件。
这次我们得到的访问日志分析结果为:YodaoBot爬虫大量访问根本不存在的mp3文件,Sosospider爬虫太过频繁地访问页面。至今还不知道YodaoBot为什么拼命爬根本不存在的mp3文件?
5. 对症下药
针对第四步的分析结果,我们设置了爬虫访问限制,详细参考“禁止搜索引擎爬虫”一文。然而出乎意料的是YodaoBot和Sosospider竟然不理会爬虫规则,看来这些爬虫需要改进的工作不少。
需要特别说明的是:设置IIS限制IP访问不能限制IP的访问来源,只限制页面的访问权限。对于上述的爬虫虽然设置其IP访问限制,但占用的带宽资源依然没有得到释放。
最后只能开出一方猛药:在防火墙上限制其IP段!由于我们用的是Windows自带的防火墙,不能设置IP限制。经过咨询一位做网管的专家,可以在Windows的本地安全策略中的“IP安全策略”中进行设置。创建新的IP安全策略,添加新的IP安全规则及IP筛选器,添加新的筛选器操作。完成IP安全策略的建立后,最后记得需要“指派”此IP安全策略,重新启动IIS或其他服务后生效。
6. 恶意***
笔者了解到不少知名网站都曾遭受到服务器恶意***的事件。面对恶意***,我们需要确定被***目标是域名还是IP,如果被***目标是IP则只需要禁用被***的IP,把域名更换到没有被***的IP上即可。如果被***目标是域名,则是个很头疼的问题,如果简单把域名停用掉,则用户也访问不了。比较好的做法是把被***域名指向一台临时服务器,临时服务器上设置一个用户提示或自动跳转页面,再让用户访问真正的网站,真正的网站需要用一个临时域名。
经过第一步到第五步的处理,网站流量得到很大的改观。以下是处理前后的流量对比图:
2008-4-21.jpg
参考内容:
禁止搜索引擎爬虫
[url]http://hi.baidu.com/ksir/blog/item/ec3cc3263ae93b158a82a1ca.html[/url]
本次占用带宽资源的爬虫及IP段信息
61.135.220.*为YodaoBot
124.115.0.*为Sosospider
124.115.4.*为Sosospider
技术 网速 分析

0

收藏

上一篇:网速变慢原因分析 下一篇:上网入门之Skype软件介绍
noavatar_middle.gif
车神不是WO

24篇文章,4W+人气,0粉丝

noavatar_middle.gif

Ctrl+Enter 发布

发布

取消

推荐专栏更多

5366d1f50328a62facbf5db1d91c319a.png
VMware vSAN中小企业应用案例

掌握VMware超融合技术

共41章 | 王春海

¥51.00 346人订阅
订   阅
9d82eccb4e3c371eaeac41193bbef757.png
基于Kubernetes企业级容器云平台落地与实践

容器私有云平台实践之路

共15章 | 李振良OK

¥51.00 596人订阅
订   阅
45862f289339dc922ffda669fd74ad9b.jpg
网工2.0晋级攻略 ——零基础入门Python/Ansible

网络工程师2.0进阶指南

共30章 | 姜汁啤酒

¥51.00 1570人订阅
订   阅
629650e188ddde78b213e564c2e9ebff.jpg
负载均衡高手炼成记

高并发架构之路

共15章 | sery

¥51.00 507人订阅
订   阅
dc6736c5fd50474b5df8b76b040e3d03.jpg
带你玩转高可用

前百度高级工程师的架构高可用实战

共15章 | 曹林华

¥51.00 462人订阅
订   阅

猜你喜欢

我的友情链接 一份简单的WIN2003的安全配置 搭建ELK日志分析平台(上)—— ELK介绍及搭建 Elasticsearch 分布式集群 用Kibana和logstash快速搭建实时日志查询、收集与分析系统 ELK 日志分析系统 搭建ELK日志分析平台(下)—— 搭建kibana和logstash服务器 DNS原理及其解析过程【精彩剖析】 大数据采集、清洗、处理:使用MapReduce进行离线数据分析完整案例 技术干货|深入理解flannel 最通俗的CRC校验原理剖析 线上nginx的一次“no live upstreams while connecting to upstream ”分析 浅析Lua中table的遍历 简述centOS 7系统用户和组的管理及配置 解析DELL R710服务器迁移操作内容 开学季出大事:某教育局丢失3台虚拟机 EVA4400存储虚拟机+数据库数据恢复成功案例 服务器数据恢复通用方法+服务器分区丢失恢复案例 在CentOS7上部署squid缓存服务器及代理功能 EMC 5400服务器raid阵列瘫痪数据恢复成功案例 服务器数据恢复案例 / raid5阵列多块硬盘离线处理方法
f92360e227f9d91cdff7ea95120630ef.png
left-qr.jpg

扫一扫,领取大礼包

0

分享
qr-url?url=https%3A%2F%2Fblog.51cto.com%2Fcheshenshiwo%2F97662
车神不是WO
noavatar_middle.gif