网络参考模型与协议

本文详细介绍了OSI参考模型的七层结构,包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层的功能。此外,还探讨了网络层次划分的TCP/IP模型,并解析了TCP三次握手和四次断开过程。同时,提到了端口的作用、分类和常见用途,以及TCP和UDP的区别。
摘要由CSDN通过智能技术生成

1、参考模型的概念与构成

(1)网络术语中的参考模型指的是OSI参考模型,由ISO(国际标准化组织)制定的一套普遍适用的规范集合,以使得全球范围的计算机平台可进行开放式通信。

ISO创建了一个有助于开发和理解计算机的通信模型,即开放系统互联OSI参考模型。OSI参考模型将网络结构划分为七层:即物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。每一层均有自己的一套功能集,并与紧邻的上层和下层交互作用。在顶层,应用层与用户使用的软件进行交互。在OSI参考模型的底端是携带信号的网络电缆和连接器。总的说来,在顶端与底端之间的每一层均能确保数据以一种可读、无错、排序正确的格式被发送。OSI参考模型是对发生在网络中两节点之间过程的理论化描述。 

(2)参考模型的构成

物理层

物理层是OSI参考模型的最低层或第一层,该层包括物理联网媒介,如电缆连线连接器。物理层的协议产生并检测电压以便发送和接收携带数据的信号。在你的桌面PC上插入网络接口卡,你就建立了计算机连网的基础。换言之,你提供了一个物理层。尽管物理层不提供纠错服务,但它能够设定数据传输速率并检测数据出错率。网络物理问题,如电线断开,将影响物理层。同样地,如果你没有将网络接口卡在计算机的电路板中插得足够深,计算机也将在物理层出现网络问题。

IEEE已制定物理层协议的标准,特别IEEE802规定了以太网和令牌环网应如何处理数据。术语“第一层协议”和“物理层协议”,均是指描述电信号如何被放大及通过电线传输的标准。 

数据链路层

数据链路层是OSI参考模型的第二层,它控制网络层与物理层之间的通信。它的主要功能是将从网络层接收到的数据分割成特定的可被物理层传输的帧。帧是用来移动数据的结构包,它不仅包括原始数据,或称“有效荷载”,还包括发送方和接收方的网络地址以及纠错和控制信息。其中的地址确定了帧将发送到何处,而纠错和控制信息则确保帧无差错到达。

数据链路层的功能独立于网络和它的节点和所采用的物理层类型,由于它们要对帧解码并使用帧信息将数据发送到正确的接收方,所以它们是工作在数据链路层的。

网络层

网络层,即OSI参考模型的第三层,其主要功能是将网络地址翻译成对应的物理地址,并决定如何将数据从发送方路由到接收方。网络层通过综合考虑发送优先权、网络拥塞程度、服务质量以及可选路由的花费来决定从一个网络中节点A到另一个网络中节点B的最佳路径。

由于网络层处理路由,而路由器因为即连接网络各段,并智能指导数据传送,属于网络层。在网络中,“路由”是基于编址方案、使用模式以及可达性来指导数据的发送。网络层协议还能补偿数据发送、传输以及接受的设备能力的不平衡性。为完成这一任务,网络层对数据包进行分段和重组。分段即是指当数据从一个能处理较大数据单元的网络段传送到位能处理较小数据单元的网络段是,网络层减小数据单元的大小的过程。

传输层

传输层主要负责确保数据可靠、顺序、无错地从A点到传输到B点。因为如果没有传输层,数据将不能接受发给验证或解释,所以,传输层常被认为是OSI参考模型中最重要的一层。传输协议同时进行流量控制或是基于接收方可接受数据的快慢程度规定适当的发送速率。

除此之外,传输层按照网络能处理的最大尺寸将较长的数据包进行强制分割,例如,以太网无法接受1500字节的数据包。发送方节点的传输层将数据分割成较小的数据片,同时对每一数据片安排一系列好,以便数据到达接收方节点的传输层时,能以正确的顺序重组。该过程即被称为排序。

会话层

会话层负责在网络中的两节点之间建立和维持通信。术语“会话”指在两个实体之间建立数据交换的连接;常用于表示终端与主机之间的通信。所谓终端时指将几乎不具有自己的处理能力或硬盘容量,而只依靠主机提供应用程序和数据处理服务的一点之间的对话,决定通信是否被中断以及通信中断时决定从何处重新发送。

表示层

表示层如同应用程序和网络之间的翻译官,在表示层,数据将按照网络能理解的方案进行格式化;这种格式化也因所使用网络的类型不同而不同。表示层管理数据的解密与加密,表示层协议还对图片和文件格式信息进行解码和编码。

应用层

OSI参考模型的顶端也即第七层是应用层。应用层负责对软件提供接口以使程序能适应网络服务。术语“应用层”并不是指运行在网络上的某个特别应用程序。应用层提供的服务包括文件传输、文件管理以及电子邮件的信息处理。 

2、网络层次划分

为了使不同计算机厂家生产的计算机能够相互通信,以便在更大的范围内建立计算机网络,国际标准化组织(ISO)在1978年提出了“开放系统互联参考模型”,即著名的OSI/RM模型(Open System Interconnection/Reference Model)。它将计算机网络体系结构的通信协议划分为七层,自下而上依次为:物理层(Physics Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(Session Layer)、表示层(Presentation Layer)、应用层(Application Layer)。其中第四层完成数据传送服务,上面三层面向用户。

除了标准的OSI七层模型以外,常见的网络层次划分还有TCP/IP四层协议以及TCP/IP五层协议,它们之间的对应关系如下图所示:

3、TCP/IP各个协议以及协议之间的关系

TCP (Transmission  Control  Protocol   传输控制协议):面向连接的,不可靠的,数据流服务。
UDP (User  Datagram  Protocl   用户数据报协议):面向无连接的,不可靠的,数据报服务。
TCP传输和UDP不一样,TCP传输是流式的,必须先建立连接,然后数据流沿已连接的线路(虚电路)传输。因此TCP的数据流不会像UDP数据报一样,每个数据报都要包含目标地址和端口,因为每个数据报要单独路由。

TCP传输则只需要在建立连接时指定目标地址和端口就可以了。

(1)TCP三次握手

主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话;主机B向主机A发送同意连接和要求同步(同步就是两台主机一个在发送,一个在接收,协调工作)的数据包:“可以,你什么时候发?”,这是第二次对话;主机A再发出一个数据包确认主机B的要求同步:“我现在就发,你接着吧!”,这是第三次对话。三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”之后,主机A才向主机B正式发送数据。

(2)四次断开

  1. 当主机A完成数据传输后,将控制位FIN置1,提出停止TCP连接的请求
  2. 主机B收到FIN后对其作出响应,确认这一方向上的TCP连接将关闭,将ACK置1
  3. 由B 端再提出反方向的关闭请求,将FIN置1
  4. 主机A对主机B的请求进行确认,将ACK置1,双方向的关闭结束。

由TCP的三次握手和四次断开可以看出,TCP使用面向连接的通信方式,大大提高了数据通信的可靠性,使发送数据端和接收端在数据正式传输前就有了交互,为数据正式传输打下了可靠的基础。 

(3) TCP/IP数据封装与解封装过程

 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)。数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,最后将应用层数据交给应用程序处理。

解封装

不 同 的 协 议 层 对 数 据 包 有 不 同的 称 谓 ,在 传 输 层 叫 做 段(segment ),在网络层叫做数据报( datagram) ,在链路层叫做帧(frame )。数据封装成帧后发到传输介质上,到达目的主机后,每层协议再剥掉相应的头部,最后将应用层数据交给应用程序处理。

3端口

(1)端口简介

在网络技术中,端口包括逻辑端口和物理端口两种类型。物理端口是用于连接物理设备之间的接口,如ADSL Modem、集线器、交换机、路由器上用于连接其他网络设备的接口,如RJ-45端口、SC端口等等 。逻辑端口是指逻辑意义上用于区分服务的端口,比如用于浏览网页服务的80端口,用于FTP服务的21端口等。如TCP/IP协议中的服务端口,通过不同的逻辑端口来区分不同的服务。一个IP地址的端口通过16bit进行编号,最多可以有65536个端口  。端口是通过端口号来标记的,端口号只有整数,范围是从0 到65535  。

(2)端口分类
按端口号可分为3大类:
       1公认端口(Well Known Ports):从0到1023,它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。
        2注册端口(Registered Ports):从1024到49151。它们松散地绑定于一些服务。也就是说有许多服务绑定于这些端口,这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。
         3动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。

(3)常用端口号

端口号标识了一个主机上进行通信的不同的应用程序。

1.HTTP协议代理服务器常用端口号:80/8080/3128/8081/9098

2.SOCKS代理协议服务器常用端口号:1080

3.FTP(文件传输)协议代理服务器常用端口号:21

4.Telnet(远程登录)协议代理服务器常用端口号:23

HTTP服务器,默认端口号为80/tcp(木马Executor开放此端口)

HTTPS(securely transferring web pages)服务器,默认端口号为443/tcp 443/udp

Telnet(不安全的文本传送),默认端口号为23/tcp(木马Tiny Telnet Server所开放的端口)

FTP,默认的端口号为21/tcp(木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口)

TFTP(Trivial File Transfer Protocol),默认端口号为69/udp

SSH(安全登录)、SCP(文件传输)、端口号重定向,默认的端口号为22/tcp

SMTP Simple Mail Transfer Protocol(E-mail),默认端口号为25/tcp(木马Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都开放这个端口)

POP3 Post Office Protocol(E-mail),默认端口号为110/tcp

Webshpere应用程序,默认端口号为9080

webshpere管理工具,默认端口号9090

JBOSS,默认端口号为8080

TOMCAT,默认端口号为8080

WIN2003远程登录,默认端口号为3389

Symantec AV/Filter for MSE,默认端口号为 8081

Oracle 数据库,默认的端口号为1521

ORACLE EMCTL,默认的端口号为1158

Oracle XDB(XML 数据库),默认的端口号为8080

Oracle XDB FTP服务,默认的端口号为2100

MS SQL*SERVER数据库server,默认的端口号为1433/tcp 1433/udp

MS SQL*SERVER数据库monitor,默认的端口号为1434/tcp 1434/udp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值