COMP5416 Week 01 Introduction 讲课总结

COMP5416 Week 01 讲课总结:Introduction

课程:COMP5416 / COMP4416 — Advanced Network Technologies 讲师:Prof. Vincent Gramoli(研究方向为分布式系统、区块链) 来源:W1-Introduction.pdf(76 页)+ Week 01 Lecture 字幕

本讲前 40 页左右是学校统一的安全 / 学术诚信 / 支持服务模板,考试不会考。下面把行政信息压缩成一节速查表,然后把真正的技术内容(分层网络 + 博弈论分析)展开讲。


一、课程组织与考核(行政速查)

1.1 时间与人员

项目 内容
Lecture 每周四 17:00–19:00
Lab / Tutorial 按各自课表,Week 2 开始,到 Week 12;Week 13 只有复习 lecture,可能没有 lab
Unit coordinator & lecturer Vincent Gramoli,办公室 J12-417
Office hour 周四 16:00–17:00(16:00–16:30 给 COMP4416,16:30–17:00 给 COMP5416)
Tutors Niruth Bogahawatta、Yuxuan Yang
提问渠道 EdStem.org 讨论区,不要发邮件(老师明确说邮件会被淹没)
提交 / 成绩 Canvas;Ed 目前只用于讨论,不用于提交作业
录播 通过 Canvas 链接到 Echo 360;老师会尽量录,但设备偶发故障,仍建议到场
教材 Computer Networking: A Top-Down Approach, 8th/9th ed., Kurose & Ross(slides 大量取自其配套材料)

老师补充的两点:Lab 既可能是"用电脑写程序",也可能是"回答问题"的 tutorial,都在同一个房间做;学期中有公共假日会撞掉周一的 lab,可能整体顺延一周以保证所有组进度一致。

1.2 考核构成

评估 时间 权重 覆盖范围 形式
Midterm Quiz Week 6 的 lab 时间,Canvas 上做 20% W1–W6 个人独立;MCQ、True/False,可能多选;禁止用 AI,禁止交流
Programming Assignment Week 10 周五 23:59 截止 20% W1–W10 编程(Python 3.X)、Wireshark 实验、计算、扩展作答
Final Exam 考试周 60% W1–W13 全部 见下

必须记住的三条硬规则

  1. 40% barrier:School of CS 政策,final exam 至少拿到 40/100 才可能通过本课。38 或 39 分自动 FAIL,无论平时分多高。这是必要非充分条件——同时还要总评 ≥ 50。
  2. 迟交扣分:每迟交一天(或不足一天按一天算)扣满分的 5%。5 天后计 0 分。例:作业占 40%,迟交 1 小时 → 上限 38%;迟交 28 小时(算 2 天)→ 上限 36%。老师说也可能改成"临近截止直接给统一延期、不再罚分也不再额外延期"。
  3. Special Consideration:生病或意外影响表现时走学校正式流程(专业医师签 USyd 表格 + 线上提交扫描件),申请窗口很短。Midterm 一般不会补考,而是直接忽略该项权重

老师关于 final exam 的口头澄清(很有价值):

  • 所有题目分值加起来通常凑成 100 分,但题数 ≠ 100,单题可能多于 1 分。
  • 题型:MCQ + short answer。
  • 不会考手写代码。编程能力由 programming assignment 考察,本课不是编程课。但会考协议行为,例如"发一条 SMTP HELO 命令,应该收到什么响应码"。
  • 编程作业的评分关注协议实现是否正确工作,不抠代码语法风格。

1.3 先修与投入

  • 面向 CS 方向研究生,默认已有本科 CS 基础:会编程 + 懂数学即可,没有额外指定先修课。
  • 编程一律用 Python 3.X;有 Java / C 背景的人上手无压力。
  • 期望每周在课外额外投入 6–9 小时:做评估、预习复习、整合概念、练习自测。
  • 每周至少查一次 Canvas。

1.4 学术诚信与 AI 使用

  • 违规类型:Plagiarism(抄袭)、Collusion(不正当合作)、Recycling(重复提交已评分作业)、Fabricating information(编造数据 / 伪造引用)、Contract cheating(代写)、Exam cheating、Misuse of AI
  • 分级:minor breach / major breach / misconduct,处罚从扣分到挂科、停学、开除;国际学生可能影响学生签证。
  • 生成式 AI:用于日常学习(讲解概念、做练习题、规划学习)是允许的;监考考试和期中测验一律禁止,除非 coordinator 明确允许;其他作业默认允许,除非明确禁止。本课 midterm quiz 明确禁止使用 AI
  • 代写机构(常伪装成"tutoring")在澳洲属违法,罚款最高 $100,000 或监禁;学生端还面临被勒索、数据泄露等风险。
  • 新生必修 Canvas 模块:Respect@Sydney、Academic Honesty Education Module (AHEM1001)、Engaging with Civility、Anti-Slavery Awareness。

二、Syllabus:13 周主线

主题 一句话说明
1 Introduction 分层模型 + 博弈论引子(本讲)
2 Performance 时延、吞吐、复杂度分析
3 Application 应用层协议
4 Peer-to-Peer 每台机器同时扮演 server 和 client
5 Transport 传输层通用机制
6 TCP 具体传输协议
7 Multimedia 多媒体网络
8 Real time 实时通信
9 Wireless 无线通信
10 Security 网络安全
11 WiFi 无线局域网
12 Mobile 移动网络
13 Review 全课复习

"Advanced" 在本课体现为三个维度:

维度 具体内容
Facts / Knowledge 信息 / 消息 / 比特是怎么被传输的?怎么让通信更高效?为什么协议要这样设计
Theory 分析(协议正确性、复杂度)+ 数学工具
Practice Python 3.X 编程 + Wireshark 抓包实验

注意第三个问题"Why does it work in this way?"——本课很多考点不是背协议字段,而是解释设计动机。


三、分层网络(Layered Network)

3.1 为什么要分层

网络通信是一个巨大的问题。分层就是把大问题拆成子问题,每层只解决自己那一层的抽象。

关键直觉(老师原话):越往下越具体,越往上越抽象。最底层 physical 是电压和光信号,最顶层 application 是用户看到的服务。

3.2 ISO/OSI 模型 vs 本课模型

  • ISO:International Organization for Standardization
  • OSI:Open Systems Interconnection

四种常见分层法的对照(slide 47):

ISO/OSI 模型(7 层) 本课程(5 层) 部分教材(4 层) 其他叫法
application application application application process
presentation (并入 application)
session (并入 application)
transport transport transport transport
network network network internetwork / Internet
link link link network interface
physical physical (省略) hardware

考点提示:本课采用 ISO/OSI 的术语(最经典),但认为 session 和 presentation 层不真正存在,或视为 application 层的一部分——它们是可选的,本课省略。同时本课保留 physical 层(有些教材会完全省掉)。做题时按五层答:application / transport / network / link / physical。

3.3 每一层回答什么问题

从上往下,每一层对应一个核心问题(slide 48):

核心问题
Application How to provide network applications that satisfy users?(怎样提供让用户满意的网络应用)
Transport How to provide end-to-end connections for programs running at different devices?(怎样为不同设备上的程序提供端到端连接)
Network How to send message to non-adjacent nodes?(怎样把消息发给非直接相邻的节点)
Link How to organize data transfer among adjacent network nodes?(怎样组织相邻节点间的数据传输)
Physical How to transfer bits from one device to another?(怎样把比特从一台设备传到另一台)

记忆钥匙:adjacent(link)→ non-adjacent(network)→ process-to-process(transport),这是三层的分界线。

3.4 Physical Layer

职责:在连接网络节点的物理链路上传输原始比特(raw bits)

  • 关心的是介质本身:电(铜缆)、光(光纤)等。
  • 老师的具体解释:用电压随时间的波动来区分比特——有活动(高电平)表示 1,无活动(低电平)表示 0。这就是"信息的物理形态"。

职责相邻(neighbouring)网络元素之间的数据传输。三个典型功能:

功能 说明 例子
Bit error detection 检测传输中的比特翻转 发送方发 010101,接收方收到 010100 —— 传输过程中发生了 bit flip,link 层负责检测出来
Medium access control (MAC) 两个设备同时说话怎么办? 共享信道的仲裁问题——正是本讲第四节博弈论例子的背景
Link-layer addressing 怎么确认"这条信息是给你的" 保证正确的接收者收到信息

3.6 Network Layer

职责:把分组从(任意)源路由并转发到(任意)目的地(routing and forwarding)。

  • 不只在邻居之间,而是"邻居的邻居的邻居……"逐跳中继。
  • 信息到达 switch / router 时怎么继续转发?要走最短路径而不是最长路径,这才高效。
  • 核心问题:如何构造路由表(routing table),让分组沿最短路径走。

3.7 Transport Layer

职责:管理程序到程序(process-to-process)的数据传输。

老师的展开:一个进程通过 socket 收发信息。socket 是绑定在进程上的通信媒介,进程往里读写数据,就能和远端机器上的另一个进程通信;数据实际是向下穿过各层流经网络的。

对比记忆:network 层管的是机器到机器,transport 层管的是进程到进程

3.8 Application Layer

职责:支撑网络应用(support network applications)。

老师举例:Chrome、(已停运的)Skype、YouTube / Netflix 流媒体、邮件(SMTP、POP)、在线游戏。他补了一句现实观察:如今几乎所有应用都是网络应用,因为一切都跑在云上。

3.9 Internet Protocol Stack:实际协议对照

slide 54 把抽象层和真实协议对上号:

典型协议 / 技术
application HTTP, FTP, SMTP, DNS, P2P, Video/Audio, SIP, RTP, MQTT, CoAP, QUIC
transport TCP, UDP, MPTCP;以及跑在 TCP/UDP 之上的传输协议
network ← Multimedia networking(跨 app / transport / network)
← Network support for multimedia
link ← Wireless network(跨 physical / link / network / transport)
physical 同上

两个老师特别点出的边界问题:

  • QUIC 放在 application 层,但有时也被视为 transport 层协议。
  • Multimedia 和 Wireless 都是跨层主题——它们不属于单独一层,而是横跨多层的设计问题。这也解释了 syllabus 里 Multimedia / Wireless / WiFi / Mobile 为什么单独成周。

四、网络分析实例:用博弈论看信道竞争

这是本讲唯一的技术推导,老师明确说 Lab 1 会做对应练习,且是"为什么理论有用"的示范。

4.1 问题场景

一个 access point,两个用户,各拿一部智能手机通过同一个无线信道与 AP 通信。

  • 如果两人同时发送collision(碰撞)谁都不成功
  • 这是纯粹的浪费:消耗了资源(尤其对手机是耗电),却什么也没传成。

把"发 / 不发"分别记作 on / off,收益表(slide 58):

情况 User 1 的收益 User 2 的收益
1 off, 2 off 0 0
1 on, 2 off 10 0
1 off, 2 on 0 10
1 on, 2 on −5 −5

为什么是负数:碰撞时不仅没通信成功,还白白消耗了资源(发射功率、时间),所以比什么都不做还糟,收益严格为负。而独占信道成功通信时收益严格为正(这里取 10,具体数值不重要)。

关键转折:在 cellular network 里,运营商可以公平调度用户 1 和用户 2。但在很多其他场景里,用户是自私的(selfish)——没有中央调度者。这时就需要博弈论。

4.2 Game Theory 是什么

Mathematical models of conflict and cooperation between intelligent rational decision-makers.

  • rational(理性) 的含义:如果改变策略能让自己获益,用户一定会改
  • 传统上大量用于经济学问题。
  • 用在网络上的动机:不想浪费力气发送一个收不到的信号——对移动设备/手机来说这是能量浪费。

4.3 Prisoner's Dilemma(囚徒困境)

设定:黑帮两名成员被捕,分别关押、无法互相通信。每人两个策略:confess(坦白)keep silent(沉默)

结果规则

  • 两人都坦白 → 各服刑 5 年
  • 两人都沉默 → 各服刑 1 年
  • 一人坦白、一人沉默 → 坦白者当场释放,沉默者服刑 10 年

收益矩阵(元组为 (A, B) 的 utility,行为 B 的决策,列为 A 的决策):

(A, B) utility A: Confess A: Keep silent
B: Confess (−5, −5) (−10, 0)
B: Keep silent (0, −10) (−1, −1)

4.4 Nash Equilibrium(纳什均衡)

定义:一个策略组合满足 —— 没有任何一方能通过单方面改变自己的策略而获益

用囚徒困境验证 (Confess, Confess) = (−5, −5)

  • A 单方面改为沉默 → 落到 (−10, 0),A 从 −5 变成 −10,更差 → A 不会改。
  • B 单方面改为沉默 → 落到 (0, −10),B 从 −5 变成 −10,更差 → B 不会改。
  • 双方都没有改变动机 ⇒ (Confess, Confess) 是 Nash Equilibrium

再看 (Keep silent, Keep silent) = (−1, −1)

  • 从社会总量看这是最优的:总刑期只有 2 年,而其他三格总刑期都是 10 年。
  • 但只要有一方单方面改为坦白,收益从 −1 变成 0更好 → 一定会改。
  • 不是 Nash Equilibrium

这就是"困境"所在协作产生的最优解恰恰不是均衡点,因此极难达成——每个人都被"改一下能多拿"的诱惑拉走。

4.5 回到信道问题:纯策略分析

把同样的框架搬到无线信道(slide 69,元组为 (1, 2) 的 utility,行为 2 的决策,列为 1 的决策):

(1, 2) utility 1: Transmit 1: Keep silent
2: Transmit (−5, −5) (0, 10)
2: Keep silent (10, 0) (0, 0)

逐格检查:

状态 是否 NE 理由
都 Transmit → (−5,−5) 任一方改为沉默即从 −5 升到 0
1 Transmit, 2 silent → (10,0) 1 改则 10→0 变差;2 改则 0→−5 变差
1 silent, 2 Transmit → (0,10) 对称同理
都 silent → (0,0) 任一方改为发送即从 0 升到 10

存在两个 Nash Equilibria

为什么这仍然不理想:两个 NE 都要求"某一方永远沉默"。现实中两个对等的自私设备无法协调由谁牺牲,而且这对被牺牲方不公平。

4.6 混合策略(Mixed Strategy)

解法:允许每个玩家做概率性决策(老师的比喻:掷硬币,按结果决定发不发;实际靠伪随机数生成器)。

  • User 1:以概率 发送,以概率 沉默
  • User 2:以概率 发送,以概率 沉默

四种组合的发生概率:

事件 概率
两人都发送
1 发送、2 沉默
1 沉默、2 发送
两人都沉默

User 1 的期望效用(把每格收益乘以概率再求和):

后两项为 0,化简为:

4.7 自私情形: 是 Nash Equilibrium

整理(这是理解全题的关键一步):

代入

结论:只要对方取 无论 User 1 怎么调 ,自己的期望效用恒为 0——既不亏也不赚。对称地,若 ,则

于是没有任何一方有改变的动机 ⇒ 是一个混合策略 Nash Equilibrium,双方效用为

直觉:自私的用户会把发送概率抬到 2/3 这么高,结果碰撞频繁,大部分时间都在失败,净收益归零。

4.8 协作情形: 才是最优

如果用户不自私,可以共同选择 来最大化效用。代入

验算:

对称地 。老师原话:你怎么试都不会超过 5/3

4.9 结果对比

情形 效用
Selfish users(Nash Equilibrium) (0, 0)
Cooperative users(最优解) (5/3, 5/3)

这就是本讲的核心洞见自私导致的均衡(发送太频繁)严格劣于协作最优解。降低发送概率、并让发送时刻随机化(不能总在同一时刻发),反而让双方都赚到正收益。

4.10 老师对现实性的补充(课堂问答)

学生问"现实中真有这种机制吗",老师的回答值得记:

  • 真实的无线协议里确实有防碰撞策略(如 CSMA 类机制、由 provider 控制的接入策略),来缓解碰撞影响。
  • 但这里的模型是高度简化的:现实中碰撞未必导致收益完全为 0,可能还有部分比特能传过去。
  • 这个例子的目的是演示分析方法,说明即使设备无法同步、共享同一信道、必然面临碰撞,也能用数学推出有效的通信策略。

五、考点重点

  1. 五层模型:会按本课口径答 application / transport / network / link / physical;知道 ISO/OSI 有 7 层,而 session 与 presentation 被并入 application 或视为不存在
  2. 每层的核心问题:能一句话说清 adjacent(link)/ non-adjacent(network)/ process-to-process(transport)的分界。
  3. Link 层三大功能:bit error detection、medium access control、link-layer addressing。
  4. Network 层:routing + forwarding,routing table 与最短路径。
  5. Transport 层:socket 是进程与网络之间的接口;管的是 process-to-process 而非 host-to-host。
  6. 协议归层:HTTP/FTP/SMTP/DNS/SIP/RTP/MQTT/CoAP/QUIC → application;TCP/UDP/MPTCP → transport;注意 QUIC 的归属有争议,Multimedia 与 Wireless 是跨层主题
  7. Nash Equilibrium 定义:没有任何一方能通过单方面改变策略而获益。要会在 2×2 矩阵里逐格验证
  8. 囚徒困境:(Confess, Confess) 是 NE;(Silent, Silent) 社会最优但不是 NE——这就是 dilemma。
  9. 混合策略计算(最可能出计算题):
    • 会写期望效用
    • 会整理成 ,令系数为 0 解出对手的均衡概率
    • 会对 求导解出协作最优 ,并算出效用 5/3
    • 记住结论对比:自私 (2/3, 2/3) → (0,0);协作 (1/3, 1/3) → (5/3, 5/3)
  10. 概念性问题:为什么碰撞的收益是负数(浪费资源,比不发还差);为什么两个纯策略 NE 仍不理想(需要一方永远牺牲,自私对等设备无法协调)。

六、行动清单