计算机网络 | Computer Network 是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。

它的功能包括:数据通信、资源共享、分布式处理、信息综合处理、负载均衡、提高可靠性等。其中,最基本的功能是数据通信功能。

ARPAnet最早的计算机网络,它是因特网 | Internet前身

计网的层次结构

分类

‎计算机网络的分类‎按 分布范围 分类‎广域网(WAN)‎交换技术‎1. 高速链路‎2. 大通信容量‎3. 几十千米到几千千米‎局域网(LAN)‎广播技术‎几十米到几千米‎个人区域网(PAN)‎无线技术‎10m‎注:若 中央处理器距离非常近,如仅 1m 甚至更‎小,则称为多处理器系统,而非计算机网络。‎按 传输技术 分类‎广播式网络‎局域网都基本属于广播式‎点对点网络‎广域网都基本属于点对点‎按 使用者 分类‎公用网(Public Network)‎专用网(Private Network)‎按 传输介质 分类‎有线‎双绞线、同轴电缆 等‎无线‎蓝牙、微波、无线电 等‎按 交换技术 分类‎电路交换‎报文交换‎分组交换‎主流网络多使用分组交换‎按 拓扑结构 分类‎总线形‎优点:建网容易、增减方便、节省线路‎缺点:重负载时通信效率低、任意处对故障敏感‎星形‎优点:便于集中控制和管理‎缺点:成本高、中央设备对故障敏感‎环形‎单向传输‎典型例子:令牌环局域网‎网状‎每个结点至少有两条路径与其他结点相连‎优点:可靠性高‎缺点:控制复杂、线路成本高‎城域网(MAN)‎以太技术‎5 ~ 50 km‎按 逻辑功能 分类‎资源子网‎通信子网‎组成:计算机系统、终端、联网外部设备、各种‎软件资源和信息资源‎负责全网的数据处理服务,负责向网络用户提供‎各种网络资源与网络服务。‎组成:通信控制处理机、通信线路和其他通信设‎备‎负责完成网络数据传输、转发等服务。‎通过 路由器 接入

🦄一些注意事项.

  1. 网络资源包括硬件资源、软件资源和数据资源。
  2. 区别局域网与广域网的关键在于所采用的协议,而非覆盖范围。
  3. 协议 由 语法、语义、时序(又称同步)三部分组成。
  4. 局域网通过路由器接入广域网。区别于路由器,中继器和桥接器通常是指局域网物理层和数据链路层的联网设备。

性能指标

  1. 带宽|Bandwidth:即 最高数据传输速率 。单位b/sb/s
  2. 时延|Delay:总时延=发送时延+传播时延+处理时延+排队时延
    • 发送时延=分组长度/信道宽度
    • 传播时延=信道长度/电磁波在信道上的传播速率
    • 处理时延和排队时延顾名思义,一般在做题时无特殊指明则忽略不计
  3. 时延带宽积:以比特为单位的链路长度
    • 时延带宽积=传播时延*信道带宽
  4. 往返时延|Round-Trip Time,RTT
    • 发送端发出一个短分组到收到接收端的确认共经历的时间
  5. 吞吐量|Throughput:单位时间内通过某网络的数据量
  6. 信道利用率:有效数据通过时间/(有+无)效数据通过时间

高速链路中提高的是数据发送速率,从而减少数据的发送时延,并非提高比特在链路上的传播速率。

分层原则

计算机网络的体系结构以分层形式建模。分层方式应满足一定的基本原则,特别是“保持下层对上层的独立性,上层单向使用下层提供的服务”。

为此,在单个主机内部的每一层之间的通信规则、主机与主机之间的通信规则上,我们需要指出一个统一的规定,以使得计算机能够按照这个规则有序运作。

  1. 协议|Protocol 是控制多个主机之间的通信规则的集合。它是水平概念上的,即主机AA 上第nn 层和主机BB 上的第nn 层的之间才存在协议。
    • 一个完整的协议应具有:线路管理(建立、释放链接)、差错控制、数据转换等功能
  2. 接口|Interface 是同一个主机/结点 内相邻两层之间交换信息的连接。相邻两层之间的实体通过服务访问点|Service Access Point,SAP 进行交互。
  3. 服务|Service 是指下一层对上一层提供的功能调用。它是垂直概念上的。

每一层都有自己传送的数据单位,其名称、大小、含义也各不相同。每层的协议数据单元 SDU 都分为两个部分:服务数据单元 SDU、协议控制信息 PCI。

在层间传输数据时,有:

n-SDU+n-PCI=n-PDU=(n1)-SDUn\text{-}SDU+n\text{-}PCI=n\text{-}PDU=(n-1)\text{-}SDU

这表示 第nn 层把收到的来自上一层(n+1n+1 层)的数据单元作为本层的SDU,并为其加上对应的协议控制信息 PCI 之后,形成本层完整的PDU,然后再将它交给下一层(n1n-1 层),并作为下一层的服务数据单元。

注意这里PDUPDU 是针对 协议 的,它是不同结点之间对等层之间传输的数据。然而对等层之间数据的传输需要依靠同一个结点相邻层的层层传递直到最底层,在最底层完成与另一个结点的传递之后才能层层往上直到对应层得到数据。
因此,从n-PDUn\text{-}PDU 需要传到下一层,并被下一层加上协议控制信息之后继续传到下一层。
这可以很形象地类比于一个快递被层层包裹,最后再层层拆开。

以上过程,我们称之为:通信协议栈的通信过程

分层模型

国际标准化组织(ISO)提出的网络体系结构模型称为 开发系统互连参考模型|OSI/RM ,通常简称为 OSI模型

ARPA 在研究 ARPAnet 提出了 TCP/IP模型。而这一模型得到了广泛应用,是实际上的国际标准

在计算机网络学习中,往往采取折中的方法,结合以上两个模型的优点建立了一种常用于研究的 5层协议体系结构模型

下面给出以上三种模型的分层细则:

‎分层模型‎5层协议模型‎应用层‎传输层‎网络层‎数据链路层‎物理层‎OSI参考模型‎应用层‎表示层‎会话层‎传输层‎仅支持面向连接的通信‎网络层‎支持无连接和面向连接两种模式‎数据链路层‎物理层‎ 贡献:精确定义了 服务、协议、接口 的概念‎TCP/IP模型‎应用层‎传输层‎支持无连接和面向连接两种模式‎网际层‎只有无连接的通信模式‎网络接口层

特别注意的是OSI模型和TCP/IP模型之间,在网络层和传输层之间的不同。
OSI参考模型的网络层支持无连接和面向连接,但TCP/IP模型的网络层只支持无连接,因为它认为可靠性应该是端对端的问题,无需在网络层考虑。


下面以表格的形式给出 OSI 参考模型各层的功能,从上往下对应低层级到高层级。

名称英文传输形式(单位)功能通信类型服务访问点
物理层Physical Layer比特流(bit)为数据端透明地传输原始比特流-网卡接口
数据链路层Data Link Layer数据帧(帧)成帧、差错控制、流量控制、传输管理点到点通信MAC地址(网卡地址)
网络层Network Layer数据报路由选择拥塞控制网际互联、流量控制、差错控制-IP地址(网络地址)
传输层Transport Layer报文段TCP/UDP差错控制、流量控制、拥塞控制、应答和分组排序端到端通信端口号(Port)
会话层Session Layer-建立同步(SYN)、管理和终止进程会话--
表示层Presentation Layer-数据压缩、加密、解密等数据转换--
应用层Application Layer-为特定类型的网络应用提供访问环境的手段-用户界面

一些应该注意的点,在此加以赘述:

  1. 只有 网络层和传输层具有 拥塞控制 功能
  2. 主要有 数据链路层、网络层、传输层提供流量控制功能
  3. 只有 传输层及以上各层的通信才能称为 端到端
  4. 数据链路层提供的是点到点通信,可以理解为是主机到主机之间的通信;传输层提供的是端到端通信,是指运行在两个不同主机内两个进程之间的通信

物理层

通信基础

码元 是指用一个固定时常的信号波形(数字脉冲)表示一个kk 进制数字,代表不同离散数值的基本波形,是数字通信中数字信号的计量单位。该固定时长称为码元宽度TT,时长内的信号称为kk 进制码元。

信道上传输的信号分为 基带信号宽带信号。基带信号对数字信号1和0直接用不同电压表示,然后送到数字信道上传输(称为基带传输);宽带信号将基带信号进行调制后形成频分复用的模拟信号,然后送到模拟信道上传输(称为宽带传输)。

计算机内部(距离短)传输应选择并行传输

TIPS:同步、异步传输是通信方式而不是传输方式(并行、串行)

波特率|Baud Rate

波特率也称码元传输速率、符号速率、传码率、波形速率、调制速率 等。
表示单位时间内传输的码元的数目,也可以称为 脉冲数目、信号变化次数。有:

B=1T(Baud)B=\frac 1 T\quad(Baud)

式中,BB 为波特率,TT 为码元宽度。单位:波特 (Baud)

信息传输率|Bit Rate

信息传输速率也称比特率、信息速率等。
表示单位时间内数字通信系统传输的二进制码元个数,即比特数,单位:b/sb/s
在数值上,比特率和波特率有:

C=n×BC=n\times B

式中,nn 为一个码元所携带的比特数,有n=log2Vn=\log_2VVV 为每个码元的离散电平数目.

奈氏准则

奈奎斯特(Nyquist)推导出在理想低通信道(无噪声,带宽有限)情况下的最高数据传输速率CC 的公式:

C=2Wlog2V(b/s)C=2W\log_2V\quad(b/s)

式中,WW 为理想低通信道的带宽VV 为每个码元的离散电平数目.

注1:此处列出的仅是理想带宽为WW 的情况,根据奈氏准则有此时的极限波特率为2W2W.
如果已知采样频率,则采样频率就可作为波特率代入计算,所以此时C=Blog2VC=B\log_2V .

注2:由于波特率受奈氏准则约束,因此提高数据传输速率的方法只能是在有限个码元内携带更多的比特信息。此时就需要利用多元制的调制方法

香农定理

香农(Shannon)定理给出了 带宽有限且有高斯白噪声干扰的信道的最高数据传输速率CC 的公式:

C=Wlog2(1+SN)C=W\log_2(1+\frac S N)

式中,WW 为信道带宽SS 为信道所传输信号的平均功率NN 为信道内部的高斯噪声功率S/NS/N 为信噪比,在以分贝dBdB 为单位时,有S/N(dB)=10log10(S/N)S/N(dB)=10\log_{10}(S/N).

做题时,如果给出信噪比为 30dB ,则一般取log2(1+S/N)=10\log_2(1+S/N)=10

💦 在做题时需要特别注意上限
当用 Shannon 定理计算得到一个最高速率C1C_1 时,还需同时利用 Nyquist 定理 计算理论最大速率C2C_2. 因此,最终有:

Cmax=min{2Wlog2V,    Wlog2(1+SN)}C_{\max}=\min\left\{2W\log_2V,\;\;W\log_2(1+\frac S N)\right\}

数据编码|数据变换为数字信号

编码方式英文/缩写特征备注
归零编码RZ高电平:1;低电平:0;时钟周期中间跳变归零接收方可根据跳变调整本方时钟基准以实现同步
非归零编码NRZ高电平:1;低电平:0;不跳变难以同步,因此想高速传输同步数据只能接时钟线
反向非归零编码MRZI翻转:0;保持:1.既能传输时钟信号又不损失带宽,USB2.0就用RNZI
曼彻斯特编码Manchester Encoding码元一分为二,前高后低代表1占用带宽是原始基带宽度的 2 倍,以太网使用
差分曼彻斯特编码-码元一分为二,前半部分保持"上一个码元"的后半部分时代表1可实现自同步,抗干扰性好,局域网传输常用
4B/5B-数据流每4位一组,转为对应5位码32种组合,16种代表数据,16种作为控制码

下给出示例以加深理解。
三种常用数字数据编码方式

数据调制|数据变换为模拟信号

  • 正交振幅调制|AQM

频率相同的条件下,将 ASK(幅移键控:只改变载波信号振幅实现01信号表示) 和 PSK(相移键控:只改变载波信号相位实现01信号表示) 结合以形成叠加信号

在该技术下的数据传输速率CC 为:

C=Blog2(mn)C=B\log_2(mn)

式中,BB波特率大小;m,nm,n 分别是相位个数每个相位的振幅种数

  • 频分复用技术|FDM

充分利用了带宽资源,实现传输的有效性,提供较高频率的一种调制技术。

采样与编码

为了将模拟信号进行数字化表示,一般需要经过3个步骤:采样、量化、编码

其中,采样频率受到 采样定理 的影响,即要求f2fmaxf_{\text 采}\geq 2f_{\max}. 否则采用后将无法完整地保留原始模拟信号的信息。

  • 脉冲编码调制|PCM
    音频信号 进行编码常常采用 PCM。

数据报和虚电路

数据报服务虚电路服务
建立连接不需要必须有
目的地址每个分组都有完整的目的地址仅在建立阶段,之后使用虚电路号
路由选择每个分组独立进行选择和转发属于同一虚电路的分组按同一路由转发
分组顺序不保证有序到达保证有序到达
可靠性可靠性由用户主机保证可靠性由网络保证
对网络故障的适应性故障点分组丢失,其他分组改变路径可正常传输所有经过故障结点的虚电路不可正常工作
差错处理和流量控制用户主机进行流量控制,不保证数据报可靠性可由分组交换网负责,也可由用户主机负责

注:虚电路不只是临时性的。
虚电路的服务包括永久性虚电路 PVC 和 交换型虚电路 SVC。前者提前定义,后者在会话结束后取消链接。

传输介质

传输介质可分为 导向传输介质非导向传输介质。前者中,电磁波被导向沿着固体媒介传播;后者则可以是空气、真空或海水等。

  • 双绞线
    • 双绞线是最常用的古老传输介质
    • 绞合可以减少对相邻导向的电磁干扰
    • 外面是否再加一层屏蔽层,可分为 屏蔽双绞线STP非屏蔽双绞线UTP
    • 双绞线的带宽取决于铜线的粗细和传输距离
  • 同轴电缆
    • 同轴电缆具有良好的抗干扰特性
    • 广泛运用于较高速率的数据,传输距离更远
    • 同轴电缆带宽高得益于其高屏敝姓
  • 光纤
    • 有光脉冲为1,无则0
    • 可见光的频率约为108MHz10^8MHz
    • 光脉冲在多模光纤中传输时会逐渐展宽,造成失真,因此多模光纤只适合近距离传输
    • 单模光纤的光源为定向性很好的半导体激光器
    • 传输损耗小,中继距离长,对远距离传输特别经济
    • 抗雷电和电磁干扰性能好
    • 无串音干扰,保密性好,也不易被窃听或截取数据
    • 体积小,重量轻
    • 普通光纤并不是中空的
  • 无线电波
    • 穿透能力强、传输距离长
    • 向所有方向散播,简化了通信连接
  • 视线(Line-of-sight)介质
    • 高带宽的无线通信主要使用的技术:微波、红外线和激光
    • 要求发收方之间存在视线通路,有很强方向性,沿直线传播

接口特性

物理层考虑的是如何在连接到各计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。
物理层应尽可能屏蔽网络中的硬件设备、传输介质和通信方式的不同,对数据链路层透明。

物理层的主要任务可以描述为确定与传输媒体的接口有关的一些特性:

  1. 机械特性:指明接口接线器的形状和尺寸、引脚数目和排列、固定和锁定装置等
  2. 电气特性:指明在接口电缆的各条线上出现的电压范围
  3. 功能特性:指明某条线上出现的某一电平的电压表示何种含义
  4. 过程特性/规程特性:指明对不同功能的各种可能性事件的出现顺序

常用的物理层接口标准有:EIA RS-232-CADSLSONET/SDH

物理层设备

中继器|Repeater

功能:将数字信号整形并放大再转发出去。原理是信号再生

中继器消除了信号经过长段电缆后产生的失真和衰减,进而扩大网络传输距离。

中继器有两个端口,数据一端进一端出,而端口仅作用于信号的电气部分,不论是否有错误数据或不适于网段的数据。

如果某个网络设备具有存储转发功能,那么可以认为它能连接两个不同的协议,反之亦然。

而中继器没有此功能,它属于直通式设备而非存储转发,所以它不能连接两个速率不同的网段,它不能连接不同协议的网段。

  • 5-4-3原则
    在采用粗同轴电缆的 10BASE5 以太网规范 中,互相串联的中继器个数不能超过4个,由这4个中继器串联的5段通信介质中只有3段可以挂接计算机,其余两段只能用于扩展通信范围的链路段。

集线器|Hub

集线器实际上是一个 多端口的中继器

集线器将接受到的一个端口数据进行整形放大,使之再生(恢复)后,转发到其他所有处于工作状态的端口。
当同时有多个端口输入时,输出会发生冲突,导致数据均无效。

  • Hub 信号传输方向固定,是一个标准的共享设备
  • Hub 主要使用 双绞线 组件共享网
  • Hub 的每个端口连接的网络部分是同一个网络的不同网段
  • Hub 只能在半双工状态下工作,网络同吞吐率受限
  • Hub 扩大了物理网络的覆盖范围,但是无法解决冲突域

数据链路层

详见本站文章 👉🏻 数据链路层-不只是链路| CN2

网络层

网络层向上提供简单灵活的、无连接的、尽最大努力交付的数据报服务

路由算法

路由器(router)是一台专用计算机,用于在互联网中进行路由选择。
主要完成两个功能:路由选择(确定哪一条路径)、分组转发(当一个分组到达时采用的动作)。

路由选择按照复杂的分布式算法,根据从各相邻路由器所得到的关于整个网络拓扑的变换情况,动态地改变所选择的路由。由此,会给路由器根据特定的路由选择协议构造路由表,同时经常定期地和相邻路由器交换路由信息不断更新和维护该表。

分组转发则是根据路由表得出的转发表将用户的 IP 数据报从合适的端口转发出去。

在讨论路由选择的原理时,往往不去区分转发表和路由表,而是笼统地使用“路由表”一词。

路由表与路由转发

路由器与网桥的区别:

路由器的分组转发部分包括:
路由器的路由选择部分包括:

路由表的默认路由设置:[目的地址]0.0.0.0, [子网掩码]0.0.0.0
路由表包括(表头):目的网络、子网掩码、下一跳

静态路由和动态路由

静态路由又称非自适应路由算法,指由管理员手动配置路由信息。
动态路由又称自适应路由算法,指路由表可通过相互连接的设备之间的信息交换,按照一定算法优化出来,可不断更新。

距离-向量路由算法

路由协议

协议RIPOSPFBGP
类型内部内部外部
路由算法距离-向量洪泛法交换链路状态+Dijkstra路径-向量
传递协议UDPIPTCP
路径选择跳数最少代价最低较好,非最佳
子网掩码不支持支持可变长和无分类 CIDR支持 CIDR
交换结点相邻路由器(坏消息传得慢)所有路由器(使用 Hello 保持与邻居连接)相邻自治系统的BGP发言人/路由器
交换内容本路由所知的全部信息与本路由相邻的所有路由器的链路状态首次:整个路由表
非首次:有变化的部分

软件定义网络 |SDN

软件定义网络Software Defined NetworkSDN)的概念最早由斯坦福大学的Nick McKeown教授于2009年提出。
它最初只是学术界讨论的一种新型网络体系结构,而当前SDN是网络领域最热门和最具发展前途的技术之一,成为近年来的研究热点。

SDN成功案例:谷歌于2010~2012年间建立的数据中心网络B4

IP 数据报 首部长度如果不指明,默认 20B

IP 报文的分片和各字段的计算:
数据部分的编号从 0 开始

IPv4 地址 与 NAT

连接到互联网的每一个主机或路由器都被分配有 32 bit全球唯一标识符,即 IP 地址。

由此为互联网上的每一个网络和每一台主机分配一个逻辑地址,以屏蔽物理地址的差异。

IP 地址 主要由 网络号和主机号两部分组成。即:

1
IP Address :: = {<Network Number>, <Host Number>}

互联网早期采用分类 IP 地址

其中A、B、C 3类(如下表格)由 InternetNIC 在全球范围内统一分配,D、E类为特殊地址。

类别最大网络数IP地址范围单个网段最大主机数私有IP地址范围
A2722^7-21.0.0.1-127.255.255.25422422^{24}-210.0.0.0-10.255.255.255
B2142^{14}128.0.0.1-191.255.255.25421622^{16}-2172.16.0.0-172.31.255.255
C2212^{21}192.0.0.1-223.255.255.2542822^8-2192.168.0.0-192.168.255.255

子网划分与子网掩码

无分类编址 CIDR

子网划分的方法:
根据题目要求

  1. 有时候是连续划分 优先安排大的子网
  2. 有时候是均匀划分 就是
  3. 有时候是尽可能大划分 就用哈夫曼编码

ARP、HDCP、ICMP

动态主机配置协议| DHCP

DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个基于UDP的应用层协议

当我们将客户主机 IP 地址设置为动态获取方式时,DHCP 服务器就会根据 DHCP 协议给客户端分配 IP,使得客户机能够利用这个IP上网。

DHCP客户端与DHCP服务器的交换过程如下:

  1. 客户机广播“DHCP发现”消息,源地址0.0.0.0,目的地址255.255.255.255
  2. 服务器收到广播后,广播“DHCP提供”消息,包括提供给客户机的IP地址。源地址为DHCP的服务器地址,目的地址255.255.255.255
  3. 客户机收到提供的广播消息后,若接受被分配的IP,则广播“DHCP请求”消息,请求提供IP,源地址0.0.0.0,目的地址255.255.255.255
  4. 服务器收到请求的广播消息后,广播“DHCP确认”消息,分配给客户机的IP地址。源地址为DHCP的服务器地址,目的地址255.255.255.255

网际控制报文协议| ICMP

为了提高 IP 数据报交付成功的机会,在网际层使用了网际控制报文协议 ICMP(Internet Control Message Protocol)。

ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP 不是高层协议,而是 IP 层的协议。ICMP 报文作为 IP 层数据报的数据,加上 IP 数据报的首部,组成 IP 数据报发送出去。

👉🏻ICMP差错报告报文
  1. 终点不可达
  2. 源点抑制。因拥塞而丢弃数据报
  3. 时间超时
  4. 参数问题
  5. 改变路由 (重定向)
👉🏻不应发送ICMP差错报文的情况
  1. 对ICMP差错报告报文不再发送ICMP差错报告报文

  2. 对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文

  3. 具有组播地址的数据报都不发送ICMP差错报告报文

  4. 具有特殊地址(如127.0.0.0或0.0.0.0)的数据报不发送ICMP差错报告报文

👉🏻ICMP询问报文
  1. 回送请求和回答报文:主机或路由器向特定目的主机发出的询问,收到此报文的主机必须给源主机或路由器发送ICMP回送回答报文。测试目的站是否可达以及了解其相关状态

  2. 时间戳请求和回答报文:请某个主机或路由器回答当前的日期和时间。用来进行时钟同步和测量时间

  3. 掩码地址请求和回答报文(现在已经不再使用)

  4. 路由器询问和通告报文(现在已经不再使用)

♾️ICMP的应用
  1. PING:测试两个主机之间的连通性,使用了ICMP回送请求和回答报文

  2. Traceroute:跟踪一个分组从源点到终点的路径,使用了ICMP时间超过差错报告报文ICMP回送请求和回答报文

IPv6

IPv6 有着如下几个特点:

  1. 更大的地址空间,相比 IPv4 的 32位,IPv6 增加到了 128
  2. 简化了 IP 分组头,IP 分组头包含 8 个域(IPv4 则是 12 个域)
  3. 首部格式更加灵活,且长度必须是 8B 的整数倍(IPv4 是 4B 的整数倍)
  4. IPv6 不允许分片
  5. 增大了安全性,身份验证和保密功能是其关键特征
  6. 除了单播和多播外,新增了任播,目的站通常是一组计算机,而交付于最近的一台
  7. 数据链路层与传输层有自己的校验,为了效率 IPv6 没有校验字段
  8. 其地址每 4 位用一个十六进制数表示,冒号分隔每 16 位
    如:4BF5:0:0:0:BA5F:39A:A:2176
    相继有 0 值域时,可直接用双冒号缩写,但双冒号最多只能出现一次
    IPv6还有一种混合表示法,可以将冒号16进制与点分10进制混合使用,这在 IPv4 向 IPv6 过渡阶段非常有用。

IPv4 向 IPv6 过渡可以采用 双协议栈 和 隧道技术 两种策略。

前者是指设备同时装有两种协议栈,后者则是将 IPv6 的数据报封装为 IPv4 的数据部分进行串数。

IP 组播

为了支持例如视频点播、视频会议这样的多媒体应用,网络必须实施某种有效的组播机制。
希望让源计算机一次发送单个分组就可以抵达一组目标主机并均被按主机意愿正确接收。
因此,面向连接的 TCP 协议不适用,所以 组播一定仅应用于 UDP

IP 组播地址使用 D 类地址格式。因为 D 类地址前四位是 1110,所以其地址范围是:224.0.0.0 ~ 239.255.255.255。每个 D 类 IP 地址标志一个组播组,主机使用名为 IGMP(因特网组管理协议)的协议加入组播组。

移动 IP

移动结点、归属代理(本地代理)、外部代理(外埠代理)

区分:移动 IP、动态 IP、移动自组网络

网络层设备

冲突域与广播域

冲突域 是指连接到同一物理介质上所有结点的集合,结点之间存在介值争用现象。
在 OSI 参考模型中,冲突域被视为第一层概念,由物理层设备(集线器、中继器)这种无脑复制转发信号的设备连接的结点都属于同一个冲突域。而第二层的网桥、交换机则可以将冲突域划分,同理,第三层的路由器也可。

广播域 是指接收同样广播信号的结点的集合。即在该集合内任一结点发送的广播帧其他结点都能收到。
在 OSI 参考模型中,冲突域被视为第二层概念,所以集线器、中继器,乃至网桥、交换机都不可以将冲突域划分,相反路由器就可以,即使用路由器可以分割广播域抑制广播风暴

通常所说的 LAN 局域网就特指使用路由器分割的网络,即广播域。

传输层

传输层只存在于通信子网以外的主机中。

传输层提供应用进程之间的逻辑通信,即端到端的通信。

传输层的服务访问点(SAP)是端口。

将区分主机的 IP 和区分进程的 端口 拼接起来即构成套接字 Socket。

熟知端口号

UDP 协议

校验

TCP 协议

三次握手

四次握手

三次握手,四次握手

慢开始与快重传

乘法减小,加法增加
快重传是针对接收端,而
注意:计算中,问xx 次 RTT 都确认成功后的拥塞窗口,则说明此时已经步入第x+1x+1 步了。

三次握手的第三次,客户机已经可以携带数据了,即使此次不携带,也不消耗序号

线路效率 = 吞吐率/信道带宽

超时时间发生时,cwnd 置1,而收到 3 个冗余 ACK 时, cwnd 减半。(后者通常在不随时取出缓存的服务器在缓存区满时发生)

应用层

C/S模型、P2P模型
DNS

FTP 文件传输协议

FTP采用 C/S 工作方式,使用 TCP 可靠传输服务。
控制连接监听21号端口,数据连接通过20号端口。
数据连接有两种传输模式。

  • PORT 主动模式:客户端随机开放一个端口,服务器通过20号端口与之连接。
  • PASV 被动模式:服务器随机开放一个端口,客户端自行决定端口。
    因为 FTP 使用了一个分离的控制连接,所以也称其控制信息为 带外传送(Out-of-Band)的。

匿码 FTP 访问通常使用 anonymous 作为用户名。

电子邮件

电子邮件是一种异步通信方式。
邮件服务器采用 C/S 工作方式,但必须能同时充当客户和服务器。

SMTP 协议用于邮件发送,是“推送”(PUSH);POP3 协议则用于读取邮件,是“拉取”(PULL);比 POP 更复杂的一个邮件读取协议是 IMAP,提供了更多功能。

MIME 是多用途网际邮件扩充,并未改变 SMTP 或取代,而是在已有格式上增加邮件主体的结构,以实现用户之间更多的传送内容的需求。

SMTP 和 POP 在传输层均使用 TCP 可靠传输服务,SMTP 端口号为 25、POP 端口号为 110。

POP3 协议在传输层使用明文传输密码,并不对密码加密。

HTTP

HTTP 使用 TCP 作为传输层协议,默认端口号为 80。但 HTTP 本身是无连接的,双方在交换 HTTP 报文之前,不需要先建立 HTTP 连接。

HTTP 是无状态的。同一个客户第二次访问同一个服务器的页面时,服务器不会记得曾经响应过该客户。通常会使用 Cookie + 数据库 的方式跟踪用户活动。

HTTP 有非持久连接和持久连接之分,持久连接又分非流水线和流水线两种方式。在请求报文的 Connection 字段中,如果 key 为 Close 则表示非持久连接,keep-alive 则相反。

常见应用层协议及其端口

应用程序FTP数据连接FTP控制连接TELNETSMTPDNSTFTPHTTPPOP3SNMP
使用协议TCPTCPTCPTCPUDPUDPTCPTCPUDP
熟知端口号20212325536980110161