感谢网友分享
深入探索计算机网络 | Computer Networking
从基本原理出发理解网络协议,并学习使用套接字进行网络编程。涵盖 HTTP 和 DNS、TCP 和 QUIC、IPv4 和 IPv6、TLS 等更多内容。
说明
互联网及其支持的各种应用,如网页,已成为我们这个时代技术进步的最重要力量之一。
在本课程中,我们将涵盖使互联网、网页及其他计算机网络应用成为可能的关键协议。这不仅将帮助你充分利用现有的网络技术,还将助你在未来的技术发展中发挥作用。
本课程的核心是每个主题的一系列问题。你应该努力解决每个问题,并在需要时参考详细的解答和补充解释。此外,还有一些完整的研讨会,有些人发现这些研讨会有助于将各个主题联系起来。虽然本课程不需要教科书,但我们推荐《计算机网络:自顶向下方法》(“Kurose & Ross”)作为补充材料。
课程内容
-
喊话服务器
-
HTTP 头服务器
-
简单的 DNS 客户端
-
数据包的生命周期(即“当…发生时”)
-
什么是套接字
-
我们所说的网络层是什么意思(OSI 模型)
-
什么是系统调用(高级解释)
-
为什么数据包通常有 1500 字节的 MTU
-
波斯特尔定律
-
绑定到端口意味着什么
-
如何知道库在使用哪些套接字系统调用
-
TCP 和 UDP 之间的许多差异
-
延迟与吞吐量
-
netcat 快速入门
-
什么是回环接口(即 localhost)
-
HTTP 代理基本代理
-
HTTP 代理持久连接
-
HTTP 代理并发
-
HTTP 代理功能
-
HTTP/2 简介
-
HTTP 和浏览器的历史简介
-
代理、网关和隧道
-
理解 HTTP 头并回答自己的问题
-
使用 setsockopt 系统调用
-
HTTP 持久连接的动机和实现
-
DNS 客户端消息压缩
-
DNS 客户端反向 DNS
-
DNS 客户端更多记录类型
-
DNS 客户端解析追踪
-
DNS 之前的主机名:单一 HOSTS.TXT 文件
-
程序如何知道使用哪个 DNS 服务器
-
主机名的结构
-
理解 DNS 区域和区域传输
-
DNS 类别:65535 个互联网替代方案
-
递归解析器如何用于反射攻击
-
DNS 中的 TTL 是什么,它是否是一个好主意
-
根顶级域名和其他权威名称服务器角色
-
有损下载
-
可靠传输
-
TCP 如何计算超时间隔
-
QUIC 的主要思想是什么
-
Van Jacobson 是否拯救了互联网(拥塞控制概述)
-
流量控制和拥塞控制的基本区别
-
TCP 滑动窗口背后的动机
-
TCP 握手的目的是什么
-
TCP 中初始序列号 (ISN) 的选择
-
TCP 如何提供可靠的数据传输
-
TCP 中的流量控制和缓冲演示
-
跟踪路由
-
跟踪路由自治系统
-
跟踪路由 ICMP 探测
-
跟踪路由自定义
-
跟踪路由、ping 和 mtr 概述
-
为什么 IPv4 中的生存时间基本上是一个跳数计数
-
私有 IP 地址究竟是什么
-
自治系统和互联网的结构
-
理解 CIDR 子网
-
IPv4 和 IPv6 之间的主要差异
-
路由器如何决定如何转发数据包
-
NAT 的基本思想
-
分片和分段的区别