From 747099b58217101c8b678987c04c6a2bbc7f5ad0 Mon Sep 17 00:00:00 2001 From: 2293736867 <2293736867@qq.com> Date: Mon, 10 May 2021 13:35:09 +0800 Subject: [PATCH] Computer network chapter1 --- ComputerNetwork/Chapter1/README.md | 205 +++++++++++++++++++++++++++++ 1 file changed, 205 insertions(+) create mode 100644 ComputerNetwork/Chapter1/README.md diff --git a/ComputerNetwork/Chapter1/README.md b/ComputerNetwork/Chapter1/README.md new file mode 100644 index 0000000..d91eed0 --- /dev/null +++ b/ComputerNetwork/Chapter1/README.md @@ -0,0 +1,205 @@ +# Table of Contents + +* [1 网络、互联网和因特网](#1-网络互联网和因特网) +* [2 `ISP`](#2-isp) +* [3 多层`ISP`结构](#3-多层isp结构) +* [4 因特网标准组织](#4-因特网标准组织) +* [5 因特网组成](#5-因特网组成) +* [6 三种交换方式](#6-三种交换方式) + * [6.1 电路交换](#61-电路交换) + * [6.2 分组交换](#62-分组交换) + * [6.3 报文交换](#63-报文交换) + * [6.4 比较](#64-比较) + * [6.4.1 优点](#641-优点) + * [6.4.2 缺点](#642-缺点) +* [7 网络的定义和分类](#7-网络的定义和分类) + * [7.1 定义](#71-定义) + * [7.2 分类](#72-分类) +* [8 性能指标](#8-性能指标) + * [8.1 速率](#81-速率) + * [8.2 带宽](#82-带宽) + * [8.3 吞吐量](#83-吞吐量) + * [8.4 时延](#84-时延) + * [8.5 时延带宽积](#85-时延带宽积) + * [8.6 往返时间](#86-往返时间) + * [8.7 利用率](#87-利用率) + * [8.8 丢包率](#88-丢包率) +* [9 计算机网络体系结构](#9-计算机网络体系结构) + * [9.1 `OSI`体系](#91-osi体系) + * [9.2 `TCP/IP`体系](#92-tcpip体系) + * [9.3 五层体系](#93-五层体系) +* [10 分层的必要性](#10-分层的必要性) + + +# 1 网络、互联网和因特网 +- 网络是由若干个结点和连接这些结点的链路组成 +- 多个网络还可以通过路由器互连起来,这样就构成了一个覆盖范围更大的网络,也就是互联网 +- 因特网就是世界上最大的互联网,连接在因特网上的计算机也叫主机 + +# 2 `ISP` + `ISP`就是因特网服务提供者(`Internet Service Provider`),普通用户通过`ISP`接入互联网,`ISP`可以从因特网管理机构申请到成块的`IP`地址,通过`ISP`接入互联网就可以进行通信了。 + +# 3 多层`ISP`结构 +- 第一层`ISP`:可以覆盖国际性区域范围 +- 第二层`ISP`:第一层`ISP`的用户,包括一些大公司以及第二层`ISP`,区域性或国家性覆盖规模 +- 第三层`ISP`:第二层`ISP`的用户,用户包括第三层`ISP`和一些公司,第三层`ISP`也叫本地`ISP`,用户包括一些普通用户、校园网等 + +# 4 因特网标准组织 +- 因特网协会`ISOC`,负责对因特网进行全面管理,以及在世界范围内促进其发展和使用 +- 因特网体系结构委员会`IAB`,负责管理因特网有关协议的开发 +- 因特网工程部`IETF`,负责研究中短期工程问题,主要针对协议的开发和标准化 +- 因特网研究部`IRTF`,从事理论方面的研究和开发一些需要长期考虑的问题 + +# 5 因特网组成 +可以分为边缘部分可核心部分: + +- 边缘部分:由所有连接在因特网上的主机组成,这部分由用户直接使用,用来进行通信和资源共享 +- 核心部分:由大量网络和连接这些网络的路由器组成,为边缘部分提供服务 + +# 6 三种交换方式 +## 6.1 电路交换 +电话交换机接通电话线的方式称为电路交换,电路交换的出现是为了代替电话之间的通话需要两两进行连接的情况。步骤如下: + +- 建立连接:分配通信资源(独占资源) +- 通话:一直占用通信资源 +- 释放连接:归还通信资源 + + +## 6.2 分组交换 +分组交换就是将数据分成一个个不同的包进行发送,其中各个角色的功能如下: + +- 发送方:构造分组、发送分组 +- 路由器:缓存分组、转发分组 +- 接收方:接收分组、还原报文 + +## 6.3 报文交换 +报文交换与分组交换比较类似,将数据分成一个个报文进行发送,而且对报文的大小没有限制,主要用于早期的电报通信网。 + +## 6.4 比较 +### 6.4.1 优点 +- 电路交换:通信时延小、有序传输、没有冲突、适用传输数据广、实时性强 +- 报文交换:无需建立连接、动态分配线路(提高线路可靠性、提高线路利用率)、提供多目标服务 +- 分组交换:无需建立连接、线路利用率高、简化存储管理(相对于报文交换,因为分组大小固定)、减少出错概率和重发数据量 + +### 6.4.2 缺点 +- 电路交换:建立连接时间长、线路独占、使用效率低、灵活性差、难以规格化 +- 报文交换:增加了转发时延、需要较大的存储缓存信息(报文大小没有限制)、需要传输额外的信息量(携带目标地址、源地址等信息) +- 分组交换:增加了转发时延、需要额外传输量、有可能出现乱序、丢失、重复分组的问题 + +# 7 网络的定义和分类 +## 7.1 定义 +一个比较好的定义是: +```bash +计算机网络主要是由一些通用的、可编程的硬件互连而成的,这些硬件并非专门用来实现某一特定目的,这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。 +``` +## 7.2 分类 +按交换技术分类: + +- 电路交换网络 +- 报文交换网络 +- 分组交换网络 + +按传输介质分类: + +- 有线网络 +- 无线网络 + +按覆盖范围分类: + +- 广域网:`WAN`,通常范围覆盖几公里到几千公里,功能是为核心路由器提供远距离高速连接,互连不同区域的城域网和局域网 +- 城域网:`MAN`,覆盖范围为一个城市,通常作为城市骨干网 +- 局域网:`LAN`,一般用微型计算机或工作站通过高速通信线路相连,覆盖范围比较小 +- 个域网:`PAN`,把属于个人使用的电子设备用无线技术连接起来的网络 + +按拓扑结构分类: + +- 总线型网络 +- 星型网络 +- 环形网络 +- 网状型网络 + +# 8 性能指标 +## 8.1 速率 +连接在计算机网络上的主机在数字信道上传送比特的速率,也称为比特率或者数据率,常用的单位为: + +- `bits/s`,简写为`bps` +- `kb/s`,相当于`10^3 b/s` +- `Mb/s`,相当于`10^3 * 10^3 b/s` + +## 8.2 带宽 +网络通信线路所能传送数据的能力,也就是单位时间内从网络中的某一点到另一点所能通过的最高数据率,单位和速率单位一致。 + +## 8.3 吞吐量 +单位时间内通过某个网络的数据量,如果说带宽是文字上的标称带宽,那么吞吐量就是实际带宽。 + +## 8.4 时延 +网络时延由发送时延、传播时延和处理时延组成: + +- 发送时延:就是数据包发送出来需要的时间,计算公式为分组长度除以网卡发送速率 +- 传播时延:就是数据包在传播过程中的时间,计算公式为信道长度除以电磁波传播速率(电磁波传播速率在不同介质中不同,自由空间中等于光速,铜线中为`2.3*10^8 m/s`,光纤为`2.0 * 10^8 m/s`) +- 处理时延:路由器查表转发的时延,没有固定计算公式,因为网络中的情况是时时变化的,繁忙程度每个时间点也不一样,同时各个机器软硬件情况也不一样,因此没有固定计算公式 + +## 8.5 时延带宽积 +传播时延与带宽的乘积,意义就是在单位时间内发送的比特的数量。 + +## 8.6 往返时间 +往返时间就是`RTT`,指的是从源主机发送分组开始,到源主机收到目的主机的确认分组为止的时间。 + +## 8.7 利用率 +利用率可以分为: + +- 信道利用率:用来表示某信道有百分之几的时间是被利用的 +- 网络利用率:全网络的信道利用率的加权平均 + +信道利用率并非越大越好,因为利用率越高,时延越大,利用率接近100%,时延趋于无穷大。 + +## 8.8 丢包率 +分组丢失率,指一定时间范围内传输过程中丢失的分组数量与总分组数量的比率。 + +# 9 计算机网络体系结构 +## 9.1 `OSI`体系 +`OSI`只是书面上的体系,从下到上分别是: + +- 物理层 +- 数据链路层 +- 网络层 +- 运输层 +- 会话层 +- 表示层 +- 应用层 + +但实际上`OSI`并没有成为实际意义上的标准,因为: + +- `OSI`专家们缺乏实际经验 +- `OSI`实现起来过分复杂,而且运行效率低 +- `OSI`制定周期过长,按标准制定出来的设备无法及时投入使用 +- `OSI`层次划分不太合理 + +## 9.2 `TCP/IP`体系 +`TCP/IP`体系是实际意义上的标准,从下到上分别是: + +- 网络接口层:并不规定具体内容,这样是为了互联各种网络接口 +- 网际层(也叫网络层):`IP`协议 +- 运输层:`TCP/UDP` +- 应用层:`HTTP`/`SMTP`/`DNS`等 + +## 9.3 五层体系 +由于`TCP/IP`并没有具体规定网络接口层的内容,因此在学习原理的时候采用一种折中的方法,将`TCP/IP`中的网络接口层划分为物理层和数据链路层,也就是说五层协议如下: + +- 物理层 +- 数据链路层 +- 网络层 +- 运输层 +- 应用层 + +# 10 分层的必要性 +- 物理层:解决使用何种信号传输比特的问题 +- 数据链路层:解决分组在一个网络上传输的问题 +- 网络层:解决分组在多个网络上传输的问题 +- 运输层:解决进程之间基于网络的通信问题 +- 应用层:解决通过应用程序的交互来实现特定网络应用的问题 + + + + + -- GitLab