一、几种计算机网络模型对比
OSI | 五层模型 | TCP/IP模型 | 协议 | 常见设备 |
应用层 | 应用层 | 应用层 | FTP、DNS、Telnet、SNMP、SMTP、HTTP、WWW、NFS | - |
表示层 | JPEG、MPEG、ASCII | |||
会话层 | NFS、SQL、NetBIOS、RPC | |||
运输层 | 运输层 | 运输层 | TCP、UDP、SPX | 进程、端口(socket) |
网络层 | 网络层 | 网络层 |
IP、ICMP、ARP、PARP、OSPF、IPX、RIP、IGRP等 | 路由器 |
数据链路层 | 数据链路层 | 网络接口层 |
PPP、FR、HDLC、VLAN、MAC等 | 交换机、网卡、网桥 |
物理层 | 物理层 |
RJ45、CLOCK、IEEE802.3等 | 网线、集线器 |
二、主机间如何进行通信
三、各层概述
1. 应用层(application layer)
直接为用户的应用进程(例如电子邮件、文件传输和终端仿真)提供服务。如HTTP、SMTP、FTP、DNS等
2. 运输层
由于一个主机可同时运行多个进程,因此运输层有复用(多个应用层进程可同时使用下面运输层的服务)和分用(把收到的信息分别交付给上面应用层中相应的进程)的功能。
常见协议:TCP和UDP。前者面向连接、传输可靠;后者是无连接的,传送的是数据报,不保证可靠
3. 网络层
网络层(network layer)主要包括以下两个任务:
(1) 负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送。在TCP/IP体系中,由于网络层使用IP协议,因此分组也叫做IP数据报,或简称为数据报。
(2) 选中合适的路由,使源主机运输层所传下来的分组,能够通过网络中的路由器找到目的主机。
协议:IP,ICMP,IGMP,ARP,RARP
4. 数据链路层
常简称为链路层,我们知道,两个主机之间的数据传输,总是在一段一段的链路上传送的,也就是说,在两个相邻结点之间传送数据是直接传送的(点对点),这时就需要使用专门的链路层的协议。
在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧(framing),在两个相邻结点之间的链路上“透明”地传送帧中的数据。
每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制等)。典型的帧长是几百字节到一千多`字节。
注:”透明”是一个很重要的术语。它表示,某一个实际存在的事物看起来却好像不存在一样。”在数据链路层透明传送数据”表示无力什么样的比特组合的数据都能够通过这个数据链路层。因此,对所传送的数据来说,这些数据就“看不见”数据链路层。或者说,数据链路层对这些数据来说是透明的。
(1)在接收数据时,控制信息使接收端能知道一个帧从哪个比特开始和到哪个比特结束。这样,数据链路层在收到一个帧后,就可从中提取出数据部分,上交给网络层。
(2)控制信息还使接收端能检测到所收到的帧中有无差错。如发现有差错,数据链路层就简单地丢弃这个出了差错的帧,以免继续传送下去白白浪费网络资源。如需改正错误,就由运输层的TCP协议来完成。
5. 物理层
物理层上所传数据的单位是比特。物理层的任务就是透明地传送比特流。