admin 管理员组文章数量: 1087139
2024年5月30日发(作者:一年级上册语文在线教程)
NETW0RK AND C0MMUNICAT10N 网络与通信
实例讲解七层协议参考模型
苏俊毅
(佛山市高级技工学校 广东佛山528000)
摘要:对OSI七层协议参考模型的概念,通过用寄信收信的过程,形象的说明了每一层的功能,以QQ信息的发
送过程为例.深入探讨了通过七层进行网络互联。
关键词:网络互联;通信协议;开放式系统互联
Examples of Open Systems Interconnection
SU Junyi
(Foshan Senior Technical Schools,Guangdong Foshan 528000)
Abstract:On the basis of studying OSI,taking two examples tO explain how OSI to work.One is sending and receiving a
le ̄er.Another is sending messages by QQ through two computers.By the examples,discussing each layers of OSI.
Key words:Network Interconnection;Communications protocol;Open Systems Interconnection
1 引言
随着全球经济的发展,使得不同网络体系结构的用户迫
切要求能够交换信息,为了能够使不同体系结构的计算机网
络都能够互联。国际标准化组织(ISO)在1983年形成了开
放系统互联基本参考模型,也就是所谓的七层协议的体系结
以通过下面的一个生活中的实例大概了解这个七层结构。
3.1寄信
例如,当需要和外国的一位朋友通信的话,应该怎么做
呢?由于大家相隔很远,不能直接通信。于是可以通过邮局
完成这个通信。相信大家对寄信的过程都比较熟悉和了解,
现在就来回顾一下这个寄信的过程,来让大家弄明白七层结
构。当要和一个外国朋友通信的话,基本通过以下步骤:
第一步,先想好要写的内容。
构(图1)。目前使用的大多数网络通信协议都基于这个模型
的结构。所以要弄懂网络互联就需要明白这个模型结构。
2 概念
OSI七层模型的每一层都具有清晰的特点。应用层、表示
层、会话层和传输层用来处理首尾相连的数据源和目的地址
第二步,用中文书写。
第三步,开始在纸上写信。
间的通信,而网络层、数据链路层和物理层用来处理网络设
备问的通信。另一方面,OSI模型的七个层可以划分为两组:
上层(应用层、表示层、会话层和传输层)和下层(网络层、
数据链路层和物理层)。OSI模型的上层处理应用信息,并且
第四步,把纸放到信封里面。
第五步,在信封上写上目的地址,考虑怎么去邮局的路
是最近的。
第六步,要在邮局开放的时候去寄信,保证安全。
只在软件上执行。最高层,即应用层是与终端用户最接近的。
OSI模型的下层是处理数据传输的。物理层和数据链路层上的
信息执行是在硬件和软件上。最底层,即物理层是与物理网
络媒介(比如说电线)最接近的,并且负责在媒介上替换数
据。图1是OSI七层模型的示意。
第七步,走路或者坐车去邮局。
3.2邮局处理信件
第一步,邮递员根据信封的目的地址,分发到不同的邮
局。
第二步,在其他邮局正常工作的时候,投递邮件。
第三步,用车把邮件运输过去。
重复前面三步,直到把信件寄送到最近目的地址的邮局。
然后把信放到目的地址。
3.3收信
第一步,信箱接收信件。
第二步,保证接收过程安全。
第三步,找到信箱,拿出信件。
第四步,打开信封。
图1七层模型结构
第五步,开始看信的文字。
3 实例
两台计算机之间需要通信的话,就要按照这个网络七层
作者简介:苏俊毅(1983一),男,助理讲师,学士,研究方
向:计算机网络、遗传算法。
收稿日期:2011-05—12
协议。这是个比较抽象的概念,因为大家往往看到的是一台
台的电脑,这一台台的电脑又是怎么样分成七层结构呢?可
麓
电脑编程技巧与维护
第六步,把信的中文翻译成英文。
第七步,开始读信的内容。
者交换机,然后开始传送数据,而第一层(物理层)就是指
网线等链路,它规定了怎么样的规格才可以传输。当另外一
个路由器收到信息后,它会分析再会经过哪些路由器,从而
通过上面的步骤(图2),两个在不同地方,用不同语言
的人就可以进行通信了。
3.4寄信收信过程分析
寄信过程 收信过程
思考写的内容
用中文写
开始写信
把信放进信封
思考最佳路径
最佳路径II l
保证运输安全
证运输安纠II
运输信件
垩竺堕堡
图2寄信收信过程
~~一~一~一~槲~一~一
对于上面的过程来说,寄信和收信这个过程比较像上四层
的功能应用层、表示层、会话层和传输层),例如写给外国朋友
的内容就等于是数据,像第七层的(应用层)功能;用中文写
信,外国人用英文看信,解决两个用不同语言的人之间的通信
问题,例如是中文还是英文,这个就像第六层(表示层)的功
能;而写好信之后,结束写信的过程,相当于第五层(会话层)
的功能;当把信放进信封,就像第四层(传输层)的功能。
邮局处理信件的过程比较像下三层(网络层、数据链路
层和物理层)的功能,例如邮递员收到信之后要查看寄信地
址,然后考虑通过哪条路径去寄信,例如首先把信寄到什么
地方,然后再转到目的地,这就由第三层(网络层)负责;
邮递员根据邮寄地址开始邮信,保证运输过程的正确性就由
第二层(数据链路层)负责,运输的时候需要什么的介质,
例如需要什么的公路等就由第一层(物理层)负责。
4 电脑互联
上面的一个简单寄信过程,就大概描述了七层结构的一
些基本功能。下面用一个具体的例子来说明两台电脑之间是
怎么通信的。
4.1电脑A发送过程
现在假设电脑A要与电脑B进行通信。电脑A和电脑B
同时使用QQ这个软件,下面先从实际例子理解七层结构,看
到的QQ是一个应用程序,它就是第七层(应用层);当运行
QQ这个程序能看到的界面就是第六层(表示层)的结果;在
运行程序的同时会产生一个会话,当电脑A开始跟人聊天的
时候,这就是第五层(会话层);当电脑A通过QQ向电脑B
通信的时候,输出的内容会用段的形式发给电脑B的网卡,
封装成段的是第四层(传输层);由于网卡对电脑A所发的内
容不明白,所以先要把数据段分成数据包,封装成包的是第
三层(网络层),每个包都会有电脑A的源地址和目的地址,
这都是IP地址,但是网卡还是不认识,所以网卡要进一步把
数据包变成数据帧,封装成帧的是第二层(数据链路层),同
时把物理地址写入其中,并通过网线发送给最近的路由器或
找出一条最佳的路径。
4.2电脑B的接收过程
信号经过多个路由器从网线传送到电脑B的网卡,网卡
接收时将以太网的帧剥去首部和尾部,然后送交给传输层。
由于会话层要有一性能恒定的界面。传输层就承担了这个功
能。接着,电脑B打开对话窗口,就可以看见从电脑A发过
来的信息。
整个过程如图3所示。
4-3电脑互联分析
从上面的实例可以简单分析一下数据是怎么经过七层结
电脑A发送进程 电脑B接收进程
应用层 - 应用层
表示层 f l表示层
会话层 会话层
传输层 传输层
网络层 网络层
数据链路层 数据链路层
物理层 i : 物理层
图3电脑A与电脑B通信图
构模型达成网络互联的,如下:
(1)应用层:为用户提供相关的服务并且负责对软件提
供接口以使程序能使用网络服务。例如使QQ软件能使用网络
服务。
(2)表示层:定义数据格式及加密。它的作用之一是为
异种机通信提供一种公共语言,以便能进行互操作。这种类
型的服务之所以需要,是因为不同的计算机体系结构使用的
数据表示法不同。例如,如果上面的例子中电脑A使用的是
IBM主机,这个主机是使用EBCDIC编码,而电脑B使用的
是ASCII码。在这种情况下,便需要会话层来完成这种转换。
(3)会话层:负责建立、管理和终止应用程序间的会话。
如上面电脑A向电脑B发送QQ信息的时候,电脑B的会话
层就会与电脑A的会话层进行协商连接。如果电脑A的网线
接口偶然松动脱落时,电脑A的会话层将检测到连接中断并
重新发起连接。会话层通过决定节点通信的优先级和通信时
间的长短来设置通信期限。
(4)传输层:保证数据的可靠传输。电脑A的传输层将
大的数据组(如完整的报文)分解称为包(packe0的较小的单
元,并监控从电脑A到电脑B的传输和接收活动,以确保包
的正确地组装。这种类型的服务之所以需要,是因为世界上
各种通信子网在性能上有一定的差异。例如,电话交换网、
分组交换网、公用数据交换网和局域网等通信子网都可以进
行网络互联,但是它们所提供的吞吐量、传输速率、数据延
迟等都不一样。而对于会话层来说,它是要求有一性能恒定
NETWORK AND C0MMUNICAT10N
的界面。传输层就承担调节通信子网的差异了这一功能,使
得会话层感受不到。
(5)网络层:将网络地址翻译成对应的物理地址,并决定
网络与通信
针、针的使用、电流、电流、编码及光调制等都属于物理层规
范中的内容。例如指明电脑A和电脑B的接口所用接线器的
形状和尺寸、引线数目和排列、固定和锁定装置等。这就像平
如何将数据从发送方路由到接收方。电脑A发信息给电脑B的
时候,在这一层里,会把电脑B的IP地址翻译成电脑B的物
时常见的各种规格的电源插头的尺寸都有严格的规定一样。
5 结语
由此可见,要使两台计算机的系统相互通信就必须让它
们高度协调工作才行,而这种“协调”是相当复杂的。为了
设计这样复杂的计算机网络,国际标准化组织(osU采用了
理地址,并且决定数据通过哪些路由器才能到达电脑B。这种
类型的服务之所以需要,是因为随着数据终端增多时,就会出
现一台终端需要和多台终端通信的情况,这就产生了把任意两
台数据终端设备的数据链接起来的问题,也就是路由或寻径。
分层的方法,采用分层可以将庞大并且复杂的问题转化为若
(6)数据链路层:规定了物理地址、所传数据帧的排序和
干个较小的局部问题,这些较小的局部问题就比较容易研究
流量控制等。电脑A的网卡负责将数据传输的数据帧转化成物
和处理了。同时通过日常的例子,就可以把很抽象的七层模
理层能传递的二进制位。反之,电脑B的网卡把从物理层接受
型变得形象,并且利于理解。
的二进制位转换成帧。同时,数据在物理媒体上传输的时候,
参考文献
难免遇到不可靠因素的影响而出现问题,例如电脑A的数据通
【1】许鹏,张继栋.通俗讲解OSI七层协议参考模型[J].华
过网线要发到电脑B的时候,又有另外一个数据发到电脑A,
章,2009,18:120—122.
两个数据出现冲突,又或者在电脑A发送数据的过程中,网线
【2】谢希仁.计算机网络[M】.北京:电子工业出版社,2003.
断开了等。为了弥补物理层上的不足,并且为上层提供无差错
【3]徐其兴.计算机网络技术及应用【M】.2版.北京:高等
的数据传输,数据链路层就要对数据进行检错和纠错、数据链
教育出版社,2004.
路的建立、拆除,对数据的检错、纠错等基本任务。
[4]王群.计算机网络教程【M】.清华大学出版社,2005.
(7)物理层:定义了通信线路的一些规范。包括连接头、
= e= e二 畸 菏、 石
(上接第73页)
通过Delphi7.0开发实现,核心代码如下: 查询语句进行优化,以达到最佳效率。
if radiobutton2.Checked=true then
begin
sqlstring:="create or replace view cx2 as SELECT dis-
itnct xnl,csrq,zjhm,gJdqdm FROM B —CRJRYDK
WHERE(xmIlcsrq in(select xnlIlcsrq from BJ_YW T CR-
JRYDK where CRRQ between…+start_date+… + and +
…
-
4-end
_
date-4-…or CRRQ between… bd_starttime-I-…
+ and +… +bd
_
endtime-t-…GROUP BY xmllcsrq having
count( )>1)) ;
sqlstringl:= SELECT distinct xm,csrq,zjhm,gjdqdm,
count( )hum RFOM cx2 WHERE(xmllcsrq in(select xmll
csrq from cx2 GROUP BY xm Ilcsrq having count( )>1))
group by xm,csrq,zjhm,gjdqdm ;
with adoqueryl do
begin
adoquery1.Close;
sq1.Clear;
adoquery1.SQL.Add(sqlstring);
图1
adoquery1.ExecSQL;
sq1.Clear;
参考文献
adoquery1.SQL.Add(sqlstring1);
【1】路遥,宋鑫.Oracle 9i基础与提高.北京:电子工业出版
adoquery1.ExecSQL;
adoquery1.Open;
社,2003.
end;
[2]陆正武,徐君明.Delphi7基础编程.北京:电子工业出版
end;
社,2003.
程序运行界面如图1所示。
【3】杨枭,陆正中.Delphi7数据库应用开发.北京:电子工业
4 结语
出版社,2003.
通过Delphi7.0开发环境实现基于SQL的查询方法很多,
【4】Michael Auh.Oracle Administration and Management.江漫,
关键在于,当要查询的数据量很大的时候,这就需要对SQL
译.北京:清华大学出版社,2003.
版权声明:本文标题:实例讲解七层协议参考模型 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1717012117a699678.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论