1-计算机网络概述
飞书链接:https://j5xd30acha.feishu.cn/wiki/wikcnzJVqaN3iebKseSUv7sesgh
文章目录
1.1-计算机网络基本概念
1.1.1-什么是计算机网络
计算机网络 = 通信系统 + 计算机技术
计算机网络是通信技术与计算机技术紧密结合的产物
通信系统模型:
计算机网络就是一种通信网络
定义:
计算机网络就是一个互连的、自治的计算机的集合。
自治:计算机之间没有主从关系
互连:互联互通
![image-20220829150347957](https://i-blog.csdnimg.cn/blog_migrate/4801710b50d726d238103d0e061e4d7f.png)
在主机太多时,我们引入交换网络互连主机,其中交换节点称为路由器或交换机
![image-20220829150517580](https://i-blog.csdnimg.cn/blog_migrate/c929480e25b146bd06c7d20ed7688caf.png)
1.1.2-什么是Internet
计算机角度:
-
全球最大的互联网络
-
Internet通过ISP(Internet Service Provider)网络互连成为网络之网络
-
百万互连的设备的集合
- 主机(hosts) = 端系统(end systems)
- 这些主机都能运行各种网络应用
-
通信链路:卫星、无线电、光纤、、、
-
分组交换:数据的分组转发
![image-20220829150810649](https://i-blog.csdnimg.cn/blog_migrate/e21a2f9da3da6adeee64a4baece1e4bb.png)
服务角度:
- 为网络应用提供通信服务的通信基础设施
- 为网络应用提供API
问题:
Q:仅有硬件(主机、链路、路由器……)连接,Internet能否顺畅运行?能保证应用数据有序交付吗?
A:不能,我们还需要网络协议
1.1.3-什么是网络协议
硬件(主机、路由器、通信链路等)是计算机网络的基础
计算机网络中的数据交换必须遵守事先约定好的规则
![image-20220829151535804](https://i-blog.csdnimg.cn/blog_migrate/97aaf14acb4cc5894a74740b2e239877.png)
定义:
网络协议(network protocol),简称为协议,是为进行网络中的数据交换而建立的规则、标准或约定
协议规定了通信实体之间所交换的消息的格式、意义、顺序以及针对收到信息或发生的事件所采取的“动作”(actions)
协议三要素:
- 语法(Syntax):
- 数据或控制信息的结构或形式
- 语义(Semantic):
- 需要发送何种控制信息
- 完成什么动作,做出什么反应
- 差错控制
- 时序(Timing):
- 事件顺序
- 速度匹配
意义:
- 协议规范了网络中所有信息发送和接收过程
- e.g., TCP, IP, HTTP,Skype,802.11
- 学习网络的重要内容之一
- 网络创新的表现形式之一
- Internet协议标准
- RFC文档:request for comments
- IETF:互联网工程项目组
1.2-计算机网络结构
1.2.1-计算机网络结构
结构上:
- 网络边缘:主机、网络应用
- 接入介质、物理介质:有线、无线通信介质
- 网络核心:中继路由设备如交换机、路由器
网络边缘
构成:主机(端系统)
CS模型:客户发出请求,服务器响应请求,如web应用和FTP应用
P2P模型(对等应用模型):无专用服务器,通信在对等实体之间直接通信,如QQ、Skype
接入网络
接入网络要解决的问题
Q:如何将网络边缘接入核心网?
A:接入网络
- 家庭接入网络
- 机构接入(学校、公司
- 移动接入
用户关心:
- 带宽(bandwidth):每秒能传输多少信息
- 接入方式:独占/共享
eg:数字接入网络
-
利用已有的电话线连接中心局的DSLAM
-
数据通信通过DSL电话线接入Internet
-
语音(电话)通过DSL电话线接入电话网
-
-
< < < 2.5 Mbps上行传输速率(典型速率<1 Mbps)
-
< < < 24 Mbps下行传输速率(典型速率<10)
-
FDM:
- 50KHz - 1MHz 下行
- 4 kHz - 50 kHz用于上行
- 0 kHz - 4 kHz用于传统电话
eg: 电缆网络
HFC:混合光纤同轴电缆(hybrid fiber coax)
- ”非对称:下行高达30Mbps传输速率,上行为2Mbps传输速率
各家庭(设备)通过电缆网络一光纤接入ISP路由器
-
各家庭共享家庭至电缆头端的接入网络
-
不同于DSL的独占至中心局的接入
家庭接入网络
企业接入网络
主要用于公司、高校、企业等组织机构
典型传输速率:10 Mbps, 100Mbps, 1Gbps, 10Gbps
目前,端系统通常直接连接以太网交换机(switch )
无线接入网络
通过共享的无线接入网络连接端系统与路由器
- 通过基站(base station)或称为“接入点”(access point)
网络核心
关键功能:路由 + 转发
路由:确定分组从源到目的传输路径
转发:将分组从路由器的输入端口交换到正确的输出端口
网络核心通过数据交换实现了数据从源发送到目标
1.2.2-Internet结构
网络之网络:由很多网络互连的网络。
端系统通过接入ISP连接到Internet,接入ISP之间必须互连,构成复杂的网络互连的网络
ISP如何连接
- 每个ISP之间彼此互连
- 全球性ISP
- 内容提供商网络
- 如Google、微软
就近地为附近用户提供服务
结构
1.3-网络核心
数据交换:解决了如何将数据从源主机传输到目标主机的问题
N 2 N^{2} N2链路问题
如果主机数量特别大,主机距离特别远,那么效率就会很低。复杂度为 N ( N − 1 ) 2 \frac{N(N-1)}{2} 2N(N−1)
这时候就需要交换网络
动态转接
动态地在物理或逻辑上建立端口连接,将一个端口数据转移到另一个端口
电路交换
例子:电话网络
特点:
-
三个阶段:
- 电路建立(呼叫)
- 通信(说话)
- 释放连接(挂电话)
-
独占资源:即时不说话,连接也会被占用
多路复用
多路复用(Multiplexing),简称复用
通信链路的传输能力远大于一路的传输能力,可以多路共享一个技术
基本原理:将信道资源划分成资源片,将资源片分配给各路呼叫,每路呼叫独占分配到的资源片进行通信。
典型多路复用算法
- 频分多路复用FDM
- 在频率上进行划分
- 有线电视网络
- 每个用户占用自己的频率,分配后始终占用这个频带
-
时分TDM
- 时分复用则是将时间划分为一段段等长的时分复用帧(TDM帧),每个用户在每个 TDM帧中占用固定序号的时隙,每个时隙允许用户发送数据。
- 每个用户占用时隙周期性出现
-
波分WDM
- 光通信中光的频分复用
- 码分CDM
- 用于无线链路共享(蜂窝、卫星通信)
- 每个用户分配一个唯一的mbit码片序列(chipping sequence),其中“0”用“-1”表示、“1”用“+1”表示
- 各个用户使用相同频率的载波,利用各自码片序列编码序列
- 编码序号 = 原始数据
×
\times
× 码片序列
-
如发送比特 1(+1),则发送自己的mbit码片序列
-
如发送比特 0(-1),则发送该码片序列的mbit码片序列的反码
-
- 各个用户的码片序列相互正交: 1 m S i ⋅ S j = { 1 , i = j 0 , i ≠ j 1 m S i ⋅ S ‾ j = { − 1 , i = j 0 , i ≠ j \frac{1}{m} \boldsymbol{S}_{i} \cdot \boldsymbol{S}_{j}=\left\{\begin{array}{ll} 1, & i=j \\ 0, & i \neq j \end{array} \quad \frac{1}{m} \boldsymbol{S}_{i} \cdot \overline{\boldsymbol{S}}_{j}=\left\{\begin{array}{cc} -1, & i=j \\ 0, & i \neq j \end{array}\right.\right. m1Si⋅Sj={1,0,i=ji=jm1Si⋅Sj={−1,0,i=ji=j
报文交换与分组交换
报文:源应用发送信息整体
分组交换:源主机将报文拆分成较小的数据包。需要拆分重组、产生额外开销
存储转发
报文交换和分组交换都采用存储转发方式,只是数据包大小不同。
分组交换比报文交换更快、更灵活
例题
解:
![img](https://i-blog.csdnimg.cn/blog_migrate/ac8258f02afa4ab145857824dbdba101.png)
1.4-计算机网络性能
速率
数据率/比特率:数据传输速率
单位时间内传输数据流量,单位 bps、kb/s、mb/s
速率往往是额定速率
带宽
-
信号构成中最高频率和最低频率只差,单位Hz
-
数字信道能传输的最大数据率,单位bps
延迟
-
节点处理延迟:
- 差错检测
- 确定输出链路
- 通常小于ms级
-
排队延迟
- 等待输出链路可用
- 取决于路由器拥挤度
-
传输延迟L/R
- 分组长度L, bits
- 链路带宽R,bps
-
传播延迟
- 传播距离
- 介质
时延带宽积
时延带宽积 = 传播延迟 × 带宽 时延带宽积={传播延迟\times带宽} 时延带宽积=传播延迟×带宽
丢包
-
队列缓存容量有限
-
分组到达已满队列将被丢弃(即丢包)
-
丢弃分组可能由前序结点或源重发(也可能不重发)
吞吐量
表示在发送端与接收端之间传送数据速率(b/s)
-
即时吞吐量:给定时刻的速率
-
平均吞吐量:一段时间的平均速率
吞吐量取决于传输链路上的瓶颈链路
1.5-计算机网络体系结构
计算机体系结构是从功能上描述计算机网络结构,简称分层结构,每层遵循网络协议完成本层功能。
计算机网络体系结构是计算机网络的各层及其协议的集合
OSI模型
目的是支持异构网络系统的互联互通的理论模型
数据传输过程中层层封装
其中添加了控制信息(构造协议数据单元PDU),如地址信息,协议控制、差错检测、安全控制
物理层
解决了单一比特传输问题
-
接口特性:机械、电气、功能、规程
-
比特编码
-
数据率:与介质有关
-
比特同步:时钟同步技术
-
传输模式
- 单工(Simplex):电视
- 半双工(half-duplex):可以双向但是只能交替进行
- 双工(Duplex):双向同时收发数据,一般采用独立两个信道
数据链路层
解决了物理链路直接相连的相邻节点之间的数据传输,以帧为单位传输
-
负责**节点-节点(Node-to-node)**数据传输
-
组帧(Framing):组成一个数据帧,让接收端能成功切分数据
-
物理寻址:在帧头增加发送端/接收端的物理地址标识数据
-
流量控制:匹配发送端和接收端的速度,避免淹没接收端
-
差错控制:检测并重传顺坏、丢失帧,避免重复帧
-
介入访问控制
网络层
负责源主机到目的主机数据分组(packet)的交付
-
可能跨越多个网络
-
逻辑寻址:全局唯一的逻辑地址(IP),保证正确送达
路由Routing:
- 路由器互连网络,分组至目的主机
传输层
从会话层得到数据,然后传给网络层
负责 源——目的(端到端)(进程间)完整报文传输
-
分段与重组
-
SAP寻址:确保将完整报文传给进程如端口号
-
流量控制(部分)
-
连接控制(第一个端到端层)
-
差错控制(差错编码、差错纠正)
会话层
对话控制(dialog controlling):建立维护会话
同步(sync):插入同步控制点,可以恢复会话
功能最少
表示层
-
解决两个系统交换信息的**语法和语义(syntax and semantics)**问题
-
数据表示转化,大端数、小端数
-
加密解密、压缩解压缩
应用层
应用根据不同协议处理数据
支持用户通过用户代理或网络接口使用网络
如:HTTP、FTP、SMTP
TCP / IP 参考模型
大部分模型都基于 TCP、UDP 模型,所有应用都建立在 IP 之上,IP 可以应用到各式各样网络。
5层参考模型
综合 OSI 和 TCP/IP
-
应用层:FTP、SMTP、HTTP
-
传输层:TCP、UDP
-
网络层:IP
-
链路层:以太网、WiFi、PPP
-
物理层:比特传输