1.OSI七层模型
OSI 将计算机网络体系结构划分为七层,每一层实现各自的功能和协议,并完成与相邻层的接口通信。
①应用层:通过应用程序间的交互来完成特定的网络应用
②表示层:解释交换数据的含义。该层提供的服务主要包括数据压缩、数据加密以及数据描述。
③会话层:负责简历、管理和终止表示层实体之间的通信会话。该层提供了数据交换的定界和同步功能,包括了建立检查点和恢复方案的方法。
④传输层:负责因特网中两台主机的进程提供通信服务。
⑤网络层:选择合适的网间路由和1交换节点,确保数据按时成功传送。
⑥数据链路层:将网络层交下来的IP数据报组装成帧,在两个相邻节点间的链路上传送帧。
⑦物理层:实现计算机节点之间比特流的透明传送,尽可能屏蔽掉具体传输介质和物理设备的差异。该层的主要任务是确定与传输媒体的接口的一些特性(机械特性、电气特性、功能特性、过程特性)。
2.TCP/IP五层模型
①引用层:为特定应用程序提供数据传输服务。
②传输层:为进程提供通用数据传输服务。
③网络层:为主机提供数据传输服务。而传输层协议是为主机中的进程提供数据传输服务。
④数据链路层:网络层针对的还是主机之间的数据传输服务,而主机之间可以有很多链路,链路层协议就是为同一链路的主机提供数据传输服务。
⑤物理层:负责比特流在传输介质上的传播。
3.两个模型对比
OSI七层 | TCP/IP五层 | 对应的网络协议 | 传输类型 |
---|---|---|---|
应用层 | 应用层 | HTTP、TFTP、FTP、NFS、WAIS、SMTP、Telnet、DNS、SNMP | 报文、数据 |
表示层 | 应用层 | TIFF、GIF、JPEG、PICT | 报文、数据 |
会话层 | 应用层 | RPC、SQL、NFS、NetBIOS、names、AppleTalk | 报文、数据 |
传输层 | 传输层 | TCP、UDP、QUIC | 报文段、数据段 |
网络层 | 网络层 | IP、ICMP、ARP、RARP、RIP、IPX | 数据报、数据包 |
数据链路层 | 数据链路层 | FDDI、Frame Relay、HDLC、SLIP、PPP | 帧、数据帧 |
物理层 | 物理层 | EIA/TIA-232、EIA-TIA-499、V.35、802.3 | 比特流 |
4.数据如何在各层直接传输
假设一个主机A上的一个应用向另一个主机B的一个应用发送数据
- 在A端,一个应用层报文被传送到传输层,传输层收取到报文并附上附加信息(TCP头部+数据),该首部将被B端的传输层使用。
- A端应用层报文和传输层首部信息一起构成了传输层报文段。附加的信息包括允许B端传输层向上对适当的应用程序交付报文的信息以及差错检测位信息。该信息让B端能够判断报文中的比特是否在途中被修改。
- A端传输层向网络层传递该报文段,网络层增加了如源和B端系统地址等网络层首部信息(IP头部+TCP头部+数据),生成了网络层数据包。
- A端该数据包接着传递给数据链路层,在数据链路层数据包添加A端MAC地址和B端MAC地址后被封装为数据帧(MAC头部+IP头部+TCP头部+数据)。
5.A端物理层将数据帧封装成比特流(前导码+MAC头部+IP头部+TCP头部+数据+校验码),之后通过传输介质传送到B端,而在B端,整个过程由下至上(刚好相反)。