写在前面

这是作者在本学期学习计网的时候做的笔记,由于本人水平有限,对很多概念的理解比较浅显/(ㄒoㄒ)/,欢迎各位大佬多多评价,多多批评指正,希望与大家互相交流学习(●’◡’●)。

参考资料

[1] James F. Kurose,Keith W. Ross 《计算机网络自顶向下方法》
[2] 谢希仁 《计算机网络》
[3] 谢均 谢希仁 《计算机网络教程》
[4] HUST计算机通信与网络课程组 PPT

最后更新时间

2022-11-3 21:30


文章目录

  • 1 计算机网络与因特网
    • 1.1 一些概念
    • 1.2 网络边缘
      • 1.2.1 接入网
      • 1.2.2 物理媒介
    • 1.3 网络核心
      • 1.3.1 分组交换
      • 1.3.2 电路交换
      • 1.3.3 两者对比
    • 1.4 协议层次及其服务模型

1 计算机网络与因特网

1.1 一些概念

因特网是一个世界范围的计算机网络,即它是一个互联了遍及全世界数十亿计算设备的网络。

这些设备包括传统的桌面PC、Linux工作站等,也包括新型的智能手机、电视、家用电器、手表等。
所有这些设备都成为主机(host)或端系统(end system)。

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

链路的传输速率(transmission rate)以比特/秒(bps)度量。

当一台端系统要向另一台端系统发送数据时,发送端系统会将数据分段,并为每段加上首部字节,由此形成的信息包成为分组(packet)。

目前最流行的两种分组交换机是路由器(router)和链路层交换机(ling-layer switch)。

从发送端系统到接收端系统,一个分组所经历的一系列通信链路和分组交换机成为通过该网络的路径(routepath)。

打个比方:用于传送分组的分组交换网络在许多方面类似于承载运输车辆的运输网络,该网络包括了高速公路、公路和交叉口。一个工厂需要将大量货物搬运到数千公里以外的某个目的地仓库,在工厂中,货物要分开并装上卡车车队。然后,每辆卡车独立地通过高速公路、公路和立交桥组成的网络向仓库运送货物。在目的地仓库,卸下这些货物,并与一起装载的同一批货物的其余部分对方在一起。因此在许多方面,分组类似于卡车,通信链路类似于高速公路和公路,分组交换机类似于交叉口,而端系统类似于建筑物。就像卡车选取运输网络的一条路径前行一样,分组则选取计算机网络的一条路径前行。

端系统通过因特网服务提供商(Internet Service Provider,ISP)接入因特网。每个ISP自身就是一个由多台分组交换机和多段通信链路组成的网络。

端系统、分组交换机和其他因特网部件都要进行一系列协议(protocol),这些协议控制因特网中信息的接收和发送。

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

TCP(Transmission Control Protocol,传输控制协议)和IP(Internet Protocol,网际协议)是因特网中最为重要的协议。

一个类比:
假设你正在大学课堂里上课,出现了以下情形:
教师:“同学们有什么问题吗?”(教师发送出一个报文,该报文能被所有没有睡觉的学生接收到)
你举起了手(向教师发送了一个隐含的报文)
教师面带微笑地对你说:“请讲…”(教师发出的这个报文鼓励你提出问题)
你问了问题(向教师传输了你的报文)
教师听取了你的问题并加以回答(向你传输了回答报文)
报文的发送和接收,以及这些报文发送和接收时所采取的一系列约定俗成的动作,这些是这个“提问与回答”协议的关键所在。

1.2 网络边缘

端系统=主机(host){客户(client)服务器(server)端系统=主机(host) \left\{ \begin{aligned} &客户(client) \\ &服务器(server)\\ \end{aligned} \right. 端系统=主机(host){​客户(client)服务器(server)​

客户通常是桌面PC、移动PC和智能手机等,而服务器通常是更为强大的机器,用于存储和发布Web页面、流视频、中继电子邮件等。在今天,大部分提供搜索结果、电子邮件、Web界面和视频的服务器都属于大型数据中心。

1.2.1 接入网

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

{家庭接入:DSL、电缆、FTTP、拨号和卫星企业(或家庭)接入:以太网和WiFi广域无线接入:3G和LTE\left\{ \begin{aligned} &家庭接入:DSL、电缆、FTTP、拨号和卫星\\ &企业(或家庭)接入:以太网和WiFi\\ &广域无线接入:3G和LTE \end{aligned} \right. ⎩⎪⎨⎪⎧​​家庭接入:DSL、电缆、FTTP、拨号和卫星企业(或家庭)接入:以太网和WiFi广域无线接入:3G和LTE​

数字用户线(Digital Subscriber Line,DSL)

  • 电话线:即双绞铜线,它可以承载多种信号,利用不同的频率进行编码。

  • 数据用户线接入复用器(DSLAM):可以将数据和电话信号分隔开,并将数据送往因特网。

  • 数字用户线调制解调器:将数据转换为高频音,以通过电话线传输给本地中心局;或者将传回的数据转换为低频音送入家庭PC。

  • 分配器:将数据信号和电话信号分隔开。

  • 缺陷:DSL提供商提供分等级的服务(不同价格使用不同速率)限制了住宅速率,家庭与本地中心局的距离太远、双绞线的规格和电气干扰导致最大速率受损。

电缆因特网接入(cable Internet access)

  • DSL利用电话公司现有的本地电话基础设施,而电缆因特网接入利用了有线电视公司现有的有线电视基础设施。

  • 因为在这个系统中应用了光纤和同轴电缆,所有又被称为混合光纤同轴系统(Hybrid Fiber Coax,HFC)。

  • 基本原理类似DSL,具有与DSL类似的电缆调制解调器(cable modem)和电缆调制解调器端接系统(Cable Modem Termination,CMTS)。

  • 一个重要的特征是广播共享媒体。特别是,由头端发送的每个分组向下行经每段链路到每个家庭;每个家庭发送的每个分组经上行信道向头端传输。因此,如果同一下行信道的几个用户同时下载一个文件,其实际速率将大大低于电缆总下行速率;上行信道也是共享的,需要一个分布式多路访问协议来协调传输和避免碰撞。

光纤到户(Fiber To The Home,FTTP)

  • 光纤网络端接器(Optical Network Terminator,ONT):ONT与一台家庭路由器相连,并通过这台家庭路由器与因特网相连。

  • 分配器(splitter):将一些家庭集结到一根共享的光纤,该光纤再连接到本地电话和公司的中心局中的光纤线路端接器。

  • 光纤线路端接器(Optical Line Terminator,OLT):OLT提供了光信号和电信号之间的转换,经过本地电话公司路由器与因特网相连。

以太网和WiFi

  • 在公司和大学校园以及越来越多的家庭环境中,使用局域网(LAN)将端系统连接到边缘路由器。

  • 在无线LAN环境中,无限用户从/到一个接入点发送/接收分组,该接入点与企业网连接,企业网再与有限因特网相连。一个无线LAN用户通常要位于接入点几十米的范围内。

  • 基于IEEE 802.11 技术的无线LAN接入,称为WiFi。

3G和LTE

  • 利用3G技术,与WiFi不同的是,一个用户仅需要位于基站的数万米范围内即可。

1.2.2 物理媒介

{导引型媒体(guidedmedia):双绞铜线、同轴电缆、光纤等非导引型媒体(unguidedmedia):陆地无线电信号、卫星无线电信号等\left\{ \begin{aligned} &导引型媒体(guided\quad media):双绞铜线、同轴电缆、光纤等\\ &非导引型媒体(unguided\quad media):陆地无线电信号、卫星无线电信号等 \end{aligned} \right. {​导引型媒体(guidedmedia):双绞铜线、同轴电缆、光纤等非导引型媒体(unguidedmedia):陆地无线电信号、卫星无线电信号等​

双绞铜线

  将两根绝缘的铜线绞合起来,以减少临近类似的双绞线的电气干扰。通常许多双绞线捆扎在一起形成一根电缆,并在外面附上保护层。如上图所示。
  目前局域网中双绞线的数据传输速率可达10Mps~10Gps。

同轴电缆
  与双绞线类似,同轴电缆由两个铜导体组成,这两个导体是同心的而不是并行的。
  同轴电缆在电缆电视系统中较为普遍。

光纤

  光纤是一种细而柔软的、能够引导光脉冲的媒体。一个脉冲表示一个比特。
  优点:支持极高的比特速率,高达数十甚至数百Gbps,不受电磁干扰,信号衰减极低,很难被窃听。
  缺点:造价昂贵。

陆地无线电信号
  不需要安装物理线路,具有穿透墙壁、提供与移动用户的连接以及长距离承载信号的能力。
  陆地无线电信号可大致分为3类:短距离、局域和广域无线电信号。

卫星无线电信号
  一颗通信卫星连接地球上的两个或多个微波发射器/接收器,它们被称为地面站。该卫星在一个频段上接收,使用一个转发器再生信号,并在另一个频率上发射信号。

1.3 网络核心

1.3.1 分组交换

一些概念

  在各种网络应用中,端系统彼此交换报文(message)。
  为了从源端系统向目的端系统发送一个报文,源端系统将报文划分为较小的数据块,称之为分组(packet)。
  在源和目的地之间,每个分组通过通信链路分组交换机(packet switch)传送。分组交换机主要有两种:路由器(router)和链路层交换机(link-layer switch)。
  若某端系统或分组交换机经过某条链路发送一个L比特的分组,链路的传输速率为RRR比特/秒,则时间为LR\frac{L}{R}RL​秒。

存储转发机制

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

  如上图所示,忽略传播时延,源在时刻0开始传输,在时刻LR\frac{L}{R}RL​秒,路由器刚好接收到整个分组,开始向目的地传输。在时刻2LR\frac{2L}{R}R2L​,路由器传输了整个分组。所以,总时延为2LR\frac{2L}{R}R2L​。(如果交换机一旦比特到达就转发比特,则总时延将会是LR\frac{L}{R}RL​)


处理时延

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

排队时延

  对于每条链路,对应的分组交换机具有一个输出缓存(output buffer),用于存储即将发送出去的分组。如果分组需要传输到某条链路,但发现该链路正忙于传输其他分组,该分组必须在输出缓存中等待。这段等待的时间称为排队时延

传播时延

  一个比特从链路的起点到路由器B传播所需要的时间是传播时延。在链路上的传输速率取决于该链路的物理媒体(即光纤、双绞铜线等),速率略小于光速。在广域网中,传播时延为毫秒量级。

传输时延

  在分组交换中,只有当所有已经到达的分组被传输后,才能传输刚到达的分组。用LLL表示该分组的长度,用RbpsR\ bpsR bps表示从路由器A到路由器B的链路传输速率,则传输时延是LR\frac{L}{R}RL​。这是将所有分组的比特全部推向链路所需要的时间。实际的传输时延通常在毫秒到微秒量级。

流量强度
  令aaa表示分组到达队列的平均速率(单位分组/秒,即pkt/spkt/spkt/s),RRR为传输速率,即从队列中推出比特的速率(单位bpsbpsbps),假定所有分组都是由LLL比特组成的。则比特到达队列的平均速率是LabpsLa\ bpsLa bps。假定该队列非常大,基本能容纳无限数量的比特。则比率LaR\frac{La}{R}RLa​被称为流量强度
  流量工程中的一条金科玉律是:设计系统时的流量强度不能大于1。

分组丢失

  由于缓存空间的大小是有限的,一个到达的分组可能发现该缓存已被其他等待传输的分组完全充满了,在此情况下则会出现分组丢失(丢包)现象。
  丢失的分组可能基于端到端的原则重传,以确保所有的数据最终从源传送到了目的地。

吞吐量

  考虑主机A到主机B跨越计算机网络传送一个大文件,在任何时间瞬间的瞬时吞吐量时是主机B接收到该文件的速率(以bps计)。如果该文件由F比特组成,主机B接收到所有比特用去了T秒,则文件传送的平均吞吐量为FTbps\frac{F}{T}bpsTF​bps。

  考虑一个服务器与客户之间具有N条链路的网络,这N条链路的传输速率分别是R1,R2...RNR_1,R_2...R_NR1​,R2​...RN​,则从服务器到客户的文件吞吐量是min⁡{R1,R2...RN}\min\{R_1,R_2...R_N \}min{R1​,R2​...RN​}

转发表

  每个端系统具有一个称为IP地址的地址。当源主机向目的端系统发送一个分组时,源在该分组的首部包含了目的端系统的IP地址。当一个分组到达路由器时,路由器具有的转发表,用于将目的地址(或目的地址的一部分)映射成为输出链路,向相邻路由器转发该分组。每当分组到达路由器时,路由器检查该地址,并用这个目的地址搜索其转发表,以发现适当的出链路。

  端到端的选路过程可以用一个不使用地图而喜欢问路的汽车驾驶员来类比。假定小A驾车从北京到湖北省武汉市的珞喻路1037号。小A先驾车到附近的加油站,询问怎样才能到达湖北省武汉市的珞喻路1037号。加油站的服务员从该地址中抽取了湖北省部分,告诉小A他需要上京开高速,该高速恰有一个临近该加油站的入口。他又告诉小A,一旦到了湖北省后再问当地人。当他到达湖北省后,他向那里的加油站服务员问路。该服务员从地址中抽取了武汉市部分,告诉小A它应当沿京港澳高速到达武汉市后,然后再问其他人…如此直到他最终到达了目的地。

1.3.2 电路交换

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

  一个简单的类比是,考虑两家餐厅,一家需要顾客预定,而另一家不需要预定,但不保证安排顾客。对于需要预定的那家餐厅(对应电路交换),我们在离开家之前必须要承受先打电话预定的麻烦,但当我们到达餐厅时,原则上我们能够立即入座并点菜。对于不需要预定的那家餐厅(对应分组交换),我们不必提前打电话预约,但当我们到达该餐厅时,也许会不得不先等待有一张餐桌空闲后才能入座。

电路交换中网络的复用
  链路中的电路是通过频分复用(Frequency-Division Multiplexing,FDM)和时分复用(Time-Division Multiplexing,TDM)来实现的。  对于FDM,链路的频谱由跨越链路创建的所有连接共享,在连接期间链路为每条链接专用一个频段,这个频段的宽度称为带宽。如,调频无线电台使用FDM来共享88MHz~108MHz的频谱,其中每个电台被分配一个特定的频段。
  对于TDM,时间被划分为固定期间的帧,并且每个帧又被划分为固定数量的时隙。当网络跨越一条链路创建一条连接时,网络在每个帧中为该连接指定一个时隙。这些时隙专门由该连接单独使用,一个时隙可用于传输该连接的数据。

1.3.3 两者对比

  电路交换的传输速度快、高效、实时,但是它的资源利用率低,而且新建连接需要占据一定的时间,有时甚至比通话的时间还要长。
  分组交换的设计简单,资源利用率很高,但是不具有实时性,存在延时,有可能会出现通信阻塞,甚至出现丢包情况。
  总体上分组交换的性能要由于电路交换。

1.4 协议层次及其服务模型

分层体系结构

  上图将航线功能划分为一些层次,提供了我们能够讨论航线旅行的框架。每个层次与其下面的层次结合在一起,实现了某些功能、服务。在票务层以下,完成了一个人从航线柜台到航线柜台的转移。在行李层及以下,完成了人和行李从行李托运到行李认领的转移。在登机口,完成了人和行李从离岗登机口到到港登机口的转移。在起飞/着陆层,完成了一个人和手提行李从跑道到跑道的转移。

协议分层
  网络设计者以分层(layer)的方式组织协议以及实现这些协议的网络硬件和软件,每个协议属于这些层次之一。各层的所有协议被称为协议栈(protocol stack)。因特网的协议栈由五个层次组成:物理层、链路层、网络层、运输层、应用层。

(1)应用层
  应用层是网络应用程序及它们的应用层协议存留的地方。应用层包括了许多协议,例如HTTP(它提供了Web文档的请求和传送)、SMTP(它提供了电子邮件报文的传输)和FTP(它提供了两个端系统之间的文件传送)。
  应用层协议分布在多个端系统上,而一个端系统中的应用程序使用协议与另一个端系统中的应用程序交换信息分组。我们把这种位于应用层的信息分组称为报文(message)。

(2)运输层
  因特网的运输层在应用程序端点之间传送应用层报文。在因特网中,有两种运输协议,即TCPUDPTCP向它的应用程序提供了面向连接的服务,它包括了应用层报文向目的地的确保传递和流量控制,TCP也将长报文划分为短报文,并提供拥塞控制机制。UDP协议向它的应用程序提供无连接服务,这是一种不提供不必要服务的服务,没有可靠性,没有流量控制,也没有拥塞控制。我们把运输层的分组称为报文段(segment)。

(3)网络层
  因特网的网络层负责将称为数据报(datagram)的网络层分组从一台主机移动到另一台主机。在一台源主机中的因特网运输层协议向网络层递交运输层报文段和目的地址。
  因特网的网络层包括著名的国际协议IP,该协议定义了在数据报中的各个字段以及端系统和路由器如何作用于这些字段。IP仅有一个,所有具有网络层的因特网组件必须运行IP

(4)链路层
  因特网的网络层通过源和目的地之间的一系列路由器路由数据报。为了将分组从一个节点移动到路径上的下一个节点,网络层必须依靠链路层的服务。在每个节点,网络层将数据报下传给链路层,链路层沿着路径将数据报传递给下一个节点。
  链路层的例子包括以太网、WiFi和电缆接入网的DOCSIS协议。因为数据报从源到目的地传送通常需要经过几条链路,一个数据报可能被沿途不同链路上的不同链路层协议处理。我们把链路层的分组称为(frame)。

(5)物理层
  物理层的任务是将帧中的一个个比特从一个结点移动到下一个节点。在这层中的协议仍然是链路相关的,并且进一步与该链路的实际传输媒体相关。例如,以太网具有多种物理层协议:有关于双绞铜线的,有关于同轴电缆的,还有关于光纤的。

OSI模型
  国际标准化组织(ISO)提出计算机网络围绕7层来组织,称为开放系统互联模型(OSI)。它比因特网多了两个层,即表示层会话层
  表示层的作用是使通信的应用程序能够解释交换数据的含义,这些服务包括数据压缩和数据加密以及数据描述。
  会话层提供了数据交换的定界和同步功能,包括了建立检查点和恢复方案的方法。

封装

  在发送主机端,一个应用层报文(MMM)被传送给运输层。在理想情况下,运输层收取到报文并附上附加信息(HtH_tHt​),该首部将被接收端的运输层使用。应用层报文和运输层首部信息共同构成了运输层报文段。运输层继续向网络层传递该报文段,网络层增加了如源和目的端系统地址等网络层首部信息(HnH_nHn​),生成了网络层数据报。该数据报接下来被传递给链路层,链路层增加它自己的链路层首部信息并生成链路层帧
  在每一层,一个分组具有两种类型的字段:首部字段和有效载荷字段。有效载荷通常来自上一层的分组。

【计算机网络】1.计算机网络与因特网概述相关推荐

  1. 计算机网络学习1:因特网概述

    本学习内容来自B站https://www.bilibili.com/video/BV1c4411d7jb?p=2链接,湖科大教书匠的教学课堂学习笔记. 1.因特网概述 网络.互联网.因特网 网络由若干 ...

  2. 计算机网络-因特网概述

    因特网概述 一.网络.互联网和因特网 网络(Network)由若干结点(Node)和连接这些结点的链路(Link)组成结点可以是笔记本电脑.台式机.网络打印机.交换机等,链路可以是无线链路,也可以是有 ...

  3. 【计算机网络】因特网概述

    文章目录 因特网概述 网络.互联网和因特网 互联网历史与ISP 标准化与RFC 因特网的组成 三种交换方式 电路交换 分组交换和报文交换 三种交换方式的对比与总结 计算机网络的定义和分类 计算机网络的 ...

  4. 计算机网络之因特网概述

    计算机网络精读•因特网概述 作者:chenxinjian 时间:2021/02/02 邮箱:1778777166@qq.com 文章目录 1 因特网简介 1.1 什么是因特网 2 网络边缘和网络核心 ...

  5. 计算机网络(一)—— 概述(1、2):计算机网络在信息时代的作用、因特网概述

    计算机网络系列内容的学习目录→\rightarrow→谢希仁计算机网络学习系列内容汇总. 1. 计算机网络在信息时代的作用 2. 因特网概述 2.1 网络.互连网(互联网)和因特网 2.2 因特网发展 ...

  6. 计算机网络01:因特网概述、三种交换方式、计算机网络定义和分类、计算机网络的性能指标、计算机网络体系结构

    学习链接: 湖科大教书匠 因特网概述 网络:由若干节点和连接这些节点的链路组成 互连(联)网:多个网络通过路由器互连起来,构成一个覆盖范围更大的网络,即互连(联)网:因此互联网是"网络的网络 ...

  7. 计算机网络:计算机网络在信息时代的作用、因特网概述

    1. 计算机网络在信息时代的作用 计算机网络已由一种通信基础设施发展成为一种重要的信息服务基础设施.   计算机网络已经像水.电.煤气这些基础设施一样,成为我们生活中不可或缺的一部分. 2. 因特网概 ...

  8. 计算机网络第1章(概述)

    B站视频:计算机网络微课堂(有字幕无背景音乐版) 网址:https://www.bilibili.com/video/BV1c4411d7jb?p=61 目录 图示说明 1.1.计算机网络在信息时代的 ...

  9. 计算机网络——计算机网络体系结构-计算机网络概述(课程笔记)

    说明 博客作为笔记备份,不定时更新 参考内容为<计算机网络(第7版)>谢希仁 电子工业出版社:王道考研<计算机网络考研复习指导2023> 文中的例题摘自王道考研<计算机网 ...

  10. 计算机网络第1章(概述)- 湖科大计算机网络课程笔记整理

    笔记整理湖科大计算机网络 一. 计算机网络在信息时代的作用 (1)计算机网络已由一种通信基础设施发展成为一种重要的信息服务基础设施: (2)计算机网络已经像水,电,煤气这些基础设施一样,成为我们生活中 ...

最新文章

  1. STM32 基础系列教程 41 – SDMMC
  2. 向MySQL数据库中插入数据,sql语句没问题,但插入失败也不报错?
  3. python预测模型_Python多元线性回归-sklearn.linear_model,并对其预测结果评估
  4. Android骨架屏实现方案
  5. [NOI 2017]整数
  6. 对计算机网络与系统的认识,浅谈对计算机网络的认识
  7. python编程设计登录和注册程序_小白成长记-----python实现注册的小程序
  8. Golang unsafe包使用笔记
  9. matlab 带通滤波函数,用matlab制作带通滤波器.doc
  10. 免费复制百度文库的VIP文章(非常简单!)
  11. 网页保存为PDF遇到的问题(网页打印)
  12. Android手机avi转换为mp4手机,手机视频格式转换器(3gp mp4 avi converter)
  13. 技术自查番外篇六:死锁及解决办法
  14. 【Cache篇】Linux中的Cache
  15. java多个文件压缩打包成zip下载
  16. Android 自定义字体
  17. 打字不会学计算机,不会拼音打字怎么学
  18. zabbix监控的快速部署
  19. 常用工具类(一) 身份证+姓名+手机号码验证
  20. 中国移动家庭智能网关超级账号密码(广西桂林)

热门文章

  1. ROS学习笔记(2)——ROS通信机制
  2. 拼接大屏数据展示_大屏拼接可视化
  3. 设计一个对象池(Anno.XObjectPool)
  4. Unity3D场景制作基本操作
  5. Stone教程:一行代码就可以把3D场景植入到普通网页中
  6. js:Cannot use import statement outside a module
  7. 练习题目---光照度
  8. 微信小程序无法获取个人信息,用户昵称变成了微信用户,怎么办
  9. Linux命令提示符显示格式的配置
  10. (附源码)Node.js图书管理小程序 毕业设计 250858