# 计算机网络复习题纲

## OSI分层
* 物理层：通过媒介传输比特，确定机械及电气规范（比特Bit）。
* 数据链路层：将比特组装成帧和点到点传递（帧Frame）。
* 网络层：负责数据包从源到宿的传递和网际互连。
* 传输层：提供端到端的可靠报文传递和错误恢复。
* 会话层：建立、管理和终止回话。
* 表示层：对数据进行翻译、加密和压缩。
* 应用层：允许访问OSI环境的手段。

## TCP/IP 分层
* 网络接口层：
* 网际层：
* 运输层：
* 应用层：

## 五层协议
* 物理层：
* 数据链路层：
* 网络层：
* 运输层：
* 应用层：

### ARP协议
地址协议：每个主机都会在自己的ARP缓冲区中建立一个ARP列表，以表示IP地址和MAC地址之间的对应关系。

### ICMP协议
因特网控制报文协议。他是TCP/IP协议族的一个子协议，用于在IP主机、路由器之间传递控制消息。

### TFTP协议
是TCP/IP协议族中的一个用来在客户机和服务器之间进行简单文件传输的协议，提供不复杂，开销不大的文件传输服务。

### HTTP协议
超文本传输协议，是一个属于应用层的面向对象的协议，由于其简洁、快速的方式，适用于分布式超媒体信息系统。

### DHCP协议
动态主机协议，是一种让系统得以连接到网络上，并获取所需的配置参数的手段。

### NAT协议
网络地址转换属接入广域网（WAN）技术，是一种将私有（保留）地址转化成合法IP地址的转换技术。

### 

### RARP协议
RARP是逆地址解析协议，作用是完成地址到IP地址的映射，主要用于无盘工作站，因为无盘工作站配置的IP地址不能保存。

## TCP三次握手和四次挥手的全过程

### 三次握手
#### 第一次
客户端发送syn包(syn=x)到服务器，并进入SYN_SEND状态，等待服务器确认。

#### 第二次
服务器收到syn包，必须等待客户端的SYN(ack = x + 1)，同时自己也发送一个SYN包(syn=y),即SYN+ACK包，此时服务器进入SYN_RECV状态；

#### 第三次
客户端收到服务器的SYN+ACK包，向服务器发送确认包ACK(ack=y+1)。此包发送完毕，客户端和服务器进入ESTABLISHED状态，完成三次握手。

### 四次握手

#### 第一次挥手
主动关闭方发送一个FIN，用来关闭主动到被动方的数据传送，也就是主动关闭方告诉被动方关闭方：我已经不会再给你数据了（当然，在FIN
包之前发送出去的数据，如果没有收到对应的ACK确认报文，主动关闭方依然会重新发送这些数据），但是，此时主动关闭可以接受数据。

#### 第二次挥手
被关闭方收到FIN包，发送一个ACK给对方，确认序号为收到序号+1（与SYN相同，一个FIN占用一个序号）。

#### 第三次挥手
被关闭方发送完一个FIN包，用来关闭被关闭方到主动方的数据传送，也就是告诉主动关闭方，我的数据也发送完了，不会给你发送数据了。

#### 第四次挥手
主动方收到FIN后，发送一个ACK给被关闭方，确认收到序号+1，至此，完成四次握手。

### 三次握手和四次挥手的图解

![三次握手和四次挥手的图解](http://images0.cnblogs.com/blog2015/621032/201508/092017231747399.jpg)

## TCP和UDP

### TCP和UDP的区别
1. TCP是提供面向连接诶、可靠的数据流传输，而UDP提供的是非面向连接的、不可靠的数据流传输。
2. TCP传输单位是TCP报文，UDP传输单位称为用户数据包。
3. TCP注重数据安全性，UDP数据传输快，因为不需要等待连接，少了许多操作，但是安全性确一般。
### TCP对应的协议和UDP对应的协议

#### TCP对应的协议
1. FTP:定义了文件传输协议，使用了21端口。
2. Telnet:远程登陆协议。
3. SMTP:邮件传输协议，用于发送邮件。
4. POP3:与SMTP对应，POP３用于接受邮件。
5. HTTP:超文本传输协议。

#### UDP对应的协议
1. DNS:用于域名解析。
2. SNMP:简单网络管理协议。
3. TFTP:简单文件传输协议。

## 相关概念
### 交换机
在计算机网络中，交换机是针对共享模式的弱点推出的。交换机工作于OSI参考模型的第二层，即数据链路层。交换机广泛应用于二层网络交换
俗称"二层交换机"。
### 路由器
路由器是一种计算机网络设备，提供了路由与转送两种机制，可以决定数据包从来源端到目的端所经过的路由路径(host到host之间的传输路径)，
这个过程称为路由；将路由输入端的数据包移送至适当的路由输出端(在路由器内部进行)，这称为转送。路由工作在OSI模型的第三层——即网络
层，例如网际协议。<br>
***路由器的一个作用是连接不同的网络，另一个作用是选择信息传递的线路。*** 路由器与交换机的差别，路由器是属于OSI的第三层产品，交
换机是OSI第二层的产品(这里特指第二层交换机)。

### 网关
网关就是连接两个网络设备，区别于路由器(由于历史的原因，许多有关TCP/IP的文献曾经把网络层使用的路由器叫做网关，在今天很多局域网
采用的都是路由器来接入网络，因此现在通常指的网关就是路由器的IP)，经常在家庭中或者中小型企业网络中使用，使用于连接局域网和
Internet。网关也常指把一种协议转成另一种协议设备，比如语音网关。<br>
在传统TCP/IP术语中，网络设备只分成两种，一种是网关，另一种是主机。网关能在网络间转递数据包，但是主机不能转送数据包。在主机(又
称终端系统)中，数据包需经过TCP/IP四层协议处理，但是网关只需要到达网际层，决定路径之后就可以转送。<br>
在现代网络术语中，网关与路由的定义不同。网关能在不同协议间移动数据，而路由器是在不同的网络间移动数据。
