zoukankan      html  css  js  c++  java
  • 四、计算机网络概论

    一、OSI参考模型和TCP/IP模型

    1、物理层Physical Layer:

    物理层单位是比特,bit,任务是透明的传输比特流

    功能:物理媒体上为数据端设备透明的传输原始比特流

    物理层主要定义数据终端设备DTE,数据通信设备DCE,他们的逻辑连接方法。所有的物理层协议就走物理层接口标准

    物理层研究内容:规定接口的一些参数,机械的形状和尺寸,交换电路的数量和排列等。

    比如笔记本上的网线接口,就是物理层规定的内容。

    物理层还规定通信链路上的传输信号的意义和电气特征,比如物理层规定信号A代表数字0,那么当节点要传输数字0的时候就会发送信号A

    物理层的一些物理媒体:双绞线,光缆,无线通道。

    2、数据链路层(Data Link Layer)

    数据链路层的传输单位是帧(Frame)

    任务就是:把网络层传下来的IP数据报,组装成帧

    数据链路层的功能:成帧,差错控制,流量控制,传输控制

    典型的数据链路层协议:SDLC,HDLC,PPP,STP,帧中继

     3、网络层(Network Layer)

    网络层的传输单位:数据报(package)

    重点:通信子网的运行控制

    主要任务:把网络层的协议数据单元(分组)从源端传送到目的端。

    为分组交换网上的不同主机提供通信服务。

    关键问题:对分组进行路由选择,实现流量控制,拥塞控制,差错控制,网际互联

    节点A到节点B传输一个分组,有很多条可以选择路由。而网络层的作用就是根据网络的情况,利用相应的路由算法计算出

    一条合适的路径,让这个分组顺利的到达。

    流量控制:和数据链路层的流浪控制一样,都是协调A的发送速度和B的接收速度

    差错控制:通信的两个节点之间约定特定的检错规则,比如奇偶校验码,接收方根据这个规则检查接受的分组是否出现了差错,如果出现了差错,可以纠错就纠错,不能则丢弃。确保向上层提交的数据是无误的。

    拥塞控制:所有节点都处于来不来及接受分组,而要丢弃大量分组的情况的话,网络就处于拥塞状态。

    拥塞状态使得网络中两个节点无法正常通信,玩过曾采用一定的措施,缓解这种拥塞,就是拥塞控制。

    因特网是一个很大的互联网,由大量的异构网络通过路由器相互连接起来。

    因特网主要的网络层协议是无连接的网络协议IP,和许多路由选择协议

    因此网络层也叫网际层,或者叫IP层

    网络层协议:IP,IPX,ICMP,ARP,IGMP,RARP,OSPF

    4、传输层(Transport Layer)

    也叫运输层,传输单位是报文段(TCP),用户数据段(UDP)

    主要任务:负责主机中两个进程之间的通信

    功能:为端到端连接提供可靠地传输服务,为端到端提供流量的控制,差错控制,服务质量,数据传输管理等。

    数据链路层提供的是点对点PPP的通信,传输层提供的是端到端的通信。

    使用传输层的服务,高层用户可以直接进行端到端的数据传输,从而忽略通信子网的存在。

    通过传输层的屏蔽,高层用户看不到子网的交替变化,由于要给主机可以同时运行多个进程

    因此传输层具有复用和分用功能。

    复用:就是多个应用层的进程可以同时使用下面传输层的服务,多路复用

    分用:就是传输层把收到的信息分别交付给上面应用层的相应进程。

    传输层的协议::TCP/UDP

    5、会话层(Session Layer)

    会话层允许不同主机上各种进程之间的会话。会话层利用传输层提供的端对端的服务,向表示层提供他的增值服务。

    这种服务主要是向表示层实体或者用户进程提供建立并在连接上有序的传输数据,这就是会话。也叫建立同步(SYN)

    会话层负责管理主机间的会话进程:建立,管理,终止进程间的会话。

    会话层使用校验点可以让通信会话在通信失效的时候从校验点继续恢复通信,实现数据同步。

    6、表示层(Presentation Layer)

    主要用于处理两个通信系统中交换信息的表达方式。不同机器采用的编码和表示方式不同,使用的数据结构也不同。

    为了让不同的表示方法的数据和信息之间能相互交换,表示层采用抽象的数据压缩,加密和解密,是表示层可以提供数据表示变换功能。

    7、应用层(Application Layer)

    应用层是OSI参考模型的最高层,是用户和网络的界面。

    应用层为特定类型的网络应用提供访问OSI的环境手段。所以用户的实际应用多种多样,就要求应用不同的应用协议来解决不同类型的应用请求。所以应用层也是最复杂的一层,使用的协议也是最多的。

    典型的协议:FTP,SMTP(电子邮件协议),HTTP(万维网协议)

    二、TCP/IP模型

    网络接口层:对应OSI参考模型中的物理层和数据链路层

    网际层

    传输层

    应用层:对应OSI参考模型中的会话层,表示层和应用层

    1、网络接口层:功能类似OSI的物理层和数据链路层

    表示与物理网络的接口,主机必须使用某种协议与网络连接,以便于在上面传递IP分组。

    具体的物理网络可以是各种类型的局域网:以太网,令牌环网,令牌总线网等

    还可以是:电话网,SDH,X.25,帧中继,ATM等公共数据网络。

    网络接口层的责任是:从主机后者节点接收IP分组,把他们发送到指定的物理网络上。

    2、网际层(主机-主机):是TCP/IP体系的关键

    和OSI网络层的功能非常相似,网际层是将分组发往任何网络,并为它独立的选择合适的路由

    但是它不能保证各个分组有序的到达,各个分组的有序交付是由高层负责。

    网际层定义的标准分组格式和协议,也就是IP协议

    当前采用的IP协议是IPv4,下一个版本是IPv6

    3、传输层(应用-应用,进程-进程)

    功能和OSI的传输层类似,是让发送端和目的端主机上的对等实体可以进行会话。

    传输层的主要协议:

    传输控制协议(Transmission Control Protocol,TCP):面向连接的,数据传输的单位是报文段,能够提供可靠的交付。

    用户数据报协议(User Datagram Protocol,UDP):无连接的,数据传输单位是用户数据报,不能保证提供可靠的交付,只能尽最大努力交付。

    4、应用层(用户-用户):包含所有的高层协议

    虚拟终端协议(Telnet),文件传输协议(FTP),域名解析服务(DNS),电子邮件协议(SMTP),超文本传输协议(HTTP)

    三、OSI参考模型和TCP/IP模型的比较

    1、OSI 参考模型:精确定义3个概念:服务,协议,接口

    和面向对象的程序设计思想吻合,TCP/IP模型并没有加以区分

    2、OSI参考模型产生在协议发明之前,没有偏向于任何特定的协议,通用性良好。

    但是设计者在协议方面没有太多经验,不知道把哪些功能放到哪一层更好

    TCP/IP模型正好相反,首先出现的是协议,模型实际上是对已有的协议的描述。

    因此不会出现协议不能匹配模型的情况,但是模型不适合于其他任何非TCP/IP协议栈

    3、TCP/IP模型在设计的时候就考虑到多种异构网的互联问题

    将网际协议IP作为一个单独的重要层次。

    4、OSI参考模型在网络层支持无连接和面向连接的通信,但是在传输层仅有面向连接的通信。

    TCP/IP模型任务可靠性是端到端的问题,因此在网际层仅有一种无连接的通信模式,IP

    但是在传输层支持无连接和面向连接的两种模式,TCP,UDP

    四、通信协议栈进行通信的节点数据传输过程

    每个协议栈的最顶端都是一个面向用于的接口,下面各层是为通信服务的协议。

    用户要传输一个数据报的时候,通常是给用户能够理解的自然语言,然后通过应用层,自然语言会转化为用于通信的通信数据,通信数据到达传输层,作为传输层的数据部分也就是传输层的SDU,在加上运输层的控制信息,也就是运输层的PCI,然后组成运输层的PDU,然后交到网络层。

    运输层的PDU下放到网络层后,就成为了网络层的SDU,然后加上网络层的PCI,又组成了网络层的PDU.

    下放到数据链路层,就这样层层下方,层层包裹,最后形成的数据报通过通信线路传输,到达接收方节点协议栈。

    接收方然后逆向的一层一层的把包裹拆开,然后把收到的数据提交给用户。

    注:

    1、在OSI模型中,网络层支持,无连接和面向连接的通信。传输层只支持面向连接的通信。

    TCP/IP模型:网络只有无连接的通信,也就是IP。传输层支持无连接和面向连接,TCP,UDP

    流量控制:限制发送方发出数据流量让它发送速率不能超过接收方速率的一种技术

    流量控制功能可以在数据链路层以及以上各层使用。

    目前提供的流量控制功能主要是:数据链路层,网络层,传输层

    2、集线器是一个多端口的中继器,工作在物理层

    以太网交换机是一个多端口的网桥,工作在数据链路层

    3、协议是水平的,服务是垂直的

    协议是控制两个对等实体的通信规则

    服务是下层建立接口向上层提供服务。

    4、计算机网络和分布式计算机系统的区别?

    分布式系统:整个系统中的各个计算机对用户都是透明的,用户铜鼓哦输入命令就可以运行程序。但是用户并不知道是哪一台在为他运行程序。

    计算机网络:用户必须在想要运行程序的计算机上进行登录,然后按照计算机的地址,将程序通过计算机网络传送给计算机上去运行。最后,根据用户的命令将结果传送到指定的计算机。

    主要的区别还是软件不同。

    5、Internet使用的IP协议是无连接的,也就是传输的时候是不可靠的

    6、端到端通信和点到点通信的区别

    本质上:物理层,数据链路层和网络层组成的通信子网为网络环境中的主机提供点到点服务

    传输层为网络层的主机提供端到端的通信

    端:用户程序的端口,端口号标识了应用层不同的进程

  • 相关阅读:
    Serialization and deserialization are bottlenecks in parallel and distributed computing, especially in machine learning applications with large objects and large quantities of data.
    Introduction to the Standard Directory Layout
    import 原理 及 导入 自定义、第三方 包
    403 'Forbidden'
    https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
    These interactions can be expressed as complicated, large scale graphs. Mining data requires a distributed data processing engine
    mysqldump --flush-logs
    mysql dump 参数
    mysql dump 参数
    如果是在有master上开启了该参数,记得在slave端也要开启这个参数(salve需要stop后再重新start),否则在master上创建函数会导致replaction中断。
  • 原文地址:https://www.cnblogs.com/drq1/p/9674887.html
Copyright © 2011-2022 走看看