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

2017-01-19 计算机网络和因特网-网络核心 上 ISP互联、丢包、时延、协议分层

2017-01-23 11:21 399 查看
2017-01-19 计算机网络和因特网-网络核心 上 ISP互联、丢包、时延、协议分层

计算机网络和因特网-网络核心-网络的网络

端用户和内容提供商与ISP的连接仅仅是因特网的一小部分,因为因特网是由数以亿计的用户构成的。要如此,接入ISP自身必须互联。通过创建网络的网络可以做到这一点,理解这个短语是理解因特网的关键。

不存在一个单一的全球网络承载所有接入的端系统。相反,在任何给定的区域,可能有一个区域ISP(reginal ISP),区域中的接入ISP与之连接。每个区域ISP则与第一层ISP(tier-1 ISP)连接。不仅有多个竞争的第一层ISP,而且这一区域可能有多个竞争的区域ISP。在这样的等级结构中,每个接入ISP用户向区域ISP支付其连接费用,并且每个区域ISP向他连接的第一层ISP支付费用。当然用户也可以直接接入第一层ISP。

值得注意的是第一层ISP不向任何人付费,因为它位于该等级结构的顶部。

使事情更为复杂的是,在某些区域,可能有较大的区域ISP,区域中较小的区域ISP与之相连,较大的区域ISP则与第一层ISP连接。

为了建造一个与今天的因特网相识的网络,我们引入如下概念:

存在点(Point of Presence,PoP)、多宿、因特网交换点(Internent exchange point,IXP)。

PoP存在于等级结构的所有层次,但底层(接入ISP)等级除外。一个PoP只是提供商网络中的一台或多台路由器(在相同位置)群组,它们从第三方通信提供商租用高速链路直接将它的路由器之一连接到位于该PoP的一台路由器。

任何ISP(除了第一层ISP)可以选择为多宿(multi-home),既可以与两个或更多提供商ISP连接。当一个ISP多宿时,即使他的提供商之一出现故障,他仍然能够继续发送和接收分组。

客户ISP向他们的提供商ISP付费,为了减少付费,位于相同等级结构层次的临近一对ISP能够对等(peer),也就是说,能够直接将他们的网络连到一起,对等的两个ISP之间不进行结算,任一个ISP不向其对等付费。

据此诞生了因特网交换点(Internet Exchange Point,IXP),IXP是一个汇合点,多个ISP能够在这里共同对等。

随着网络的发展在顶层增加了内容提供商网络(content provider network)。如谷歌,谷歌专用网络通过与较底层ISP对等(无结算)尝试“绕过”因特网的较高层,采用的方式可以是直接与它们连接,或者在IXP处与它们连接。谷歌也与第一层ISP相连。近年来主要的内容提供商已经开始创建自己的网络,直接在可能的地方与较底层ISP互联。

计算机网络和因特网-分组交换网中的时延、丢包和吞吐量

如前所诉,因特网可以看成是一种为运行在端系统上的分布式应用提供服务的基础设施。

计算机网络和因特网-分组交换网中的时延、丢包和吞吐量-分组交换网中的时延概述

主要有:

结点处理时延(nodal processing delay):如检查分组首部和决定将该分组导向何处等。

排队时延(queuing delay):在存储转发传输中,假定分组先到先服务,仅当所有已经到达的分组被传输后,才能传输刚到达的分组

传输时延(transmission delay):每个分组全部接收后才能进行传输,而且需要把分组中的数据依次推出。

传播时延(propagation delay):信号通过物理介质进行传播时也需要时间。

这些时延总体累加起来是结点总时延(total nodal delay)

计算机网络和因特网-分组交换网中的时延、丢包和吞吐量-排队时延和丢包

结点时延中最为复杂有趣的成分是排队时延。人们在表征排队时延时,通常使用统计量测度,如平均排队时延、排队时延的方差和排队时延超过某些特定值的概率。

随着流量强度接近最大传输速率,平均排队时延会迅速增加,直到发生丢包现象。丢失的分组可能基于端到端的原则重传、以确保所有的数据最终从源传送到目的地。

计算机网络和因特网-分组交换网中的时延、丢包和吞吐量-端到端时延+端系统、应用程序和其他时延

计算机网络和因特网-分组交换网中的时延、丢包和吞吐量-计算机网络中的吞吐量

瞬时吞吐量(instantaneous throughput)

平均吞吐量(average throughput)

瓶颈链路(bot-tleneck link)

计算机网络和因特网-协议层次及其服务模型

计算机网络和因特网-协议层次及其服务模型-分层的体系结构

利用分层体系结构,我们可以讨论一个定义良好的,大而复杂的系统的特定部分。

这种简化本身由于提供了模块化而具有很高价值,这使实现由层所提供的服务易于改变。只要该层对其上面的层提供相同的服务,并且使用来自下层层次的相同服务,当某层的实现变化时,该系统的其余部分保持不变。注意改变一个服务的实现,与改变一个服务本身是极为不同的。

对于大而复杂且不断更新的系统,改变服务的实现而不影响系统其他组件是分层的一个重要优点。

计算机网络和因特网-协议层次及其服务模型-分层的体系结构-协议分层

网络设计者以分层(layer)的方式组织协议,以及实现这些协议的网络硬件和软件,我们也将关注每层向上一层提供的服务(service)。一层协议能够用软件、硬件或两者的结合来实现。需要指出的是一个第n层协议可能涉及到构成该网络的端系统、分组交换机和其他各个组件中。

当然也有人反对分层,如分层可能冗余较底层的功能。

将这些综合起来,各层的所有协议被称为协议栈(protocol stack)。本书分为五层

物理层--链路层--网络层--运输层------------应用层

物理层--链路层--网络层--运输层--会话层--表示层--应用层

本书采用自顶向下方法(top-down approach)先介绍应用层。

(1)应用层

应用层是网络应用程序及它们的应用层协议存留的地方。如HTTP、SMTP、FTP、DNS等;应用层协议分布在多个端系统上,一个端系统中的应用程序使用协议与另一个端系统中的应用程序交换信息的分组。我们把这种位于应用层的信息分组称为报文(message)

(2)运输层

运输层为应用程序端点之间传送应用层报文。如TCP/UDP,TCP提供面向连接的服务,提供流量控制、拥塞控制机制等,而UDP不提供不必要的服务,没有可靠性,没有流量控制,也没有拥塞控制。本书中,我们把运输层分组称为报文段(segment)

(3)网络层

网络层负责把称为数据报(datagram)的网络层分组从一台主机移动到另一台主机。如IP协议、路由选择协议位于此层。源主机因特网传输层协议向网络层递交运输层报文段和目的地址,就像通过邮政寄信时提供信件和地址一样。

(4)链路层

为了将分组从一个结点移动到路径的下一个节点,网络层必须依靠该链路层的服务,特别是在每个结点,网络层将数据报下传给链路层,链路层沿着路径将数据报传递给下一个结点,链路层将数据报上传给网络层。我们把链路层的分组称为帧(frame)。

(5)物理层

物理层的任务是将整个帧从一个网络元素移动到邻近的网络元素,而物理层的任务是将帧中的一个个比特从一个结点到下一个结点。

计算机网络和因特网-协议层次及其服务模型-分层的体系结构-协议分层-OSI模型

20世纪70年代后期,国际标准化组织(ISO)提出了计算机网络的7层模型。成为开放系统互联(OSI)模型。

表示层:使通信的应用层序能够解释交换数据的含义。这些服务包括数据压缩和数据加密以及数据描述。

会话层:提供数据交换定结和同步功能,包括了建立检查点和恢复方案的方法。

这些层次的服务不重要么?如果引用程序需要怎么办?答案是程序开发者自己处理。

计算机网络和因特网-协议层次及其服务模型-封装

链路层交换机实现了第一层和第二层

路由器实现了第一层到第三层,这就是说因特网路由器能够实现IP协议,而链路层交换机则不能。

值得注意的是主机实现了所有5个层次,这与因特网体系结构将他的复杂性放在网络边缘的观点是一致的。

封装(encapsulation)

应用层报文(application-layer message)

运输层报文(transport-layer message)

网络层数据报(network-layer datagram)

链路层帧(link-layer frame)

我们看到每一层,一个分组具有两种类型的字段:首部字段和有效载荷字段(payload field)。有效载荷字段来自上一层的分组。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: