因特网概述
网络、互连网和因特网
网络(Network)由若干个结点(Node)和连接这些结点的链路(Link)组成。
多个网络还可以通过路由器互连起来,这样就构成了一个覆盖范围更大的网络,即为互联网(互联网)。因此,互连网是“网络的网络(Network of Networks)”。
因特网(Internet)是世界上最大的互连网络(用户数以亿计,互连的网络数以百万计)。
internet与Internet的区别
- internet(互联网或互连网)是一个通用名词,它泛指由多个计算机网络互连而成的网络。这些网络之间的通信协议是可以任意的。
- Internet(因特网)则是一个专用名词,它指当前全球最大的、开放的、由多网络相互连接而成的特定计算机网络,它采用TCP/IP协议族作为通信的规则,其前身是美国的ARPANET。
ISP(Internet Service Provider)
什么是ISP?
ISP译为因特网服务提供者,ISP可以从管理机构申请到很多的IP地址,机构和个人可以通过某个ISP获取到IP地址的使用权,这一点很重要,因为因特网上的主机都必须有IP地址才能进行网络通信,这样就能通过ISP接入到因特网。
基于ISP的三层结构的因特网
- 第一层ISP被称为因特网主干网(主干ISP),第二层被称为地区网(地区IPS),第三次IPS被称为本地网(本地ISP)
- 主干网:一般能覆盖国际范围拥有高速链路和交换设备。(第一层ISP之间直接互联)
- 地区网:通常具有区域性或国家性覆盖规模,第二层ISP和一些大公司都是第一层ISP的用户,(与少数第一层ISP相连接)
- 本地网:只拥有本地范围的网络,一般校园网企业网,第二层ISP的用户。
- 一个但某个用户能接入到因特网,那么它也可以成为一个ISP,但需要调制器或路由器这样的设备,让其它用户能够与它相连。
因特网的组成
边缘部分
- 由所有连接在因特网上的主机(端系统)组成。这部分用户是直接使用的,用来通信(传送数据、音频或视频)和资源共享。
核心部分
- 由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换)
三种交换模式
电路交换(Circuit Switching)
如果有n部电话机需要两两相连,就需要n(n - 1)/2条电线,这样做太过于麻烦,于是就使用一个间设备将这些电话连接起来,这个中间设备就是电话交换机,每一个电话都连接在电话交换机上,将需要通信的任意两部电话的电话线路按需接通。
- 电话交换机接听电话线的方式称为电路交换。
- 从通信资源分配来看,交换(Switching)就是按照某种方式动态地分配传输线路的资源。
- 电路交换的三个步骤:
-
- 1.建立连接(分配通信资源)
-
- 2.通话(一直占用通信资源)
-
- 3.释放连接(归还通信资源)
- 当使用电路交换来传输计算机数据时,其路线的传输效率往往很低。
分组交换(Packet Switching)
英特网中最重要的分组交换机就是路由器,它将各个网络互联起来并对接收到的分组进行转发(分组交换)。
把要发送的数据(整块数据,比如一个word文档)称为一个报文,发送报文之前,发送源主机将报文划分为多个更小的等长数据段,在每个数据段前面加一写必要的控制信息(比如目的地址)组成首部,就构成一个分组,也可称为包,首部就叫包头。
分组交换机(路由器)就根据首部的目的地址来查表转发,发到目的地主机,然后目的地主机将各数据段去掉首部,组合,还原出原始报文。
各分组传输过程有不同路径即不同路由;分组乱序,即分组达到目的地的顺序不一定和分组在源站的发送顺序相同;才外还有传输过程的分组丢失、误码、重复
- 发送方:构造分组 发送分组
- 路由器:缓存分组 转发分组 —简称为存储转发
- 接收方:接收分组 还原分组
报文交换
报文交换中的交换节点也采用存储转发方式,但报文交换对报文没有大小限制,这就要求交换节点有较大的缓存空间(也就是不分组了,直接将报文存储转发)。报文交换主要用于早期的电报通信网,现在较少使用,通常被更先进的分组交换方式取代。
三种交换方式的缺点优点
电路交换
优点:
- 通信时延小
- 有序传输
- 没有冲突
- 适用范围广
- 实时性强
- 控制简单
缺点:
- 建立连接时间长
- 线路独占,使用效率低
- 灵活性差
- 难以规格化
报文交换
优点:
- 无需建立连接
- 动态分配路线
- 提高线路可靠性
- 提高线路利用率
- 提供多目标服务
缺点:
- 引起了转发时延
- 需要较大存储缓存空间
- 需要传输额外的信息量
分组交换
优点:
- 无需建立连接
- 线路利用率高
- 简化了存储管理
- 加速传输
- 减少出错概率和重发数据量
缺点:
-
引起了转发时延
-
需要传输额外的信息量
-
对于数据报服务,存在失序、丢失或重复分组的问题;对于虚电路服务,存在呼叫建立、数据传输和虚电路释放三个过程
计算机网络的定义和分类
计算机网络的定义
-
计算机网络的精确定义并未统一
-
计算机网络的最简单的定义是:一些互相连接的、自治的计算机的集合。
-
- 互连:是指计算机之间可以通过有线或无线的方式进行数据通信
-
- 自治:是指独立的计算机,它有自己的硬件和软件,可以单独运行和使用;
-
- 集合:是指至少需要两台计算机
-
计算机网络的较好的定义是:计算机主要是由一些通用的、可编程的硬件互联而成,而这些硬件并非专门用来实现某一特定的目的(例如,传送数据或视频信号)。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用
-
- 计算机网络所连接的硬件,并不限于一般的计算机,而是包括了智能手机等智能硬件。
-
- 计算机网络并非专门用来传输数据,而是能够支持很多种应用(包括今后可能出现的应用)。
计算机网络的分类
按交换技术分类
- 电路交换网络
- 报文交换网络
- 分组交换网络
按使用者分类
公用网
- 致电信公司出资建造的大型网络,“公用”的意思就是指愿意按电信公司的规定缴纳费用的人都可以使用这种网络,因此公用网也可称为公众网。
专用网
- 是指某个部门为本单位的特殊业务工作的需要建立而建立的网络。网路不向本单位以外的人提供服务(例如,军队、铁路、电力等系统)。
按传输介质分类
有线网络
- 有线网是采用同轴电缆、双绞线、光钎等有型的实体物理介质来传输数据的网络。
无线网络
- 无线网是采用微波、卫星等无线形式来传播数据的网络。
按覆盖范围分类
广域网 (Wide Area Network, WAN, 也称为远程网)
- 覆盖范围:几十公里 —— 几千公里,可以覆盖一个国家、地区、甚至横跨几个州;
- 广域网是因特网的核心部分,其任务是为核心路由器提供远距离(例如,跨越不同的国家)高速连接,互连在不同区域的城域网(MAN)和局域网(LAN)。
城域网 (Metropolitan Area NetWork, MAN)MAN
- 覆盖范围:10km~100km
- 用于将一个城市、一个地区的企业、机关或学校的局域网连接起来,实现区域内的资源共享
局域网 (Local Area NetWork, LAN)
- 覆盖范围:常见的办公室、宿舍或网吧中的网络就是局域网。几米到10km以内。
- 特点:连接范围窄,用户少,配置容易,连接速率高。
个域网 (Personal Area Network, PAN, 也称无线个人区域网WPAN)
- 它不同于上述网络,不是用来连接普通计算机的,而是在个人工作的地方把属于个人使用的电子设备(例如,便携式计算机、打印机、鼠标、键盘等),用无线技术连接起来的网络。
按拓扑结构分类
总线型结构
- 总线型结构是指各结点均挂在一条总线上,地位平等,无中心结点控制,其传递方向总是从发送消息的结点开始向两端扩散,如同广播电台发散信息一眼,因此又称广播式计算机网络
- 优点:建网容易、增减结点方便、节省线路;
- 缺点:重负载时通信效率不高,总线任意一处出现故障,则全网瘫痪。
星型结构
- 星型结构是指各工作站以星型方式连接成网,实际上可以看做是在总线结构的网络,其公用总线缩成一个点形成的网络结构。星型网络有中央结点,其他工作站。服务器等结点都与中央结点直接相连,这种结构以中央结点为中心,因此称为集中式网络。
- 优点:结构简单、便于管理;控制简单、便于建网;网络延时小,传输误差底。
- 缺点:成本高、可靠性较低、资源共享能力也较差,但由于作为中心结点的设备近年来可靠性大幅提高、价格下降,因此星型结构网络目前在小型网络中占据较大的比例。
环形网络
- 环型结构由网络中若干结点通过点到点的链路首尾连形成一个闭合的环。这种结构使用公共传输电缆组成环型连接,数据在环路中沿着一个方向在各个结点间传输,信息从一个结点到另一个结点。
- 优点:
网状型网络
- 在网状结构中,网络的每台电脑设备之间均有点到点的链路连接,这种连接不经济,只有每个站点都要频繁地互相发送信息时才使用这种方法。它的安装配置也很复杂,但系统可靠性高,容错能力强。有时网状结构也称为分布式结构
- 优点:可靠性高
- 缺点:控制复杂、线路成本高
计算机网络的性能指标
性能指标可以从不同的方面来度量计算机网络的性能。
常用的计算机网络的性能指标有以下8个:
速率
- 速率:连接在计算机网络上的主机在数字信道上传送比特的速率,也称为比特率或数据率。
- bit/s (b/s, bps) , kb/s = 10^3^ b/s (bps) , Mb/s = k $\times$ Kb/s = 10^3^ $\times$ 10^3^ b/s = 10^6^ b/s (bps) , Gb = k $\times$ Mb/s = 10^3^ $\times$ 10^6^ b/s = 10^9^ b/s (bps) , Tb/s = k $\times$ Gb/s = 10^3^ $\times$ 10^9^ b/s = 10^12^ b/s (bps)
- 常用数据单位:bit/s(b/s, bps) , kb/s = b/s
- 比特:8 bit = 1 Byte , KB = 2^10^ B , MB = K $\times$ KB = 2^10^ $\times$ 2^10^ B = 2^20^ B , GB = K $\times$ MB = 2^10^ $\times$ 2^20^ B = B , TB = K $\times$ GB = 2^10^ $\times$ 2^30^ B = B
带宽
- 带宽在模拟信号中的意义:
- 单位:Hz (kHz,MHz,GHz)
- 信号所包含的各种不同频率成分所占领据的频率范围;
- 带宽在计算机网络中的意义:
- 单位:b/s (kb/s, Mb/s, Gb/s, Tb/s)
- 用来表示网络的通信线路所能传送的数据的能力,因此网络带宽表示在单位时间内从网路某一点到达另外一点所能通过的“最高数据率”;
吞吐量
- 表示在单位时间内通过某个网络(或信道、接口)的数据量。
- 吞吐量被经常用于对现实世界中的网络的一种测量,以便知道实际上到底有多少数据量能够通过网络。
- 吞吐量受网络的带宽或额定速率的限制。
时延
- 网络时延:
- 发送时延
$$\frac{分组长度(b)}{发送速率(b/s)}$$ - 传播时延
$$\frac{信道长度(m)}{电磁波传播速率(m/s)}$$ - 电磁波传播速率:自由空间:3 $\times$ 10^8^ m/s;铜线:2.3 $\times$ 10^8^ m/s;光纤:2.0 $\times$ 10^8 m/s。
- 处理时延:一般不方便计算
时延带宽积
- 时延带宽积 = 传播时延 $\times$ 带宽
- 若发送端连续发送数据,则在第一个比特即将到达终点时,发送端就已经发送了时延带宽积个比特;
- 链路的时延带宽积又称为以比特为单位的链路长度。
往反时间
- RTT(Round-Trip Time)往返时间在计算机网络中它是一个重要的性能指标。表示从发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认,不包含数据传输时间)总共经历的时间。
利用率
$$
利用率\left {
\begin{array}{c}
信道利用率 \ 网络利用率
\end{array}
\right.
$$ - 信道利用率:用来表示某信道有百分之几的时间是被利用的(有数据通过)。
- 网络利用率:全网络信道利用率的加权平均。
- 根据排队论,当某信道的利用率增大时,该信道引起的时延也会迅速增加;
- 因此,信道利用率并非越高越好;
- 如果令D0表示网络空闲时的时延,D表示网络当前的时延,那么在适当的假定条件下,可以用下面的简单公式来表示D、D0和利用率U之间的关系:
- $$D=\frac{D~0~}{1-U}$$
-
- 当网络的利用率达到50%时,时延就要加倍;
-
- 当网络的利用率超过50%时,时延急剧增大;
-
- 当网络的利用率接近100%时,时延就趋于无穷大;
-
- 因此,一些较大主干网的ISP通常会控制它们的信道利用率不超过50%。如果超过了,就要准备扩容,增大线路的宽带。
- 也不能使信道利用率太低,这会使宝贵的通信资源白白浪费。应该使用一些机制,可以根据情况动态调整输入到网络中的通信量,使网络利用率保存在一个合理的范围内。
丢包率
- 丢包率即分组丢失率,是指在一定范围内,传输过程中丢失的分组数量与总分组数量的比例;
- 分组丢失的两个主要原因:分组误码,结点交换机缓存队列满(网络拥塞)
计算机网络体系结构(重点)
计算机网络体系结构
OSI体系结构(法律上的国际标准)
- 物理层
- 数据链路层
- 网络层
- 运输层
- 会话层
- 表示层
- 应用层
TCP/IP体系协议(事实上的国际标准)
- 网络接口层 网络接口1 网络接口2 为了将不同的网络接口进行互连,因此它的网络接口层并没有规定什么具体的内容。
- 网际层 IP IP协议可以将不同的网络接口进行互连,并向TCP协议和UDP协议提供网络互联服务。
-
- IP协议作为TCP/IP体系界中的核心协议,负责互连不同的网络接口(IP over everything;),为各种网络应用提供服务(everything over IP).
- 运输层 TCP TCP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供可靠传输的服务 UDP UDP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应的协议提供不可靠传输的服务。
- 应用层 HTTP SMTP DNS RTP
原理体系结构(适于教学)
- 物理层
- 数据链路层
- 网络层
- 运输层
- 应用层
计算机网络体系结构分层的必要性
- 物理层:解决使用何种信号来传输比特的问题
- 数据链路层:解决分组在一个网络(或一段链路)上的传输问题
- 网络层:解决分组在多个网络上传输(路由)的问题
- 运输层:解决进程之间基于网络的通信问题
- 解决通过应用进程的交互来实现特定网络应用的问题