OSI七层网络模型由下至上为1至7层,分别为物理层(Physical layer),数据链路层(Data link layer),网络层(Network layer),传输层(Transport layer),会话层(Session layer),表示层(Presentation layer),应用层(Application layer)。
应用层,很简单,就是应用程序。这一层负责确定通信对象,并确保由足够的资源用于通信,这些当然都是想要通信的应用程序干的事情.为操作系统或网络应用程序提供访问网络服务的接口.
应用层协议的代表包括:Telnet、FTP、HTTP、SNMP等。
表示层,负责数据的编码、转化,确保应用层的正常工作。这一层,是将我们看到的界面与二进制间互相转化的地方,就是我们的语言与机器语言间的转化.数据的压缩、解压,加密、解密都发生在这一层.这一层根据不同的应用目的将数据处理为不同的格式,表现出来就是我们看到的各种各样的文件扩展名。 会话层,负责建立、维护、控制会话,区分不同的会话,以及提供单工(Simplex)、半双工(Half duplex)、全双工(Full duplex)三种通信模式的服务。我们平时所知的NFS,RPC,X Windows等都工作在这一层。管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步.
传输层,负责分割、组合数据,实现端到端的逻辑连接。数据在上三层是整体的,到了这一层开始被分割,这一层分割后的数据被称为段(Segment)。三次握手(Three—way handshake),面向连接(Connection-Oriented)或非面向连接(Connectionless—Oriented)的服务,流控(Flow control)等都发生在这一层。是第一个端到端,即主机到主机的层次。传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输。此外,传输层还要处理端到端的差错控制和流量控制问题。
在这一层,数据的单位称为数据段(segment)。 传输层协议的代表包括:TCP、UDP、SPX等
网络层,负责管理网络地址,定位设备,决定路由.我们所熟知的IP地址和路由器就是工作在这一层.上层的数据段在这一层被分割,封装后叫做包(Packet),包有两种,一种叫做用户数据包(Data packets),是上层传下来的用户数据;另一种叫路由更新包(Route update packets),是直接由路由器发出来的,用来和其他路由器进行路由信息的交换。负责对子网间的数据包进行路由选择。网络层还可以实现拥塞控制、网际互连等功能。 在这一层,数据的单位称为数据包(packet). 网络层协议的代表包括:IP、IPX、RIP、OSPF等
数据链路层,负责准备物理传输,CRC校验,错误通知,网络拓扑,流控等。我们所熟知的MAC地址和交换机都工作在这一层。上层传下来的包在这一层被分割封装后叫做帧(Frame)。在不可靠的物理介质上提供可靠的传输.该层的作用
包括:物理地址寻址、数据的成帧、流量控制、数据的检错、重发等. 在这一层,数据的单位称为帧(frame)。
数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等
物理层,就是实实在在的物理链路,负责将数据以比特流的方式发送、接收,就不多说了.
具体说:
网线,集线器----物理层 网卡,网桥----数据链路 路由器-----网络层
交换机就是用来进行报文交换的机器.它和HUB最重要的区别就HUB是物理层设备,采用广播的形式来传输信息,交换机多为链路层设备(二层交换机),能够进行地址学习,采用存储转发的形式来交换报文.它和路由器的区别在于路由器有DDN,ADSL等接口,交换机只有以太网接口.
国际标准组织(ISO)制定了OSI模型。这个模型把网络通信的工作分为7层。1至4层被认为是低层,这些层与数据移动密切相关。5至7层是高层,包含应用程序级的数据。每一层负责一项具体的工作,然后把数据传送到下一层。 物理层(也即OSI模型中的第一层)在课堂上经常是被忽略的。它看起来似乎很简单.但是,这一层的某些方面有时需要特别留意.物理层实际上就是布线、光纤、网卡和其它用来把两台网络通信设备连接在一起的东西。甚至一个信鸽也可以被认为是一个1层设备(参见RFC 1149)。网络故障的排除经常涉及到1层问题。我们不能忘记用五类线在整个一层楼进行连接的传奇故事。由于办公室的椅子经常从电缆线上压过,导致网络连接出现断断续续的情况。遗憾的是,这种故障是很常见的,而且排除这种故障需要耗费很长时间。
第2层是以太网等协议。请记住,我们要使这个问题简单一些。第2层中最重要的是你应该理解网桥是什么。交换机可以看成网桥,人们现在都这样称呼它。网桥都在2层工作,仅关注以太网上的MAC地址。如果你在谈论有关MAC地址、交换机或者网卡和驱动程序,你就是在第2层的范畴。集线器属于第1层的领域,因为它们只是电子设备,没有2层的知识。第2层的相关问题在本网络讲座中有自己的一部分,因此现在先不详细讨论这个问题的细节。现在只需要知道第2层把数据帧转换成二进制位供1层处理就可以了。
在往下讲之间,你应该回过头来重新阅读一下上面的内容,因为经验不足的网络管理员经常混淆2层和3层的区别。
如果你在谈论一个IP地址,那么你是在处理第3层的问题,这是“数据包\"问题,而不是第2层的“帧\".IP是第3层问题的一部分,此外还有一些路由协
议和地址解析协议(ARP)。有关路由的一切事情都在第3层处理。地址解析和路由是3层的重要目的。
第4层是处理信息的传输层。第4层的数据单元也称作数据包(packets).但是,当你谈论TCP等具体的协议时又有特殊的叫法,TCP的数据单元称为段(segments)而UDP协议的数据单元称为“数据报(datagrams)”。这个层负责获取全部信息,因此,它必须跟踪数据单元碎片、乱序到达的数据包和其它在传输过程中可能发生的危险.理解第4层的另一种方法是,第4层提供端对端的通信管理。像TCP等一些协议非常善于保证通信的可靠性.有些协议并不在乎一些数据包是否丢失,UDP协议就是一个主要例子。
现在快要到7层了,我们很想知道第5层和第6层有些什么功能。可以说,它们都是没有用的。
有一些应用程序和协议在5层和6层.但是,对于理解网络问题来说,谈论这些问题没有任何益处。请大家注意,第7层是“一切”。7层也称作“应用层\",是专门用于应用程序的。如果你的程序需要一种具体格式的数据,你可以发明一些你希望能够把数据发送到目的地的格式,并且创建一个第7层协议.SMTP、DNS和FTP都是7层协议。
学习OSI模型中最重要的事情是它实际代表什么意思。
假如你是一个网络上的操作系统。在1层和2层工作的网卡将通知你什么时候有数据到达。驱动程序处理2层帧的出口,通过它你可以得到一个发亮和闪光的3层数据包(希望是如此).作为操作系统,你将调用一些常用的应用程序处理3层数据.如果这个数据是从下面发上来的,你知道那是发给你的数据包,或者那是一个广播数据包(除非你同时也是一个路由器,不过,暂时不用担心这个问题)。如果你决定保留这个数据包,你将打开它,并且取出4层数据包。如果它是TCP协议,这个TCP子系统将被调用并打开这个数据包,然后把这个7层数据发送给在目标端口等待的应用程序.这个过程就结束了。
当要对网络上的其它计算机做出回应的时候,每一件事情都以相反的顺序发生。7层应用程序将把数据发送给TCP协议的执行者。然后,TCP协议在这些数据中加入额外的文件头。在这个方向上,数据每前进一步体积都要大一些.TCP协议在IP协议中加入一个合法的TCP字段。然后,IP协议把这个数据包交给以太网。以太网再把这个数据作为一个以太网帧发送给驱动程序.然后,这个数据通过了这个网络。这条线路中的路由器将部分地分解这个数据包以获得3层文件头,以便确定这个数据包应该发送到哪里。如果这个数据包的目的地是本地以太网子网,这个操作系统将代替路由器为计算机进行地址解析,并且把数据直接发送给主机。
因篇幅问题不能全部显示,请点此查看更多更全内容