高级计算机网络(田野) 2023春 2022春 2021春 2020春 2019春 2018春 2017春 2015秋 2015春  课程号:COMP6103P02
2023春 2022春 2021春 2020春 2019春 2018春 2017春 2015秋 2015春  课程号:COMP6103P02
9.3(9人评价)
9.3(9人评价)
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:一般
选课类别:基础 教学类型:理论课
课程类别:研究生课程 开课单位:计算机科学与技术系
课程层次:硕士   学分:3.0
课程主页:暂无(如果你知道,劳烦告诉我们!)
简介 最后更新:

本课程的教学目标是在学生已经学过的计算机网络的基本理论知识以及网络的基本应用基础上,跟踪计算机网络理论和技术发展的最新动向,讲授计算机网络的新概念、新技术、新发展和新应用,使学生掌握网络的最新理论和技术,始终把握网络信息时代的脉搏。通过具体网络实践,解决实际问题,掌握网络科研和工程的基本技能,以适应现代信息化社会对计算机网络的要求,为进一步利用计算机网络资源、从事相关的学习和研究打下基础。课程紧跟计算机网络的发展前沿,重点介绍网络体系结构、网络核心机制、网络关键技术和网络系统方向具有代表性的前沿成果,具体方向包括数据中心网络、新型网络协议、软件定义网络/网络功能虚拟化、新一代互联网和未来网络等,并指导学生使用ns-3、mininet、Pyretic、ONOS等先进的工具环境,开展面向新型网络的实验实践。本课程强调实际动手能力的培养。

排序 学期

评分 评分 9条点评

klion 2021春
  • 课程难度:困难
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:困难
  • 作业:很少
  • 给分:超好
  • 收获:很多

说下22年春的期末考题,趁着刚考完还记得

 

1. fat tree, switch标号以及计算路径(经典题目了)

2. 解释BBR图中三个区域RTT和deliver rate的变化情况

3. 计算MPTCP,Couple每个链路上的流量

4. 解释PortLand中提出的PMAC

5. OpenFlow原题,位于哪一层?基本操作?等

6. Elastic sketch 中对sketch的更新(heavy part 和light part)

 

考前老师会划考试范围,给个期末考试的PPT,上面六道题除了第五题往年原题外,全都在期末考试PPT中有强调。

上课听过几节,老师讲的很清楚,是能学到东西的课,可惜和自己做的方向实在不相关,推荐选,就是期末考试复习压力有点大,虽然考的不难。

5 0 复制链接
QJ 2020春
  • 课程难度:中等
  • 作业多少:很多
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:中等
  • 作业:很多
  • 给分:超好
  • 收获:很多

我是物院转来的,前期跟课有点吃力,所幸网课可以回放,经常一段话放五六遍。横向比较本专业的同学,大都比较轻松。

田老师上课的方式是带我们读论文,近二三十年的关键论文读一遍,基本上带到前沿了。本质上每一章就是一个协议。

课程评价围绕实验和考试。考试开卷,重题多,考论文上的概念。ns3和mininet的实验坑很多,pyretic比较简单。投了很多时间精力进去,最后结果也是过得去。如果有师兄师姐的话请尽量抱紧大腿吧。

虽然不和计网打交道,还是保质保量完成。最后给了90分还可以。田老师很认真的,实验的基本操作会带你走一遍,至少知道查资料的方向了,虽然讲的内容网上都有更详细的。

总之以后再也不会碰计网了。ns3和mininet,我们再也不见。


个人整理的部分实验资料:

SDN之mininet教程:https://my.oschina.net/u/2245781/blog/889820

SDN之mininet&POX介绍:https://www.jianshu.com/p/d33a75aaa080

mininet使用指南,有讲fat tree:https://www.sdnlab.com/11495.html

fat tree拓扑源码:

  1. 详细:https://github.com/muzixing/fattree/blob/master/fattree.py
  2. 精简:https://github.com/howar31/MiniNet/blob/master/topo-fat-tree.py

 

RipL:某大佬基于mininet做的fat tree拓扑

  1. Main RipL repository: github.com/brandonheller/ripl
  2. Main RipL-POX repository: github.com/brandonheller/riplpox
  3. Murphy’s updated RipL-POX repository: github.com/MurphyMc/riplpox

 

ubuntu系统安装mininet(云服务商一般不提供pyretic镜像,直接用ubuntu装即可)

git clone http://github.com/mininet/mininet

cd mininet ./util/install.sh -a # -a指安装其他包,仅安装mininet将-a换成-n3v

中间可能会报错,提示找不到ifconfig

sudo apt install net-tools

测试(任选一个)

sudo mn

sudo mn --test pingall

 

拓扑结构:3种方法:直接mn、修改mininet/custom/topo-2sw-2host.py文件以及手撸python脚本

同个拓扑结构,写法不同表现不同,会出现千人千面的坑。

python脚本直接进入mininet>提示符:

net = Mininet(topo)

net.start()

CLI(net)

net.stop()

运行文件:

chmod a+x simpleTest.py sudo ./simpleTest.py

拓扑图:miniedit

sudo mininet/examples/miniedit.py

POX

各项功能见wiki。POX是斯坦福开发的,两个链接内容相同:

https://openflow.stanford.edu/display/ONL/POX+Wiki.html#POXWiki-openflow.spanning_tree

https://noxrepo.github.io/pox-doc/html/

pox命令

./pox.py forwarding.l2_learning openflow.spanning_tree --no-flood --hold-down

其他终端关闭pox进程

lsof -i:6633

kill -9 PID

pox内部终止(^C失效的情况下)

exit()

生成树spanning tree用于解决循环网络冲突。openflow.spanning_tree依赖于openflow.discovery循环网络问题。openflow.discovery原理:http://www.aiuxian.com/article/p-2445866.html

循环网络无限转发packet的bug(原因很多,其中一个):https://github.com/noxrepo/pox/issues/139

循环网络实例:http://www.brianlinkletter.com/using-pox-components-to-create-a-software-defined-networking-application/(2pod-fat tree表现良好,4pod出现bug:2个edge switch不通)

查看switch流表:(下方等价)https://mailman.stanford.edu/pipermail/mininet-discuss/2013-November/003432.html

$ sudo ovs-ofctl dump-flows s1 mininet> dpctl dump-flows s1

 

POX不直接显示spanning tree,要修改代码。位置在line111附近。

$ vim ~/pox/pox/openflow/spanning_tree.py

到这里为止决定放弃POX。

这个实验已经浪费了我一周的时间,极大打击了自我效能感。不知道为啥我要老老实实磕这个实验,mininet带着POX滚粗克,现在!

 

改变方案。

目前可行的方案是直接用mininet命令行,开启OpenflowVSwitch的STP(生成树)支持。

OVS虚拟openflow交换机配置汇总:https://www.cnblogs.com/zfyouxi/p/4904733.html

stp实例https://stackoverflow.com/questions/30888845/how-to-enable-brctl-stp-using-python-script

 

4 2 复制链接
我好难过请问网课在哪看啊?我官网上只找到郑烇和蒋凡老师的高级计算机网络视频,没找到田野老师的视频。
红领巾回复 @我好难过: 去年这门课是线上上课,所以有回放
立即登录,说说你的看法
程序员玛莎 2022春
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:中等
  • 作业:很少
  • 给分:超好
  • 收获:很多

老师讲的内容都是很核心的网络经典文章,都具有突破性的意义。

考试会划重点,考试内容不难,主要都是PPT上的内容,所以一定要把PPT学好

田老师人很好,是会为学生着想的那种老师。

分还没出,按照往年信息,很多90多分

作业就一个大作业,看三十篇文献,写个综述论文,这个和去年做实验不一样。

 

(最后修改于 2 0 复制链接
秋裤 2021春
  • 课程难度:中等
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:一般
  • 难度:中等
  • 作业:很少
  • 给分:超好
  • 收获:一般

 YYDS! 

 上课不点名,爱去就去。 (野哥讲的论文都很OK,但是先研院11f的教室设备属实不行,不坐前排基本听不清

 一共三个大作业,具体可以参考其它点评(建议早点配置好环境    “借鉴”前辈们的project也方便些 

 期末开卷,就是上课讲的论文,复制粘贴ppt,over。

 

2 0 复制链接
boj 2015春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:一般
  • 收获大小:很多
  • 难度:中等
  • 作业:中等
  • 给分:一般
  • 收获:很多

田野老师的高级计算机网络课程是读论文的形式,每节课讲一到两篇计算机网络领域的经典论文。内容涵盖 Internet 历史、网络测量、P2P、TCP 拥塞控制、内容分发网络、广域网(BGP)、数据中心网络、软件定义网络、内容中心网络等。

课程主页已经 404 了,类似这个:

https://www.cs.princeton.edu/courses/archive/fall14/cos561/syllabus.html

虽然我是搞网络研究的,但这些经典论文还是有很多没有读过,毕竟网络这个方向挺大的。

这门课程的实践性比较强,要求用 mininet 和 NS-3 分别仿真一个网络拓扑。内容也很新,很多论文是近年 SIGCOMM/NSDI 上的。

我当年的作业: https://git.lug.ustc.edu.cn/boj/advanced-network-course/

期末考试是开卷,允许带论文,我记得考了一个用 pynetic 实现某个网络功能,我之前还真没细读过 pyretic,考试的时候才现场看着论文里的语法写的。

2 2 复制链接
Indigo6帮大佬更新一下地址,lug的git换地址了 https://git.lug.ustc.edu.cn/boj/advanced-network-course/
boj回复 @Indigo6: 多谢,我更新一下
立即登录,说说你的看法
Indigo6 2021春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:超好
  • 收获大小:很多
  • 难度:简单
  • 作业:很少
  • 给分:超好
  • 收获:很多

课程评价其它人说的很全面了,实验又有了变化,我更新一下实验参考:

Github: https://github.com/Indigo6/advanced-network-course

Ustc 超算 Gitlab: https://git.ustc.edu.cn/Indigo6/advanced-network-course

1 0 复制链接
匿名用户 2022春
  • 课程难度:中等
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:一般
  • 难度:中等
  • 作业:中等
  • 给分:超好
  • 收获:一般

上课内容就是掏出论文根据各个方向来讲

田野老师这门课今年没有实验了,改成调研论文(可分组可单干)

最后还是花了不少时间的,但是我认识的同学分数都很好90+

然后最后会有个开卷的考试,考点老师最后会给ppt

基本上都在里面,平常也不点名,自己复习还是能学到不少东西的

(最后修改于 0 0 复制链接
putatio 2022春
  • 课程难度:简单
  • 作业多少:很少
  • 给分好坏:一般
  • 收获大小:一般
  • 难度:简单
  • 作业:很少
  • 给分:一般
  • 收获:一般

期末开卷,1-4人小组一篇综述考后两周交

中期今年加了一个综述的调研报告,确定方向,800字,说是为了督促不要临ddl再开工,实际上调研结束还是到期末考后才开工

每节课讲一篇或几篇论文这样,讲的很多,但是

最后一节课会划范围,有一半内容都不在范围内

所以也没必要听课了考前速成就好()

看起来每年的范围会有些许波动,不能全靠往届的重点总结,还是得自己看完一遍ppt

题目都不难不用太关注原理,大概了解就行了

 

除了开始下学期选课了还没出分,都挺好的

0 0 复制链接
silence 2021春
  • 课程难度:简单
  • 作业多少:中等
  • 给分好坏:超好
  • 收获大小:没有
  • 难度:简单
  • 作业:中等
  • 给分:超好
  • 收获:没有

整体评价:水课。

  • 到课:完全不用去。
  • 作业:没有纸质作业,只有实验。
  • 实验:总共三个,多年没变,如果自己做的话有点蛋疼。建议无脑copy师兄的。照着做,自己出一遍图,再照猫画虎写个实验文档即可。
  • 考试:建议向师兄要一下往届复习资料,再打印一些PPT。论文也建议打印,因为ppt可能有遮挡,且内容可能不全。
  • 出分时间:8月末。(因为今年张荣比较忙,审核卡了很久
  • 给分:听助教的说法是大部分人85+。对于我自己的得分,我很满意。

0 0 复制链接

田野

教师主页: 戳这里

其他老师的「高级计算机网络」课

赵阳明 9.8 (10) 2022秋
郑烇 7.3 (7) 2022秋 2021秋...
未知 2020春 2019春...
蒋凡 2011秋
张信明 2020秋

田野老师的其他课

计算机网络 9.3 (13) 2022秋 2021秋...
排队论及其应用 2016春 2011秋
软件工程 2014春 2012秋