计算机网络 - 第一章 计算机网络和因特网

计算机网络和因特网

1. 什么是因特网

  1. 我们能够描述因特网的具体构成,即构成因特网的基本硬件和软件组件。
  2. 我们能够根据为分布式应用提供服务的联网基础设施来描述因特网。
1.1 具体构成描述

端系统(主机): 处在因特网的边缘部分就是在因特网上的所有主机,通常是与因特网相连的计算机和其他设备。
在这里插入图片描述
端系统通过通信链路分组交换机连接到一起。
链路的传输速率以比特/秒度量。
当一台端系统要向另一台端系统发送数据时,发送端系统将数据分段,并为每段加上首部字节。由此形成的信息包用于计算机网络的术语来说称为分组

两种最著名的分组交换机类型是:路由器链路层交换机
链路层交换机通常用于接入网中,而路由器通常用于网络核心中。
从发送端系统到接收端系统,一个分组所经历的一系列通信链路和分组交换机称为通过该网络的路径

端系统通过因特网服务提供商(ISP) 接入因特网。

端系统、分组交换机和其他因特网部件都要运行一系列协议,这些协议控制因特网中信息的接收和发送。
TCP(传输控制协议)IP(网际协议) 是因特网中两个最为重要的协议。
IP 协议定义了在路由器和端系统之间发送和接收的分组格式。

因特网标准由因特网工程任务组研发。IETF的标准文档称为请求评论(RFC)

1.2 服务描述

从为程序提供服务的基础设施的角度来描述互联网。
分布式应用程序: 应用程序涉及多个相互交换数据的端系统。

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

1.3 什么是协议

1.人类活动的类比
为了完成一项工作,要求两个(或多个)通讯实体运行相同的协议。
在这里插入图片描述
2.网络协议
在因特网中,协议运行无处不在,涉及两个或多个远程通讯实体的所有活动都受协议的制约。
例:
在两台物理上连接的计算机中,硬件实现的协议控制了在两块网络接口卡间的“线上”的比特流;在端系统中,拥塞控制协议控制了在发送方和接收方之间传输的分组发送的速率;路由器中的协议决定了分组从源到目的地的路径。

向一个Web服务器发出请求(即在Web浏览器中键入一个Web网页的URL)所发生的情况
首先,你的计算机将会向该Web服务器发送一条连接请求报文,并等待回答。该Web服务器将最终能接收到链接请求报文,并返回一条连接响应报文。得知请求该Web文档正常以后,计算机则在一条GET报文中发送要从这台Web服务器取回的网页名字。最后,Web服务器像计算机返回该Web网页(文件)。

协议: 定义了在两个或多个通讯实体之间交换的报文的格式和顺序,以及报文发送和/或接收一条报文或其他事件所采取的动作。

2. 网络边缘

端系统也称为主机,因为它们容纳(即运行)应用程序,如Web浏览器程序,Web服务器程序。电子邮件客户程序或电子邮件服务器程序等。
主机有时又被进一步划分为两类:客户服务器
客户通常是桌面PC。移动PC和智能手机等,而服务器通常是更为强大的机器,用于存储和发布Web页面、流视频、中继电子邮件等。
今天,大部分提供搜索结果、电子邮件、Web页面、和视频的服务器都属于大型数据中心。
在这里插入图片描述

2.1 接入网

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

1.家庭接入:DSL、电缆、FTTH、拨号和卫星
今天,宽带住宅接入有两种最流行的类型:数字用户线电缆
DSL标准定义了多个传输速率,因为这些上行速率和下行速率是不同的,所以这种接入被称为是不对称的。
DSL利用电话公司现有的本地电话基础设施,而电缆因特网接入利用了有线电视公司现有的有线电视基础设施。
光纤到户(FTTH) 一种提供更高速率的新兴技术。 分为有源光纤网络(AON)无源光纤网络(PON)
AON本质上就是交换以太网。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.企业(和家庭)接入:以太网和WiFi
在这里插入图片描述

3.广域无线接入:3G和LTE
在这里插入图片描述

2.2 物理媒体

源端系统发射比特,通过一系列的**“发射器-接收器”对。对于每个发射器-接收器对,通过跨越一种物理媒体传播电磁波或光脉冲来发送比特。
物理媒体分成两种类型:导引型媒体
非导引型媒体**。
对于导引型媒体电波沿着固体媒介前行,如光缆、双绞铜线或同轴电缆。对于非导引型媒体电波在空气或外层空间中传播,例如在无线局域网或数字卫星频道中。
1.双绞铜线
2.同轴电缆
3.光纤
4.陆地无线电信道
5.卫星无线电信道

3. 网络核心

网络核心: 即由互联因特网端系统的分组交换机和链路构成的网状网络。

3.1 分组交换

在各种网络应用中,端系统彼此交换报文
为了从源端系统向目的端系统发送一个报文,源将长报文划分为较小的数据块,称之为分组
在源和目的地之间,每个分组都通过通信链路和分组交换机传送。
交换机主要有两类:路由器链路层交换机

1.存储转发传输
多数分组交换机在链路的输入端使用存储转发传输机制。存储转发传输是指在交换机能够开始向输出链路传输该分组的第一个比特之前,必须接收到整个分组。
在这里插入图片描述
在这里插入图片描述
一般情况: 通过由N条速率均为R的链路组成的路径(所以,在源和目的地之间有N-1台路由器),从源到目的地发送一个分组。
端到端的时延是:d = NL/R
2.排队时延和分组丢失
每台分组交换机有多条链路与之相连。对于每条相连的链路,该分组交换机具有一个输出缓存(也叫输出队列),它用于存储路由器准备发往那条链路的分组
如果到达的分组需要传输到某条链路,但发现该链路正忙于传输其他分组,那么该到达分组必须在输出缓存中等待。
因此,除了存储转发时延以外,分组还要承受输出缓存的排队时延
分组丢失(丢包): 因为缓存空间的大小是有限的,一个到达的分组可能发现该缓存已被其他等待传输的分组完全充满了。到达的分组或已排队的分组之一将被丢弃。
3.转发表和路由选择协议
在这里插入图片描述
在因特网中,每个端系统具有一个称为IP地址的地址。当源主机要向目的端系统发送一个分组时,源在该分组的首部包含了目的地的IP地址。
IP地址是具有一种等级结构。
当一个分组到达网络中的路由器时,路由器检查该分组的目的地址的一部分,并向一台相邻路由器转发该分组。
更特别的是,每台路由器具有一个转发表用于将目的地址(或目的地址的一部分)映射成为输出链路。

3.2 电路交换

电路交换 等同于端到端连接
通过网络链路和交换机移动数据有两种基本方法:电路交换分组交换

  • 在电路交换网络中, 在端系统键通信会话期间,预留了端系统间沿路径通信所需要的资源(缓存,链路传输速率)。
  • 在分组交换网络中, 这些资源则是不是预留的。

在这里插入图片描述

1.电路交换网络中的复用
链路中的电路是通过频分复用(FDM)时分复用(TDM)来实现的。
对于
FDM
,链路的频谱由跨越链路创建的所有连接共享。频段的宽度称为带宽。 特别是,在连接期间链路为每条连接专用一个频段。
对于TDM , 时间被划分为固定期间的帧,并且每个帧又被划分为固定数量的时隙这些时隙专门由该连接单独使用,一个时隙(在每个帧内)可用于传输该连接的数据。

对于FDM,其频率域被分割为多个频段。对于TDM,其时域被分割为帧,在每个帧中具有多个时隙,再循环的TDM帧中每条电路被分配相同的专用时隙。对于TDM,一条电路的传输速率等于帧速率乘以一个时隙中的比特数量。

在这里插入图片描述
分组交换的支持者总是争辩说,电路交换因为在静默期专用电路空闲而不够经济。

2.分组交换与电路交换的对比
在多个数据流之间共享链路传输速率的两种形式的关键差异。

  • 电路交换不考虑需求,而预先分配了传输链路的使用,这使得已分配而并不需要的链路时间未被利用。
  • 分组交换按需分配链路使用,链路传输能力将在所有需要在链路上传输分组的用户之间逐分组地被共享。
3.3 网络中的网络

在这里插入图片描述
总结:
今天的因特网是一个网络的网络,其结构复杂,由是十多个第一层ISP和舒适网格较低层ISP组成。

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

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

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

时延的类型

在这里插入图片描述

1.处理时延
检查分组首部和决定该分组导向何处所需要的时间是处理时延的一部分。处理时延也包括其他因素,如检查比特级别的差错所需要的时间,该差错出现在从上游节点向路由器传输这些分组比特的过程中。
2.排队时延
在队列中,当分组在链路上等待传输时,它经受排队时延
3.传输时延
传输时延L/R。 L比特表示分组的长度,R表示传输速率。
4.传播时延
一旦一个比特被推向链路,该比特需要向路由器B传播。从该链路的起点到路由器B传播所需要的时间是传播时延。
传播时延取决于该链路的**物理媒介,**以及两台路由器之间的距离。
5.传输时延和传播时延的比较
传输时延是路由器推出分组所需要的时间,它是分组长度和链路传输速率的函数,而与两台路由器之间的距离无关。
传播时延是一个比特从一台路由器传播到另一台路由器所需要的时间,它是两台路由器之间距离的函数,而与分组长度或链路传输速率无关。
在这里插入图片描述

这些时延成分所起到作用可能会有很大的不同。处理时延通常是微不足道的;然而,他对一台路由器的最大吞吐量有重要影响,最大吞吐量是一台路由器能够转发分组的最大速率。

4.2 排队时延和丢包

表征排队时延时,人们通常使用统计量来度量,如平均排队时延、排队时延的方差和排队时延超过某些特定值的概率。
流量强度:La/R a表示分组到达队列的平均速率。(分组/秒)
流量工程中的一条金科玉律是:设计系统时流量强度不能大于1.
在这里插入图片描述

丢包

但到达的分组发现是一个满的队列。由于没有地方存储这个分组,路由器将丢弃该分组,即该分组将会丢失
从端系统的角度看,上述丢包现象看起来是一个分组已经传输到网络核心,但它绝不会从网络发送到目的地。

4.3 端到端时延

1.Traceroute
2.端系统、应用程序和其他时延
希望向共享媒体(例如在WiFi或电缆调制解调器情况下)传输分组的端系统可能有意识的延迟它的传输,把这作为它与其他端系统共享媒体的一部分。

4.4 计算机网络中的吞吐量

瞬时吞吐量,平均吞吐量
对于简单地两链路网络,其吞吐量是瓶颈链路的传输速率。

在今天因特网中对吞吐量的限制因素通常是**接入网。**因为目前的因特网的核心的确超量配置了高速率的链路,从而很少出现拥塞。

吞吐量不仅取决于沿着路径的传输速率,而且取决于干扰流量。特别是,如果许多其他的数据流也通过这条链路流动,一条具有高传输速率的链路仍然可能成为文件传输的瓶颈路径。
在这里插入图片描述
在这里插入图片描述

5. 协议层次及其服务模型

5.1 分层的体系结构

每个层次通过以下方式提供服务:

  1. 在这层中执行了某些动作
  2. 使用直接下层的服务

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

1. 协议分层

为了给网络协议的设计提供一个结构,网络设计者以分层的方式组织协议以及实现这些协议的网络硬件和软件。
每个协议属于这些层次之一。
我们再次关注某层向它的上一层提供的服务,即所谓一层的服务模型。
一个协议层能够用软件、硬件或者两者的结合来实现。
第n层协议的不同部分常常位于这些网络组建的各部分中。

在这里插入图片描述

综合起来,各层的所有协议被称为协议栈
因特网的协议栈由5个层次组成:物理层,链路层,网络层,运输层和应用层。
1.应用层
应用层是网络应用程序及它们的应用协议存留的地方。

  • HTTP 它提供了Web文档的请求和传送。
  • SMTP 它提供了电子邮件报文的传输
  • FTP 它提供了两个端系统之间的文件传输
  • DNS 将对人友好的端系统名字转换为32比特的网络地址

应用层协议分布在多个端系统上,而一个端系统中的应用程序使用协议与另一个端系统中的应用程序交换信息分组。我们把这种位于应用层的信息分组称为报文。
2.运输层
因特网的运输层在应用程序端点之间传送应用层报文。
两种运输层协议,TCP和UDP,利用其中的任一个都能运输应用层报文。
TCP向它的应用程序提供了面向连接的服务。
这种服务包括了应用层报文向目的地的确保传递和流量控制(即发送方/接收方速率匹配)。TCP也将长报文划分为短报文,并提供拥塞控制机制,因此当网络拥塞时,源抑制其传输速率。
UDP协议向它的应用程序提供无连接服务。这是一种不提供不必要服务的服务,没有可靠性,没有流量控制,也没有拥塞控制。
我们把运输层的分组称为报文段。
3.网络层
因特网的网络层负责将称为数据报的网络层分组从一台主机移动到另一台主机。
一台源主机中的因特网运输层协议(TCP或UDP)向网络层递交运输层报文段和目的地址。
4.链路层
为了将分组从一个节点(主机或路由器)移动到路径上的下一个节点,网络层必须依靠该链路层的服务。
特别是,在每个节点,网络层将数据报下传给链路层,链路层沿着路径将数据报传递给下一个节点。在该下一个节点,链路层将数据包上传给网络层。
网络层将受到来自不同的链路层协议的不同服务。
我们把链路层分组称为帧。
5.物理层
虽然链路层的任务是将整个帧从一个网络元素移动到邻近的网络元素,而物理层的任务是将该帧中的一个个比特从一个节点移动到下一个节点。在这层中的协议仍然是链路相关的,并且进一步与该链路的实际传输媒体相关。
在每种场合中,跨越这些链路移动一个比特是以不同的方式进行的。

2. OSI模型

表示层的作用是使通信的应用程序能够解释交换数据的含义。这些服务包括数据压缩和数据加密(它们是自解释的)以及数据描述(这使得应用程序不必担心在各台计算机中表示存储的内部格式不同的问题)。
会话层提供了数据交换的定界和同步功能,包括了建立检查点和恢复方案的方法。

因特网去少了在OSI参考模型中的建立的两个层次,那么这些层次提供的服务不重要么?
如果一个应用程序需要这些服务之一,将会怎样呢?
回答:
这留给应用程序开发者处理。应用程序开发者决定一个服务是否是重要的,如果该服务重要,应用程序开发者就应该在应该用程序中构建该功能。

5.2 封装

数据从发送端系统的协议栈向下,沿着中间的链路层交换机和路由器的协议栈上上下下,然后向上到达接收端系统的协议栈。
路由器和链路交换机都是分组交换机。
与端系统类似,路由器和链路层交换机以多层次的方式组织它们的网络硬件和软件。而路由器和链路交换机并不实现协议栈中的所有层次。
住的注意的是,主机实现了所有5个层次,这与因特网体系结构将它的复杂性放在网络边缘的观点是一致的。
封装
在发送主机端,一个应用层报文被传输给运输层。在最简单的情况下,运输层收取到报文并附上附加信息(所谓运输层首部信息,图 1-24中的Ht),该首部将被接收端的运输层使用。应用层报文和运输层首部信息一道构成了运输层报文段。运输层报文段因此封装了应用层报文。附加的信息也许包括了下列信息:允许接收端运输层向上向适当的应用程序交付报文的信息;差错检测位信息,该信息让接收方能够判断报文中的比特是否在途中已被改变。运输层则向网络层传递该报文段,网络层增加了如源和目的端系统地址等网络层首部信息,生成网络层数据报。该数据报接下来被传递给链路层,链路层(自然而然地)增加它自己的链路层首部信息并生成链路层帧。所以我们看到,在每一层,一个分组具有两种类型的字段:首部字段和有效载荷字段。有效载荷通常是来自上一层的分组。

在这里插入图片描述

封装的过程很复杂,一个大报文可能被划分为多个运输层的报文段(这些报文段每个可能被划分为多个网络层的数据报)。在接收端,则必须从其连续的数据报中重构这样一个报文段。

6. 面对攻击的网络

1.坏家伙能够经因特网将有害程序放入你的计算机中
恶意软件,僵尸网络
至今为止的多数恶意软件是自我复制的。
恶意软件能够以病毒或蠕虫的形式扩散。
病毒 是一种需要某种形式的用户交互来感染用户设备的恶意软件。
蠕虫 是一种无须任何明显用户交互就能进入设备的恶意软件。
2.坏家伙能够攻击服务器和网络基础设施
另一种宽泛类型的安全性威胁称为拒绝服务攻击(DoS) DoS攻击使得网络、主机和其他基础设施部分不能由合法用户使用。
大多数因特网DoS攻击属于下列三种类型之一:

  • 弱点攻击: 这涉及向一台目标主机上运行的易受攻击的应用程序或操作系统发送制作精细的报文。如果适当顺序的多个分组发送给一个易受攻击的应用程序或操作系统,该服务器可能停止运行,或者更糟糕的是主机可能崩溃。
  • 带宽洪泛: 攻击者向目标主机发送大量的分组,分组数量之多使得目标的接入链路变的拥塞,使得合法的分组无法到达服务器。
  • 连接洪泛: 攻击者在目标主机中创建大量的半开或全开TCP连接。该主机因这些伪造的连接而陷入困境,并停止接收合法的连接。

分布式DoS 就是攻击者控制多个源向目标猛烈发送流量。
在这里插入图片描述

3.坏家伙能够嗅探分组
记录每个流经的分组副本的被动接收机被称为分组嗅探器。 分组嗅探器既有无线的也有有线的。
最好的防御嗅探的方法基本上都与密码学有关。
4.坏家伙能够伪装成你信任的人
生成任意源地址、分组内容和目的地址的分组,然后将这个人工制作的分组传输到因特网中,因特网将忠实地将该分组转发到目的地。
将具有虚假源地址的分组注入因特网的能力被称为IP哄骗,而它只是一个用户能够冒充另一个用户的许多方式中的一种。
端点鉴别: 一种使我们能够确信一个报文源自我们认为它应当来自的地方的机制。

7.小结

我们从网络的边缘开始,观察端系统和应用程序,以及运行在端系统上为应用程序提供的运输服务。接着我们也观察了能够在接入网中找到打链路层技术和物理媒体。然后我们进入网络核心更深入地钻研网络,看到分组交换和电路交换是通过电信网络传输数据的两种基本方法,并且探讨来了每种方法的长处和短处。我们也研究了全球性因特网的结构,知道因特网是网络的网络。我们看到了因特网的由较高层和较低层ISP组成的等级结构,允许该网络扩展为包括数以千计的网络。

我们首先研究了分组交换网中的时延、吞吐量和丢包的原因。我们研究得到传输、传播和排队时延以及用于吞吐量的简单定量模型;接下来,我们研究了协议分层和服务模型、网络中的关键体系结构原则。我们还概述了在今天的因特网中某些更为流行的安全攻击。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值