75-网络二(网络分层模型)
网络二
网络一见:网络一
二.网络分层模型
1.网络协议
(1)什么是网络协议
网络协议就是一组网络规则的集合,是我们共同遵守的约定或标准。
(2)常见的协议
2.OSI的7层模型与tcp/ip协议族体系4层结构
(1)数据链路层
数据链路层的主要功能是:通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路
数据链路层又被分介质访问控制(MAC)和逻辑链路控制(LLC)两个子层
层级 | 主要任务 |
---|---|
介质访问控制(MAC) | 是解决共享型网络中多用户对信道竞争的问题,完成网络介质的访问控制; |
逻辑链路控制(LLC) | 是建立和维护网络连接,执行差错校验、流量控制和链路控制。 |
(2)网络层
- 网络层实现数据包的选路和转发
- 网络层最核心的协议是 IP 协议(Internet Protocol,因特网协议)
- 网络层另外一个重要的协议是 ICMP 协议(因特网控制报文协议)。它是 IP 协议的重要补充,主要用于检测网络连接。
- IP 协议为上层协议提供无状态、无连接、不可靠的服务
(3)传输层
- 传输层为两台主机上的应用程序提供端到端的通信。与网络层使用的逐跳通信的方式不同,传输层只关心通信的起始端和目的端,而不在乎数据包的中转过程
- 传输层协议主要有三个: TCP 协议、 UDP 协议和 SCTP 协议.
协议 | 解释 |
---|---|
TCP协议 | 为应用层提供可靠的、面向连接的和基于流的服务; 协议使用超时重传、确认应答等方式来确保数据包被正确的发送至目的端,所以服务是可靠的 |
UDP协议 | 它为应用层提供不可靠、无连接、基于数据报地服务 |
SCTP协议 | 一种相对较新的传输层协议,它是为了在因特网上传输电话信号而设计的。 |
(4)应用层
应用层负责处理应用程序的逻辑。
3.为什么要分层?
- 各层之间是独立的;
- 灵活性好;
- 结构上可分割开;
- 易于实现和维护;
- 能促进标准化工作;
三.网络应用程序的通信流程
应用程序 A 要将数据”hello” 传给网络上另外一台主机上的应用程序 B
- 数据“hello”从应用层发送给传输层
- 传输层在数据前面加上 tcp 协议或 udp 协议的报头,将整条报文发给网络层
- 网络层添加自己的 IP 报头,再将整条数据发送给数据链路层
- 数据链路层将数据封装成能在网络中独立传输的数据单元,即数据帧。封装好的数据帧通过网络传输到另一台主机
- 得到数据帧主机再从下层依次拆包,将数据部分送往应用层。应用程序 B 就得到了数据” hello” 。
如下图: