计算机网络的基本概念
一、计算机网络的概念
计算机网络是利用通信设备与通信链路或者通信网络,互联位置不同、功能自治的计算机系统,并遵循一定的规则实现计算机系统之间的信息交换,即:计算机网络是互连的、自治的计算机的集合。
二、网络协议
Internet中互连的端系统、分组交换设备或者其他网络设备在进行信息发送、接收或者转发的过程中,都需要遵循一些规则或约定,即网络协议。
三、协议的三要素
协议是网络通信实体之间在数据交换过程中需要遵循的规则或约定,是计算机网络有序运行的重要保证。任何一个协议都会有3个基本要素:语法、语义和时序。
语法:语法定义实体之间交换信息的格式与结构,或定义实体之间传输信号的电平等。
语义:语义就是定义实体之间交换的信息中需要发送哪些控制信息,这些信息的具体含义,以及针对不同含义的控制信息,接受信息端如何响应。
时序:时序也称为同步,定义实体之间交换信息的顺序以及如何匹配或适应彼此的速度。
四、计算机网络的功能
计算机网络的功能在于不同主机之间实现快速的信息交换。通过信息交换,计算机网络可实现资源共享这一核心功能,包括硬件资源共享,软件资源共享和信息资源共享。
五、计算机网络的分类
1. 按覆盖范围分类:
(1)个域网 PAN 。个域网通常是由个人设备通过无线通信技术构成小范围的网络,实现个人设备间的数据传输。个域网通常覆盖范围在 1~10m。
(2)局域网 LAN 。局域网通常部署在办公室、办公楼、厂区、校园等局部区域内,采用高速有线或无线链路连接主机,实现局部范围内高速数据传输。局域网通常覆盖范围在 10m~1km。
(3)城域网 MAN 。城域网是指覆盖在一个城市范围的网络,覆盖范围通常在 5~50km。
(4)广域网 WAN 。广域网覆盖范围在几十到几千Km,通常跨越更大的地理空间,可以实现异地城域网或局域网的互连。
2. 按拓扑结构分类:
网络拓扑是指网络中的主机,网络设备间的物理连接关系与布局。
按拓扑结构,计算机网络可以分为总线型拓扑结构、环形拓扑结构、星型拓扑结构、混合拓扑结构、树形拓扑结构和网状拓扑结构。
(1)总线型拓扑结构
总线型拓扑结构网络采用一条广播信道作为公共传输介质,称为总线,所有的结点均与总线连接,结点间的通信均通过共享的总线进行。由于总线是一条广播信道,所以任一节点通过总线发送数据时其他节点都会接收到承载这些数据的信号。
总线型拓扑结构的优点:
1. 所需电缆数量少;
2. 结构简单;
3. 易于扩展。
总线型拓扑结构的缺点:
1. 通信范围受限;
2. 故障诊断和隔离比较困难;
3. 容易产生冲突。
(2)环型拓扑结构
环形拓扑结构网络利用通信链路将所有结点连接成一个闭合的环。环中的数据传输通常是单向的(也可双向)传输,每个结点可以从环中接收数据,并向环中进一步转发数据。
环形拓扑结构的优点:
1. 所需电缆长度短;
2. 可以使用光纤;
3. 易于避免冲突。
环形拓扑结构的缺点:
1. 某结点的故障容易引起全网瘫痪;
2. 新结点的加入或撤出过程比较麻烦;
3. 存在等待时间问题。
(3)星形拓扑结构
星形拓扑结构网络包括一个中央结点,网络中的主机通过点对点通信链路与中央结点连接。中央结点通常是集线器、交换机等设备,主机之间的通信都需要通过中央结点进行。
星形拓扑结构的优点:
1. 易于监控与管理;
2. 故障诊断与隔离容易。
星形拓扑结构的缺点:
1. 中央结点是网络的瓶颈,一旦故障,全网瘫痪;
2. 网络规模受限于中央结点的端口数量。
(4)混合拓扑结构
混合拓扑结构网络是由两种以上简单拓扑结构网络混合连接而成的网络。绝大多数实际网络的拓扑都属于混合拓扑结构。
混合拓扑结构的优点:
1. 易于扩展,可以构建不同规模网络;
2. 可根据需要优选网络结构。
混合拓扑结构的缺点:
1. 网络结构复杂;
2. 管理与维护复杂。
(5)树型拓扑结构
树型拓扑结构网络可以看作是总线型拓扑或者星形拓扑网络的扩展。目前,很多局域网都采用这种拓扑结构。
树形拓扑结构的优点:
1. 易于扩展;
2. 故障隔离容易。
树形结构的缺点:
对根结点的可靠性要求高,一旦根结点故障,则可能导致网络大范围无法通信。
(6)网状拓扑结构
网状拓扑结构中的结点通过多条链路与不同的结点直接连接。
网状拓扑结构的优点:
1. 网络可靠性高;
2. 一条或多条链路故障时,网络仍可联通。
网状拓扑结构的缺点:
1. 网络结构复杂;
2. 造价成本高;
3. 选路协议复杂。
3. 按交换方式分类:
数据交换是指网络通过彼此互联的结点间的数据转接,实现将数据从发送结点送达目的结点的过程和技术。按网络所采用的数据交换技术,计算机网络可以分为电路交换网络、报文交换网络和分组交换网络。
4. 按网络用户属性分类:
(1)公用网。公用网是指由国家或企业出资建设,面向公众提供收费或免费服务的网络,用户只要按规定缴纳费用都可以接入网络,使用网络设施与服务。
(2)私有网。私有网是指由某个组织(政府部门或者企业)出资建设,专门面向该组织内部业务提供网络传输服务,不向公众开放的网络。
计算机网络结构
一、网络边缘
连接到网络上的计算机、服务器、智能手机、智能传感器、智能家电等称为主机或端系统。这些端系统位于网络的最边缘,因此,连接到网络上的所有端系统构成了网络边缘。网络边缘上的端系统运行分布式网络应用,在端系统之间进行数据交换,实现应用目的。
二、接入网络
接入网络是实现网络边缘的端系统与网络核心连接与接入的网络。常见的接入网络技术包括电话拨号接入、非对称数字用户线路ADSL、混合光纤同轴电缆HFC接入网络、局域网和移动接入网络。
三、网络核心
网络核心是由通信链路互连的分组交换设备构成的网络,作用是实现网络边缘中主机之间的数据中继与转发。
数据交换技术与计算机网络性能
一、数据交换的基本概念
为了连接更大的范围、更多数量的主机,可以将许多交换设备互连,构成一个数据中继与转发的“中间网络”,然后再将主机连接到距离较近的交换设备上,主机之间的数据传输通过“中间网络”实现中继与转发。这个中间网络不需要关心所传输数据的内容,而只是为这些数据从一个结点到另一个结点直至达到目的结点提供数据中继与交换功能,称之为数据交换网络,组成交换网络的结点(即交换设备)称为交换结点,交换结点和传输介质的集合称为通信子网,即网络核心。
二、数据交换技术
常见的数据交换技术包括电路交换、报文交换和分组交换。
1. 电路交换
在电路交换网络中,首先需要通过中间交换结点为两台主机之间建立一条专用的通信线路,称为电路,然后再利用该电路进行通信,通信结束后再拆除电路。利用电路交换进行通信,包括建立电路、传输数据和拆除电路三个阶段。
2. 报文交换
报文交换也称为消息交换,其工作过程为:发送方把要发送的信息附加上 发送/接收主机的地址及其他控制信息,构成一个完整的报文,然后以报文为单位在交换网络的各结点之间以 存储-转发 的方式传送,直至送达目的主机。
3. 分组交换
(1)分组交换的基本原理
分组交换需要将待传输数据(即报文)分割成较小的数据块,每个数据块附加上地址、序号等控制信息构成数据分组,每个分组独立传输到目的地,目的地将收到的分组重新组装,还原为报文。分组传输过程通常也采用 存储-转发 交换方式。
(2)分组交换的优点
1. 交换设备存储容量要求低;
2. 交换速度快;
3. 可靠传输效率高;
4. 更加公平。
(3)分组长度的确定
1. 分组长度与延迟时间。分组交换网络的 存储-转发 过程可以抽象为一个排队系统,基于排队论的分析发现,当分组具有相同的长度时,分组在交换过程中的延迟时间较小。因此,把报文按一定的标准长度分割为“分组”,就能够使交换设备以分组为单位对信息进行处理,从而缩短信息在交换过程中的延迟时间。
2. 分组长度与误码率。通信链路的信道误码率是确定分组长度时另一个需要重点考虑的因素。设分组长度为位,其中位为分组头长度,数据长度为 位,即有
若信道误码率位 ,则分组传输正确的概率(只考虑分组中位误码的情况)为
分组传输错误要求重发的概率为 ,在考虑到可能多次连续传输错误的情况下,可以得到最佳分组长度 为
最高信道利用率可以表示为
三、计算机网络的主要性能指标
1. 速率与带宽
速率是指网络单位时间内传送的数据量,用以描述网络传输数据的快慢,也称为数据传输速率或数据速率。
计算机网络传输的数据是以位为信息单位的二进制数据,速率的基本单位是 bit/s (位每秒),也称速率为比特率。同时也会用“带宽”这一术语描述速率。
在信号或信号处理领域中,带宽原本是指信号具有的频带宽度,即信号成分的最高频率与最低频率之差,单位为Hz(赫兹)。
在计算机网络中,当描述一条链路或信道的数据传输能力时,经常使用“带宽”一词表示链路或信道的最高数据速率,单位也是 bit/s。
2. 时延
时延是指数据从网络中的一个结点(主机或交换设备等)到达另一结点所需要的时间。分组的每跳传输过程主要产生四类时间延迟:
(1)结点处理时延。每个分组到达交换结点时,交换设备通常可能需要验证分组是否有差错,根据分组携带的信息检索转发表,确定如何转发该分组,还有可能修改分组的部分控制信息等。针对分组进行这些操作所消耗的时间总和,构成了结点处理时延,记为 。结点处理时延通常很小,并且对不同分组的结点处理时延变化也非常小,因此,在讨论网络总时间延迟时常常被忽略。
(2)排队时延。当一个分组到达交换结点,经过处理并明确需要从哪个输出链路进行转发后,分组需要在交换结点内被交换到输出链路,等待从输出链路发送到下一个交换结点(或目的主机)。此时,在该分组之前很有可能还有其他分组正在或等待交换到相同的输出链路,或者交换到输出链路后在该分组之前还有其他分组在等待通过输出链路进行发送。这些情形都需要分组分组在交换结点进行暂时缓存,排队等待输出链路可用,分组在缓存中排队等待的时间就是排队时延,记为 。
(3)传输时延。当一个分组在输出链路发送时,从发送第一位开始,到发送完最后一位为止,所用的时间,称为传输时延,也称为发送时延,记为 。假设分组长度为 Lbit,链路带宽(即速率)为 R bit/s,则分组的传输时延为
(4)传播时延。分组中的每个比特在发送到物理介质上时,是利用物理信号的某种特征表示的(即编码),比如利用脉冲电信号的高电平表示“1”,低电平表示“0”。不同物理信号在不同介质内的传播速度不同,比如真空中的光信号传播速度与电信号在铜介质中的传播速度是不同的。信号从发送端发送出来,经过一定距离的物理链路,到达接收端所需要的时间,称为传播时延,记为 。显然,若物理链路长度为 D 米,信号传播速度为 V 米每秒,则传播时延为
3. 时延带宽积
一段物理链路的传播时延与链路带宽的乘积,称为时延带宽积,记为 G ,于是
4. 丢包率
丢包率常被用于评价和衡量网络性能的指标,在很大程度上可以反映网络的拥塞程度,因为引发网络丢包的主要因素是网络堵塞。
丢包率可以定义为
式中, 为发送分组总数; 为接收分组总数; 为丢失分组总数。
5. 吞吐量
吞吐量表示在单位时间内源主机通过网络向目的主机实际送达的数据量,单位为 bit/s 或 B/S(字节每秒),记为 Thr 。吞吐量经常用于度量网络的实际数据传送能力,即网络实际可以达到的源主机到目的主机的数据传送速率。
计算机网络体系结构与参考模型
一、计算机网络分层体系结构的基本概念
计算机网络作为综合计算机技术与通信技术的复杂系统,在制定网络协议时经常采用的思路是将复杂的网络通信功能划分为由若干协议分别完成,然后将这些协议按照一定的方式组织起来,最终实现网络通信的所有功能。最典型的划分方式就是采用分层的方式来组织协议。
分层的核心思路是上一层的功能建立在下一层的功能基础上,并且在每一层内均要遵守一定的通信规则,即协议。目前,典型的层次化体系结构有 OSI 参考模型和 TCP/IP 参考模型两种。
二、OSI 参考模型
OSI 参考模型采用分层结构化技术,将整个计算机网络的通信功能分为7层,由低层至高层分别是:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。每一层都有特定的功能,并且上一层利用下一层的功能所提供的服务,完成本层功能。
1. 物理层
物理层的主要功能是在传输介质上实现无结构比特流传输。所谓无结构比特流是指不关心比特流实际代表的信息内容,只关心如何将 0 和 1 这些比特以合适的信号传送到目的地,因此,物理层要实现信号编码功能。物理层的另一项主要任务就是规定数据终端设备与数据通信设备之间接口的相关特性,主要包括机械、电气、功能和规程 4 个方面的特征。
2. 数据链路层
数据链路层的主要功能是实现在相邻结点之间数据可靠而有效的传输。为了能实现有效的差错控制,就采用了一种以“帧”为单位的数据块传输方式。要采用帧格式传输,就必须有相应的帧同步技术,这就是数据链路层的“成帧”功能,包括定义帧的格式、类型、成帧的方法等。
3. 网络层
网络层解决的核心问题是如何将分组通过交换网络传送至目的主机,因此,网络层的主要功能是数据转发与路由。在交换网络中,信息从源结点出发,要经过若干个中继结点的存储转发后,才能达到目的结点。这样一个包括源结点、中继结点、目的结点的集合称为从源结点到目的结点的路径。同时,网络层还要对进入交换网络的通信量加以控制,以避免通信量过大造成交换网络性能下降。
4. 传输层
传输层是第一个端到端的层次,也是 进程-进程 的层次。数据的通信表面上看是在两台主机之间进行,但实质上是发生在两个主机的进程之间。传输层的功能主要包括 复用/分解(区分发送和接收主机上的进程)、端到端的可靠数据传输、连接控制、流量控制和拥塞控制机制等。
5. 会话层
会话层是指用户与用户的连接,通过在两台计算机之间建立、管理和终止通信来完成对话。会话层的主要功能:在建立会话时,核实双方身份是否有权参加会话;确定双方支付通信费用;双方在各种选择功能方面(全双工/半双工)取得一致;在会话建立以后,需要对进程间的对话进行管理与控制。
6. 表示层
表示层主要用于处理应用实体间交换数据的语法,其目的是解决格式和数据表示的差别,从而为应用层提供一个一致的数据格式,使字符、格式等有差异的设备之间相互通信。除此之外,表示层还可以实现文本 压缩/解压 、数据 加密/解密 、字符编码的转换等功能。
7. 应用层
应用层与提供给用户的网络服务相关,这些服务非常丰富,包括文件传送、电子邮件、P2P应用等。应用层为用户提供了一个使用网络应用的“接口”。
在 OSI 参考模型中,1~3层主要是完成数据交换和数据传输,称之为网络低层;5~7层主要是完成信息处理服务的功能,称之为网络高层;底层与高层之间由第4层衔接。
三、面向连接的服务和无连接的服务
1. 面向连接的服务
面向连接的服务以电话系统最为典型,其过程如下:
第一步:某一方欲传送数据,首先给出对方的全称地址,并请求建立连接,当双方同意后,双方之间的通信链路就建立起来。
第二步:传送数据,通常以分组为单位,按序传送,不再标称地址,只标称所建立的链路号,并由收方对收到的分组予以确认,称为可靠传送方式;不确认则称为不可靠传送方式。
第三步:当数据传送结束后,拆除链路。
2. 面向无连接的服务
无连接的服务没有建立和拆除链路的过程,例如,邮政系统的用户在发送信件之前,不必与收信方进行任何消息交换。无连接的服务又称为数据报服务,要求每一个分组信息带有全称地址,独立选择路径,其到达目的地的顺序也是不定的,到达目的地后,还要重新对分组进行排序。
四、TCP/IP 参考模型
TCP/IP 参考模型包括应用层、传输层、网络互联层和网络接口层。每一层封装的数据包采用不同的名称。
1. 应用层
TCP/IP 参考模型将 OSI 参考模型中会话层和表示层的功能合并到了应用层来实现。在Internet上,用户通过应用层来使用 Internet 提供的各种服务。每一种应用都使用了相应的协议来将用户的数据(网页、文件、电子邮件等)按照协议定义的格式进行封装,以便达到对应的控制功能,然后再利用下一层即传输层的协议进行传输。
2. 传输层
当应用层的程序将用户数据按照特定应用层协议封装好后,接下来就由传输层的协议负责把这些数据传输到接收方主机上对等的应用层程序。传输层协议为运行在不同主机上的进程提供了一种逻辑通信机制。利用这种逻辑通信机制,两个进程可以不用考虑两者之间的物理连接方式而实现 发送/接收 消息。传输层协议可以解决诸如端到端可靠性,保证数据按照正确的顺序到达等问题。
3. 网络互联层
网络互联层是整个 TCP/IP 参考模型的核心,主要解决把数据分组发往目的网络或主机的问题。在这个过程中,要为分组的传输选择相应的路径(路由选择),完成分组的转发,提供网络层寻址——IP地址。在 TCP/IP 参考模型中,网络互联层的核心协议是 IP,负责定义分组的格式和传输。
4. 网络接口层
网络接口层对应 OSI 参考模型中的数据链路层和物理层,网络层IP分组在这一层被封装到底层网络的链路层数据帧中,并最终以比特流的形式在物理介质上进行传输。
五、OSI 参考模型与 TCP/IP 参考模型的比较
对比 TCP/IP 参考模型与 OSI 参考模型,TCP/IP 参考模型缺少 OSI 参考模型中功能比较少的表示层与会话层,而 TCP/IP 参考模型的网络接口层则相当于合并了OSI参考模型的数据链路层与物理层。