OSI TCP/IP介绍

一:网络协议
    在计算机网络系统中,为了保证通信双方能正确而自动地进行数据通信,针对通信过程的各种情况,制定了一整套约定——网络系统的通信协议。网络协议是计算机网络不可缺少的组成部分。
    1: 协议的定义
      简单地说,协议是指通信双方必须遵循的、控制信息交换的规则的集合,是一套语义和语法规则,用来规定有关功能部件在通信过程中的操作,它定义了数据发送和接收工作中必经的过程。协议规定了网络中使用的格式、定时方式、顺序和检错。
    2: 协议的组成
      一般说,一个网络协议主要由语法、语义和同步三个要素组成。
      语法指数据与控制信息的结构或格式,确定通信时采用的数据格式,编码及信号电平等。
      语义由通信过程的说明构成,它规定了需要发出何种控制信息完成何种动作以及做出何种应答,对发布请求、执行动作、以及返回应答予以解释,并确定用于协调和差错处理的控制信息。
      同步是对事件实现顺序的详细说明,指出事件的顺序以及速度匹配。
    3: 协议的特点
        现代计算机网络采用高度结构化的设计和实现技术,是用分层或协议分层来组织的。每一层和相邻层有接口,较低层通过接口向它的上一层提供服务,但这一服务的实现细节对上层是屏蔽的。较高层又是在较低层提供的低级服务的基础上实现更高级的服务。
        网络系统体系结构是有层次的,通信协议也被分为多个层次,在每个层次内又可分成若干子层次,协议各层次有高低之分。
        只有通信协议有效,才能实现系统内各种资源共享。如果通信协议不可靠就会造成通信混乱和中断。
        在设计和选择协议时,不仅要考虑网络系统的拓扑结构、信息的传输量、所采用的传输技术、数据存取方式,还要考虑到其效率、价格和适应性等问题。

二:OSI参考模型
    1: OSI参考模型的分层结构
        在这个OSI七层模型中,每一层都为其上一层提供服务、并为其上一层提供一个访问接口或界面。
        不同主机之间的相同层次称为对等层。如主机A中的表示层和主机B中的表示层互为对等层、主机A中的会话层和主机B中的会话层互为对等层等。
        对等层之间互相通信需要遵守一定的规则,如通信的内容、通信的方式,我们将其称为协议(Protocol)。
        我们将某个主机上运行的某种协议的集合称为协议栈。主机正是利用这个协议栈来接收和发送数据的。
        OSI参考模型通过将协议栈划分为不同的层次,可以简化问题的分析、处理过程以及网络系统设计的复杂性。
        OSI参考模型的提出是为了解决不同厂商、不同结构的网络产品之间互连时遇到的不兼容性问题。但是该模型的复杂性阻碍了其在计算机网络领域的实际应用。
    2: OSI参考模型中各层的作用
        1):物理层(Physical Layer)
        物理层规定了激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性,如指定电压大小、线路速率和电缆的引脚数。
        简单的说,物理层确保原始的数据可在各种物理媒体上传输。
        该层为上层协议提供了一个传输数据的物理媒体。
        在这一层,数据的单位称为比特(bit)。

        属于物理层定义的典型规范代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等。
        设备:RJ-45 、各种电缆 、串口 、并口 、接线设备。
        网络接口卡(NIC)来实现。它的接收器,通过的介质由 NIC 附带。由于网络由串行端口组成,物理层也可以包括低层网络软件定义如何将串行比特流分解成数据包。
        关键字:网卡、比特、中继器、集线器。

        2):数据链路层(Data Link Layer)
        使用 MAC 地址提供对介质的访问。
        执行错误检测,但不纠正。
        数据链路层位于物理层与网络层之间。它将物理层提供的可能出错的物理连接改造成逻辑上无差错的数据链路,并对物理层的原始数据进行数据封装 .7.Qx 。
        数据链路层中的数据封装是指:封装的数据信息中,包含了地址段和数据段。地址段含有发送节点和接收节点的地址,控制段用来表示数格连接帧的类型,数据段包含实际要传输的数据。
        数据链路层主要功能在两个网络实体之间提供数据链路连接的建立、维持和释放管理。构成数据链路数据单元(帧),并对帧定界、同步、收发顺序的控制。
        传输过程中的流量控制(Flow 57g Control),差错检测(Error Detection)和差错控制(Error control)等方面,只提供导线的一端到另一端的数据传输 。

        在这一层,数据的单位称为帧(frame)。
        协议:ATM、IEEE 802.2、帧中继(Frame Relay)、HDLC(High-Level Data Link Control,HDLC)等。
        关键字:帧,交换机,网桥。

        3):网络层(Network Layer)
        为传输层的数据传输提供建立、维护和终止网络连接的手段,把上层来的数据组织成数据包在节点之间进行交换传送,并且负责路由控制和拥塞控制。
        提供逻辑寻址,以便进行路由选择。网络层提供路由和寻址的功能,使两终端系统能够互连,并且具有一定的拥塞控制和流量控制的能力。
        TCP/IP 协议体系中的网络层功能由IP协议规定和实现,故又称 IP 层。

        IP 寻址和子网,实现路径的判断。
        ICMP 网际控制报文协议,回应的内容重点掌握。
        ARP 地址解析协议
        RARP 反向地址解析协议
        IP 路由选择配置任务:
        RIP 的配置与使用:
        RIP 协议
        协议:IP、IPX 、X.25 aXuh
        设备:路由器(Router) 、三层交换机(Switch)
        关键字:报文,路由器。

        4):传输层(Transport Layer)
        提供可靠或不可靠的传输。
        在重传之前执行错误纠正。
        功能:分段,建立连接,传输数据,窗口技术,确认技术 。
        传输层是 OSI 中最重要,最关键的一层,是唯一负责总体的数据传输和数据控制的一层.传输层提供端到端的交换数据的机制.传输层对会话层等高三层提供可靠的传输服务,对网络层提供可靠的目的地站点信息.

        传输层的主要功能:
        为端到端连接提供可靠的传输服务.
        为端到端连接提供流量控制,差错控制,服务质量(Quality of Service,QoS)等管理服务.
        具有传输层功能的协议:TCP 、SPX 、NetBIOS

        5):会话层(Session Layer)
        会话层管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步。
        会话层协议的代表包括:NetBIOS、ZIP(AppleTalk区域信息协议)等。

        6):表示层(Presentation Layer)
        表示层对上层数据或信息进行变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。表示层的数据转换包括数据的加密、压缩、格式转换等。
        表示层协议的代表包括:ASCII、ASN.1、JPEG、MPEG等。
        表示层的主要功能:数据语法转换 、语法表示 连接管理 、数据处理 、数据加密 、数据压缩 mmw

        7):应用层(Application Layer)
        应用层为操作系统或网络应用程序提供访问网络服务的接口,提供用户接口。
        应用层协议的代表包括:Telnet、FTP、HTTP、SNMP等

    3: OSI参考模型中的数据封装过程
        DATA 当一台主机需要传送用户的数据(DATA)时,数据首先通过应用层的接口进入应用层。
        AH+DATA 在应用层,用户的数据被加上 应用层的报头(Application Header,AH),形成应用层协议数据单元(Protocol Data Unit,PDU),然后被递交到下一层-表示层。
        PH+AH+DATA 表示层并不"关心"上层-应用层的数据格式而是把整个应用层递交的数据包看成是一个整体进行封装,即加上表示层的报头(Presentation Header,PH)。然后,递交到下层-会话层。
        SH+PH+AH+DATA 会话层给上层递交下来的数据加上自己的报头。会话层报头(Session Header,SH)
        TH+SH+PH+AH+DATA 传输层给上层递交下来的数据加上自己的报头。传输层报头(Transport Header,TH)
        NH+TH+SH+PH+AH+DATA 网络层给上层递交下来的数据加上自己的报头。网络层报头(Network Header,NH)
        DH+NH+TH+SH+PH+AH+DATA+DT 数据链路层给上层递交下来的数据加上自己的报头。数据链路层报头(Data link Header,DH),同时数据链路层还要给网络层递交的数据加上数据链路层报尾(Data link Termination,DT)形成最终的一帧数据。

        当一帧数据通过物理层传送到目标主机的物理层时,该主机的物理层把它递交到上层-数据链路层。数据链路层负责去掉数据帧的帧头部DH和尾部DT(同时还进行数据校验)。如果数据没有出错,则递交到上层-网络层。
        同样,网络层、传输层、会话层、表示层、应用层也要做类似的工作。
        最终,原始数据被递交到目标主机的具体应用程序中。

三:TCP/IP参考模型
    1:TCP/IP参考模型的层次结构
        TCP/IP参考模型分为四个层次:应用层、传输层、网络互连层和主机到网络层
        1):主机到网络层
        实际上TCP/IP参考模型没有真正描述这一层的实现,只是要求能够提供给其上层-网络互连层一个访问接口,以便在其上传递IP分组。
        由于这一层次未被定义,所以其具体的实现方法将随着网络类型的不同而不同。

        2、网络互连层
        网络互连层是整个TCP/IP协议栈的核心。它的功能是把分组发往目标网络或主机。同时,为了尽快地发送分组,可能需要沿不同的路径同时进行分组传递。因此,分组到达的顺序和发送的顺序可能不同,这就需要上层必须对分组进行排序。
        网络互连层定义了分组格式和协议,即IP协议(Internet Protocol)。
        网络互连层除了需要完成路由的功能外,也可以完成将不同类型的网络(异构网)互连的任务。除此之外,网络互连层还需要完成拥塞控制的功能。

        3、传输层
        在TCP/IP模型中,传输层的功能是使源端主机和目标端主机上的对等实体可以进行会话。在传输层定义了两种服务质量不同的协议。即:传输控制协议 TCP(transmission control protocol)和用户数据报协议UDP(user datagram protocol)。
        TCP协议是一个面向连接的、可靠的协议。它将一台主机发出的字节流无差错地发往互联网上的其他主机。在发送端,它负责把上层传送下来的字节流分成报文段并传递给下层。在接收端,它负责把收到的报文进行重组后递交给上层。TCP协议还要处理端到端的流量控制,以避免缓慢接收的接收方没有足够的缓冲区接收发送方发送的大量数据。
        UDP协议是一个不可靠的、无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。

        4、应用层
        TCP/IP模型将OSI参考模型中的会话层和表示层的功能合并到应用层实现。
        应用层面向不同的网络应用引入了不同的应用层协议。其中,有基于TCP协议的,如文件传输协议(File Transfer Protocol,FTP)、虚拟终端协议(TELNET)、超文本链接协议(Hyper Text Transfer Protocol,HTTP),也有基于UDP协议的,如简.

    2: TCP/IP报文格式
        1):IP报文格式
        IP协议是TCP/IP协议族中最为核心的协议。
        它提供不可靠、无连接的服务,也即依赖其他层的协议进行差错控制。
        在局域网环境,IP协议往往被封装在以太网帧中传送。
        而所有的TCP、UDP、ICMP、IGMP数据都被封装在IP数据报中传送。
        2):TCP数据段格式
        TCP是一种可靠的、面向连接的字节流服务。
        源主机在传送数据前需要先和目标主机建立连接。
        然后,在此连接上,被编号的数据段按序收发。
        同时,要求对每 个数据段进行确认,保证了可靠性。
        如果在指定的时间内没有收到目标主机对所发数据段的确认,源主机将再次发送该数据段。
        3):UDP数据段格式
        UDP是一种不可靠的、无连接的数据报服务。
        源主机在传送数据前不需要和目标主机建立连接。数据被冠以源、目标端口号等UDP报头字段后直接发往目的主机。
        这时,每个数据段的可靠性依靠上层协议来保证。在传送数据较少、较小的情况下,UDP比TCP更加高效。

    3: 套接字
        在每个TCP、UDP数据段中都包含源端口和目标端口字段。
        有时,我们把一个IP地址和一个端口号合称为一个套接字(Socket),而一个套接字对(Socket pair)可以唯一地确定互连网络中每个TCP连接的双方(客户IP地址、客户端口号、服务器IP地址、服务器端口号)。

        不同的应用层协议可能基于不同的传输层协议,
        如FTP、TELNET、SMTP协议基于可靠的TCP协议。
        TFTP、SNMP、RIP基于不可靠的UDP协议。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值