一、 网络协议的定义
网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。它的三要素是:语法、语义、时序。为了使数据在网络上从源到达目的,网络通信的参与方必须遵循相同的规则,这套规则称为协议(protocol),它最终体现为在网络上传输的数据包的格式。协议往往分成几个层次进行定义,分层定义是为了使某一层协议的改变不影响其他层次的协议。
二、协议的基本原理
2.1 OSI模型(OSI,开发系统互联,Open Systems Interconnection)
OSI定义了网络互连的七层框架(物理层、数据链路层、网络层、传输层、会话层、表示层、应用层):
其通信特点是对等通信,为了使数据分组从源传送到目的地,源端OSI模型的每一层都必须与目的端的对等层进行通信,这种通信方式称为对等层通信。在每一层通信过程中,使用本层自己协议进行通信。
2.2 TCP/IP模型
OSI参考模型并不是一个标准,而是一个在制定标准时所使用概念性框架。TCP/IP模型则是当前网络协议的一个具体实现,它已经成为当今计算机网络最成熟、应用最广的互联协议。TCP/IP模型实际上是OSI模型的浓缩版本,它只有四层
2.3 数据包说明
IP层传输的单位是IP分组,属于点到点的传输;TCP层传输单位是TCP段,属于端到端的传输。
数据发送时,由上层向下层封装(数据解析的时候,下层向上层解封装):
4层:协议层传输的是数据报文,主要是协议格式
3层:传输层传输的是数据段,将数据报文添加TCP/UDP头部,封装成数据段
2层:网络层传输的是数据包,增加传输使用的IP地址封装成数据包
1层:数据链路层传输的是数据帧,包含数据包,并且增加相应的MAC地址封装成数据帧,然后变成二进制进行编码后向外传输
三、TCP/IP协议
3.1 TCP协议
TCP(Transmission Control Protocol ,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,它完成传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议。