2019寒假训练营第二次做业

2019寒假训练营第二次做业

Deadline:2.3 23:00python

学习视频课程(20')

  • 学习福州大学网络课程 网络空间安全概论,造成学习笔记,发布专门博客,至少完成第1、二周的视频学习。
  • 或学习密歇根大学的网络课程Internet history,造成学习笔记,另外发布专门的博客。至少完成第一周的视频学习。
  • 以上两门课程二选一便可。

程序题(80'+50')

对于你所完成题目,把实现思路实现结果记录在博客中,把代码提交到github的仓库上。c++

背景

大学期间,你老是点子不少,你利用申请的专利,开了一家互联网公司,为客户提供高效、快捷的服务。git

有一天,订单量忽然大涨,欣喜之余,秘书却告诉你,今天的营业额跌到谷底,客服电话被打爆。github

你发现,看似不少的订单请求,其实只是给你发了一个“hello”而已服务器忙于应付大量的hello, 已经没办法给原有用户提供正常的服务了,基本处于瘫痪的状态。编程

通过讨论,多是受到了黑客的DDos(分布式拒绝服务)攻击。黑客经过发送大量的无用的请求信息,占用你的服务器资源,让服务器无法给用户提供正常的服务。数组

作法

当务之急,是先恢复服务器,把攻击你的黑客都拉进黑名单,让服务器不要理会这些请求。安全

第一步,就是要把黑客检测出来。服务器

你须要对请求进行审查找出其中有问题的请求,而后把发送方拉黑。网络

这些请求长这个样子:发送方的名字由4个小写英文字母组成,后面跟着接收方请求信息的大小,你能够经过请求信息的大小推测请求的内容。编程语言

发送方 接收方 请求信息的大小 发送方 接收方 请求信息的大小
abcd bob 64 abcd bob 64
khfd bob 265 abcd bob 64
okng bob 364 abcd bob 64
abcd bob 64 abcd bob 64
abcd bob 64 abcd bob 64
dasj bob 863 abcd bob 64
abcd bob 64 abcd bob 64
abcd bob 64 abcd bob 64
abcd bob 64 abcd bob 64
abcd bob 64 abcd bob 64
abcd bob 64 abcd bob 64
abcd bob 64 abcd bob 64
abcd bob 64 abcd bob 64
abcd bob 64 abcd bob 64

……

你的服务器就是那个可怜的Bob,而发送方有不少,有的是普通用户,而有的就是黑客了。

很明显,黑客在短期给你发了大量的信息,发送方中的 abcd 就颇有多是黑客,由于他在短期内给你发了不少信息量很小的请求(64,极可能只有hello),并且这些请求值总值已经超过了1500。本着宁错杀一千,不放过一个的原则,只要总的请求信息的大小超过T=1500,就把它拉黑

描述

编程语言不限


提供的Request.txt

热身题(20')

  • 学习基本的文件读写
  • 读提供的文件Request.txt
  • 把里面的内容写到output.txt

基本题(60')

  • 根据提供请求的输入Request.txt,把全部请求对应的信息大小都存下来。
    • (c语言:能够本身定义结构体,用上结构体数组,也能够用其余方法)
    • (c++:能够考虑使用stl的库里的map)
    • (推荐python:能够考虑使用字典)
  • 统计每一个发送方的总请求大小SS超过T的就认定为黑客,把他们的名字存进你的黑名单里。
  • 输出黑客的个数,和这些黑客的名字。

例如:示例中有28个请求,其中abcd发了25个请求,这些请求的总和S是1600>1500=T,因此abcd被认为是黑客,就把abcd加到你的黑名单里去。

输入:

名字和信息大小用一个空格隔开,每条信息用一个换行隔开

lhyy bob 100
hzrr bob 700
cyxx bob 364
lhyy bob 700
lhyy bob 800
zzyy bob 300
zzyy bob 800
zzyy bob 600

输出:
第一行输出黑客的总个数,第二行输出黑客名,每一个黑客名用一个换行隔开

2
lhyy
zzyy

开放题(50')

如今你已经暂时恢复了服务。

但你发现,1的方法很笨,例如:把全部请求都存下来,再统计总值,花费了你大量的存储空间。这里面包含了不少没必要要的操做,有不少缺点。

  • 吐槽1方法,找到这个方法的问题。
  • 给出你的方法,不必定是完美的,说出方法的优缺点,只要能自圆其说。
    (能够从速度、占用的空间、准确率等方面思考)
  • 选作:实现你的方法。
相关文章
相关标签/搜索