• 1.7 计算机网络体系结构


     

    思维导图:

     

     

     1.7.1 计算机网络的体系结构的形成

    **1.7 计算机网络体系结构**

    计算机网络体系结构中,分层的思想为核心。该方法使得复杂的网络设计变得更为简单和可管理。

    **1.7.1 计算机网络体系结构的形成**

    - **计算机网络的复杂性**: 即使是简单的文件传输也涉及多种任务,例如激活通信路径、确定接收方、检查接收方状态等。
      
    - **分层的意义**: 将大型的问题划分为多个小的部分,每个部分可以独立地进行研究和处理。

      
    - **早期的体系结构**:
      - IBM的SNA (System Network Architecture): 由IBM公司于1974年提出,是按分层方法制定的网络标准。
      - 其他公司也推出了自己的网络体系结构,但这导致了不同公司的网络难以互联。

    - **OSI/RM (Open Systems Interconnection Reference Model)**:
      - 由ISO于1977年提出,旨在创建一个全球统一的计算机网络标准。
      - 该模型被设计为七层协议的体系结构。
      - 虽然OSI得到了广泛的支持,但由于多种原因(如实际实现的复杂性、制定周期长、功能重复等),它在市场上未能成功。而TCP/IP的互联网技术得到了广泛的应用,并成为了事实上的国际标准。

    - **标准与市场**:
      - 能够占领市场的技术实际上就成了标准。而现代的技术标准往往具有强烈的商业导向。

    - **通信与信息处理的界限模糊**:
      - 与计算机网络体系结构相关的许多标准现在由通信和信息处理的两个组织ISO和CCITT共同制定。

    ---

    **我的建议**:
    这是计算机网络体系结构的基础部分。在学习时,应重点理解分层思想的重要性,各种体系结构如何应对网络通信中的复杂问题,以及市场与标准之间的关系。

    1.7.2 协议与划分层次 

     

    **1.7.2 协议与划分层次**

    **1. 协议的定义**
    - 协议是为了在计算机网络中交换数据所必须遵守的规则或约定。
    - 这些规则明确了数据的格式、同步问题、控制信息等。
    - 同步在此处被理解为广义上的事件实现的时序。

    **2. 协议的来源**
    - 例如,ITU(Intermational Telecommunication Union)替代了CCITT和CCIR,并颁布电信标准。

    **3. 协议的要素**
    - 语法:数据与控制信息的结构或格式。
    - 语义:要发出的控制信息、要完成的动作及响应。
    - 同步:事件实现的顺序说明。

    **4. 协议的形式**
    - 人类可阅读和理解的文字描述。
    - 计算机能理解的程序代码。

    **5. 分层的重要性**
    - ARPANET的研发经验指出复杂的计算机网络协议应当是层次化的。

    **6. 分层的例子**
    - 主机1与主机2之间通过通信网络传输文件。
    - 划分工作:文件传送、通信服务、网络接入等。
      
    **7. 分层的好处**
    - 独立性:每一层都是独立的,不需要知道下一层如何实现。
    - 灵活性:如果层间接口关系不变,一个层的改变不会影响其他层。
    - 可分割性:可以使用最合适的技术来实现每一层。
    - 易于实现和维护:简化了系统实现和调试的复杂度。
    - 促进标准化:每一层的功能和提供的服务都有精确的说明。

    **8. 各层要完成的功能**
    - 差错控制、流量控制、分段和重组、复用和分用、连接建立和释放等。

    **9. 分层的缺点**
    - 功能可能在不同层中重复,导致额外开销。

    **10. 计算机网络的体系结构**
    - 各层及其协议的集合称为网络的体系结构。
    - 体系结构是抽象的,定义了网络应完成的功能;实现是具体的,包括真正在运行的计算机硬件和软件。

     

    1.7.3 具有五层协议的体系结构

    **笔记 1.7.3: 具有五层协议的体系结构**

    ---

    **一、背景**

    - **OSI七层协议体系结构**:虽有完整理论,但被认为复杂且不实用。
      
    - **TCP/P四层体系结构**:更为实用,广泛应用。由应用层、运输层、网际层和网络接口层组成。实际上,主要是前三层,最下层的网络接口层并没有具体内容。

    为结合两者优点并简洁地阐述概念,有时采用只有**五层协议的体系结构**。

    ---

    **二、五层协议体系结构**

    - 这是为了介绍网络原理而设计的结构。
      
    - 实际应用中,常用的是TCP/P的四层体系结构。

    五层结构如下:

    1. **应用层**:包含各种应用层协议,例如TELNET, FTP, SMTP等。
       
    2. **运输层**:主要有TCP或UDP协议。
       
    3. **网络层**
       
    4. **数据链路层**
       
    5. **物理层**

    ---

    **三、图解**

    - (a) OSI的七层协议:应用层、表示层、会话层、运输层、网络层、数据链路层、物理层

    - (b) TCP/IP的四层协议:应用层、运输层、网际层、网络接口层

    - (e) 五层协议:应用层、运输层、网络层、数据链路层、物理层

    ---

    **四、各层功能简介**

    - 要真正理解各层的功能,需要认真学习书中各章的协议内容。不过在此,我们可以简要概述每一层的主要功能。

    ---

    ---

    #### 1. **应用层 (Application Layer)**
       - **定义**:最高层,完成特定网络应用。
       - **功能**:通过应用进程间交互实现。
       - **应用层协议**:定义进程间通信规则。
       - **例子**:DNS、HTTP、SMTP等。
       - **数据单元**:报文(message)。

    #### 2. **运输层 (Transport Layer)**
       - **定义**:为两台主机进程间提供数据传输服务。
       - **功能**:
         - 提供通用数据传输服务。
         - 复用与分用功能。
       - **主要协议**:
         - **TCP**:面向连接的、可靠数据传输,单位为报文段(segment)。
         - **UDP**:无连接、最大努力数据传输,单位为用户数据报。
       - **注**:通常也称为“传输层”。

    #### 3. **网络层 (Network Layer)**
       - **定义**:为分组交换网上的不同主机提供通信服务。
       - **功能**:数据传输与路由选择。
       - **数据单元**:分组或包。
       - **主要协议**:IP协议(IP数据报)。

    #### 4. **数据链路层 (Data Link Layer)**
       - **定义**:在相邻节点间传输数据。
       - **功能**:将数据组装成帧并传输,提供必要的控制信息。
       - **数据单元**:帧(frame)。

    #### 5. **物理层 (Physical Layer)**
       - **定义**:处理电压、连接和比特传输。
       - **数据单元**:比特。
       - **考虑因素**:代表比特的电压、插头引脚数量及连接方式。

    ---

    **其他说明**:
    - TCP/IP并非仅指TCP与IP协议,而是表示整个TCP/IP协议族。
    - 应用进程的数据在各层传递中会发生变化。
    - 物理层下的物理媒体被视为第0层。

    ---

     

     

     

     

     

     

     

     

     1.7.4 实体、协议、服务和服务访问点

    **1.7.4 实体、协议、服务和服务访问点**

    1. **实体(Entity)**:
       

     

    - 定义: 在开放系统中的信息交换时,实体表示任何可以发送或接收信息的硬件或软件进程。通常情况下,实体是一个特定的软件模块。

    2. **协议**:


        - 定义: 是控制两个或多个对等实体进行通信的规则集合。
        - 分类: 
            - 语法规则: 定义了所交换信息的格式。
            - 语义规则: 定义了发送者或接收者应完成的操作,如在何种条件下重传或丢弃数据。

    3. **服务**:
        - 概念: 两个对等实体间的通信在协议的控制下,从而使本层能向上层提供服务。 
        - 与协议的区别:
            - 使用本层服务的实体只能看见服务, 不能看到下面的协议。
            - 协议是水平的,而服务是垂直的。
            - 并非在一个层内完成的全部功能都称为服务。只有可被上层实体看到的功能才称为“服务”。

    4. **服务访问点 (SAP, Service Access Point)**:


        - 定义: 在同一系统中相邻两层实体交互的地方。它是一个逻辑接口,类似于邮政信箱。
        - OSI 把层与层之间交换的数据单位称为服务数据单元 (SDU, Service Data Unit)。

    5. **服务用户和服务提供者**:
        - 服务提供者是为上层实体提供服务的实体。
        - 服务用户则是使用这些服务的实体。

    6. **协议的特性**:
        - 协议必须考虑所有可能的不利条件,不能假定所有情况都是正常的。正确的协议设计应能应对各种异常情况。

    7. **协议设计的例子**:
        - 描述了两个蓝军与一个白军的作战策略和通信协议的问题。这个例子揭示了一个简单协议可能需要考虑的复杂性。

    通过这一节的学习,我们可以明白实体、协议、服务和服务访问点之间的关系和它们在计算机网络中的重要性。而且,我们也应该意识到,设计一个有效的通信协议并不是一件简单的事情,需要考虑各种可能的情况和问题。

     

    1.7.5 TCP/IP的体系结构 

    **笔记:1.7.5 TCP/IP的体系结构**

    1. **基础概念**:
       - TCP/IP体系结构简要:仅四层。
       - 不遵循严格的OSI分层概念。

    2. **四层协议表示**(图1-22):
       - 主机A -> 主机B:
         - 应用层
         - 运输层
         - 网际层
         - 网络接口层
       - 路由器在转发时,仅用到网络层,不使用运输层和应用层。

    3. **TCP/IP演变**(图1-23):
       - 有应用程序直接使用IP层,或直接使用网络接口层。
       - 网络接口层也被称为子网层,但该书避免使用以免混淆。
       - “子网”指局域网和广域网,但在IP层视角,这些网络属于数据链路层,即网络接口层。

    4. **TCP/IP协议族表示**(图1-24):
       - 沙漏计时器形状。
       - 特点:应用层和网络接口层有多种协议,但中间的IP层很小。
       - 意义:支持多种应用和网络,突出了IP在互联网中的核心作用。

    5. **客户-服务器工作方式**(例1-2):
       - 描述:图1-25,主机A(客户)向主机B(服务器)请求建立连接,主机B接受请求。
       - 实际通信需要下层服务,但客户和服务器之间的交互可以视为水平。

    6. **多主机交互**(图1-26):
       - 主机C的应用层有两个服务器进程同时通信。
       - 服务器1与主机A的客户1通信,服务器2与主机B的客户2通信。
       - 服务器可以同时为多个客户提供服务。

    **总结**:TCP/IP体系结构起初为四层结构,随时间和技术的发展,某些应用程序可能直接与IP层或网络接口层交互。TCP/IP协议族的“沙漏”形状强调了IP协议在互联网中的核心地位。在客户-服务器模型中,客户端和服务器端的应用进程在应用层上交互,但他们的通信依赖于底层的协议和服务。

    总结:

    本章重要概念 

    **本章重要概念总结**:

    1. **计算机网络与互连网**:
       - 计算机网络:将多个计算机连接在一起。
       - 互连网:网络的网络,连接许多计算机网络。
       - **internet**(小写i):泛指多个计算机网络的互连,通信协议可以是任意的。
       - **Internet**(大写I):全球最大的开放网络,采用TCP/IP协议族,起源于美国的ARPANET。

    2. **互联网技术与结构**:
       - 使用存储转发的分组交换技术。
       - 三层ISP结构。

    3. **互联网的工作方式**:
       - 边缘部分:主机位置,进行信息处理。
       - 核心部分:路由器位置,按存储转发方式进行分组交换。

    4. **计算机通信**:
       - 通信是计算机中的进程间的通信。
       - 通信方式:客户-服务器方式和P2P方式。

    5. **客户与服务器**:
       - 客户:服务请求方。
       - 服务器:服务提供方。

    6. **计算机网络的种类**:
       - 广域网WAN
       - 城域网MAN
       - 局域网LAN
       - 个人区域网PAN

    7. **计算机网络性能指标**:
       - 速率、带宽、吞吐量、时延(包括发送时延、传播时延、处理时延、排队时延)、时延带宽积、往返时间和信道或网络利用率。

    8. **网络协议与体系结构**:
       - 协议:为网络数据交换而建立的规则。
       - 网络的体系结构:各层及其协议的集合。
       - 五层协议体系结构:应用层、运输层、网络层、数据链路层、物理层。
       - 重要协议:运输层的TCP和UDP,网络层的IP。

    这些概念为计算机网络与互联网提供了全面的基础和理解。

  • 相关阅读:
    【NowCoder】左程云-设计getMin功能的栈
    SI3262:国产NFC+MCU+防水触摸按键三合一SoC芯片
    网址导航收藏引导页面H5源码(自适应引导页HTML源码)-自动检测域名延迟
    C语言---自定义类型:结构体
    第2章 MyBatis的核心配置
    【算法】LeetCode:栈与队列篇
    Vue+SpringBoot打造教学过程管理系统
    【ES新特性三】Object 原型、原型链相关方法
    1行Python代码,合并100个Excel文件,原来这么方便?
    SwiftUI 动态岛开发教程之什么是Dynamic Island,快速完整demo
  • 原文地址:https://blog.csdn.net/tang7mj/article/details/133514432