网络互联参考模型(详解)

网络互联参考模型

1. 什么是协议

为了使数据可以在网络上从源传递到目的地,网络上所有设备需要“讲”相同的“语言”

描述网络通信中“语言”规范的一组规则就是协议

例如:两个人交谈,必须使用相同的语言,如果你说汉语,他说阿拉伯语……

1.gif

数据通信协议的定义

决定数据的格式和传输的一组规则或者一组惯例

2. 协议分层

网络通信的过程很复杂:

数据以电子信号的形式穿越介质到达正确的计算机,然后转换成最初的形式,以便接收者能够阅读

为了降低网络设计的复杂性,将协议进行了分层设计

分层设计的意义:

1) 用户服务层的模块设计可相对独立于具体的通信线路和通信硬件接口的差别

2) 而通信服务层的模块设计又可相对独立于具体用户应用要求的不同

例如:文件传输或电子邮件服务模块的设计,不必关心底层通信线路是光纤还是双绞线

邮局实例:

•    邮局对于写信人来说是下层

•    运输部门是邮局的下层

       --下层为上层提供服务

•    写信人与收信人之间使用相同的语言

•    邮局之间的约定

       --同层次之间使用相同的协议

2.gif

3. OSI的七层框架

 3.gif

数据的封装与解封装过程:

1)直观:

 4.gif

2)大体过程:

5.gif

3)协议描述

6.gif

4. TCP/IP协议参考模型

TCP/IP是20世纪70年代中期美国国防部为ARPANET开发的网络体系结构, TCP/IP是一组用于实现网络互连的通信协议。Internet网络体系结构以TCP/IP为核心。基于TCP/IP的参考模型将协议分成四个层次,它们分别是:网络访问层、网际互连层、传输层(主机到主机)、和应用层。

7.gif

4.1 TCP/IP各层对应的协议

 8.gif

4.2TCP/IP模型与OSI模型的比较

相同点:

1)两者都是以协议栈的概念为基础

2)协议栈中的协议彼此相互独立

3)下层对上层提供服务

不同点:

1)OSI是先有模型;TCP/IP是先有协议,后有模型

2)OSI适用于各种协议栈;TCP/IP只适用于TCP/IP网络

3)层次数量不同

4.3 TCP/IP各层介绍:

4.3.1 物理层-网络的基础

物理层是TCP/IP模型的最底层

1)功能:物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境, 它利用传输介质为数据链路层提供物理连接。为此,该层定义了物理链路的建立、维护和拆除有关的机械、电气、功能和规程特性。

  包括信号线的功能、“0”和“1”信号的电平表示、数据传输速率、物理连接器规格及其相关的属性等。物理层的作用是通过传输介质发送和接收二进制比特流。

9.gif

2)物理层的设备:

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

3)物理层规定的特性

为了传输信号,物理层规定了以下这些特性:

机械特性:指明通信实体间硬件连接接口的机械特点
电气特性:规定了在物理连接上导线的电气连接及有关的电路的特性 
功能特性:指明物理接口各条信号线的用途(用法)

规程特性:指明利用接口传输位流的全过程及各项用于传输的事件发生的合法顺序

4.3.2数据链路层——以太网:

数据链路可以粗略地理解为数据通道。

1)功能:数据链路层是为网络层提供服务的,解决两个相邻结点之间的通信问题,传送的协议数据单元称为数据帧。

数据帧中包含物理地址(又称MAC地址)、控制码、数据及校验码等信息。该层的主要作用是通过校验、确认和反馈重发等手段,将不可靠的物理链路转换成对网络层来说无差错的数据链路。

  此外,数据链路层还要协调收发双方的数据传输速率,即进行流量控制,以防止接收方因来不及处理发送方来的高速数据而导致缓冲器溢出及线路阻塞。

2)以太网工作在数据链路层

10.gif

4.3.3网络层

11.gif

定义了基于IP协议的逻辑地址

连接不同的媒介类型

选择数据通过网络的最佳路径

1) 功能:网络层是为传输层提供服务的,传送的协议数据单元称为数据包或分组。该层的主要作用是解决如何使数据包通过各结点传送的问题,即通过路径选择算法(路由)将数据包送到目的地。另外,为避免通信子网中出现过多的数据包而造成网络阻塞,需要对流入的数据包数量进行控制(拥塞控制)。当数据包要跨越多个通信子网才能到达目的地时,还要解决网际互连的问题。

2) 网络地址: 网络层地址由两部分地址组成:网络地址和主机地址。网络地址是全局唯一的。

4.3.4 传输层

IP层提供点到点的连接

传输层提供端到端的连接

 12.gif

1)功能:传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。该层向高层屏蔽了下层数据通信的细节,使高层用户看到的只是在两个传输实体间的一条主机到主机的、可由用户控制和设定的、可靠的数据通路。

传输层传送的协议数据单元称为段或报文。

主要有传输控制协议TCP(Transmission Control Protocol)和用户数据报协议UDP(UserDatagram Protocol),它们都是建立在IP协议的基础上

   传输控制协议TCP提供可靠的面向连接服务,用户数据报协议UDP提供简单的无连接服务

 13.gif

4.3.5 应用层

应用层对应于OSI参考模型的高层,为用户提供所需要的各种服务,例如:FTP、Telnet、DNS、SMTP等. 是用户与网络的接口。该层通过应用程序来完成网络用户的应用需求,如文件传输、收发电子邮件等。

应用层协议可分为3类:

 (1)依赖于TCP的应用协议,如远程终端协议Telnet,文件传输型的电子邮件协议SMTP,文件传输协议FTP,超文本传输协议HTTP,外部网关协议BGP等。

(2)依赖于UDP的协议,例如单纯文件传输协议TFTP,简单网络管理协议SNMP,域名系统DNS,内部网关协议RIP,动态主机配置协议DHCP和引导程序协议BOOTP等。

(3)依赖于TCP和UDP的协议,如通信用管理信息协议CMOT。当然,一些没有标准化的建立在TCP/ IP协议簇之上的用户应用程序(或专用程序)也属于应用层。

14.gif

5.网络连接的时间

TCP建立连接,根据网络环境不同,使用的时间如下:

1、本机的话,通信内容直接走内存。

2、局域网走网卡,然后通过交换机,指定到相应主机。tcp建立3次握手,一般耗0.6毫秒左右。

3、外网通过网卡->路由器->互联网。

15.png

转自:http://blog.csdn.net/hguisu/article/details/7249611

原创文章,作者:s19930811,如若转载,请注明出处:http://www.178linux.com/3094

(0)
s19930811s19930811
上一篇 2015-05-07
下一篇 2015-05-07

相关推荐

  • sed命令使用

    一、sed简介    sed是一种在线编辑器,一次处理一行内容。处理时,把当前处理的行存储在历史缓冲区,传给“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非使用重定向存储输出。sed主要用来自动编辑一个或…

    Linux干货 2016-08-12
  • ☞yum源的生成与配置{ local;cdrom;http;ftp;}

    ☞yum源的生成与配置{ local;cdrom;http;ftp;} 本文是继上一篇文章“CentOS程序安装的3种方式{ 源码包安装 | rpm包安装 | yum安装;}”的补充,上篇文章http://www.178linux.com/38812主要介绍了基于cdrom的yum源制作和配置以及归纳了详细的yum命令。本文继续介绍基于本地file、远程ht…

    Linux干货 2016-08-24
  • Mariadb数据库复制系列(四):复制过滤器的实现

       实验四:复制过滤器的实现 复制过滤器的作用是让从节点仅复制主节点的指定的库,或指定数据库的指定表,而不是全部复制。其配置方式有两种,一种是在主节点上配置,通过定义主节点只记录部分库或表产生的二进制日志时间来实现;一种是通过从节点上配置,当复制了主节点的所有的二进制日志数据后,在SQL线程执行时,只执行指定的库或表相关的二进制日志时间;一般采取在从节点上…

    Linux干货 2016-11-24
  • N22-℡浮生.若夢 ╮第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash ## declare -i log_user declare -i notlog_user for i …

    Linux干货 2016-12-12
  • Linux运维之基础拾遗

    博客具体内容请移步博客园: http://www.cnblogs.com/ITOps/p/6151766.html

    Linux干货 2016-12-09
  • centos6.9实现网卡bonding

    centos6.9实现网卡bonding 为什么要用bonding  将多块网卡配置同一IP地址实际中是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡被修改为相同的MAC地址,这样可以实现多块网卡绑定同一IP地址,对外提供服务。用于网络负载均衡和网络冗余。 工作模式  bonding的模式:0-6,即:7种模式,这里我们…

    2017-08-20