2017 年全国软件定义网络大赛总结

目录

  • 训练的过程和总结
  • 备战的过程和总结
  • 笔试的准备和总结
  • 答辩的过程和总结
  • 目前的进步和经验
  • 下一步计划和安排

训练 & 备战的过程和总结

正式地成为 SDN 实验室团队的一员应该是 2017 年的三月份左右。经过思考,我觉得我这方面着墨的重点应该是:作为一名实验室的新成员要如何尽快地跟上团队节奏,熟悉科研工作。

进入一个研究软件定义网络的实验室,我的计算机网络基础知识可以说是很贫瘠的。coursera 上的《计算机网络历史、技术与安全》是我知识的全部。刚进实验室,栋哥丢给我一本《软件定义网络:SDN与OpenFlow解析》,说实话,我的内心是崩溃的,因为我几乎看几页就看不下去了。遇到这种情况的时候,我的建议是不要死磕。但我的意思不是过早地放弃,过早地退出是一切失败的根源。遇到一个难题,从不同的方向多次尝试,更容易攻克它。对于 SDN,书籍可以与公开课相结合,我主要是看了《图解 OpenFlow》、《重构网络:SDN架构与实现》,公开课是 Nick Feamster 的 SDN 入门教程。此外,传统网络部分也齐头并进,慢慢地看《TCP/IP 协议详解》。这时,我不像以前那样,看书要一整本看完,才开始看另一本。经过一段时间,也算是跟上了实验室的节奏(我才不会说在实验室组会上讲红黑树什么的非常爽呢)。

丢一个链接,从熟悉领域研究SDN&OpenFlow?

在我所在的团队里,我应该是相关知识储备的最少的一个。在参与这个项目的时候,啃了啃陈翔写的论文,以及相关资料了解网络虚拟化 & hypervisor 的技术,比方说构建虚拟网、LLDP 之类的,并逐渐理解了项目内容,我觉得这个 idea 的提出也不是那么容易的吧。在备赛的最后阶段,我承包了展示文档的制作工作(确实技不如人,当我加入进来时技术性的事儿都叫几位老哥搞得差不多了),绞尽了脑汁想到了各种奇奇怪怪的姿势,做出了一些(现在都让我匪夷所思我到底怎么做出来的)动画来表现我们整个项目的过程。连续几天泡在实验室和大家交流项目、一起吃饭的滋味真的挺不错,特别希望下学期多花点时间泡在实验室看书、学习。

记录一件小事吧。颁奖典礼结束之后,我们拿了奖,回宿舍整理东西的时,我对陈翔说了一句 Congratulations 。说实话,在那时我内心真的为他感到高兴,而且我也发自内心的觉得自己也许做的贡献不算特别的大吧。没想到,陈翔回复我说,都是一个队伍里的,没有什么必要互相恭喜吧,这个奖是大家的。(有一点点感动到)

说句实话,我觉得接下来的 2017 学年对我来说将是相当关键的一学年,要实现从入门科研到做出真正属于自己的东西这么一个转变。如果说有一个人是我的目标的话那应该就是陈翔,因为我觉得他确实已经算是一个科研型人才,无论是基础知识储备、论文阅读量,还是专注度、执行力、动手能力等方面我都远不及他。

笔试 & 答辩的准备和总结

SDN 方面考 OpenFlow 比较多,而且主要是 OpenFlow 1.0 ,因此比较容易吃透,且其余涉及 SDN 的部分不会太难。但很可惜的是,由于我还没上过计算机网络的课,很多一眼看上去就是送分题的题,我却一个字都写不出来。例如 “一个网络协议通常包括三个要素,分别是语法,什么,和什么?” (正确答案:语法、语义、定时)。不过相信来年再战的时候,这种情况就会有很好的改善。在获知得到二等奖之后,我也得出了一个结论:考虑拿一个一等奖之前,不如先考虑怎么把个人理论第一名拿到手——把网络基础知识学得透彻、扎实。

答辩的话,一句话 “practice makes perfect” 。直到真正地上赛场之前我们依然还在不断地修改、训练。并且栋哥也非常贴心地模拟答辩,并提了一些可能被问的问题让我们参考,这个我觉得是蛮关键的吧。

目前的进步和经验 & 下一步计划和安排

首先非常感谢栋哥挑选我进入实验室。一方面,我个人觉得这可能得益于自己的努力,另一方面,我也发现了自己的努力还完全不够。在和栋哥吃饭的时候,我提出了心中的一个疑惑:为什么要挑选我进实验室呢?栋哥的回答是看到了我的自学能力。我又抛出一个疑问:我觉得就算我可能某些知识学得更扎实一点,但离自己能“做出点什么”还很远,怎么办?栋哥讲到,科研这种东西,没法手把手教的,老师只能起一个引路人的作用,因此自学能力的重要性不言而喻。某一个领域深入到极致之后,这就是自己的核心竞争力,“能做出点什么”也是水到渠成的事情。(总结;内心有一点点的担心,但也不是特别担心,因为路还长)

  • 目前的进步和经验:

    • 算是入门科研了
    • 基础网络还在入门中。SDN的基本概念:OpenFlow,转控分离、网络虚拟化。
    • 感觉自己还是很弱owo
  • 下一步计划和安排

    • 坚持、努力、专注、热忱
    • 几个方面吧,基础知识的学习还是不能拉下,科研工作方面继续深入;多阅读(各种方面的书,不仅是技术书籍),多思考,多总结,多写博客。
    • 需要越来越多的动手操作以及实际项目的锻炼。
    • 好好锻炼身体

/* ~~~~~~~~~~~ 不正经的分割线 ~~~~~~~~~~~ */

觉得最后一个总结写的有点少了。总之此次前往武汉比赛,获得了不少经验,但也发现了自己身上的很多弱点。前些阵子我写完了 CSAPP 的读书笔记之后,我一度对写博客这件事产生了一点怀疑,因为我老觉得我自己写的东西“不足以搬上博客”,我自己只是一个“知识的搬运工”,而不是“生产者”,等等,诸如此类各种乱七八糟的胡思乱想,搞得我在七八月份的学习过程中没有好好总结写博客,我现在想想着实是一个大损失。(啊,算法导论的代码和一些思考有上传到github,这么看来也不是特别亏)最近买了一本刘未鹏的《暗时间》来读,虽说他的博客我老早前就看过,但重新开始看这本书也让我有了一点启迪。关于写博客这事,《暗时间》中讲到

经常整理你的笔记……一来巩固淡化的记忆,二来给你重新审视知识的机会。……记忆是很脆弱的东西,我们对事物的首次理解几乎是肯定不会深入的。……对知识的首次记忆往往是偏颇的,或者只看到了一个方面,或者只关注了一个点。一段时间之后再回来看往往能够和这段时间以来的一些新思考和知识结合起来,得到更多的东西。…… 虽然学到了知识,它却不会再恰当的时候从你的脑袋里蹦出来,属于“死”的知识。

当看到此书中推荐的一些学习方法,我自己很早之前就已经这样子开始做时,我内心说实话有一丝喜悦。不过我很少有自己回头审视、总结自己的学习方法、习惯、方法论之类,还有心理学什么的是我从来没涉及过的领域。写博客的好处就不再赘述了。在未来的日子里,一定要多记录,多思考。此外,广泛涉猎各种领域的书籍我想来也是很必要的,不仅仅是技术书籍了。

再讲一个事,还是引用《暗时间》里的一句话:

如果一个人要靠自制力去强迫自己不受干扰,那只能说还是寻常人。真正的效率源自于内心对一个东西强烈的热忱,也就是我们俗称的追求。

怎么说呢,“真正的效率源自于内心对一个东西强烈的热忱” 我还是有体会的。但,“一个人要靠自制力去强迫自己不受干扰,那只能说还是寻常人” 真是一句读着十分扎心的话。转系之后,认定这是一个自己喜欢的专业,一年下来主动读了不少专业书籍,每天晚上去教室读书的日子感觉非常充实,但说句实话觉得自己过得很安逸,也很无忧无虑,导致遇到一点困难可能就畏首畏尾。刚入门科研的时候觉得自己完全靠 deadline 活着,没 deadline 的话估计自己一点事儿都做不了,说白了还是动手能力太差。自己习惯了读书本上现成的知识,而做科研需要的就是心无旁骛地探索,自己的抗干扰能力还不行。写到这儿突然有点写不下去的感受……总之这是我觉得自己目前一个大的缺点,如何获得更进一步的专注力是一个主要问题。

突然想列个书单?(阅读程度从上到下递减)

√:全部读完
□:基本读完,剩一部分未读
△:正在阅读 && 进度过半
○:正在阅读 && 进度未过半
×:刚刚开始读

书名 阅读程度 评价
《the C programming Language》 好书
《C primer plus》 完全可以以上一本替代
《深入理解计算机系统》 好书,受益匪浅
《C++ primer plus》 给人感觉就是一本读完之后除了一些了解基本概念之外没多大用的书,毕竟C++内容太繁杂了,真想走C++这条路还需要看一些别的。
《重构网络:SDN架构与实现》
《算法导论》 再多刷点题,算法和数据结构这块差不多就搞定了
《TCP/IP 协议详解 卷一》 目前的打算是会再入手一本别的网络书搭配着看吧,也许看英文版了,因为感觉中文版翻译的不是特别好且没有对应英文专有名词的搭配。
《暗时间》 × 初试水:除了技术书籍之外的各种领域
《计算机程序的构造和解释》 × 今天刚刚快递送到家

从书单上来看可能还需要在(操作系统 or Linux)上还需要补一本。

胡言乱语一大堆,有些杂乱,见谅。这些脑子里一闪而过的思考,若是不记录又要随风飘去了吧。

原文地址:https://www.cnblogs.com/ZCplayground/p/7420967.html