导图社区 计算机网络(谢希仁第七版)
本导图将计算机网络课程的核心内容整理,包括物理层、数据链路层、网络层、运输层等,方便回顾和复习计算机网络课程!
编辑于2022-04-08 10:13:41计算机网络
概述
物理层
数据链路层
网络层
运输层
应用层
网络安全
互联网上的音频/视频服务
无线网络和移动网络
概述
特点
电信网络、有线电视网络、计算机网络的融合
互联网和互连网的区别
连通性和共享
互联网概述
网络由若干结点node和链路link组成
结点:计算机、集线器、交换机、路由器等
网络把许多计算机连接在一起,互连网把许多网络通过路由器相连。与网络相连的称为主机
发展阶段
第一阶段,ARPANET为互联网雏形,1983年TCP/IP视为互联网的诞生时间
第二阶段,建成三级结构的互联网,主干网、地区网、校园网(企业网)
第三阶段,逐渐形成多层次ISP结构的互联网
标准化工作
IETF
IRTF
三个阶段
互联网草案
建议标准
互联网标准
互联网组成
边缘部分
所有主机,由用户直接使用,用来通信和资源共享
通信方式(主机进程间通信)
客户-服务器方式C/S
客户请求服务,服务器提供服务
对等连接方式P2P
核心部分
网络和路由器,为边缘部分提供服务(连通性和交换)
路由器(专用计算机):分组交换的关键构件,其任务是转发收到的分组,是网络核心部分最重要的功能
电路交换
报文交换
分组交换(存储转发)
将报文切割成等长数据段,加上带控制信息的首部构成分组,称为包
比较:1)电路交换:端对端通信质量因约定了通信资源获得可靠保障,对连续传送大量数据效率高。 但在传送计算机数据时,突发情况多,线路的传输效率往往很低。 2)报文交换,分组交换:都无须预约传输带宽,动态逐段利用传输带宽对突发式数据通信效率高,通信迅速但分组交换长度远小于整个报文,交换时延小,具有更高的灵活性,网络生存性能更好好。
网络类别
计网定义
主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用
分类
作用范围
WAN
MAN
LAN
PAN
使用者
公用网
专用网
接入网AN
用于将用户接入互联网
性能
性能指标
速率(比特率)
bit/s,以10^3为层次
带宽
频域中指信道能通过的信号频带范围Hz
时域中单位时间内某信道能通过的最高数据率bit/s
本质相同,带宽越框,传输越快
吞吐量
单位时间内通过某个网络的实际数据量
时延
高速网络链路仅提高发送速率
发送时延
主机或路由器发送数据帧所需时间
传播时延
电磁波在信道中传播一定距离所需时间
处理时延
处理分组花费的时间
排队时延
在路由器中排队
总时延=4者的和
时延带宽积
=传播时延*带宽
又称为以比特为单位的链路长度
往返时间RTT
利用率
信道利用率
D表示网络当前时延,D0表示空闲时延,U为利用率
网络利用率(全网的信道利用率的加权平均值)
利用率过高会产生非常大的时延
非性能指标
费用
质量
标准化
可靠性
可扩展性和可升级性
易于管理和维护
体系结构
1977年ISO提出的OSI/RM七层开放系统互连基本参考模型
法定标准
TCP/IP四层
事实标准
运输层最重要的协议是TCP和UDP协议,网络层最重要的是IP协议
网络协议及实体、服务
实体:表示任何可发送或接收信息的硬件或软件进程
网络协议:规定所交换的数据的格式以及有关的同步问题的规则、标准或约定 协议是控制两个对等实体进行通信的规则的集合
语法,数据与控制信息的结构或格式
语义,需要发出何种控制信息、完成何种动作以及作出何种响应
同步,事件实现顺序的详细说明
服务:在协议控制下,向上层提供服务和使用下层提供的服务
区别:协议可以向上层提供服务但对于上层实体是透明的,实体只能看见服务而不能看见协议,协议是“水平的”控制对等实体之间通信,服务是“垂直的”是下层向上层通过层间接口提供的,且能被上层实体“看见"
五层协议
应用层
任务:通过应用进程间的交互来完成特定网络应用
协议:定义应用进程间通信和交互的规则
域名系统DNS,万维网HTTP,电邮SMTP
数据单元为报文
运输层
任务:负责向两台主机中进程之间的通信提供通用的数据传输服务
复用:多个进程同时使用运输层服务 分用:运输层服务将信息分别交付进程
协议:传输控制协议TCP——提供面向连接,可靠的数据传输服务。单位:报文段 用户数据报协议UDP——提供无连接,尽最大努力的数据传输服务(不可靠)。单位:用户数据报
网络层(IP)
任务:负责为分组交换网上不同主机提供通信服务。为分组选择合适的路由。进行分组转发。
协议:网际协议IP及多种路由选择协议RIP,IGRP
数据链路层
将网络层给的IP数据报组装成帧,在相邻结点间的链路上传输帧。每一帧包括数据和必要的控制信息(同步、地址、差错控制等)
物理层
传输bit的物理媒体(1,0)
物理层
基本概念
物理层规程=物理层协议
主要任务(4个特性)
机械特性
指明借口所用接线器的形状尺寸、引脚数目和排列、固定和锁定装置等
电气特性
指明在接口电缆的各条线上出现的电压范围
功能特性
指明某条线上出现某一电平的电压的意义
过程特性
指明对于不同功能的各种可能事件的出现顺序
传输方式转换(在通信线路上的串行到计算机内部的并行)
数据通信的基础知识
数据通信系统模型
源系统
源点,产生要传输的数据
发送器(调制器),将数据编码后发送到传输系统
传输系统
目的系统
接收器(解调器),将传输线路的信号解调,还原成数字比特流
终点,接受比特流,输出信号
常用术语
通信目的是传输数据,数据包括话音、文字、图像、视频等。
数据是运送消息的实体,是使用特定方式表示的信息,通常为有意义的符号序列
信号则是数据的电气或电磁的表现
信号分为模拟信号(连续)和数字信号(离散)
信道相关概念
信道表示向某一个方向传送信息的媒体
三种方式
单向通信(单工通信)
只有一个方向的通信而没有反方向的交互,广播
双向交替通信(半双工)
一方发送另一方接收,但不能同时发送(接收)
双向同时通信(全双工)
双方可以同时发送和接收信息
基带信号(基本频带信号)
来自信源的信号,含较多低频或直流信号,许多信道不能直接传输
调制
基带调制(编码)
只改变基带信号的波形
常用编码方式
不归零制
正电平为1,负电平为0
归零制
正脉冲为1,负脉冲为0
没有自同步能力(不能从信号波形本身中提取信号时钟频率)
曼切斯特编码
位周期中心向上跳变为0,向下为1(也可以反过来定义)
信号频率高于不归零制
差分曼切斯特编码
中心始终跳变,位开始边界有跳变为1,没跳变为0
带通调制
利用载波将基带信号搬移到较高频道,成为带同信号
基本带通调制方式
调幅AM
载波的振幅随基带数字信号变化
调频FM
载波的频率随基带数字信号变化
调相PM
载波的初始相位随基带数字信号变化
为了达到更高的信息传输速率,使用多原子的振幅相位混合调制
正交振幅调制QAM
信道的极限容量
信道能通过的频率范围
超过速率上限导致码间串扰,接收后无法识别
信噪比,信号的平均功率S和噪声的平均功率N之比,=10*lg(S/N) (dB)分贝
香农公式:信道的极限信息传输速率C=W*log2(1+S/N) (bit/s),W为信号带宽
增加码元能携带的信息量
传输媒体
导引型
固体媒介
双绞线(几到十几公里)
STP屏蔽双绞线
UTP无屏蔽
同轴电缆
光缆
多模
单模
非导引型
自由空间
LF低频30-300kHz,波长1-10km MF中频0.3-3MHz,HF高频3-30MHz VF甚高频30-300MHz,UF特高频0.3-3GHz SF超高,EF极高。very,ultra,super,extremely
微波通信
地面微波接力通信
卫星通信
信道复用
FDM频分复用:同一时间占用不同带宽资源
TDM时分复用:在不同时间占用相同频带宽度
STDM统计(异步)时分复用
WDM波分复用:光的频分复用
CDM码分复用—CDMA码分多址,同样频带各用户使用特殊的不同码型,彼此不干扰
每个站拥有一个唯一的m bit码片序列用于替代1,反码替代0, 要求原数据率提升m倍,同时频带宽度提高m倍
数字传输系统
缺点:不同步,速率标准不统一
宽带接入技术
ADSL
HFC
FTTx
数据链路层
点对点信道
流程
A结点将网络层交下来的IP数据报添加首部和尾部封装成帧
A将封装好的帧发送给B结点的数据链路层
B收到无差错的帧则提取IP数据报交给上面的网络层,否则丢弃
三个基本问题
封装成帧
给数据(数据部分的长度上限是MTU最大传送单元)添加首部和尾部(帧定界SOH首部开始符01H,EOT传输结束符04H)
透明传输
透明:表示某一个实际存在的事物看起来却好像不存在一样 通过在特殊定义的字符前插入ESC转义字符1B,保证数据部分不会被误处理
差错检测
比特在传输中发生跳变,称为比特差错
BER误码率,一定时间内传输错误的比特占总数的比率,同信噪比负相关
CRC循环冗余校验码
在数据后增加冗余码即FCS帧检验序列
帧丢失、帧重复、帧失序
PPP点对点协议
需求1.简单,2.封装成帧,3.透明性,4.多种网络层协议,5.多种类型链路,6.差错检测,7.检测连接状态,8.最大传送单元,9.网络层地址协商,10.数据压缩协商
只支持全双工
组成
1.一个将IP数据包封装到串行链路的方法,支持异步链路(无奇偶检验的8bit数据)和面向比特的同步链路
2.一个用于建立、配置和测试数据链路连接的链路控制协议LCP
3.一套网络控制协议,用于支持不同的网络层协议
格式
工作状态
广播信道
局域网的数据链路层
优点
具有广播功能,从一个站点可以很方便访问全网,局域网上的主机可共享软硬件资源
便于系统的扩展和逐渐演变,各设备位置可灵活调整和改变
提高了系统的可靠性、可用性和生存性
网络拓扑类型
星形网
环形网
总线网
信道的随机接入
以太网标准
DIX Ethernet V2
IEEE 802.3
CSMA/CD载波监听多点接入/碰撞检测
多点接入意味是总线型网络
载波监听
检测信道是否空闲,不管在发送前和发送中,不停检测
碰撞检测
检测信道中是否发生传输冲突
半双工通信
电磁波在1KM电缆的传播时延约为5μs 单程端到端传播时延记为τ 往返传播时延为2τ,称为争用期(碰撞窗口)
重传机制:截断二进制指数退避算法
规定基本退避时间为争用期2τ,具体为51.2μs或者记为512bit
从离散的整数集合[0,1,…,(2^k-1)]最随机选取r,退避时间为r*512bit
k=Min[重传次数,10]
重传16次不成功,则丢弃,向高层报告
规定最小帧长64B,小于64B的帧都是由于冲突而异常中止的无效帧 帧间最小间隔9.6μs即96bit
流程
准备发送:适配器获得分组,封装成帧,放入缓存等待发送
检测信道:不停检测信道直到空闲,并在96bit内保持空闲,则发送帧
边发送边监听:发送成功下一个 发送失败执行指数退避算法,回到上一步
集线器
使用集线器的以太网逻辑上仍是总线网,使用CSMA/CD协议。工作在物理层,每个接口只负责转发bit
信道利用率
a表示争用期所占比例,要尽量减小
极限利用率
MAC地址
48位硬件地址,即适配器地址(标识符),固化在适配器ROM中
以太网扩展
物理层(线路上拓展)
好处范围变广
缺点碰撞域增大,吞吐量减小
交换机
多个接口与主机或交换机并行连接,采用全双工工作方式,多对主机可以同时通信,且独占传输媒体,彼此无碰撞
帧交换表(地址表)
自学习算法建立
STP生成树协议
不使用CSMA/CD协议
VLAN虚拟局域网
一种服务,可以将处于不同局域网的主机分到一个组里,广播时只在组里进行
可以避免广播风暴导致性能恶化
高速以太网
100BASE-T以太网,快速以太网
IEEE 802.3u,使用
链路与数据链路的区别
链路是相邻节点之间的物理线路(有线或无线),是路径的一部分
数据链路是物理线路+必要的控制数据传输的通信协议,及实现协议的硬件加软件加链路构成的
网络层
IP网际协议
构成与关系
ARP地址解析协议
ARP作用于数据链路层,目的是解析从IP地址中的MAC地址,在的ARPcache中动态更新(生存时间,动态更新)的IP->MAC的映射表找到,则写入MAC帧,没有则广播寻找并更新映射表
只用于解决同一个局域网上的主机或路由器的IP地址与硬件地址的映射问题
ICMP网际控制报文协议
IGMP网际组管理协议
中间设备
转发器:物理层使用
网桥,桥接器,交换机:数据链路层
只扩大了网络范围,仍是一个单独的网络
路由器:网络层
网关:网络层以上
将不同的网络互连
互联网是由多种异构网络互连组成
IP地址32位
分类IP地址
net-id+host-id
2级IP和划分子网,全0和全1地址不能使用
特点
IP地址为分层结构,好处是1.IP地址管理机构分配IP时只需分配net-id,方便IP地址的管理,2.路由器仅根据目的所连接的net-id来转发分组,使路由表项目数大幅度减少,减少了路由表所占存储空间及查找路由表的时间。
实际上IP地址标志着标志一台主机(路由器)和一条链路的接口,一个设备能有多个IP
相同net-id的主机集合起来为一个网络,用转发器和网桥连接的多个局域网也是。
互联网对各个IP平等对待
IP与MAC
MAC地址是物理层和数据链路层使用 IP地址是网络层及以上协议使用
IP层抽象的互联网只能看到IP数据包,在转发过程中源地址和目标地址不改变 路由器只根据目的站的IP地址网络号进行路由选择 在局域网的链路层上,只能看到MAC帧
IP数据报格式
总长度:首部+数据部分
标识:任意给定的,具有相同的数据报片组成原数据报
标志:最低位(More Fragment)MF=1表示后面还有分片,MF=0表示最后一个 中间位(Don`t Fragment)DF=0才允许分片
片偏移:13位,指明分片后,某片在原分组中的相对位置,以8个字节为单位
分组转发
路由表中信息:(目的网络地址,下一条地址)
在路由表中得到下一跳IP地址后,使用ARP转换成MAC地址
算法
1从数据报首部提取目的主机IP地址D,得出目的网络地址N
2若在当前路由所连网络中,直接交付,否则3
3若路由表中有目的地址D的特定主机路由,则转发给下一跳路由,否则4
4若路由表中有到达网络N的路由,则转发给下一跳,否则5
5若路由中有默认路由,则转发给默认路由,否则6
6报告转发分组出错
划分子网和构造超网
划分子网
2级IP->3级IP
IP地址空间利用率有时很低,且两级地址不够灵活
1增加IP地址利用率,2减小路由表体量,3使IP地址更加灵活
IP地址 ::={<网络号>,<子网号>,<地址号>}
子网掩码,不划分子网时使用默认子网掩码,是网络或一个子网的重要属性
划分子网增加了灵活性,却减少了能够连接到网络上的主机总数
划分子网的分组转发
找到IP地址D,进行掩码校验
查找特定地址1特定,2匹配网络,3默认,4失败
CIDR构造超网,无分类编制
IP地址 ::={<网络前缀>,<主机号>}
32位地址掩码,可采用斜线记法/网络前缀位数
路由聚合,将网络聚合,减小路由表冗余
地址聚合,相同前缀的IP地址聚合成的地址块
更加有效地分配IPv4的地址空间
分组转发时选择最长前缀匹配的路由
使用二叉线索查找路由表
左0右1
ICMP
装载在IP数据报中,允许主机或路由器报告差错情况和提供异常报告
常见报文种类
差错类型
终点不可达
超时
参数问题
改变路由(重定向)
询问类型
回送(Echo)请求或回答
时间戳(Timestamp)请求或回答
应用
分组网间探测PING
分组传输路径跟踪tracert
不可达时,返回ICMP时间超过差错报告报文
路由选择协议
概念
理想路由选择
分层路由选择
AS,自治系统,对其他AS表现为一个单一和一致的路由选择策略
AS中:内部网关协议IGP-域内路由选择
RIP
OSPF
AS间:外部网关协议EGP-域间路由选择
BGP
内部网关协议
RIP
分布式的基于距离向量的路由选择协议
只适用小型互联网
特点
1仅与相邻路由器交换信息
2交换全部信息即当前路由表
3按固定时间间隔交换
距离向量算法,找出每个目的网络的最短距离,16为不可达
报文格式
优缺点
好消息传播快,坏消息传播慢,实现简单,开销较小,但限制网络规模,更新收敛时间长,不适用于较大规模网络
OSPF开放最短路径优先
采用分布式的链路状态协议
使用洪泛法向所有路由器发送信息
发送的信息是本路由器相邻的所有路由器的链路状态
链路变化才洪泛法告知
最终建立其链路状态数据库,本质是全网的拓扑结构图
优点
收敛快
使用IP数据报发送OSPF分组
外部网关协议
BGP
寻求比较好的路由,采用路径向量路由选择协议
路由器的构成
IPv6
128位,冒号十六进制记法
允许零压缩
过渡策略
双协议栈
隧道技术
IP多播
一对多通信,只能作用目的地址,不能用于源地址
IGMP网际组管理协议
主机是否参加多播组
多播路由选择协议
虚拟专用网VPN和网络地址转换NAT
VPN
加密传输的数据
NAT
利用端口号区分内部主机
MPLS多协议标记交换
网络层向上只提供简单灵活的、无连接的努力交付的数据报服务,不提供服务质量的承诺
运输层
协议概述
向应用层提供通信服务,属于面向通信部分的最高层,用户功能的最底层。只存在主机的协议栈中
真正进行通信的实体是在主机中的进程,是这台主机中的一个进程和另一台主机中的一个进程在交换数据,所谓端到端通信,即应用进程之间的通信
区别:网络层为主机间提供逻辑通信,运输层为应用进程间提供端到端的逻辑通信
功能
差错检测
协议的分用,复用,运输层与IP层之间
复用:发送方不同的应用进程可以使用同一个运输层协议传送数据
分用:接收方的运输层在剥去报文的首部后能够将数据正确的交付目的应用进程
本质:协议对进程是一对多
协议
面向连接的TCP
全双工可靠信道
无连接的UDP
不可靠
协议端口号:在协议栈层间的抽象的协议端口是软件端口、是应用层的各种协议进程与运输实体进行层间交互的一种地址,用来找到对应的进程 区分:路由器或交换机上的是硬件端口(不同硬件设备进行交互的接口)
端口分类
服务器端
熟知端口0-1023
登记端口号1024-49151
客户端
短暂端口号49152-65535
UDP用户数据报协议
数据单位:UDP用户数据报
特点:1无连接的,不建立连接; 2尽最大努力交付,即不可靠交付; 3面向报文,整段交付IP层,不进行合并或拆分; 4没有拥塞控制,不会因为网络拥塞降低发送速率; 5支持1-1,1-多,多-1,多-多的交互通信; 6首部开销小仅8B,小于TCP20B
首部格式:4个字段,各2B。包括源端口,目的端口,长度,检验和
计算检验和时,增加12B伪首部,检验时不同与IP数据报只检验首部,而是将首部同数据部分一同检验。
将IP层上交的UDP数据报经过UDP分用后,按端口上交给对应进程
TCP传输控制协议
数据单位:TCP报文段
特点:1面向连接(虚链接,即逻辑连接); 2端到端,点到点; 3可靠交付,无差错、 不丢失、不重复、按序到达; 4全双工通信,两端都有发送和接受缓存; 5面向字节流,进程与TCP交互按块进行,但TCP视为一连串无结构的字节流,且只保证接收方与发送方的字节流完全一样,中间过程不保证。
TCP的连接
套接字:TCP连接的端点:将端口号拼接到IP地址即构成了套接字
停止等待协议
ARQ自动重传请求
设定A为发送方,B为接收方。“停止等待”即没发送完一个分组就停止发送,等待对方的确认,在收到确认后再发送下一个分组。
应用于网络初期通信链路不可靠时
状态
无差错情况
子主题
出现差错,超时重传
每发送一个分组设置一个超时计时器,超期未收到确认则认定丢失,重传分组
分组发送后暂时保留副本 分组同确认分组有编号 重传时间设置大于RTT
确认丢失和确认迟到
重复收到分组则丢弃,并向A发送确认
信道率用率 极低
TD是发送分组需要的时间 =分组长度/数据率
TA是发送确认分组的时间
连续ARQ协议
利用流水线作业,将发送窗口内的数据连续发送,而不需要等待对方确认
接收方采用累计确认,每次返回已经按序到达的最后一个分组
发送方每收到一个确认,发送窗口前移对应个分组的位置
优点:容易实现,即使确认丢失也不必重传 缺点:不能反映出所有已正确接收的分组信息
TCP的首部格式
注意
确认号N,是期望收到对方下一个报文段的第一个数据字节的序号。代表到N-1的数据都已收到
同步SYN=1,ACK=0时,为请求建立连接。SYN=1,ACK=1则为同意建立连接。 SYN=1意味则为连接请求或连接接受报文。
终止FIN=1时,为要求释放运输连接
窗口 0-2^16-1 ,窗口指出现在允许对方发送的数据量
可靠传输实现
以字节为单位的滑动窗口
由B发送的确认报文段中的确认号,和窗口来构造发送窗口
描述发送窗口状态的3个指针
进程到网络之间数据交换通过发送/接收缓存
发送缓存
发送进程传送给发送方TCP准备发送的数据
TCP已发送但未收到确认的数据
接收缓存
按序到达的、但未被应用程序读取的数据
未按序到达的数据
概要
发送窗口是根据接收窗口来设置的,但由于网络延迟,并不能完全同步
非按序到达的数据临时存储,补全后交付应用层
累计确认,但推迟确认不超过0.5s
本质上也是超时重传
自适应算法计算超时时间
加权平均往返时间RTTs(平滑的往返时间)α为关系系数,取(0,1)
偏差的加权平均值RTTd,β小于1的系数,推荐值0.25
超时重传时间RTO(无超时重传时)
超时重传时RTO=2*旧RTO
选择确认SACK
用于描述重传部分缺失的数据边界,部分确认,减少重传数据块总量
较少使用
TCP流量控制
滑动窗口的流量控制
ACK=1,ack确认号,rwnd窗口值,控制发送数据量
每个TCP连接持续计时器,发送零窗口探测报文,避免因数据丢失导致的死锁
TCP传输效率
Nagle算法
若发送进程逐个字节送至发送缓存,则发送方先发送第一个数据字节,等收到确认后,再将缓存的所有数据组成一个报文段发送;收到前一段的确认后才发送下一段 当数据达到发送窗口大小的一般或最大报文段长度MSS是,立即发送。
糊涂窗口综合征
接收缓存已满,且接收进程读取缓慢时
接收方等待至足够容纳一个MSS或接收缓存一半空闲时回复确认报文; 此时发送方也应累积成较大报文段或接收缓存的一半在发送数据。
拥塞控制
一般原理
拥塞,网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能变坏
拥塞控制:防止过多的数据注入网络中,导致路由器或链路过载
拥塞控制是全局性的,流量控制则是端到端的问题
动态的,分为开环和闭环控制,开环在设计时,闭环在运行中(基于反馈环路)
TCP的拥塞控制方法 假定:单方向传输;接收缓存总是足够, 发送窗口取决网络拥塞情况
慢开始(即由小到大增加cwnd)
csnd拥塞窗口,发送方令swnd=csnd
初始cwnd为不超过2-4个SMSS(send MSS)
每收到一个新报文段的确认,cwnd增加最多1个SMSS
每经过一个传输轮次,cwnd加倍 1轮,发送n个报文段,接受n个确认,下一轮就是2n了
慢开始门限ssthresh
ssthresh=超时时cwnd/2
拥塞避免(让cwnd缓慢增长)
每经过1个RTT,cwnd+1,线性缓慢增长(加法增大AI)
这里单位采用报文段
快重传(让发送方早收到个别报文段丢失)
接收方不等待自己发送数据时才捎带确认,而是立即发送确认;当发送方连续收到3次重复确认,则知道下一个报文段接收方未收到,立即进行重传
快恢复(当发送方知道丢失了个别报文段)
将ssthresh=cwnd/2;再将cwnd=ssthresh,并执行拥塞避免算法(乘法减小MD)
最终swnd=Min[rwnd,cwnd]
AQM主动队列管理
TCP与网络层交互策略
网络层的路由器分组丢弃策略
路由器队列按照FIFO规则,队列满,后续分组丢弃(尾部丢弃策略)
为避免全局同步(许多TCP连接同时进入慢开始,导致通信量突降又突增),采用AQM,主要方法是随机早期检测(RED)
TCP的运输连接管理(C-S模式)
确保运输连接的建立和释放都能正常进行
要使得每一方确知对方的存在
协商协议参数
对运输实体资源的分配
连接建立
三报文握手
三报文防止已失效的连接请求导致的错误
过程
Client向Server发送连接请求报文段,SYN=1,seq=x,x为客户端选择的传送数据第一个字节序号,TCP客户进程进入SYN-SENT(同步已发送)状态
Server收到后若同意请求则发送确认,SYN=1,ACK=1,ack=x+1,seq=y,y为服务器选择的数据首字节号,TCP服务器进程进入SYN-RCVD(同步收到)状态
Client收到确认后,回复确认,ACK=1,seq=x+1,ack=y+1,发送后A进入ESTABLISHED(已建立连接)状态,Server收到确认后也进去ESTABLISHED
数据传输
连接释放
四报文握手
Client主动关闭,发送连接释放报文段,FIN=1,seq=u(u已传输数据最后1个字节序号+1),进入FIN-WAIT-1(终止等待1)
Server收到返回确认ACK=1,seq=u,Server进入CLOSE-WAIT(关闭等待),C->S方向连接已释放,TCP连接半关闭
Client收到确认进入FIN-WAIT-2,等待Server的间接释放请求,Server在传完数据后,发送FIN=1,ACK=1,seq=w,ack=u+1,Server进入LAST-ACK状态
Client收到Server的请求释放后,回复确认ACK=1,seq=u+1,ack=w+1,进入TIME-WAIT状态,等待2MSL后,TCP连接关闭
MSL为最长报文段寿命,RFC793建议为2分钟
等待2个MSL时间
1.确保最后一个ACK到达 2.使过去这个连接中的所有报文消失,避免影响下次连接
TCP保活计时器,通常为2h
当Client故障,服务器长时间未收到数据,则发送每隔75s发送探测报文段,一连10次无响应,则关闭连接
粗实线是CLIENT,粗虚线是SERVER
应用层
DNS域名系统
分布式域名系统,名字到IP解析(大部分在本地完成)是由若干个域名服务器程序完成的,需要时发送DNS请求报文(UDP)
层次树状结构命名 三级.二级.顶级域名 wit.edu.cn
顶级域名3类
national Top Level Domain
Generic top-level domain
.arpa反向域名解析
域名服务器,保存一个区内所有主机域名到IP的映射(区<=域)
四个级别
根域名服务器root name server
TLD服务器
权限服务器(区)
本地(默认)域名服务器
解析过程
主机向本地服务器查询时,采用递归查询
本地服务器向根服务器查询采用迭代查询
FTP文件传送协议
概述
基于TCP的FTP,基于UDP的TFTP
属于文件共享协议的一类:存取是复制整个文件获取副本,修改是修改复制到本地的副本,再存回原结点。
另一类是联机访问,允许多程序对一个文件进行存取。如NFS网络文件系统
NFS允许应用进程打开一个远地文件,并在该文件上某一个特定位置读写数据,只需要复制某一个片段即可,在网络上传输的只是少量修改数据
主要功能:减少或消除在不同操作系统下处理文件的不兼容性
基本工作原理
采用C-S方式,一个FTP服务器进程可同时为多个客户进程提供服务
服务进程分为,1个主进程,负责接受新请求;若干从属进程,负责处理单个请求
工作步骤
打开熟知端口 21 ,使客户进程能够连接
等待客户进程发起请求
启动从属进程处理客户进程发来的请求,处理完毕后即终止,期间根据需要可能创建一些子进程
主进程持续等待,接受其他客户进程的请求。主、从进程是并发进行的。
控制进程和数据传输分开,采用不同的端口号 控制进程可以在传输的同时发送控制信号
TFTP
连接的熟知端口号69,由TFTP服务器进程选择一个新的端口和客户进程通信
主要特点
(1)每次传送的数据报文中有512字节的数据 ,不足时则为结束标志(刚好整数倍则发送一个只有首部而无数据的报文作为结束)
(2)数据报文按序编号, 从1开始 。
(3)支持ASCII码或二进制传送 。
(4)可对文件进行读或写。
(5)使用很简单的首部。
TELNET远程终端协议
C-S方式,进程情况类同FTP
又称终端仿真协议,本地连接远地主机,将击键传到远地主机,将远地主机输出传回本地。
NVT网络虚拟终端:处理不同操作系统间按键和命令格式的差异
将客户端发送的击键和命令转换为NVT格式,送至服务器,服务器将NVT格式转换成远地系统所需格式。反向亦然。
WWW万维网
概述
万维网是一个大规模的、联机式的信息储藏所
是一个分布式的超媒体系统,是超文本系统的扩充
以C-S方式运转,客户程序向服务器程序发出请求,服务器程序向客户程序送回所请求的万维网文档(Page 页面)
URL统一资源定位符
URL是资源在互联网上的地址,唯一确定
一般形式:协议如http,ftp;主机即域名
HTTP协议熟知端口80,HTTPS443;不指定路径是访问主页
HTTP超文本传输协议
面向事务的应用层协议 C-S方式,建立使用TCP连接,但HTTP本身无连接
HTTP/1.0,三报文握手获取请求文档,时间开销为2*RTT+文档传输时间
HTTP/1.1采用持续连接,两种方式
非流水线方式,每次节省一个RTT,但TCP空闲,浪费资源
流水线方式,客户可以持续发送请求,访问只需一个RTT,并减少资源浪费
代理服务器(万维网高速缓存)
将最近的请求和响应保存在代理服务器中,若客服端请求已存,则返回对应响应。减少对主干链路的访问,避免通信量过大引起时延过大。 当代理服务器中无时,则代表客户端向远地服务器建立TCP连接,获取响应报文,存在本地,并发送给请求的客户端。
HTTP报文格式
请求报文
请求行:方法(GET,HEAD,POST等),URL,HTTP版本
响应报文
状态行:HTTP版本,状态码,解释状态码的短语
5类状态码
cookie,表示在HTTP服务器和客户之间传递的状态信息,用于保存用于信息和识别用户身份
万维网的文档
HTML超文本标记语言
XML可扩展标记语言
XHTML可扩展的超文本标记语言
CSS层叠样式表
动态万维网文档
区别在于服务器一段,文档内容的生成方式不同。 通过CGI(通用网关接口)程序创建动态文档,再响应
CGI脚本语言,Perl,JS
活动万维网文档
服务器推送
活动文档
常见
万维网的信息检索系统
全文检索搜索
Google,百度
分类目录搜索
Yahoo,新浪,搜狐
博客微博
社交网站
电子邮件
概述
SMTP简单邮件传输协议,互联网文本报文格式,MIME通用互联网邮件扩充
电子邮件系统的构成
UA用户代理
4个功能,撰写、显示、处理、通信
邮件服务器
邮件发送协议(SMTP)和邮件读取协议(POP3)
格式:用户名@邮件服务器的域名
STMP
特点
SMTP 规定两个相互通信的 SMTP 进程之间如何交换信息。
使用客户–服务器方式,负责发送邮件的 SMTP 进程就是 SMTP 客户,负责接收邮件的 SMTP 进程就是 SMTP 服务器。
规定了 14 条命令和 21 种应答信息
通信的三个阶段
1. 连接建立:连接是在发送主机的 SMTP 客户和接收主机的 SMTP 服务器之间建立的。SMTP不使用中间的邮件服务器。
2. 邮件传送
3. 连接释放:邮件发送完毕后,SMTP 应释放 TCP 连接。
信息格式
首部
To:邮件地址 Subject:主体 Cc:抄送 From,Date:发件人的地址和日期
主体:信件内容,自己写
邮件读取协议
POP3邮局协议第3个版本
从服务器取走邮件
IMAP网际报文存取协议
IMAP是联机协议,从服务器查看邮件
MIME通用互联网邮件扩充
MIME扩充允许传输任意数据类型
DHCP动态主机配置协议
提供即插即用联网,使新加入的主机不需要手动配置IP
C-S方式,主机广播发现(DHCPDISCOVER)报文,DHCP服务器以单播形式回答提供报文,每个网络至少一个DHCP中继代理
租用期:DHCP分配的IP的使用期限
DHCP服务器监听端口67,DHCP客户从端口68接受
1.DHCP服务器被动打开UDP端口67,等待报文 2.DHCP客户从UDP端口68发送DHCP发现报文 3.收到发现报文的服务器发出DHCP提供报文 4.客户选择一个,并向其发送DHCP请求报文 5.被选中的服务器发送确认报文DHCPACK,客户即可使用该IP。客户根据租用期T设置T1=0.5T和T2=0.875T计时器 6.到达T1后,发送请求报文DHCPREQUEST更新租用期 7.服务器若同意,则发回确认报文DHCPACK。客户重新计时 8.服务器不同意,发回否认报文DHCPNACK,则客户立即停止使用原IP,重新申请IP;若为响应,则等到T2后再请求更新。 9.DHCP客户随时可以通过向服务器发送释放报文DHCPRELEASE终止租用期
SNMP简单网络管理协议
网络管理包括对硬件、软件和人力的使用、综合与协调,以便对网络资源进行监视、测试、配置、分析、评价和控制,这样就能以合理的价格满足网络的一些需求,如实时运行性能,服务质量等。(网管)
应用进程跨越网络的通信
系统调用和应用编程接口
系统调用,在应用程序和操作系统之间传递控制权; 应用编程接口API:应用进程的控制权和操作系统的控制权进行转换的一个接口
常见的系统调用
P2P应用
指具有P2P体系结构的网络应用(绝大多数采用对等方式交互)
每个应用层协议是为了解决某一类具体的应用问题,即规定如何通过不同主机的多个进程之间通信和协同工作解决问题时应遵循的规则。 基于C-S方式
无线网络和移动网络
WLAN无线局域网
分类
有固定基础设施
IEEE 802.11
接入点AP,基本服务集BSS的基站,在MAC层使用CSMA/CA协议;每个AP在安装时分配一个SSID(服务集标识符(WIFI的名字))和一个通信信道。 一个服务集BSS覆盖的地理范围叫做基本服务区BSA。
BSS可以是孤立的;或者是通过AP接入分配系统DS,连接到另一个BSS,形成扩展的服务集ESS
无固定基础设施
移动自组网络
一些处于平等状态的移动站相互通信组成的临时网络
子集:WSN无线传感器网络,应用于物联网IoT
CSMA/CA碰撞避免协议
不使用CD(碰撞检测)的原因
1.实现困难,硬件成本高 2.隐蔽站,暴露站问题
隐蔽站
暴露站
MAC层
DCF分步协调功能:必有
PCF点协调功能:选有
链路层确认,使用停止等待协议(可靠协议)
发送下一帧前需要等待IFS帧间间隔
IFS分类
SIFS短帧间间隔,28μs,用于ACK,CTS,过长的MAC分片,回答AP探询
DIFS分布协调功能帧间间隔,128μs,用于发送数据帧和管理帧
虚拟载波监听,将要占用信道的时间及时通知所有其他站;站检测到后跳帧NAV网络分配向量。
检测到信道由忙态转为空闲时,等待1个DIFS进入争用窗口,计算随机退避时间。
退避算法,在2^(2+i)个时隙里随机选择,6次以后不再增加
隔断检测信道状态,忙则冻结退避计时器,等到空闲且经过DIFS后继续倒计时。
必须使用时机
在发送第一个帧之前检测到信道处于忙态。
在每一次的重传后。
在每一次的成功发送后。
信道预约
发送RTS请求发送帧,条件可以则过SIFS发回CTS允许发送帧