计算机网络03

时间:2022-05-30 10:48:39

第一章学习笔记03

计算机网络体系结构

在计算机网络的基本概念中,分层次的体系结构是最基本的。其实分层设计带了很多的好处,例如软件中的分层结构MVC,设计模式中的依赖倒置原则,迪米特法则,接口隔离原则。分层可将庞大的而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。

协议与划分层次 (约定大于配置!)

网络协议(协议) 为进行网络中的数据交换而建立的规则,标准或约定。主要由以下三个要素组成:

语法,即数据与控制信息的结构或格式

语义,即需要发出何种控制信息,完成何种动作以做出何种响应

同步,即事件实现顺序的详细说明

对于复杂的计算机网络协议,其结构应该是层次式。不同的层次有不同的协议处理不同的功能

计算机网络03

 

分层带来的优势:

各层相互独立 上层并不关心下层是如何实现的,只需知道该层通过层间的接口所提供的服务

灵活性好 当任何一层发生变化(例如由于技术的变化),只要层间接口关系保持不变,则在这层以上或以下的各层均不受影响。

结构上可分隔开 各层都可以用最合适的技术实现

易于实现和维护 整个系统被分解为若干个相对独立的子系统

能促进标准化工作 因为每一层的功能以及其提供的服务都已有了精确的说明

通常各层需要实现的主要的功能有以下:

差错控制 使相应层次对等方的通信更加可靠

流量控制 发送端的发送速率必须使接收端来得及接收

分段和重装 发送端需要将发送的数据划分为更小的单位,在接收端需要重装还原

复用和分用 发送端几个高层会话复用一条低层的连接,在接收端再进行分用

连接建立和释放 交换数据前先建立一条逻辑连接,数据传送结束后释放连接

 

计算机网络的体系结构 计算机网络的各层及其协议的集合

OSI体系结构TCP/IP体系结构(实际使用)

计算机网络03

        五层协议只是方便理解

        应用层(application layer)

        应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程间通信和交互的规则。这里的进程就是主机中正在运行的程序。对于不同的应用需要不同的应用层协议如DNS,HTTP,SMTP.应用层交互的数据单元称之为报文。

运输层(transport layer)

  负责向两台主机中进程之间的通信提供通用的数据传输服务。应用进程利用该层服务传输应用层报文。所谓通用的,指多个应用程序可以复用同一个运输层服务。主要有两种协议:

传输控制协议TCP (Transmission Control Protocol) 提供面向连接的,可靠的数据传输服务,其传输的单位是报文端

用户数据报协议UDP (User Datagram Protocol) 提供无连接,尽最大努力的数据传输服务(不保证数据的可靠性),其传输单位是用户数据报 

网络层(network layer)

  负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送。在TCP/IP体系中,称为IP数据报,或简称数据报。

另一个任务是选择合适的路由,使源主机运输层所传下来的分组,能够通过网络中的路由器找到目的主机。

数据链路层(data link layer)

  数据链路层常常简称为链路层。数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻结点之间传输帧(frame)。每一帧包括数据和必要的控制信息。

在接收数据时候,控制信息使接收端能够知道一个帧从哪个比特开始和到哪个比特结束。这样,数据链路层在收到一个帧后,就可以从中提取数据部分,上交给网络层。

控制信息还使接收端能够检测到所收到的帧中有无差错。如果有差错则丢弃这个差错的帧,如果需要改正数据在数据链路层传输时出现的差错,则需要采用可靠的协议来纠正

物理层(physical layer)

  在物理层上传输的单位是Bit,如发送1(或0)时候,接收方也必须是1或者0.需要注意传递信息的一些物理媒体,如双绞线,同轴电缆等,并不在物理层而是在物理层之下

计算机网络03

  实体,协议,服务和服务访问点

  实体(entity) 任何发送或接收信息的硬件或软件进程

  协议 控制两个对等实体(或多个实体)进行通信的规则的集合

  在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务

  协议是水平的,服务是垂直的

  服务访问点(Service Access Point) 在同一系统相邻两层的实体进行交互的地方

  协议数据单元PDU(Protocol Data Unit) 对等层次之间传送的数据单位称为该层的协议数据单元

  服务数据单元SDU(Service Data Unit)层与层之间,他可以与PDU不一样,可以是多个SDU组成一个PDU,也可以是一个SDU划分为几个PDU

  计算机网络03

  TCP/IP 的体系结构

  表示方法

  计算机网络03

  计算机网络03

  计算机网络03

  计算机网络03