您的位置:首页 > 理论基础 > 计算机网络

计算机网络基础知识

2017-06-24 00:39 459 查看

互联网的概述

1、三网融合:电信网络、有线电视网络、计算机网络。

2、互联网的两个基本特点:连通性和共享。

连通性(connectivity):就是互联网使上网用户之间,不管相距多远,都可以非常便捷、非常经济地交换各种信息(数据,以及各种音频视频),好像这些用户终端都彼此直接连通一样。

共享即资源共享:资源共享的含义是多方面的。可以是信息共享、软件共享,也可以是硬件共享。例如,从服务器上下载资源。

3、计算机网络由若干结点(node)和连接这些结点的链路(link)组成。网络中的结点可以是计算机、集线器、交换机或路由器等。

4、网络之间还可以通过路由器互连起来,这就构成了一个覆盖范围更大的计算机网络。 这样的网络称为互连网(internetwork或Internet)。因此互连网是“网络的网络”(network of networks) 。



5、网络把许多计算机连接在一起,而互连网则把许多网络通过路由器连接在一起。与网络相连的计算机常称为主机。

还有一点也必须注意,就是网络互连并不是把计算机仅仅简单地在物理上连接起来,因为这样做并不能达到计算机之间能够相互交换信息的目的。我们还必须在计算机上安装许多使计算机能够交换信息的软件才行。因此当我们谈到网络互连时,就隐含地表示在这些计算机上己经安装了适当的软件,因而在计算机之间可以通过网络交换信息。

6、两个不同意义的internet和Internet

internet 互连网,是一个通用名词。泛指由多个计算机网络互连而成的计算机网络。通信协议可以是任意的

Internet 互联网或者因特网,是一个专用名词。全球最大的、开放的、由众多网络互相连接而成的特定互连网。采取TCP/IP协议簇作为通信规则。

互联网的组成

(1)、边缘部分:由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。

(2)、核心部分:由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)。



互联网的边缘部分

在网络边缘的端系统之间的通信方式通常可划分为两大类:客户一服务器方式(C/S方式)对等方式(P2P方式)

1、客户一服务器方式(C/S方式)

客户是服务请求方,服务器是服务提供方。



2、对等方式(P2P方式)

指两台主机在通信时并不区分哪一个是服务请求方哪一个是服务提供方。

只要两台主机都运行了对等连接软件(P2P软件),它们就可以进行平等的、对等连接通信。



互联网的核心部分

网络核心部分要向网络边缘中的大量主机提供连通性,使边缘部分中的任何一台主机都能够向其他主机通信。

在网络核心部分起特殊作用的是路由器(router),路由器是实现分组交换(packet switching)的关键构件,其任务是转发收到的分组。

1、电路交换

(1)、流程为建立连接(占用通信资源) > 通话(一直占用信道资源) > 释放(释放信道资源)

(2)、电路交换的一个重要特点就是在通话的全部时间内,通话的两个用户始终占用端到端的通信资源。

(3)、电路交换的传输效率很低,因为往往通信都是突发的,时间也很短,也可能造成一种占用资源的浪费行为。

2、分组交换

(1)、分组交换则采用存储转发技术

(2)、我们把要发送的整块数据称为一个报文(message)。在发送报文之前,先把较长的报文划分成为一个个更小的等长数据段,在每一个数据段前面,加上一些由必要的控制信息组成的首部(header)后,就构成了一个分组(packet)。分组又称为“包”,而分组的首部也可称为“包头”。分组是在互联网中传送的数据单元。分组中的“首部”是非常重要的,正是由于分组的首部包含了诸如目的地址和源地址等重要控制信息,每一个分组才能在互联网中独立地选择传输路径,并被正确地交付到分组传输的终点。



(3)、核心层是由许多网络和路由器连接的,而主机主要在边缘部分,核心层路由器和路由器之间是用高速链路相连接的,而边缘路由器连接到核心层之间是用相对较低的速率连接的。

(4)、 主机是为用户进行信息处理。路由器是转发分组,即进行分组交换的。

路由器收到一个分组,先暂时存储一下,检查其首部,查找转发表,按照首部中的目的地址,找到合适的接口转发出去,把分组交给下一个路由器。这样一步一步地(有时会经过几十个不同的路由器)以存储转发的方式,把分组交付最终的目的主机。

各路由器之间必须经常交换彼此掌握的路由信息,以便创建和动态维护路由器中的转发表,使得转发表能够在整个网络拓扑发生变化时及时更新。

(5)、分组交换的优点



(6)、分组交换的缺点

分组在各路由器存储转发时需要排队,这就会造成一定的时延。因此,必须尽量设法减少这种时延。

由于分组交换不像电路交换那样通过建立连接来保证通信时所需的各种资源,因而无法确保通信时端到端所需的带宽。

各分组必须携带的控制信息也造成了一定的开销(overhead)。整个分组交换网还需要专门的管理和控制机制。

3、报文交换

不要求在两个通信结点之间建立专用通路。结点把要发送的信息组织成一个数据包——报文,该报文中含有目标结点的地址,完整的报文在网络中一站一站地向前传送。

三种交换方式在数据传送阶段的主要特点:

电路交换—整个报文的比特流连续地从源点直达终点,好像在一个管道传送。

报文交换—整个报文先传送到相邻结点,全部存储下来后查找转发表,转发到下一个结点。

分组交换—单个分组(这只是整个报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一个结点。



从图可看出,若要连续传送大量的数据,且其传送时间远大于连接建立时间,则电路交换的传输速率较快。报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可提高整个网络的信道利用率。由于一个分组的长度往往远小于整个报文的长度,因此分组交换比报文交换的时延小,同时也具有更好的灵活性。

计算机网络的分类

按照网络的作用范围

1、广域网WAN(Wide Area Network):作用范围为几十到几千公里的网络,广域网是互联网的核心部分,其任务是通过长距离(例如,跨越不同的国家)运送主机所发送的数据。连接广域网各结点交换机的链路一般都是高速链路,具有较大的通信容量。

2、城域网MAN(Metropolitan Area Network): 一般一个城市 5-50km。城域网可以为一个或几个单位所拥有,但也可以是一种公用设施,用来将多个局域网进行互连。

3、局域网LAN(Local Area Network):一个区域如学校 1km左右

4、个人区域PAN(Personal Area Network):把属于个人的电子设备用无线技术连接起来的网络。其范围很小,大约在10m左右。

按照网络的使用者

1、公用网(public network):指电信公司(国有或私有)出资建造的大型网络。“公用”的意思就是所有愿意按电信公司的规定交纳费用的人都可以使用这种网络。

2、专用网(private network):某个部门为满足本单位的特殊业务工作的需要而建造的网络。这种网络不向本单位以外的人提供服务。例如,军队、铁路、银行、电力等系统均有本系统的专用网。

计算机网络的性能指标

速率

速率指的是数据的传送速率,它也称为数据率(data rate)或比特率(bit rate)。

速率的单位是bit/s(比特每秒)(或b/s,有时也写为bps,即bit per second)。

计算机发送出的信号都是数字形式的。比特(bit)来源于binary digit,意思是一个“二进制数字”,因此一个比特就是二进制数字中的一个1或0。

当提到网络的速率时,往往指的是额定速率标称速率,而并非网络实际上运行的速率。

带宽

带宽有两种解释

(1)、某个信号具有的频带宽度 单位 Hz

(2)、计算机网络中的带宽表示网络中某通道传输数据的能力,单位b/s。 因此网络带宽表示在单位时间内网络中的某信道所能通过的“最高数据率”。

吞吐量

单位时间内通过某个网络的实际数据量 单位b/s

吞吐量受网络的带宽或网络的额定速率的限制。例如,对于一个1Gbids的以太网,就是说其额定速率是1 Gbit/s,那么这个数值也是该以太网的吞吐量的绝对上限值。因此,对1 Gbit/s的以太网,其实际的吞吐量可能也只有100 Mbit/s,或甚至更低,并没有达到其额定速率。

请注意,有时吞吐量还可用每秒传送的字节数或帧数来表示。

时延

(1)、时延(delay或latency)是指数据从网络的一端传送到另一端所需的时间。

(2)、数据在网络中经历的总时延就是以下四种时延之和:

总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延

发送时延(transmission delay) 是主机或路由器发送数据帧所需要的时间,也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。

发送时延也叫做传输时延(我们尽量不采用传输时延这个名词,因为它很容易和下面要讲到的传播时延弄混)。

发送时延的计算公式是:



传播时延(propagation delay) 是电磁波在信道中传播一定的距离需要花费的时间。

传播时延的计算公式是:



以上两种时延发生的地方不同。

发送时延发生在机器内部的发送器中(一般就是发生在网络适配器中,与传输信道的长度(或信号传送的距离)没有任何关系。

但传播时延则发生在机器外部的传输信道媒体上,而与信号的发送速率无关。信号传送的距离越远,传播时延就越大。

处理时延:主机或路由器在收到分组时要花费一定的时间进行处理,例如分析分组的首部、从分组中提取数据部分、进行差错检验或查找适当的路由等,这就产生了处理时延。

排队时延:分组在经过网络传输时,要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。在路由器确定了转发接口后,还要在输出队列中排队等待转发。这就产生了排队时延。排队时延的长短往往取决于网络当时的通信量。当网络的通信量很大时会发生队列溢出,使分组丢失,这相当于排队时延为无穷大。



时延带宽积



如下图,这是一个代表链路的圆柱形管道,管道的长度是链路的传播时延(请注意,现在以时间作为单位来表示链路长度),而管道的截面积是链路的带宽。因此时延带宽积就表示这个管道的体积,表示这样的链路可容纳多少个比特。



例如,设某段链路的传播时延为20 ms,带宽为10 Mbit/s。算出



这就表明,若发送端连续发送数据,则在发送的第一个比特即将达到终点时,发送端就己经发送了20万个比特,而这20万个比特都正在链路上向前移动。因此,链路的时延带宽积又称为以比特为单位的链路长度。

往返时间RTT



利用率





计算机网络体系结构



注:五层协议的体系结构只是为介绍网络原理而设计的,实际应用还是TCP/IP四层体系结构。

五层协议

1、应用层(application layer)

(1)、应用层的任务是通过应用进程间的交互来完成特定网络应用

(2)、应用层协议定义的是应用进程间通信和交互的规则。

这里的进程就是指主机中正在运行的程序。对于不同的网络应用需要有不同的应用层协议。如域名系统DNS,支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,等

(3)、应用层交互的数据单元称为报文(message)。

2、运输层(transport layer)

(1)、运输层的任务是负责向两台主机中进程之间的通信提供通用的数据传输服务。应用进程利用该服务传送应用层报文。

所谓“通用的”,是指并不针对某个特定网络应用,而是多种应用可以使用同一个运输层服务。

由于一台主机可同时运行多个进程,因此运输层有复用和分用的功能。

复用就是多个应用层进程可同时使用下面运输层的服务,

分用和复用相反,是运输层把收到的信息分别交付上面应用层中的相应进程。

(2)、运输层主要使用以下两种协议:

传输控制协议TCP (Transmission Control Protocol)—提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段(segment) 。

用户数据报协议UDP(User Datagram Protocol)—提供无连接的、尽最大努力(best-effort)的数据传输服务(不保证数据传输的可靠性),其数据传输的单位是用户数据报

3、网络层(network layer)

(1)、网络层负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段用户数据报封装成分组进行传送。

在TCP/IP体系中,由于网络层使用IP协议,因此分组也叫做IP数据报,或简称为数据报。

请注意:不要将运输层的”用户数据报UDP“和网络层的”IP数据报“弄混。此外,无论在哪一层传送的数据单元,都可笼统地用”分组“来表示。

(2)、网络层的另一个任务就是要选择合适的路由,使源主机运输层所传下来的分组,能够通过网络中的路由器找到目的主机。

互联网是由大量的异构(heterogeneous)网络通过路由器(router)相互连接起来的。互联网使用的网络层协议是无连接的网际协议IP (Internet Protocol)和许多种路由选择协议,因此互联网的网络层也叫做网际层IP层

4、数据链路层(data link layer)

(1)、在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧(framing),在两个相邻结点间的链路上传送帧(frame)。

每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制等)。

在接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始和到哪个比特结束。这样,数据链路层在收到一个帧后,就可从中提取出数据部分,上交给网络层。

控制信息还使接收端能够检测到所收到的帧中有无差错。如发现有差错,数据链路层就简单地丢弃这个出了差错的帧,以免继续在网络中传送下去白白浪费网络资源。

如果需要改正数据在数据链路层传输时出现的差错(这就是说,数据链路层不仅要检错,而且要纠错),那么就要采用可靠传输协议来纠正出现的差错。这种方法会使数据链路层的协议复杂些。

5、物理层(physical layer)

在物理层上所传数据的单位是比特。发送方发送1时,接收方应当收到1而不是0。

因此物理层要考虑用多大的电压代表“1”或“0”,以及接收方如何识别出发送方所发送的比特。物理层还要确定连接电缆的插头应当有多少根引脚以及各引脚应如何连接。当然,解释比特代表的意思,就不是物理层的任务。

请注意,传递信息所利用的一些物理媒体,如双绞线、同轴电缆、光缆、无线信道等,并不在物理层协议之内而是在物理层协议的下面。因此也有人把物理层下面的物理媒体当作第0层。

数据在各层之间的传递过程



假定主机1的应用进程AP1向主机2的应用进程AP2传送数据。AP1先将其数据交给本主机的第5层(应用层)。第5层加上必要的控制信息H5就变成了下一层的数据单元。第4层(运输层)收到这个数据单元后,加上本层的控制信息H4,再交给第3层(网络层),成为第3层的数据单元。依此类推。不过到了第2层(数据链路层)后,控制信息被分成两部分,分别加到本层数据单元的首部(H2)和尾部(T2);而第1层(物理层)由于是比特流的传送,所以不再加上控制信息。

请注意,传送比特流时应从首部开始传送。

OSI参考模型把对等层次之间传送的数据单位称为该层的协议数据单元PDU (Protocol Data Unit)。

当这一串的比特流离开主机1经网络的物理媒体传送到路由器时,就从路由器的第1层依次上升到第3层。每一层都根据控制信息进行必要的操作,然后将控制信息剥去,将该层剩下的数据单元上交给更高的一层。当分组上升到了第3层时,就根据首部中的目的地址查找路由器中的转发表,找出转发分组的接口,然后往下传送到第2层,加上新的首部和尾部后,再到最下面的第1层,然后在物理媒体上把每一个比特发送出去。

当这一串的比特流离开路由器到达目的站主机2时,就从主机2的第1层按照上面讲过的方式,依次上升到第5层。最后,把应用进程AP1发送的数据交给目的站的应用进程AP2。

实体、协议、服务和服务访问点

1、实体(entity):表示任何可发送或接收信息的硬件或软件进程。

在许多情况下,实体就是一个特定的软件模块。

2、协议是控制两个对等实体(或多个实体)进行通信的规则的集合。

协议三要素:

(1)、语法,即数据与控制信息的结构或格式

(2)、语义,即需要发出何种控制信息,完成何种动作以及做出何种响应

(3)、同步,即事件实现顺序的详细说明

协议的两种形式:

(1)、文字描述(对人)

(2)、程序代码(对计算机)

在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。

3、协议与服务有着很大的区别

(1)、协议的实现保证了能够向上一层提供服务。使用本层服务的实体只能看见服务而无法看见下面的协议。也就是说,下面的协议对上面的实体是透明的。

(2)、协议是“水平的”,即协议是控制对等实体之间通信的规则。但服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。

另外,并非在一个层内完成的全部功能都称为服务。只有那些能够被高一层实体“看得见”的功能才能称之为“服务”。

上层使用下层所提供的服务必须通过与下层交换一些命令,这些命令在OSI中称为服务原语

在同一系统中相邻两层的实体进行交互(即交换信息)的地方,通常称为服务访问点SAP (Service Access Point)。服务访问点SAP实际上是一个逻辑接口。

OSI把层与层之间交换的数据的单位称为服务数据单元SDU (Service Data Unit),它可以与PDU不一样。

例如,可以是多个SDU合成为一个PDU,也可以是一个SDU划分为几个PDU。

4、相邻两层之间的关系



http://blog.csdn.net/tremblet/article/details/56282786#t0

http://blog.chinaunix.net/uid-26404201-id-3942661.html

http://www.cnblogs.com/maybe2030/p/4781555.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: