注:本文以书刊形式展示 Cisco七层协议,并不以知识点 经验为题,建议闲暇时间观看

OSI

网络七层协议(Open System Interconnection),简称OSI,是一个开放性的通行系统互连参考模型,他是一个定义的非常好的协议规范。OSI模型有7层结构,每层都可以有几个子层。 OSI的7层从上到下分别是 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 其中高层,即7、6、5、4层定义了应用程序的功能,下面3层,即3、2、1层主要面向通过网络的端到端的数据流。

物理层

  • 物理层(或称物理层,Physical Layer)是计算机网络OSI模型中最低的一层。物理层规定:为传输数据所需要的物理链路创建、维持、拆除,而提供具有机械的,电子的,功能的和规范的特性。简单的说,物理层确保原始的数据可在各种物理媒体上传输。局域网与广域网皆属第1、2层。

  • 物理层是OSI的第一层,它虽然处于最底层,却是整个开放系统的基础。物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。如果您想要用尽量少的词来记住这个第一层,那就是“信号和介质”。

代表性协议有

  1. RS-232
  2. RS-449
  3. X.21
  4. V.35
  5. ISDN
  6. FDDI
  7. IEEE802.3
  8. IEEE802.4
  9. IEEE802.5

物理层要解决的主要问题:

  1. 物理层要尽可能地屏蔽掉物理设备和传输媒体,通信手段的不同,使数据链路层感觉不到这些差异,只考虑完成本层的协议和服务。
  2. 给其服务用户(数据链路层)在一条物理的传输媒体上传送和接收比特流(一般为串行按顺序传输的比特流)的能力,为此,物理层应该解决物理连接的建立、维持和释放问题。
  3. 在两个相邻系统之间唯一地标识数据电路。

物理层主要功能:

为数据端设备提供传送数据通路、传输数据。

  1. 为数据端设备提供传送数据的通路,数据通路可以是一个物理媒体,也可以是多个物理媒体连接而成。一次完整的数据传输,包括激活物理连接,传送数据,终止物理连接。所谓激活,就是不管有多少物理媒体参与,都要在通信的两个数据终端设备间连接起来,形成一条通路。

  2. 传输数据,物理层要形成适合数据传输需要的实体,为数据传送服务。一是要保证数据能在其上正确通过,二是要提供足够的带宽(带宽是指每秒钟内能通过的比特(BIT)数),以减少信道上的拥塞。传输数据的方式能满足点到点,一点到多点,串行或并行,半双工或全双工,同步或异步传输的需要。

  3. 完成物理层的一些管理工作。

物理层的组成

物理层的媒体包括架空明线、平衡电缆、光纤、无线信道等。通信用的互连设备指DTE和DCE间的互连设备。DTE即数据终端设备,又称物理设备,如计算机、终端等都包括在内。而DCE则是数据通信设备或电路连接设备,如调制解调器等。数据传输通常是经过DTE──DCE,再经过DCE──DTE的路径。互连设备指将DTE、DCE连接起来的装置,如各种插头、插座。LAN中的各种粗、细同轴电缆、T型接、插头,接收器,发送器,中继器等都属物理层的媒体和连接器。 [4]

常见的物理层设备

网卡
光纤
CAT-5线
RJ-45接头
集线器有整波作用。
Repeater加强信号。
串口
并口


数据链路层

数据链路层是OSI参考模型中的第二层,介乎于物理层和网络层之间。数据链路层在物理层提供的服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。

简介

数据链路层定义了在单个链路上如何传输数据。这些协议与被讨论的各种介质有关。示例:ATM,FDDI等。数据链路层必须具备一系列相应的功能,主要有:如何将数据组合成数据块在数据链路层中称这种数据块为帧帧是数据链路层的传送单位;如何控制帧在物理信道上的传输,包括如何处理传输差错,如何调节发送速率以使与接收方相匹配;以及在两个网络实体之间提供数据链路通路的建立、维持和释放的管理。

  • 物理链路(物理线路):是由传输介质与设备组成的。原始的物理传输线路是指没有采用高层差错控制的基本的物理传输介质与设备。

  • 数据链路(逻辑线路):在一条物理线路之上,通过一些规程或协议来控制这些数据的传输,以保证被传输数据的正确性。实现这些规程或协议的硬件和软件加到物理线路,这样就构成了数据链路,从数据发送点到数据接收点所经过的传输途径。当采用复用技术时,一条物理链路上可以有多条数据链路。

基本功能

  • 数据链路层主要有两个功能 :帧编码和误差纠正控制。帧编码意味着定义一个包含信息频率、位同步、源地址、目标地址以及其他控制信息的数据包。数据链路层协议又被分为两个子层 :逻辑链路控制(LLC)协议和媒体访问控制(MAC)协议。

  • 数据链路层的最基本的功能是向该层用户提供透明的和可靠的数据传送基本服务。透明性是指该层上传输的数据的内容、格式及编码没有限制,也没有必要解释信息结构的意义;可靠的传输使用户免去对丢失信息、干扰信息及顺序不正确等的担心。在物理层中这些情况都可能发生,在数据链路层中必须用纠错码来检错与纠错。数据链路层是对物理层传输原始比特流的功能的加强,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一无差错的线路。

相关协议

数据链路控制协议也称链路通信规程,也就是OSI参考模型中的数据链路层协议。链路控制协议可分为异步协议和同步协议两大类。
数据链路层的主要协议有:

  1. 点对点协议(Point-to-Point Protocol);
  2. 以太网(Ethernet);
  3. 高级数据链路协议(High-Level Data Link Protocol);
  4. 帧中继(Frame Relay);
  5. 异步传输模式(Asynchronous Transfer Mode);

网络层

这层对端到端的包传输进行定义,它定义了能够标识所有结点的逻辑地址,还定义了路由实现的方式和学习的方式。为了适应最大传输单元长度小于包长度的传输介质,网络层还定义了如何将一个包分解成更小的包的分段方法。示例:IP,IPX等。

功能目的

网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。它提供的服务使传输层不需要了解网络中的数据传输和交换技术。如果您想用尽量少的词来记住网络层,那就是“路径选择、路由及逻辑寻址”。

为了说明网络层的功能,如图所示的交换网络拓扑结构,它是由若干个网络节点按照任意的拓扑结构相互连接而成的。网络层关系到通信子网的运行控制,体现了网络应用环境中资源子网访问通信子网的方式。网络层从物理上来讲一般分布地域宽广,从逻辑上来讲功能复杂,因此是OSI模型中面向数据通信的下三层(也即通信子网)中最为复杂也最关键的一层。

路由选择

通信子网络源节点和目的节点提供了多条传输路径的可能性。网络节点在收到一个分组后,要确定向下一节点传送的路径,这就是路由选择。在数据报方式中网络节点要为每个分组路由做出选择;而在虚电路方式中,只需在连接建立时确定路由。确定路由选择的策略称路由算法。设计路由算法时要考虑诸多技术要素。首先是路由算法所基于的性能指标,一种是选择最短路由,一种是选择最优路由;其次要考虑通信子网是采用虚电路还是数据报方式;其三,是采用分布式路由算法,即每节点均为到达的分组选择下一步的路由,还是采用集中式路由算法,即由中央点或始发节点来决定整个路由;其四,要考虑关于网络拓扑,流量和延迟等网络信息的来源;最后,确定是采用动态路由选择策略,还是选择静态路由选择策略

静态路由

静态路由选择策略不用测量也无须利用网络信息,这种策略按某种固定规则进行路由选择。其中还可分为泛射路由选择、固定路由选择和随机路由选择三种算法。

动态路由

节点路由选择要依靠网络当前的状态信息来决定的策略称动态路由选择策略,这种策略能较好地适应网络流量、拓扑结构的变化,有利于改善网络的性能。但由于算法复杂,会增加网络的负担,有时会因反应太快引起振荡或反应太慢不起作用。独立路由选择、集中路由选择和分布路由选择是三种动态路由选择策略的具体算法。

阻塞控制

阻塞现象是指到达通信子网中某一部分的分组数量过多,使得该部分网络来不及处理,以致引起这部分乃至整个网络性能下降的现象,严重时甚至会导致网络通信业务陷入停顿,即出现死锁现象。这种现象跟公路网中通常所见的交通拥挤一样,当节假日公路网中车辆大量增加时,各种走向的车流

死锁

阻塞的极端后果是死锁。死锁是网络中容易发生的故障之一,即使在网络负荷不很重时也会发生。死锁发生时,一组节点由于没有空闲缓冲区而无法接收和转发分组,节点之间相互等待,即不能接收分组也不能转发分组,并永久保持这一状态,严重的甚至导致整个网络的瘫痪。此时,只能靠人工干预,重新启动网络解除死锁。但重新启动后并未消除引起死锁的隐患,所以可能再次发生死锁。死锁是由于控制技术方面的某些缺陷所引起的,起因通常难以难捉摸难以发现,即使发现,常常不能立即修复。因此,在各层协议中都必须考虑如何避免死锁的问题。

IP协议

TCP/IP网络层的核心是IP协议,它是TCP/IP协议族中最主要的协议之一。IP协议非常简单,仅仅提供不可靠、无连接的传送服务。IP协议的主要功能有:无连接数据报传输、数据报路由选择和差错控制。与IP协议配套使用实现其功能的还有地址解析协议ARP、逆地址解析协议RARP、因特网报文协议ICMP、因特网组管理协议IGMP。

IP地址

TCP/IP网络使用32位长度的地址以标识一台计算机和同它相连的网络,它的格式为:IP地址=网络地址+主机地址。 IP地址是通过它的格式分类的,它有四种格式:A类、B类、C类、D类。如下所示
格式位数主机地址:

  • A类0网络(7位)主机地址(24位)
  • B类10网络(14位)主机地址(16位)
  • C类110网络(21位)主机地址(8位)
  • D类1110多路通信地址(28位)
  • 未来的格式11110将来使用。

地址详细:

  • A类地址空间为0-127,最大网络数为126,最大主机数为16,777,124
  • B类地址空间为128-191,最大网络数为16384,最大主机数为65,534
  • C类地址空间为192-223,最大网络数为2,097,152,最大主机数为254
  • D类地址空间为224-254。
  • C类地址空间分配概况。

分配区域地址空间:
多区域:192.0.0.0 - 193.255.255.255
欧洲:194.0.0.0 - 195.255.255.255
其他:196.0.0.0 - 197.255.255.255
北美:197.0.0.0 - 199.255.255.255
中南美:200.0.0.0 - 201.255.255.255
太平洋地区:202.0.0.0 - 203.255.255.255
其他:204.0.0.0 - 205.255.255.255
其他:206.0.0.0 - 207.255.255.255。
注:其中“多区域”表示执行该计划前已经分配的地址空间;“其他”表示已指定名称的地区之外的地理区划。

特殊格式的IP地址:
广播地址:
当网络或主机标志符字段的每位均设置为1时,这个地址编码标识着该数据报是一个广播式的通信,该数据报可以被发送到网络中所有的子网和主机。

例如:地址128.2.255.255意味着网络128.2上所有的主机。

本网络地址:IP地址的主机标识符字段也可全部设置为0,表示该地址作为“本主机”地址。网络标识符字段也可全部设置为0,表示“本网络”。
如,128.2.0.0表示网络地址为128.2的网络。使用网络标识符字段全部设置为0的

IP地址在一台主机不知道网络的IP地址时时是很有用的。
私有的IP地址:在有些情况下,一个机构并不需要连接到Internet或另一个专有的网络上,因此,无须遵守对IP地址进行申请和登记的规定。
该机构可以使用任何的地址。在RFC1597中,有些IP地址是用作私用地址的:

  • A类地址:10.0.0.0到10.255.255.255。
  • B类地址:172.16.0.0到172.31.255.255.255。
  • C类地址:192.168.0.0到192.168.255.255。

传输层

传输层是整个网络体系结构中的关键层次之一,主要负责向两个主机中进程之间的通信提供服务。由于一个主机同时运行多个进程,因此运输层具有有复用和分用功能。传输层在终端用户之间提供透明的数据传输,向上层提供可靠的数据传输服务。传输层在给定的链路上通过流量控制、分段/重组和差错控制来保证数据传输的可靠性。传输层的一些协议是面向链接的,这就意味着传输层能保持对分段的跟踪,并且重传那些失败的分段。

简介

传输层是国际标准化组织提出的开放系统互连(OSI)参考模型中的第四层。该层协议为网络端点主机上的进程之间提供了可靠、有效的报文传送服务。其功能紧密地依赖于网络层的虚拟电路或数据报服务。传输层定义了主机应用程序之间端到端的连通性。传输层也称为运输层,传输层只存在于端开放系统中,是介于低3层通信子网系统和高3层之间的一层,但是很重要的一层,因为它是源端到目的端对数据传送进行控制从低到高的最后一层。

传输层的服务一般要经历传输连接建立阶段,数据传送阶段,传输连接释放阶段3个阶段才算完成一个完整的服务过程。而在数据传送阶段又分为一般数据传送和加速数据传送两种形式。传输层中最为常见的两个协议分别是传输控制协议TCP(Transmission Control Protocol)和用户数据报协议UDP(User Datagram Protocol) 。传输层提供逻辑连接的建立、传输层寻址、数据传输、传输连接释放、流量控制、拥塞控制、多路复用和解复用、崩溃恢复等服务。

端口概念

传输层的任务是根据通信子网的特性,最佳的利用网络资源,为两个端系统的会话层之间,提供建立、维护和取消传输连接的功能,负责端到端的可靠数据传输。在这一层,信息传送的协议数据单元称为段或报文。

网络层只是根据网络地址将源结点发出的数据包传送到目的结点,而传输层则负责将数据可靠地传送到相应的端口。计算机网络中的资源子网是通信的发起者和接收者,其中的每个设备称为端点;通信子网提供网络中的通信服务,其中的设备称为节点。OSI参考模型中用于通信控制的是下面四层,但它们的控制对象不一样。

基本功能

传输层提供了主机应用程序进程之间的端到端的服务,基本功能如下:

  1. 分割与重组数据
  2. 按端口号寻址
  3. 连接管理
  4. 差错控制和流量控制,纠错的功能

传输层要向会话层提供通信服务的可靠性,避免报文的出错、丢失、延迟时间紊乱、重复、乱序等差错。

服务类型

传输层既是OSI层模型中负责数据通信的最高层,又是面向网络通信的低三层和面向信息处理的高三层之间的中间层。该层弥补高层所要求的服务和网络层所提供的服务之间的差距,并向高层用户屏蔽通信子网的细节,使高层用户看到的只是在两个传输实体间的一条端到端的、可由用户控制和设定的、可靠的数据通路。服务类型
传输层提供的服务可分为传输连接服务和数据传输服务。

  • 传输连接服务:通常,对会话层要求的每个传输连接,传输层都要在网络层上建立相应的连接。

  • 数据传输服务:强调提供面向连接的可靠服务(很晚OSI才开始制定无连接服务的有关标准),并提供流量控制、差错控制和序列控制,以实现两个终端系统间传输的报文无差错、无丢失、无重复、无乱序。

传输层协议

面向连接的传输协议(TCP):数据传输之前必须先建立连接,数据传输完成之后,必须释放连接。仅支持单播传输:每条传输连接只能有两个端点,只能进行点对点的连接,不支持多播和广播的传输方式,UDP是支持的。
提供可靠的交付服务:传送的数据无差错。不丢失,不重复,且顺序与与源数据一致。
传输单位是数据段:每次发送的数据段不固定,受应用层传送报文大小和网络中的MTU(最大传输单元)值大小的影响。最小数据段可能仅有21个字节(其中20个字节属于TCP头部,数据部分仅1字节)。
支持全双工传输:通信双方可以同时发数据和接收数据。

TCP

  • TCP连接是基于字节流的:UDP是基于报文流的。
  • TCP是一个可以保证可靠数据传输的传输层协议,主要采用采用以下四个机制实现数据可靠性传输。
  • 字节编号机制:TCP数据段以字节为单位对数据段的"数据"部分进行一一编号,确保每一个字节的数据都可以有序传送和接收。
  • 数据段确认机制:每接收一个数据段都必须有接收端向发送端返回确认数据段,其中的确认号表示已经正确接收的数据段序号。
  • 超时重传机制:TCP中有一个重传定时器(RTT),发送一个数据段的同时也开启这个定时器,如果定时器过期之时还没有返回确认,则定时器停止,重传该数据。
  • 选择性确认机制:(Selective ACK,SACK)/只重传缺少部分的数据,不会重传那些已经正确接收的数据。

UDP

UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。UDP在IP报文的协议号是17。

  • UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。
  • 在OSI模型中,在第四层——传输层,处于IP协议的上一层。
  • UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。
  • UDP用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。
  • UDP报文分为UDP报文头和UDP数据区域两个部分。报头由源端口,目的端口,报文长度以及校验和组成。UDP适合于实时数据传输,比如语音和视频通信。相比TCP,UDP的传输效率更高,开销更小,但是无法保证数据传输可靠性。UDP头部的标识如下:
  1. 16位源端口号:源主机的应用程序使用的端口号。
  2. 16位目的端口号:目的主机的应用程序使用的端口号。
  3. 16位UDP长度:是指UDP头部和UDP数据的字节长度。因为UDP头部长度是8字节,所以字段的最小值为8。
  4. 16位UDP校验和:该字段提供了与TCP校验字段同样的功能;该字段是可选的。

重要性

传输层是整个协议层次结构的核心,是惟一负责总体数据传输和控制的一层。在OSI七层模型中传输层是负责数据通信的最高层,又是面向网络通信的低三层和面向信息处理的高三层之间的中间层。因为网络层不一定保证服务的可靠,而用户也不能直接对通信子网加以控制,因此在网络层之上,加一层即传输层以改善传输质量。

传输层利用网络层提供的服务,并通过传输层地址提供给高层用户传输数据的通信端口,使系统间高层资源的共享不必考虑数据通信方面和不可靠的数据传输方面的问题。它的主要功能是:对一个进行的对话或连接提供可靠的传输服务,在通向网络的单一物理连接上实现该连接的复用,在单一连接上提供端到端的序号与流量控制、差错控制及恢复等服务。


会话层

会话层(Session)是建立在传输层之上,利用传输层提供的服务,使应用建立和维持会话,并能使会话获得同步。会话层使用校验点可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。

简述

会话层,表示层,应用层构成开放系统的高3层,面对应用进程提供分布处理,对话管理,信息表示,恢复最后的差错等. 会话层同样要担负应用进程服务要求,而运输层不能完成的那部分工作,给运输层功能差距以弥补.主要的功能是对话管理,数据流同步和重新同步。要完成这些功能,需要由大量的服务单元功能组合,已经制定的功能单元已有几十种.。如果您想要用尽量少的词来记住这第5层,那就是“对话和交谈”。

主要功能

  • 为会话实体间建立连接
    为给两个对等会话服务用户建立一个会话连接,应该做如下几项工作.
  1. 将会话地址映射为运输地址.
  2. 选择需要的运输服务质量参数(QOS).
  3. 对会话参数进行协商.
  4. 识别各个会话连接.
  5. 传送有限的透明用户数据.
  • 数据传输阶段

    这个阶段是在两个会话用户之间实现有组织的,同步的数据传输.用户数据单元为SSDU,而协议数据单元为SPDU.会话用户之间的数据传送过程是将SSDU转变成SPDU进行的.

  • 连接释放

    连接释放是通过"有序释放",“废弃”,"有限量透明用户数据传送"等功能单元来释放会话连接的。
    会话层标准为了使会话连接建立阶段能进行功能协商,也为了便于其它国际标准参考和引用,定义了12种功能单元。各个系统可根据自身情况和需要,以核心功能服务单元为基础,选配其他功能单元组成合理的会话服务子集。

会话劫持

由于会话层传输数据的特点所以在发生会话时可能会出现会话劫持。会话劫持发生在攻击者试图接管两台计算机间所建立的TCP会话的时候。会话劫持的基本步骤包括:寻找会话、猜测序号、迫使用户掉线、接管会话。会话劫持的目的是窃取有效系统的一个授权连接。如果黑客成功了,那么他就可以执行本地命令。如果他劫持了一个特权帐户,那么黑客就拥有了与特权用户一样的访问权限。会话劫持之所以会如此的危险是因为它允许控制现有的帐号,这使得攻击就几乎没有痕迹。两种可用于会话劫持的工具是Ettercap和Hunt。

阻止和检测会话劫持

  • 有两种主要的机制可以解决劫持的问题:阻止和检测。阻止的方法包括限制到达的连接数,以及配置网络拒绝来自因特网但却宣称来自于本地地址的数据包。

  • 加密也会有所帮助。如果你必须允许来自外部的可信任主机的连接,那么要使用Kerberos或IPsec进行加密。FTP和Telnet是相当脆弱的,我们需要使用更安全的协议。SecureShell(SSH)是一个很好的选择。SSH在本地和远程主机上建立一个加密的通道。使用IDS或IPS系统可以改进检测。使用交换机、诸如SSH的安全协议,以及更加随机的初始序列号都将增加会话劫持的难度。


表示层

表示层向上对应用层服务,向下接受来自会话层的服务。表示层为在应用过程之间传送的信息提供表示方法的服务,它只关心信息发出的语法和语义。

介绍

表示层位于OSI分层结构的第六层,它的主要作用之一是为异种机通信提供一种公共语言,以便能进行互操作。这种类型的服务之所以需要,是因为不同的计算机体系结构使用的数据表示法不同。与第五层提供透明的数据运输不同,表示层是处理所有与数据表示及运输有关的问题,包括转换、加密和压缩。每台计算机可能有它自己的表示数据的内部方法,例如,ASCII码与EBCDIC码,所以需要表示层协定来保证不同的计算机可以彼此理解。

例如,IBM主机使用EBCDIC编码,而大部分PC机使用的是ASCII码。在这种情况下,便需要表示层来完成这种转换。如果您想要用尽量少的词语来记住这第6层,那就是“一种通用的数据格式”。

  • 表示层为应用层提供的服务有三项内容
  • 语法转换:语法转换涉及代码转换和字符集的转换,数据格式的修改、数据结构操作的适配、数据压缩、数据加密等。
  • 语法选择:语法选择是提供初始选择的一种语法和随后修改这种选择的手段。
  • 联接管理:利用会话层提供的服务建立表示联接,管理在这一联接之上的数据运输和同步控制,以及正常或非正常地终止联接。

实际功能

  • 网络的安全和保密管理;文本的压缩与打包; 虚拟终端协议(VTP)。
  • 语法转换:将抽象语法转换成传送语法,并在对方实现相反的转换(即将传送语法转换成抽象语法)。涉及的内容有代码转换、字符转换、数据格式的修改,以及对数据结构操作的适应、数据压缩、加密等。
  • 语法协商:根据应用层的要求协商选用合适的上下文,即确定传送语法并传送。
  • 连接管理:包括利用会话层服务建立表示连接,管理在这个连接之上的数据运输和同步控制(利用会话层相应的服务),以及正常地或异常地终止这个连接。

通过前面的介绍,我们可以看出,会话层以下5层完成了端到端的数据传送,并且是可靠,无差错的传送.但是数据传送只是手段而不是目的,最终是要实现对数据的使用.由于各种系统对数据的定义并不完全相同,最易明白的例子是键盘,其上的某些键的含义在许多系统中都有差异.这自然给利用其它系统的数据造成了障碍.表示层和应用层就担负了消除这种障碍的任务.

对于用户数据来说,可以从两个侧面来分析,一个是数据含义被称为语义,另一个是数据的表示形式,称做语法.像文字,图形,声音,文种,压缩,加密等都属于语法范畴.表示层设计了3类15种功能单位,其中上下文管理功能单位就是沟通用户间的数据编码规则,以便双方有一致的数据形式,能够互相认识.

OSI表示层

它为服务,协议,文本通信符制定了DP8822,DP8823,DIS6937/2等一系列标准。表示层如同应用程序和网络之间的翻译官,主要解决用户信息的语法表示问题,即提供格式化的表示和转换数据服务。数据的压缩、解压、加密、解密都在该层完成。

工作原理

在表示层,数据将按照网络能理解的方案进行格式化;这种格式化也因所使用网络的类型不同而不同。表示层管理数据的解密与加密,如系统口令的处理如果在Internet上查询你银行账户,使用的即是一种安全连接。你的账户数据在发送前被加密,在网络的另一端,表示层将对接收到的数据解密。除此之外,表示层协议还对图片和文件格式信息进行解码和编码。

加密分为链路加密和端到端的加密。对于表示层,参与的加密属于端到端的加密,指信息由发送端自动加密,并进入TCP/IP数据包封装,然后作为不可阅读和不可识别的数据进入互联网。到达目的地后,再自动充足解密,成为可读数据。端到端加密面向网络高层主体,不对下层协议进行信息加密,协议信息以明文进行传送,用户数据在中央节点不需解密。


应用层

会话层(Session)是建立在传输层之上,利用传输层提供的服务,使应用建立和维持会话,并能使会话获得同步。会话层使用校验点可使通信会话在通信失效时从校验点继续恢复通信。这种能力对于传送大的文件极为重要。

简述

应用层(Application layer)是七层OSI模型的第七层。应用层直接和应用程序接口并提供常见的网络应用服务。应用层也向表示层发出请求。应用层是开放系统的最高层,是直接为应用进程提供服务的。其作用是在实现多个系统应用进程相互通信的同时,完成一系列业务处理所需的服务.其服务元素分为两类:公共应用服务元素CASE和特定应用服务元素SASE。

CASE提供最基本的服务,它成为应用层中任何用户和任何服务元素的用户,主要为应用进程通信,分布系统实现提供基本的控制机制;特定服务SASE则要满足一些特定服务,如文卷传送,访问管理,作业传送,银行事务,订单输入等。这些将涉及到虚拟终端,作业传送与操作,文卷传送及访问管理,远程数据库访问,图形核心系统,开放系统互连管理等等。

功能特点

属于应用的概念和协议发展得很快,使用面又很广泛,这给应用功能的标准化带来了复杂性和困难性。比起其它层来说,应用层需要的标准最多,但也是最不成熟的一层。但随着应用层的发展,各种特定应用服务的增多,应用服务的标准化开展了许多研究工作,ISO已制定了一些国际标准(IS)和国际标准草案(DIS)。因此,通过介绍一些具有通用性的协议标准,来描述应用层的主要功能及其特点。

主要是提供网络任意端上应用程序之间的接口。

运输访问和管理

文件运输与远程文件访问是任何计算机网络最常用的两种应用。文件运输与远程访问所使用的技术是类似的,都可以假定文件位于文件服务器机器上,而用户是在顾客机器上并想读、写而整个或部分地运输这些文件,支持大多数现代文件服务器的关键技术是虚拟文件存储器,这是一个抽象的文件服务器。虚拟文件存储给顾客提供一个标准化的接口和一套可执行的标准化操作。隐去了实际文件服务器的不同内部接口,使顾客只看到虚拟文件存储器的标准接口,访问和运输远地文件的应用程序,有可能不必知道各种各样不兼容的文件服务器的所有细节。

电子邮件

计算机网络上电子邮件的实现开始了人们通信方式的一场革命。电子邮件的吸引力,在于象电话一样,速度快,不要求双方都同时在场,而且还留下可供处理或多处投递的书写文电拷贝。

虚拟终端

由于种种原因,可以说终端标准化的工作已完全失败了。解决这一问题的OSI方法是,定义一种虚拟终端,它实际上只是代有实际终端的抽象状态的一种抽象数据结构。这种抽象数据结构可由键盘和计算机两者操作,并把数据结构的当前状态反映在显示器上。计算机能够查询此抽象数据结构,并能改变此抽象数据结构以使得屏幕上出现输出。

协议举例

DNS

DNS最早于1983由保罗.莫卡派乔斯(Paul Mockapetris)发明;原始的技术规范在882号因特网标准草案(RFC 882)中发布。1987年发布的第1034和1035号草案修正了DNS技术规范,并废除了之前的第882和883号草案。在此之后对因特网标准草案的修改基本上没有涉及到DNS技术规范部分的改动。

介绍:

DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器。DNS中保存了一张域名(domain name)和与之相对应的IP地址 (IP address)的表,以解析消息的域名。 域名是Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。域名是由一串用点分隔的名字组成的,通常包含组织名,而且始终包括两到三个字母的后缀,以指明组织的类型或该域所在的国家或地区。

把域名翻译成IP地址的软件称为域名系统,即DNS。它是一种管理名字的方法。这种方法是:分不同的组来负责各子系统的名字。系统中的每一层叫做一个域,每个域用一个点分开。所谓域名服务器(即Domain Name Server,简称Name Server)实际上就是装有域名系统的主机。它是一种能够实现名字解析(name resolution)的分层结构数据库。

  • 优点:

    之所以域名解析不需要很长时间,是因为上网接入商,比如北京电信,河南电信等,为了要加速用户打开网页的速度,通常在他们的DNS服务器中缓存了很多域名的DNS记录。这样这个接入商的用户要打开某个网页时,接入商的服务器不需要去查询域名数据库,而是把自己缓存中的DNS记录直接使用,从而加快用户访问网站的速度。这是优点。

  • 缺点

    • 缺点是上网接入商ISP的缓存会存储一段时间,只在需要的时候才更新,而更新的频率没有什么标准。有的ISP可能1小时更新一次,有的可能长达一两天才更新一次。
    • 所以新注册的域名一般来说解析反倒比较快。因为所有的ISP都没有缓存,用户访问时ISP都是要查询域名数据库,得到最新的DNS数据。
    • 而老域名如果更改了DNS记录,但世界各地的ISP缓存数据却并不是立即更新的。这样不同ISP下的不同用户,有的可以比较快的获取新的DNS记录,有的就要等ISP缓存的下一次更新。

HTTP

HTTP的发展是万维网协会(World Wide Web Consortium)和Internet工作小组(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,其中最著名的就是RFC 2616。RFC 2616定义了HTTP协议中一个现今被广泛使用的版本——HTTP 1.1。

介绍:
http是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII码形式给出;而消息内容则具有一个类似MIME的格式。

HTTP诞生之初主要是应用于WEB端内容获取,那时候内容还不像现在这样丰富,排版也没那么精美,用户交互的场景几乎没有。对于这种简单的获取网页内容的场景,HTTP表现得还算不错。但随着互联网的发展和WEB2.0的诞生,更多的内容开始被展示(更多的图片文件),排版变得更精美(更多的CSS),更复杂的交互也被引入(更多的jS)。

HTTP是基于客户/服务器模式,且面向连接的。典型的HTTP事务处理有如下的过程:

  1. 客户与服务器建立连接;
  2. 客户向服务器提出请求;
  3. 服务器接受请求,并根据请求返回相应的文件作为应答;
  4. 客户与服务器关闭连接。

在WWW中,“客户”与“服务器”是一个相对的概念,只存在于一个特定的连接期间,即在某个连接中的客户在另一个连接中可能作为服务器。基于HTTP协议的客户/服务器模式的信息交换过程,它分四个过程:建立连接、发送请求信息、发送响应信息、关闭连接。

FTP

FTP服务一般运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流,而端口21用于传输控制流,并且是命令通向ftp服务器的进口。当数据通过数据流传输时,控制流处于空闲状态。而当控制流,空闲很长时间后,客户端的防火墙,会将其会话置为超时,这样当大量数据通过防火墙时,会产生一些问题。此时,虽然文件可以成功的传输,但因为控制会话,会被防火墙断开;传输会产生一些错误。

FTP实现的目标:

  • 促进文件的共享(计算机程序或数据)鼓励间接或者隐式的使用远程计算机向用户屏蔽不同主机中各种文件存储系统(File system)的细节可靠和高效的传输数据缺点:
  • 密码和文件内容都使用明文传输,可能产生不希望发生的窃听。因为必须开放一个随机的端口以建立连接,当防火墙存在时,客户端很难过滤处于主动模式下的FTP流量。这个问题,通过使用被动模式的FTP,得到了很大解决。服务器可能会被告知连接一个第三方计算机的保留端口。此方式在需要传输文件数量很多的小文件时,效能不好FTP虽然可以被终端用户直接使用,但是它是设计成被FTP客户端程序所控制。
  • 运行FTP服务的许多站点都开放匿名服务,在这种设置下,用户不需要帐号就可以登录服务器,默认情况下,匿名用户的用户名是:“anonymous”。这个帐号不需要密码,虽然通常要求输入用户的邮件地址作为认证密码,但这只是一些细节或者此邮件地址根本不被确定,而是依赖于FTP服务器的配置情况。

应用层协议为应用程序之间的通信提供规则,为确保通信畅通,源主机和目的主机上所实现的应用层协议必须一致。

应用层协议的功能:

  1. 为通信双方定义过程
  2. 定义消息类型
  3. 定义消息的语法
  4. 定义任何信息性字段的含义
  5. 定义发送消息的方式和预期的响应
  6. 定义与下一层之间的交互

网络基础(二)OSI 网络七层各层功能 --难理解相关推荐

  1. 网络基础之OSI七层参考模型与TCP/IP五层模型

    目录 一.网络基础 ①什么是网络 ②网络类型 二.OSI七层参考模型 与TCP/IP五层 ①为什么分层 ②对比图 ③每层作用 ④每层常用设备及常用协议 ⑤路由器交换机介绍 ⑥常用协议介绍 三.数据封装 ...

  2. 【计算机网络基础】-- OSI的七层模型和TCP/IP的五层模型

    [计算机网络基础]-- OSI的七层模型和TCP/IP的五层模型   大家好,我是Lampard~~ 欢迎来到计算机网络基础系列的博客 OSI七层模型 开放式系统互联通信参考模型(英语:Open Sy ...

  3. 菜鸟学习笔记:Java提升篇9(网络1——网络基础、Java网络编程)

    菜鸟学习笔记:Java提升篇9(网络1--网络基础.Java网络编程) 网络基础 什么是计算机网络 OS七层模型 Java网络编程 InetAddress InetSocketAddress URL类 ...

  4. k8s网络基础学习-Calico网络插件

    第十课 k8s网络基础学习-Calico网络插件 tags: k8s网络 calico proxy arp bgp full mesh bgp RR 文章目录 第十课 k8s网络基础学习-Calico ...

  5. 【网络基础概念】: 网络相关硬件、TCP/IP四层协议模型、OSI七层协议模型。

    # 时人不识凌云木,直待凌云始道高 # 大家好,我是码辣,是一只正在努力的小小猿一枚,希望大家多多关照 ^v^. # 初次见面,希望大家能够喜欢.(如果你认为文章可以,别忘一键三连呀!嘿嘿. # 有什 ...

  6. 网络基础:ISO网络七层模型

    OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 . 完成中继功能的节点通常称为中继系统.在OSI七层模型中,处于 ...

  7. 网络基础(二)- TCP协议

    TCP协议 TCP全称为 "传输控制协议(Transmission Control Protocol").它最重要的是解决在传输层通信的过程中,解决网络通信过程中可靠性的问题.当然 ...

  8. 网络基础(二)之HTTP与HTTPS

    应用层 再谈 "协议" 协议是一种 "约定". socket api的接口, 在读写数据时, 都是按 "字符串" 的方式来发送接收的. 如果 ...

  9. 计算机网络基础之OSI网络分层大总结

    温故: 网络层在OSI七层中位于第三层,同时也是通信子网的最高层,物理层传输的单位是比特流,数据链路层传输的是数据帧,而网络层的传输单位是数据包,传输层的传输单位是报文.这里还要做一个比较,物理层要解 ...

最新文章

  1. 最全面详细讲解Oracle入门
  2. python作业网站_python大作业
  3. 【openCV学习笔记】在Mac上配置openCV步骤详解
  4. 【转】ABP源码分析六:依赖注入的实现
  5. 性能优化篇(4):千万别使用CSS表达式
  6. 在iframe中显示嵌套网页的指定部分
  7. (转)SQL Server数据库状态监控 - 作业状态
  8. 初识 asp.net mvc(二)
  9. c语言小学生入门自学,啊哈C语言:小学生坐在马桶上都可以读懂的C语言编程入门书 PDF 扫描版[20M]...
  10. 微信小程序实战十一:uni中集成ocr身份证识别功能
  11. 实分析royden第四版答案_实分析(原书第4版)_[美]H.L.罗伊登(H.L.Royden) P.M.菲茨帕特里克(P.M.Fitzpatrick)_9787111630845_...
  12. python控制安捷伦频谱仪_通过 python 对罗德施瓦茨矢网、信号源、频谱仪的控制...
  13. R 和 Python用于统计学分析,哪个更好?
  14. uni-app表情包实现
  15. 拼多多爆款商品采集工具
  16. python实现isprime函数_Python参数类型以及实现isOdd函数,isNum函数,multi函数,isPrime函数...
  17. 战略管理学习---第2章 战略目标
  18. android系统蓝牙音箱功能吗,Android蓝牙开发系列文章-其实你的手机可以变成一个蓝牙音箱...
  19. 我教女朋友学编程Html系列(6)—Html常用表单控件
  20. 畅通工程(并查集 C++)

热门文章

  1. [乐意黎转载]CentOS yum 源的配置与使用
  2. 我还是从前那个少年计算机版音乐,我还是从前那个少年原唱
  3. PS抠图——究其奥义!
  4. 三端或者3极气体放电管和二极气体放电管的差别:主要的对地放电,不是非地极的两个极性之间放电。二极适合差模类似485通信限制AB之间的电压,当然差模也可对地
  5. APT - Advanced Package Tool
  6. C语言易错点汇总(二)
  7. RFID 动态Q静态Q是什么意思
  8. 解释计算机概念BIOS,电脑BIOS的小常识
  9. 日本那些最受欢迎的产品是如何设计的?
  10. 广百集团数字化转型,Infortrend统一存储一站打通