跳转至

总述

版权声明

本项目为 2019-2020 年秋季学期起清华大学计算机系开设的《计算机网络原理》课程的实验框架。 所有内容(包括文档、代码等)未经作者授权,禁止用作任何其他用途,包括且不限于在其他课程或者其他学校中使用。

如需使用授权,可通过 shengqi dot chen at tuna dot tsinghua dot edu dot cn 联系作者。作者保留一切追究侵权责任的权利。

推荐查看在线版

推荐查看本文档的在线版(https://lab.cs.tsinghua.edu.cn/router/doc/),而非 PDF 或 Word 版本。 离线版本的显示效果可能不佳,并且无法获得实时的更新。

教学目的

当你在阅读这段文字的时候,你已经在使用网络访问这份在线文档,日常生活离不开网络。但你也一定经历过各种网络问题,例如连不上无线网络,连上了网络但显示没有互联网等等。在学这门课之前,你可能只能求助他人或者自己断开网络重新连接,甚至重启。

现在,你已经在《计算机网络原理》课程上学习了计算机网络的基本工作原理以及所采用的技术,但还很难把这些理论知识与每天使用的网络联系起来,也不知道怎么解决生活中遇到的网络问题。这就是这个实验的意义:

一方面,把抽象的协议用实际的代码实现起来,你会发现支撑网络的底层的协议,原来用代码这么容易就可以实现。另一方面,在这个过程中,你会利用网络调试工具,解决自己实现协议时出现的各种问题————这些解决方法可以迁移到日常的网络使用当中:未来当你再次遇到网络不通的时候,你可以用工具定位出具体的问题,自己尝试解决,而不是去盲目地重启。

实验内容

2024-2025 年秋季《计算机网络原理课程》的实验有两大分支:

  1. 软件实验,内有三个阶段:
    1. 第一阶段:编程作业
    2. 第二阶段:个人实验,在以下四个选项中选择一个完成:
      1. OSPF 路由器(推荐)
      2. RIPng 路由器
      3. DHCPv6 路由器
      4. TFTP 客户端和服务端
    3. 第三阶段:组网实验:将多名同学在个人实验的实现的软件,放在同一个网络中进行测试
  2. 硬件路由器实验(计网联合实验)

请根据你要做的实验,在左侧的菜单中找到相应的文档。

更新历史

  • 2019-2020 学年:Router Lab 初始版本上线,硬件实验初始版本上线,使用 ThinRouter 开发板
  • 2020-2021 学年:在线文档上线,TANLabs 在线实验平台上线,硬件实验开始使用 ThinRouter2 开发板
  • 2021-2022 学年:软件实验从 IPv4 升级到 IPv6,从 RIP 协议升级到 RIPng 协议,硬件实验也从 IPv4 升级到了 IPv6
  • 2022-2023 学年:软件实验添加 TFTP 和 DHCPv6 的实验选项
  • 2023-2024 学年:软件实验添加 OSPF 的实验选项,硬件实验开始使用 ThinRouterK 开发板

项目成员

  • 框架设计:张宇翔(@z4yx)
  • 代码与文档编写:陈晟祺(@Harry-Chen)、陈嘉杰(@jiegec)

除了以上同学,以下同学曾担任《计算机网络原理》课程的助教,协助测试实验框架与完善本文档(排名不分先后):

  • (2019-2020 学年秋季学期)李江、陆超逸
  • (2020-2021 学年秋季学期)杨松涛、靳子豪
  • (2020-2021 学年春季学期)潘俊臣、张杰、梁聪
  • (2021-2022 学年秋季学期)雷怡然、张行健、包涵
  • (2021-2022 学年春季学期)潘俊臣、张杰、梁聪、马川
  • (2022-2023 学年秋季学期)林汇平、包涵、朱昱熹、计逸雄、任少睿
  • (2022-2023 学年春季学期)潘俊臣、王通泽
  • (2023-2024 学年秋季学期)佟海轩、张岩、朱昱熹、李骁
  • (2023-2024 学年春季学期)潘俊臣、王通泽
  • (2024-2025 学年秋季学期)佟海轩、张岩、朱昱熹、李骁、尚子智、彭汉一

以下同学在 GitHub 上或者以其他方式对本文档做出了贡献,特此表示感谢:

  • @Konano
  • @nzh63
  • @linusboyle
  • @Cydiater
  • @Anillc
  • @prnake
  • @aannaazh

最后更新: 2024年9月10日
作者:Jiajie Chen (50.68%), Wende Tan (8.22%), Haixuan Tong (5.48%), Harry Chen (35.62%)

评论