导图社区 计算机网络思维导图
《计算机网络:自顶向下方法(原书第6版)》第1版于12年前出版,首创采用自顶向下的方法讲解计算机网络的原理和协议,出版以来已被几百所大学和学院选用。是业界经典的计算机网络教材之一。第6版继续保持了以前版本的特色,为计算机网络教学提供了一种新颖和与时俱进的方法。全书共九章,以下为本书的导图笔记,供大家学习参考。
编辑于2019-04-03 01:12:35计算机网络
基本知识
网络协议
组成要素
语法
语义
同步
通信知识
分组交换
传输方式
虚电路
数据报
时延
类型
结点处理时延
排队时延
传输时延
传播时延
计算
d(nodal)=d(proc)+d(queue)+d(trans)+d(prop)
存储转发和直接转发的区别
存储转发需要收到一个完整的帧再发送,慢
直接转发收到数据就发送,快
分组丢失
分组到达速度大于发送速度,分组缓存容量有限
电路交换
实现方式
FDM(频分)
TDM(时分)
CDMA(码分)
应用层
协议数据单元(PDU)
报文(message)
协议
HTTP
Web
FTP
传输文件
SMTP(简单邮件传输协议)
传输邮件
POP3
查看邮件
IMAP
查看邮件
DNS(域名系统)
查找域名对应的IP地址
迭代查询
递归查询
根DNS服务器
顶级域DNS服务器
权威DNS服务器
本地DNS服务器
传输层(运输层)
协议数据单元(PDU)
报文段(segment)
协议
TCP(传输控制协议)
TCP报文段结构
标志字段
ACK
SYN
FIN
序号和确认号
TCP提供累积确认
往返实践的估计和超时
估计往返时间
仅在某个时刻做一次测量。且不为重传的报文段测量SampleRTT,只为传送一次的测量
公式
EstimatedRTT(RTTs)=(1-α)*EstimatedRTT+α*SampleRTT α推荐为0.125
RTT变化程度DevRTT(RTTD)=(1-β)*DevRTT+β*|SampleRTT-EstimatedRTT|
设置重传超时间隔(Karn算法)
RTO(TimeoutInterval)=EstimatedRTT+4*DevRTT
如果重传,RTO=2*RTO
功能
可靠数据传输
特色功能
快速重传
接收方
每收到一个失序报文段,立即发送一个对上一个按序到达报文的重复确认
发送方
一旦收到3个冗余ACK,直接重发对方要求的报文段,不过重传计时器依然有效
特点
发送和接收窗口不一定一样大
TCP标准没有规定对不按需到达数据如何处理
TCP要求接收方必须有累积确认的功能
流量控制
发送方不能淹没接收方缓存
接收窗口rwnd
利用滑动窗口实现流量控制
拥塞控制
和流量控制的区别
拥塞控制针对全网,流量控制针对一对连接
状态变量
拥塞窗口cwnd
慢启动阈值ssthresh
拥塞的影响
时延变大
丢包
方法
慢开始和拥塞避免
见文章详解
快重传和快恢复
见文章详解
TCP连接管理
三个阶段
连接建立
三次握手
步骤(见文章详解)
原因
双方能确知对方的存在
允许双方协商一些参数
对运输实体资源进行分配
数据传送
连接释放
见文章详解
UDP(用户数据报协议)
无连接的
不可靠、失序交付
不提供不必要的可靠性扩展(在网络层基础上)
报文段结构
校验和的计算
和网络层的关系
网络层针对主机之间的逻辑通信
传输层为主机上的进程提供通信,即端到端的通信,依赖于网络层,并且可以加强
多路复用(分用)和多路分解
多路复用(发送端)
从不同套接字收集数据块,为每个数据块封装上首部信息生成报文段,传递到网络层
多路分解(接收端)
将传输层报文段中的数据交付到正确的套接字,定向给进程
端口
熟知端口(0-1023)
不能随便用
登记端口(1024-49151)
为应用程序长期使用,必须在IANA登记,防止重复
客户端口或短暂端口(49152-65535)
客户进程短暂使用
可靠数据传输原理
构建可靠传输(RDT)
信道无错误、无丢失
rdt1.0
信道有错误、无丢失
rdt2.0(停止等待)
错误处理
发送端重传
新增状态
发送端检测
接收端校验
ACK(肯定确认)
NAK(否定确认)
存在缺陷
ACK或NAK出错,发送方无法得知
rdt2.1
发送方收到含糊不清的ACK或NAK时,重传冗余分组
接收端需要判定数据是否重复
给每个分组加一个标签代表顺序号
rdt2.2
两次对上个分组的ACK,代表这个分组的NAK
信道有错误、有丢失
rdt3.0
设置定时器,超时即重传
效率低
采用流水线的方式发送
增加序号范围
发送端需要缓存没确认的分组
处理丢失、损坏和超时的分组
回退N步(GBN)
滑动窗口
累积确认
接收端无需缓存
选择重传(SR)
滑动窗口
接收端需要缓存
发送窗口不能大于接收窗口
序号个数大于等于发送窗口加接收窗口大小,这样包的序号不会重复
网络层
协议数据单元(PDU)
分组(packet)
转发和路由选择
区别
转发:单个路由器选择输出链路
路由选择:规划整条路径
路由器
只工作到网络层
路由算法
虚电路和数据报网络
虚电路
特点
每个路由器都要为进行中的连接维持连接状态信息
每个路由器有一张转发表记录VC号
一条完整的虚电路中每段链路有一个VC号
分组首部中包含VC号,由路由器更新
为何要改变VC号:简化虚电路建立
信令协议
用于建立、保持、拆除虚电路
数据报网络
特点
没有连接建立的概念
转发靠识别目的主机地址
地址太多怎么办
最长前缀匹配原则
同一个端到端,不同时间,分组走的路径可能不同
数据报网络的分组也称数据报
路由器工作原理
路由器结构
路由器转发平面(硬件实现)
输入端口
功能
将输入的物理链路与路由器相连接(物理层功能)
与位于入链路远端的数据链路层交互(数据链路层功能)
查询转发表决定输出端口
交换结构
种类
经内存交换
特点
在路由选择处理器的直接控制下完成
数据报经过两次数据总线
经总线交换
特点
不需要路由选择处理器的干预
一次只有一个分组能够跨越总线
经互联网络交换
特点
能够并行转发多个分组
输出端口
路由器转发控制平面(软件实现)
路由选择处理器
何处出现排队
延时溢出
线路前部阻塞
网络层三个主要组件
1.网际协议(IP)
提供
路由功能
决定数据报是否到达目的地,或是否要被转发
如果要转发,IP决定下一个位置
不提供
可信赖的保证
数据报格式
详见文章
分片和重组
原因
不同的链路层协议有不同的MTU(最大传送单元)
特点
重组只在终点进行,路由器只做转发和选路
IPv4编址
长度
32比特
书写方式
点分十进制
CIDR(无类别域间路由选择)
三部分
network ID
subnet ID
host ID
子网掩码
更早的分类路由
NAT(网络地址转换)
特点
本地网络地址和外部地址分开
对外只有一个唯一的地址
争议
路由器应该只工作到网络层
违背了端到端的假设
地址短缺应当用IPv6解决
2.ICMP(互联网控制报文协议)
用于主机和路由器交换信息
报错
回显请求等等
特点
通常被认为是IP的一部分,但从体系结构上讲它是位于IP之上的,因为ICMP报文承载在IP分组中
3.路由选择
目的
给定一组路由器以及连接路由器的链路,找到一条从源路由器到目的路由器的好路径
算法
全局式路由选择算法,也称链路状态算法(LS算法)
问题
若代价计算基于所承载的流量,会产生振荡,费用反复改变
内容
详见文章
分散式路由选择算法,也称距离向量算法(DV算法)
问题
好消息传得快,坏消息传得慢
导致不断往复计算
解决方案
增加毒性逆转
内容
详见文章
分层路由
路由器不能保存全球所有的路由的信息
AS(自治系统)
同一个AS内部运行相同的路由协议(自治系统内部路由选择协议)
热土豆路由
所有AS之间运行相同的路由协议(自治系统间路由选择协议)
网关路由器(gateway router)
协议
域内
RIP(路由选择信息协议)
DV算法
代价和跳数对应
最大跳数15
RIP通告
30秒交换一次
180秒没有响应代表链路中断
运行在UDP之上,当作应用层进程来实现
OSPF(开放最短路径优先)
LS算法
Dijkstra算法
过程
通告携带信息,广播到整个AS系统,OSPF通告包含在报文中,OSPF报文直接由IP承载
优点
安全,能够使用鉴别
允许使用多条相同费用路径
不同服务类型可以用多种方式算代价
同时支持单播和多播路由(MOSPF)
在更大的范围内可以使用层次结构的OSPF
域间
BGP(边界网关协议)
工作手段
1.从相邻AS处获得子网可达性信息
2.向本AS内部的所有路由器传播这些可达性信息
3.基于可达性信息和AS策略,决定到达子网的“好”路由
BGP会话
性质
半永久的TCP连接
用途
用于一对路由器交换路由信息
分类
外部BGP会话(eBGP)
内部BGP会话(iBGP)
特点
BGP会话并非与物理链路一一对应
广播和多播路由
IGMP(因特网组管理协议)
数据链路层
协议数据单元(PDU)
帧(frame)
简介
功能
相邻结点的传输
术语
nodes(结点)
主机和路由器
links(链路)
沿着通信路径连接相邻结点的通信信道
frame(帧)
封装数据报
特点
同个路径不同链路可能采用不同的协议传数据
不同的链路协议提供不同的服务
提供的服务
成帧
链路接入
可靠交付
差错检测与纠正
奇偶校验
因特网检验和(Internet checksum)
循环冗余检测(CRC)
多路访问协议(multiple access protocol)
术语
碰撞(collide)
争用期
信道划分协议
TDM(时分复用)
FDM(频分复用)
CDMA(码分多址)
随机访问协议
slotted ALOHA(时隙ALOHA)
纯ALOHA
CSMA(载波监听多路访问)
CSMA/CD(带有冲突检测的载波监听多路访问)
802.3即以太网中采用
使用二进制指数后退算法确定重传等待时间
效率比ALOHA高
CSMA/CA(带有冲突避免的载波监听多路访问)
802.11即WiFi中采用
轮流协议
轮询(polling)
令牌传递(token passing)
交换局域网
寻址
MAC地址
48位
ARP(地址解析协议)
以太网
以太网帧
长度在64-1518bytes
其中数据部分长度在46-1500bytes之间
争用期
概念(详见文章)
10M以太网取51.2微秒为争用期
链路层交换机
特点
透明
主机和路由器并不能感受到它的存在
自学习
即插即用
功能
转发和过滤
性质
消除碰撞
异质的链路
交换机使不同链路彼此隔离,不同链路能以不同速率运行
管理
易于进行网络管理
使用以太网交换机可以实现虚拟局域网
VLAN
只是一种服务,并不是新型网络
高速以太网
100BASE-T
特点
可在全双工方式下工作而无冲突
不使用CSMA/CD
MAC帧格式仍是802.3标准
帧间间隔由9.6微秒,改为0.96微秒
三种不同物理层标准
100BASE-TX
2对双绞线
100BASE-FX
光纤
100BASE-T4
4对双绞线
不支持同轴电缆
吉比特以太网
特点
允许在1Gb/s下以全双工和半双工工作
使用802.3帧
半双工下使用CSMA/CD
与10Mb/s 100Mb/s兼容
物理层
1000BASE-X
光纤
1000BASE-T
4对双绞线
10Gbit以太网
特点
802.3帧
不再使用铜线,只使用光纤
只工作在全双工方式,不使用CSMA/CD
以太网从10Mb/s到10Gb/s表明以太网
可扩展
灵活
易于安装
稳健性好
点对点传输
特点
面向连接
一个发送方,一个接收方,一条链路
流行的协议
PPP 点对点协议
三个组成部分
1.一个将IP数据报封装到串行链路的方法
2.链路控制协议
3.网络控制协议
需要提供的服务
发送端把网络层的数据报封装成数据链路层的帧,接收端解封装
可以携带任何bit格式
差错检测(不纠正)
有连接的服务
终端可以学习并配置网络地址
不用提供的
纠错
流量控制
失序传送
多点链路
HDLC 高级数据链路控制
三个基本问题
1.封装成帧
2.透明传输
3.差错检测
物理层
协议数据单元(PDU)
比特(bit)
拓扑种类
总线型拓扑
星型拓扑
树型拓扑
环形拓扑
网状拓扑
接入方式
拨号上网
ADSL(非对称数字用户线路)
HFC(混合光纤同轴电缆网)
光纤接入
无线网络
802.11b WiFi
蜂窝网
物理媒介
双绞线(TP)
按用途分类
Cat 3
电话使用
Cat 5
以太网使用
按有无屏蔽分类
无屏蔽双绞线 UTP
有屏蔽双绞线 STP
同轴电缆
光纤
无线电