• 【计算机网络】-网络层-网络层的设计问题


    【计算机网络】-网络层-网络层的设计问题

    网络层的功能概述

    负责通过多个链路在端点之间传递数据包

    网络层所在位置:

    存储-转发数据包交换

    存储-转发数据包交换过程
    1.若一台主机要发送一个数据包,它会将数据包发送给最近路由器
    2.在该数据包到达路由器,并且路由器的链路层完成了对它校验和的验证后,它先被存储在路由器上,路由器根据数据包的头部信息和路由表,选择路由
    3.根据所选路由,将该数据包转发到下一跳路由器,直到到达目的主机为止
    4.在目的主机上它被交给相应的进程

    向传输层提供的服务

    设计网络层服务时需要考虑问题

    1.向上层提供的服务应该独立于路由器技术
    2.路由器的数量、类型和拓扑结构对传输层不可见
    3.网络地址应该有统一的编址方案,甚至可跨越多个LAN和WAN

    提供服务的类型

    无连接服务

    Internet社团的观点:通信子网不可靠的,主机应该接受“网络是不可靠的”这样的事实,且自己来完成错误控制和流控。网络层只需提供无连接服务,而将复杂的功能放在传输层
    例:Internet提供了无连接的网络层服务

    面向连接服务

    电话公司的观点:通信子网应该提供可靠的、面向连接的服务。服务质量是最主要的因素
    例:ATM提供了面向连接的网络层服务

    无连接服务的实现

    数据报

    提供无连接的服务,每个数据包携带完整的目的地址,独立进行路由选择

    数据报子网的工作过程

    1.每一台路由器的内部都有一张内部表,它指明了针对每一个可能的目标地址应当将数据包发送到哪里去
    2.每一个表项由两个部分所组成,其一是目标地址,其二是通往目标地址所使用的出境线路
    3.当然只能使用直接连接的线路,比如A只有两个出境的线路,分别通往B和C,所以每一个入境的数据包必须要转发给这两个路由器之一,即使它的目标地址是其他的一台路由器,因此A的初始化表如图所示,出境线路都是B或者C
    4.在路由器A,数据包1、2和3分别到达入境线路并经过验证校验和之后,被路由器暂时保存起来,根据A上的表,每个数据包被放在一个新帧中,并且被转发到通往C的出境线路,之后数据包1被转发给E,之后数据包1被转发给E,进一步又转发给F,当它到达F的时候,它被封装在一个帧内通过连有h2的lan被发送出去,数据包2,3遵循同样的线路
    5.数据包4的情形有些不同,当它到达A的时候,尽管它的目标地址是指向F的,但是它被转发给路由器B,这有可能是路由器A意识到了ACE路径出现了拥塞,进而更新了路由表

    面向连接服务的实现

    虚电路

    1.提供面向连接的服务,在发送数据数据包之前,必须先建立起一条从源路由器到目的路由器之间的路径,这个连接称为虚电路(VC)
    2.使用该虚电路进行通信
    3.通信结束后,释放该虚电路

    虚电路的工作过程

    1.建立虚电路,每个随后的数据包都包含一个标示符,指明该数据包属于哪个虚电路
    2.使用该虚电路进行通信
    3.通信结束后,终止虚电路

    虚电路子网和数据报子网的比较(important)

    连接建立时间与地址查找时间的权衡

    • 虚电路需要在建立连接时,花费时间
    • 数据报则在每次路由时,查找过程复杂

    路由器内存空间与带宽的权衡

    • 虚电路方式,数据包只要包含电路号,不用包含完整的目的地址,但路由器需要维护虚电路的状态信息
    • 数据报方式,每个数据报都携带完整的目的/源地址,但路由器不需要维护虚电路的状态信息

    服务质量QoS(Quality of Service)

    • 虚电路方式很容易保证QoS,可以提前预留资源,适用于实时操作,但比较脆弱
    • 数据报不太容易保证QoS,但是对于通信线路的故障,适应性很强
  • 相关阅读:
    not syncing: Attempted to kill init
    PhpStudy如何开启Apache的gzip压缩功能?
    去掉桌面图标快捷箭头
    PS中10种样式操作
    Mysql数据库报错1264
    宝塔建站
    VB错误说明
    Flash的swf文件破解
    PS快捷键
    Mysql双向同步热备份设置
  • 原文地址:https://www.cnblogs.com/mengxiaoleng/p/11884769.html
Copyright © 2020-2023  润新知