计算机网络笔记整理
笔记根据B站 计算机网络微课堂(有字幕无背景音乐版)(陆续更新中…) 视频整理
原笔记链接 计算机网络,在原笔记的基础上添加了个人的部分理解,十分感谢这位同学。
中国互联网络信息中心CNNIC
网络:网络(Network)由若干结点(Node)和连接这些结点的链路(Link组成。
互连网(互联网):多个网络通过路由器互连起来,这样就构成了一个覆盖范围更大的网络,即互连网(互联网)。因此,互联网又称为“网络的网络(Network of Networks)”。
因特网:因特网(Internet)是世界上最大的互连网络(用户数以亿计,互连的网络数以百万计)。
internet与Internet的区别
任意把几个计算机网络互连起来(不管采用什么协议),并能够相互通信,这样构成的是一个互连网(internet) ,而不是互联网(Internet)。
因特网服务提供者ISP
(I
nternet S
ervice P
rovider)
普通用户是如何接入到因特网的呢?
答:通过ISP接入因特网
ISP可以从因特网管理机构申请到成块的IP地址,同时拥有通信线路以及路由器等联网设备。任何机构和个人只需缴纳费用,就可从ISP的得到所需要的IP地址。
因为因特网上的主机都必须有IP地址才能进行通信,这样就可以通过该ISP接入到因特网
中国的三大ISP
:中国电信,中国联通和中国移动
基于ISP的三层结构的因特网
一旦某个用户能够接入到因特网,那么他也可以成为一个ISP,所需要做的就是购买一些如调制解调器或路由器这样的设备,让其他用户可以和他相连。
制订因特网的正式标准要经过一下4个阶段:
1、因特网草案(在这个阶段还不是RFC文档)
2、建议标准(从这个阶段开始就成为RFC文档)
3、草案标准
4、因特网标准
边缘部分
由所有连接在因特网上的主机组成(台式电脑,大型服务器,笔记本电脑,平板,智能手机等)。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。
核心部分
由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。
路由器是一种专用计算机,但我们不称它为主机,路由器是实现分组交换的关键构建,其任务是转发收到的分组,这是网络核心最重要的部分。
处在互联网边缘的部分就是连接在互联网上的所有的主机。这些主机又称为端系统 (end system)。
端系统在功能上可能有很大的差别:
小的端系统可以是一台普通个人电脑,具有上网功能的智能手机,甚至是一个很小的网络摄像头。
大的端系统则可以是一台非常昂贵的大型计算机。
端系统的拥有者可以是个人,也可以是单位(如学校、企业、政府机关等),当然也可以是某个ISP。
端系统之间通信的含义
“主机 A 和主机 B 进行通信”实际上是指:“运行在主机 A 上的某个程序和运行在主机 B 上的另一个程序进行通信”。即“主机 A 的某个进程和主机 B 上的另一个进程进行通信”。简称为“计算机之间通信”。
端系统之间的通信方式通常可划分为两大类:
客户-服务器方式:
服务请求方和服务提供方都要使用网络核心部分所提供的服务。
对等连接方式:
网络核心部分是互联网中最复杂的部分。
网络中的核心部分要向网络边缘中的大量主机提供连通性,使边缘部分中的任何一个主机都能够向其他主机通信(即传送或接收各种形式的数据)。
在网络核心部分起特殊作用的是路由器(router)。
路由器是实现分组交换 (packet switching) 的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。
传统两两相连的方式,当电话数量很多时,电话线也很多,就很不方便
所以要使得每一部电话能够很方便地和另一部电话进行通信,就应该使用一个中间设备将这些电话连接起来,这个中间设备就是电话交换机
电话交换机接通电话线的方式称为电路交换;
从通信资源的分配角度来看,交换(Switching)就是按照某种方式动态地分配传输线路的资源;
电路交换的三个步骤:
1、建立连接(分配通信资源)
2、通话(一直占用通信资源)
3、释放连接(归还通信资源)
当使用电路交换来传送计算机数据时,其线路的传输效率往往很低。
这是因为计算机数据是突发式地出现在传输线路上的。
所以计算机通常采用的是分组交换,而不是线路交换
通常我们把表示该消息的整块数据成为一个报文。
在发送报文之前,先把较长的报文划分成一个个更小的等长数据段,在每一个数据段前面。加上一些由必要的控制信息组成的首部后,就构成一个分组,也可简称为“包”,相应地,首部也可称为“包头”。
首部包含了分组的目的地址
分组从源主机到目的主机,可走不同的路径。
发送方
路由器
在路由器中的输入和输出端口之间没有直接连线。
路由器处理分组的过程是:
接收方
报文交换中的交换结点也采用存储转发方式,但报文交换对报文的大小没有限制,这就要求交换结点需要较大的缓存空间。报文交换主要用于早期的电报通信网,现在较少使用,通常被较先进的分组交换方式所取代。
假设A,B,C,D是分组传输路径所要经过的4个结点交换机,纵坐标为时间
分析:
电路交换:
通信之前首先要建立连接;连接建立好之后,就可以使用已建立好的连接进行数据传送;数据传送后,需释放连接,以归还之前建立连接所占用的通信线路资源。
一旦建立连接,中间的各结点交换机就是直通形式的,比特流可以直达终点;
报文交换:
分组交换:
按交换技术分类:
按使用者分类:
按传输介质分类:
按覆盖范围分类:
作用范围通常为几十到几千公里,因而有时也称为远程网(long haul network)。广域网是互联网的核心部分,其任务是通过长距离(例如,跨越不同的国家)运送主机所发送的数据。
作用范围一般是一个城市,可跨越几个街区甚至整个城市
一般用微型计算机或工作站通过高速通信线路相连(速率通常在 10 Mbit/s 以上),但地理上范围较小(1 km 左右)
就是在个人工作的地方把个人使用的电子设备用无线技术连接起来的网络。
按拓扑结构分类:
带宽1 Gb/s的以太网,代表其额定速率是1 Gb/s,这个数值也是该以太网的吞吐量的绝对上限值。因此,对于带宽1 Gb/s的以太网,可能实际吞吐量只有 700 Mb/s,甚至更低。
注意:吞吐量还可以用每秒传送的字节数或帧数表示
时延时指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。
网络时延由几部分组成:
主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。
电磁波在信道中传播一定的距离需要花费的时间。
主机或路由器在收到分组时要花费一定时间进行处理
分组在进过网络传输时,要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。
有时会把排队时延看成处理时延 一部分
总时延 = 发送时延 + 传播时延 + 处理时延 (处理时延 + 排队时延)
当处理时延忽略不计时,发送时延 和 传播时延谁占主导,要具体情况具体分析
总结
时延带宽积 = 传播时延 * 带宽
因特网上的信息不仅仅单方向传输,而是双向交互的。因此,我们有时很需要知道双向交互一次所需的时间。
卫星链路耗时较多,因为一般情况下,卫星链路的距离比较远,所带来的的传播时延比较大。
利用率有信道利用率和网络利用率两种。
总结
很重要,经常思考,对后面的学习很有帮助。
OSI协议的缺点
第一:专家缺少经验,完成OSI标准时没有商业驱动力。
第二:OSI的协议实现起来过分复杂,而且运行效率很低。
第三:指定周期长,因而使得按OSI标准生产的设备无法及时进入市场。
第四:层次划分不太合理,有些功能重复出现。
如今用的最多的是TCP/IP体系结构。现今规模最大的、覆盖全球的、基于TCP/IP的互联网并未使用OSI标准。
TCP/IP体系结构相当于将OSI体系结构的物理层和数据链路层合并为了网络接口层,并去掉了会话层和表示层。
TCP/IP在网络层使用的协议是IP协议,IP协议的意思是网际协议,因此TCP/IP体系结构的网络层称为网际层
在用户主机的操作系统中,通常都带有符合TCP/IP体系结构标准的TCP/IP协议族。
而用于网络互连的路由器中,也带有符合TCP/IP体系结构标准的TCP/IP协议族。
只不过路由器一般只包含网络接口层和网际层。
网际层的IP协议
网络接口层:并没有规定具体内容,这样做的目的是可以互连全世界各种不同的网络接口,例如:有线的以太网接口,无线局域网的WIFI接口等,而不限定仅使用一种或者几种网络接口。因此。本质上的TCP/IP体系结构只有上面的三层,网际层、运输层、应用层。
网际层:它的核心协议是IP协议。
运输层:TCP和UDP是这层的两个重要协议。
应用层:这层包含了大量的应用层协议,如 HTTP , DNS 等。
IP协议(网际层)可以将不同的网络接口(网络接口层)进行互连,并向其上的TCP协议和UDP协议(运输层提供网络互连服务
而TCP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供可靠的传输服务。
UDP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供不可靠的传输服务。
TCP/IP体系结构中最重要的是IP协议和TCP协议,因此用TCP和IP来表示整个协议大家族。
教学时把TCP/IP体系结构的网络接口层分成了物理层和数据链路层,这样更有利于我们对计算机网络原理的学习。
物理层问题
这样举例只是让初学者容易理解
数据链路层问题
如图所示,主机A要给主机C发送数据。但是,表示数据的信号会通过总线传播到总线上的每—个主机。主机C如何知道该数据是要发给自己的,自己去接收。而主机B,D,E又如何知道该数据不是发给自己的,自己应该拒绝呢?
当然这种冲突的总线型网络早已被淘汰,现在是使用以太网交换机将多台主机互连形成的交换式以太网。
网络层问题
小型互联网:
IP地址的前三个十进制数用来标识网络,第四个十进制数用来标识主机。如N1网络的网络号192.168.1,该网络中的主机IP地址的前三个数都应该是192,168,1,第四个十进制数各不相同,用来标识自己,如1,2。
运输层问题
如何标识与网络通信相关的应用进程:一个分组到来,我们应该交给哪个进程处理呢?浏览器进程还是QQ进程
应用层问题
应用层该用什么方法(应用层协议)去解析数据
总结
例子:主机的浏览器如何与Web服务器进行通信
解析:
主机和Web服务器之间基于网络的通信,实际上是主机中的浏览器应用进程与Web服务器中的Web服务器应用进程之间基于网络的通信
体系结构的各层在整个过程中起到怎样的作用?
1、发送方发送
第五步:
在路由器中
3、接收方接收
和发送方(主机)发送过程的封装正好是反着来
在Web 服务器上
发回响应报文的步骤和之前过程类似
以下介绍的专用术语来源于OSI的七层协议体系结构,但也适用于TCP/IP的四层体系结构和五层协议体系结构
实体
协议
协议:控制两个对等实体进行逻辑通信的规则的集合
协议三要素:
语法
如IP数据报的格式
语义
主机的HTTP的GET请求给Web服务器,Web服务器收到后执行相应的操作,然后给主机发回HTPP的响应
同步
TCP的‘’三报文握手‘’建立连接。
服务
小结