计算机网络
一、网络分层:
ISO/OSI模型将网络分为七层:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。
1、各层详解:
(1)、物理层:为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。
① 媒体:无线信道、光纤、平衡电缆、空明线等。
② 互连设备:终端互连设备,如插头、插座、LAN中的发送器、接收器、中继器等。
③ 主要功能:
a: 为数据端设备提供传输数据的通路;
b: 传输数据:形成数据传输实体,为数据传送服务。保证数据正确通过;提供足够的带宽。
(2)、数据链路层:数据通道。在物理媒介上传输的数据有时会受到一些不可靠因素的影响而产生差错,为了弥补物理层上的不足,为上层提供无差错的数据传输,就要对数据进行检错和纠错。数据链路的建立、拆除、对数据的检错、纠错是数据链路层的基本任务。
① 产品:网卡、网桥
② 主要功能:
a: 链路连接的建立、拆分、分离
b: 帧定界和帧同步(传输单元:帧)
c: 顺序控制,指对帧的收发顺序的控制
d: 差错检测和恢复。
(3)、网络层:为建立网络和上层提供服务。(端到端的包传输)
① 主要功能:
a: 路由选择和中继;
b: 激活、终止网络连接;
c: 在一条数据链路上复用多条网络连接,多采取分时复用技术;
d: 差错检测与恢复;
e: 排序、流量控制;
f: 服务选择;
g: 网络管理。
② 协议:IP、IPX
(4)、传输层:两台计算机经过网络进行数据通信时,第一个端到端的层次,具有缓冲作用。
① 功能:
a: 差错恢复
b: 流量控制
c: 为会话提供可靠的、无误的数据传输
② 服务过程:
a: 传输连接建立阶段;
b: 数据传送阶段;
c: 传输连接释放阶段。
③ 协议:TCP、UDP、SPX。
(5)、会话层:使应用建立和维持会话,并能使会话获得同步。
① 定义了如何开始、控制和结束一个会话,使表示层看到的数据是连续的。
(6)、表示层:为异种机通信提供一种公共语言,以便能进行互操作。
① 主要功能:定义数据格式及加密。
(7)、应用层:向应用程序提供服务。
① 主要功能:与其它计算机进行通讯的一个应用,它是对应应用程序的通信服务的。
② 协议:HTTP、telnet、FTP、NFS、SMTP等
2、分层的好处
(1)、减少复杂性
(2)、较低层为较高层提供服务
(3)、把复杂的网络划分成为更容易管理的层。
二、TCP/IP分层模型
四层层级结构:(TCP/IP → OSI)
① 网络接口层 → 物理层、数据链路层;
② 网络层 → 网络层;
③ 传输层 → 传输层;
④ 应用层 → 会话层、表示层、应用层;
1、各层功能
① 网络接口层:负责接收IP数据包并通过网络发送,或者从网络上接收物理帧,抽出IP数据报,交给IP层。包括用于协作IP数据在已有网络介质上传输的协议。
- ARP:正向地址解析协议,通过已知IP,寻找对应主机的MAC地址。
- RARP:方向地址解析协议,通过MAC地址确定IP地址。
② 网络层:负责相邻计算机之间的通信。
- 处理来自传输层的分组发送请求,收到请求后,将分组装入IP数据报,填充报头,选择去往信宿机的路径,然后将数据报发往适当的网络接口。
- 处理输入数据报:首先检查其合法性,然后进行寻径——假设该数据报已到达信宿机,则去掉报头,将剩下部分交给适当的传输协议;假如该数据报未到信宿,则转发该数据报。
- 处理路径、流控、拥塞等问题。
- 包括:IP协议、ICMP控制报文协议、ARP地址转换协议、RARP反向地址转换协议。
- IP是网络层的核心,通过路由选择将下一条IP封装后交给接口层。
- IP数据报是无连接服务。
- ICMP是网络层的补充,可以会送报文,用来检测网络是否通畅。
③ 传输层:提供应用程序间的通信。
- 格式化信息流
- 提供可靠传输
- 为实现可靠传输,传输层协议规定接收端必须发回确认,并且假如分组丢失,必须重新发送,即“三次握手”
- 协议:传输控制协议TCP、用户数据报协议UDP
④ 应用层:向用户提供一组常用的应用程序,例如电子邮件、文件传输访问等。
- 协议:FTP TELNET DNS SMTP NFS HTTP
- FTP:文件传输协议,一般上传下载用FTP服务,数据端口20H,控制端口21H
- TELNET:远程登录服务,使用23H,使用明码传送,保密性差,简单方便
- DNS:域名解析服务,提供域名到IP地址之间的转换,使用端口53
- SMTP:简单邮件传输协议,用来控制信件的发送、中转、使用端口25
- NFS:网络文件系统,用于网络中不同主机间的文件共享
- HTTP:超文本传输协议,用于实现互联网中的WWW服务,使用端口80
2、面向连接和无连接协议的区别
① 对无连接协议来说,每个分组的处理都独立于所有其他分组;而面向连接的协议,协议实现则维护了与后继分组有关的状态信息。
② 无连接中的分组被称为数据报,每个分组都是独立寻址,并由应用程序发送,每个数据报都是一个独立的实体。
③ 面向连接的协议则维护了分组之间的状态,使用这种协议的应用程序通常都会进行长期的对话。记住这些状态,协议就可以提供可靠的传输。