协议:
计算机与网络设备要相互通信,双方就必须基于相同的方法。比如,如何探测到通信目标、由哪一边先发起
通信、使用哪种语言进行通信、怎样结束通信等规则都需要事先确定。不同的硬件、操作系统之间的通信,
所有的这一切都需要一种规则。而我们就把这种规则称为协议(
protocol
)。
TCP/IP:
TCP/IP 是互联网相关的各类协议族的总称。
协议中存在各式各样的内容。从电缆的规格到
IP
地址的选定方法、寻找异地用户的方法、双方建立通信的顺
序,以及
Web
页面显示需要处理的步骤,等等。
像这样把与互联网相关联的协议集合起来总称为
TCP/IP
。也有说法认为,
TCP/IP
是指
TCP
和
IP
这两种协
议。还有一种说法认为,
TCP/ IP
是在
IP
协议的通信过程中,使用到的协议族的统称。
TCP/IP
的分层管理
TCP/IP
协议族按层次分别分为以下
4
层:应用层、传输层、网络层 和数据链路层。
应用层
应用层决定了向用户提供应用服务时通信的活动。
TCP/IP
协议族内预存了各类通用的应用服务。比如,
FTP
(
File Transfer Protocol
,文件传输协议)和 DNS(
Domain Name System
,域名系统)服务就是其中两类。 HTTP 协议也处于该层。
传输层
传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。
在传输层有两个性质不同的协议:
TCP
(
Transmission Control Protocol
,传输控制协议)和
UDP
(
User Data Protocol,用户数据报协议)。
网络层(又名网络互连层)
网络层用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位。该层规定了通过怎样的路径 (所谓的传输路线)到达对方计算机,并把数据包传送给对方。 与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条
传输路线。
链路层(又名数据链路层,网络接口层)
用来处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱动、
NIC
(
Network Interface Card
,网络 适配器,即网卡),及光纤等物理可见部分(还包括连接器等一切传输媒介)。硬件上的范畴均在链路层的 作用范围之内。
TCP/IP
通信传输流
![](https://i-blog.csdnimg.cn/blog_migrate/8b082a9b69b6ef49170ca9f2788f7f33.png)
TCP三次握手:
为了准确无误地将数据送达目标处,
TCP
协议采用了三次握手(
three-way handshaking
)策略。用
TCP
协
议把数据包送出去后,
TCP
不会对传送后的情况置之不理,它一定会向对方确认是否成功送达。握手过程中
使用了
TCP
的标志(
flag
)
—— SYN
(
synchronize
) 和
ACK
(
acknowledgement
)。
发送端首先发送一个带
SYN
标志的数据包给对方。接收端收到后,回传一个带有
SYN/ACK
标志的数据包以
示传达确认信息。最后,发送端再回传一个带
ACK
标志的数据包,代表
“
握手
”
结束。
![](https://i-blog.csdnimg.cn/blog_migrate/a5f7e1a6fc65735f59a671d22ca8ef34.png)