zoukankan      html  css  js  c++  java
  • (转载)OSI七层参考模型和TCP/IP四层参考模型

     

    网络模型概念浅析

    网络模型一般是指OSI七层参考模型和TCP/IP四层参考模型

    #只是一种设计==模型#

    Open System Interconnect的缩写,意为开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互联模型。该体系结构标准定义了网络互连的七层框架(物理层数据链路层网络层传输层会话层表示层应用层),即ISO开放系统互连参考模型。在这一框架下进一步详细规定了每一层的功能,以实现开放系统环境中的互连性、互操作性和应用的可移植性。

    ISO/OSI参考模型并没有提供一个可以实现的方法。ISO/OSI参考模型只是描述了一些概念,用来协调进程间通信标准的制定。在OSI范围内,只有 在各种的协议是可以被实现的而各种产品只有和OSI的协议相一致才能互连。这也就是说,OSI参考模型并不是一个标准,而只是一个在制定标准时所使用的概 念性的框架。

    下面是每一层的功能:

    (1)物理层(Physical Layer)
    物理层是OSI参考模型的最低层,它利用传输介质为数据链路层提供物理连接。它主要关心的是通过物理链路从一个节点 向另一个节点传送比特流,物理链路可能是铜线、卫星、微波或其他的通讯媒介。它关心的问题有:多少伏电压代表1?多少伏电压代表0?时钟速率是多少?采用 全双工还是半双工传输?总的来说物理层关心的是链路的机械、电气、功能和规程特性。
    (2)数据链路层(Data Link Layer)
    数据链路层是为网络层提供服务的,解决两个相邻结点之间的通信问题,传送的协议数据单元称为数据帧
    数据帧中包含物理地址(又称MAC地址)、控制码、数据及校验码等信息。该层的主要作用是通过校验、确认和反馈重发等手段,将不可靠的物理链路转换成对网络层来说无差错的数据链路
    此外,数据链路层还要协调收发双方的数据传输速率,即进行流量控制,以防止接收方因来不及处理发送方来的高速数据而导致缓冲器溢出及线路阻塞。
    (3)网络层(Network Layer)
    网络层是为传输层提供服务的,传送的协议数据单元称为数据包或分组。该层的主要作用是解决如何使数据包通过各结点传送的问题,即通过路径选择算法(路由)将数据包送到目的地。另外,为避免通信子网中出现过多的数据包而造成网络阻塞,需要对流入的数据包数量进行控制(拥塞控制)。当数据包要跨越多个通信子网才能到达目的地时,还要解决网际互连的问题。
    (4)传输层(Transport Layer)
    传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。该层向高层屏蔽了下层数据通信的细节,使高层用户看到的只是在两个传输实体间的一条主机到主机的、可由用户控制和设定的、可靠的数据通路
    传输层传送的协议数据单元称为段或报文。
    (5)会话层(Session Layer)
    会话层主要功能是管理和协调不同主机上各种进程之间的通信(对话),即负责建立、管理和终止应用程序之间的会话。会话层得名的原因是它很类似于两个实体间的会话概念。例如,一个交互的用户会话以登录到计算机开始,以注销结束。
    (6)表示层(Presentation Layer)
    表示层处理流经结点的数据编码的表示方式问题,以保证一个系统应用层发出的信息可被另一系统的应用层读出。如果必要,该层可提供一种标准表示形式,用于将计算机内部的多种数据表示格式转换成网络通信中采用的标准表示形式。数据压缩和加密也是表示层可提供的转换功能之一。
    (7)应用层(Application Layer)
    应用层是OSI参考模型的最高层,是用户与网络的接口。该层通过应用程序来完成网络用户的应用需求,如文件传输、收发电子邮件等。
     
     
    接受数据 从1到7运行 相反 发送数据则是从7-1运行

    比喻:

    7 应用层:老板
    6 表示层:相当于公司中演示稿老板、替老板写信的助理
    5 会话层:相当于公司中收寄信、写信封与拆信封的秘书
    4 传输层:相当于公司中跑邮局的送信职员
    3 网络层:相当于邮局中的排序工人
    2 数据链路层:相当于邮局中的装拆箱工人
    1 物理层:相当于邮局中的搬运工人[1]
    OSI模型用途相当广泛。
    比如交换机集线器路由器等很多网络设备的设计都是参照OSI模型设计的。 
     
     
     
     
    上面我们简单的说明了7层体系的OSI参考模型,为了方便起见,我们常常把上面的7个层次分为低层与高层。低层为1~4层,是面向通信的,高层为5~7层,是面向信息处理的。
     
     
    上面简单的了解了OSI 的概念 。下面来说一下TCP/IP四层模型
     
     
     
    ISO指定的OSI七层模型过于庞大复杂 ,于是就有了TCP/IP模型。

    TCP/IP 指传输控制协议/网际协议 (Transmission Control Protocol / Internet Protocol)。

    又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台电脑规定一个地址

    .

     
     

    在 TCP/IP 内部

    在 TCP/IP 中包含一系列用于处理数据通信的协议:

    • TCP (传输控制协议) - 应用程序之间通信
    • UDP (用户数据包协议) - 应用程序之间的简单通信
    • IP (网际协议) - 计算机之间的通信(ip地址由32位二进制表示。用点分开的每个字节的数值范围是0~255,如202.116.0.1,这种书写方法叫做点数表示法)
    • ICMP (因特网消息控制协议) - 针对错误和状态
    • DHCP (动态主机配置协议) - 针对动态寻址
     

    TCP 使用固定的连接

    TCP 用于应用程序之间的通信。

    当应用程序希望通过 TCP 与另一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在双方“握手”之后,TCP 将在两个应用程序之间建立一个全双工 (full-duplex) 的通信。

    这个全双工的通信将占用两个计算机之间的通信线路,直到它被一方或双方关闭为止。

    UDP 和 TCP 很相似,但是更简单,同时可靠性低于 TCP。

    IP 是无连接的

    IP 用于计算机之间的通信。

    IP 是无连接的通信协议。它不会占用两个正在通信的计算机之间的通信线路。这样,IP 就降低了对网络线路的需求。每条线可以同时满足许多不同的计算机之间的通信需要。

    通过 IP,消息(或者其他数据)被分割为小的独立的包,并通过因特网在计算机之间传送。

    IP 负责将每个包路由至它的目的地。

    IP 路由器

    当一个 IP 包从一台计算机被发送,它会到达一个 IP 路由器。

    IP 路由器负责将这个包路由至它的目的地,直接地或者通过其他的路由器。

    在一个相同的通信中,一个包所经由的路径可能会和其他的包不同。而路由器负责根据通信量、网络中的错误或者其他参数来进行正确地寻址。

     

    TCP/IP

    TCP/IP 意味着 TCP 和 IP 在一起协同工作。

    TCP 负责应用软件(比如你的浏览器)和网络软件之间的通信。

    IP 负责计算机之间的通信。

    TCP 负责将数据分割并装入 IP 包,然后在它们到达的时候重新组合它们。

    IP 负责将包发送至接受者
     

    在全世界,数量庞大的 DNS 服务器被连入因特网。DNS 服务器负责将域名翻译为 TCP/IP 地址,同时负责使用新的域名信息更新彼此的系统。

    当一个新的域名连同其 TCP/IP 地址一同注册后,全世界的 DNS 服务器都会对此信息进行更新。

    TCP/IP 是不同的通信协议的大集合。

    协议族

    TCP/IP 是基于 TCP 和 IP 这两个最初的协议之上的不同的通信协议的大的集合。

    TCP - 传输控制协议

    TCP 用于从应用程序到网络的数据传输控制。

    TCP 负责在数据传送之前将它们分割为 IP 包,然后在它们到达的时候将它们重组。

    IP - 网际协议

    IP 负责计算机之间的通信。

    IP 负责在因特网上发送和接收数据包。

    HTTP - 超文本传输协议

    HTTP 负责 web 服务器与 web 浏览器之间的通信。

    HTTP 用于从 web 客户端(浏览器)向 web 服务器发送请求,并从 web 服务器向 web 客户端返回内容(网页)。

    HTTPS - 安全的 HTTP

    HTTPS 负责在 web 服务器和 web 浏览器之间的安全通信。

    作为有代表性的应用,HTTPS 会用于处理信用卡交易和其他的敏感数据。

    SSL - 安全套接字层

    SSL 协议用于为安全数据传输加密数据。

    SMTP - 简易邮件传输协议

    SMTP 用于电子邮件的传输。

    MIME - 多用途因特网邮件扩展

    MIME 协议使 SMTP 有能力通过 TCP/IP 网络传输多媒体文件,包括声音、视频和二进制数据。

    IMAP - 因特网消息访问协议

    IMAP 用于存储和取回电子邮件。

    POP - 邮局协议

    POP 用于从电子邮件服务器向个人电脑下载电子邮件。

    FTP - 文件传输协议

    FTP 负责计算机之间的文件传输。

    NTP - 网络时间协议

    NTP 用于在计算机之间同步时间(钟)。

    DHCP - 动态主机配置协议

    DHCP 用于向网络中的计算机分配动态 IP 地址。

    SNMP - 简单网络管理协议

    SNMP 用于计算机网络的管理。

    LDAP - 轻量级的目录访问协议

    LDAP 用于从因特网搜集关于用户和电子邮件地址的信息。

    ICMP - 因特网消息控制协议

    ICMP 负责网络中的错误处理。

    ARP - Address Resolution Protocol

    ARP - 用于通过 IP 来查找基于 IP 地址的计算机网卡的硬件地址。

    RARP - Reverse Address Resolution Protocol

    RARP 用于通过 IP 查找基于硬件地址的计算机网卡的 IP 地址。

    BOOTP - Boot Protocol

    BOOTP 用于从网络启动计算机。

    PPTP - 点对点隧道协议

    PPTP 用于私人网络之间的连接(隧道)

    一个例子:

    电子邮件是 TCP/IP 最重要的应用之一。

    你不会用到...

    当你写邮件时,你不会用到 TCP/IP。

    当你写邮件时,你用到的是电子邮件程序,例如莲花软件的 Notes,微软公司出品的 Outlook,或者 Netscape Communicator 等等。

    邮件程序会用到...

    你的电子邮件程序使用不同的 TCP/IP 协议:

    • 使用 SMTP 来发送邮件
    • 使用 POP 从邮件服务器下载邮件
    • 使用 IMAP 连接到邮件服务器

    SMTP - 简单邮件传输协议

    SMTP 协议用于传输电子邮件。SMTP 负责把邮件发送到另一台计算机。

    通常情况下,邮件会被送到一台邮件服务器(SMTP 服务器),然后被送到另一台(或几台)服务器,然后最终被送到它的目的地。

    SMTP 也可以传送纯文本,但是无法传输诸如图片、声音或者电影之类的二进制数据。

    SMTP 使用 MIME 协议通过 TCP/IP 网络来发送二进制数据。MIME 协议会将二进制数据转换为纯文本。

    POP - 邮局协议

    POP 协议被邮件程序用来取回邮件服务器上面的邮件。

    假如你的邮件程序使用 POP,那么一旦它连接上邮件服务器,你的所有的邮件都会被下载到邮件程序中(或者称之为邮件客户端)。

    IMAP - 因特网消息访问协议

    与 POP 类似,IMAP 协议同样被邮件程序使用。

    IMAP 协议与 POP 协议之间的主要差异是:如果 IMAP 连上了邮件服务器,它不会自动地将邮件下载到邮件程序之中。

    IMAP 使你有能力在下载邮件之前先通过邮件服务器端查看他们。通过 IMAP,你可以选择下载这些邮件或者仅仅是删除它们。比方说你需要从不同的位置访问邮件服务器,但是仅仅希望回到办公室的时候再下载邮件,IMAP 在这种情况下会很有用

     
     
     
    TCP/IP结构对应OSI
    TCP/IP
    OSI
    应用层
    应用层
    表示层
    会话层
    主机到主机层(TCP)(又称传输层)
    网络层(IP)(又称互联层)
    网络接口层(又称链路层)
    数据链路层
    物理层
  • 相关阅读:
    ejbca 无其他数据库支持情况下的安装
    VC巨资注入开源软件产业 商业模式仍需摸索
    EJBCA 3.0 开源CA系统软件初探
    ejbca安装指南
    Navicat for ORACLE 导出数据
    cannot create oci environment/Navicat for oracle
    EL表达式 (详解)
    10个步骤让你成为高效的Web开发者
    jquery.validationEngine+ajax验证
    让您的 web 应用程序飞起来
  • 原文地址:https://www.cnblogs.com/bluewelkin/p/3579821.html
Copyright © 2011-2022 走看看