IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 【网络】网络基础知识 -> 正文阅读

[网络协议]【网络】网络基础知识

一. 网络概述

计算机网络就是通过一定形式连接起来的一组计算机系统,它需要四个要素的支持,即通信线路和通信设备、有独立功能的计算机、网络软件、能实现通信与资源共享的理论方法。计算机网络具有两大参考模型,分别是OSI参考模型和TCP/IP参考模型,其中OSI参考模型为理论模型,TCP/IP参考模型则已成为互联网通信的工业标准,现在的通信网络一般都采用TCP/IP协议簇,而应用编程都采用Socket套接字进行编程。

二. 网络体系结构的几个概念

网络体系结构主要涉及以下几个重要概念:

??① 协议:为计算机网络中的数据交换而建立的规则、标准或约定的合集。通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。它的三要素是:语法、语义、时序。为了使数据在网络上从源到达目的,网络通信的参与方必须遵循相同的规则,这套规则称为协议(protocol),它最终体现为在网络上传输的数据包的格式。协议往往分成几个层次进行定义,分层定义是为了使某一层协议的改变不影响其他层次的协议。

??② 通信协议:通信双方必须共同遵守的规则和约定称为通信协议。通信双方对数据的理解需要建立在约定与协议之上。

??③ 接口:相邻两层之间的边界,在接口处规定了低层向上层提供的服务所使用的形式规范语句(服务原语)。

??④ 服务:某一层提供的功能,并能通过接口提供给其相邻的上层。

??⑤ 网络体系结构:对计算机网络各层功能的精确定义及其各层遵守协议的集合。

??⑥ 协议栈:网络各层协议按层次顺序排列而成的协议序列。

??⑦ 点到点:体现在物理上的两两连接,是物理拓扑结构,如光纤就必须是点到点的连接。点到点协议体现在IP网络层或以下两层。IP网络层是两两路由器进行点到点通信,中间没有跨越其他通信设备。点到点传输的优点是发送端设备送出数据后,它的任务已经完成,不需要参与整个传输过程,这样不会浪费发送端设备的资源。另外,即使接收端设备关机或出现故障,点到点传输也可以采用存储转发技术进行缓冲。点到点传输的缺点是发送端发出数据后,不知道接收端能否收到或何时收到数据。IP及以下各层采用的是点到点传输。

??⑧ 端到端:体现在逻辑上的两两连接。端到端是体现在网络传输层之间的,比加要将数据从A传送到E,中间可能经过A->B->C->D->E,对于传输层来说,它并不知道B、C、D的存在,它只认为报文数据是从A直接到E的,这就叫做端到端。总之,端到端是有无数的点到点实现和组成的。

三. 网络分层模型

1. 对网络分层的理解

分层能使简单的问题简单化,网络分层也是基于此原理。网络分层简化了网络设计,提高了网络互联的标准化程度。网络分层是上一层都依赖于下一层,只有最底层才是物理的实际通信,其他对等层是虚拟通信,分层原理与方法如下图所示:
在这里插入图片描述
网络分层模型设计以下术语:

??① 实体:每一层中的活动因素,可以是如何可发送或接受信息的硬件或软件进程。许多情况下,实体就是一个特定的软件模块。

??② 对等实体:位于不同机器上同一层中的实体。

??③ 服务提供者:n层(下层)是n+1层(上层)的服务提供者。

??④ 服务用户:n+1层(上层)是n层(下层)的服务用户。

??⑤ 服务访问点(SAP):服务提供的地点,也即接口上相邻两层实体交换信息之处。

??⑥ 服务和协议的关系:服务是垂直的,协议是水平的。n层的服务用户只能看见n层的服务,无法看见n层的协议,在n层协议控制下,两个对等实体间的通信能使得n层能够向n+1层提供服务,要实现n层协议,需要使用n-1层提供的服务。

网络分层的好处

互联网的两大网络参考模型(OSI参考模型和TCP/IP参考模型)都是基于分层原理实现的。通过网络分层可以获得的好处有:各层之间相互独立,相邻层间交互只通过接口,使整个问题的复杂度下降。结构上可分隔开,各层都可以采用最合适的技术来实现,每一层的功能简单,易于实现和维护。若某一层改动时,只要不改变接口的服务关系,其它层则不受影响,灵活性好。分层有利于促进网络协议的标准化。

2. OSI 网络分层模型

2.1 OSI 模型概述

OSI(Open System Interconnection,开放式系统互连)是1984年由国际标准化组织(ISO)提出的一个网络参考模型。作为一个概念性框架,提出时希望以后不同的设备制造商和应用软件开发商遵循此标准。现在,此模型已成为计算机网络间和网络间进行通信的主要模型,目前使用的大多数网络通信协议的结构都是基于OSI参考模型或参照OSI参考模型的。

OSI模型把网络从逻辑上分为了7层,即物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,如下图所示:
在这里插入图片描述
对OSI分层模型中各层的解释如下:

??① 物理层:是参考模型的最底层。该层是网络通信的数据传输介质,由连接不同结点的电缆与设备共同组成。物理层规定了激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性。该层为上层协议提供了一个传输数据的物理媒体。在这一层,数据的单位称为比特(bit)。

??② 数据链路层:是参考模型的第2层。主要功能是:在物理层提供服务的基础上,在通信的实体间建立数据链路连接,传输以“帧”为单位的数据包,并采用差错控制与流量控制方法,使有差错的物理线路变成无差错的数据链路。

??③ 网络层:是参考模型的第3层。主要功能能是:为数据在结点之间的传输创建逻辑链路,通过路由选择算法为分组通过通信子网选择最适合的路径,以及实现拥塞控制、网络互联等功能。

??④ 传输层:是参考模型的第4层。主要功能是:向用户提供可靠的端到端服务,处理数据包错误、数据包次序,以及其他一些关键的传输问题。传输层向高处屏蔽了下层数据通信的细节,因此,它是计算机通信体系结构中关键的一层。

??⑤ 会话层:是参考模型的第5层。主要功能是:负责维护两个结点之间的传输连接,以确保点到点的传输不中断,以及管理数据交换等功能。

??⑥ 表示层:是参考模型的第6层。主要功能是:用于处理在两个通信系统中交换信息的表示方式,主要包括数据格式交互、数据加密与解密、数据压缩与恢复等功能。

??⑦ 应用层:是参考模型的最高层,为存储系统或网络应用程序提供访问网络服务的接口。

2.2 OSI 模型特点

OSI 参考模型只有物理层之间是直接连接的,对等层之间采用相同的对等协议。该模型在发送数据时,数据从高层到低层;在接收数据时,数据从低层到高层。

3. TCP/IP 网络分层模型

3.1 TCP/IP 模型概述

TCP/IP(又称TCP/IP 协议簇)是一组用于实现网络互联的通信协议,其名称来源于该协议簇中两个重要的协议(IP协议和TCP协议)。基于TCP/IP 的参考模型将协议分成四个层次,它们分别是网络接口层、网际互联层(IP层)、传输层(TCP层)和应用层。

??① 网络接口层:网络接口层与OSI参考模型中的物理层和数据链路层对应。

??② 网际互联层:网际互联层对应于OSI参考模型的网络层,主要解决主机到主机的通信问题。该层有四个主要的协议:网际协议(IP)、地址解析协议(ARP)、互联网组管理协议(IGMP)和互联网控制报文协议(ICMP)。IP协议是网际互联层最重要的协议,它提供的是一个不可靠的、无连接的数据报传递服务。

??③ 传输层:传输层对应于OSI参考模型的传输层,为应用层实体提供端到端的通信功能。该层定义了两个主要的协议:传输控制协议(TCP)和用户数据报协议(UDP)。TCP协议提供的是一种可靠的、面向连接的数据传输服务;而UDP协议提供的是不可靠的、无连接的数据传输服务。

??④ 应用层:应用层对应于OSI参考模型的会话层、表示层和应用层,为用户提供所需要的各种服务,例如FTP、Telnet、DNS、SMTP等。

3.2 OSI模型与TCP/IP模型比较

OSI引入了服务、接口、协议、分层的概念,TCP/IP借鉴了OSI的这些概念建立了TCP/IP参考模型。OSI先有模型、后有协议,先有标准,后进先实践;而TCP/IP则相反,先有协议何应用,再提出了模型,且是参照了OSI参考模型。OSI太复杂,TCP/IP简单却不全面,OSI花了很长时间进行标准化,与此同时,TCP/IP已被广泛使用,并以成为网络互联事实上的标准。

下图画出了TCP/IP 模型以以及该模型与OSI模型各层的对应关系:
在这里插入图片描述

3.3 TCP/IP数据包的封装与分用

网络中各层把数据当作一个流来处理,每层都有自己的传输单位,物理层传输单位是比特流,而只有这一层是物理的数据传输,其他层都是逻辑的;链路层传输单位是帧;网络层传输单位是分组;传输层传输是段。源主机应用层数据往下层传递时每一层要增加相应的首部,称为封装;到达目的主机后数据往上层传递时需要再剥掉相应的首部,称为拆封。

下图画出了网络分层时的数据流图:
在这里插入图片描述
IP层传输单位是IP分组,属于点到点的传输;TCP层传输单位是TCP段,属于端到端传输:
在这里插入图片描述

3.4 TCP/IP通信过程

下图画出了同一网段中的两台主机通过TCP/IP协议的通信过程,其中应用层使用的是FTP协议。除物理层是实际传输数据的,其他对等层只是虚拟通信(所以画的是虚线),对等层一般需要遵照相同的协议。上层传输数据只与相邻上下层有关系。TCP及其下层是由操作系统内核实现的,即它们是处理通信细节的。而应用层程序是通过Socket编程实现的,处理的是应用程序细节。
在这里插入图片描述
下图是不同网段中的两台主机通信过程:
在这里插入图片描述

四. 网络分类

通过网络分类,可以更好地了解网络的特点。下面按网络八个方面的特征对网络进行分类。并给出简要说明:

① 按覆盖范围

  • 局域网(LAN):如企业内部网、家庭内部网。
  • 城域网(MAN):一个城市的内部网络。
  • 广域网(WAN):连接世界各地方的网络。
    在这里插入图片描述

② 按拓扑结构

  • 星型拓扑:交换机网络,如企业网络。
  • 环形拓扑:令牌环网,如FDDI网。
  • 总线型拓扑:以太网,如企业部门及网络。
  • 树型拓扑:层次级网络,如层次级城域网。
  • 网状拓扑:广域网。
    在这里插入图片描述

③ 按信息交换方式

  • 电路交换:如打电话时,两端通话期间占用一条单独的线路。传统的电话线路就属于电路交换。
  • 报文交换:通信两端在一个时间段内传递一个报文。
  • 报文分组交换:通信两端在一个时间段内传递一个报文分组,最后由通信双方合成一个报文。TCP/IP网络属于报文分组交换。

④ 按传输介质

  • 有线网:利用同轴电缆或双绞线介质通信的网络,如企业局域网。
  • 光纤网:利用光纤进行通信的网络,如国家骨干网。
  • 无线网:利用微波、磁波进行通信的网络,如手机GSM网、3G网和WIFI网。

⑤ 按通信方式

  • 点对点传输网络:交换机网络。
  • 广播式传输网络:以太网络。

⑥ 按网络使用目的:可分为共享资源网、数据处理网和数据传输网。

⑦ 按服务方式:可分为客户端/服务端网络和对等网。

⑧ 按照网络用途

  • 通信子网: 负责完成网络数据的传输,转发等通信处理任务,它属于OSI模型的下三层(物理层、链路层、网络层)。一方面,作为与资源子网的主机,终端链接的接口,将主机和终端连入网内;另一方面,作为通信子网中的分组存储转发节点,完成分组的接收、校验、存储、转发等功能,实现将源主机报文准确发送到目的主机的作用。
  • 资源子网:由主机系统,终端、终端控制器、联网外设、各种软件资源与信息资源组成。负责处理全网络面向应用的数据处理工作,而通信双方遵守共同协议。资源子网由计算机硬件和通信软件组成。
    在这里插入图片描述

五. 网络地址

1. 网络地址父类

在网络中,按照地址可把网络地址分为如下四类:

  • 物理地址:即MAC地址,如00-aa-00-64-c9-09。
  • 逻辑地址:即IP地址,如127.0.0.1。
  • 端口地址:应用基础端口号。
  • 域名地址:万维网地址,如www.baidu.com。

2. MAC地址

MAC地址为48位,0~23位叫做组织唯一标识符,由IEEE(电器电子工程师协会)管理,生产以太网网卡的厂家就购买其中一组,再自行分配后24位,逐个将唯一地址赋予以太网卡。MAC地址属于平面地址,五层次结构,每个网络设备的网络地址全球唯一,只能用于局部范围寻址,MAC地址存在于网络的数据链路层。

3. IP地址

IP地址标识着网络中一个主机的位置,每个IP地址由32位(IPv4地址,4个字节)组成。分为网络号、主机号两部分,但现在都是采用CIDR方案,所以,IP地址现在只能表示主机号。另外,IP地址也是全球唯一的,寻址很容易。

IP地址有两种表示形式,分为二进制数表示和点分十进制数表示,其中二进制数由计算机内部使用,点分十进制数是方便人们记忆而引入的。

IP地址按照用途分,可分为单播地址、广播地址和多播(组播)地址,其中广播地址和多播地址仅应用于UDP协议。

4. IP地址分类

??IPv4的IP地址通常采用点分十进制数表示。例如,二进制数IP地址0xc0a80002用点分十进制数可表示为192.168.0.2。Internet被各种路由器和网关设备分隔成很多网段,为了标识不同的网段,需要把32位的IP地址分成网络号和主机号两部分,网络号相同的各主机位于同一网段,相互间可以直接通信,网络号和不同的主机之间通信则需要通过路由器转发。

??最早的IP地址分类没有单独的网络号,将IP地址分为5类,以适应大型、中型、小型网络的需要:

  • 其中第一个字段是网络号(net-id),它标志主机或路由器所连接的网络。一个网络号在整个因特网内必须是唯一的。
  • 第二个字段是主机号(host-id),它标志该主机(或路由器)。一个主机号在它前面的网络号所指明的网络范围内必须是唯一的。
    在这里插入图片描述

??一个A类网络可以容纳的地址数量最大,能容纳1677万多台电脑,一个B类网络的地址数量是65536,一个C类网络的地址数量是256,D类地址用做多播地址,E类地址保留未用。

??随着Internet的飞速发展,这种划分方案的局限性很快显现出来,大多数组织都申请B类网络地址,导致B类地址很快就分配完了,而A类却浪费了大量地址。这种方式对网络的划分是扁平结构(flat)的,而不是层级结构(hierarchical)的,Internet上的每个路由器都必须掌握所有的网络信息,随着C类网络的大量出现,路由器需要检索的路由表越来越庞大,负担越来越重。

5. CIDR子网划分方法

??由于用一个IP地址来表示网络号和主机号造成了上面所述的问题,IEEE便提出了新的划分方案,即无类域间路由(Classless Inter-Domain Routing,CIDR)方案。网络号和主机号的划分需要用一个额外的子网掩码(subnet mask)来表示,而不能由IP地址本身的数值决定。也就是说,网络号和主机号的划分与这个IP地址是A类、B类还是C类无关,因此,称为无类型的。

??使用CIDR方案后,一个网络地址可包含IP地址和子网掩码两部分。例如,一个网络IP地址为140.252.20.68,子网掩码为255.255.255.0,也可用简洁的表示方法,如140.252.20…68/24。

进行自定义子网时,子网掩码需要由前面是连续的1和后面是连续的0构成。IP地址与子网掩码做“与”运算可以得到网络号。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-04-24 09:48:45  更:2022-04-24 09:49:39 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 4:14:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码