1.2 因特网概述_哔哩哔哩_bilibili

在以上视频进行学习

1. 网络、互联网和因特网

网络是由若干节点和连接这些节点的链路组成

多个网络可以通过路由器互联起来,构成一个覆盖范围更大的网络,即互联网。因此互联网是“网络中的网络”

因特网是世界上最大的互联网络

  • internet是一个通用名词,泛指由多个计算机网络互联而成的网络
  • Intern(因特网)则是一个专用名词,指当前最大的、开放的、由众多网络相互连接而成的特定计算机网络,采用TCP/IP协议族作为通信的规则,前身是美国的ARPANET。

ISP(Internet Service Provider)

向广大用户综合提供互联网接入业务、信息业务和增值业务的电信运营商。

2.三种交换方式

电路交换(Circuit Switching)

就是中间有一个电话交换机负责转发

电话交换机接通电话线的方式称为电路交换

从通信资源的分配角度来看,交换就是按照某种方式动态地分配传输线路的资源‘

电路交换的三个步骤:

  1. 建立连接(分配通信资源)
  2. 通话(一直占用通信资源)
  3. 释放连接(归还通信资源)

当使用电路交换来传送计算机数据时,其线路的传输效率往往很低。

分组交换(Packet Switching)

采用存储转发技术。实质上是采用了在数据通信过程中动态分配传输带宽。将报文分成更小的等长的数据段,每一个数据段加上一些控制信息(源地址和目的地址等)后组成首部。分组又称为包。

报文交换(Message Switching)

报文交换也采用存储转发的方式,但对报文的大小没有限制,这就要求交换节点需要较大的缓存空间。

三种方式的对比

图片来源:1.3 三种交换方式:电路交换、分组交换和报文交换_哔哩哔哩_bilibili

虚电路:

来源:计算机网络(12)物理层:数据报与虚电路_虚电路和数据报的过程-CSDN博客

是分组交换的两种传输方式之一。在通信和网络中,虚电路是由分组交换通信所提供的面向连接的通信服务。在分组发送之前,要求在发送发和接收发建立一条逻辑上的虚电路,而且连接一旦建立,就固定了虚电路所对应的物理路径。与电路交换类似,整个通信过程分为三个阶段:虚电路建立,数据传输,虚电路释放。

虚电路的好处:

虚电路的优点有哪些 虚电路通信影响因素 - 与非网

1.较小的延迟和丢包率

由于虚电路在传输数据之前已经建立了连接。所以在传输过程中不需要在进行地址查找等操作,从而可以减小数据传输的延迟和丢包率。

2.提供资源保证

虚电路依赖于网络的资源预留机制,通过提前预留一定的带宽、缓存等资源,在数据传输时可以更好地保障服务质量

3.可靠性较高

虚电路通过建立连接来保证数据传输。可以根据确认/重传机制等方法来进行数据的可靠传输

4.灵活性较高

虚电路具有一定的灵活性,在建立连接盒数据传输过程中可以根据具体需求对协议和参数进行调整和修改

3.计算机网络的分类

按区域

  • 广域网WAN
  • 城域网MAN
  • 局域网LAN
  • 个域网PAN

按拓扑结构:

  • 总线型网络
  • 星型网络
  • 环型网络
  • 网状型网络

4.计算机网络的性能指标

图片来源:1.5 计算机网络的性能指标(2)_哔哩哔哩_bilibili

性能指标可以从不同的方向来度量计算机网络的性能

指标:速率、带宽、吞吐量、时延、时延带宽积、往返时间、利用率

速率

带宽

吞吐量

  • 吞吐量表示在单位时间内通过某个网络(或信道、接口)的数据量
  • 吞吐量被经常用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络
  • 吞吐量受网络的带宽或额定速率的限制。

时延

网络时延由发送时延、传播时延和处理时延组成。

时延带宽积

时延带宽积=传播时延×带宽

往返时间

在许多情况下,因特网上的信息不仅仅单方向传输,而是双向交互

往返时间RTT(Round-Trip Time)也是一个重要的性能指标

利用率

利用率由信道利用率和网络利用率组成

  • 信道利用率:用来表示某信道有百分之几的时间是被利用的(有数据通过)
  • 网络利用率:全网络的信道利用率的加权平均。

丢包率

丢包率即分组丢失率,是指在一定的时间范围内,传输过程中丢失的分组数量与总分组数量的比率;分组丢失的两个主要原因:分组误码,结点交换机缓存队列满(网络拥塞

5.TCP/IP四层模型

OIS七层:应用层,会话层,表示层,传输层,网络层,数据链路层,物理层

TCP/IP四层协议,从上至下分别是:应用层,运输层,网际层,网络接口层

相关协议:

  • 应用层:HTTP,SMTP,DNS,FTP
  • 运输层:TCP,UDP
  • 网际层:IP

应用层:解决通过应用进程的交互来实现特定网络应用的问题

运输层:解决进程之间基于网络的通信问题(一个主机上同时有浏览器和qq,应该发给谁)

网络层:解决分组在多个网络上传输(路由)的问题

数据链路层:解决分组在一个网络(或一段链路)上传输的问题

物理层:解决使用何种信号来传输比特的问题,传输介质

协议

控制两个对等实体进行逻辑通信的规则的集合

协议的三要素:

  • 语法:定义所交换信息的格式
  • 语义:定义收发双方所要完成的操作
  • 同步:定义收发双方的时序关系

协议数据单元PDU(Protocal Data Unit)

对等层次之间传送的数据包称为该层的协议数据单元

  • 物理层:比特率(bit stream)
  • 链路层:帧(frame)
  • 网络层:数据包:IP数据报或分组(packet)
  • 运输层:TCP数据段(segment)或 UDP(datagram)
  • 应用层:报文(message)

服务数据单元SDU

同一系统内,层与层之间交换的数据包称为服务数据单元

多个SDU可以合成一个PDU;一个SDU也可以划分为多个PDU

注意:

传输层使用端口号为应用层的应用进程之间提供端到端的逻辑通信,而网络层仅仅为主机之间提供逻辑通信

6.物理层

传输媒体

  • 导引型传输媒体:双绞线。同轴电缆,光纤
  • 非导引型传输媒体:微波通信(2~14GHZ)比如WIFI

传输方式

  • 串行/并行
  • 同步/异步
  • 单工/半双工/全双工

编码和调制

数据为了传输都需要转变成信号。把数据变换为模拟信号的过程称为调制,把数据变换为数字信号的过程称为编码

码元:在使用时间域的波形表示数字信号时,代表不同离散数值(0或1)的基本波形

曼彻斯特编码

是一种同步时钟编码技术。通过电平的高低来表示0或1。码元的跳变既表示时钟,也表示数据。

差分曼彻斯特编码即跳变仅表示时钟,码元开始处电平是否发生变化表示数据。

基本调制方法

混合调制举例——正交振幅调制QAM(Quadrature Amplitude Modulation)

QAM-16

  • 12种相位
  • 每种相位有1或2种振幅可选
  • 可以调制出16种码元(波形),每种码元可以对应表示4个比特
  • 码元与4个比特对应关系采用格雷码,任意两个相邻码元只有1个比特不同

格雷码

在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code),另外由于最大数与最小数之间也仅一位数不同,即“首尾相连”,因此又称循环码反射码

信道的极限容量

失真严重无法识别信号,失真的主要因素:

  • 码元传输速率
  • 信号传输距离
  • 噪声干扰
  • 传输媒体质量

奈氏准则

在假定的理想条件下,为了避免码间串扰,码元传输速率是有上限的。

理想低通信道的最高码元传输速率 = 2W Baud = 2W 码元/秒

理想带通信道的最高码元传输速率 = W Baud = W 码元/秒

W:信道带宽(单位为Hz)

Baud::波特,即码元/秒

注:

理想低通信道:所有的低频分量,只要频率不超过某个上限值,都能够不失真地通过此信道。而超过上限值的所有都不能通过

带通信道:只运行在上下限范围之间的信号频率不失真地通过

码元传输速率又称为波特率、调制速率、波形速率或符号速率。他与比特率有一定的关系:

  • 当1个码元只携带1比特的信息量时,则波特率(码元/秒)与比特率(比特/秒)在数值上时相等的;
  • 当1个码元携带n比特的信息量时,则波特率转换成比特率时,数值要乘n

要提高信息传输速率(比特率),就必须设法使每一个码元能携带更多个比特的信息量。这需要采用多元制。

实际的信道所能传输的最高码元速率,要明细低于奈氏准则给出的这个上限数值。

香农公式

带宽受限且有高斯白噪声干扰的信道的极限信息传输速率

在信道带宽一定的情况下,根据奈氏准则和香农公式,要想提高信息的传输速率就必须采用多元制和努力提高信道中的信噪比。

7.数据链路层

链路(Link):就是从一个结点到相邻结点的一段物理线路,而中间没如何其他的交换节点

数据链路(Data LINK):是指把实现通信协议的硬件软件加到链路上, 就构成了数据链路

数据链路层以为单位传输和处理数据

数据链路层的三个主要问题:封装成帧,差错检测,可靠传输

以太网的媒体介入控制协议 CSMA/CD(Carrier Sense Multiple Access/Collision Detection)

基本原理:每个节点都共享网络传输信道,在每个站要发送数据之前,都会检测信道是否空闲,如果空闲则发送,否则就等待。在发送出信息后,则对冲突进行检测,当发现冲突时,则取消发送。

封装成帧

封装成帧是指数据链路层给上层的协议数据单元添加帧头和帧尾使之成为帧

  • 帧头和帧尾中包含有重要的控制信息
  • 帧头和帧尾的作用之一就是帧定界

透明传输是指数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样。

  • 面相字节的物理链路使用字节填充(或字符填充)的方法实现透明传输
  • 面向比特的物理链路使用比特填充的方法实现透明传输(HDLC协议)

高级数据链路控制(HDLC, High-level Data Link Control)

考虑到差错控制等多种因素,每一种数据链路层协议都规定了帧的数据部分的长度上限,即最大传送单元MTU(Maximum Transfer Unit)

差错检验

实际的通信链路都不是理想的,比特在传输过程中可能会产生差错:1可能变成0,而0也可能变成1.这称为比特差错

在一段时间内,传输错误的比特所占传输比特总数的比率称为误码率BER(Bit Error Rate)

使用差错校验码(比如fcs字段)来检测传输过程中是否产生了比特差错,是数据链路层所要解决的重要问题之一。

奇偶校验

在待发送的数据后面添加1位奇偶校验位,使整个数据(包括所添加的检验位内)中“1”的个数为奇数(奇校验)或偶数(偶校验)。

如果有奇数个位发生误码,则奇偶性发送变化,可以检查出误码;

如果有偶数个位发生误码,则奇偶不发生变化,不可以检查出误码。

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐