OSI七层参考模型

什么是网络

网络是网络终端设备通过网络传输介质用网络传输设备连接起来进行资源共享的平台;共享的资源主要是指软件、硬件、数据和通信信道

OSI七层参考模型

应用层(Application Layer)

        提供为应用软件而设计的接口,以设置与另一应用软件之间的通信,通过人机交互来实现各种各样的服务

        常见的应用层服务        

        例如:HTTP、HTTPS、FTP、Telnet、SSH、SMTP、POP3等。

表示层(Presentation Layer)

        把数据转换为能与接收者的系统格式兼容并适合传输的格式,主要进行编码、解码、加密、解密

会话层(Session Layer)

        负责在数据传输中设置和维护计算机网络中两台计算机之间的通信连接。主要任务是发现、建立、维持 、终止会话

传输层:(Transport Layer)

        该层的协议为应用进程提供端到端的通信服务。它提供面向连接的数据流支持、可靠性、流量控制、多路复用等服务;把传输表头(TH)加至资料以形成分组。传输表头包含了所使用的协议等发送信息。

        1、通过端口号来区分不同的服务

                端口号的种类:静态端口号、动态端口号

                端口号的范围:0-65535

                        静态端口号:1-1023

                        动态端口号:1024-65535

                0端口号:保留端口号——网络编程中使用——代表所有端口号

                一个端口号对应一个服务,呈暂时捆绑关系

  • 标准既定的端口号:这种方法也叫静态方法。它是指每个应用程序都有其指定的端口号。但并不是说可以随意使用任何一个端口号。例如 HTTP、FTP、TELNET 等广为使用的应用协议中所使用的端口号就是固定的。这些端口号被称为知名端口号,分布在 0~1023 之间;除知名端口号之外,还有一些端口号被正式注册,它们分布在 1024~49151 之间,不过这些端口号可用于任何通信用途。
  • 时序分配法:服务器有必要确定监听端口号,但是接受服务的客户端没必要确定端口号。在这种方法下,客户端应用程序完全可以不用自己设置端口号,而全权交给操作系统进行分配。动态分配的端口号范围在 49152~65535 之间。

        协议号——标识上层协议,协议号是存在于IP数据报首部的20字节的固定部分,占有8bit,该字段是指出此数据报所携带的数据使用了何种协议,以便目的主机的IP层知道将数据部分上交给哪个处理过程。也就是协议字段告诉IP层应当如何交付数据。

端口号与协议

  • 端口号由其使用的传输层协议决定。因此,不同的传输层协议可以使用相同的端口号。
  • 此外,那些知名端口号与传输层协议并无关系。只要端口一致都将分配同一种应用程序进行处理。

传输层常用的两个协议:TCP和UDP

TCP -- 传输控制协议,面向连接的可靠传输、基于字节流的传输层通信协议

TCP可靠的原因是因为存在特定的机制:确认 重传(主要作用) 排序 流控(辅助作用)

TCP报头

常用基于TCP协议的服务的协议及其端口号

FTP

文件传输协议 数据端口(数据传送端口) TCP 20;控制端口 (传输控制信号)TCP21

Telnet

 远程登陆TCP 23明文传输

SSH

安全外壳协议 TCP 22密文传输

HTTP

超文本传输协议 TCP 80 8080

HTTPS

安全的超文本传输协议 TCP 443

SMTP

简单邮件传输协议 TCP 25

POP3

 邮局协议 TCP 110

VNC

虚拟网络计算  远程共享桌面技术 TCP 5900

        UDP 用户数据报文协议 非面向连接的不可靠传输协议

        UDP的报头

常见的基于UDP协议的服务机器端口号

TFTP

简单文件传输协议 UDP 69

DNS

域名解析系统 TCP/UDP 53

确保TCP面向连接的方式:三次握手 四次挥手

三次握手的过程及图解

  • 第一次握手:客户端将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给服务器端,客户端进入SYN_SENT状态,等待服务器端确认。
  • 第二次握手:服务器端收到数据包后由标志位SYN=1知道客户端请求建立连接,服务器端将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给客户端以确认连接请求,服务器端进入SYN_RCVD状态。
  • 第三次握手:客户端收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K+1,并将该数据包发送给服务器端,服务器端检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,客户端和服务器端进入ESTABLISHED状态,完成三次握手,随后客户端与服务器端之间可以开始传输数据了。

问题:为什么是三次握手?两次不可以吗?

一句话,主要防止已经失效的连接请求报文突然又传送到了服务器,从而产生错误。

如果使用的是两次握手建立连接,假设有这样一种场景,客户端发送了第一个请求连接并且没有丢失,只是因为在网络结点中滞留的时间太长了,由于TCP的客户端迟迟没有收到确认报文,以为服务器没有收到,此时重新向服务器发送这条报文,此后客户端和服务器经过两次握手完成连接,传输数据,然后关闭连接。此时此前滞留的那一次请求连接,网络通畅了到达了服务器,这个报文本该是失效的,但是,两次握手的机制将会让客户端和服务器再次建立连接,这将导致不必要的错误和资源的浪费。

如果采用的是三次握手,就算是那一次失效的报文传送过来了,服务端接受到了那条失效报文并且回复了确认报文,但是客户端不会再次发出确认。由于服务器收不到确认,就知道客户端并没有请求连接。

四次挥手过程及图解

  • 四次挥手即终止TCP连接,就是指断开一个TCP连接时,需要客户端和服务端总共发送4个包以确认连接的断开。在socket编程中,这一过程由客户端或服务端任一方执行close来触发。
  • 由于TCP连接是全双工的,因此,每个方向都必须要单独进行关闭,这一原则是当一方完成数据发送任务后,发送一个FIN来终止这一方向的连接,收到一个FIN只是意味着这一方向上没有数据流动了,即不会再收到数据了,但是在这个TCP连接上仍然能够发送数据,直到这一方向也发送了FIN。首先进行关闭的一方将执行主动关闭,而另一方则执行被动关闭。

中断连接端可以是客户端,也可以是服务器端。

  • 第一次挥手:客户端发送一个FIN=M,用来关闭客户端到服务器端的数据传送,客户端进入FIN_WAIT_1状态。意思是说"我客户端没有数据要发给你了",但是如果你服务器端还有数据没有发送完成,则不必急着关闭连接,可以继续发送数据。
  • 第二次挥手:服务器端收到FIN后,先发送ack=M+1,告诉客户端,你的请求我收到了,但是我还没准备好,请继续你等我的消息。这个时候客户端就进入FIN_WAIT_2 状态,继续等待服务器端的FIN报文。
  • 第三次挥手:当服务器端确定数据已发送完成,则向客户端发送FIN=N报文,告诉客户端,好了,我这边数据发完了,准备好关闭连接了。服务器端进入LAST_ACK状态。
  • 第四次挥手:客户端收到FIN=N报文后,就知道可以关闭连接了,但是他还是不相信网络,怕服务器端不知道要关闭,所以发送ack=N+1后进入TIME_WAIT状态,如果Server端没有收到ACK则可以重传。服务器端收到ACK后,就知道可以断开连接了。客户端等待了2MSL后依然没有收到回复,则证明服务器端已正常关闭,那好,我客户端也可以关闭连接了。最终完成了四次握手。

TCP的工作模式:全双工

常见的工作模式:全双工、半双工、单工

全双工:客户端在给服务端发送信息的同时,服务端也可以给客户端发送信息

半双工:客户端在给服务端发送信息的同时,服务端不可以给客户端发送信息;但是双方都可以互相发送信息

单工:客户端只能给服务端发,或服务端只能给客户端发

传输层还可以数据分段

MSS 最大段长度 1480B

MTU 最大传输单元 1500B

网络层

        根据IP地址进行逻辑寻址,实现点到点之间的通信

IP的报头

IP协议

        IP 大致分为三大作用模块,它们是 IP 寻址、路由(最终节点为止的转发)以及 IP 分包与组包。

1. IP 地址

1.1 IP 地址概述

  • 在计算机通信中,为了识别通信对端,必须要有一个类似于地址的识别码进行标识。在数据链路中的 MAC 地址正是用来标识同一个链路中不同计算机的一种识别码。
  • 作为网络层的 IP ,也有这种地址信息,一般叫做 IP 地址。IP 地址用于在“连接到网络中的所有主机中识别出进行通信的目标地址”。因此,在 TCP/IP 通信中所有主机或路由器必须设定自己的 IP 地址。
  • 不论一台主机与哪种数据链路连接,其 IP 地址的形式都保持不变。
  • IP 地址(IPv4 地址)由32位正整数来表示。IP 地址在计算机内部以二进制方式被处理。然而,由于我们并不习惯于采用二进制方式,我们将32位的 IP 地址以每8位为一组,分成4组,每组以 “.” 隔开,再将每组数转换成十进制数。如下:

1.2 IP 地址由网络和主机两部分标识组成

  • 如下图,网络标识在数据链路的每个段配置不同的值。网络标识必须保证相互连接的每个段的地址不相重复。而相同段内相连的主机必须有相同的网络地址。IP 地址的“主机标识”则不允许在同一个网段内重复出现。由此,可以通过设置网络地址和主机地址,在相互连接的整个网络中保证每台主机的 IP 地址都不会相互重叠。即 IP 地址具有了唯一性。

1.3 IP 地址的分类

  • IP 地址分为四个级别,分别为A类、B类、C类、D类。它根据 IP 地址中从第 1 位到第 4 位的比特列对其网络标识和主机标识进行区分。
  • A 类 IP 地址是首位以 “0” 开头的地址。从第 1 位到第 8 位是它的网络标识。用十进制表示的话,0.0.0.0~127.0.0.0 是 A 类的网络地址。A 类地址的后 24 位相当于主机标识。因此,一个网段内可容纳的主机地址上限为16,777,214个。
  • B 类 IP 地址是前两位 “10” 的地址。从第 1 位到第 16 位是它的网络标识。用十进制表示的话,128.0.0.0~191.255.0.0 是 B 类的网络地址。B 类地址的后 16 位相当于主机标识。因此,一个网段内可容纳的主机地址上限为65,534个。
  • C 类 IP 地址是前三位为 “110” 的地址。从第 1 位到第 24 位是它的网络标识。用十进制表示的话,192.0.0.0~223.255.255.0 是 C 类的网络地址。C 类地址的后 8 位相当于主机标识。因此,一个网段内可容纳的主机地址上限为254个。
  • D 类 IP 地址是前四位为 “1110” 的地址。从第 1 位到第 32 位是它的网络标识。用十进制表示的话,224.0.0.0~239.255.255.255 是 D 类的网络地址。D 类地址没有主机标识,常用于多播。
  • 在分配 IP 地址时关于主机标识有一点需要注意。即要用比特位表示主机地址时,不可以全部为 0 或全部为 1。因为全部为 0 只有在表示对应的网络地址或 IP 地址不可以获知的情况下才使用。而全部为 1 的主机通常作为广播地址。因此,在分配过程中,应该去掉这两种情况。这也是为什么 C 类地址每个网段最多只能有 254( 28 - 2 = 254)个主机地址的原因。

1.4 广播地址

  • 广播地址用于在同一个链路中相互连接的主机之间发送数据包。将 IP 地址中的主机地址部分全部设置为 1,就成了广播地址。
  • 广播分为本地广播和直接广播两种。在本网络内的广播叫做本地广播;在不同网络之间的广播叫做直接广播。

1.5 IP 多播

  • 多播用于将包发送给特定组内的所有主机。由于其直接使用 IP 地址,因此也不存在可靠传输。
  • 相比于广播,多播既可以穿透路由器,又可以实现只给那些必要的组发送数据包。请看下图:

  • 多播使用 D 类地址。因此,如果从首位开始到第 4 位是 “1110”,就可以认为是多播地址。而剩下的 28 位可以成为多播的组编号。
  • 此外, 对于多播,所有的主机(路由器以外的主机和终端主机)必须属于 224.0.0.1 的组,所有的路由器必须属于 224.0.0.2 的组。

1.6 子网掩码

  • 现在一个 IP 地址的网络标识和主机标识已不再受限于该地址的类别,而是由一个叫做“子网掩码”的识别码通过子网网络地址细分出比 A 类、B 类、C 类更小粒度的网络。这种方式实际上就是将原来 A 类、B 类、C 类等分类中的主机地址部分用作子网地址,可以将原网络分为多个物理网络的一种机制。
  • 子网掩码用二进制方式表示的话,也是一个 32 位的数字。它对应 IP 地址网络标识部分的位全部为 “1”,对应 IP 地址主机标识的部分则全部为 “0”。由此,一个 IP 地址可以不再受限于自己的类别,而是可以用这样的子网掩码自由地定位自己的网络标识长度。当然,子网掩码必须是 IP 地址的首位开始连续的 “1”。
  • 对于子网掩码,目前有两种表示方式。
    • 第一种是,将 IP 地址与子网掩码的地址分别用两行来表示。以 172.20.100.52 的前 26 位是网络地址的情况为例,如下:

  • 第二种表示方式是,在每个 IP 地址后面追加网络地址的位数用 “/ ” 隔开,如下:

数据链路层

        数据链路层提供节点到结点的数据传输——两个直接连接的节点之间的链接。它检测并可能纠正物理层中可能发生的错误。它定义了在两个物理连接的设备之间建立和终止连接的协议。它还定义了它们之间的流量控制协议。

IEEE 802将数据链路层分为两个子层:

  • 媒体访问控制(MAC) 层——负责控制网络中的设备如何获得对媒体的访问权限以及传输数据的权限,为上层服务提供FCS校验
  • 逻辑链路控制(LLC)层——负责识别和封装网络层协议,控制错误检查和帧同步,根据MAC进行物理寻址

数据链路层常用的协议

SLIP协议是指串行线路网际协议(Serial Line Internet Protocol),是最早的、也是仅有的两个串行IP协议之一,属于异型IP协议。

SLIP协议实现了在串行通信线路上运行TCP/IP协议及其应用服务的功能,为千家万户上网提供了拨号IP模式,并且为行业用户通过串行媒介传输IP datagram提供了专线IP模式。

串行线路互联网络协议SLIP(Serial Line Internet Protocol)是在串行通信线路上支持TCP/IP协议的一种点对点(Point-to-Point)式的链路层通信协议,不但能够发送和接收IP datagram,还提供了TCP/IP的各种网络应用服务(如rlogin、telnet、ftp、rtp等)。个人用户可利用SLIP协议拨号上网,行业用户则可通过租用SLIP专线远程传输业务数据。

物理层:定义电气电压 光学特性 接口规范

1 网络安全有哪些隐患,举例说明。 答:1、网络犯罪猖狂,到处都是,令人防不胜防。有诈骗也有盗资料的,包括盗取 账号和密码,而其中盗取资料和密码占网络犯罪绝大多数,这大部分中又包括QQ号、游 戏帐号、网银账户(支付宝、财付通等)等。 2、网络黑客猖獗。他们利用他们的经验技术,攻击或侵入别人的系统,盗取宝贵的资料 和信息。甚至道却国家机密。 3、网上病毒泛滥。像蠕虫,木马等。总是在你疏忽是攻击你的系统。盗取你的资料,破 坏你的数据,以你的名义向别人发恶意的信息。或者更严重时 使你的系统瘫痪。给我们造成 巨大的损失。 4、计算机犯罪大都具有瞬时性、广域性、专业性、时空分离性等特点。通常计算机罪犯 很难留下犯罪证据,这大大刺激了计算机高技术犯罪案件的发生。所以我们要时时提高 警惕。 2 我们为什么要加强网络安全意识。 答:随着计算机技术的飞速发展,信息网络已经成为社会发展的重要保证。从大的方面 对说,信息网络涉及到国家的政府、军事、文教等诸多领域。其中存贮、传输和处理的 信息有许多是重要的政府宏观调控决策、商业经济信息、银行资金转帐、股票证券、能 源资源数据、科研数据等重要信息。有很多是敏感信息,甚至是国家机密。所以难免会 吸引来自世界各地的各种人为攻击(例如信息泄漏、信息窃取、数据篡改、数据删添、 计算机病毒等)。 从小的方面说,信息网络涉及到个人的隐私等各种重要的信息。现在的网络发展迅速, 网络犯罪猖狂,有诈骗也有盗资料的,包括盗取账号和密码,而其中盗取资料和密码占 网络犯罪绝大多数,这大部分中又包括QQ号、游戏帐号、网银账户(支付宝、财付通等 ),这些都是关乎我们的个人财产的问题,这些犯罪危害到我们的个人财产,所以提高 网络安全意识义不容辞,不要等出现这种问题的时候再来后悔,那已经为时已晚了。 并且计算机犯罪大都具有瞬时性、广域性、专业性、时空分离性等特点。通常计算机罪 犯很难留下犯罪证据,这大大刺激了计算机高技术犯罪案件的发生。 计算机犯罪案率的迅速增加,使各国的计算机系统特别是网络系统面临着很大的威胁, 并成为严重的社会问题之一。所以网络安全的问题不容忽视。我们要加强我们的网络安 全意识。尽量避免不必要的损失或机密信息的流失。 提高网络安全意识要从我做起,我们为什么要重视,因为这关系到我们的个人财产 和重要文件不被泄露的防范措施,虽然我们不能保证每个人都不会出现的这样的事,但 从自身做起,提供网络安全意识,加强网络正规化合法化操作,才不至于我们出现不必 要的麻烦,只有我们没个人能做到不被盗窃不被泄露,那么我们这种防范措施是有效的 ,那么整个网络社会的安全防范意识都得到了加强。 3 防火墙的安全策略,对于我们个人用户应该怎样部署防火墙 答:部署防火墙策略的十六条守则   1、计算机没有大脑。所以,当ISA的行为和你的要求不一致时,请检查你的配置而 不要埋怨ISA。   2、只允许你想要允许的客户、源地址、目的地和协议。仔细的检查你的每一条规则 ,看规则的元素是否和你所需要的一致。   3、拒绝的规则一定要放在允许的规则前面。   4、当需要使用拒绝时,显式拒绝是首要考虑的方式。   5、在不影响防火墙策略执行效果的情况下,请将匹配度更高的规则放在前面。   6、在不影响防火墙策略执行效果的情况下,请将针对所有用户的规则放在前面。   7、尽量简化你的规则,执行一条规则的效率永远比执行两条规则的效率高。   8、永远不要在商业网络中使用Allow 4 ALL规则(Allow all users use all protocols from all networks to all networks),这样只是让你的ISA形同虚设。   9、如果可以通过配置系统策略来实现,就没有必要再建立自定义规则。   10、ISA的每条访问规则都是独立的,执行每条访问规则时不会受到其他访问规则的 影响。   11、永远也不要允许任何网络访问ISA本机的所有协议。内部网络也是不可信的。   12、SNat客户不能提交身份验证信息。所以,当你使用了身份验证时,请配置客户 为Web代理客户或防火墙客户。   13、无论作为访问规则中的目的还是源,最好使用IP地址。   14、如果你一定要在访问规则中使用域名集或URL集,最好将客户配置为Web代理客 户。 15、请不要忘了,防火墙策略的最后还有一条DENY 4 ALL。 16、最后,请记住,防火墙策略的测试是必需的。 4 什么是IDS,它与防火墙有什么不同,我们怎么部署它。 答:网络安全技术发展到今天,除了防火墙和杀毒系统的防护,入侵检测技术也成为抵 御黑客攻击的有效方式。尽管入侵检测技术还在不断完善发展之中,但是入侵检测产品 的市场已经越来越大,真正掀起了网络安全的第三股热潮。 IDS就是这样一种
### 回答1: OSI参考模型(Open Systems Interconnection Reference Model)是一种七层网络模型,用于描述在计算机网络中如何进行通信。它规定了计算机网络中数据传输的过程,并规定了各层的功能。 OSI参考模型分为七层: 1. 物理层(Physical Layer):规定了网络中如何传输数据的物理方式,包括电缆、无线信号等。 2. 数据链路层(Data Link Layer):规定了如何在两台计算机之间传输数据,包括帧的格式和传输方式。 3. 网络层(Network Layer):规定了如何在不同的网络之间传输数据,包括路由和分组。 4. 传输层(Transport Layer):规定了如何在两台计算机之间传输数据,包括端口号和流量控制。 5. 会话层(Session Layer):规定了如何在两台计算机之间建立会话,包括连接建立和断开。 6. 表示层(Presentation Layer):规定了如何将数据表示成适合传输的格式,包括加密和压缩。 7. 应用层(Application Layer):规定了如何在计算机之间进行应用程序通信 ### 回答2: OSI七层参考模型是一种用来描述计算机网络功能分布和协议分层的理论框架。该模型由国际标准化组织(ISO)在20世纪80年代初开发并发布。 该模型将计算机网络通信过程分为七个层次,每个层次负责特定的功能和协议,通过层次之间的接口实现不同层次之间的通信。这些层次从下到上分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 物理层负责传输比特流,提供物理连接的传输介质及信号传输。数据链路层将物理层提供的比特流划分为帧,并进行误码检测与纠正,提供可靠的数据传输。网络层负责选择最佳路径将数据包送达目标主机,进行路由和逻辑编址。传输层提供端到端的数据传输,负责数据分段、流量控制和差错恢复。会话层允许不同主机上的应用程序建立、管理和终止会话。表示层负责数据格式转换、加密和解密。应用层为最终用户提供应用服务,例如电子邮件、文件传输、网站浏览等。 使用OSI七层参考模型有助于不同厂商的设备和协议之间的互操作性,使得不同层次的功能可以独立开发和更新。该模型也能够帮助网络工程师和管理员分析和解决网络问题,提供了一种共同的语言和框架。尽管现实世界中的网络往往采用的是TCP/IP协议栈,而不是纯粹的OSI模型,但OSI七层参考模型仍然被广泛使用和参考。 ### 回答3: OSI(开放系统互联)七层参考模型是一种用于网络通信的标准体系结构。该模型将通信协议的功能划分为七个层次,每个层次负责执行特定的任务,从而实现网络中不同设备之间的数据传输和通信。 以下是七个层次的简要介绍: 1. 物理层:负责网络物理介质的传输,包括传输媒介、数据连接和电压等。 2. 数据链路层:处理数据包和帧的传输,通过物理连接的可靠通信链路传输数据。 3. 网络层:通过路由选择和路径规划实现不同网络之间的通信,负责地址寻址和数据分组处理。 4. 传输层:提供端到端的数据传输,分为面向连接的可靠传输和无连接的不可靠传输。 5. 会话层:建立和管理通信会话,负责会话控制和数据交换。 6. 表示层:处理数据的格式和代码转换,确保不同设备间的数据互通。 7. 应用层:提供用户与网络之间的接口,支持各种应用程序的通信和交互。 通过这种分层的设计,OSI模型能够使网络通信的各个方面分工明确,并且可以实现不同厂商的设备在同一网络中协同工作。每个层次之间通过接口进行通信,这种模块化的设计使得网络协议的开发、维护和升级更加灵活和可靠。此外,OSI模型也为网络故障诊断和问题定位提供了参考标准,能够帮助网络管理员更方便地解决网络通信问题。 总而言之,OSI七层参考模型是一种规范和指导,用于标准化网络通信协议的设计和实施。它能够促进不同厂商和设备在网络中的互操作性,提供有效的通信方式,并支持网络的管理与维护。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值