计算机网络-自顶向下方法-笔记【第1章-概述】
计算机网络-自顶向下方法-笔记【第1章-概述】
学习的课程及图片来源:中科大郑烇、杨坚全套《计算机网络(自顶向下方法 第7版,James F.Kurose,Keith W.Ross)》课程
文章目录
- 计算机网络-自顶向下方法-笔记【第1章-概述】
- 1.概论
- 1.1 什么是Internet
- 1.2网络边缘
- 1.3网络核心
- 1.4 接入网与物理媒体
- 住宅接入:拨号、DSL、电缆、FTTH和卫星
- DSL 数字用户线路
- 线缆网络
- FTTH Fiber To The Home光纤到户
- 企业接入网络
- 物理媒体
- 1.5 Internet结构和ISP
- 松散的层次结构
- 1.6 分组延时、丢失和吞吐量
- 延时 delay
- 丢失 loss
- 吞吐量 throughput
- 1.7协议层次和服务模型
- 1.8历史
- 小结
- 小结
1.概论
1.1 什么是Internet
互联网仅仅是网络的一种(是最为广泛的,有上亿的设备连接到互联网),还有其他的如银行的专用网络、军用的专用网络等
计算机网络中
- 节点:主机节点(可以是源、也可以是目标)(各种终端设备)、数据交换节点(既不是源,也不是目标)(如路由器【工作在网络层】、交换机【工作在数据链路层】)
用方形表示主机节点,用圆形表示数据节点 - 边:接入(access)链路(方的和圆的连在一起)、主干(backbone)链路(圆的和圆的连接)
- 协议(protocol)
互联网就是多个网络通过网络互联设备连接起来的巨型的网络
hosts = end systems
通信链路的传输速率即带宽以bps作为单位
IETF(因特网工程任务组(Internet Engineering Task Force, IETF ))制定的RFC文档为请求评论 (Request For Comment, RFC),一个协议可能和多个RFC文档相关
协议(protocol):对等层(Peer Layers)的实体,在通信过程中,应该遵守的规范和标准。规定了报文格式、次序、动作
PDU 协议数据单元 在每个层次上都有特指:应用层——message 传输层——segment 网络层——packet(如果是无连接方式的也称datagram) 数据链路层——frame
互联网中所有的通信行为都有协议的约束
从服务的角度:互联网是分布式的应用进程(网络存在的理由)和为应用进程提供通讯服务的基础设施(即源主机/目标主机应用层以下的所有应用实体)其中基础设施向应用进程提供服务的形式是API(套接字接口( socket interface:应用层在TCP/IP协议族中使用传输层服务的形式)):面向连接的服务(TCP)、无连接的服务(UDP)
1.2网络边缘
network edge、network core、access networks
网络核心的作用就是数据交换(switch),让任意两个网络边缘设施都能连接
- CS客户端/服务器(client server)模式:主从模式——服务器是主,所有的资源都在服务器,客户端是从,所有的资源都来源于服务器
可扩展性差,随着请求的增多,服务器能力下降,并且在达到一定的阈值后,服务器断崖式下落 - P2P **peer-peer模式:**一个分布式应用进程进程既是服务器,又是客户端,因此随着peer节点增多,请求的节点增多,提供的节点也在增多。因此使用在文件分发系统之中。
如迅雷,可以从迅雷上下载东西,即向多个其他主机上的迅雷请求资源的不同片段,因为是分布式的,同时当我们拥有了一些片段也可以向其他主机的迅雷客户端提供服务
面向连接:连接状态的维持仅仅是端系统维护的。中间节点不维护连接
当中间路径上的节点都知道要维护被称为有连接,如下面的分组交换中的虚电路网络
可靠性:因此应用进程不需要考虑纠错等可靠性问题,当采用TCP时就已经假定可靠了
流量控制是可以协调发送方的发送速度和接收方的接收速度,不会出现数据传输太快把数据淹没的情况
拥塞控制:当中间链路拥堵时,如果发送方发的太快,那么到了中间某个节点,可能无法处理,中间节点会把这些数据丢弃。因此TCP还要考虑中间通路的通畅情况,堵塞时降低发送速度
无连接:无需建立连接状态,直接发送
1.3网络核心
circuit switch 电路交换
packet switch 分组交换
建立一个独享的线路,保障了性能,利用独享的线路来进行通信,在之前需要建立链接。一般用于电话网
如果不用那么就会造成浪费,就像拨通了电话,但是不说话仍然需要收费
频分FDM
时分TDM是指在将一个时钟周期划分成多个片,比如每个周期开始的第一个片分给第一个用户,第二个片分给第二个用户
波分WDM采用光链路,即光纤的方式,将可用波段划分成多片
0.5s建立连接,10s传输(传输时间),但传输完并不意味着对方已经接受到了,这里面存在着传播延迟(也即在线路上传播所需要的时间)。在局域网中,传播延迟可以忽略,但在广域网中,传播延迟是不能忽略的
- 优势:节点要把整个分组都存下来,然后再转发到下一个节点,存储转发机制保证了传输过程中一个时间点只会用到一个链路,只要这个链路接收到了全部才能用下一个链路转发,这样其他的链路就可以空闲出来用于其他的通信(共享)
(如果不存储,直接转发,那么和线路交换就是一样的了,只不过这里使用了全部的带宽) - 没有建立连接的时间消耗
- 代价:
- 延迟会更大
- 可能需要排队,因为下一条线路可能被其他连接占用 了
- 如果路由器缓存用完了,那么分组会被抛弃
链路上的复用(多个传输同时使用这条链路)没有固定模式,不像前面介绍的时分等,称为统计多路复用
之所以是9而不算10是因为当线路上的流量满的,没有余量的时候,即流量强度=1的时候线路就会崩溃,此时的排队延迟为无穷大。
分组交换网络(存储-转发)按照有无网络层的连接分成:
数据报网络 datagram(无连接)
每个源主机发向目标主机的分组,携带了目标主机完整的地址,因此两个主机在通讯之前不需要握手,在交换节点当中也不需要维护它们的通讯状态,只是将传入的分组根据路由表转走,至于到底是哪两个主机通讯并不关注,每个分组的传输都是独立的。就像写信一样,每一封信都有完整的地址
通往同一个目标主机的分组可能走的是不同的路径,因为路由表可能在变,使得通过的路径不同
虚电路网络(有连接-不仅仅体现在源和目标,而且体现在中间的所有交换节点上)
需要靠信令建立一条虚拟的线路,在节点之间要维护通讯状态,每个分组携带了一个虚电路号,而不是完整地址。分组按照虚电路号来标识,存储-转发。就像打电话
每个交换节点都有虚电路表项
1.4 接入网与物理媒体
通过接入网将网路边缘接入网络核心
共享/独享
住宅接入:拨号、DSL、电缆、FTTH和卫星
90年代中后期
modem 调制解调器即猫(Modulator&Demodulator)
利用已经有的电话线(而不是直接将光缆铺到每家每户-成本太大-如长城宽带),将上网数据**(数字信号)加载到音频信号(模拟信号)**上,利用电话线(能够保证4kHz)传输
缺点:带宽窄,56Kbps左右,不能同时上网和打电话;以拨号上网速率上限56KBps为界,低于56KBps称为“窄带”,以上称为“宽带”
DSL 数字用户线路
DSL调制解调器 仍然是利用电话线调制解调,0~4kHz专用于音频,4kHz以上用于传输上网数据*(电话线可以保证4kHz,在4k以上还是可以挖掘的)*,同时4k以上划分为非对称的两个部分,一段用于上行,一段用于下行,用于下行的更大,即非对称【4~50kHz为上行,50kHZ~1MHz为下行】
因此本地电话公司是ISP,要求住宅离电话公司比较近,如果比较远,必须采用其他形式的接入网
专用线路
非对称数字用户线路(ADSL,Asymmetric Digital Subscriber Line)是数字用户线路(xDSL,Digital Subscriber Line)服务中最流行的一种。
因为普通用户通常下载速度比上传速度更重要
线缆网络
电缆调制解调器
一部分用于传输原有的下行的数字电视广播,一部分用于互联网上行数据,一部分用于互联网下行数据
上行是你的电脑发送数据到互联网上;下行是你从互联网上下载数据
通过有线电视公司接入的互联网是共享的带宽(因为原来的广播电视也是共享广播媒体)
FTTH Fiber To The Home光纤到户
最简单的光纤分布网络称为直接光纤,从本地中心局到每户设置一根光纤。更为一般的是,从中心局岀来的每根光纤实际上由许多家庭共享,直到相对接近这些家庭的位置,该光纤才分成每户一根光纤
两种光纤分布体系结构:主动光纤网络(Active Optical Network, AON)和被动光纤网络(Passive Optical Network, PON)
企业接入网络
以太网:局域网技术
通过交换机的级联,端系统直接连接到交换机上
物理媒体
物理媒体即可以当作第0层
无屏蔽双绞线(Unshielded Twisted Pair, UTP)常用在建筑物内的计算机网络中,即用于局域网(LAN)中
有线电视的入户线一般是同轴电缆
- 导引性媒体:信号在固体媒介中传播,传播得远
- 非导引性媒体:如信号在开阔的地方传播,如无线电,传播的距离短
1.5 Internet结构和ISP
ISP 网络服务提供商,如江苏移动,南京大学
另一种网络划分:按关系的远近来划分:将关系密切的在一个网络当中的设备称为ISP网络(其中包含很多的小的ISP),互联网是由很多的ISP网络构成的
如果将每两个ISP两两连接代价会很大,是不可扩展的(即扩展到一定规模,性能迅速下降,代价非常大,这种特性就是不可扩展)
ICP 互联网内容提供商,如百度,谷歌。会构建自己的网络,建立自己的机房,因为接入他人的ISP成本高,且他人的ISP可能无法提供更好的服务。
因此内容提供商的机房会建在离核心的ISP比较近的地方(当然也会考虑到很多因素,如很多的数据中心机房是部署在贵州的,如苹果与云上贵州,原因是贵州地形复杂山多,地震少,机房不容易受到外界影响,有些部署在极地附近,考虑的是降温方便,成本低),这样用户通过核心ISP很快就能访问到谷歌的机房,很快就能返回去。同时如果这个机房没有想要的内容,那么谷歌用自己的专用线路(有的可能是自己搭建的线缆,有的可能是租用已有的线缆)从其他机房获取数据返回来,再提供给用户。
松散的层次结构
- 节点少(多了成本高)
- 带宽大(覆盖国家/国际,速度慢无意义)
- ISP之间通过peering link或者通过IXP连接
下层ISP是上层ISP的customer,需要通过上层ISP去连接网络的其他部分
通过接入多个高层ISP,可以提高服务质量
1.6 分组延时、丢失和吞吐量
延时 delay
- 节点处理延迟
- 排队延迟:注意是指不同分组之间排队,而不是分组内部的bit排队
- 传输延迟:路由器将分组发送到链路上的时间,也即存储转发延迟
- 传播延迟:数据在链路上传播的时间
广域网WAN的信道容量比局域网LAN要大:因为数据在广域网上链路长,传播延迟大,因此广域网的链路上同时可能正在传播多个数据报。而局域网链路短,传播延迟可以忽略不计,因此一个时间点链路上一般只有很少的数据报
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 的数据包……
- 当数据包到达目的地后,该主机则不会送回ICMP time exceeded消息,一旦到达目的地,由于tracert通过UDP数据包向不常见端口(30000以上)(即没有应用程序在监听这个端口,数据发过来只能被丢弃)发送数据包,因此会收到**「ICMP port unreachable」**消息,故可判断到达目的地。
如github的tracert,在中间延迟会突然增加,那么可能就是出现了trans-oceanic link跨洋的连接
丢失 loss
- 如果丢失节点和前一个节点之间的链路是可靠的,那么会由前一个节点重传。
- 如果中间的链路是不可靠的如以太网,向上层提供的服务就是不可靠的,且采用TCP,由源主机重传
- 如果中间的链路是不可靠的,且采用的是UDP,那么根本不重传
吞吐量 throughput
容量capacity 有时指的是能容纳多少分组,即信道容量,有时指的是带宽,要看上下文
bottleneck link 瓶颈链路,即最小带宽的链路
考虑最小带宽时还要考虑到多个传输都在使用的一个链路,如这里10个连接,那么R所在链路的带宽实际应为R/10
但事实上Rc、Rs通常是瓶颈链路
1.7协议层次和服务模型
- 使用模块化来将复杂的系统分解,模块与模块之间任意调用
- 使用分层的方式来将复杂系统分解,相邻两层进行调用,不允许或者不建议跨层调用
计算机网络采用分层方式:层次的内部更新换代对其他层次是透明的,问题分解,但效率会降低
对等层采用相同的协议,交换PDU
协议需要通过层间接口借助下层的服务实现(物理层不需要)
当然会包含所有更下层的服务,但增加了直接下层和对等实体交互的过程中形成的新特性(否则这一层没有意义)
协议的目的是为了向上层提供更好的服务(最上层不需要,因此应用是整个网络存在的利用)
服务访问点SAP service access point 即在层间接口有不同的访问点来区分多个上层用户——哪个报文是发给哪个上层用户的。SAP也即服务的地点
如套接字就是传输层和应用层的SAP:原理即从应用层往传输层往下传时进行标注,在对方往上传时加以区分
原语 primitive:服务的形式
在通讯之前要有握手关系,为之后的通讯做好资源准备,这样的形式称为面向连接的服务
适合大块数据的传输
适合零星数据的传输
SDU【真正要传输的信息】穿过层间接口需要加上控制信息ICI,一起构成IDU,之后即可将ICI丢弃,该层在SDU加上该层的头部信息n-header【一部分来自ICI,一部分是本层加的】【可以理解为货车的头部】,一起形成本层的n-PDU,然后n-PDU往下传输即作为n-1层的SDU,重复上面的过程
有三种关系:直接在SDU上加header;SDU很大,需要拆分成多个小的,分别加上header;SDU很小且多个,可以合并在一起再加上header
应用层的协议很多,有上千种
传输层基本就两种TCP、UDP
网络层的IP协议是做转发的,还有很多的路由选择协议
链路层和物理层是配套封装在网卡中的
ISO International Organization for Standardization
OSI Open System Interconnection Reference Model 开放式系统互联通信参考模型
参考模型:模型分几层,每层什么功能,更抽象
体系架构:每层有哪些协议,更具体
1.8历史
每个节点既是数据交换节点,也是端
IMP是路由器的雏形
网络互联原则:各种网络涌现,需要将不同的网络连接到一起,本质是创建一个网络的网络,即网络互联
cerf and kahn提出了TCP/IP,被誉为互联网之父
1978年,温顿·瑟夫、罗伯特.卡恩、丹尼·科恩(Danny Cohen)和约翰·普斯特尔(Jon Postel)将TCP的功能分为两个协议:用来检测网络传输中差错的传输控制协议TCP,以及专门负责对不同网络进行互联的互联网协议IP。
1983年1月1日,ARPANET正式将其网络核心协议由NCP替换为TCP/IP协议。所有主机停止,更换协议
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网站。
小结
代ARPANET,成为Internet的主干网。
80年代末,连接到NSFnet的计算机数量远远超过了ARPANET用户的数量。1990年6月1日,ARPANET被正式“拆除”。
1991年8月6日,在瑞士日内瓦的核子研究中心(CERN)工作的英国物理学家蒂姆·伯纳斯·李(Tim Berners-Lee),正式提出了World Wide Web,也就是如今我们非常熟悉的www万维网。他还提出了HTTP(超文本传送协议)和HTML(超文本标记语言),设计了第一个网页浏览器,并建立了世界上第一个web网站。
[外链图片转存中…(img-Ugx2k60a-1656228847325)]
小结
[外链图片转存中…(img-jxuFvsRp-1656228847326)]
[外链图片转存中…(img-p0hRwuzX-1656228847326)]
[外链图片转存中…(img-NT3cMeSR-1656228847329)]
计算机网络-自顶向下方法-笔记【第1章-概述】相关推荐
- 计算机网络-自顶向下方法-笔记【第3章-传输层】
计算机网络-自顶向下方法-笔记[第3章-传输层] 学习的课程及图片来源:中科大郑烇.杨坚全套<计算机网络(自顶向下方法 第7版,James F.Kurose,Keith W.Ross)>课 ...
- 计算机网络-自顶向下方法-笔记【第2章-应用层】
计算机网络-自顶向下方法-笔记[第2章-应用层] 学习的课程及图片来源:中科大郑烇.杨坚全套<计算机网络(自顶向下方法 第7版,James F.Kurose,Keith W.Ross)>课 ...
- 【计算机网络---自顶向下方法笔记1】计算机网络和因特网概述
今年大年初四,首先祝大家新年快乐哦~停更了好久,虽然有些忙过节了,但还是要对知识进行巩固啊! 本次的学习教材是黑皮书<计算机网络-自顶向下方法>,作者:James F.Kurose与Kei ...
- 计算机网络自顶向下方法笔记01
<计算机网络自顶向下方法>学习笔记.之前学习过计算机网络微课,已经对计网中的很多概念都有了印象和一定的了解了,这时候再读自顶向下感觉比较轻松了.这本书没有涉及太多物理层的内容,第一章为概述 ...
- 计算机网络自顶向下方法笔记02
<计算机网络自顶向下方法>学习笔记02:运输层. 运输层介于应用层与网络层之间,为应用层提供了直接的通信服务.在应用层时已经介绍了两种运输层协议UDP和TCP,本章主要介绍这两个协议和运输 ...
- 《计算机网络 自顶向下方法》 第2章 应用层 Part1
常见的应用层协议有哪些? HTTP(HyperText Transfer Protocol):超文本传输协议 FTP(File Transfer Protocol):文件传输协议 SMTP(Sim ...
- 计算机网络自顶向下方法笔记二
一.应用层协议原理 1.1网络应用程序体系结构 客户-服务器体系结构:有一个总是打开的主机称为服务器,服务器具有固定.周知的地址(IP地址),客户之间不直接通信.对服务器的要求高,常配备数据中心.应用 ...
- 计算机网络-自顶向下方法(7th) 第一章 Review Questions 中英对照
SECTION 1.1 R1 What is the difference between a host and an end system? List several different types ...
- 《计算机网络--自顶向下方法》第三章--运输层
3.1概述和运输层服务 运输层协议为运行再不同主机上的应用进程之间提供了逻辑通信(logic communication)功能 运输层协议是在端系统中而不是在路由器中实现的 3.1.1运输层和网络层的 ...
- 【考研计算机网络】课堂笔记1 第一章 概述
文章目录: 一:计算机网络的概述 1.计算机网络的基本概念 2.计算机网络的组成
最新文章
- android studio类重复,Android Studio 解决重复依赖
- 字符串html在线互转,将string 的字符串转换为HTML的两种方法
- object htmldivelement什么意思_深入探究 Function amp; Object 鸡蛋问题
- “3遍读书法” 我是这样自学编程的
- WordPress学习笔记(一)文章操作
- wget mirror
- 探秘小程序(3):登录
- mysql数据库data没有新创建_如何从pandas datafram在MySQL数据库中创建新表
- 三.螺丝与核弹。【成长篇】
- UE4代理委托(代理,动态代理,单播,多播)
- 前沿|开源项目DeepNav“无人船”修炼日记(一)
- 处理MySQL数据库出现大量Locked的一个案例[转]
- 神经网络学习小记录52——Pytorch搭建孪生神经网络(Siamese network)比较图片相似性
- 局域网中另外一台服务器的内存_工作中遇到的技术名词
- 国内网页无法加载reCAPTCHA解决方案
- dropzonejs vue 使用_可能是史上最全面的学习资源 — VUE 开源库篇(一)
- 安利一个Visual Studio插件 Visual Assist 小番茄
- 数据科学指南#基础篇 Matplotlib 入门
- 2018.10.24-dtij-2636-262144(game)
- iOS无处不在详解iOS集成第三方登录(SSO授权登录无需密码)
热门文章
- LSD-SLAM论文总结
- php 判断非负整数,PHP-检测负数
- 三大语言关于负数除整数余数和商的总结
- 【渝粤题库】国家开放大学2021春3895管理英语1题目
- 公众号丶服务号丶订阅号三者间的区别
- python dataframe重新索引_Concat DataFrame重新索引仅对唯一值索引对象有效
- iphone7一晚上掉电50%_苹果7待机一晚掉电多少
- Laravel Model 的 fillable (白名单)与 guarded (黑名单)
- Representation Learning with Contrastive Predictive Coding 论文阅读
- 【P5385】【Cnoi2019】须臾幻境(LCT)