分层学习网络通信协议


作为现代网络,我们的将之分为7个层次分别来进行学习。那么,针对每个不同的层次有着不同的协议内容。现在我们就来学习一下有关的网络通信协议吧。首先让我们从基础来了解一下什么是网络通信协议。

◆引言

通信涉及的所有部分都必须认同一套用于信息交换的规则。人们把这种认同的规则称为协议(protocol)。这些规定消息的格式以及每条消息所需的适当动作的一套协议称为网络协议(networkprotocol)或计算机通信协议(communicationprotocol)。实现这些规则的软件称为协议软件(protocolsoft)。规定计算机信息交换中消息的格式和含义的协定称为通信协议。本文就计算机网络协议的体系结构及其应用分析计算机网络通信协议,同时利用C语言实现TCP和UDP的传输过程。最后再对未来网络协议的发展做个展望。

◆计算机网络通信的简述

网络协议设计一般假设协议参与者是完全服从的。网络参与各方协调一致,按照协议的规定完成特定的任务。通信涉及的所有部分都必须认同一套用于信息交换的规则。人们把这种认同称为协议(protocol)。这一术语也可用于计算机通信(规定消息的格式以及每条消息所需的适当动作的一套协议称为网络协议(networkprotocol)或计算机通信协议(communicationprotocol))。实现这些规则的软件称为协议软件(protocolsoft)。规定计算机信息交换中消息的格式和含义的协定称为通信协议。

◆网络通信协议及其所起的作用

在计算机网络技术中,一般把通信规程称作协议。所谓协议,就是人们在设计计算机网络系统时,预先作出的一系列约定,作为约定后,数据通信必须完全遵照约定来进行。由于计算机网络使用的通信协议比较复杂,协议由语法、语义和交换规则三个部分组成,语义是通信双方要表达的内容,即协议所包含的元素,语法是规定这些内容的表示形式,即协议中元素的格式交换规则是指这些元素之间的应答关系,也就是数据通信过程中要发生的状态的变化规则。数据从计算机网络中的源站发出,到目的地站的接收,最后达到收、发双方之间的对话或互操作,需要经历一系列的协议操作。

例如,发送站把数据发送到线路上,根据目的地地址,先要经历在链路上的传输。链路是在通信节点间保证无差错传输的路径单元。每个节点收到信息后,对它作差错检测和改正差错,然后再发送到下一个节点。如果遇到无法改正的差错,则退回上一个节点要求重发。目的地址包括目的地站所在的网络段号网络地址和在该网络段上的节点号节点地址,如果在某个中间节点上有多个网络分支的路径,为使信息以最经济、快捷的路径传送。要由该中间节点过断了路由确定,然后可能跨越多个网络,进行端对端从发站到收站的传输,把数据送到目的地站。

此后,还可能要作端到端的差错校验和改正。在进行收、发站之间的交互行中的计算机程序之间的衔接进程和进程之间的连接,语言或代码转换,最后到达应用层,进行应用的信息处理操作。通信结束后,要进行拆除连接,释放信道的过程。如此完成一次通信,这其中每个阶段都需要有严格的协议作为保证。

◆网络通信协议的分层及功能

按照国际标准化组织(ISO)的建议,目前实际广泛使用的网络结构模型是开放系统互连模型(OSI)。这是一个七层协议,包括物理层协议、数据链路层协议、网络层协议、传输层协议、会话层协议、表示层协议、应用层协议。

物理层协议实现物理上互连系统间位流信息的透明传输,即实现了一位(组)数据在两个通信实体之间的可靠传送通信,它描述了经通信介质在数据链路实体之间建立、维护和拆除物理连接。数据链路层协议主要是对高层屏蔽传输介质的特性,为网络通信实体之间提供建立、维护和释放数据链路连接的功能和手段,实现无差错的数据以帧为单位的可靠传送。网络层协议主要是为通信子网与高层结构之间提供界面连接,其主要任务是对通信子网实现路径选择,实现通信实体之间端--端的透明的数据传送,对高层屏蔽了数据传送经过的路径。

传输层协议也称主机—主机层协议,它为会话层的通信实体之间提供透明的数据传送,其主要任务是接收会话实体送来的数据,根据需要把他们分成若干比较小的单元,保证所有数据单元经下面三层正确地到达另一个会话实体。会话层协议也称进程—进程层协议,它通过协议提供的一组命令为网上两个进程之间的通信建立会话连接和释放会话连接,并管理它们在该连接上的对话。表示层协议以对应用实体有意义的形式提供有关信息表示的服务。这些服务有文本压缩、代码转换、数据加密与解密、文件格式变换、信息格式变换、终端属性的转换等。应用层协议是用户访问网络的接口层,直接为正在通信的端点用户的应用进程服务。那么这些都是属于网络通信协议这个大的概念之中的协议内容。

相关内容