第一章. 计算机网络概述

以下是湖科大计算机网络公开课的笔记:

第一章 计算机网络概述

1.三种交换方式

电路交换、分组交换、报文交换(Circuit Switching、Packet Swithcing、Message Switching)

1.1 电路交换

如果电话与电话之间都需要两两连接才能通信的话,那这样需要的电话线太多,n个电话需要n(n - 1)/2,所以有电话交换机引出。电话交换机在所有电话之间作为媒介,电话都和它连接而不需要两两连接。

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

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

三个步骤:建立连接、通话、释放连接

如果用电路交换来传送计算机数据,效率会很低:因为计算机数据是突发式地出现在传输线路上,比如用户正在输入和编辑一份待传输的文件时,该用户占用的通信资源自己没用上,别人也无法利用,从而造成资源浪费,因此计算机网络通常采用分组交换

1.2 分组交换 ——重点

英特网中最重要的分组交换机就是路由器,它将各个网络互联起来并对接收到的分组进行转发(分组交换)

把要发送的消息(整块数据,比如一个文档)称为一个报文,发送报文前,发送源主机先将较长的报文划分为多个更小的等长数据段,在每个数据段前面加上一些必要的控制信息(比如目的地地址)组成的首部,就构成了一个分组,也可简称为,首部就叫包头。

分组交换机就根据首部的目的地址来查表转发,发到目的地主机,然后目的地主机将各数据段去掉首部,组合,还原出原始报文

传输过程的多种情况:

各分组传输过程有不同路径即不同路由分组乱序,即分组达到目的地的顺序不一定和分组在源站的发送顺序相同;才外还有传输过程的分组丢失、误码、重复

发送方: 构造分组、发送分组

路由器: 缓存分组、转发分组

接收方: 接收分组、还原报文

1.3 报文交换

报文交换中的交换节点也采用存储转发方式,但 报文交换对报文大小没有限制,这就要求交换节点有较大的缓存空间(也就是不分组了,直接报文多大都发送)。报文交换主要用于早期的电报通信网,现在较少使用,通常被先进的分组交换方式所取代

1.4 三种交换方式的区别:

(1)电路交换需要提前建立连接(建立连接的耗时挺大)然后发送报文;分组交换随时可以发送分组,不需要先建立连接,只是需要先把报文分组,然后分组在各结点交换机上存储转发,各个交换机在发送分组的同时还缓存收到的分组。

(2)电路交换在连接后,中间各交换节点就是直通形式,比特流可以直达终点,有序的,延时最小的;分组交换则是构成原始报文的一个个分组,在各节点交换机上存储转发

报文交换主要是没分组,其它和分组交换一样。

(3)分组交换相比报文交换,减少了转发时延,还可以避免过长报文长时间占用链路,同时也有利于进行差错控制(毕竟一个消息分成了多组) —— 分组的意义

2.计算机网络的分类(了解)

按上述交换技术不同可以分为对应的三类、按使用者可以分为专用和公用、按传输介质可以分为有线网络和无限网络、按覆盖范围分:广域网WAN、城域网MAN、局域网LAN、个域网PAN

3.计算机网络的评价指标

常用八个评价指标:速率、带宽、吞吐量、时延、时延带宽积、往返时间、利用率、丢包率

3.1 速率

速率的数据量单位一般是比特,bit,简写为b,和字节Byte简写B区分。此外,速率的k是小写,kb/s是一秒钟传输1000比特,大写的KB是1024字节,即2^10B。M、G、T也和存储的不一样,但是大致相等,见下图,右边是速率的单位,左边是存储单位,例1页说明了这种转变不是八倍这么简单,他们的M代表的含义都不一样:
在这里插入图片描述
有时候有些厂家卖的硬盘写的250GB,这个G不是2的30次方,是日常常用的10的9次方,所以才会插入电脑后发现250GB只有232.8GB也是这个原因。

3.2 带宽

带宽在模拟信号系统中的意义:信号所包含的各种不同频率成分(人声、打雷)所占据的频率范围。单位Hz(kHz、MHz、GHz),比如在传统的通信线路上传送的电话信号的标准带宽为3.1kHz(这是个差值), 因为话音的主要成分的频率范围是300Hz~3.4kHz(3.4 - 0.3 = 3.1kHz)

计算机网络中的带宽:用来表示网络的通信线路所能传输数据的能力,因此网络带宽表示在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”可见这里的带宽不是宽度,范围,而是最大速率。单位和速率一样:b/s、 Mb/s、Gb/s、Tb/s。(数字信号系统的带宽描述的是通信线路传输数据的能力)

比如别人说自己家网络出口带宽为200M,其实完整描述是 最高速率为200Mb/s(200兆比特每秒)

这两种对带宽的描述是有密切联系的:

一条通信线路的“频带宽度”越宽,其所传输数据的“最高数据率”也越高:
在这里插入图片描述
3.3 吞吐量

吞吐量表示在单位时间内通过某个网络(或信道、接口)的数据量

吞吐量经常别用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能通过网络。

吞吐量显然受限于网络的带宽或额定速率

3.4 时延

源主机将分组发往传输线路,需要花费一定时间,这段时间称为发送时延

代表分组的电信号在链路上传输,也需要花费时间,这段时间称为传播时延

路由器收到分组后,对其进行存储转发,这段处理时间称为处理时延

因为源主机和目的主机之间会由多条链路和多个路由器构成,因此会有多个传播时延和处理时延

所以,网络时延由三部分构成:发送时延、传播时延、处理时延

发送时延:

是分组长度 / 发送速率,而发送速率由网卡的发送速率、信道带宽、接口速率三个一起限制:
在这里插入图片描述
所以,构建网络时应做到各设备间以及传输介质的速率匹配

传播时延:

显然就是信道长度(单位米,m)除以电磁波在介质中的传播速率(如铜线中是2.3 x 10^8 m/s)。信道就是传输信号的通道,距离远时就不算线路长度,而是按源主机和目的地主机间的距离

处理时延:

由路由器繁忙程度、路由器软硬件性能而定,有的书上还有排队时延,这里把排队时延合并到处理时延里

3.5 时延带宽积

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

因为带宽是单位时间发送的数据量,传播时延就是两点间传输需要多少时间,所以时延带宽积就是这条信道上在同一时刻有多少数据量,相当于流水管道的体积

所以,若发送端连续发送数据,则在发送的第一个比特即将到达终点时,发送端就已经发送了时延带宽积个比特的数据。链路的时延带宽积又被称为以比特为单位的链路长度

3.6 往返时间

往返时间RTT(Round-Trip Time)是从源主机发送分组开始,知道源主机收到来自目的主机的确认分组为止。

在许多情况下,因特网上的信息不单单是单向传输,而是信息交互,所以有时候需要知道双向交互一次所需的时间

3.7 利用率

分信道利用率和网络利用率。

信道利用率是指信道有多少比例的时间有数据在通过;网络利用率则是整个网络信道利用率的加权平均。

信道利用率不是越高越好,太高造成网络延时大,低了则浪费通信资源

注意下图,纵坐标D为网络时延,横坐标为网络利用率
在这里插入图片描述
3.8 丢包率

丢包率即分组丢失率,是指在一定时间范围内,传输过程中丢失的分组数量与总分组数量的比率

可分为接口丢包率、节点丢包率、链路丢包率、路径丢包率、网络丢包率

普通用户感觉不到网络丢包,但网络运维人员很关心

分组丢失主要分两组情况:

(1)分组在传输过程中出现误码(被节点交换机检测出分组有误码),被节点丢弃;

(2)分组到达一台队列已满的分组交换机时被丢弃网络拥塞造成丢包

需要说明的是,路由器会根据自身的拥塞控制方法,在输入缓存还未满的时候就主动丢弃分组。

丢包很多说明很多路由器都满了,网络繁忙,拥塞严重

因此丢包率就反映了网络的拥塞情况:无拥塞1时丢包率为0,轻度拥塞时路径丢包率为1%4%,严重拥塞时路径丢包率为5%15%。当网络丢包率较高时,网络应用无法正常工作。

4. 计算机网络体系结构

4.1常见的计算机体系结构

IP协议的中文意思是网际协议,因此TCP/IP结构的网络层常称为网际层
在这里插入图片描述
会话层、表示层和运输层可以合并为一个运输层,都是解决进程间通信的问题

TCP/IP四层网络体系结构一般记忆为: 应用层、传输层、网络层、数据链路层, 如下:
在这里插入图片描述
陈硕书里的TCP/IP协议族体系结构

图中的ICMP协议(网际控制报文协议)也是网络层的一个重要协议,使用ICMP协议封装的协议数据单元还需要使用IP协议封装成IP数据报,之后才能发送,也就是说,IP协议也直接为ICMP协议提供服务(习题课补充)

主机中通常都有f符合TCP/IP体系结构的TCP/IP协议族,而用于网络互连的路由器中也带有TCP/IP协议族,不过路由器一般只包含网络层和数据链路层(本课的网际层、网络接口层)

TCP/IP体系结构对网络接口层并没有具体的规定,是为了能互连全世界不同的网络接口(比如有线的以太网接口、无线局域网的WiFi接口),因此本质上TCP/IP协议只有上面三层,IP协议是该体系结构的核心协议,因为TCP和IP协议是其中非常重要的两个协议,因此用它两来表示整个协议大家族。
在这里插入图片描述
中间这个R就是路由器,它有网络层,而交换机switch没有,它只有OSI的数据链路层和物理层,在TCP/IP中就是最下面一层,集线器Hub则只有物理层

前面说过,因为TCP/IP体系结构为了将不同的网络接口进行互连,所以它对网络接口层没有什么具体的内容。为了更完整的学习计算机网络原理,往往采用折中的办法,综合OSI七层模型和TCP/IP体系的优点,采用一种五层协议的原理体系结构。

即把最底层的网络接口层(数据链路层)重新划分为数据链路层和物理层
在这里插入图片描述
4.2 分层的必要性

如果不分层,那么整个网络从用什么线路、什么信号表示、主机标识、路由选择、进程间通信、网络应用都要放在一块解决,而将它们分层后,则可以分开解决,很多时候我们只需要处理自己关心的问题,比如仅关注传输层(进程间通信)。

物理层:解决使用何种信号来传输比特的问题。我们把用什么传输介质(什么线、什么形状的物理接口),使用方波信号还是什么信号传输比特等问题,我们将这些问题划归到物理层。当然,严格来说传输媒体不属于物理层,它并不包含与体系结构中。

**数据链路层:解决分组在一个网络(或一段链路)上传输的问题。**在局域网中多采用以太网交换机将多台主机互连形成的交换式以太网。那么以太网交换机是如何标识网络中各主机的(主机编址如MAC地址)、如何从信号所表示的一连串比特流中区分出地址和数据、如何协调各主机争用网络。

**网络层:解决分组在多个网络上传输(路由)的问题。**在某小型互联网中,有3个路由器,四个网络互连。前面数据链路层只有一个网络,不需要对网络进行标识。现在有多个网络,则需要标识各网络以及网络中的各主机(网络和主机共同编址,如IP地址);因为分组到达目的主机有多种路径,于是又出现了路由器如何转发这些分组以及如何进行路由选择…
在这里插入图片描述
如图,网络N1的网络号为192.168.1,该网络上的笔记本电脑,服务器,路由器接口的IP地址的前3位数应该都是192.168.1,第四个数则标识自己;网络N2上的第三位则和N1不同了,从而区分了不同网络

**运输层:解决进程之间基于网络的通信问题。**主机收到来自服务器的分组,那这些分组应该交给QQ进程还是浏览器进程;如果某个分组传输过程中出现了误码或者由于路由器繁忙导致路由器丢弃了该分组,出现这种传输错误该如何分组(如TCP协议有重发,拥塞控制)

**应用层:解决(通过应用进程的交互)实现特定网络应用的问题。**上面四层问题解决了,就可以实现进程之间基于网络的通信,在此基础上只需制定各种应用层协议并按协议标准编写相应的应用程序,通过应用进程间的交互来完成特定的网络应用。应用层协议如:支持万维网应用的HTTP协议、支持电子邮件的SMTP协议、支持文件传送的FTP协议

由上可知,如果程序员需要同时考虑怎么解决上述所有问题显然很麻烦,不如将这些问题分作不同模块(网络分层),逐个解决——分治思想

4.3 分层思想举例

这节课讲了客户端浏览器进程web服务器进程之间数据的传输、信息交互的整个过程。即客户端这边层层封装报文,然后路由器解析IP数据报的首部,从中提取出目的网络的地址,然后查找自身路由表确定转发端口,又往下封装,发到服务器后服务器又层层解封,然后解析客户端的http请求报文,然后发送响应报文。——这个完整过程可以在学完整个计算机网络后再看几遍。

当然,为了简化该过程,没有说报文分组。

具体可以看视频【计算机网络微课堂(有字幕无背景音乐版)】 https://b23.tv/vySOHMP

或者看小林coding——键入网址到网页显示,发生了什么:https://xiaolincoding.com/network/1_base/what_happen_url.html#%E5%AD%A4%E5%8D%95%E5%B0%8F%E5%BC%9F-http

4.4 计算机网络体系结构中的专用术语

最具代表性的三个:实体、协议、服务

实体:任何可发送或接收信息的硬件或软件进程;对等实体: 收发双方相同层次中的实体,比如两个正在通信的主机的网卡,正在通信的应用进程(主机的浏览器进程和服务器的web服务进程)

协议:控制两个对等实体进行逻辑通信的规则的集合。如应用层协议HTTP

服务:向上一层提供服务,如链路层提供的服务使得网络层能实现网络层协议并通信。协议是水平的,服务是垂直的。上层使用下层所提供的服务必须通过与下一层交换一些命令,这些命令称为服务原语。同一系统(同一主机)内,相邻的层与层之间实体交换信息的逻辑接口叫服务访问点,它用于区分不同的服务类型。

不同层次之间传送的数据包名字也不一样:
在这里插入图片描述

5.习题课

错题思考:

1.端到端的服务指的是两台主机之间进程的通信,因此是传输层提供的,而网络层解决的是信息在多个网络上传输的(路由)问题
在这里插入图片描述
2.TCP/IP参考模型的网络层,即IP协议,它是无连接的,不可靠的
在这里插入图片描述
3.可靠传输,对于无线链路,还属于数据链路层的功能
在这里插入图片描述
看来OSI七层模型也是挺重要的

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值