计算机网络学习笔记第一章(概述) 超详细整理,springboot 注解的工作原理
1、建立连接(分配通信资源)
2、通话(一直占用通信资源)
3、释放连接(归还通信资源)
当使用电路交换来传送计算机数据时,其线路的传输效率往往很低。
这是因为计算机数据是突发式地出现在传输线路上的。
所以计算机通常采用的是分组交换,而不是线路交换
[](
)2、分组交换(Packet Switching)
通常我们把表示该消息的整块数据成为一个报文。
在发送报文之前,先把较长的报文划分成一个个更小的等长数据段,在每一个数据段前面。加上一些由必要的控制信息组成的首部后,就构成一个分组,也可简称为“包”,相应地,首部也可称为“包头”。
首部包含了分组的目的地址
分组从源主机到目的主机,可走不同的路径。
发送方
构造分组
发送分组
路由器
缓存分组
转发分组
简称为“分组转发”
在路由器中的输入和输出端口之间没有直接连线。
路由器处理分组的过程是:
把收到的分组先放入缓存(暂时存储);
查找转发表,找出到某个目的地址应从哪个端口转发;
把分组送到适当的端口转发出去。
接收方
接收分组
还原报文
[](
)3、报文交换(Message Switching)
报文交换中的交换结点也采用存储转发方式,但报文交换对报文的大小没有限制,这就要求交换结点需要较大的缓存空间。报文交换主要用于早期的电报通信网,现在较少使用,通常被较先进的分组交换方式所取代。
[](
)4、三种交换方式的对比
假设 A,B,C,D 是分组传输路径所要经过的 4 个结点交换机,纵坐标为时间
分析:
电路交换:
通信之前首先要建立连接;连接建立好之后,就可以使用已建立好的连接进行数据传送;数据传送后,需释放连接,以归还之前建立连接所占用的通信线路资源。
一旦建立连接,中间的各结点交换机就是直通形式的,比特流可以直达终点;
报文交换:
可以随时发送报文,而不需要事先建立连接;整个报文先传送到相邻结点交换机,全部存储下来后进行查表转发,转发到下一个结点交换机。
整个报文需要在各结点交换机上进行存储转发,由于不限制报文大小,因此需要各结点交换机都具有较大的缓存空间。
分组交换:
可以随时发送分组,而不需要事先建立连接。构成原始报文的一个个分组,依次在各结点交换机上存储转发。各结点交换机在发送分组的同时,还缓存接收到的分组。
构成原始报文的一个个分组,在各结点交换机上进行存储转发,相比报文交换,减少了转发时延,还可以避免过长的报文长时间占用链路,同时也有利于进行差错控制。
[](
)1.4 计算机网络的定义和分类
==================================================================================
[](
)1、定义
计算机网络的精确定义并未统一
计算机网络的最简单的定义是:一些互相连接的、自治的计算机的集合。
互连:是指计算机之间可以通过有线或无线的方式进行数据通信;
自治:是指独立的计算机,他有自己的硬件和软件,可以单独运行使用;
集合:是指至少需要两台计算机;
计算机网络的较好的定义是:计算机网络主要是由一些通用的,可编程的硬件(一定包含有中央处理机 CPU)互连而成的,而这些硬件并非专门用来实现某一特定目的(例如,传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。
计算机网络所连接的硬件,并不限于一般的计算机,而是包括了智能手机等智能硬件。
计算机网络并非专门用来传送数据,而是能够支持很多种的应用(包括今后可能出现的各种应用)。
[](
)2、分类
按交换技术分类:
电路交换网络
报文交换网络
分组交换网络
按使用者分类:
公用网
专用网
按传输介质分类:
有线网络
无线网络
按覆盖范围分类:
广域网 WAN(Wide Area Network)
作用范围通常为几十到几千公里,因而有时也称为远程网(long haul network)。广域网是互联网的核心部分,其任务是通过长距离(例如,跨越不同的国家)运送主机所发送的数据。
城域网 MAN
作用范围一般是一个城市,可跨越几个街区甚至整个城市
局域网 LAN
一般用微型计算机或工作站通过高速通信线路相连(速率通常在 10 Mbit/s 以上),但地理上范围较小(1 km 左右)
个域网 PAN
就是在个人工作的地方把个人使用的电子设备用无线技术连接起来的网络。
按拓扑结构分类:
总线型网络
星型网络
环形网络
网状型网络
[](
)1.5 计算机网络的性能指标
=================================================================================
[](
)1、速率
[](
)2、带宽
[](
)3、吞吐量
带宽 1 Gb/s 的以太网,代表其额定速率是 1 Gb/s,这个数值也是该以太网的吞吐量的绝对上限值。因此,对于带宽 1 Gb/s 的以太网,可能实际吞吐量只有 700 Mb/s,甚至更低。
注意:吞吐量还可以用每秒传送的字节数或帧数表示
[](
)4、时延
时延时指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。
网络时延由几部分组成:
发送时延
主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。
传播时延
电磁波在信道中传播一定的距离需要花费的时间。
处理时延
主机或路由器在收到分组时要花费一定时间进行处理
排队时延
分组在进过网络传输时,要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。
有时会把排队时延看成处理时延 一部分
总时延 = 发送时延 + 传播时延 + 处理时延 (处理时延 + 排队时延)
当处理时延忽略不计时,发送时延 和 传播时延谁占主导,要具体情况具体分析
总结
[](
)5、时延带宽积
时延带宽积 = 传播时延 * 带宽
[](
)6、往返时间
因特网上的信息不仅仅单方向传输,而是双向交互的。因此,我们有时很需要知道双向交互一次所需的时间。
卫星链路耗时较多,因为一般情况下,卫星链路的距离比较远,所带来的的传播时延比较大。
[](
)7、利用率
利用率有信道利用率和网络利用率两种。
[](
)8、丢包率
总结
[](
)1.6 计算机网络体系结构
================================================================================
很重要,经常思考,对后面的学习很有帮助。
[](
)1、常见的计算机网络体系结构
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 体系结构的网络接口层分成了物理层和数据链路层,这样更有利于我们对计算机网络原理的学习。
[](
)2、计算机网络体系结构分层的必要性
物理层问题
这图说明
第一,严格来说,传输媒体并不属于物理层
计算机传输的信号,并不是图示的方波信号
这样举例只是让初学者容易理解
数据链路层问题
如图所示,主机 A 要给主机 C 发送数据。但是,表示数据的信号会通过总线传播到总线上的每—个主机。主机 C 如何知道该数据是要发给自己的,自己去接收。而主机 B,D,E 又如何知道该数据不是发给自己的,自己应该拒绝呢?
当然这种冲突的总线型网络早已被淘汰,现在是使用以太网交换机将多台主机互连形成的交换式以太网。
网络层问题
小型互联网:
IP 地址的前三个十进制数用来标识网络,第四个十进制数用来标识主机。如 N1 网络的网络号 192.168.1,该网络中的主机 IP 地址的前三个数都应该是 192,168,1,第四个十进制数各不相同,用来标识自己,如 1,2。
运输层问题
如何标识与网络通信相关的应用进程:一个分组到来,我们应该交给哪个进程处理呢?浏览器进程还是 QQ 进程
应用层问题
应用层该用什么方法(应用层协议)去解析数据
总结
[](
)3、计算机网络体系结构分层思想举例
例子:主机的浏览器如何与 Web 服务器进行通信
解析:
主机和 Web 服务器之间基于网络的通信,实际上是主
机中的浏览器应用进程与 Web 服务器中的 Web 服务器应用进程之间基于网络的通信
体系结构的各层在整个过程中起到怎样的作用?
1、发送方发送
第一步:
应用层按照 HTTP 协议的规定构建一个 HTTP 请求报文
应用层将 HTTP 请求报文交付给运输层处理
第二步:
运输层给 HTTP 请求报文添加一个 TCP 首部,使之成为 TCP 报文段
TCP 报文段的首部格式作用是区分应用进程以及实现可靠传输
运输层将 TCP 报文段交付给网络层处理
第三步:
网络层给 TCP 报文段添加一个 IP 首部,使之成为 IP 数据报
IP 数据报的首部格式作用是使 IP 数据报可以在互联网传输,也就是被路由器转发
网络层将 IP 数据报交付给数据链路层处理
第四步:
数据链路层给 IP 数据报添加一个首部和一个尾部,使之成为帧 (图示右边为首部,左边为尾部)
该首部的作用主要是为了让帧能够在一段链路上或一个网络上传输,能够被相应的目的主机接收
该尾部的作用是让目的主机检查所接收到的帧是否有误码
数据链路层将帧交付给物理层
第五步:
物理层先将帧看做是比特流,这里的网络 N1 假设是以太网,所以物理层还会给该比特流前面添加前导码
前导码的作用是为了让目的主机做好接收帧的准备
物理层将装有前导码的比特流变换成相应的信号发送给传输媒体
第六步:
信号通过传输媒体到达路由器
2、路由器转发
在路由器中
物理层将信号变为比特流,然后去掉前导码后,将其交付给数据链路层,这实际交付的是帧
数据链路层将帧的首部和尾部去掉后,将其交付给网络层,这实际交付的是 IP 数据报
网络层解析 IP 数据报的首部,从中提取目的网络地址
在路由器中
提取目的网络地址后查找自身路由表。确定转发端口, 以便进行转发
网络层将 IP 数据报交付给数据链路层
数据链路层给 IP 数据报添加一个首部和一个尾部,使之成为帧
数据链路层将帧交付给物理层
物理层先将帧看成比特流,这里的网络 N2 假设是以太网,所以物理层还会给该比特流前面添加前导码
物理层将装有前导码的比特流变换成相应的信号发送给传输媒体,信号通过传输媒体到达 Web 服务器
3、接收方接收
和发送方(主机)发送过程的封装正好是反着来
在 Web 服务器上
物理层将信号变换为比特流,然后去掉前导码后成为帧,交付给数据链路层,这实际交付的是帧
数据链路层将帧的首部和尾部去掉后成为 IP 数据报,将其交付给网络层,这实际交付的是 IP 数据报
网络层将 IP 数据报的首部去掉后成为 TCP 报文段,将其交付给运输层,这实际交付的是 TCP 请求报文
运输层将 TCP 报文段的首部去掉后成为 HTTP 请求报文,将其交付给应用层,这实际交付的是 HTTP 请求报文
应用层对 HTTP 请求报文进行解析,然后给主机发回响应报文
评论