赞
踩
描述结点与边之间的关系,结点和边可以被赋予任何对应意义,这些结点和边形成的大小形状无关的系统
联网的计算机所构成的系统
各种能够联网的设备都能被称为主机结点
例如路由机和交换机,但这些结点既不是
数据源
也不是数据目标
交换机与交换机、路由机与路由机或两者排列组合之间的边
主机连接到互联网的链路
支持互联网工作的标准,通过层次的不同可以区分为不同的协议
是由一堆的网络相互互联构成的一个巨型的网络
从具体构成角度来看:
主机=端系统,还包括运行网络应用程序
光纤、同轴电缆、无线网和卫星,提一嘴传输效率=带宽(bps)
交换机(工作在物理层)或者路由机(工作在网络层)
从服务角度来看:
分布式应用例如什么web、游戏、email等等
即以应用层下面的层次为基础设施为apps提供各种接口服务,例如提供无连接可靠服务或面向连接不可靠服务、接入互联网等等
协议就是规定每个层次中的通信实体之间进行数据交互时所要遵守的规则,比如文件格式,次序或在收到到请求、响应时所做的动作
主机和应用程序(客户端和服务端)
运行到应用程序,什么web啊email啊
客户端向服务器请求、接收服务,比如游戏客户端/服务器,web客户端/服务器,这个模式在客户端数量激增后会出现很多问题,由于客户端和服务器在一开始就定下来了,且你所请求资源只有在服务器中,而你不能上传一些资源供别人提供服务,缺少机动性和转变性。即称为集中式,当出现宕机时造成的损失会无法挽回
这就是解决C/S模式所带来的问题,就是让服务器和客户端都具有两者的功能,可以理解为下载软件的运作机理,例如什么迅雷,快播。可以喊出那句口号:我为人人,人人为我,而且由于每个节点都具备客户端和服务器的功能那么这个模式天生就是分布式的,一个任务可能被分成三段,在不同的服务器分别进行请求下载,这样效率也就上去了
什么是面向连接的服务呢,就是在请求与响应端进行先“打招呼”后传输的行为,既要先建立连接状态,连接完成的同时底层的各种协议也要准备相互的资源,以及各种配置的初始化准备。且注意在面向连接服务中之间的各种状态信息和连接信息等资源都是端系统来维护的,而不是网络核心或接入网、物理媒体即是忽略中间结点和链路的。
这里我们说一下TCP协议的优点即提供的服务
- 可靠的(原原本本的传输给你,发的什么收的就是什么)、按顺序地传送数据(确认与重传)
- 流量控制:发送方不会淹没接收方
- 拥塞控制:当网络(路径上面资源很多的时候)拥塞时,发送方降低发送频率
可以简单理解为根本没有“握手”行为的传输协议。只要符合协议的规范就可以了,发送方发送消息,接收方接收到以后立马就回应了
TCP所具有的安全稳定特性,UDP一律没有。无连接、不可靠数据传输、无流量控制、无拥塞控制。
既然UDP这么多缺点我们为什么还要使用它呢,在很要求时间效率或对可靠性要求不高的场景中一般都会选择UDP来作为资源传输的首选协议什么网络多媒体(直播)、聊天软件、视频电话等等
互连着的路由器(路由器的网状网络),网络的网络
端到端的资源被分配给从源端到目标端的呼叫“call”
根据上图可以得到的信息
每段链路有四条线路或片(piece),该次呼叫使用了上面链路的第二条线路和右边链路的第一条线路
这里说一下线路是怎么分出来的,分的方式分别有三种:频分、时分、波分
每个呼叫一旦建立就能保证其性能,即资源不同享(共享资源的能力较差)
如果呼叫中没有信息的传输,称为该次呼叫是“浪费”的
常应用于传统电话网络
这里算出来的是A给B发送这样一个文件需要的时间,而B接收完成的时间是大于这个时间的
这个呼叫中线路没有数据传输,占据的片也不能被其他呼叫所使用
分组交换是在电路交换的基础上将带宽部分为24个,直接使用整个带宽(1.536Mbps)来传输文件,然后传输方式是到每个结点的时候全部数据都储存再来,等全部储存完成后再进行下一个链路的使用,这样共享性就大大增加。这样的方式我们称为
存储转发
当一个结点完全存储下来发送的数据时,通过路由器查路由表发送到下个结点或主机端时,如果在链路上有其他资源在传输,那么这个准备发送的数据就在进入队尾进行排队,从队尾到对头的时间就是
排队延时
注意这里不要理解为发送与接收是分离,需要消耗10s完成这个行为,其实这是站在发送端和接收端的方向来说明的,对于发送端来说发送用时5s,但对于接收端接收也在同时进行所以这个行为就是5s的时间消耗
路由器通过路由算法生成路由表,将分组传输到指定目标的路径
将分组从路由器的输入链路转移到输出链路
- 分组的目标地址决定下一跳
- 在不同的阶段,路由可以改变
- 类似:问路
- 应用:Internent
- 每个分组都带有标签即标识(VC ID),标签决定着下一次转发的目标
- 在呼叫建立时决定路径,整个过程路径不变
- 路由器维持每个呼叫的状态,这就体现了无连接的特性
- 应用:X.25和ATM
有线或无线通信链路,就是实打实物理上负责传输的介质或设备构成的传播链路
其实在早期我们都接触过这样网络接入方式,就是通过电话线来进行上网,电话线是用来传播音频的,其带宽是4KHz(对于每种描述的东西,带宽的单位是不一样的),我们可以通过这个带宽来表示网络信号0101的二进制(调制),通常我们会这样做:调频(频率快代表1,慢代表0)、调幅(幅度高代表1,低代表0)、调相位、综合调制,然后目标端在解调出来
所以早期通过电话上网的方式我们可以看到一个现象,就是在上网的同时是不能打电话的,反之亦然
这种方式是modem的加强版,所以也是调制和解调的方式,将电话线的带宽提高,一部分用于电话通信,一部分用于网络的上传与下行带宽,这时你就可以同时上网和打电话了
在不同的频段传输不同通信的数据,还是基于电话线的扩展,有些带宽给电视用,有些带宽给网络用(上行或下行)等等等
各无线端系统共享无线接入网络(端系统到无线路由器)
就是现在通过4G、5G打电话或接入互联网
连接每个发送-接收对之间的物理媒体
信号沿着固体媒介被引导:即我们实际看得见摸得到物理媒介电缆、光纤等
开放空间传输电磁波或光信号,在其中承载数字数据
两根同轴的铜导线可以双向传输,分为基带电缆和宽带电缆,主要区别就是电缆上有一个或多个信道
通过光信号反射传递,且有高速远距离不丢失等优点
开放空间传播电磁波无需物理媒介,例如LAN、无线通讯上网(4G\5G)、卫星
端系统通过接入IPS连接到互联网,这个接入ISP可能是移动联通电信或者是你学校的等等,且这些接入ISP都是互联的
如果直接将几十万上百万的ISP直接两两互联需要N的平方的数量级,系统性能会随着数量增多出现断崖式下降,这种方式是不可扩展的。那么对应的解决方式就是创建一个或多个全局(global)ISP
从图中可以看出,全局ISP开始出现后,各家有实力的公司都想从中分一杯羹,并且各种全局ISP之间也是实现共享的,用户只需要选择适合自己的运营商和套餐即可,不合适就更换
互联网内容提供者,例如什么字节、阿里巴巴、百度、谷歌等等,此时就出现了一个ICP和ISP之间的矛盾,当ICP在全球范围内都有内容,那么如果本地处理服务器和端系统之间距离很远很远,那么就需要跳转好多个ISP才能到达,同样收费也是十分昂贵。对于此ICP的解决方式就是在端系统本地(如果本地不允许建造这些就要进行租借线缆)建机房或拉光缆传输,即ISP提供的服务自己通过专网实现了
说明:根据此图我们就可以很生动的理解互联网为什么被我们称为网络中的网络,我们可以分为三层,所以一个会话分组其实要经过很多ISP也就是经过很多网络
- 第一层ISP国家或国际来覆盖或ICP的专用网络,速率极高直接与其他第一层的ISP相连,与大量第二层的ISP相连(POP)
- 第二层是更小些的ISP(一般是区域性的),与第一层一个或多个相连(多宿,multi home),也可能与同层相连(对等接入)
- 第三层就是我们口中的接入网,与端系统距离最近
IXP:多个对等ISP互联互通之处
分组延时是因为当分组进入分组队列时如果队列中已经有其他分组在排队等待,那么自然而然此分组也要进行排队,当排到对头时消耗的时间就是分组延时
注意:
这些延时是一个结点对一个结点的,即中间只有一段链路称为hop,发送和接收端之间可能会有很多hop(跳、段),四种延时加起来称为结点延时
检查位(bit)级的错误,检查分组首部和分组去向
在延时队列中排队到对头的时间,取决于拥塞程度
R的倒数就是传输一个位需要的时间,那么乘以总的位数不就是总的时间即传输延时
上面说的传输延时是对于发送端将全部数据打出去的时间,而对于链路来说还需要传播这些数据,那么等传输端分组最后一部分到接收端的时间就为传播延时
当分组队列的承载量达到最大时,新的分组进都进不去更不用谈什么排队了,那么此分组就会被丢失;当然丢失的分组可能会被上一个结点或源主机重新传送,也可能根本不传。主要取决使用的是否为可靠的传输协议。
当然可靠不可靠还会根据传输介质来界定,比如你使用无线来传输,无线本身就不具备可靠性,这时就要考虑使用可靠的协议来亡羊补牢
p8 25分钟左右
在源主机和目标端之间的传输速率(数据量/单位时间),分为瞬间吞吐量和平均吞吐量
底层向上层提供的功能(通信的能力),由此可分为两个不同的方向:服务用户和服务提供者
原语可以理解为当底层向上层提供服务时,是以一种什么形式来提供的,例如传输层向应用层提供socketAPI来完成网络间的通信,那么API中的各种函数就被我们称为原语
上层使用下层提供的服务通过层间的接口,例如传输层的SAP就是port端口,就是说多个应用实体都有通过SAP来使用功能,因为不同使用实体通过SAP使用下层提供的服务肯定是不一样的,那我们怎么区分谁是谁,这时SAP就起作用了,它可以通过报文中的内容来区分,这样提供的功能就能实现定点打击
每一层的数据单元都不一样,例如应用层的协议数据单元叫做报文,传输层的协议数据单元为报文段
对于网络这种结构复杂的系统来说分层处理可以使其结构清晰,便于标示网络组件,以及描述其
相互关系、模块化更易于维护和系统升级(因为上下层之间是不相互影响的,接口是不变的)
从图中可以看出就是发送端就是一层又一层的封装,而接收端就是一层又一层的解封装。注意中间链路上的结点也是需要解封装和封装的
相比于互联网协议多了两层分别是表示层、会话层
允许应用解释传输数据,加密,压缩,机器相关的表示转换
数据交换的同步,检查点,恢复
因为互联网协议栈中这两层的功能都是交给应用层的应用自己去实现
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。