计算机网络五层概述

计算机网络五种基本拓扑结构:

计算机网络五层概述_第1张图片

(1)星形结构:所有结点与中心点相连,中心结点控制全网结构,任何两点结点之间的通信都必须通过中心结点。

(2)总线结构:所有结点与总线(非结点)相连,依靠总线通信,但任意时刻总线只允许有一个信息正在发送,即如果有两个结点同时在总线上发送信息则会引起冲突

(3)环形结构:两两结点相连构成一个环,结点之间的通信可能需要通过多个中继结点,任意一个结点损坏都可能导致整个网络瘫痪

(4)树形结构:结点之间以树形结构展开,适用于上下界限分明或者需要信息汇总的网络结构(如政府军事)

(5)网状结构:任意两结点之间相连形成一个复杂的网状,其可靠性较高,现代网络一般采取此种结构。但由于结构复杂,所以需要很多算法来辅助。(如路由选择,拥塞控制)


按照原理性的网络分层结构可以分为五层(ISO标准七层, TCP标准四层)

计算机网络五层概述_第2张图片

1. 应用层

        在操作系统之上,直接使用软件获取相关的网络服务,一般协议由提供相关服务的软件实现。

(1)WEB服务

        WEB服务一般由浏览器提供,其包含了3个关键技术

        1.1)HTTP协议:超文本传输协议,规定了文本传输的格式,默认端口【80】,底下采用了TCP协议传输

        1.2)HTML:超文本标记语言,只是一门语言,用来标记文字图片等该何如显示

        1.3)URL:统一资源定位符,规定了网络上资源的标记方式

(2)DNS服务

        用于解析域名的IP地址,默认使用端口【53】,传输层采用UDP协议实现。

        解析方式有递归解析和迭代解析,使用本地缓存和路由器缓存提高效率。

(3)FTP文件传输服务

        用于实现不同网络主机间的文件传输需求,使用FTP协议实现,默认端口【20】(用于数据连接,每一个文本都需要重新建立一次连接)【21】(用于命令传输),底下采用了TCP协议传输

        如果采用TFTP协议实现,则底下采用的是UDP协议传输,其支持的命令操作较少。

(4)电子邮件服务

        电子邮件服务一般由电子邮件相关软件实现,采用端口【25】

        邮件传输协议有两种选择,SMTP(只支持传输纯文本), MIME(支持多媒体类型传输)

        访问邮件服务器也有两种方式,POP-3(简单上传下载),IMAP-4(可以在邮件服务器中直接对邮件进行操作)

(5)远程桌面服务

        使用TELNET协议实现,默认端口【23】,底下使用TCP协议传输

(6)DHCP

        DHCP是动态主机配置协议,用于主机的网络配置服务,可以动态的为客户端配置路由器地址,IP地址,服务器地址等。在一开始时,客户机还没有一个IP地址,需要把一个DHCP请求报文广播出去,DHCP服务器接收到请求,同样把带有配置信息的报文广播发送回去,客户机接收配置完毕后就进入了绑定状态,不再接受配置报文信息。当IP过期时,需要再次发送请求

        计算机网络五层概述_第3张图片

(7)SNMP

        SNMP用于网络管理服务,用来检测统计网络流量等


2. 传输层

        解决源主机到目的主机之间端到端的通信,主要涉及的有TCP和UDP两个协议,此层一般由操作系统负责管理和实现。

        在本层中一个套接字地址为IP地址+端口号,一个网络进程的通信标志为:传输协议+本地IP+本地端口+目的IP+目的端口。

        无论是TCP和UDP报文,都可以统一称为TPDU传输协议数据单元。

(1)端口号分配:

熟知端口号 0~2^10-1 :服务器默认的全局端口号, 一般由系统固定分配

注册端口号 2^10~2^12-1  和 临时端口号 2^12~2^16-1 :这些都是用户请求时,系统给用户动态分配和回收的

(2)多路复用与多路分解

        传输层允许多个应用层使用不同的端口号同时进行消息发送。在发送端,传输层依照不同的端口号替数据进行包装递交给网络层,在接收端,传输层依照不同端口号将数据正确转交给相应的程序

(3)TCP与UDP

        传输层协议有TCP和UDP可以选择。

        TCP:面向连接和字节流,有确认机制,重发机制,流量控制,拥塞控制,建立连接需要3次握手,断开连接需要四次挥手。

        UDP:无连接,无确认机制、重传机制,开销低,速率高,可用于多播和组播


3. 网络层

        解决的是源主机-路由器-路由器-目的主机之间的点对点传播,路由器在网络中也可以看成一个具有ip地址的主机。

(1)IP协议

        网络层的数据传输协议,对来自TCP | UDP 数据报文进一步封装和分组,转交给数据链路层。

        IP协议是无连接不可靠的,当发现分组出错或者丢失,会发送一个ICMP差错报文,但是是由上一层协议负责是否要重发。

        涉及的有:IP地址分类,子网划分,分组格式,路由转发算法,IPV6等,在此不细讲。

(2)ARP协议

        ARP协议使用解析IP地址对应的物理地址(6字节)的。RARP则相反,是用来解析物理地址对应的IP地址的。ARP报文无需IP协议封装。

        解析过程:

        计算机网络五层概述_第4张图片

        ARP欺诈:指的是骗子主机冒充目的主机发送ARP响应让源主机误以为其是目的主机将通信信息发送给了骗子主机。

(3)NAT

        当你在局域网上访问局域网内的内容时,用的是诸如172.31,192.168等局域网IP,这在公网上进行访问时,是不被允许的,因为公网上的IP是唯一的,而局域网地址在不同的局域网下却是可以重复。但是公网的地址是紧缺的,不可能为每个局域网内的用户都分配一个公网IP,这时就需要使用NAT地址转换技术了。

        当用户访问公网时,执行NAT协议的路由器就会从自己的公网IP池为用户分配一个临时的公网IP,并将用户报文中的内部地址修改成公网地址进行发送。当接收时,该路由器又会把报文中的公网地址修改回内网地址,将其传送回用户。所以,有时你会发现自己的公网IP发生了变化。

        点击查看自己的公网IP

(4)ICMP

        ICMP是互联网控制报文协议,可以用来查看和控制IP分组在网络传播情况,其报文需要经过IP协议的封装。

        最常见的ping命令就是发送一条ICMP的查询报文。


4. 数据链路层

        以上三层讲述的都是把数据以报文的形式如何传播,而数据链路层要讨论是数据帧(1bit)级别的传输问题。

        数据链路拥有帧同步(错误重发),差错控制(海明码和CRC纠错),流量与拥塞控制等功能。

5. 物理层

        物理层考虑是如何将采集的信号转化为二进制数据,用什么介质传输信号等等。


       可以看出,网络数据在整个五层结构中,只有传输层TCP和数据链路层有进行了一个数据校验机制(错误时反馈和重发)和重发机制。UDP的校验和错误时直接丢弃不重发,IP校验和只校验头部是否正确,错误时发送ICMP差错报文通知上一层是否要重发。

数据报文的变化流程:

计算机网络五层概述_第5张图片



      


        



你可能感兴趣的:(计算机网络)