网络协议详解
网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。
一、组成
网络协议由三个要素组成:
- 语义,解释控制信息每个部分的意义,它规定了需要发出何种控制信息,以及完成的动作与做出什么样的响应
- 语法,用户数据和控制信息的结构与格式,以及数据出现的顺序
- 时序,对事件发生顺序的详细说明
简单归纳:语义表示要做什么,语法表示要怎么做,时序表示做的顺序
二、网络分层
为了使不同类型的计算机能够相互通信,以便在更大的范围内建立计算机网络,将计算机网络体系结构的通信协议分层,目前存在两种网络分层模型:OSI模型和TCP/IP模型。
OSI(Open Systems Interconncection)是网络通信的一种通用框架,它分为七层:
应用层 文件传输,电子邮件,文件服务,虚拟终端 TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet
表示层 数据格式化,代码转换,数据加密 没有协议
会话层 解除或建立与别的接点的联系 没有协议
传输层 提供端对端的接口 TCP,UDP
网络层 为数据包选择路由 IP,ICMP,RIP,OSPF,BGP,IGMP
数据链路层 传输有地址的帧以及错误检测功能 SLIP,CSLIP,PPP,ARP,RARP,MTU
物理层 以二进制数据形式在物理媒体上传输数据 ISO2110,IEEE802,IEEE802.2
TCP/IP(Transmission Control Protocol/Internet Protocol)是一种规范网络通信设备传送方式的传输控制协议,TCP/IP是INTERNET的基础协议,也是一种电脑数据打包和寻址的标准方法。在数据传送中,可以形象地理解为有两个信封,TCP和IP就像是信封,要传递的信息被划分成若干段,每一段塞入一个TCP信封,并在该信封面上记录有分段号的信息,再将TCP信封塞入IP大信封,发送上网。在接受端,一个TCP软件包收集信封,抽出数据,按发送前的顺序还原,并加以校验,若发现差错,TCP将会要求重发。因此,TCP/IP在INTERNET中几乎可以无差错地传送数据。 它分为四层:
1) 链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。
2) 网络层,有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在TCP/IP协议族中,网络层协议包括IP协议(网际协议),ICMP协议(internet互联网控制报文协议),以及IGMP协议(internet组治理协议)。
3 ) 传输层,主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中,有两个互不相同的传输协议: TCP(传输控制协议)和UDP(用户数据报文协议)。
TCP为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。
而另一方面, UDP则为应用层提供一种非常简单的服务。它只是把称作数据包的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。
这两种传输层协议分别在不同的应用程序中有不同的用途,这一点将在后面看到。
4 ) 应用层,负责处理特定的应用程序细节。几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序:
4.1 Telnet 远程登录。
4.2 FTP 文件传输协议。
4.3 SMTP 简单邮件传送协议。
4.4 SNMP 简单网络治理协议。