CCNA学习笔记 #2

>CCNA学习指南(第七版) [] Todd Lammle

#####OSI参考模型

OSI规范最大的作用之一是帮助在不同的注意之间传输数据, 模型包括7, 分为上下两组

* 应用层  文件, 打印, 消息, 数据库, 应用程序服务

* 表示层  数据加密, 压缩和转换

* 会话层  对话控制

* **传输层** 端到端连接

* **网络层** 路由选择

* **数据链路层** 成帧

* **物理层** 物理拓扑

接下来探索层的功能

#####应用层

应用层是用户与计算机交流的场所, 实际上应用层让应用程序能够将信息沿协议栈向下传输,从而充当了应用程序和下层之间的接口对接, 换句话说IE并不位于应用层中, 而是在需要处理远程资源时与应用层协议交互

*牢记应用层实际是应用程序之间的**接口**,例如Chrome并不位于应用层中,而是与应用层协议交互(FTP属于应用层中程序)*

#####表示层

本质上说表示层是一个转换器,提供编码和转换功能, 例如将数据转换为标准格式再进行传输

#####传输层

传输层将数据分段, 重组为数据流, 熟悉的TCPUDP就运行在传输层

传输层可以使无连接的或面向连接的, 考试重点是传输层的面向连接部分

下面介绍面向连接的传输层协议

######流量控制协议

流量控制用于避免发送方数据流量过大到时接收方主机缓冲区溢出(这可能导致数据丢失)

实现目标

* 收到数据段后, 向发送方进行确认;

* 重传所有未得到确认的数据段;

* 数据段达到目的地后,按正确的顺序排列它们;

* 确保数据流量不超过处理能力, 以避免拥塞, 过载和数据丢失

######面向连接的通信

如果服务具有如下特征,它就是面向连接的

* 通过三次握手建立虚电路

* 使用排序技术

* 使用确认

* 使用流量控制

三次握手 

请求发送方 >>>> SYN(建立联机) >>>> 接收方<br>

请求发送方 <<<< ACK(确认)/SYN(建立联机) <<<< 接收方<br>

请求发送方 >>>> ACK(确认) >>>> 接收方<br>

<—–数据传输—–>

>TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。 <br>

> 下文摘自:[TCP通信的三次握手和四次撒手的详细流程 (顿悟)](https://www.cnblogs.com/cy568searchx/p/3711670.html) – 星语海蓝博客 写的很棒

* 第一次握手:建立连接时,客户端发送syn(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

* 第二次握手:服务器收到syn包,必须确认客户的SYNack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

* 第三次握手:客户端收到服务器的SYNACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 完成三次握手,客户端与服务器开始传送数据.

实例:

IP 192.168.1.116.3337 > 192.168.1.123.7788: S 3626544836:3626544836

IP 192.168.1.123.7788 > 192.168.1.116.3337: S 1739326486:1739326486 ack 3626544837

IP 192.168.1.116.3337 > 192.168.1.123.7788: ack 1739326487,ack 1

######窗口技术 待编辑

######确认 待编辑