计算机网络概述
计算机网络基本概念
计算机网络的定义
1、计算机网络是利用通信设备与通信链路或者通信网络,互连位置不同,功能自治的计算机系统,并遵循一定的规则实现计算机系统之间信息交换。
2、概括性定义:计算机网络是互连的,自治的计算机的集合。
自治:是指互联的计算机系统彼此独立,不存在主或从或者控制与被控制的关系。即指连接到网络的节电设备,它又自己的硬件设备即软件,能够独立的工作,即使在脱离网络的情况下也能进行一定的信息处理。
互联:是指利用通信链路连接相互独立的计算机系统。
协议的定义
1、协议是网络通信实体之间在数据交换过程中需要遵循的规则或约定,包括三个基本要素:
语法:实体之间交换信息的格式与结构。
语义:实体之间交换的信息中需要发送(或包含)哪些控制信息,这些信息的具体含义,以及针对不同含义的控制信息,接受信息端如何响应。
时序:实体之间交换信息的顺序以及如何匹配或适应彼此的速度。
计算机网络的功能
1、计算机网络可以实现如下功能:
硬件资源共享。
软件资源共享。
信息资源共享。
计算机网络的分类
1、按覆盖范围可分为:个域网(1 ~ 10m)、局域网(10m ~ 1km)、城域网(5 ~ 50km)、广域网(几十到几千千米)。
2、按拓扑结构可分为:星形、总线型、环形、网状、树形、混合拓扑结构等。
星形拓扑结构:星行拓扑结构网络包括一个中央结点,网络中的主机通过点对点通信链路与中央节点连接。中央节点通常是
集线器,交换机
等设备,主机之间的通信都需要通过中央节点进行。星形拓扑结构网络比较多见于局域网、个域网中。优点是易于监控与管理,故障诊断与隔离容易。
缺点是中央结点是网络的瓶颈,一旦故障,全网瘫痪,网络规模受限于中央节点的端口数量`。
总线型拓扑结构:总线型拓扑结构网络采用一条广播通信道作为公共传输介质,称为总线,所有节点均与总线连接,结点间的通道均通过共享的总线进行。由于总线是一条广播信道,所以任一节点通过总线发送数据时,其它节点都会收到承载这些数据的信号。如果同时有两个或两个以上的结点同时向共享信道中发送数据,就会产生干扰,会导致任何一个结点的数据发送失败,这一现象称之为冲突。总线型拓扑结构网络在早期的局域网中比较多见。
优点是结构简单,所需电缆数量少,易于扩展。
缺点是通信范围受限,故障挣断与隔离较困难,容易产生冲突。
环形拓扑结构:环形拓扑结构网络利用通信链路将所有结点连接成一个闭合的环,环中的数据传输通常是单向(也可以双向)传输,每个节点可以从环中接收数据,并向环中进一步转发数据。如果某节点判断数据是发送给自己的,则复制数据。数据会沿特定的方向环绕一周,回到发送数据的结点,发送数据的结点需要负责从环中清除其发送的数据,即“自生自灭”。环形拓扑结构网络多见于早期的局域网、园区网和城域网中。
优点是所需电缆长度短,可以使用光纤,易于避免冲突。
缺点是某节点的故障容易引起全网瘫痪,新节点的加入或撤出过程比较麻烦,存在等待时间问题`。
网状拓扑结构:网状拓扑结构网络中的结点通过多条链路与不同的结点直接连接,如果网状拓扑结构网络的任一结点与其余所有结点均有直接链路连接,则称为
完全网状拓扑网络
,上图所示的即为完全网状拓扑网络;否则称之为非完全网状拓扑网络。网状拓扑结构网络比较多见与广域网、核心网络等。优点是网络可靠性高,一条或多条链路故障时,网络仍然可联通。
缺点是网络结构复杂,造价成本高,选路协议复杂。
树形拓扑结构:树形拓扑结构网络可以看作是总线型拓扑或星形拓扑网络的扩展。比较多见的是通过级联星形拓扑网络中的中央结点构建树形拓扑结构网络。目前,很多局域网采用这种拓扑结构。
优点是易于扩展,故障隔离容易。
缺点是对根节点的可靠性要求高,一旦根节点故障,则可能导致网络大范围无法通信。
混合拓扑结构:混合拓扑结构网络是由两种以上简单拓扑结构网络混合连接而成的网络。绝大多数实际网络的拓扑都属于混合拓扑结构,比如 Internet。
优点是易于扩展,可以构建不同规模网络,并可根据需要优选网络结构。
缺点是网络结构复杂,管理与维护复杂。
3、按交换方式可分为:电路交换网络、报文交换网络和分组交换网络。
4、按网络用户属性可分为:公用网、私有网。
计算机网络结构
网络边缘
1、连接到网络上的计算机、服务器、智能手机、智能传感器、智能家电等称为主机
或端系统
。这些端系统位于网络的最边缘,因此,连接到网络上的所有端系统构成了网络边缘。可以说网络边缘为网络用户提供了网络应用服务
。
接入网络
1、通常情况下,网络核心是由一些电信网络运营商等企业运营的 ISP(internet 服务提供商)网络,不能直接延伸到用户区域。例如家中,这些用户就需要借助接入网络实现与 ISP 的连接。而接入网络的作用就是能将用户与 ISP 进行连接,作为用户与 ISP 连接的介质。
电话拨号接入:该方式是利用电话网络,通过
调制解调器(modem)
将数字信号调制到模拟电话线路,通过电话网络的模拟语音信号作为载波传送到远端,再利用调制解调器将数字信号从模拟信号中解调出来。虽然这种方式覆盖广,但是其最大带宽通常为56 kbit/s
。非对称数字用户线路 ADSL:ASDL 是利用现有的电话网络的用户线路实现的接入网络。ADSL 是目前家庭用户接入网络中比较常见的一种接入方式。ASDL 基于
频分多路复用(EDM)技术
实现电话语音通信与数字通信(即网络数据传输)共享一条用户线路,在进行网络通信的同时,可以进行电话语音通信,这与传统的拨号接入存在很大的差异。之所以称为非对称
数据用户线路,是因为在 ADSL 接入网络中,在用户线路上实现的上行(从用户端向网络上传数据)带宽比下行(从网络向用户端下传数据)带宽小
。ASDL 存在很多标准,并且可以实现的上行和下行带宽与用户线路的长度有关系,当用户线路长度在 3 ~ 5km 范围时,典型的上行带宽为 512kbit/s ~ 1Mbit/s,下行带宽为 1 ~ 8Mbit/s。当用户线路长度在 1.3km 以内时,可以实现更高速率的 VDSL,其典型的下行带宽可以达到 55 Mbit/s,上行带宽可以达到 19.2Mbit/s。混合光纤同轴电缆 HFC 接入网络:HFC 接入网络也称为
电缆调制解调器接入
,是利用有线电视网络实现网络接入的技术。HFC 接入网络的用户端使用电缆调制解调器连接有线电视网的入户同轴电缆,同轴电缆来接到光纤结点,再通过光纤链路连接电缆调制解调器端接系统,进而连接网络,如 Internet。HFC 也是基于频分多路复用技术,也是非对称
的。典型的上行带宽为 30.7Mbit/s,下行带宽为 42.8Mbit/s。由于 HFC 是共享式接入
,即连接到同一段同轴电缆上(比如同一栋住宅楼内)的用户共享上行和下行带宽,这些用户需要从总的上行和下行带宽中进行平分。因此虽然 HFC 接入的上下行带宽表面看要比 ADSL 的带宽高,但是当用户数量较大时,HFC 接入没有 ASDL 接入速率快,因为 ASDL 是独享式接入。局域网:企业、学校等机构会在组织范围内建设局域网,连接所有需要接入外部网路的主机,然后通过企业网络或校园网的边缘路由器连接网络核心。典型的局域网技术是
以太网
、Wi-Fi
等。移动接入网络;移动接入网络主要利用移动通信网络,如 3G/4G/5G 网络,实现智能手机、移动终端等设备的网络接入。
网络核心
1、网络核心是由通信链路互联的分组交换设备
构成的网络,作用是实现网络边缘中主机之间数据的中继与转发
。比较典型的分组交换设备是路由器
和交换机
等。在大规模计算机网络中,相距遥远的主机之间不可能通过一条物理通信链路直接连接,而是各自通过接入网连接到网络核心上,彼此传输的数据都是通过网络核心进行中继和转发,最后送达目的主机。
2、对于网络核心中的每个路由器,必须能够为去往不同目的的数据做出合理的决策,选择如何转发数据,如转发给哪个相邻的路由器,通过路由器之间的转发和中继,最终将数据送达正确的目的主机。
计算机网络结构总结
1、接入到网络上的所有端系统构成了网络边缘。
2、接入网络实现网络边缘的端系统与网络核心的连接与接入。
3、网络核心是由通信链路互联的分组交换设备构成的网络,作用是实现网络边缘中主机之间的数据中继与转发。
数据交换技术
数据交换的概念
1、交换结点和传输介质的集合称之为通信子网,即网络核心。
2、数据交换是实现在大规模网络核心上进行数据传输的技术基础。常见的数据交换技术包括电路交换
,报文交换
,分组交换
。基于不同交换技术构建的网络分别称之为电路交换网络、报文交换网络和分组交换网络。
电路交换
1、在电路交换网络中,首先需要通过中间交换节点为两台主机建立一条专用的通信线路,称之为电路,然后再利用该电路进行通信,通信结束后再拆除电路。
2、电路交换的优点是:实时性高,时延和时延抖动都较小。
3、电路交换的缺点是:对于突发性数据传输,信道利用率低,且传输速率单一。
报文交换
1、以报文为单位在交换网络的各节点之间以存储-转发的方式传送。
2、报文交换的特点:
不需要建立连接。
只有当报文被转发时才占用相应的信道。
交换节点需要缓冲存储,报文需要排队,增加了延时。
分组交换
1、分组交换将一个完整报文拆分成若干个分组,分组传输过程通常也采用存储-转发的交换方式。
2、分组交换的优点:
交换设备存储容量要求低。
交换速度快。
可靠传输效率高。
更加公平。
3、分组长度的确定依据:
分组长度与延迟时间。分组长度越长,延迟时间越长。分组长度越短,由于分组需要附加控制信息,会增加额外开销,就会导致有效数据传输效率降低。
分组长度与误码率。误码率越低,分组长度就越长。
目前国际电信联盟以建议的形式制定出,分组长度以 16B(1B = 8bit)到 4096B 之间的 2nB 为标准分组长度,例如:32B、64B、256B、512B 和 1024B 等。
计算机网络性能
速率与带宽
1、速率是指网络单位时间内传送的数据量,也称为数据传输速率或数据速率。速率的基本单位是bit/s(位每秒)。
2、在计算机网络中,有时也会用带宽这一术语描述速率。
3、带宽原本是指信号具有的频带宽度,即信号成分的最高频率与最低频率之差,单位为Hz(赫兹)。
时延
1、时延是指数据从网络中的一个结点(主机或交换设备等)到达另一结点所需要的时间。
2、分组的每跳传输过程主要产生 4 类时间延迟:「结点处理时延」、「排队时延」、「传输时延」、「传播时延」。
时延带宽积
1、一段物理链路的传播时延与链路带宽的乘积。表示一段链路可以容纳的数据位数,也称为以位为单位的链路长度。
丢包率
1、丢包率常被用于评价和衡量网络性能的指标,在很大程度上可以反映网络的拥塞程度。
- 丢包产生的原因:当网络很拥堵时,传输数据到某个结点时,刚好这个结点堵塞了,就会导致后面传输到该结点的数据没办法被存储到这个结点中,就会导致丢包。
2、丢包率 = 丢失分组总数 / 发送分组总数。
吞吐量
1、单位时间内源主机通过网络向目的主机实际发送的数据量。
2、吞吐量经常用于度量网络的实际数据传送(通过)能力,即网络实际可以达到的源主机到目的主机的数据传送速率。
计算机网络体系结构
计算机网络分层体系结构
1、分层思想:计算机网络完成的所有功能可以划分为若干层,每层完成一部分子功能,每层在完成相应功能时与另一通信实体的相同层按照某种协议进行信息交换。
2、体系结构定义:计算机网络所划分的层次以及各层协议的集合称为计算机网络体系结构。
OSI 参考模型
1、应用层:应用层与提供给用户的网络服务相关,它为用户提供了一个使用网络应用的 “接口”。
2、表示层:表示层主要用于处理
运用实体间交换数据的语法
,其目的是解决格式和数据表示的差别
,从而为应用层提供一个一致的数据格式,使字符、格式等有差异的设备之间相互通信。
表示层还可以实现文本压缩/解压缩,数据加密/解密、字符编码的转换等功能。
表示层的功能在某些实际数据通信网络中是由应用层来实现的,而且表示层不独立存在。
3、会话层:会话层是指用户与用户的连接,通过在两台计算机间建立、管理和终止通信来完成对话。
会话层主要功能为:在建立会话时
核实双方身份
是否有权参加会话,确定双方支付通信费用;双方在各种选择功能方面(如双工还是半双工通信)取得一致;在实际的网络中、会话层的功能已经被应用层所覆盖,很少单独存在。
4、传输层:传输层是第一个端到端的层次,也是进程到进程的层次。
数据通信表面上是在两个主机之间进行,但实质上是发生在两个主机的进程之间。
传输层的
功能主要包括
:复用/分解(区分发送和接收主机上的进程)、端到端的可靠数据传输、连接控制、流量控制和拥塞控制机制等。
5、网络层:网络层解决的核心问题是如何将分组通过交换网络传送至目的主机,因此,网络层的主要功能是数据转发与路由
。
一个包含源节点、中继结点、目的节点的集合称为从源节点到目的节点的路径。
一般在两个结点之间都会有多条路径选择,这种路由选择是网络层要完成的主要功能之一。
6、数据链路层:该层的主要功能是实现在相邻结点之间数据可靠而有效的传输
。
数据在物理介质内传输过程。不能保证没有任何错误发生,为了能实现有效的差错控制,就采用了一种以
帧
为单位的数据块传输方式。要采用帧格式传输,就必须有相应的帧同步技术,这就是数据链路层的成帧
(也称为帧同步)功能,包括帧的格式、类型、成帧的方法等。数据链路层还可以实现相邻结点间通信的
流量控制
。某些数据通信网络的数据链路层还提供
连接管理
功能,即通信前建立数据链路,通信结束后释放数据链路,这种数据链路的建立、维持和释放过程称为链路管理。数据链路层还有一个重要的功能是
寻址
,即用来确保每一帧都能准确地传送到正确的接收方,接收方也应该知道发送方的地址,这在使用广播介质的网路中尤为重要,比如计算机局域网中广泛采用 MAC 地址。
7、物理层:物理层主要功能是在传输介质上实现无结构比特流传输
。所谓无结构比特流是指不关心比特流实际代表的信息内容,只关心如何将 0 和 1 这些比特以合适的信号传送到目的地,因此,物理层要实现型号编码功能
。
物理层的另一项主要任务就是
规定数据终端设备(DTE)与数据通信设备(DCE)之间接口的相关特性
,主要包括机械、电气、功能和规程 4 个方面的特性。机械特性也叫物理特性,说明硬件连接接口的机械特点,导线的电气连接及有关电路的特性,如信号的电平大小、接收器和发送器特性的说明、信号的识别、最大传输速率的说明等。
功能特性说明物理接口个条信号线的用途,如接口信号线的功能分类等。
规程特性指明利用接口传输比特流的全过程及各项用于传输的事件发生的合法顺序,包括事件的执行顺序和数据传输方式,即在物理连接建立、维持和交换信息时,收发双方在各自电路上的动作序列。
以上这些功能都是由物理层的协议来完成的。
OSI 参考模型的 7 层中,1 ~ 3 层主要是完成数据交换和数据传输,称之为网络低层;5 ~ 7 层主要是完成信息处理服务的功能,称之为网络高层,底层与高层之间由第 4 层衔接。
TCP/IP 四层参考模型
<1>,应用层:TCP/IP 参考模型将 OSI 参考模型中会话层和表示层的功能合并到应用层来实现。
在 Internet 上常见的一些网络应用大多在这一层,用户通过应用层来使用 Internet 提供的各种网络服务,例如:www 服务、文件传输、电子邮件等。
每一种应用都使用了相应的协议来将用户的数据(网页、文件、电子邮件等)按照协议定义的格式进行封装,以便达到对应的控制功能,然后再利用下一层即传输层的协议进行传输,例如,
www
服务的应用层协议为HTTP
、文件传输
的应用层协议是FTP
、电子邮件
应用层协议包括SMTP
和POP3
等。每一个应用层协议一般都会使用到两个传输层协议之一进行数据传输:面向连接的传输控制协议 TCP 和无连接的用户数据报协议 UDP。
<2>,传输层:当应用层的程序将用户数据按照特定应用层协议封装好后,接下来就由传输层的协议负责把这些数据传输到接收方主机上对等的应用层程序。
传输层协议可以解决(如果需要)诸如端到端可靠性,保证数据按照正确的顺序到达等问题。
传输层负责在网络层和网络互联层之间传递消息,丝毫不会涉及信息如何在网络中传输,而是交给下面的网络互联层去解决。
TCP/IP 参考模型的传输层主要包括:
面向连接
、提供可靠数据流传输的传输控制协议 TCP
和无连接
、不提供可靠数据流传输的用户数据报协议 UDP
。
<3>,网络互联层:网络互联层是整个 TCP/IP 参考模型的核心,主要解决把数据分组发往目的网络或主机的问题。在这个过程中,要为分组的传输选择相应的路径(路由选择),完成分组的转发,提供网络层寻址————IP 地址。
网络互联层除了需要完成路由的功能外,也可以完成将不同类型的网络(异构网)进行互连的任务。
在 TCP/IP 参考模型中,
网络互联层的核心协议是 IP
,负责定义分组的格式和传输。IP 是无连接不可靠网络协议
,因此,IP 分组到达的顺序和发送的顺序可能不同,并且可能存在分组丢失的现象。网络互联层还包括
互联网控制报文协议 ICMP
、互联网多播组管理协议IGMP
以及路由协议,如 BGP、OSPF、RIP 等。
<4>,网络接口层:这一层对应 OSI 参考模型中的数据链路层
和物理层
,网络层 IP 分组在这一层被封装到底层网络的链路层数据帧中,并最终以比特流的形式在物理介质上进行传输。
- 在 TCP/IP 参考模型中,没有真正描述这一层的实现,只是要求能够提供给其上层————网络互联层一个访问接口,以便在其上传递 IP 分组。
计算机网络与因特网发展简史
网络应用
计算机网络应用体系结构
1、计算机网络应用体系结构的三种类型:
客户/服务器(C/S)结构:最主要的特征是通信只在客户与服务器之间进行,客户与客户之间不进行直接通信。
P2P(Peer to Peer)结构:每个对等端都同时具备 C/S 应用的客户与服务器的特征,
是一个服务器与客户的结合体
,对等端之间直接通信。混合结构:既有中心服务器存在,又有对等端(客户)间的直接通信。
网络应用通信基本原理
1、C/S 通信基本原理:服务器端运行的是服务器进程,被动地等待客户请求服务;客户端运行的是客户进程,主动发起通信,请求服务器进程提供服务。应用进程间遵循应用层协议交换应用层报文。
域名系统
层次化域名空间
1、层次树状结构的命名方法:「国家顶级域名nTLD」、「通用顶级域名gTLD」、「基础结构域名」。
域名服务器
1、域名解析:将域名映射为 IP 地址的过程。
2、域名服务器:为了实现域名解析,需要建立分布式数据库,存储网络中域名与 IP 地址的映射关系数据,这些数据库存储在域名服务器上,域名服务器根据用户的请求提供域名解析服务。
3、域名服务器分类:「跟域名服务器」、「顶级域名服务器」、「权限域名服务器」、「本地域名服务器」。
域名解析过程
1、递归查询:代替查询主机或其它域名服务器,进行进一步的域名查询,并将最终解析结果发送给查询主机或服务器。
2、迭代查询:只是将下一步要查询的服务器告知查询主机或服务器。
万维网应用
万维网应用结构
1、「web 服务器」、「浏览器」、「超文本传输协议(HTTP)」。
HTTP
1、HTTP 称之为超文本传输协议,定义浏览器如何向 Web 服务器发送请求以及 Web 服务器如何向浏览器进行响应。
2、版本:HTTP/1.0 和 HTTP/1.1。
3、HTTP 连接:非持久连接、持久连接,持久连接又分为「非流水流水方式持久连接,流水方式持久连接」。
4、HTTP 报文:
请求报文:从客户向服务器发送请求报文。
响应报文:从服务器到客户端的回答。
5、HTTP 典型的请求方法有:
GET:请求读取由 URL 标识的信息。
POST:给服务器添加信息(如:注释)。
HEAD:请求读取由 URL 所标识的信息的首部,无须在响应报文中包含对象。
OPTION:请求一些选项的信息。
PUT:在指明的 URL 下存储一个文档。
6、HTTP 状态码分类:
1xx:表示请求可能还需要进一步交互。
2xx:表示请求成功,即成功完成客户请求的操作,并进行响应。
3xx:表示重定向,即表示资源已移走,需要向新 URL 发请求。
4xx:表示客户端错误,由于客户端请求错误,无法成功响应。
5xx:表示服务端错误,由于服务端错误,无法成功响应。
Cookie
1、cookie 中文名称为「小型文本文件」,指某些网站为了辨别用户身份,进行会话跟踪而存储在用户本地终端上的数据。
2、cookie 弥补了 HTTP 协议无状态的不足,有利于进行用户跟踪并提供针对性的服务,但也带来一些安全问题。
3、cookie 工作原理如下图所示:
- 服务器端生成 cookie,发送给浏览器,浏览器将 cookie 保存到某个目录下的文本文件内,下次请求同一网站时就发送该 cookie 给服务器,服务器根据 cookie 值检索用户历史行为数据。
Internet 电子邮件
电子邮件系统结构
1、电子邮件系统主要包括邮件服务器、简单邮件传输协议(SMTP)、用户代理和邮件读取协议等。
SMTP
1、SMTP 是 Internet 电子邮件中核心应用层协议,实现邮件服务器之间或用户代理到邮件服务器之间的邮件传输。
2、SMTP 使用传输层 TCP 实现可靠数据传输,端口号 25。
3、SMTP 通过 3 个阶段的应用层交互完成邮件的传输,分别是握手阶段、邮件传输阶段和关闭阶段。
电子邮件格式与 MIME
FTP
P2P 应用
Socket 编程基础
发布时间: 2021-08-16
最后更新: 2021-12-09
本文标题: networkPrinciple
本文链接: https://dnhyxc.gitee.io/informal/network/index.html
版权声明: 本作品采用 CC BY-NC-SA 4.0 许可协议进行许可。转载请注明出处!