【个人笔记】《计算机网络》自顶向下 学习笔记


前言

《计算机网络》自顶向下 学习笔记 0429 完成 0512

机械转码,发现掌握的计网知识点琐碎,故决定系统学习其原理、实现,选择《计算机网络(自顶向下方法 第7版,James F.Kurose,Keith W.Ross)》一书。计划之后 MIT 6.824 LAB 进阶。感触最深是从协议原理到实现,发现算法与数据结构的应用,如网络层控制平面 LS 算法用到图论 dijkstra 算法,子网前缀匹配聚集,质数与 RSA 等。收获颇丰,笔记记录,方便回顾。

  • 计算机网络与互联网
  • 应用层
  • 传输层
  • 网络层:数据平面
  • 网络层:控制平面
  • 数据链路层与局域网
  • 网络安全
  • 无线和移动网络
  • 多媒体网络
  • 网络管理

第一章 概论

目标:

了解基本术语和概念

掌握网络的基本原理

为后续章节更深入的学习打下基础

方法——以 Internet 为例子

提纲:

1.1 什么是Internet?什么是协议?

1.2 网络边缘

1.3 网络核心

通信网络:

线路交换单连接(FDM TDM)

分组交换存储-转发(虚电路 数据报)

1.4 接入网和物理媒体

1.5 Internet 结构和 ISP

1.6 分组延时、丢失和吞吐量

分组延时:处理延时、队列延时、传输延时、传播延时

1.7 协议层次及服务模型

报文 message

报文段 segment 数据报 datagram——区分进程(TCP/UDP)、加强服务(TCP 可靠)

分组 packet 数据报 datagram(无连接)——路由与转发

帧 frame

位 bit

1.8 历史


第二章 应用层

目标:

网络应用的原理:网络应用协议的概念和实现方面

传输层的服务模型

客户-服务器模式

对等模式(peer-to-peer)

内容分发网络

网络应用的实例:互联网流行的应用层协议

HTTP

FTP

SMTP/POP3/IMAP

DNS

编程:网络应用程序

Socket API

提纲:

2.1应用层协议原理

2.2 Web and HTTP

2.3 FTP*

2.4 Email

SMTP

POP3

IMAP

2.5 DNS

2.6 P2P 应用

2.7 CDN

2.8 TCP 套接字(Socket)编程

2.9 UDP 套接字编程


第三章 传输层

目标:

理解传输层的工作原理

多路复用/复分解

可靠数据传输

流量控制

拥塞控制

学习 Internet 传输层协议

UDP:无连接传输

TCP:面向连接的可靠传输

TCP 的拥塞控制

提纲:

3.1 概述和传输层服务

有些服务是可以加强的:不可靠 --> 可靠;安全

但有些服务是不可以被加强的:带宽、延迟

3.2 多路复用与解复用

3.3 无连接传输:UDP

3.4 可靠数据传输的原理

停止等待协议:RDT 1.0 RDT 2.0 2.1 2.2 RDT 3.0

流水线协议:GBN SR

SW = 1 RW = 1 S-W

SW > 1 RW = 1 GBN 出错率低时适用,所需资源少

SW > 1 RW > 1 SR 链路容量大(延迟大、带宽大)时适用,重传代价小

3.5 面向连接的传输:TCP

段结构

可靠数据传输

可理解为 GBN 和 SR 的结合

TCP 快速重传:发送方收到同一数据的 3 个冗余 ACK,但定时器未到时间

流量控制

本质:反馈

连接管理

本质:知道要通信、准备好资源、控制位置位(序号、初始化 rcvbuff)

2 次握手失败场景:半连接(超时重传,只在服务端维护连接)、老的数据被当作新数据接收

3 次握手:变化的初始序号 + 双方确认对方的序号

4 次挥手:对称释放,并不完美

3.6 拥塞控制原理

拥塞的表现:分组丢失(路由器缓冲区溢出)–> 分组丢失导致“上游传输能力”浪费;分组经历比较长的延迟(在路由器的队列中排队)–> 延迟导致重传导致更加拥塞(非线性破坏)

拥塞控制方法:端到端拥塞控制(TCP 采用的方法)、网络辅助的拥塞控制(路由器标志位显式反馈)

3.7 TCP 拥塞控制


第四章 网络层:数据平面

目标:

理解网络服务的基本原理,聚集于其数据平面

网络服务模型

转发和路由

路由器工作原理

通用转发

互联网中网络层协议的实例与实现

提纲:

4.1 导论

数据平面:转发——将分组从路由器的输入接口转发到合适的输出接口

传统方式 基于目标地址 + 转发表

SDN 方式 基于多个字段 + 流表

控制平面:路由——使用路由算法来决定分组从发送主机到目标接收主机的路径

传统的路由算法:在路由器中被实现

SDN 在远程的服务器中实现

4.2 路由器组成

4.3 IP :Internet Protocol

数据报格式

分片:原因是数据链路层 MTU 限制

IPv4 地址

IP地址分类 单播:A B C 多播:D 备用:E

子网部分:全为 0——本网络

主机部分:全为 0——本主机;全为1——广播地址,即该网络所有主机

NAT:网络地址转换协议(公网 IP 与私网 IP 在 NAT 路由器转换,可与默认网关联系理解)

IPv6

4.4 通用转发与 SDN(SDN 控制器即网络 OS)

匹配

行动

OpenFlow 有关“匹配 + 行动”的运行实例

问题:转发表(基于目标的转发)和流表(通用转发)是如何计算出来的?

答案:通过控制平面。


第五章 网络层:控制平面

目标:

理解网络层控制平面的工作原理

传统路由选择算法

SDN 控制器

ICMP: Internet Control Message Protocol

网络管理(略)

以及它们在互联网上的实例和实现

OSPF,BGP,OpenFlow,ODL 和 ONOS 控制器,ICMP,SNMP

提纲:

5.1 导论

5.2 路由选择算法:网络层软件的一部分,完成路由功能

link state(链路状态算法):所有的路由器拥有完整的拓扑和边的代价的信息

本质:dijkstra 算法

防止广播风暴——TTL + 版本号

可能带来路径振荡

distance vector(距离矢量算法):分布式,迭代地与邻居交换路由信息,计算路由信息

本质:bellman-ford 算法

比较:LS 和 DV 算法

消息复杂度(DV 胜出)

收敛时间(LS 胜出)

健壮性(LS 胜出)

5.3 因特网中自治系统内部的路由选择(内部网关协议——性能)

RIP(routing information protocol,基于 DV 算法),规模小时使用,代价低

OSPF(open shortest path first,基于 LS 算法),进阶层次化的 OSPF 路由——区域划分设置 boundary,backbone,internal 路由器

5.4 ISP 之间的路由选择(外部网关协议——策略)

BGP(border gateway protocol,边界网关协议),从政治策略、经济策略类比理解

5.5 SDN 控制平面

大一统实现路由功能、交换机功能、负载均衡、NAT、防火墙等,对网络进行编程

5.6 ICMP:因特网控制报文协议

5.7 网络管理和 SNMP(略)


第六章 链路层和局域网

目标:

理解数据链路层服务的原理:

检错和纠错

共享广播信道:多点接入(多路访问)

链路层寻址

LAN:以太网、VLANs

可靠数据传输,流控制:done!

实例和各种链路层技术实现

提纲:

6.1 引论与服务

底层逻辑:协议在链路层不可靠,则链路层做可靠控制;反之亦然,如以太网不做可靠控制

6.2 差错检测与纠正

6.3 多点访问协议

MAC 协议总结 ,多点接入问题——对于一个共享型介质,各个节点如何协调对它的访问和使用?

信道划分:按时间、频率或者编码(TDMA、FDMA、CDMA),CDMA 可类比为不同语言

随机访问(动态):载波侦听在有些介质上很容易(wire,有线介质,CSMA/CD);但在有些介质上比较困难(wireless,无线,CSMA)

依次轮流协议:集中——由一个中心节点轮询;分布式——通过令牌控制

6.4 LANs

addressing,ARP

Ethernet

switches

VLANS(略)

6.5 链路虚拟化:MPLS(略)

6.6 数据中心网络:高带宽、高可靠性、低延迟

6.7 a day in the life of web request

DHCP,DNS,IP,TCP,ARP


第八章 网络安全

目标:

网络安全原理

加密,不仅仅用于机密性

认证

报文完整性

密钥分发

安全实践

防火墙

各个层次的安全性:应用层,传输层,网络层和链路层

提纲:

8.1 什么是网络安全?

机密性

认证

报文完整性

访问控制和服务的可用性

网络中的坏蛋:窃听、插入、伪装、劫持、拒绝服务

8.2 加密原理

对称密钥密码学:发送方和接收方的密钥相同

公开密钥密码学:发送方使用接收方的公钥加密,接收方使用自己的私钥解密(如 RSA)

8.3 认证

8.4 报文完整性

8.5 密钥分发和证书

8.6 访问控制:防火墙

8.7 攻击和对策

8.8 各个层次的安全

安全电子邮件

安全传输层(SSL)

IP sec

802.11

运行中的安全性:firewalls and IDS


第九章 未来网络前沿技术

目标:

NDN 与 MobilityFirst :Name 以及网内缓存

SDN:现有网络的升级,数据平面不变

提纲:

9.1 软件定义网络

9.2 命名数据网络

9.3 优先移动网络

9.4 网络试验设施


结论

计网两周计划完结。

学习笔记,定期回顾,有问题留言。


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

idiot5liev

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值