【基础】计算机网络01

1 什么是因特网

回答这个问题有两种方式,一是描述出因特网的具体构成,即基本硬件和软件组件;二是根据为分布式应用提供服务的联网基础设施来描述。

1.1 具体构成描述

先搞清楚一个概念,什么是主机(host)/端系统(end system)?

与互联网相连的计算机和其他设备称为 主机/端系统
因为它们位于互联网边缘,故被称为端系统
因为它们容纳(即运行)应用程序,故被称为主机
包括:
桌面计算机(eg. 桌面PC/、Mac和Linux设备)
服务器(eg. Web和电子邮件服务器)
移动计算机(eg. 便携机、智能手机和平板电脑)
其他非传统物品(eg. 电视、游戏机、家用电器、汽车等)

  • 端系统 通过通信链路(communication link)分组交换机(packet switch) 连接到一起。

    通信链路由不同类型的物理媒体组成,包括同轴电缆、铜线、光纤和无线电频谱。

    不同的链路有不同的传输速率(transimission rate) ,链路的传输速率以比特/秒(bit/s,或bps) 度量。

    当一台端系统要向另一台端系统发送数据时,发送端系统将数据分段,并为每段加上首部字节,形成分组(packet),这些分组通过网络发送到目的端系统,然后被装配成初始数据。

    分组交换机从一条入通信链路接受到达的分组,并从它的一条出通信链路转发该分组。

    当前最著名的分组交换机类型是路由器(router)链路层交换机(link-layer switch) 。这两种交换机的最终目的都是转发分组。链路层交换机通常用于接入网中,路由器通常用于网络核心中。

  • 端系统通过因特网服务提供商(Internet Service Provider, ISP) 接入因特网。

    每个ISP自身就是一个由多台分组交换机和多段通信链路组成的网络。

    各ISP为端系统提供各种不同类型的网络接入,包括如线缆调制解调器或DSL那样的住宅宽带接入、高速局域网接入和移动无线接入。

    ISP也为内容提供者提供因特网接入服务,将Web站点和视频服务器直接连入因特网。

    因特网就是将端系统彼此互联,因此为端系统提供接入的ISP也必须互联。较低层的ISP通过国家的、国际的高层ISP互联起来。较高层的ISP是由通过高速光纤链路互联的高速路由器组成的。无论是较高层还是较低层ISP网络,每个都是独立管理的,运行着IP协议,遵从一定的命名和地址规则。

  • 端系统、分组交换机和其他互联网部件都要运行一系列协议,这些协议控制因特网中信息的接受和发送。TCP(Transmission Control Protocol,传输控制协议)和 IP(Internet Protocol,网际协议) 是因特网中最重要的两个协议。

    IP协议定义了在路由器和端系统之间发送和接收的分组格式。

    因特网的主要协议统称为TCP/IP。

1.2 服务描述

先搞清楚什么是分布式应用程序(distributed application)?

除了诸如电子邮件和Web冲浪等传统应用外,因特网应用还包括移动智能手机和平板电脑应用程序,其中包括即时讯息、与实时道路流量信息的映射、视频会议、多人游戏以及基于位置的推荐系统。这些应用程序涉及多个相互交换数据的端系统,因此被称为分布式应用程序

  • 运行在不同端系统上的软件需要互相发送数据,这个问题导致了另一种描述因特网的方法,即将因特网描述为应用程序的平台。

  • 运行在不同端系统上的分布式应用程序需要相互发送数据,使用的是端系统提供的一个 套接字接口(socket interface)

    该接口规定了运行在一个端系统上的程序请求因特网基础设施向运行在另一个端系统上的特定目的地程序交付数据的方式。套接字接口是一套发送程序必须遵循的规则集合,因此因特网能够将数据交付给目的地。

1.3 什么是协议

报文的交换以及发送和接收时所采取的动作是定义一个协议的关键元素:
协议(protocol)定义了在两个或多个通信实体之间交换的报文的格式和顺序,以及报文发送和/或接收一条报文或其他时间所采取的的动作。

因特网广泛地使用了协议,不同的协议用于完成不同的通信任务。

2 网络边缘

首先考虑的网络边缘是应用程序和端系统。

2.1 接入网

接入网,这里是指将端系统物理连接到其边缘路由器(edge router) 的网络。
边缘路由器是端系统到任何其他远程端系统的路径上的第一台路由器。

  1. 家庭接入:DSL、电缆、FTTH、拨号和卫星

    数字用户线(Digital Subscriber Line,DSL),住户从提供本地电话接入的本地电话公司处获得DSL因特网接入。

    电缆因特网接入利用了有线电视公司现有的有线电视基础设施,住宅从提供有线电视的公司获得了电缆因特网接入。

    光纤到户(Fiber To The Home,FTTH),从本地中心局直接到家庭提供一条光纤路径。

    传统电话线拨号接入

    卫星接入

  2. 企业接入:以太网和WiFi
    如图所示,以太网用户使用双绞铜线与一台以太网交换机相连。在这里插入图片描述

  3. 广域无线接入:3/4/5G和LTE

2.2 物理媒体

物理媒体分为两种类型:导引型媒体(guided media)非导引型媒体(unguided meida)

导引型媒体:电波沿着固体媒体前行,如光缆、双绞铜线或同轴电缆。
非导引型媒体 :电波在空气或外层空间中传播,如在无线局域网或数字卫星频道中。

  1. 双绞铜线

    最便宜、最常用。

    双绞线由两根绝缘的铜线组成,以规则的螺旋状排列着。两根线被绞合起来,以减少邻近类似的双绞线的电气干扰。通常许多双绞线捆扎在一起形成一根电缆,并在双绞线外面覆盖上保护性防护层。

  2. 同轴电缆

    同轴电缆由两个铜导体组成,但这两个导体是同心的而不是并行的。同轴电缆能达到较高的数据传输速率。

  3. 光纤

    光纤是一种细而柔软、能够导引光脉冲的媒体,每个脉冲表示一个比特,它支持极高的比特速率。

    光纤不受电磁干扰,长达100km的光缆信号衰减极低,并且很难窃听,这些特征使得它成为长途导引型传输媒体,特别是跨海链路。

  4. 陆地无线电信道

    不需要安装物理线路,并且具有穿透墙壁、提供与移动用户的连接以及长距离承载信号的能力。

    陆地无线电通信分为三类:一是运行在很短距离,一到两米(eg. 个人设备如无线耳机、键盘等);二是运行在局域,通常跨越数十到几百米(eg. 无线LAN技术);三是运行在广域,跨越数万米(eg. 蜂窝接入技术)。

  5. 卫星无线电信道

3 网络核心

网络核心即由端系统的分组交换机链路 构成的网状网络。

通过网络链路和交换机移动数据的两种基本方法: 分组交换电路交换

3.1 分组交换

为了从源端系统向目的端系统发送一个报文,源将长报文划分为较小的数据块,称之为 分组(packet)
在源和目的地之间,每个分组都通过 通信链路分组交换机(packet switch)交换。
交换机主要有两类:路由器链路层交换机
分组以等于该链路最大传输速率的速度传输通过通信链路。

  • 存储转发传输。

    多数分组交换机在链路的输入端使用 存储转发传输 (store-and-forward transmission)。

    存储转发传输是指在交换机能够开始向输出链路传输该分组的第一个比特之前, 必须接受到整个分组

  • 排队时延和分组丢失。

    每台分组交换机有多条链路与之相连,对于每条相连的链路,该分组交换机具有一个 输出缓存(output buffer,也称为输出队列(output queue)) ,它用于存储路由器准备发往那条链路的分组。

    如果到达的分组需要传输到某条链路,除了 存储转发时延 以外,分组还要承受 输出缓存的排队时延(queuing delay) 。这些时延是变化的,取决于网络的拥塞程度。

    缓存空间的大小是有限的,一个到达的分组可能发现该缓存已被其他等待传输的分组完全占满。在此情况下,将出现 分组丢失(丢包)(packet loss) ,到达的分组或已在排队的分组之一将被丢弃。

  • 转发表和路由选择协议

    由前面可以知道,路由器从与它相连的一条通信链路得到分组,然后向与它相连的另一条通信链路转发该分组。那么路由器是怎么做到向哪条链路转发的呢?下面介绍 因特网 所采用的方法。【不同的计算机网络实际上以不同的方式完成分组转发】

    在因特网中,每个端系统都具有一个 IP地址
    当源向目的地发送分组时,源在该分组的首部添加了目的地的 IP地址
    每台路由器都有一个 转发表(forwarding table) ,用于将目的地址(或目的地址的一部分)映射为输出链路。

    当一个分组到达路由器时,路由器检查该分组首部的 IP地址 ,并用这个地址搜索路由器的 转发表(forwarding table) ,以发现适当的输出链路。

3.2 电路交换

什么是电路?
在发送方能够发送信息之前,该网络必须在发送方和接收方之间建立一条连接,使得双方路径上的交换机都为该连接维护连接状态,该连接被称为电路。

什么是电路交换网络?什么是分组交换网络?
电路交换网络,在端系统通信会话期间 ,预留 了端系统间沿路径通信所需要的资源(缓存,链路传输速率)。
分组交换网络中,这些资源时不预留的;会话的报文按需使用这些资源,其后果是不得不等待(即排队)接入通信网络。

  • 电路交换网络的复用

    链路中的电路是通过 频分复用(Frequency-Division Multiplexing,FDM)时分复用(Time-Division Multiplexing,TDM) 来实现的。

    频分复用 ,链路的频谱由跨越链路创建的所有连接共享。特别是,在链接期间链路为每条连接专用一个频段。

    时分复用,时间被划分为固定期间的帧,并且每个帧又被划分为固定数量的间隙。当网络跨越一条链路创建一条连接时,网络在每个帧中为该连接指定一个时隙。这些时隙专门由该连接单独使用,一个时隙(在每个帧内)可用于传输该连接的数据。

  • 分组交换与电路交换的对比

    电路交换不考虑需求,而预先分配了传输链路的使用,这使得已分配而并不需要使用的链路时间未被利用。

    分组交换按需分配链路使用。链路传输能力将在所有需要在连路上传输分组的用户之间逐分组地被共享。

4 分组交换网中的时延、丢包和吞吐量

4.1 分组交换网中的时延概述

当分组从一个节点(主机或路由器)压着这条路径到后继节点(主机或路由器),该分组在沿途的每个节点经受几种不同类型的时延。这些时延最为重要的是 节点处理时延排队时延传输时延传播时延,这些时延总体累加起来就是 节点总时延
在这里插入图片描述

  • 处理时延

    检查分组首部和决定将该分组导向何处所需要的时间是 处理时延 的一部分。还包括其他部分,如检查差需要的时间。

  • 排队时延

    在队列中,当分组在链路上等待传输时,它经受 排队时延 。 一个特定的分组的排队时延长度取决于先前到达的正在排队等待向链路传输的分组数量。

  • 传输时延

    用 L 比特表示该分组的长度,用 R bps (即 b/s)表示从路由器A到路由器B的链路传输速率(即将比特推向链路的速率)。传输时延 是 L/R。这是将所有分组的比特推向链路(即传输,或者说发射)所需要的时间。

  • 传播时延

    一旦一个比特被推向链路,该比特需要向路由器B传播。从该链路的起点到路由器B传播所需要的时间就是 传播时延。 该比特以该链路的传播速率传播,传播速率取决于该链路的物理媒体(即光纤、双绞铜线等)。该传播时延等于两台路由器之间的距离除以传播速率。

  • 传输时延和传播时延的比较

    传输时延是路由器推出分组所需要的时间,它是分组长度和链路传播速度的函数,与两台路由器之间的距离无关。

    传播时延是一个比特从一台路由器传播到另一台路由器所需要的时间,它是两台路由器之间距离的函数,耳语分组长度或链路传播速率无关。

4.2 排队时延和丢包

  • 排队时延

    节点时延的最为复杂和最为有趣的是排队时延dqueue

    什么时候排队时延大,什么时候又不大呢?这取决于流量到达该队列的速率、链路的传输速率和到达流量的性质,即流量是周期性到达还是以突发形式到达。

    令a表示分组到达队列的平均速率(单位是分组/秒,即pkt/s),R是传输速率,即队列中推出比特的速率(单位是bps,即b/s),假设所有分组都是由 L 比特组成,则比特到达队列的平均速率是 La bps。

    比率 La/R 被称为 流量强度 ,它在估计排队时延的范围方面起着重要的作用。 如果 La/R > 1,则比特到达队列的平均速率超过了从该队列传输出去的速率,这对导致队列无线增加,并且排队时延趋于无穷大。
    在这里插入图片描述
    如上图所示,随着流量强度接近于 1 ,平均排队时延迅速增加。

  • 丢包

    一条链路前的队列只有有限的容量,当到达的分组没有地方存储时,路由器将丢弃这个分组,即该分组将会丢失。

    分组丢失的比例随着流量强度增加而增加。因此,一个节点的性能不仅根据时延来度量,而且还根据丢包的概率来度量。

4.3 端到端时延

考虑从源到目的地的总时延。
假定源主机和目的主机之间有N-1台路由器,且该网络无拥塞(即无排队时延),在每台路由器和源主机上的处理时延是dproc,每台路由器和源主机的输出速率是 Rpbs,每条链路的传播时延是 dprop。节点时延累加起来,得到端到端时延:
dend-end = N(dproc + dtrans + dprop
其中,dtrans = L/R,L是分组长度。

4.4 计算机网络中的吞吐量

假设主机A到主机B跨越计算机网络传送一个大文件,在任何瞬间的 瞬间吞吐量 是主机B接收到该文件的速率(单位是bps)。如果该文件由 F 比特组成,主机B接受到所有 F 比特用去 T 秒,则文件传送的 平均吞吐量 是 F/T bps。

5协议层次及其服务类型

5.1 分层的体系结构

5.1.1 协议分层

各层所有的协议被称为 协议栈(protocol stack)

因特网的协议栈由5个层次组成: 物理层、链路层、网络层、运输层、应用层
在这里插入图片描述

  • 应用层

    应用层是网络应用程序及他们的应用层协议存留的地方。

    应用层协议包括:
    HTTP(提供了Web文档的请求和传送)
    SMTP(提供了电子邮件报文的传输)
    FTP(提供了两个端系统之间的文件传送)

    应用层协议分布在多个端系统上,而一个端系统中的应用程序使用协议与另一个端系统中的应用程序交换信息分组。

    这种位于应用层的信息分组称为 报文(message)

  • 运输层

    因特网的运输层在应用程序端点之间传送应用层报文。

    有两种运输协议:TCP和UDP
    TCP向它的应用程序提供了面向连接的服务。即确保传递、流量控制、将长报文划分为短报文、拥塞控制机制。
    UDP向它的应用程序提供无连接的服务。即只提供必要的服务,没有可靠性、没有流量控制、没有拥塞控制。

    把运输层的分组称为 报文段(segment)

  • 网络层
    因特网的网络层负责将网络层分组从一台主机移动到另一台主机。

    网络层协议包括著名的网际协议IP路由选择协议
    IP协议定义了在数据报中的各个字段以及端系统和路由器如何作用于这些字段。
    路由选择协议根据路由将数据报从源传输到目的地。因特网具有许多的路由选择协议。

    IP仅有一个,所有具有网络层的因特网组件必须运行IP。

    我们将网络层简单地称为 IP层 ,这反映了IP是将因特网连接在一起的黏合剂的事实。

    网络层的分组称为 数据报(datagram)

  • 链路层

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

    链路层的服务取决的该链路的特定链路层协议。比如以太网、WiFi和电缆接入网的DOCSIS协议

    因为数据报从源到目的地通常需要经过几条链路,一个数据报可能被沿途不同链路上的不同链路层协议处理。

    把链路层分组称为 帧(frame)

  • 物理层

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

    该层的协议仍与链路相关,并且进一步与该链路(双绞铜线、光纤)的实际传输媒体相关。比如以太网有许多物理协议:一个是关于双绞铜线的、一个是关于同轴电缆的、还有关于光纤的。

5.1.2 OSI模型

在这里插入图片描述

20实际70年代后期,国际标准化组织(ISO)提出计算机网络围绕7层来组织,称为开放系统互连(OSI)模型【ISO2016】。

如上图所示,OSI参考模型的7层是:应用层、表示层、会话层、运输层、网络层、链路层、物理层

5层的功能大致与因特网中各层相同。

现在来看看附加的两层。

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

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

5.2 封装

在这里插入图片描述
上图表明了这样的物理路径:数据从源端系统的协议栈向下,沿着中间的链路层交换机和路由器的协议栈上上下下,然后向上到达目的地端系统的协议栈

  • 路由器和链路层交换机并不实现协议栈中所有层次

    链路层交换机实现了第一层和第二层,它不能识别IP地址,但是能够识别第二层地址,如以太网地址。
    路由器实现了第一层到第三层,这意味着路路由器能够实现IP协议(一种三层地址)。

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

  • 上图还说明了 封装(encapsulation) 的重要性

    从源出发,一个 应用层报文(application-layer message) M 被传送到运输层。
    运输层收取到报文并添加附加信息(即运输层首部Ht),该首部被接收端的运输层使用。
    应用层报文和运输层首部信息一起构成了 运输层报文段(transport-layer segment),运输层报文段封装了应用层报文。
    运输层向网络层传递该报文段,网络层添加了如源和目的端系统地址等网络层首部信息(Hn),生成了 网络层数据报(network-layer datagram)
    该数据报接下来传递给链路层,链路层增加自己的链路层首部信息(Hl),并生成 链路层帧(link-layer frame)

  • 在每一层,一个分组具有两种类型的字段:首部字段和有效载荷字段(payload field)。有效载荷字段通常来自上一次的分组。

6 面对攻击的网络

  • 病毒和蠕虫
  • 拒绝服务攻击
  • 嗅探分组
  • IP哄骗

7 计算机网络和因特网的历史

  • 1961-1972分组交换的发展
  • 1972-1980专用网络和网络互联
  • 1980-1990网络的激增
  • 20世纪90年代因特网爆炸
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值