计算机网络定义:

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

整体结构

计算机网络功能:

实现资源共享,实现数据信息的快速传递,提高可靠性,提供负载均衡与分布式处理能力,集中管理以及综合信息服务

互联网特点:连通性和共享

互联网的组成:

​ 边缘部分和核心部分,边缘复杂核心简单,

​ 边缘端系统之间两种通信方式:客户-服务器(C-S)方式对等方式(p2p方式)

路由器在网络核心部分起特殊作用,实现分组交换

电路交换——整个报文的比特流连续地从源点直达终点,好像在一个管道中传送

报文交换——整个报文先传送到相邻结点,全部存储下来后查找转发表,转发到下一个节点

分组交换——单个分组(报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一个结点

计算机网络的类别:

按照网络的作用范围

广域网WAN,城域网MAN,局域网LAN,个人区域网PAN

计算机网络性能指标:

速率:数据的传送速率,也称数据率比特率,单位是bit/s,以十进制位单位,k,M,G,代表十的3,6,9次方,计算机中以K,M,G代表2的10,20,30次方

带宽:数字信道所能传送的最高数据率,单位bit/s

吞吐量:单位时间内通过某个网络(或信道,接口)的实际数据量

时延:数据从网络的一端发送到另一端所需要的时间,包括发送时延传播时延处理时延排队时延

时延带宽积:时延带宽积 = 传播时延 x 带宽

往返时间RTT:数据双向交互一次的时间,发送时间=数据长度/发送速率,有效数据率=数据长度/(发送时间+RTT) 吞吐量=数据长度/(发送时间+RTT)

信道利用率:某信道有百分之几的时间是在被利用的,发送时间/(发送时间+往返时间),吞吐量/信道带宽

计算机网络体系结构:

网络协议的三要素:

语法:数据与控制信息的结构或格式

语义:需要发出何种控制信息,完成何种动作以及做出何种响应

同步:事件实现顺序的详细说明

物理层

物理层的作用:

​ 尽可能屏蔽掉传输媒体和通信手段的差异,使物理层上面的数据链路层感觉不到这些差异,这样就可以使数据链路层只需要考虑如何完成本层的协议与服务,而不必考虑网络的具体传输媒体和通信手段。

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

​ 机械特性 电气特性 功能特性 过程特性

​ 数据在通信线路上一般是串行传输,物理层完成传输方式的转换

码元:代表不同离散数值的基本波形

常用编码方式:

​ 不归零制:正电平1,负电平0

​ 归零制:正脉冲1,负脉冲0

​ 曼彻斯特编码:中心向上跳变1,向下跳变0,可反过来定义

​ 差分曼彻斯特编码:中心始终跳变,边界有跳变0,无跳变1

基本的带通调制方法:

​ 调幅(AM):载波的振幅随基带数字信号而变化

​ 调频(FM):载波的频率随基带数字信号而变化

​ 调相(PM):载波的初始相位随基带数字信号而变化

正交振幅调制QAM

信道的极限容量:

信道容量是信道能无错误传送的最大信息量

数据传输速率:比特速率S,单位时间内传送的二进制位数,单位位每秒,bit/s

信号传输速率:码元速率B,单位时间内传送的码元个数,单位波特,Baud

码元离散值个数为N,则携带的比特数n=log2(N),如码元离散值有4个,则一个码元携带2bit信息,比特速率就为码元速率的2倍,S = B x log2(N)

奈氏准则:任何信道中码元传输的速率是有上限的,传输速率超过上限就会产生码间串扰,使接收端无法识别码元 码元传输速率上限值:C = 2 x W x log2(N) Baud/s

信噪比:信号的平均功率和噪声的平均功率之比,S/N,

若用dB分贝表示,则S/N(dB) = 10 log10(S/N)

香农公式:信道的极限传输速率 C = W x log 2 (1+S/N) bit/s

​ W为信道带宽,单位Hz

​ S为信道内所传信号的平均功率

​ N为信道内部的高斯噪声功率

​ 提高传输速率:提高信道带宽W,提高信噪比S/N,用编码的方式让每一个码元携带更多bit的信息量

传输媒体:

导引型:

  • 双绞线:屏蔽型(STP)和非屏蔽型(UTP)

    优点:价格便宜,易于布线

    缺点:耐用性差,易受干扰

    现在常用5类UTP

  • 同轴电缆:抗干扰,传输速率较高

    优点:抗干扰能力强

    缺点:价格贵,重,无法结构化布线

  • 光纤:利用光导纤维传递光脉冲实现通信,多模和单模

    优点:通信容量非常大;传输损耗小,中继距离长(可达几十上百公里);抗雷电和电磁干扰能力强;无串音干扰,保密性好;体积小,重量轻

非导引型:

  • 短波通信:依靠电离层的反射实现通信

    通信质量较差,传输速率低

  • 地面微波接力通信:终端之间建立若干个中继站,把收到的信号放大后发送到下一站

    优点:频率高,信道容量大,传输质量较高;投资少,见效快

    缺点:会受天气影响,隐蔽性和保密性较差

  • 卫星通信:使用人造卫星作为中继器的一种微波接力通信,通信距离远,传播时延较大

    优点:频带宽,通信容量大,受干扰小,通信稳定

    缺点:保密性差,造价高 常用于广播电视通信

信道复用:

一般情况下,通信信道带宽远远大于用户所需的带宽,使用信道复用技术可以提高信道利用率,共享信道资源,降低网络成本

频分复用FDM:频分复用的用户在同样的时间占用不同的带宽资源

时分复用TDM: 时分复用则是将时间划分为一段段等长的时分复用帧 (TDM 帧)。每一个时分复用的用户在每一个 TDM 帧中占用固定序号的时隙,也称为同步TDM。每一个用户所占用的时隙是周期性地出现(其周期就 是 TDM 帧的长度)。

可能会造成线路资源的浪费

统计时分复用STDM:STDM帧不是固定分配时隙,而是按需动态分配

波分复用WDM:光的频分复用,在同一根光纤中同时让两个或两个以上的光波长信号通过不同光信道各自传输信息。

码分复用CDM:码分多址CDMA,每个用户使用不同的码字,用户之间不会产生干扰

  • 每一个比特时间划分为m个短的间隔,称为码片(chip)。每个站被指派一个唯一的 m bit 码片序列

  • 发送1则发送码片序列,发送0则发送码片序列的反码,0写为-1,1写为+1

  • 每个站分配的码片序列不仅必须各不相同, 并且还必须互相正交

数据链路层

三个基本功能:

  • 封装成帧

    在一段数据的前后分别添加首部和尾部,构成帧,确定帧的起始和结束

    首部和尾部的一个重要功能就是进行帧定界

  • 透明传输

    数据中出现控制字符“SOH”,或“EOH“时在前面插入转义字符”ESC“,字符填充

  • 差错检测

    使用循环冗余校验 CRC

    发送的数据M=101001,除数P=1101,则在M后增加3个0为M’,M’与P进行模2运算得余数R=001,R作为冗余码拼接到M后面发送出去,也称帧检验序列FCS,接收端接收数据后,除以相同的P,余数为0则无差错

    生成多项式 P(X)=X^3+X^2+1 P=1101

    仅仅使用CRC只能做到对帧的无差错接收,不能避免帧丢失,帧重复,帧失序的问题

点对点协议——PPP

帧格式:7E标志一个帧的开始或结束

字节填充:信息字段中出现7E时,与20异或转义为5E并在前面填充7D为(7D,5E)

​ 出现7D时则转义为(7D,5D)

​ 出现小于20的字符如03,则转义为(7D,23)

零比特填充:出现连续的5个1,则填入一个0

CSMA/CD协议 载波监听 多点接入/碰撞检测

协议的要点:

  • 多点接入:总线型网络,多个计算机以多点接入的方式连接在一根总线上
  • 载波监听:检测信道,检测总线上是否有其他计算机发送数据
  • 碰撞检测:计算机边发送数据边检测信道上的信号电压大小,出现碰撞立即停止发送

电磁波在1KM电缆中的传播时延约为5微秒,单程端到端传播时延记为t

最长为两倍的端到端传播时延(2t)可以知道是否与其他站发送的数据有碰撞

使用CSMA/CD协议的以太网只能进行半双工通信

争用期:以太网的端到端往返时延2t,经过争用期这段时间没有检测到碰撞,才能肯定这次发送不会发生碰撞

具体的争用期时间为51.2微秒,10Mbit/s的以太网可发送512bit,64字节

以太网规定了最短有效帧长为64字节,凡长度小于64字节的帧都是因冲突而异常中止的无效帧 ,收到即丢弃

确定碰撞后重传的时机:截断二进制指数退避算法

  • 从整数集合[0,1,…,2^k -1)]中随机地取出一个数, 记为 r。重传所需的时延就是 r 倍的基本退避时间

  • k = Min[重传次数, 10] ,16次则丢弃并向高层报告

强化碰撞:发生碰撞时发送32或48bit的人为干扰信号,让所有用户都知道产生了碰撞

帧间最小间隔:9.6微秒,使刚收到帧的站的接受缓存来得及清理,以接收下一帧

以太网的信道利用率

a=t/T:以太网单程端到端时延t与帧的发送时间T之比,a越小,资源浪费的时间越少

即以太网连线不能太长,帧不能太长

极限信道利用率S=T/(T+t)=1/(1+a)

以太网的MAC帧

硬件地址又称物理地址或MAC地址,MAC地址共48位

MAC帧的格式:

无效的MAC帧: 无效则丢弃,以太网不负责重传

  • 帧的长度不是整数个字节
  • 用收到的帧检验序列FCS查出有差错
  • 数据字段的长度不在46—1500字节之间,即有效的MAC帧的长度在64—1518字节之间

在数据链路层扩展以太网

网桥:根据MAC地址的目的地址进行转发和过滤,收到帧后,查找转发表,确定发往哪个接口或丢弃

​ 时延增加,存储转发,执行CSMA/CD算法

交换机:多接口的网桥,工作在全双工模式,具有并行性,多对主机同时通信,内部的帧交换表通过自学习算法建立起来的

​ 优点:用户独享带宽,增加了总容量

​ 从共享总线以太网到交换机以太网,软硬件及适配器不需要改动

​ 多速率的接口,方便了不同情况的用户

自学习算法:

  • 收到帧后,查找转发表,是否有与源地址相匹配的项目

​ 没有:增加一个新项目,源地址,接口,有效时间

​ 有:对原有项目进行更新

  • 转发帧,查找交换表,是否有与目的地址相匹配的项目

    没有:向所有其他接口转发,进入的接口除外

    有:按交换表给出的接口转发

    与进入的接口相同则丢弃

广播域和广播风暴

广播域:指的是广播帧所能传递到的范围,亦即能够直接通信的范围

广播风暴:由于网络拓扑的设计和连接问题,或其他原因导致广播在网段内大量复制,传播数据帧,导致网络性能下降,甚至网络瘫痪

虚拟局域网VLAN

VLAN的划分方法:基于端口(最常使用),基于MAC地址,基于IP地址,基于策略

优点:隔离限制广播域,抑制广播报文

​ 隔离用户,保证网络安全

​ 组网灵活,良好的扩展性

Trunk端口:可属于多个VLAN

802.1Q协议:在以太网的帧格式中插入一个 4 字节的标识符,称为 VLAN 标记(tag),用来指明发送该帧的工 作站属于哪一个虚拟局域网,增加tag后,以太网 MAC 帧的范围是 68~1522字节

网络层

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

与网际协议IP配套使用的协议:

  • 地址解析协议ARP
  • 网际控制报文协议ICMP
  • 网际组管理协议IGMP

有关的设备:

  • 物理层使用的中间设备:转发器
  • 数据链路层使用的中间设备:网桥,桥接器
  • 网络层使用的中间设备:路由器
  • 网络层以上使用的中间设备:网关

虚拟互连网络

逻辑互连网络,利用IP协议使性能各异的网络在网络层上看起来好像是一个统一的网络

直接交付:不需要经任何路由器

间接交付:需要经过路由器转发

IP数据报的格式

首部的前一部分是固定长度,共 20 字节, 是所有 IP 数据报必须具有的,整个首部长度为32位的整数倍

首部长度:最大为15个单位,一个为4字节,首部最大为60字节

总长度:16位,最大为65535字节,首部和数据部分之和

标志:最低位MF,为1后面还有分片,为0最后一个分片 中间位DF=0才可以分片

片偏移:片在原分组中的相对位置,以8个字节为偏移单位

生存时间TTL:数据报在网络中可通过的路由器数的最大值,路由器每次转发TTL减1,TTL为0就丢弃

首部检验和:首部划分为16位的序列,检验和字段清0,各序列相加后(最高位有进位则加到最后一位)取反码,写到检验和字段,接收方收到数据后,首部分为16位相加取反码,结果为0则保留

分类IP地址

IP 地址 ::= { <网络号>, <主机号>} ”::= “表示“定义为”

  • A类地址:第一位为0,前8位为网络号,网络号主机号全0全1不可用
  • B类地址:前两位为10,前16位为网络号,网络号后8位全0不可用,主机号-2
  • C类地址:前三位为110,前24位为网络号,网络号后8位全0不可用,主机号-2

在同一个局域网上的主机或路由器的 IP 地址中的网络号必须是一样的

划分子网

IP 地址 ::= [ <网络号>,<子网号>,<主机号> ] 从主机号中借若干位作为子网号,对外表现为一个网络

子网号2位以上,x位子网号,划分2^x-2个子网

子网掩码

网络号和子网号全1即为子网掩码

IP地址与子网掩码相与即可得出网络地址

同一个子网中每台主机的子网掩码都是一样的值

主机号全“0”代表网络号加子网号,主机号全 “1”代表这个子网的广播地址

无分类编制CIDR

IP地址 ::= {<网络前缀>, <主机号>} 斜线记法,IP地址后面加上“/”和前缀所占的位数

掩码:前缀全为1

划分子网:CIDR也可以进一步划分子网,借走n位可以划分2^n个子网,主机号全0全1不能分配

构成超网:前缀相同的地址可聚合为一个前缀短的地址,前缀为相同的部分

最长前缀匹配:匹配路由表项时,应选择最长网络前缀的路由

地址解析协议ARP

作用:从网络层使用的 IP 地址,解析出在数据链路层使用的硬件地址

ARP是解决同一个局域网上的主机或路由器的 IP 地址和硬件地址的映射问题

主机A向本局域网中主机B发送数据时,查看自己的ARP缓存是否有B的IP地址

  • 有:查看对应的硬件地址,写入MAC帧,通过局域网发送

  • 无:在本局域网广播ARP请求分组,收到 ARP 响应分组后,将得到的 IP 地址到硬件地址的映射写入 ARP 高速缓存

    ARP请求分组:包含发送方硬件地址 / 发送 方 IP 地址 / 目标方硬件地址(未知时填 0) / 目标方 IP 地址

    ARP 响应分组:包含发送方硬件地址 / 发 送方 IP地址 / 目标方硬件地址 / 目标方 IP 地址

使用ARP的四种典型情况

  1. 主机发送数据到本局域网的另一主机,发送ARP请求分组,找到硬件地址
  2. 主机发送数据到另一网络的主机,发送ARP请求分组,找到路由器,由路由器完成
  3. 路由器发送数据到同一网络的主机,发送ARP请求分组,找到硬件地址
  4. 路由器发送到另一网络的主机,发送ARP请求分组,找到另一路由器,由路由器完成

网际控制报文协议ICMP

ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告;

ICMP 报文作为 IP 层数据报的数据,加上数据报的首部,组成 IP 数据报发送出去

ICMP差错报告报文:

  • 终点不可达
  • 源点抑制
  • 时间超过
  • 参数问题
  • 改变路由(重定向)

ICMP询问报文:

  • 回送请求和回答
  • 时间戳请求和回答

PING用来测试两台主机之间的连通性

Tracert用来跟踪一个分组从源点到终点的路径,获得目的主机的路由信息

路由选择协议

自治系统AS:单一技术管理下的一组路由器,对其他 AS 表现出的是一 个单一的和一致的路由选择策略

内部网关协议RIP

RIP是一种分布式的基于距离向量的路由选择协议

RIP 协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录

RIP协议中的“距离”也称为“跳数”,每经过一个路由器,跳数就加 1

从一路由器到直接连接的网络的距离定义为 1

RIP 允许一条路径最多只能包含 15 个路由器, “距离”的值为16 时即相当于不可达

RIP协议的特点:

  • 仅和相邻路由器交换信息
  • 交换的信息是当前路由器所知道的全部信息,即路由表
  • 按固定的时间间隔交换路由信息

距离向量算法:

收到相邻路由器(其地址为 X)的一个 RIP 报文:

  1. 先修改此 RIP 报文中的所有项目:把“下一跳”字段中的地址都改为 X,并把所有的“距离”字段的值加 1

  2. 对修改后的 RIP 报文中的每一个项目,重复以下步骤:

    ​ 若项目中的目的网络N不在路由表中,则把该项目加到路由表中。

    ​ 否则 (即在路由表中有目的网络N)

    ​ 若下一跳字段给出的路由器地址是同样的X,则把收到的项目替换原路由表中的项目。

    ​ 否则 (即这个项目是到目的网络N,但是下一跳不是X)

    ​ 若收到项目中的距离小于路由表中的距离,则进行更新, 否则,什么也不做

优点:实现简单,开销较小

缺点:限制了网络规模,最大距离为15

好消息传播的快,坏消息传播得慢,网络出故障的传播时间往往需要较长的时间(数分钟)

内部网关协议OSPF

开放最短路径优先

最主要的特征:使用分布式的链路状态协议

所有的路由器最终都能建立一个链路状态数据库

要点:

  • 向自治系统中所有路由器发送信息
  • 发送的信息是与本路由器相邻的所有路由器的链路状态
  • 链路状态发生变化时,路由器才向所有路由器用洪泛法发送信息

优点:OSPF更新收敛的快

外部网关协议BGP

每一个自治系统的管理员要选择至少一个路由器作为该自治系统的“ BGP 发言人”

BGP采用了路径向量路由选择协议

路径向量(路由所经过的各个AS序列) AS1=》AS2=》AS4

当 BGP 发言人互相交换了网络可达性的信息后,各BGP发言人就根据所采用的策略收到的路由信息中找出到达各 AS 的较好路由

IPv6

每个地址128位,使用冒号16进制记法:68E6:8C64:FFFF:FFFF:0:1180:960A:FFFF

0压缩:一串连续的0可用一对冒号取代

FF05:0:0:0:0:0:0:B3 可以写成:FF05::B3 注意:在任一地址中只能使用一次零压缩

冒号十六进制记法可结合使用点分十进制记法的后缀 0:0:0:0:0:0:128.10.2.1

CIDR 的斜线表示法仍然可用

IPv4向IPv6过渡:

  • 双协议栈:

    一部分主机或路由器装有双协议栈,可以和IPv4和IPv6的系统通信

  • 隧道技术:

    IPv6数据报进入IPv4网络时,把IPv6的数据报封装为IPv4数据报,离开隧道,再把IPv6数据报交给主机

多播

多播组的标识符为IP地址地址中的D类地址,前四位为1110,224.0.0.0 到 239.255.255.255

多播地址只能用于目的地址,不能用于源地址

网际组管理协议IGMP:让连接在本地局域网上的多播路由器知道本局域网上是否有主机参与或退出了某个多播组

多播路由选择协议:

  • 洪泛与剪除
  • 隧道技术,多播数据报经过不支持多播的网络时,封装为单播数据报通过
  • 基于核心的发现技术

网络地址转换NAT

装有 NAT 软件的路由器叫做 NAT路由器,它至少有一个有效的外部全球地址 IPg

所有使用本地地址的主机在和外界通信时 都要在 NAT 路由器上将其本地地址转换成 IPg 才能和因特网连接

这样就可以使专用网内较多数量的主机,轮流使用 NAT 路由器有限数量的全球 IP 地址

虚拟专用网VPN

运输层

网络层为主机之间提供逻辑通信

运输层为应用程序提供和端到端的逻辑通信,对收到的报文进行差错检测

端口:使运行不同操作系统的计算机的应用程序能够相互通信,在运输层使用协议端口

端口号的分类

  • 熟知端口号:0~1023,分配给TCP/IP的一些重要应用程序
  • 登记端口号:1024~49151,没有熟知端口号的应用程序所使用
  • 短暂端口号:49152~65535,客户进程短暂使用

端口的复用和分用:

用户数据报协议UDP

UDP在IP数据报服务上增加了复用分用和差错检测功能

主要特点:
  1. UDP是无连接的,发送数据不需建立连接
  2. UDP尽最大努力交付,不保证可靠交付
  3. UDP面向报文,UDP一次交付一个完整的报文,对应用层的报文不合并不拆分
  4. UDP没有拥塞控制
  5. UDP支持一对一,一对多,多对一和多对多的交互通信
  6. UDP的首部开销小

UDP的首部格式:

传输控制协议TCP

主要特点:
  1. TCP是面向连接的运输层协议,发送数据前建立TCP连接
  2. TCP连接只能是点对点的,一条TCP连接只能有两个端点
  3. TCP提供可靠交付服务,无差错,不丢失,不重复,按序到达
  4. TCP提供全双工通信
  5. TCP面向字节流,收到的报文段可合并,可拆分

理想的传输条件:

  • 传输信道不产生差错,(当出现差错时重传出错的数据)
  • 不管发送方以多快的速度发送数据,接收方总是来得及处理收到的数据(在接收方来不及处理收到的数据时,及时告诉发送方适当降低发送数据的速度)

TCP可靠传输的实现:

  • 面向字节流:利用字节序号控制确认和重传, 所有的确认都是基于序号而不是基于报文段
  • 确认机制:自动重传请求ARQ(连续发送、累积确认),选择确认SACK
  • 重传机制:往返时间 RTT方差很大,需要使用特定算法估算较为合理的超时重传时间RTO
  • 窗口机制:TCP 连接的每一端都必须设有两个窗口:一个发送窗口和一个接收窗口

停止等待协议:发送完一个分组停止发送,等待对方的确认,收到确认后在发送,收到确认报文超时启动重传

​ 自动重传请求ARQ:重传的请求是自动进行的,接收方不需要请求发送方重传某个出错的分组

连续ARQ协议:

  • 累积确认:即不必对收到的分组逐个发送确认,而是对按序到达的最后一个分组发送确认

  • 回退N:需要再退回来重传已发送过的 N 个分组

  • 选择确认SACK:接收方收到了和前面的字节流不连续的两个字节块,如果这些字节的序号都在接收窗口之内,那么接收方就先收下这些数据,但要把这些信息准确地告诉发送方, 使发送方不要再重复发送这些已收到的数据

滑动窗口:发送方负责维持发送窗口,位于发送窗口内的分组都可连续发送出去,而不需要等待对方的确认

​ 发送方每收到一个确认,就把发送窗口向前滑动一个分组的位置

超时重传时间的选择:

超时重传时间 RTO=RTTs + 4 x RTTd

RTTs:加权往返时间, 新的 RTTs = 0.875 x 旧的RTTs + 0.125 x 新的RTT

RTTd:RTT的偏差的加权平均值 新的 RTTd = 0.75 x 旧的RTTd + 0.25 x (RTTs - 新的RTT)

Karn算法:计算加权平均RTTs时,只要报文段重传了,就不采用其往返时间RTT样本

修正的Karn算法:报文段每重传一次,就把超时重传时间RTO增大一些

TCP报文段首部:4字节的整数倍

确认号字段:占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号

确认ACK:只有当 ACK =1 时确认号字段才有效,TCP规定,在连接建立后所有传送的报文段都必须把ACK置1

同步SYN:同步 SYN = 1 表示这是一个连接请求或连接接受报文

终止FIN:用来释放一个连接,FIN = 1 表明此报文段的发送端的数据已发送完毕,并要求释放运输连接

窗口:发送本报文段的接收窗口,从确认号算起,接收方允许对方发送的数据量(字节)

选项:最大报文段长度MSS:每一个TCP报文段的数据字段的最大长度

TCP连接的建立和释放:

连接建立:三报文握手

seq:初始序号,SYN报文段不携带数据,但要消耗一个序号,确认号ack

数据传输:

连接释放:四报文握手

TCP流量控制:点到点的通信量控制,是个端到端问题

可使用滑动窗口实现对发送方的流量控制

Nagle算法:发送方把第一个数据字节先发送出去,把后面的缓存起来,收到第一个字节的确认后,把缓存中所有数据组装为一个报文段发送出去

TCP拥塞控制:防止过多的数据注入到网络中,使网络中的路由器或链路不致过载,全局性的过程

网络拥塞的实质:整个系统的各个部分不匹配

拥塞控制方法:

  • 慢开始:开始发送数据时,由小到大逐渐增加发送窗口,每经过一个传输轮次 ,拥塞窗口 cwnd 就加倍
  • 拥塞避免:拥塞窗口达到慢开始门限ssthresh后,每经过一个往返时间,拥塞窗口cwnd加1,超时则调整门限值ssthresh=cwnd/2,设置cwnd=1,开始慢开始算法
  • 快重传:发送方一连收到3个重复确认,立即进行重传
  • 快恢复:丢失报文段时,调整门限值ssthresh=cwnd/2,设置cwnd=ssthresh,并执行拥塞避免

加法增大AI:拥塞避免阶段,拥塞窗口按照线性规律增大

乘法减小MD:超时或3个重复确认,把门限值设为当前拥塞窗口值的一半

应用层

域名系统DNS

进行IP地址和主机名字之间的转换

域名服务器种类:

  • 根域名服务器
  • 顶级域名服务器
  • 权限域名服务器
  • 本地域名服务器,也称默认域名服务器

主机向本地域名服务器的查询一般都是采用递归查询

本地域名服务器向根域名服务器的查询通常是采用迭代查询

文件传输协议FTP

功能:减少或消除在不同操作系统下处理文件的不兼容性,提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限,使用 TCP 可靠的运输服务,使用客户-服务器(C-S)方式

网络文件系统NFS: 允许应用进程打开一个远程文件,并能在该文件的某一个特定的位置上开始读写数据

简单文件传输协议TFTP:使用客户-服务器方式和使用 UDP 数据报,发送完文件需要等待确认

远程终端协议TELNET

使用客户-服务器(C-S)方式

用户用 TELNET 就可在其所在地通过 TCP 连接注册(即登录)到远程的另一个主机上

能将用户的击键传到远程主机,同时也能将远程主机的输出通过 TCP 连接返回到用户屏幕

万维网WWW

大规模的、联机式的信息储藏所,简称Web,使用客户-服务器(C-S)方式

用链接的方法能非常方便地从因特网上的一个站点访问另一个站点,从而主动地按需获取丰富的信息

万维网是分布式超媒体(hypermedia)系统,它是超文本(hypertext)系统的扩充

使用统一资源定位符 URL 来标志万维网上的各种文档

URL格式:<协议>://<主机>:<端口>/<路径>

超文本标记语言HTML使得万维网页面的设计者可以很方便地用一个超链从本页面的某处链接到因特网上的任何一个万维网页面,并且能够在自己的计算机屏幕上将这些页面显示出来

超文本传输协议HTTP:万维网客户程序与万维网服务器程序之间进行交互所使用的协议,使用 TCP 连接进 行可靠的传送,HTTP 是面向事务的客户-服务器协议

HTTP请求报文的一些方法:

  • GET:请求读取由 URL所标志的信息
  • POST:给服务器添加信息(例如,注释)

HTTP/ 1.0 协议是无状态的,每次的请求都是独立的

​ 主要缺点:每请求一个文档就要有两倍RTT的开销,客户和服务器每建立一次TCP连接都要分配缓存和变量

HTTP /1.1支持持续连接,服务器响应后一段时间仍保持连接

代理服务器(proxy server)又称为万维网高速缓存 ,它代表浏览器发出 HTTP 请求,提高访问效率

电子邮件

发送邮件的协议:SMTP 简单邮件传输协议

读取邮件的协议:POP3 邮局协议 和 IMAP

互联网邮件扩充MIME:可同时传送多种类型的数据

简单邮件传输协议SMTP:

使用客户-服务器(C-S)方式,规定在两个相互通信的 SMTP 进程之间应如何交换信息

负责发送邮件的 SMTP 进程就是 SMTP 客户,而负责接收邮件的 SMTP 进程就是 SMTP 服务器

基于万维网的电子邮件:

邮局协议POP:

使用客户-服务器(C-S)方式,非常简单、但功能有限的邮件读取协议

网际报文存储协议IMAP:

使用客户-服务器(C-S)方式,当用户 PC 机上的 IMAP 客户程序打开 IMAP 服务器的邮箱时, 用户就可看到邮件的首部。若用户需要打开某个邮件,则该邮件才传到用户的计算机上

动态主机配置协议DHCP

使用客户-服务器(C-S)方式,提供了即插即用连网的机制,允许一台计算机加入新的网络和获取IP地址而不用手工参与

DHCP 报文只是 UDP 用户数据报中的数据

需要 IP 地址的主机在启动时就向 DHCP 服务器广播发送发现报文,这时该主机就成为 DHCP 客户

DHCP 服务器先在其数据库中查找该计算机的配置信息。若找到,则返回找到的信息。若找不到, 则从服务器的 IP 地址池(address pool)中取一个地址分配给该计算机。DHCP 服务器的回答报文叫做提供报文

DHCP 客户只能在一段有限的时间内使用这个分配到的 IP 地址。DHCP 协议称这段时间为租用期