总述¶
版权声明
本项目为 2019 年秋季学期起清华大学计算机系开设的《计算机网络原理》课程的实验框架。 所有内容(包括文档、代码等)未经作者授权,禁止用作任何其他用途,包括且不限于在其他课程或者其他学校中使用。
如需使用授权,可通过 shengqi dot chen at tuna dot tsinghua dot edu dot cn 联系作者。作者保留一切追究侵权责任的权利。
推荐查看在线版
推荐查看本文档的在线版(https://lab.cs.tsinghua.edu.cn/router/doc/),而非 PDF 或 Word 版本。 离线版本的显示效果可能不佳,并且无法获得实时的更新。
确认实验内容
如果你参加的是硬件实验组,请先阅读上面菜单的“计网联合实验”,然后在合适的时机再阅读这份文档。
实验说明¶
这里是 2020 年网络原理课程原理课程实验采用的框架。它有以下的设计目标:
- 降低难度:把与底层打交道的部分抽象成通用的接口,减少学习底层 API 的负担
- 复用代码:在一个平台上编写的程序可以直接用于其他平台
- 方便测试:提供文件读写 PCAP 的后端,可以直接用数据进行黑箱测试
实验的目标是完成一个具有以下功能的路由器:
- 转发:收到一个路过的 IP 包,通过查表得到下一棒(特别地,如果目的地址直接可达,下一棒就是目的地址),然后“接力”给下一棒。
- 路由:通过 RIP 协议,学习到网络的拓扑信息用于转发,使得网络可以连通。
本实验目标是让大家掌握如下技能:
- 网络系统的调试,利用 ping 和抓包等工具,找到网络中出问题的地方并解决
- 阅读、理解和实现 RFC 文档的能力,在本实验里主要是 RFC 2453: RIP Version 2
- Linux 系统网络的配置
项目成员¶
- 框架设计:张宇翔(@z4yx)
- 代码与文档编写:陈晟祺(@Harry-Chen)、陈嘉杰(@jiegec)
以下同学曾担任网络原理课程的助教,协助测试实验框架:
- (2019 年秋季学期)李江、陆超逸
- (2020 年秋季学期)杨松涛、靳子豪
以下同学在 GitHub 上或者以其他方式向我们提交了贡献,特此表示感谢:
- @Konano
- @nzh63
- @linusboyle
最后更新: 2020年11月8日
作者: