EEC4100: Network Protocols and Applications
正向复习:从课程PPT开始
第一部分:课程介绍与网络基础
-
课程介绍
- 课程目标:学习网络协议和应用的基础知识,理解网络协议的设计原理。
- 先修要求:无,但建议具备概率论基础知识和至少一种编程语言的熟悉度。
- 课程安排:包括讲座、教程、项目作业和最终考试。
- 教材:《Computer Networking: A Top-Down Approach》(第6-8版)。
-
计算机网络与互联网基础
- 网络的组成:包括主机、接入网络、物理介质、路由器等。
- 网络的类型:如企业网络、家庭网络、移动网络等。
- 网络性能:包括延迟、丢包、吞吐量等。
- 协议层次:应用层、传输层、网络层、链路层和物理层。
- 互联网的结构:网络的网络,包括ISP、数据中心、内容提供商网络等。
第二部分:应用层协议
-
应用层概述
- 应用层的作用:支持各种网络应用,如Web、电子邮件、VoIP等。
- 应用架构:客户端-服务器架构和对等架构(P2P)。
- 套接字编程:使用套接字进行网络通信。
-
具体应用层协议
- HTTP协议
- HTTP的工作原理:客户端请求、服务器响应。
- HTTP连接:非持久连接和持久连接。
- HTTP消息格式:请求消息和响应消息。
- Web缓存和条件GET请求。
- 电子邮件协议
- SMTP(简单邮件传输协议):邮件服务器之间的邮件传输。
- POP3和IMAP:邮件客户端从服务器检索邮件。
- DNS(域名系统)
- DNS的作用:将域名解析为IP地址。
- DNS的分布式数据库结构:根域名服务器、顶级域名服务器、权威域名服务器。
- DNS查询和解析过程。
- HTTP协议
第三部分:传输层协议
-
传输层概述
- 传输层的作用:为应用层提供端到端的通信服务。
- 多路复用和解复用:基于端口号区分不同的应用进程。
- 传输层协议:UDP和TCP。
-
UDP(用户数据报协议)
- UDP的特点:无连接、不可靠、无序的传输服务。
- UDP的报文格式和校验和。
- UDP的应用场景:如多媒体流、DNS查询等。
-
TCP(传输控制协议)
- TCP的特点:面向连接、可靠、有序的字节流服务。
- TCP的报文格式:包括序列号、确认号、窗口大小等字段。
- TCP的可靠传输机制:包括确认与重传、流量控制、拥塞控制。
- TCP的连接管理:三次握手建立连接,四次挥手关闭连接。
- TCP的拥塞控制算法:慢启动、拥塞避免、快速重传等。
第四部分:网络层协议
-
网络层概述
- 网络层的作用:负责将数据报从源主机传输到目的主机。
- 数据平面和控制平面:数据平面负责数据转发,控制平面负责路由选择。
- 路由器的架构:输入端口、输出端口、交换结构等。
-
IP协议
- IP报文格式:包括IP地址、报文长度、生存时间(TTL)等字段。
- IP地址分配:包括子网划分、DHCP动态分配等。
- IP分片与重组:处理超过链路最大传输单元(MTU)的报文。
-
路由协议
- 路由算法:如Dijkstra算法。
- 路由协议的分类:链路状态算法和距离矢量算法。
- 具体路由协议:如RIP、OSPF、BGP。
第五部分:链路层协议
-
链路层概述
- 链路层的作用:负责在相邻节点之间传输数据报。
- 链路层服务:包括错误检测与纠正、多址接入、链路层地址等。
-
多址接入协议
- 多址接入的类型:点对点和广播。
- 多址接入协议的分类:时分多址(TDMA)、频分多址(FDMA)、随机接入(如ALOHA、CSMA/CD)。
- 以太网的CSMA/CD协议。
-
局域网(LAN)
- LAN的特点:如高带宽、低延迟。
- MAC地址:用于局域网内的设备识别。
- ARP(地址解析协议):将IP地址解析为MAC地址。
第六部分:无线与移动网络
-
无线网络
- 无线链路的特性:信号衰减、干扰、多径传播。
- 无线局域网(WLAN):如802.11标准。
- 无线接入点(AP)和基站:负责无线设备与有线网络的连接。
-
移动性管理
- 移动性管理的挑战:处理移动用户在网络中的位置变化。
- 移动IP:支持移动设备在不同网络之间的无缝切换。
- 3G/4G/5G网络中的移动性管理。
第七部分:多媒体网络
-
多媒体应用
- 多媒体数据的特点:如视频和音频的编码、传输。
- 流媒体技术:如YouTube、Netflix等。
- 语音-over-IP(VoIP):如Skype、WhatsApp等。
-
多媒体协议
- RTP(实时传输协议):用于实时音频和视频数据的传输。
- SIP(会话初始化协议):用于建立和管理实时通信会话。
-
网络对多媒体的支持
- QoS(服务质量)保障:如优先级调度、流量整形。
- 内容分发网络(CDN):提高多媒体内容的分发效率。
第八部分:网络安全
-
网络安全概述
- 网络安全的目标:保密性、认证、消息完整性、可用性。
- 网络安全的威胁:如窃听、篡改、拒绝服务攻击等。
-
密码学基础
- 对称密钥加密和非对称密钥加密。
- 加密算法:如AES、RSA。
- 数字签名和消息认证码(MAC)。
-
安全协议
- TLS/SSL:用于保护传输层的安全。
- 安全电子邮件:使用加密和数字签名保护邮件内容。
-
网络安全实践
- 防火墙:隔离内部网络和外部网络。
- 入侵检测系统(IDS):检测和防范网络攻击。
第九部分:课程总结与考核
-
项目作业
- 基于套接字编程的项目,支持两人一组完成。
- 项目内容将在套接字编程讲座后发布。
-
考核方式
- 项目作业:占总成绩的30%。
- 最终考试:占总成绩的70%,开卷考试,允许携带计算器和30页自印材料。
反向聚焦:从作业反推重点
第一部分:计算机网络基础
- 内容:网络的组成、性能指标、协议层次等。
- 作业:
- Tutorial 1, Problem 1:计算端到端延迟,涉及传输延迟、传播延迟和处理延迟的计算。
- 归类:属于网络基础部分,特别是网络性能指标的计算。
- Tutorial 1, Problem 2:消息分段对传输时间的影响。
- 归类:属于网络基础部分,特别是数据分段和传输效率的分析。
- Tutorial 1, Problem 1:计算端到端延迟,涉及传输延迟、传播延迟和处理延迟的计算。
第二部分:应用层协议
- 内容:HTTP、DNS、电子邮件协议等。
- 作业:
- Tutorial 2, Problem 1:DNS查询和HTTP请求的延迟计算。
- 归类:属于应用层协议部分,特别是DNS和HTTP协议的性能分析。
- Tutorial 2, Problem 2:不同HTTP配置下的延迟比较。
- 归类:属于应用层协议部分,特别是HTTP协议的性能优化。
- Tutorial 2, Problem 3:DNS缓存和查询时间的计算。
- 归类:属于应用层协议部分,特别是DNS协议的缓存机制和查询效率。
- Tutorial 2, Problem 1:DNS查询和HTTP请求的延迟计算。
第三部分:传输层协议
- 内容:TCP和UDP协议,包括可靠传输、流量控制、拥塞控制等。
- 作业:
- Tutorial 3, Problem 1:GBN协议的窗口和ACK字段分析。
- 归类:属于传输层协议部分,特别是GBN协议的机制分析。
- Tutorial 3, Problem 2:比较GBN、SR和TCP协议在丢包情况下的表现。
- 归类:属于传输层协议部分,特别是不同协议的性能比较和机制分析。
- Tutorial 3, Problem 1:GBN协议的窗口和ACK字段分析。
第四部分:网络层协议
- 内容:IP协议、路由协议、子网划分等。
- 作业:
- Tutorial 4, Problem 1:最长前缀匹配的路由表分析。
- 归类:属于网络层协议部分,特别是IP路由和最长前缀匹配机制。
- Tutorial 4, Problem 2:多子网的IP和MAC地址分配及数据包传输步骤。
- 归类:属于网络层协议部分,特别是IP地址分配和数据包传输过程。
- Tutorial 4, Problem 3:移动IP场景下的网络层基础设施需求。
- 归类:属于网络层协议部分,特别是移动IP和路由机制。
- Tutorial 4, Problem 1:最长前缀匹配的路由表分析。
第五部分:链路层协议
- 内容:链路层服务、以太网、无线局域网等。
- 作业:
- Tutorial 5, Problem 1:视频流的播放和缓冲区管理。
- 归类:属于链路层协议部分,特别是数据传输和缓冲区管理。
- Tutorial 5, Problem 2:令牌桶算法的模拟。
- 归类:属于链路层协议部分,特别是流量控制机制。
- Tutorial 5, Problem 3:无线网络中的窗口大小计算。
- 归类:属于链路层协议部分,特别是无线网络中的流量控制。
- Tutorial 5, Problem 1:视频流的播放和缓冲区管理。
第六部分:无线与移动网络
- 内容:无线链路特性、移动性管理、3G/4G/5G网络等。
- 作业:
- Tutorial 6, Problem 1:身份认证和中间人攻击。
- 归类:属于无线与移动网络部分,特别是安全机制和身份认证。
- Tutorial 6, Problem 2:消息认证码的时间戳机制。
- 归类:属于无线与移动网络部分,特别是消息完整性和认证机制。
- Tutorial 6, Problem 1:身份认证和中间人攻击。
飞鸿踏雪泥