1概述

1.概论

image-20220309163725161

1.1 什么是Internet

互联网仅仅是网络的一种(是最为广泛的,有上亿的设备连接到互联网),还有其他的如银行的专用网络、军用的专用网络等

image-20220309165049534

image-20220309165745292

计算机网络中

  • 节点:主机节点(可以是源、也可以是目标)(各种终端设备)、数据交换节点(既不是源,也不是目标)(如路由器【工作在网络层】、交换机【工作在数据链路层】)用方形表示主机节点,用圆形表示数据节点

  • 边:接入(access)链路(方的和圆的连在一起)、主干(backbone)链路(圆的和圆的连接)

  • 协议(protocol)

互联网就是多个网络通过网络互联设备连接起来的巨型的网络

image-20220309170227294

hosts = end systems

通信链路的传输速率即带宽以bps作为单位

image-20220309171543056

IETF(因特网工程任务组(Internet Engineering Task Force, IETF ))制定的RFC文档为请求评论 (Request For Comment, RFC),一个协议可能和多个RFC文档相关

image-20220309185346935

协议(protocol):对等层(Peer Layers)的实体,在通信过程中,应该遵守的规范和标准。规定了报文格式、次序、动作

PDU 协议数据单元 在每个层次上都有特指:应用层——message 传输层——segment 网络层——packet(如果是无连接方式的也称datagram) 数据链路层——frame

互联网中所有的通信行为都有协议的约束

image-20220309185614677

从服务的角度:互联网是分布式的应用进程(网络存在的理由)和为应用进程提供通讯服务的基础设施即源主机/目标主机应用层以下的所有应用实体)其中基础设施向应用进程提供服务的形式是API(套接字接口( socket interface:应用层在TCP/IP协议族中使用传输层服务的形式)):面向连接的服务(TCP)、无连接的服务(UDP)

1.2网络边缘

image-20220309190820574

image-20220309191056550

network edgenetwork coreaccess networks

网络核心的作用就是数据交换(switch),让任意两个网络边缘设施都能连接

image-20220309192041636

  • CS客户端/服务器(client server)模式:主从模式——服务器是主,所有的资源都在服务器,客户端是从,所有的资源都来源于服务器
    可扩展性差,随着请求的增多,服务器能力下降,并且在达到一定的阈值后,服务器断崖式下落

  • P2P **peer-peer模式:**一个分布式应用进程进程既是服务器,又是客户端,因此随着peer节点增多,请求的节点增多,提供的节点也在增多。因此使用在文件分发系统之中。如迅雷,可以从迅雷上下载东西,即向多个其他主机上的迅雷请求资源的不同片段,因为是分布式的,同时当我们拥有了一些片段也可以向其他主机的迅雷客户端提供服务

image-20220309193316313

面向连接:连接状态的维持仅仅是端系统维护的。中间节点不维护连接

当中间路径上的节点都知道要维护被称为有连接,如下面的分组交换中的虚电路网络

可靠性:因此应用进程不需要考虑纠错等可靠性问题,当采用TCP时就已经假定可靠了

流量控制是可以协调发送方的发送速度和接收方的接收速度,不会出现数据传输太快把数据淹没的情况

拥塞控制:当中间链路拥堵时,如果发送方发的太快,那么到了中间某个节点,可能无法处理,中间节点会把这些数据丢弃。因此TCP还要考虑中间通路的通畅情况,堵塞时降低发送速度

image-20220309194237963

无连接:无需建立连接状态,直接发送

1.3网络核心

image-20220314200736805

circuit switch 电路交换

packet switch 分组交换

image-20220314201021637

建立一个独享的线路保障了性能,利用独享的线路来进行通信,在之前需要建立链接。一般用于电话网

如果不用那么就会造成浪费,就像拨通了电话,但是不说话仍然需要收费

image-20220314201622149

image-20220314201719791

频分FDM

image-20220314202141900

时分TDM是指在将一个时钟周期划分成多个片,比如每个周期开始的第一个片分给第一个用户,第二个片分给第二个用户

波分WDM采用光链路,即光纤的方式,将可用波段划分成多片

image-20220314202522237

0.5s建立连接,10s传输(传输时间),但传输完并不意味着对方已经接受到了,这里面存在着传播延迟(也即在线路上传播所需要的时间)。在局域网中,传播延迟可以忽略,但在广域网中,传播延迟是不能忽略的

image-20220314202723859

image-20220314202905403

  • 优势:节点要把整个分组都存下来,然后再转发到下一个节点,存储转发机制保证了传输过程中一个时间点只会用到一个链路,只要这个链路接收到了全部才能用下一个链路转发,这样其他的链路就可以空闲出来用于其他的通信(共享(如果不存储,直接转发,那么和线路交换就是一样的了,只不过这里使用了全部的带宽)

  • 没有建立连接的时间消耗

  • 代价:image-20220314203920067

  • 延迟会更大

  • 可能需要排队,因为下一条线路可能被其他连接占用 了

  • 如果路由器缓存用完了,那么分组会被抛弃

image-20220314203619477image-20220314203648517

image-20220314204146968

image-20220314204351989

链路上的复用(多个传输同时使用这条链路)没有固定模式,不像前面介绍的时分等,称为统计多路复用

image-20220314221204247image-20220314221719766

之所以是9而不算10是因为当线路上的流量满的,没有余量的时候,即流量强度=1的时候线路就会崩溃,此时的排队延迟为无穷大。

image-20220314222334629

分组交换网络(存储-转发)按照有无网络层的连接分成:

  • 数据报网络 datagram无连接

    每个源主机发向目标主机的分组,携带了目标主机完整的地址,因此两个主机在通讯之前不需要握手,在交换节点当中也不需要维护它们的通讯状态,只是将传入的分组根据路由表转走,至于到底是哪两个主机通讯并不关注,每个分组的传输都是独立的就像写信一样,每一封信都有完整的地址

    image-20220314223223616

    通往同一个目标主机的分组可能走的是不同的路径,因为路由表可能在变,使得通过的路径不同

  • 虚电路网络(有连接-不仅仅体现在源和目标,而且体现在中间的所有交换节点上)

    需要靠信令建立一条虚拟的线路,在节点之间要维护通讯状态,每个分组携带了一个虚电路号,而不是完整地址。分组按照虚电路号来标识,存储-转发。就像打电话

    image-20220314223757919

    每个交换节点都有虚电路表项

image-20220314224006105

1.4 接入网与物理媒体

image-20220322173619078

通过接入网将网路边缘接入网络核心

共享/独享

住宅接入:拨号、DSL、电缆、FTTH和卫星

image-20220322174505970

90年代中后期

modem 调制解调器(Modulator&Demodulator)

利用已经有的电话线(而不是直接将光缆铺到每家每户-成本太大-如长城宽带),将上网数据**(数字信号)加载到音频信号(模拟信号)**上,利用电话线(能够保证4kHz)传输

缺点:带宽窄,56Kbps左右,不能同时上网和打电话;以拨号上网速率上限56KBps为界,低于56KBps称为“窄带”,以上称为“宽带”

DSL 数字用户线路

image-20220322180306872

image-20220322175857363

DSL调制解调器 仍然是利用电话线调制解调,0~4kHz专用于音频,4kHz以上用于传输上网数据*(电话线可以保证4kHz,在4k以上还是可以挖掘的)*,同时4k以上划分为非对称的两个部分,一段用于上行,一段用于下行用于下行的更大即非对称【4~50kHz为上行,50kHZ~1MHz为下行】

因此本地电话公司是ISP,要求住宅离电话公司比较近,如果比较远,必须采用其他形式的接入网

专用线路

非对称数字用户线路(ADSL,Asymmetric Digital Subscriber Line)是数字用户线路(xDSL,Digital Subscriber Line)服务中最流行的一种。

因为普通用户通常下载速度比上传速度更重要

线缆网络

image-20220322180340735

image-20220322181255963

电缆调制解调器

一部分用于传输原有的下行的数字电视广播,一部分用于互联网上行数据,一部分用于互联网下行数据

上行是你的电脑发送数据到互联网上;下行是你从互联网上下载数据

通过有线电视公司接入的互联网是共享的带宽(因为原来的广播电视也是共享广播媒体)

FTTH Fiber To The Home光纤到户

最简单的光纤分布网络称为直接光纤,从本地中心局到每户设置一根光纤。更为一般的是,从中心局岀来的每根光纤实际上由许多家庭共享,直到相对接近这些家庭的位置,该光纤才分成每户一根光纤

两种光纤分布体系结构:主动光纤网络(Active Optical Network, AON)和被动光纤网络(Passive Optical Network, PON)

image-20220407211813741

image-20220322181614354

企业接入网络

以太网:局域网技术

image-20220407212538504image-20220407212622045image-20220407212703374

image-20220322181723453

通过交换机的级联,端系统直接连接到交换机上

image-20220322181907009

物理媒体

物理媒体即可以当作第0层

image-20220322192657987

无屏蔽双绞线(Unshielded Twisted Pair, UTP)常用在建筑物内的计算机网络中,即用于局域网(LAN)中

image-20220322193022993

有线电视的入户线一般是同轴电缆

image-20220322193252969

  • 导引性媒体:信号在固体媒介中传播,传播得远

  • 非导引性媒体:如信号在开阔的地方传播,如无线电,传播的距离短

1.5 Internet结构和ISP

ISP 网络服务提供商,如江苏移动,南京大学

另一种网络划分:按关系的远近来划分:将关系密切的在一个网络当中的设备称为ISP网络(其中包含很多的小的ISP),互联网是由很多的ISP网络构成的

image-20220322194640657

如果将每两个ISP两两连接代价会很大,是不可扩展的(即扩展到一定规模,性能迅速下降,代价非常大,这种特性就是不可扩展)

image-20220322195255983

image-20220322195352322

image-20220322195615711

image-20220322201306386

ICP 互联网内容提供商,如百度,谷歌。会构建自己的网络,建立自己的机房,因为接入他人的ISP成本高,且他人的ISP可能无法提供更好的服务。

image-20220322200256295

因此内容提供商的机房会建在离核心的ISP比较近的地方当然也会考虑到很多因素,如很多的数据中心机房是部署在贵州的,如苹果与云上贵州,原因是贵州地形复杂山多,地震少,机房不容易受到外界影响,有些部署在极地附近,考虑的是降温方便,成本低),这样用户通过核心ISP很快就能访问到谷歌的机房,很快就能返回去。同时如果这个机房没有想要的内容,那么谷歌用自己的专用线路(有的可能是自己搭建的线缆,有的可能是租用已有的线缆)从其他机房获取数据返回来,再提供给用户。

松散的层次结构

image-20220322200716939

image-20220322200937618

  • 节点少(多了成本高)

  • 带宽大(覆盖国家/国际,速度慢无意义)

  • ISP之间通过peering link或者通过IXP连接

image-20220322201053710

image-20220322201123499

下层ISP是上层ISP的customer,需要通过上层ISP去连接网络的其他部分

image-20220322201229556

image-20220322201413107

通过接入多个高层ISP,可以提高服务质量

1.6 分组延时、丢失和吞吐量

image-20220322202322104

延时 delay

image-20220322202413624

image-20220322202537762

  • 节点处理延迟

  • 排队延迟:注意是指不同分组之间排队,而不是分组内部的bit排队

  • 传输延迟:路由器将分组发送到链路上的时间,也即存储转发延迟

  • 传播延迟:数据在链路上传播的时间

image-20220322203539894

广域网WAN的信道容量比局域网LAN要大:因为数据在广域网上链路长,传播延迟大,因此广域网的链路上同时可能正在传播多个数据报。而局域网链路短,传播延迟可以忽略不计,因此一个时间点链路上一般只有很少的数据报

image-20220322203801790

Tracert 命令用 IP 生存时间 (TTL)(time to live) 字段和 ICMP 错误消息来确定从一个主机到网络上其他主机的路由。向每个路由器发出3个探测分组

  • 首先,tracert送出一个TTL是1的IP 数据包到目的地

  • IP数据报每到一个路由器就把TTL-1,直到TTL=0时,路由器会把这个数据报丢弃并送回一个**「ICMP time exceeded」消息(包括发IP包的源地址,IP包的所有内容及路由器的IP地址)

  • 接着tracert 再送出另一个TTL是2 的数据包……

  • image-20220322210303328

  • 当数据包到达目的地后,该主机则不会送回ICMP time exceeded消息,一旦到达目的地,由于tracert通过UDP数据包向不常见端口(30000以上)即没有应用程序在监听这个端口,数据发过来只能被丢弃)发送数据包,因此会收到**「ICMP port unreachable」**消息,故可判断到达目的地。

image-20220322212900840

如github的tracert,在中间延迟会突然增加,那么可能就是出现了trans-oceanic link跨洋的连接

丢失 loss

image-20220322210739797

  • 如果丢失节点和前一个节点之间的链路是可靠的,那么会由前一个节点重传。

  • 如果中间的链路是不可靠的如以太网,向上层提供的服务就是不可靠的,且采用TCP,由源主机重传

  • 如果中间的链路是不可靠的,且采用的是UDP,那么根本不重传

吞吐量 throughput

image-20220322211436294

容量capacity 有时指的是能容纳多少分组,即信道容量,有时指的是带宽,要看上下文

image-20220322211929165

bottleneck link 瓶颈链路,即最小带宽的链路

image-20220322212505648

考虑最小带宽时还要考虑到多个传输都在使用的一个链路,如这里10个连接,那么R所在链路的带宽实际应为R/10

但事实上Rc、Rs通常是瓶颈链路

1.7协议层次和服务模型

  • 使用模块化来将复杂的系统分解,模块与模块之间任意调用

  • 使用分层的方式来将复杂系统分解,相邻两层进行调用,不允许或者不建议跨层调用

image-20220407093921810

计算机网络采用分层方式:层次的内部更新换代对其他层次是透明的,问题分解,但效率会降低

image-20220407085159872

  • 对等层采用相同的协议,交换PDU

  • 协议需要通过层间接口借助下层的服务实现(物理层不需要)

    当然会包含所有更下层的服务,但增加了直接下层和对等实体交互的过程中形成的新特性(否则这一层没有意义)

  • 协议的目的是为了向上层提供更好的服务(最上层不需要,因此应用是整个网络存在的利用)

image-20220407090946283

服务访问点SAP service access point 即在层间接口有不同的访问点来区分多个上层用户——哪个报文是发给哪个上层用户的。SAP也即服务的地点
套接字就是传输层和应用层的SAP:原理即从应用层往传输层往下传时进行标注,在对方往上传时加以区分

原语 primitive:服务的形式

image-20220407091851148

在通讯之前要有握手关系,为之后的通讯做好资源准备,这样的形式称为面向连接的服务

适合大块数据的传输

image-20220407092116211

适合零星数据的传输

image-20220407092357061

image-20220407092653840

SDU【真正要传输的信息】穿过层间接口需要加上控制信息ICI,一起构成IDU,之后即可将ICI丢弃,该层在SDU加上该层的头部信息n-header【一部分来自ICI,一部分是本层加的】【可以理解为货车的头部】,一起形成本层的n-PDU,然后n-PDU往下传输即作为n-1层的SDU,重复上面的过程

image-20220407093226545

三种关系:直接在SDU上加header;SDU很大,需要拆分成多个小的,分别加上header;SDU很小且多个,可以合并在一起再加上header

image-20220407094049374

应用层的协议很多,有上千种传输层基本就两种TCP、UDP
网络层的IP协议是做转发的,还有很多的路由选择协议链路层和物理层是配套封装在网卡中的

image-20220407100737596

ISO International Organization for Standardization

OSI Open System Interconnection Reference Model 开放式系统互联通信参考模型

参考模型:模型分几层,每层什么功能,更抽象体系架构:每层有哪些协议,更具体

image-20220407145511402

image-20220407180211806

1.8历史

image-20220407194744786

image-20220407194827782

每个节点既是数据交换节点,也是端

IMP是路由器的雏形

image-20220407195211543

网络互联原则:各种网络涌现,需要将不同的网络连接到一起,本质是创建一个网络的网络,即网络互联

cerf and kahn提出了TCP/IP,被誉为互联网之父

1978年,温顿·瑟夫、罗伯特.卡恩、丹尼·科恩(Danny Cohen)和约翰·普斯特尔(Jon Postel)将TCP的功能分为两个协议:用来检测网络传输中差错的传输控制协议TCP,以及专门负责对不同网络进行互联的互联网协议IP。

image-20220407200922007

1983年1月1日,ARPANET正式将其网络核心协议由NCP替换为TCP/IP协议。所有主机停止,更换协议

image-20220407201255638

1984年,美国国家科学基金会(NSF)建立了NSFnet,作为超级计算机研究中心之间的连接。

最初,NSF曾试图使用ARPANET作为NSFnet的通信干线,但由于ARPANET的军方背景,以及受控于政府,这个决策没有成功。

于是他们决定自己出资,基于TCP/IP协议,建立完全属于自己的广域网。

NSFnet发展非常迅速,很快将全美各地的大学、政府和私人科研机构连接起来。NSFnet的速度也很快,比ARPANET网络快25倍以上。

渐渐地,NSFnet开始取代ARPANET,成为Internet的主干网。

80年代末,连接到NSFnet的计算机数量远远超过了ARPANET用户的数量。1990年6月1日,ARPANET被正式“拆除”。

1991年8月6日,在瑞士日内瓦的核子研究中心(CERN)工作的英国物理学家蒂姆·伯纳斯·李(Tim Berners-Lee),正式提出了World Wide Web,也就是如今我们非常熟悉的www万维网。他还提出了HTTP(超文本传送协议)和HTML(超文本标记语言),设计了第一个网页浏览器,并建立了世界上第一个web网站。

image-20220407202442711

小结

image-20220407202926611

image-20220407202946339

image-20220407203705644

  • 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
  • Copyrights © 2022-2024 zzb
  • RZ
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信