课程地址:【计算机网络微课堂(有字幕无背景音乐版)】 https://www.bilibili.com/video/BV1c4411d7jb/?share_source=copy_web&vd_source=b1cb921b73fe3808550eaf2224d1c155
目录
1 因特网服务提供者ISP-Internet Service Provider
1 概述
1.1 计算机网络在信息时代的作用
- 计算机网络已由一种 通信基础设施 发展成为一种重要的 信息服务基础设施。
- 计算机网络已经像水、电、煤气这些基础设施一样,成为我们生活中不可或缺的一部分。
CNNIC 中国互联网络信息中心
官网网站 www.cnnic.net.cn
目前是第53次中国互联网络发展状况统计报告。
其中一些相关数据,包括网民规模和互联网普及率、手机网民规模及其占网民比例、网民平均每周上网时长、网民各类互联网应用的使用率(即时通信、搜索引擎、网络新闻、网络视频、网络购物、网上支付、网络音乐、网络游戏、网络文学、网上银行、旅行预订、网上订外卖、网络直播、微博、网约专车或快车、网约出租车、在线教育、互联网理财、短视频)。
互联网之父温顿瑟夫:既然你无法逃避接触Internet,那么为何不去了解它并且使用它呢?
1.2 因特网概述
要求:对1和4做到理解,对2和3做到了解。
1.2.1 网络、互连网(互联网)和因特网
- 网络 Network,由若干结点(Node)和连接这些结点的链路(Link)组成。
- 多个网络还可以通过路由器互连起来,这样就构成了一个覆盖范围更大的网络,即互联网(互连网)。因此,互联网是“网络的网络(Network of Networks)”。
- 因特网(Internet)是世界上最大的互连网络(用户数以亿计,互连的网络数以百万计)。
- internet与Internet的区别
- internet(互联网或互连网),是一个通用名词,泛指由多个计算机网络互连而成的网络,在这些网络之间的通信协议可以是任意的。
- Interent(因特网),是一个专用名词,指的是当前全球最大的、开放的、由众多网络相互连接而成的特定计算机网络,采用TCP/IP协议族作为通信的规则,其前身是美国的ARPANET。
连接在因特网上的计算机称为主机。
因特网内部细节,即路由器如何把许多网络连接起来的,往往省略不给出。
1.2.2 因特网发展的三个阶段
从单个网络ARPANET向互联网发展 → 逐步建成三级结构的因特网 → 逐步形成了多层次ISP结构的因特网
1 因特网服务提供者ISP-Internet Service Provider
普通用户如何接入到因特网?实际上,是通过ISP接入因特网的。
ISP可以从因特网管理机构申请到成块的IP地址,同时拥有通信线路以及路由器等连网设备。
任何机构和个人只要向ISP缴纳规定的费用,可以从ISP得到需要的IP地址。(因特网上的主机都必须有IP地址才能进行通信)。
我国主要的ISP是中国电信、中国联通和中国移动三大电信运营商。
三大运营商国际出口带宽如下(某年),带宽,稳定性,价格等
2 基于ISP的三层结构的因特网
根据提供服务的覆盖面积大小及所拥有的IP地址数量的不同,ISP也分不同的层次。
第一层ISP,最高级别的第一层ISP的服务面积最大,通常被称为因特网主干网,一般都能覆盖国际性区域范围,并拥有高速链路和交换设备。第一层ISP直接互连。
第二层ISP,第二层ISP和一些大公司是第一层ISP的用户,通常具有区域性或国家性覆盖规模,与少数第一层ISP相连接。
第三层ISP,称为本地ISP,是第二层ISP的用户,只拥有本地范围的网络,一般的校园网或企业网,以及住宅用户和无线移动用户。
从下图可以看出,因特网逐渐演变成基于ISP的多层次结构网络。
但今天的因特网由于规模太大,已经很难对整个网络的结构给出细致的描述。
下图的情况是经常遇到的,相隔较远的两台主机之间的通信可能需要经过多个ISP(ps:一个某个用户能够接入到因特网,那么他就可以称为一个ISP,只需要购买一些调制解调器或路由器等设备,让其他用户可以与他相连,因此下图仅是一个示意图)。一个ISP可以轻易在因特网拓扑上增添新的层次和分支。
1.2.3 因特网的标准化工作
1.2.4 因特网的组成
因特网的拓扑结构十分复杂,且在地理上覆盖了全球。但从功能上看可以划分为以下两部分。
边缘部分
核心部分
在网络核心部分其特殊作用的是路由器,是一种专用计算机,但不称他为主机。路由器是实现分组交换的关键构件,任务是转发收到的分组,这是网络核心部分最重要的功能。
1.3 三种交换方式
1.3.1 电路交换 Circuit Switching
- 电话交换机接通电话线的方式称为电路交换。
- 从通信资源的分配角度来看,交换 Switching 就是按照某种方式动态地分配传输线路的资源。
- 电路交换的3个步骤
- 建立连接(分配通信资源)
- 通话(一直占用通信资源)
- 释放连接(归还通信资源)
思考:使用电路交换来传送计算机数据,是否可行?
使用电路交换来传送计算机数据时,其线路的传输效率往往很低。
因为计算机数据是突发式出现在传输线路上。场景:当用户正在输入和编辑一份待传输的文件时,用户所占用的通信资源暂时未被利用,该通信资源也不能被其他用户利用,宝贵的通信线路资源被浪费了。
因此,计算机网络通常采用分组交换,而非电路交换。
详细知识如下。
在电话问世后不久,人们发现将所有的电话机两两连接,是不现实的,例如两部电话只需要用一对电线就能连接起来,但5部电话,两两相连需要10对电线,当电话机数量很大时,这种连接方法需要的电话数量就太大了。有n部电话两两相连,需要1/2*(n-1)*n.
要使每一部电话都方便与另一部电话进行通信,就应当使用一个中间设备将这些电话连接起来,这个中间设备就是电话交换机。
可以将电话交换机简单看成一个多开关的开关器。可以将需要通信的任意两部电话的电话线路按需接通,从而大大减少了连接的电话线数量。
当电话机数量增多时,需要使用很多彼此连接起来的电话交换机来完成全网的交换任务。用这样的方法就构成了覆盖全世界的电信网。
注意:用户线归电话用户专用。电话交换机之间拥有的大量话路的中继线则是许多用户共享的。
电路交换步骤:
1 建立连接,例如在使用电路交换打电话之前,必须先拨号请求建立连接。当被叫用户听到电话交换机送来的拨号音并摘机后,从主叫端到被叫端就建立了一条连接(即一条专用的物理通路,这条连接保证了双方通话时所需的通信资源,这些资源在双方通信时不会被其他用户占用)
2 通话,即主叫和被叫一直在通话,在整个通话期间第一步建立连接所分配的通信资源始终被占用
3 释放连接,即通话完毕挂机后,电话交换机释放刚才使用的这条专用的物理通路,即将刚才通话占用的所有通信资源归还给电信网。
1.3.2 分组交换 Packet Switching
- 发送方:构造分组和发送分组;
- 路由器:缓存分组和转发分组;
- 接收方:接收分组和还原报文
详细知识如下。
在因特网中,最重要的分组交换机就是路由器。它负责将各种网络互连起来,并对接收到的分组进行转发,即进行分组交换,
假设主机H6用户要给主机H2用户发送消息。
通常将表示该消息的整块数据称为一个报文。
在发送报文前,先把较长的报文划分成为一个个更小的等长数据段。在每个数据段前,加一些由必要信息组成的首部后,就构成了一个分组,也可简称为“包”,相应地,首部也可称为“包头”。
思考:添加首部的作用是什么?
首部作用:包含分组的目的地址。
分组交换机收到一个分组后,先将分组暂时存储下来,检查其首部,按照首部中的目的地址进行查表转发,找到合适的转发接口,通过该接口将分组转发给下一个分组交换机。本例中,主机H6将所构造出的各分组依次发送出去。各分组经过途中各分组交换机的存储转发,最终到达主机H2.主机H2收到这些分组后,去掉首部,将各数据段组合还原出原始报文。
以上,只演示了分组传输中的两种情况:
1 各分组从源站到达目的站可以走不同的路径(也就是不同的路由);
2 分组乱序,分组到达目的站的顺序不一定与分组在源站的发送顺序相同。对于可能出现的分组丢失、误码、重复等问题没有演示。
在上述分组交换过程中,发送方要完成的任务是构造分组和发送分组。路由器(分组交换机)的任务是缓存分组和转发分组,简称为存储转发。接收方的任务是接收分组和还原报文。
1.3.3 报文交换 Message Switching
与分组交换类似,报文交换中的交换结点也采用存储转发方式,但报文交换对报文的大小没有限制。这就要求交换结点需要有较大的缓存空间。
注意,报文交换主要用于早期电报通信网,现在较少使用,通常被较先进的分组交换方式所取代。因此不再详细介绍报文交换。
1.3.4 电路交换、分组交换、报文交换的对比
- 电路交换
- 优点
- 通信时延小(通信线路为通信双方用户专用,数据直达,因此通信时延非常小,当连续传输大量数据时此优点十分明显)
- 有序传输(通信双方之间只有一条专用的通信线路,数据只在这一条线路上传输)
- 没有冲突(不同的通信双方拥有不同的信道,不会出现争用物理信道的问题)
- 使用范围广(电路交换适用于传输模拟信号和数字信号)
- 实时性强(得益于通信时延小的优点)
- 控制简单(电路交换的结点交换机及其控制都较为简单)
- 缺点
- 建立连接时间长(电路交换的平均连接建立时间对计算机通信来说太长)
- 线路独占,使用效率低(电路交换一旦建立连接,物理通路就被通信双方独占,即使通信线路空闲,也不能供其他用户使用,因此信道利用率很低)
- 灵活性差(只要连接所建立的物理通路中的任何一点出现了故障,就必须重新拨号建立新的连接,这对十分紧急和重要的通信十分不利)
- 难以规格化(电路交换时,数据直达,不同类型、不同规格、不同速率的终端很难相互进行通信,也难以在通信过程中进行差错控制)
- 优点
- 报文交换
- 优点
- 无需建立连接(报文交换不需要为通信双方预先建立一条专用的通信线路,不存在建立连接的时延,用户可以随时发送报文)
- 动态分配线路(当发送方把报文传送给结点交换机时,结点交换机先存储整个报文,然后选择一条合适的空闲线路,将报文发送出去)
- 提高线路可靠性(如果某条传输路径发生故障,会重新选择另一条路径传输数据,提高了传输的可靠性)
- 提高线路利用率(通信双方不是固定占用一条通信线路,而是在不同的时间分段部分占用物理线路,因此提高了线路利用率)
- 提供多目标服务(一个报文可以发送给多个目的地址,这在电路交换中是很难实现的)
- 缺点
- 引起转发时延(报文在结点交换机上要经历存储转发的过程)
- 需要较大的存储缓存空间(报文交换对报文大小没有限制)
- 需要传输额外的信息量(报文需要携带目标地址、源地址等信息)
- 优点
- 分组交换
- 优点
- 无需建立连接(分组交换不需要为通信双方预先建立一条专用的通信线路,不存在建立连接的时延,用户可以随时发送报文)
- 线路利用率高(通信双方不是固定占用一条通信线路,而是在不同的时间分段部分占用物理线路,因此提高了线路利用率)
- 简化存储管理(相对于报文交换而言,分组的长度固定,相应缓冲区的大小也固定,易于管理)
- 加速传输(分组是逐个传输的,这样使得后一个分组的存储操作和前一个分组的转发操作可以同时进行)
- 减少出错概率和重发数据量(分组比报文小,因此出错概率必然减小即便分组出错,也只需重传出错的部分,比重传整个报文的数据量小很多,这样提高可靠性,减少了传输时延)
- 缺点
- 引起转发时延(分组在结点交换机上要经历存储转发的过程)
- 需要传输额外的信息量(原始报文分隔成等长的数据块,每个数据块都携带目标地址、源地址等控制信息,从而构成分组)
- 对于数据报服务,存在失序、丢失或重复分组的问题;对于虚电路服务,存在呼叫建立、数据传输和虚电路释放三个过程
- 优点
详细知识如下。
假设ABCD是分组传输路径上所要经过的4个结点交换机,纵坐标为时间。
对于电路交换,通信之前要建立连接。连接建立后可以使用已建立好的连接进行数据传送。数据传送结束后,需要释放连接,以归还之前建立连接所占用的通信线路资源。
当使用电路交换时,一旦建立连接,中间的各结点交换机就是直通形式的,比特流可以直达终点。
对于报文交换,可以随时发送报文,而不需要事先建立连接。整个报文先传送到相邻结点交换机,全部存储下来后进行查表转发,转发到下一个结点交换机。
使用报文交换时,整个报文需要在各结点交换机上进行存储转发,由于不限制报文大小,因此需要各结点交换机都具有较大的缓存空间。
对于分组交换,可以随时发送分组,不需要事先建立连接。构成原始报文的一个个分组,依次在各结点交换机上存储转发。各结点交换机在发送分组的同时,还缓存接收到的分组。
使用分组交换时,构成原始报文的一个个分组,在各结点交换机上进行存储转发,相比报文交换,节省了转发时延,还可以避免过长的报文长时间占用链路,同时有利于进行差错控制。
1.4 计算机网络的定义和分类
1.4.1 计算机网络的定义
1.4.2 计算机网络的分类
- 按交换技术分类
- 电路交换网络
- 报文交换网络
- 分组交换网络
- 按使用者分类
- 公用网(电信公司出资建造的大型公用网络,公用:指所有愿意按电信公司的规定缴纳费用的人都可以使用这种网络,又称为公众网)
- 专用网(指某个部门为本单位的特殊业务工作需要而建造的网络,不向本单位以外的人提供服务,例如军队、铁路、电力等系统均有本系统的专用网)
- 按传输介质分类
- 有线网络(包括双绞线网络,光纤网络等)
- 无线网络(无线局域网使用的wifi技术)
- 按网络的覆盖范围分类
- 广域网WAN(覆盖范围:几十公里 - 几千公里,可以覆盖一个国家、地区甚至横跨几个洲,有时也称为远程网,是因特网的核心部分,任务是为核心路由器提供远距离(跨不同国家)高度连接,互连分布在不同区域的城域网和局域网)
- 城域网MAN(覆盖范围一般是一个城市,可跨几个街区甚至整个城市,作用距离为5-50公里。通常作为城市骨干网,互连大量企业、机构和校园局域网。近几年,城域网已开始称为现代城市的信息服务基础设施,为大量用户提供接入和各种信息服务,并有趋势将传统的电信服务、有线电视服务和互联网服务融为一体)
- 局域网LAN(局域网一般用微型计算机或工作站通过高速通信线路相连,速率通常在10Mbit/s以上,地理范围局限,如一个实验室、一栋楼或一个校园,距离一般在1公里左右。局域网通常由某个单位单独拥有、使用和维护。局域网发展初期,一个学校或工厂往往只拥有一个局域网,现在局域网被广泛使用,一个学校或企业大都拥有许多个互连的局域网,通常称为校园网或企业网)
- 个域网PAN(是个人区域网络的简称。不同于上述3种网络,不是连接普通计算机,而是在个人工作的地方把属于个人使用的电子设备,例如便携式计算机,打印机,鼠标,键盘,耳机等,用无线技术连接起来的网络,也常称为无线个人区域网WPAN,覆盖范围大约为10米)
- 按拓扑结构分类
- 总线型网络
- 环型网络
- 星型网络
- 网状型网络
注意:若中央处理机之间的距离十分之近,仅1米的数量级甚至更小,则称为多处理机系统,而不称为计算机网络
1.5 计算机网络的性能指标
1.5.1 速率
硬盘标注的250GB的G,真就是10的9次方(现实生活中的G)
1.5.2 带宽
1.5.3 吞吐量
吞吐量受带宽限制,最高为1Gb/s,通常只能达到700Mb/s.
1.5.4 时延
分组从源主机传送给目的主机的过程中,会在哪些地方产生时延。
- 网络时延
- 发送时延:源主机将分组发往传输线路,这需要一定的时间,这段时间就是发送时延。
- 传播时延:代表分组的电信号在链路上传输,也需要时间,就是传播时延,
- 处理时延:路由器收到分组,对其进行分组转发,也需要时间,就是处理时延。(不便计算,因为网络中的数据流量是动态变化的,因此路由器的繁忙程度也是动态变化的,另外,路由器的软硬件性能也有所不同,因此很难用公式计算处理时延)
木桶短板理论。
主流家庭局域网带宽是1000M。
1.5.5 时延带宽积
将传输链路看做一个管道,长度为传播时延,横截面积是带宽,那么时延带宽积就是该管道的体积。
1.5.6 往返时间
以太网的某台主机,要与无线局域网中的某台主机进行信息交互,
卫星链路距离较远,所带来的传播时延较大。
例如,地球同步卫星距离地球36000公里,可以计算出通过同步卫星转发分组所带来的传播时延。
1.5.7 利用率
1.5.8 丢包率
1.6 计算机网络体系结构
1.6.1 常见的计算机网络体系结构
具体知识如下。
为了使不同体系结构的计算机网络都能互连,国际标准化组织于1977年成立了专门机构研究该问题,提出了一个试图使各种计算机在世界范围内互连成网的标准框架,即著名的开放系统互连参考模型,简称OSI。
OSI:7层协议的体系结构,是法律上的国际标准。
到20世纪90年代初期,虽然整套OSI国际标准已经制订出来,但此时因特网已经抢先在全世界覆盖了相当大的范围,因特网从1983年开始使用TCP/IP协议族,并逐步演变成TCP/IP参考模型。该模型是一个4层协议的体系结构,是事实上的国际标准。
能够占领市场的就是标准。OSI标准失败的原因归纳为:①OSI专家们缺乏实际经验,在完成OSI标准时没有商业驱动力;②OSI协议实现起来过分复杂,且运行效率很低;③ OIS标准制定周期太长,因为使得按OSI标准生产的设备无法及时进入市场;④ OSI的层次划分不合理,有些功能在多个层次中重复出现。
网际层:TCP/IP协议在网络层使用的是IP协议,中文是网际协议,因此TCP/IP的网络层又称网际层。
大多数用户都有接入因特网的需求,这要求用户主机必须使用TCP/IP协议,当然,即使用户的网络不需要接入因特网,也可以使用TCP/IP协议。在用户主机的操作系统中,通常都带有符合TCP/IP体系结构标准的TCP/IP协议族。而用于网络互连的路由器中也带有符合TCP/IP体系结构标准的TCP/IP协议族。路由器一般只包含网络接口层和网际层
TCP/IP体系结构的网络接口层没有规定具体内容,目的是互连全世界各种不同的网络接口。例如有线以太网,无线局域网的WiFi接口,不限定使用几种网络接口。 因此本质上,TCP/IP体系结构只有上面的三层
IP协议是TCP/IP体系结构网际层的核心协议。IP协议可以互连不同的网络接口,并向其上的TCP和UDP协议提供网络互连服务。
TCP和UDP是TCP/IP体系结构运输层的两个重要协议。TCP和UDP协议可向应用层协议提供可靠传输和不可靠传输的服务
TCP/IP体系结构的应用层包含了大量的应用层协议,如HTTP、SMTP、DNS等协议。
TCP/IP体系结构中最重要的是IP协议和TCP协议,因此用TCP和IP来表示整个协议大家族,常称为TCP/IP协议族。
综合OSI和TCP/IP的优点,采用一种五层协议的原理体系结构
1.6.2 计算机网络体系结构分层的必要性
说明:总线型网络已淘汰,现在常用的是使用以太网交换机将多台主机互连形成的交换式以太网。
这些问题都属于数据链路层。
以上,解决了物理层、数据链路层和网络层的问题,则可以实现分组在网络间传输的问题。
但对于计算机网络而言,这仍然不够。
至此,解决了物理层、数据链路层、网络层和运输层的问题,则可是实现进程间基于网络的通信。
在此基础上,只需制定各种应用层协议,并按协议标准编写相应的应用程序,通过应用进程间的交互完成特定的网络应用。
以上解决了原理体系结构中各层的问题。
1.6.3 计算机网络体系结构分层思想举例
通过一个实例。了解计算机网络体系结构分层处理方法。
整体过程。
那么,体系结构的每层,在其中起什么作用呢?
1 主机端
从主机端按体系结构自顶向下的顺序来看。
1 应用层
2 运输层
3 网络层
4 数据链路层
5 物理层
6 信号传输到路由器
2 路由器
来看路由器的处理过程。
路由器的物理层将信号变换为比特流(主机的物理层将比特流变换为信号)。
1 物理层
2 数据链路层
3 网络层
4 数据链路层
5 物理层
3 Web服务器
1 物理层
2 数据链路层
3 网络层
4 运输层
5 应用层
6 发送响应报文
1.6.4 计算机网络体系结构中的专用术语
介绍计算机网络体系结构的专用术语。
注意:这些专用术语来源于OSI的七层协议体系结构,但也适用于TCP/IP的四层体系结构和五层协议原理体系结构。
将专用术语最具代表性的3个作为分类名称。
1.6.4.1 实体
实体和对等实体。
1.6.4.2 协议
1 协议
2 协议的三要素
1 语法
2 语义
3 同步
1 语法
其中的小格子称为字段或域;数字表示字段的长度,单位是位(即比特)。
语法:定义字段的长度和先后顺序,换句话说,语法定义了所交换信息由哪些字段以及何种顺序构成。
注意:没有必要记住分组格式,只要看懂格式说明即可。
2 语义
语义:定义通信双方所要完成的操作。
主机要访问远程Web服务器,它会构建一个HTTP的GET请求报文,然后将其发送给Web服务器。Web服务器收到该报文并进行解析,知道这是一个HTTP的GET请求报文,于是就在自身内部查找所请求的内容,并将所找到的内容封装在一个HTTP相应报文中发回给主机。③ 主机收到HTTP响应报文后对其进行解析,取出所请求的内容,并由浏览器解析显示。
以上例子体现出通信双方收到分组后完成怎样的操作。这是HTTP协议的语义所定义的。
3 同步
定义通信双方的时序关系。注意:不是指始终频率同步。
1.6.4.3 服务
服务访问点和服务原语
(这里没解释)
PDU和SDU
1.7 习题课
1.7.1 习题课1
选择题
选择题1
端到端,就是进程到进程之间的通信。
选择题2
选择题3
选择题4
学习chapter3网络层后就知道啦。
选择题5
选择题6
选择题7
学完应用层就知道啦。
选择题8
选择题9
选择题10
练习题
1 传输层 C × 是B数据链路层啊!!运输层是解决进程之间的通信问题。
2 数据链路层和网络层 A
3 IP C
4 数据链路层 D
5 600/720 = 83% C
1.7.2 习题课2-时延专项训练
注意:主机在发送信号的同时,信号也在向前传播。
习题1
发送时延+传播时延,就是总的耗费时间。确实如此。
下面来看下细节问题。
① 主机将1b的信号发送到链路上,发送时延是10^-7s。此时信号前端已经传播出去20m(主机在发送信号同时,信号也在向前传播。当主机发送完1b信号,信号末端刚刚离开主机,前端已经传播出去20m了)
② 一段时间后,该信号的前端到达另一台主机。
③ 主机对该信号进行接收,直到信号末端到达主机,主机才对这1b信号接收完毕。
从上述过程可以看出,当主机将1b信号发送到链路上后,信号末端(或称为信号后沿)还需经过1个传播时延才能到达另一台主机。
传播时延=链路长度/信号传播速率。
因此总时延是4*10^-7s.
变式1
用时2*10^-7s.
变式2
变式3
注意:比特信号是一个跟着一个在链路上传输的,因此无论有多少个比特,在总时延中只包含一个传播时延。
增加比特数量,增大了发送时延,而传播时延数量不变。
在做时延问题时,建议画下示意图,有助于分析问题。
总时延=所有比特的发送时延+信号在这边链路上的传播时延。
由于比特单位太小,在讨论问题时,常使用分组。一个分组由若干个比特构成。
分组情况:若主机在一段链路上连续发送分组,则总时延=所有分组的发送时延+信号在这段链路上的传播时延。
分组在分组交换网(多段链路)上的传输情况。
习题2
电路交换相当于一个分组在K段链路上的情况。
分组交换,等于n个分组在k段链路上的情况。
习题3
解答:记住公式或理解原理推导公式就可以了
基本不等式做也可以。
习题4
习题5
注意:这里的分组1000B已经包括分组头了。且分组头不在要分组的报文里。