概述 (三)
1.6 计算机网络体系结构
1、常见的计算机网络体系结构
如今用的最多的是TCP/IP体系结构,现今规模最大的、覆盖全球的、基于TCP/IP的互联网并未使用 OSI 标准。
TCP/IP体系结构相当于将 OSI 体系结构的物理层和数据链路层合并为了网络接口层,并去掉了会话层和表示层。
TCP/IP在网络层使用的协议是IP协议,IP协议的意思是网际协议,因此TCP/IP体系结构的网络层称为网际层
在用户主机的操作系统中,通常都带有符合 TCP/IP 体系结构标准的 TCP/IP 协议族。
而用于网络互连的路由器中,也带有符合 TCP/IP 体系结构标准的TCP/IP协议族。
只不过路由器一般只包含网络接口层和网际层。
网络接口层:并没有规定具体内容,这样做的目的是可以互连全世界各种不同的网络接口,例如:有线的以太网接口,无线局域网的 WIFI 接口等,而不限定仅使用一种或几种网络接口。
网际层:它的核心协议是IP协议。
运输层:TCP 和 UDP 是这层的两个重要协议。
应用层:这层包含了大量的应用层协议,如 HTTP 、SMTP、DNS、RTP 等。
IP协议(网际层)可以将不同的网络接口(网络接口层)进行互连,并向其上的 TCP协议和 UDP协议(运输层)提供网络互连服务。
而TCP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供可靠的传输服务。
UDP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供不可靠的传输服务。
TCP/IP体系结构中最重要的是IP协议和TCP协议,因此用 TCP 和 IP 这两个协议来表示整个协议大家族,常称为 TCP/IP 协议族。
教学时把 TCP/IP 体系结构的网络接口层分成了物理层和数据链路层
2、计算机网络体系结构分层的必要性
物理层问题
这图说明
- 严格来说,传输媒体并不属于物理层,并不包含在体系结构中
- 计算机网络中传输的信号,并不是图示的方波信号
这样举例只是让初学者容易理解
数据链路层问题
网络层问题
- 下图是由3个路由器,4个网络互连起来的小型互联网
运输层问题
如何标识与网络通信相关的应用进程:一个分组到来,我们应该交给哪个进程进行处理呢? 浏览器进程还是QQ进程呢 ?
应用层问题
应用层该用什么方法(应用层协议)去解析数据
总结
3、计算机网络体系结构分层思想举例
例子:主机的浏览器如何与Web服务器进行通信
解析:
主机和Web服务器之间基于网络的通信,实际上是主机中的浏览器应用进程与Web服务器中的Web服务器应用进程之间基于网络的通信
体系结构的各层在整个过程中起到怎样的作用呢 ?
1、发送方发送
第一步:
- 应用层按照 HTTP 协议的规定构建一个HTTP 请求报文
- 应用层将HTTP 请求报文交付给运输层处理
第二步:
- 运输层给HTTP 请求报文添加一个TCP首部,使之成为TCP报文段
- TCP 报文段首部格式的作用是为了区分应用进程以及实现可靠传输
- 运输层将 TCP 报文段交付给网络层处理
第三步:
- 网络层给TCP 报文段添加一个IP 首部,使之成为IP 数据报
- IP 数据报首部格式的作用主要是使IP 数据报可以在互联网传输,也就是被路由器转发
- 网络层将IP 数据报交付给数据链路层处理
第四步:
- 数据链路层给IP数据报添加一个首部和一个尾部,使之成为帧(图示右边为首部,左边为尾部)
- 该首部的作用主要是为了让帧能够在一段链路上或一个网络上进行传输,能够被相应的目的主机接收
- 该尾部的作用是让目的主机检查所接收到的帧是否有误码
- 数据链路层将帧交付给物理层
第五步:
- 物理层先将帧看做是比特流,这里的网络N1假设是以太网,因此物理层还会给该比特流前面添加前导码
- 前导码的作用是为了让目的主机做好接收帧的准备
- 物理层将装有前导码的比特流变换成相应的信号发送给传输媒体
第六步:
- 信号通过传输媒体到达路由器
2、路由器转发
在路由器中
- 物理层将信号变换为比特流,然后去掉前导码后,将其交付给**数据链路层,**这实际上交付的是帧
- 数据链路层将帧的首部和尾部去掉后,将其交付给网络层,这实际上交付的是IP数据报
- 网络层解析IP 数据报的首部,从中提取目的网络地址
在路由器中
- 提取目的网络地址后,然后查找自身的路由表,确定转发端口, 以便进行转发
- 网络层将IP 数据报交付给数据链路层
- 数据链路层给IP数据报添加一个首部和一个尾部,使之成为帧
- 数据链路层将帧交付给物理层
- 物理层先将帧看作是比特流,这里的网络N2假设是以太网,因此物理层还会给该比特流前面添加前导码
- 物理层将装有前导码的比特流变换成相应的信号发送给传输媒体,信号通过传输媒体到达Web服务器
3、接收方接收
和发送方(主机)发送过程的封装正好是反着来
在Web 服务器上
- 物理层将信号变换为比特流,然后去掉前导码后成为帧,将其交付给数据链路层
- 数据链路层将帧的首部和尾部去掉后成为IP数据报,将其交付给网络层
- 网络层将IP 数据报的首部去掉后成为TCP报文段,将其交付给运输层
- 运输层将TCP 报文段的首部去掉后成为HTTP 请求报文,将其交付给应用层
- 应用层对HTTP 请求报文进行解析,然后给主机发回HTTP 响应报文
发回 HTTP 响应报文 的步骤和之前的过程类似
4、计算机网络体系结构中的专用术语
以下介绍的专用术语来源于OSI的七层协议体系结构,但也适用于 TCP/IP的四层体系结构和五层协议体系结构
实体
协议
协议:控制两个对等实体进行逻辑通信的规则的集合
协议的三要素:语法、语义、同步
语法:定义通信双方所交换信息的格式
语义:定义通信双方所要完成的操作
同步:定义通信双方的时序关系
服务
这里的
透明
指的是“不可见”