【计算机网络】计算机网络体系结构
一.常见的计算机网络体系结构
1. OSI体系结构
OSI体系结构,理想化七层协议
OSI实现复杂运行效率低,最终市场没用采用它
2. TCP/IP体系结构
TCP/IP体系结构,真实采用的四层协议
TCP/IP将数据链路层和物理层简化为了网络接口层
将会话层表示层应用层简化为应用层
网络接口层进行沟通传输,没有限定接口,这样可以使用不同网络接口进行互联
IP协议可以将不同的网络接口进行互联,并向上TCP和UDP提供网络互联服务
TCP在接受IP协议的网络互联后向应用层相应协议提供可靠
传输服务
UDP在接受IP协议的网络互联后向应用层相应协议提供不可靠
传输服务
TCP/IP协议使用IP协议互联不同网络接口,并未各种网络应用提供服务
3. 原理体系结构
原理体系结构,是结合了OSI和TCP/IP结构的优点,在学习计算机网络时使用到的模型
二.计算机网络体系结构分层必要性
1. 分层的必要性
- 计算机网络系统非常复杂
- 分层可将复杂问题简单化
2. 各层面临的问题
- 采用怎样的传输媒体(介质):采用双绞线等
- 采用怎样的物理接口:RJ45以太网接口等
- 用什么信号表示0和1
问题2和3可划归为物理层的问题
- 如何表示网络中各主机(主机编址问题):如MAC地址
- 如何从信号表示的比特流中区分出地址和数据
- 如何协调各主机争用总线:总线被淘汰了,现在使用以太网交换机将多台主机互连形成交换式以太网
4,5,6是数据链路层的问题
- 如何标识个网络以及各网络中的主机(这里问题不同于4,4代表的是如何标识单一网络中的主机,这里需要标识的是各网络及各网络中主机):使用IP地址,举例如下图(前三个十进制数标识网络,后一个十进制数标识自己)
- 路由器如何转发分组,如何进行路由选择
7,8是网络层遇到的问题
- 如何解决进程之间基于网络的通信问题
- 出现传输错误,如何处理?
9,10是运输层的问题
- 通过进程间交互来完成特定的网络应用:使用HTTP、SMTP、FTP等协议
11是应用层需要解决的问题
三.计算机网络体系结构分层思想举例
应用层按照HTTP协议规定构建请求报文(应用层)→运输层给HTTP请求添加TCP首部使之成为TCP报文段:区分应用进程实现可靠或不可靠传输(运输层)→网络层给报文段添加IP首部使之成为IP数据报:在互联网上传输也就是被路由器转发(网络层)→数据链路层给IP数据报添加一个首部和一个尾部使之成为帧:让帧在一个链路或一个网络上进行传输能够被相应主机接受,首尾部是为了让目的主机检查是否有误码(数据链路层)→物理层将帧看做比特流,因网络N1是以太网,物理层会给比特流前面添加前导码:让目的主机做好接受帧的准备(物理层),物理层将添加有前导码的比特流变换成相应的信号发送到传输媒体
信号通过传输媒体到达路由器,物理层将信号变为比特流,去掉前导码(物理层)成为帧→数据链路层将帧的首部尾部去掉成为ip数据报(链路层)→网络层解析ip数据报首部,从中提取目的网络地址,查找自身路由表确定转发端口(网络层)→数据链路层给IP数据报添加一个首部一个尾部使之成为帧(数据链路层)→物理层将帧看做比特流,因网络N2是以太网,物理层会给比特流前面添加前导码(物理层),物理层将添加有前导码的比特流变换成相应的信号发送到传输媒体
在路由器,改变了帧首尾部并没有改变ip首部
信号通过传输媒体到达Web服务器,物理层将信号变为比特流,去掉前导码(物理层)成为帧→数据链路层将帧的首部尾部去掉成为ip数据报(链路层)→网络层将IP数据包的首部去掉成为TCP报文段(网络层)→运输层将TCP报文段首部去掉成为HTTP请求报文(运输层)→应用层对HTTP报文进行解析(应用层)
应用层给主机发送HTTP响应报文和之前过程类似
四.计算机网络体系结构中的专用术语
最具代表性的三个术语:
- 实体
- 协议
- 服务
1. 实体
实体
:任何可发送或接受信息的硬件或软件进程
对等实体
:收发双发相同层次中的实体
2. 协议
协议
:控制两个对等实体进行逻辑通信的规则的集合(逻辑通信指通信不真实存在,是假设的通信,方便单独研究体系结构)
协议的三要素:
语法
:定义所交换信息的格式语义
:定义收发双发所要完成的操作同步
:定义收发双发的时序关系
3. 服务
在协议的控制下,两个对等实体间的逻辑通信使得本层能够向上一层提供服务。
要实现本层协议,还需要使用下面一层所提供的服务。(如下图所示)
协议是“水平的”,服务是“垂直的”
实体看得见相邻下层所提供的服务,但并不知道实现该服务的具体协议。也就是说,下面的协议对上面的实体是"透明"(看不见)的。
服务访问点在同一系统中相邻两层的实体交换信息的逻辑接口,用于区分不同的服务类型。
- 数据链路层的服务访问点为帧的“类型”字段。
- 网络层的服务访问点为IP数据报首部中的“协议字段”。
- 运输层的服务访问点为“端口号”。
服务原语
:上层使用下层所提供的服务必须通过与下层交换一些命令,这些命令称为服务原语。
协议数据单元PDU
:对等层次之间传送的数据包称为该层的协议数据单元。
服务数据单元SDU
:同一系统内,层与层之间交换的数据包称为服务数据单元
多个SDU可以合成为一个PDU;一个SDU也可划分为几个PDU
链接: 湖科大教书匠:计算机网络微课堂
本文是湖科大教书匠的计算机网络笔记,感谢大家的观看,求点赞求收藏求评论
欢迎大家关注我的账号:黑城笑
更多技术分享等待大家