体系结构
计算机网络:通过通信信道互联起来的集合体
计算机网络关注的基本问题:连通性,可靠性,经济型,扩展性,适应性
现今的互联网采用基于分组交换的分层架构
特征:分组交换,无连接,统计时分复用,扁平拓扑和路由,异质异构
分层架构的优点:模块化,独立性,复用性,标准化
分层架构的缺点:性能优化困难
物理层
处理直连节点间的比特传输
编码
基本是另一门学科了,归零不归零、曼彻斯特差分曼彻斯特等等
复用
多路信号共用一条物理线路的技术,常用的有时分、频分、波分等等
交换
在多节点通信网络中,为有效利用通信设备和线路,希望动态设定通信双方的线路,有:
- 电路交换:需要建立和拆除线路,但数据传送延迟较短。如电话网、ISDN。
- 报文交换:信息以报文为单位进行存储转发,中间节点缓冲大、延迟较长。
- 分组交换:报文分为分组,独立路由;网络节点不预先分配资源;实现统计复用。
- 数据报:每个分组均带有网络地址,独立路由。如 IP 网。
- 虚电路:同一分组流的分组通过预先建立的路径传输,确保分组顺序,不同分组流可能会交错在一起。如ATM网络。
相关设备
中继器
通过对数据信号的重新发送或者转发,来扩大网络传输的距离
集线器
将多条以太网双绞线或光纤集合连接在同一段物理介质下
数据链路层
为管理多点访问信道,分为 LLC 和 MAC 两个子层。MAC 层提供尽力而为的服务;LLC 提供确认机制和流量控制,隐藏了不同 MAC 层的差异,为网络层提供统一的接口。
LLC 逻辑链路控制子层
组帧
将比特流分成离散的帧,方法有
- 字符计数法:在帧头表示整个帧的字符个数。若计数出错,错误扩散。
- 首尾字符定界法:局限于 8 位字符传送。
- 位填充首尾标记定界法:特殊位串标记。
- 物理层编码违例:仅适用于物理层编码有冗余的情况。
差错控制
-
情况:帧出错,帧丢失
-
特点:随机,连续突发
-
基本策略:纠错码,检错码
差错恢复 ARQ
- 无约束单工协议:发送方不停地发,接收方不停地收
- 单工停等协议:接收方每收到一个帧,给发送方一个响应
- 有噪声信道的单工协议:若信息帧损坏或丢失,则重传
- 滑动窗口协议:为提高信道利用率,给信息帧编号,进行连续地发送
- 一比特滑动窗口协议:发送接收窗口大小均为 1
- 回退N滑动窗口协议:接收窗口为 1,从出错帧起丢弃之后的帧
- 选择重传滑动窗口协议:只重传出错帧
相关协议
HDLC 是使用最广泛的数据链路层协议
此外还有 SDLC、ADCCP、LAP 等等
MAC 介质访问控制子层
介质共享的主要方式分两种:
动态访问控制
- 随机访问
- ALOHA:直接发送,若冲突则等待随机时间重发
- slotted ALOHA:信道时间分成离散的时间槽
- CSMA:载波监听多路访问协议,发送前监听信道有无载波
- 1 坚持:信道空闲则一定发送,信道忙则持续监听信道,产生冲突则等待随机时间
- 非坚持:信道空闲则一定发送,信道忙则等待随机时间,产生冲突则等待随机时间
- p 坚持:信道空闲以概率p发送,信道忙则监听信道,产生冲突则等待随机时间
- CSMA-CD:带冲突检测的载波监听多路访问协议,检测到冲突则立即终止发送并发出瞬间干扰信号。发送时间>2倍最大滞后时间以保证检测正确性。
- 预约
- 无冲突协议
- 基本位图协议:竞争周期有 N 个时隙,发送者有帧发送则在对应时隙内发送比特 1,之后按序发送数据
- 二进制下数法:站地址用二进制位串表示,发送地址时做或操作,高位站优先发送
- 有限竞争协议:结合竞争方法和无冲突方法,如适应树搜索协议
- 轮询
细分为中心控制式(USB),中继式,环形等。802.4 协议为采用令牌总线技术的局域网,802.5 协议为采用令牌环技术的局域网
相关协议
IEEE 802.3:采用 1-坚持型 CSMA-CD 技术+二进制指数回退
相关设备
网桥
用于扩展局域网段和隔离冲突域
源地址学习,目标地址转发,未知地址洪泛
交换机
传输线路之间不再共享相同的介质和信道资源
网络层
间接连接的节点间数据传输
寻址
IP 地址采用两级地址结构:网络地址+主机地址
结构化地址有 ABC 三类。由于 IP 地址紧张,基于分类的 IP 地址空间过于浪费,故而采用无类别域间路由 CIDR:网络地址聚合,路由表压缩
路由
- 距离向量法:基于 Bellman-Ford 算法,如 RIP 协议,路由环路问题(水平分割,毒性反转,触发更新)
- 链路状态法:基于 Dijkstra 算法,如 OSPF 协议
- 路径向量法:边界网关协议 BGP
相关协议
- IP 协议:不解释
- ICMP:控制消息协议(封装在 IP 包里,如 ping、traceroute、tracert)
- ARP 地址解析协议(IP->MAC)
- RARP 反向地址解析协议(MAC->IP)
- BOOTP:使用 UDP,手工配置映射表
- DHCP:动态主机配置协议,每个 LAN 要有 DHCP 中继代理
- ATM 虚电路网络。优点:压缩中间节点维护状态信息规模,对服务质量提供支持
- IPV6:加速中转路由器处理,简化基本报头结构,取消检验和和分段重组,提供功能扩展,指针链式扩展报头
- MPLS 多协议标签交换
相关设备
路由器
传输层
多路复用与解复用:引入端口。如 HTTP 80 端口,FTP 21 端口。
提供端到端的通信并提供一定的服务质量
相关协议
TCP
由于两军问题的存在,建立连接采用三次握手、释放连接采用三次握手+定时器
TCP 不支持组播、广播
流量和拥塞控制:可变滑动窗口,按可变发送窗口 Awnd 和拥塞窗口 Cwnd 的较小值发送,Cwnd 加性增乘性减以实现公平和效率的平衡
- 慢启动:拥塞窗口初始值为连接允许的最大段长,得到确认则拥塞窗口加倍
- 拥塞避免:大于阈值则拥塞窗口线性增长,超时则阈值设置为拥塞窗口大小的一半,窗口重新设置为最大段长,执行慢启动
- 快速重传:区分轻微拥塞(连续相同 Ack)和严重拥塞(超时)。收到三个相同 Ack 则重传该分组而不等待超时计数器
- 快速恢复:快速重传后,不使用慢启动算法,拥塞窗口减半,门限设为拥塞窗口,使用拥塞避免算法
- Tahoe 协议采用了慢启动+拥塞避免,Reno 协议加入了快速重传+快速恢复
UDP
无连接,延迟小
可能丢失、乱序
常用于流媒体、RIP、DNS
应用层
提供面向终端用户的功能
DNS
电子邮件
- SMTP 简单邮件传输协议
- POP3 邮件取回本地
- IMAP 邮件保持在邮箱中
WWW
FTP
P2P
基于小世界模型、六度分离原理,进行去中心化的资源利用和自组织管理
- 第一代:中心化 P2P(Napster),纯粹 P2P(Gnutella 0.4,Freenet)
- 第二代:混合 P2P(Gnutella 0.6,JXTA),动态中心
- 第三代:结构化,基于DHT,无中心(Chord,CAN)