🦄一些注意事项.
高速链路中提高的仅是数据发送速率,从而减少数据的发送时延,并非提高比特在链路上的传播速率。
计算机网络的体系结构以分层形式建模。分层方式应满足一定的基本原则,特别是“保持下层对上层的独立性,上层单向使用下层提供的服务”。
为此,在单个主机内部的每一层之间的通信规则、主机与主机之间的通信规则上,我们需要指出一个统一的规定,以使得计算机能够按照这个规则有序运作。
每一层都有自己传送的数据单位,其名称、大小、含义也各不相同。每层的协议数据单元 SDU 都分为两个部分:服务数据单元 SDU、协议控制信息 PCI。
在层间传输数据时,有:
这表示 第 层把收到的来自上一层( 层)的数据单元作为本层的SDU,并为其加上对应的协议控制信息 PCI 之后,形成本层完整的PDU,然后再将它交给下一层( 层),并作为下一层的服务数据单元。
注意这里 是针对 协议 的,它是不同结点之间对等层之间传输的数据。然而对等层之间数据的传输需要依靠同一个结点相邻层的层层传递直到最底层,在最底层完成与另一个结点的传递之后才能层层往上直到对应层得到数据。
因此,从 需要传到下一层,并被下一层加上协议控制信息之后继续传到下一层。
这可以很形象地类比于一个快递被层层包裹,最后再层层拆开。
以上过程,我们称之为:通信协议栈的通信过程
国际标准化组织(ISO)提出的网络体系结构模型称为 开发系统互连参考模型|OSI/RM ,通常简称为 OSI模型。
ARPA 在研究 ARPAnet 提出了 TCP/IP模型。而这一模型得到了广泛应用,是实际上的国际标准。
在计算机网络学习中,往往采取折中的方法,结合以上两个模型的优点建立了一种常用于研究的 5层协议体系结构模型。
下面给出以上三种模型的分层细则:
特别注意的是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和0直接用不同电压表示,然后送到数字信道上传输(称为基带传输);宽带信号将基带信号进行调制后形成频分复用的模拟信号,然后送到模拟信道上传输(称为宽带传输)。
计算机内部(距离短)传输应选择并行传输
TIPS:同步、异步传输是通信方式而不是传输方式(并行、串行)
波特率也称码元传输速率、符号速率、传码率、波形速率、调制速率 等。
表示单位时间内传输的码元的数目,也可以称为 脉冲数目、信号变化次数。有:
式中, 为波特率, 为码元宽度。单位:波特 (Baud)
信息传输速率也称比特率、信息速率等。
表示单位时间内数字通信系统传输的二进制码元个数,即比特数,单位:。
在数值上,比特率和波特率有:
式中, 为一个码元所携带的比特数,有, 为每个码元的离散电平数目.
奈奎斯特(Nyquist)推导出在理想低通信道(无噪声,带宽有限)情况下的最高数据传输速率 的公式:
式中, 为理想低通信道的带宽, 为每个码元的离散电平数目.
注1:此处列出的仅是理想带宽为 的情况,根据奈氏准则有此时的极限波特率为.
如果已知采样频率,则采样频率就可作为波特率代入计算,所以此时 .
注2:由于波特率受奈氏准则约束,因此提高数据传输速率的方法只能是在有限个码元内携带更多的比特信息。此时就需要利用多元制的调制方法。
香农(Shannon)定理给出了 带宽有限且有高斯白噪声干扰的信道的最高数据传输速率 的公式:
式中, 为信道带宽, 为信道所传输信号的平均功率, 为信道内部的高斯噪声功率。 为信噪比,在以分贝 为单位时,有.
做题时,如果给出信噪比为 30dB ,则一般取
💦 在做题时需要特别注意上限。
当用 Shannon 定理计算得到一个最高速率 时,还需同时利用 Nyquist 定理 计算理论最大速率. 因此,最终有:
编码方式 | 英文/缩写 | 特征 | 备注 |
---|---|---|---|
归零编码 | RZ | 高电平:1;低电平:0;时钟周期中间跳变归零 | 接收方可根据跳变调整本方时钟基准以实现同步 |
非归零编码 | NRZ | 高电平:1;低电平:0;不跳变 | 难以同步,因此想高速传输同步数据只能接时钟线 |
反向非归零编码 | MRZI | 翻转:0;保持:1. | 既能传输时钟信号又不损失带宽,USB2.0就用RNZI |
曼彻斯特编码 | Manchester Encoding | 码元一分为二,前高后低代表1 | 占用带宽是原始基带宽度的 2 倍,以太网使用 |
差分曼彻斯特编码 | - | 码元一分为二,前半部分保持"上一个码元"的后半部分时代表1 | 可实现自同步,抗干扰性好,局域网传输常用 |
4B/5B | - | 数据流每4位一组,转为对应5位码 | 32种组合,16种代表数据,16种作为控制码 |
下给出示例以加深理解。
在频率相同的条件下,将 ASK(幅移键控:只改变载波信号振幅实现01信号表示) 和 PSK(相移键控:只改变载波信号相位实现01信号表示) 结合以形成叠加信号。
在该技术下的数据传输速率 为:
式中, 为波特率大小; 分别是相位个数和每个相位的振幅种数。
充分利用了带宽资源,实现传输的有效性,提供较高频率的一种调制技术。
为了将模拟信号进行数字化表示,一般需要经过3个步骤:采样、量化、编码。
其中,采样频率受到 采样定理 的影响,即要求. 否则采用后将无法完整地保留原始模拟信号的信息。
数据报服务 | 虚电路服务 | |
---|---|---|
建立连接 | 不需要 | 必须有 |
目的地址 | 每个分组都有完整的目的地址 | 仅在建立阶段,之后使用虚电路号 |
路由选择 | 每个分组独立进行选择和转发 | 属于同一虚电路的分组按同一路由转发 |
分组顺序 | 不保证有序到达 | 保证有序到达 |
可靠性 | 可靠性由用户主机保证 | 可靠性由网络保证 |
对网络故障的适应性 | 故障点分组丢失,其他分组改变路径可正常传输 | 所有经过故障结点的虚电路不可正常工作 |
差错处理和流量控制 | 用户主机进行流量控制,不保证数据报可靠性 | 可由分组交换网负责,也可由用户主机负责 |
注:虚电路不只是临时性的。
虚电路的服务包括永久性虚电路 PVC 和 交换型虚电路 SVC。前者提前定义,后者在会话结束后取消链接。
传输介质可分为 导向传输介质 和 非导向传输介质。前者中,电磁波被导向沿着固体媒介传播;后者则可以是空气、真空或海水等。
物理层考虑的是如何在连接到各计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。
物理层应尽可能屏蔽网络中的硬件设备、传输介质和通信方式的不同,对数据链路层透明。
物理层的主要任务可以描述为确定与传输媒体的接口有关的一些特性:
常用的物理层接口标准有:EIA RS-232-C、ADSL 和 SONET/SDH 等
功能:将数字信号整形并放大再转发出去。原理是信号再生
中继器消除了信号经过长段电缆后产生的失真和衰减,进而扩大网络传输距离。
中继器有两个端口,数据一端进一端出,而端口仅作用于信号的电气部分,不论是否有错误数据或不适于网段的数据。
如果某个网络设备具有存储转发功能,那么可以认为它能连接两个不同的协议,反之亦然。
而中继器没有此功能,它属于直通式设备而非存储转发,所以它不能连接两个速率不同的网段,它不能连接不同协议的网段。
集线器实际上是一个 多端口的中继器
集线器将接受到的一个端口数据进行整形放大,使之再生(恢复)后,转发到其他所有处于工作状态的端口。
当同时有多个端口输入时,输出会发生冲突,导致数据均无效。
详见本站文章 👉🏻 数据链路层-不只是链路| CN2
网络层向上提供简单灵活的、无连接的、尽最大努力交付的数据报服务。
路由器(router)是一台专用计算机,用于在互联网中进行路由选择。
主要完成两个功能:路由选择(确定哪一条路径)、分组转发(当一个分组到达时采用的动作)。
路由选择按照复杂的分布式算法,根据从各相邻路由器所得到的关于整个网络拓扑的变换情况,动态地改变所选择的路由。由此,会给路由器根据特定的路由选择协议构造路由表,同时经常定期地和相邻路由器交换路由信息不断更新和维护该表。
分组转发则是根据路由表得出的转发表将用户的 IP 数据报从合适的端口转发出去。
在讨论路由选择的原理时,往往不去区分转发表和路由表,而是笼统地使用“路由表”一词。
路由器与网桥的区别:
路由器的分组转发部分包括:
路由器的路由选择部分包括:
路由表的默认路由设置:[目的地址]0.0.0.0, [子网掩码]0.0.0.0
路由表包括(表头):目的网络、子网掩码、下一跳
静态路由又称非自适应路由算法,指由管理员手动配置路由信息。
动态路由又称自适应路由算法,指路由表可通过相互连接的设备之间的信息交换,按照一定算法优化出来,可不断更新。
协议 | RIP | OSPF | BGP |
---|---|---|---|
类型 | 内部 | 内部 | 外部 |
路由算法 | 距离-向量 | 洪泛法交换链路状态+Dijkstra | 路径-向量 |
传递协议 | UDP | IP | TCP |
路径选择 | 跳数最少 | 代价最低 | 较好,非最佳 |
子网掩码 | 不支持 | 支持可变长和无分类 CIDR | 支持 CIDR |
交换结点 | 相邻路由器(坏消息传得慢) | 所有路由器(使用 Hello 保持与邻居连接) | 相邻自治系统的BGP发言人/路由器 |
交换内容 | 本路由所知的全部信息 | 与本路由相邻的所有路由器的链路状态 | 首次:整个路由表 非首次:有变化的部分 |
软件定义网络(Software Defined Network,SDN)的概念最早由斯坦福大学的Nick McKeown教授于2009年提出。
它最初只是学术界讨论的一种新型网络体系结构,而当前SDN是网络领域最热门和最具发展前途的技术之一,成为近年来的研究热点。
SDN成功案例:谷歌于
2010~2012
年间建立的数据中心网络B4。
IP 数据报 首部长度如果不指明,默认 20B
。
IP 报文的分片和各字段的计算:
数据部分的编号从 0
开始
连接到互联网的每一个主机或路由器都被分配有 32 bit
的全球唯一标识符,即 IP 地址。
由此为互联网上的每一个网络和每一台主机分配一个逻辑地址,以屏蔽物理地址的差异。
IP 地址 主要由 网络号和主机号两部分组成。即:
1 | IP Address :: = {<Network Number>, <Host Number>} |
互联网早期采用分类 IP 地址
其中A、B、C 3类(如下表格)由 InternetNIC 在全球范围内统一分配,D、E类为特殊地址。
类别 | 最大网络数 | IP地址范围 | 单个网段最大主机数 | 私有IP地址范围 |
---|---|---|---|---|
A | 1.0.0.1-127.255.255.254 | 10.0.0.0-10.255.255.255 | ||
B | 128.0.0.1-191.255.255.254 | 172.16.0.0-172.31.255.255 | ||
C | 192.0.0.1-223.255.255.254 | 192.168.0.0-192.168.255.255 |
无分类编址 CIDR
子网划分的方法:
根据题目要求
DHCP(Dynamic Host Configuration Protocol),动态主机配置协议,是一个基于UDP的应用层协议。
当我们将客户主机 IP 地址设置为动态获取方式时,DHCP 服务器就会根据 DHCP 协议给客户端分配 IP,使得客户机能够利用这个IP上网。
DHCP客户端与DHCP服务器的交换过程如下:
0.0.0.0
,目的地址255.255.255.255
255.255.255.255
0.0.0.0
,目的地址255.255.255.255
255.255.255.255
为了提高 IP 数据报交付成功的机会,在网际层使用了网际控制报文协议 ICMP(Internet Control Message Protocol)。
ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP 不是高层协议,而是 IP 层的协议。ICMP 报文作为 IP 层数据报的数据,加上 IP 数据报的首部,组成 IP 数据报发送出去。
对ICMP差错报告报文不再发送ICMP差错报告报文
对第一个分片的数据报片的所有后续数据报片都不发送ICMP差错报告报文
对具有组播地址的数据报都不发送ICMP差错报告报文
对具有特殊地址(如127.0.0.0或0.0.0.0)的数据报不发送ICMP差错报告报文
回送请求和回答报文:主机或路由器向特定目的主机发出的询问,收到此报文的主机必须给源主机或路由器发送ICMP回送回答报文。测试目的站是否可达以及了解其相关状态
时间戳请求和回答报文:请某个主机或路由器回答当前的日期和时间。用来进行时钟同步和测量时间
掩码地址请求和回答报文(现在已经不再使用)
路由器询问和通告报文(现在已经不再使用)
PING:测试两个主机之间的连通性,使用了ICMP回送请求和回答报文。
Traceroute:跟踪一个分组从源点到终点的路径,使用了ICMP时间超过差错报告报文和ICMP回送请求和回答报文。
IPv6 有着如下几个特点:
4BF5:0:0:0:BA5F:39A:A:2176
IPv4 向 IPv6 过渡可以采用 双协议栈 和 隧道技术 两种策略。
前者是指设备同时装有两种协议栈,后者则是将 IPv6 的数据报封装为 IPv4 的数据部分进行串数。
为了支持例如视频点播、视频会议这样的多媒体应用,网络必须实施某种有效的组播机制。
希望让源计算机一次发送单个分组就可以抵达一组目标主机并均被按主机意愿正确接收。
因此,面向连接的 TCP 协议不适用,所以 组播一定仅应用于 UDP。
IP 组播地址使用 D 类地址格式。因为 D 类地址前四位是 1110,所以其地址范围是:224.0.0.0 ~ 239.255.255.255
。每个 D 类 IP 地址标志一个组播组,主机使用名为 IGMP(因特网组管理协议)的协议加入组播组。
移动结点、归属代理(本地代理)、外部代理(外埠代理)
区分:移动 IP、动态 IP、移动自组网络
冲突域 是指连接到同一物理介质上所有结点的集合,结点之间存在介值争用现象。
在 OSI 参考模型中,冲突域被视为第一层概念,由物理层设备(集线器、中继器)这种无脑复制转发信号的设备连接的结点都属于同一个冲突域。而第二层的网桥、交换机则可以将冲突域划分,同理,第三层的路由器也可。
广播域 是指接收同样广播信号的结点的集合。即在该集合内任一结点发送的广播帧其他结点都能收到。
在 OSI 参考模型中,冲突域被视为第二层概念,所以集线器、中继器,乃至网桥、交换机都不可以将冲突域划分,相反路由器就可以,即使用路由器可以分割广播域,抑制广播风暴。
通常所说的 LAN 局域网就特指使用路由器分割的网络,即广播域。
传输层只存在于通信子网以外的主机中。
传输层提供应用进程之间的逻辑通信,即端到端的通信。
传输层的服务访问点(SAP)是端口。
将区分主机的 IP 和区分进程的 端口 拼接起来即构成套接字 Socket。
熟知端口号
校验
三次握手,四次握手
乘法减小,加法增加
快重传是针对接收端,而
注意:计算中,问 次 RTT 都确认成功后的拥塞窗口,则说明此时已经步入第 步了。
三次握手的第三次,客户机已经可以携带数据了,即使此次不携带,也不消耗序号。
线路效率 = 吞吐率/信道带宽
超时时间发生时,cwnd
置1,而收到 3 个冗余 ACK 时, cwnd
减半。(后者通常在不随时取出缓存的服务器在缓存区满时发生)
C/S模型、P2P模型
DNS
FTP采用 C/S 工作方式,使用 TCP 可靠传输服务。
控制连接监听21号端口,数据连接通过20号端口。
数据连接有两种传输模式。
匿码 FTP 访问通常使用 anonymous 作为用户名。
电子邮件是一种异步通信方式。
邮件服务器采用 C/S 工作方式,但必须能同时充当客户和服务器。
SMTP 协议用于邮件发送,是“推送”(PUSH);POP3 协议则用于读取邮件,是“拉取”(PULL);比 POP 更复杂的一个邮件读取协议是 IMAP,提供了更多功能。
MIME 是多用途网际邮件扩充,并未改变 SMTP 或取代,而是在已有格式上增加邮件主体的结构,以实现用户之间更多的传送内容的需求。
SMTP 和 POP 在传输层均使用 TCP 可靠传输服务,SMTP 端口号为 25、POP 端口号为 110。
POP3 协议在传输层使用明文传输密码,并不对密码加密。
HTTP 使用 TCP 作为传输层协议,默认端口号为 80。但 HTTP 本身是无连接的,双方在交换 HTTP 报文之前,不需要先建立 HTTP 连接。
HTTP 是无状态的。同一个客户第二次访问同一个服务器的页面时,服务器不会记得曾经响应过该客户。通常会使用 Cookie + 数据库 的方式跟踪用户活动。
HTTP 有非持久连接和持久连接之分,持久连接又分非流水线和流水线两种方式。在请求报文的 Connection 字段中,如果 key 为 Close
则表示非持久连接,keep-alive
则相反。
应用程序 | FTP数据连接 | FTP控制连接 | TELNET | SMTP | DNS | TFTP | HTTP | POP3 | SNMP |
---|---|---|---|---|---|---|---|---|---|
使用协议 | TCP | TCP | TCP | TCP | UDP | UDP | TCP | TCP | UDP |
熟知端口号 | 20 | 21 | 23 | 25 | 53 | 69 | 80 | 110 | 161 |