网络结构,协议,网络设备
计算机网络是一个将分散的、具有独立功能的计算机系统,通过通信设备和线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
保证各个主机之间的数据连通。
硬件:打印机或者传真机并不是私有的,而是可以一起使用它的。
软件:软件并不是要下载到自己电脑上便可使用,在线软件。
数据:网上的数据是共享的,例如百度文库。
多台计算机共同承担同一个工作的不同部分。
一台电脑挂了,另外一台电脑可以成为它的替代机。
硬件:主机、通信设备和链路。
软件:主机上的软件。
协议:是一系列规则和约定的集合。有了协议才能安全平稳地进行数据传输。
由所有连接在互联网上的主机组成,使用户直接使用的。两个主机的通信方式主要分为客户/服务器方式(C/S方式)和对等方式(P2P方式)。注:两个主机之间的通信是指两个应用层中的应用进程之间的通信。
<1>C/S方式(Clinet/Server)
客户:一个进程,向服务器请求服务,是请求方。
服务器:另一个进程,向客户提供服务,是服务方。
<2>P2P方式(Peer to Peer)
两台主机通信过程中不区分客户和服务器。对等连接中的每一台主机既是客户又是服务器。
由大量网络和路由器组成,为边缘部分提供服务(提供连通性和交换)。
数据交换有三种方式:电路交换、报文交换和分组交换。分组交换又分为虚电路交换和数据报交换。
<1>术语解析
报文:电脑要发送的一整个文件,一句话,就是报文,在应用层。
报文段:报文太大了,对其进行切割,就形成了报文段,在传输层。
IP数据报:对报文段添加两个IP地址(源地址和目的地址),形成数据报,在网络层。
分组:IP数据报太大了,对其进行切割,每个分组添加IP信息和分组编号,在网络层。(一般都是用分组交换的,故说网络层一般传输的是分组)
帧:在分组/数据报头部加上MAC物理地址,尾部加上FCS帧检验序列,在数据链路层。(加头加尾)
信号:将比特数据转为信号的方式,连接传输媒介,在传输媒介上进行传播,在物理层。
<2>电路交换
电路交换的流程:建立连接→通话→释放连接。电路交换广泛应用于电话通信中。
建立连接:电路建立,必须事先规划好一条链路,等对方拿起电话,才算正式建立连接。
通话:直接进行数据的转发,无须存储。若该链路的带宽很宽,可以采用多路复用的方式,让链路分为几条道,每个人在打电话的过程中始终独占其中的一条道,称为独占资源。
释放连接:电路释放,把昂才占用的资源归还给电信网。
<3>报文交换
直接报文,在路由器处进行存储,存储到链路可用,链路赋闲的时候,再转发。而且路径并不是固定的,视当前的网络情况而选择路径。
<4>分组交换
分组交换亦是存储转发,但是两者转发的数据大小和数据类型是不同的。把之前的报文切割成一个个小的数据块,在进行存储和转发,故对交换设备的缓存要求不是很高。
[1] 分组交换的特点
分组时,新的数据块需要有源地址,目的地址,分组编号等额外的信息。
分组可以是相同大小也可以是不同大小,一般默认是相同大小。
[2] 分组交换的类型
连接服务:首先为分组的传输确定传输路径,然后沿该路径传输系列分组,系列分组传输路径相同,传输结束后拆除连接。
无连接服务:不事先确定路径,每个分组独立确定传输路径,不同的分组传输路径可能不同。
虚电路交换:为网络层提供连接服务,把电路交换和分组交换进行了融合,先建立电路交换,再进行分组的传输。
通过发送方发送“呼叫请求”分组,接收方返回“呼叫应答”分组,开始建立虚电路。每个分组不仅要包含源地址分组号,还要包含虚电路号。(建立连接的时候采用的是目的地址,后面传输的时候用虚电路号代替目的地址,作用一致,虚电路号更为细节)使得路由器可以根据虚电路号,将分组发送到刚刚建立起来的链路上。通信结束后,发送方发送“释放请求”,数据交换完毕。
数据报交换:需要对分组进行编号,然后可以实现按序重组的过程。
<5>三者比较
优缺点比较
计算机网路的功能有资源子网和通信子网组成。
通信子网实现数据通信,资源子网实现资源共享、数据处理。
计算机发送出的信号都是数字形式的。比特是数据量的单位,值是0/1,单位是位。数据传输时,也是一个比特一个比特进入信道。数据的传输速率,即是数据率或比特率,单位是b/s, kb/s, Mb/s, Gb/s, Tb/s。
速率的比例是10^3,内存容量上是1024。
<1>带宽的频域解释
带宽在频域上表示某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)。
<2>带宽的时域解释
带宽在时域上表示单位时间内网络中某一点到另一点所能通过的**“最高数据率”**,单位是比特每秒(b/s)。链路带宽指的是输入数据量的多少,发送端能发多少,发送的速率。
两者本质是一样的,一条通信链路的“带宽”越宽,其所能传输的“最高数据率”也越高。
吞吐量表示单位时间内通过某个网络(或信道、接口)的数据量,是实际的数据率。
注:带宽是最高的数据率,吞吐量是实际的数据率,带宽是吞吐量的绝对上限值。
时延是指数据从网络一端到另一端所需的时间,主要由发送时延、传播时延、处理时延和排队时延。
<1>发送时延(传输时延)
发送数据帧第一个比特算起,到该帧最后一个比特发送完毕所需的时间。
<2>传播时延
电磁波在信道中传播一定的距离所需要的时间。注:电磁波在信道上的传播速率是不变的,故传播时延仅与信道长度有关。
<3>处理时延
主机或路由器收到分组后要花费一定的时间进行处理,例如分析分组的首部、从分组中提取数据部分、进行差错检验或者查找适当的路由等。
<4>排队时延
路由器挺忙的,在输入和输出时,需要让数据先等待,数据进入路由器的缓存空间中待一会。
所以路由器执行的时延顺序是排队-处理-排队,好比过安检,排队,检查,拿行李。
时延带宽积是传播时延和带宽的乘积,描述数据量和信息量的属性。第一个比特开始传输,传输到碰到末端,停止,即以比特为单位的链路长度。时延带宽积反映此时此刻一个管道当中的数据容量。
从发送方发送数据开始,到发送方收到接收方的确认(接收方收到数据后立即发送确认),总共经历的时延,即双向交互一次所需的时间。其把第一个比特位放到信道上的时间作为时间起点。
利用率分为信道利用率和网络利用率两种。链路上一直有数据进行传输的,就链路利用的很好,利用率很高。如果数据量大,就有数据拥堵,故时延会上升。
激活:首先要把链路清一下,发送指令,使得要发送的文档能在该链路上传输。
准备工作:是否做好同意接受文件的准备,是否有空间存储要接受的文件。
通信过程中有很多问题,故分层结构要把大问题分层成一个一个的小问题。
<1>实体
每一层的活动元素(进程)称为实体。同一层的实体称为对等实体(水平)。
<2>协议
为进行网络中的对等实体数据交换而建立的规则(水平)。
协议主要由语法、语义和同步构成。
<3>接口
上层使用下层服务的入口,即服务访问点SAP。
<4>服务
下层为相邻上层提供的功能调用(垂直)。上层使用下层的服务,下层为上层提供服务,故最上层使用的是下层服务的总和。仅仅相邻层间有接口,且所提供服务的具体实现细节对上一层完全屏蔽,是透明的。
SDU服务数据单元:为完成用户所要求的功能而应传送的数据。
PCI协议控制信息:控制协议操作的信息。
PDU协议数据单元:对等层次之间传送的数据单位。
PDU=PCI=SDU,各层之间的传输以PDU为单位。
<1>总的体系
OSI参考模型:虽然有许多提出了网络架构,但是只适用于自己公司的产品,没达到互联互通。OSI解决了这一问题,它是开放的,全球通用的。但是复杂又不实用。
TCP/IP参考模型:实际上应用的体系。
<2>网络中组件使用的体系
中间系统最多经过三层,网桥交换机仅需要数据链路层和物理层。
物理层不对数据做太多的处理,傻瓜层,只是把数据转为0101,形成比特流,传送到传输介质上面进行传送,例如光纤。
数据传送到中间系统,经过三个层进行还原,看看发送端对数据做了什么操作,接下来查看路由转发表,将数据往接口处送。然后进行经过中间层三层包装,传到终端。数据在终端处经过一层一层的还原,得到原始的数据信息。
上面四层中间系统是没有的,好像两个主机直接相连,是端到端的通信,即起始端和终止端直接通信。
<3>每一层共同具有的功能
差错控制:使相应层次对等方的通信更加可靠。
流量控制:发送端的发送速率必须是的接收端来得及接受,不能太快。
复用和分用:发送端几个高层会话复用一条低层的连接,在接收端再进行分用。
连接建立和释放:交换数据前先建立一条逻辑连接,数据传送结束后释放连接。
<4>应用层
功能:通过应用进程间的交互来完成特定网络应用。需要联网才能用的程序,才属于应用层。不需要联网的,如记事本,不属于应用层的范围。
协议:应用进程间通信和交互的规则。如:域名系统DNS,支持万维网应用的HTTP协议,支持电子邮件的SMTP协议。
<5>传输层
功能:负责两个主机进程之间通信的数据传输,即端对端通信。传输的单位是报文段或用户数据报。
由于一台主机可以有多个进程,因此传输层有复用和分用功能。每个进程都会用编号来标识他,即端口号。
复用:多个应用层进程可同时使用下面运输层的服务。(例如不同进程使用同一个传输层的传输协议)
分用:运输层把收到的信息分别交付给上面应用层中相应的进程。
协议:主要使用传输控制协议TCP和用户数据报协议UDP。
● 传输控制协议TCP (Transmission Control Protocol):提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段。
● 用户数据报协议UDP (User Datagram Protocol)-- 提供无连接的、 尽最大努力的数据传输服务(不保证数据传输的可靠性),其数据传输的单位是用户数据报。
可靠传输:当接收端接收到一个报文段,返回一个确认,才可以进行下一个报文段的发送。若没收到,则要继续发送刚才的报文段,直至收到该报文段的确认信息为止,适用于比较大的文件。
不可靠传输:一直发送报文段,适用于比较小的文件。如信息在吗?采用一个数据包进行传输即可,不用建立连接和确认机制。如果传输的过程中出错了,传输层负责纠正这些错误。
面向连接:分为三个阶段,第一是建立连接,在此阶段,发出一个建立连接的请求。只有在连接成功建立之后,才能开始数据传输,这是第二阶段。接着,当数据传输完毕,必须释放连接。
面向无连接:没有这么多阶段,它直接进行数据传输。
<6>网络层
功能:把数据报从源端发送到目的端,选择合适的路由。网络层传输的单位是数据报,由于TCP/IP体系网络层中使用的是IP协议,故一般称为IP数据报。
协议:IP, IPX, ICMP, IGMP, ARP, RARP, OSPF。
<7>数据链路层
功能:将IP数据报组装成帧,传输的单位是帧。
协议:SDLC, HDLC, PPP, STP。
<8>物理层
功能:在物理媒体上实现比特流的透明传输,传输的单位是比特。
协议:Rj45, 802.3。
通信方式介绍:单工,只能一个主机发送一个主机接收,发送方和接受方是确定的。半双工,发送方和接受方不是确定的,均可,但数据传输时亦只能一个发送一个接收。双工,两个主机同时发送和接收。
<9>通信过程的解释
两个主机之间的通信是一个打包和拆包的过程。
数据链路层在头部和尾部均贴入信息,其他层在数据的头部贴入控制信息。
控制信息:检验差错,找下一个传输地址,规定数据包的优先级。
朋友发的,界面不错。收藏...... 打包下载 http://xiazai.jb51.net/yuanma/bianj...
docform.htm form action="doccreate.asp" 姓名 : input type="text" name="Name...
最近在做一个视频网站,需要实现视频的点赞功能,我是结合ajax和数据库实现的,...
2021年3月26日在Boss直聘和广州XXXX数据公司沟通了一下想面试那家公司的爬虫实习...
现在很多人使用的都是Win10系统了,配合SSD硬盘的话操作很流畅,然而有时候时不...
http请求介绍 HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信...
CInt 会进行四舍五入取最接近它的偶数,也就是说当小数部分为0.5XXXX时,它会取最...
在Windows10中,如果你想要驱动一些特定硬件,例如显卡、网卡等等,驱动程序是必...
事件背景 有一个公用页面需要在多个页面调用,其中涉及到部分js已经写在了公用页...
Fliqlo是很多人都喜欢的一款屏保软件,由于酷似MacOS里的动态时钟屏保,点击率很...