参考:📕深入浅出计算机网络
常见的三种计算机网络体系结构
TCP/IP体系结构
路由器一般只包含网络接口层和网际层。
应用层 | TCP/IP体系结构的应用层包含了大量的应用层协议,例如HTTP、SMTP、DNS、RTP等 |
运输层 | TCP和UDP是TCP/IP体系结构运输层的两个重要协议。 |
网际层 | IP协议是TCP/IP体系结构网际层的核心协议。 |
网络接口层 | TCP/IP体系结构的网络接口层并没有规定什么具体的内容,这样做的目的是可以互连全世界各种不同的网络接口。 eg:有线的以太网接口,无线局域网的WIFI接口,而不限定仅使用一种或几种网络接口。 |
- IP协议可以将不同的网络接口进行互连,并向其上的TCP协议和UDP协议提供网络互连服务。
- TCP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供可靠传输的服务 ;
- UDP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供不可靠传输的服务。
各层考虑的主要问题(5层模型)
应用层 |
|
运输层 |
|
网络层 |
|
数据链路层 |
|
物理层 |
|
分层体系结构的例子
应用层:HTTP:HTTP请求报文,请求web服务器执行相应操作
运输层:TCP报文段:区分应用进程,实现可靠传输
网络层:IP数据包:IP寻址和路由
链路层:以太网帧,MAC寻址和帧校验
物理层:将比特流转换成电信号
主机和Web服务器之间基于网络的通信,实际上是主机中的浏览器应用进程与Web服务器中的Web服务器应用进程之间基于网络的通信。
应用层按HTTP协议的规定,构建一个HTTP请求报文, 用来请求WEB服务器执行相应操作,应用层将HTTP请求报文交付给运输层处理。
运输层给HTTP请求报文添加一个TCP首部,使之成为TCP报文段,该首部的作用主要是为了区分应用进程以及实现可靠传输。
运输层将TCP报文交付给网络层处理,网络层给TCP报文段添加一个IP首部,使之成为IP数据报,IP首部的主要作用是 IP寻址和路由,该首部的作用主要是为了使IP数据报可以在互连网上传输,也就是被路由器转发。
网络层将IP数据报交付给数据链路层处理,数据链路层给IP数据报添加一个首部和一个尾部使之成为帧。帧首部的作用主要是为了让帧能够在一段链路上或一个网络上传输,能够被相应的目的主机接收,以太网帧尾部其作用是为了让目的主机检查所接收到的帧是否有误码。(MAC寻址和帧校验)
数据链路层将帧交付给物理层,物理层将帧看作是比特流。
一些专用术语
实体、协议
实体:
实体是指任何可发送或接收信息的硬件或软件进程。
对等实体是指通信双方相同层次中的实体。
协议:
协议是控制两个对等实体在“水平方向” 进行“逻辑通信”的规则的集合。
协议的三要素:
语法:定义所交换信息的格式
语义:定义通信双方所要完成的操作
同步:定义通信双方的时序关系
服务
在协议的控制下,两个对等实体在水平方向的逻辑通信使得本层能够向上一层提供服务。
要实现本层协议,还需要使用下面一层所提供的服务。
协议是“水平”的,而服务是“垂直”的。
实体看得见下层提供的服务,但并不知道实现该服务的具体协议。下层的协议对上层的实体是“透明”的。
服务访问点:
在同一系统中相邻两层的实体交换信息的逻辑接口称为服务访问点SAP,它被用于区分不同的服务类型。
帧的“类型”字段、IP数据报的“协议”字段,TCP报文段或UDP用户数据报的“端口号”字段都是SAP。
上层要使用下层所提供的服务,必须通过与下层交换一些命令,这些命令称为服务原语。
对等层次之间传送的数据包称为该层的协议数据单元(Protocol Data Unit,PDU)
同一系统内层与层之间交换的数据包称为服务数据单元(Service Data Unit,SDU)。
多个SDU可以合成为一个PDU,一个SDU也可划分为几个PDU。
对等层次之间传送的数据包称为该层的协议数据单元。
物理层对等实体逻辑通信的数据包称为比特流,数据链路层对等实体逻辑通信的数据包称为帧,
网络层对等实体逻辑通信的数据包称为分组,如果使用IP协议也被称为IP数据报。
运输层对等实体逻辑通信的数据包一般根据协议而定,TCP报文段或UDP报文段。
应用层对等实体逻辑通信的数据包一般称为应用报文。