计算机网络体系结构综述(下)

  • 一. 计算机网络系统结构标准概述
    • OSI七层体系结构具有概念清楚、理论完整的特点,是一个理论上的国际标准,但却不是事实上的国际标准;而具有简单易用特点的TCP/IP 四层体系结构则是事实上的标准

  • 二. OSI 七层体系结构简述
    • 1、OSI七层参考体系结构
      • 在OSI七层参考模型的体系结构中,由低层至高层分别称为物理层、数据链路层、网络层、运输层、会话层、表示层和应用层,下面给出OSI网络体系结构参考模型示意图和OSI网络体系结构的PDU数据封装示意图: 

    • 2、OSI各层次概述
      • 1). 物理层:
        • 在OSI参考模型中,物理层(Physical Layer)是参考模型的最低层,也是OSI模型的第一层。它实现了相邻计算机节点之间比特流的透明传送,并尽可能地屏蔽掉具体传输介质和物理设备的差异,使其上层(数据链路层)不必关心网络的具体传输介质。“透明传送比特流”的意思是经实际电路传送后的比特流没有发生变化,对传送的比特流来说,这个电路好像是看不见的。

      • 2). 数据链路层(data link layer)
        • 数据链路层(Data Link Layer)是OSI模型的第二层,负责建立和管理节点间的链路,控制网络层与物理层之间的通信。它完成了数据在不可靠的物理线路上的可靠传递。我们知道,在计算机网络中,由于各种干扰的存在,物理链路是不可靠的。为了保证数据的可靠传输,从网络层接收到的数据被分割成特定的可被物理层传输的帧。帧是用来移动数据的结构包,它不仅包括原始数据,还包括发送方和接收方的物理地址以及纠错和控制信息。其中的物理地址确定了帧将发送到何处,而纠错和控制信息则确保帧无差错的传递。换句话说,这一层在物理层提供的比特流的基础上,通过差错控制、流量控制方法,使有差错的物理线路变为无差错的数据链路,即提供可靠的通过物理介质传输数据的方法。

      • 3). 网络层(IP协议):
        • 网络层(Network Layer)是OSI模型的第三层,它是OSI参考模型中最复杂的一层,也是通信子网的最高一层,它在下两层的基础上向资源子网提供服务。网络层主要任务是将网络地址翻译成对应的物理地址,并通过路由选择算法为分组通过通信子网选择最适当的路径。特别地,网络层将通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的花费来决定从一个网络中节点A 到另一个网络中节点B的最佳路径。网络层是可选的,它只用于当两个计算机系统处于不同的由路由器分割开的网段这种情况,或者当通信应用要求某种网络层或传输层提供的服务、特性或者能力时。对于两台主机处于同一个LAN网段的直接相连这种情况,它们之间的通信只使用LAN的通信机制就可以了,即OSI参考模型的物理层和数据链路层。

        • 数据链路层与网络层的差异

          • 一般地,数据链路层是解决同一网络内节点之间的通信,而网络层主要解决不同子网间的通信,例如,广域网间的通信。
          • 寻址:数据链路层中使用的物理地址(如MAC地址)仅解决网络内部的寻址问题。在不同子网之间通信时,为了识别和找到网络中的设备,每一子网中的设备都会被分配一个唯一的地址。由于各子网使用的物理技术可能不同,因此这个地址应当是逻辑地址(如IP地址);
          • 路由算法:当源节点和目的节点之间存在多条路径时,网络层可以根据路由算法,通过网络为数据分组选择最佳路径,并将信息从最合适的路径由发送端传送到接收端;
          • 连接服务:与数据链路层流量控制不同的是,前者控制的是网络相邻节点间的流量,后者控制的是从源节点到目的节点间的流量。其目的在于防止阻塞,并进行差错检测。
      • 4). 传输层(transport layer)(TCP,UDP协议)
        • 1)OSI下3层(物理层,数据链路层和网络层)的主要任务是数据通信,上3层(会话层,表示层和应用层)的任务是数据处理,而传输层恰好是OSI模型的第4层,是通信子网和资源子网的接口和桥梁,起到承上启下的作用。该层的主要任务是:向用户提供可靠的端到端的差错和流量控制,保证报文的正确传输。传输层的作用是向高层屏蔽下层数据通信的细节,即向用户透明地传送报文。传输协议同时进行流量控制,即基于接收方可接收数据的快慢程度规定适当的发送速率。除此之外,传输层按照网络能处理的最大尺寸将较大的数据进行强制分割(例如,以太网无法接收大于1500字节的数据包),发送方节点的传输层将数据分割成较小的数据片,同时对每一数据片安排一序列号,以便数据到达接收方节点的传输层时,能以正确的顺序重组,这个过程也叫做排序。

        • (2). 协议
          • TCP/IP中的TCP,UDP协议、Novell网络中的SPX协议和微软的NetBIOS/NetBEUI协议。其中,TCP(传输控制协议)具有传输效率低,可靠性强等特点,用于传输可靠性要求高,数据量大的数据;UDP(用户数据报协议)用于传输可靠性要求不高,数据量小的数据,如QQ聊天数据就是通过这种方式传输的。
        • (3). 传输层与网络层的区别
          • 在协议栈中,传输层位于网络层之上,传输层协议为不同主机上运行的进程提供逻辑通信,而网络层协议为不同主机提供逻辑通信,如下图所示。这个区别很微妙,但是却非常重要,下面的这个网上的例子很好地说明了二者之间的区别。

          • 设想一下有两所房子,一个位于东海岸,而另一个位于西海岸,每所房子里都住着12个小孩。东海岸房子里的小孩和西海岸房子里的小孩是堂兄妹。两所房子里的孩子喜欢互相通信 —— 每个孩子每周都给每一个堂兄妹写一封信,每一封信都由老式的邮局分别用信封来寄,这样,每一家每周就都有144封信要送到另一家。其中,在每一家中都由一个孩子(西海岸房子里的Ann和东海岸房子里的Bill)负责邮件的收集和分发。所以,每周Ann都从她的兄弟姐妹那里收集起来信件,并将这些信件送到每天都来的邮递服务员那里;当信件到达西海岸的房子时,Ann又将这些信件分发给她的兄弟姐妹。同样地,Bill在东海岸做着同样的工作。在这个例子中,邮递服务提供着两所房子之间的逻辑通信,也就是说,邮递服务在两所房子之间传递邮件,而不是针对个人的服务。另一方面,Ann和Bill提供堂兄妹之间的逻辑通信,也就是说,Ann和Bill从他们的兄弟姐妹那里收集邮件并将邮件递送给他们。注意,从这些堂兄妹的角度看,Ann和Bill就是邮件的服务人,尽管他们俩只是端到端寄送服务的一部分(终端系统部分)。那么,在这个例子中,与计算机网络体系结构的对应关系为:
            • 主机(终端系统) <——> 房子
            • 进程 <——> 堂兄妹
            • 应用程序消息 <——> 信封里的信
            • 网络层协议 <——> 邮递服务(包括邮递员)
            • 传输层协议 <——> Ann和Bill
          • 实际上,网络层可以看作是传输层的一部分,其为传输层提供服务。但对于终端系统而言,网络层对它们而言是透明的,它们知道传输层的存在,也就是说,在逻辑上它们认为是传输层为它们提供了端对端的通信,这也是分层思想的妙处。
      • 5). 会话层
        • 会话层(Session Layer)是OSI模型的第五层,是用户应用程序和网络之间的接口,负责在网络中的两节点之间建立、维持和终止通信。会话层的功能包括:建立通信链接,保持会话过程通信链接的畅通,同步两个节点之间的对话,决定通信是否被中断以及通信中断时决定从何处重新发送。
        • 有人把会话层称作网络通信的“交通警察”。当通过拨号向你的ISP(因特网服务提供商)请求连接到因特网时,ISP 服务器上的会话层向你与你的PC机上的会话层进行协商连接。若你的电话线偶然从墙上插孔脱落时,你终端机上的会话层将检测到连接中断并重新发起连接。

      • 6). 表示层(Presentation Layer)
        • 表示层是OSI模型的第六层,它对来自应用层的命令和数据进行解释,以确保一个系统的应用层所发送的信息可以被另一个系统的应用层读取。例如,PC程序与另一台计算机进行通信,其中一台计算机使用扩展二一十进制交换码(EBCDIC),而另一台则使用美国信息交换标准码(ASCII)来表示相同的字符。这时表示层会实现多种数据格式之间的转换。也就是说,表示层的主要功能是处理用户信息的表示问题,如编码、数据格式转换和加密解密等。表示层的具体功能如下:

        • 数据格式处理:协商和建立数据交换的格式,解决各应用程序之间在数据格式表示上的差异;
        • 数据的编码:处理字符集和数字的转换。例如由于用户程序中的数据类型(整型或实型、有符号或无符号等)、用户标识等都可以有不同的表示方式,因此,在设备之间需要具有在不同字符集或格式之间转换的功能;
        • 压缩和解压缩:为了减少数据的传输量,这一层还负责数据的压缩与恢复;
        • 数据的加密和解密:可以提高网络的安全性。
      • 7). 应用层(Application layer)
        • 应用层(Application Layer)是OSI参考模型的最高层,它是计算机用户以及各种应用程序和网络之间的接口,其功能是直接向用户提供服务并完成用户希望在网络上完成的各种工作。应用层在其他六层工作的基础上,负责完成网络中应用程序与网络操作系统之间的联系,建立与结束使用者之间的联系,并完成网络用户提出的各种网络服务及应用所需的监督、管理和服务等各种协议。此外,该层还负责协调各个应用程序间的工作。
        • \应用层为用户提供的服务和协议有:文件服务、目录服务、文件传输服务(FTP)、远程登录服务(Telnet)、电子邮件服务(E-mail)、打印服务、安全服务、网络管理服务、数据库服务、域名服务等。上述的各种网络服务由该层的不同应用协议和程序完成,不同的网络操作系统之间在功能、界面、实现技术、对硬件的支持、安全可靠性以及具有的各种应用程序接口等各个方面的差异是很大的。
  • 三. TCP/IP 四层体系结构
    • TCP/IP 是Internet上的标准通信协议集,该协议集由数十个具有层次结构的协议组成,其中TCP和IP是该协议集中的两个最重要的核心协议。TCP/IP协议族按层次可分为以下四层:应用层、传输层、网络层和网络接口层,各层对应的PDU数据单元的名称如下图所示。

    • 1). 应用层
      • 应用层决定了向用户提供应用服务时通信的活动。TCP/IP协议族内预存了各类通用的应用服务,比如 FTP(文件传输协议)和 DNS(域名系统)服务就是其中两类,HTTP 协议也处于该层。

    • 2).传输层
      • 传输层对上层应用层提供处于网络连接中的两台计算机之间的数据传输。在传输层有两个性质不同的协议:TCP(传输控制协议)和 UDP(用户数据报协议)。其中,TCP是面向连接的传输协议,也就是说,其在数据传输之前会建立连接,并把报文分解为多个段进行传输,在目的站再重新装配这些段,必要时重新传输没有收到或错误的,因此它是“可靠”的。而UDP是无连接的传输协议,其在数据传输之前不建立连接,并且对发送的段不进行校验和确认,因此它是“不可靠”的。传输层与应用层之间的关系如下:

    • 3).网络层
      • 网络层用来处理在网络上流动的数据包,其中,数据包是网络传输的最小数据单位。该层规定了通过怎样的路径(所谓的传输路线)到达对方计算机,并把数据包传送给对方。与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条传输路线。也就是说,网络层主要功能是把数据报通过最佳路径送到目的端,其中,网际层的核心协议——IP,提供了无连接的数据报传输服务(不保证送达,不保序)。网络层与传输层之间的关系如下:

    • 4).网络接口层
      • 网络接口层用来处理连接网络的硬件部分,包括硬件的设备驱动、NIC(Network Interface Card,网卡)及光纤等物理可见部分,还包括连接器等一切传输媒介。也就是说,硬件上的范畴均在链路层的作用范围之内。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值