初识网络原理
作者:mmseoamin日期:2024-01-21

文章目录

  • 局域⽹LAN
    • (1)基于网线直连
    • (2)基于集线器组建
    • (3)基于交换机组建
    • (4)基于交换机和路由器组建
    • ⼴域网WAN
    • ⽹络通信基础
      • IP地址
      • 端⼝号
      • 认识协议
      • 五元组
      • 协议分层
      • OSI七层模型
      • TCP/IP五层(或四层)模型
      • ⽹络设备所在分层
      • 封装和分用

        局域⽹LAN

        局域⽹,即Local Area Network,简称LAN。

        Local即标识了局域⽹是本地,局部组建的⼀种私有⽹络。

        局域⽹内的主机之间能⽅便的进⾏⽹络通信,⼜称为内⽹;局域⽹和局域⽹之间在没有连接的情况

        下,是⽆法通信的。

        局域⽹组建⽹络的⽅式有很多种:

        (1)基于网线直连

        初识网络原理,在这里插入图片描述,第1张

        (2)基于集线器组建

        初识网络原理,在这里插入图片描述,第2张

        (3)基于交换机组建

        初识网络原理,在这里插入图片描述,第3张

        (4)基于交换机和路由器组建

        初识网络原理,在这里插入图片描述,第4张

        ⼴域网WAN

        ⼴域⽹,即Wide Area Network,简称WAN。

        通过路由器,将多个局域⽹连接起来,在物理上组成很⼤范围的⽹络,就形成了⼴域⽹。⼴域⽹内部的局域⽹都属于其⼦⽹。

        初识网络原理,在这里插入图片描述,第5张

        如果有北、中、南等分公司,甚⾄海外分公司,把这些分公司以专线⽅式连接起来,即称为“⼴域⽹”。

        如果属于全球化的公共型⼴域⽹,则称为互联⽹(⼜称公⽹,外⽹),属于⼴域⽹的⼀个⼦集。

        有时在不严格的环境下说的⼴域⽹,其实是指互联⽹。

        所谓"局域⽹"和"⼴域⽹"只是⼀个相对的概念。⽐如,我们有"天朝特⾊"的⼴域⽹,也可以看做⼀个⽐较⼤的局域⽹

        ⽹络通信基础

        ⽹络互连的⽬的是进⾏⽹络通信,也即是⽹络数据传输,更具体⼀点,是⽹络主机中的不同进程间,基于⽹络传输数据。

        那么,在组建的⽹络中,如何判断到底是从哪台主机,将数据传输到那台主机呢?这就需要使⽤IP地址来标识。

        IP地址

        概念

        IP地址主要⽤于标识⽹络主机、其他⽹络设备(如路由器)的⽹络地址。简单说,IP地址⽤于定位主机的⽹络地址。

        就像我们发送快递⼀样,需要知道对⽅的收货地址,快递员才能将包裹送到⽬的地。

        格式

        IP地址是⼀个32位的⼆进制数,通常被分割为4个“8位⼆进制数”(也就是4个字节),如:01100100.00000100.00000101.00000110。

        通常⽤“点分⼗进制”的⽅式来表⽰,即a.b.c.d的形式(a,b,c,d都是0~255之间的⼗进制整数)。如:100.4.5.6。

        端⼝号

        概念

        在⽹络通信中,IP地址⽤于标识主机⽹络地址,端⼝号可以标识主机中发送数据、接收数据的进程。

        简单说:端⼝号⽤于定位主机中的进程。

        类似发送快递时,不光需要指定收货地址(IP地址),还需要指定收货⼈(端⼝号)。

        格式

        端⼝号是0~65535范围的数字,在⽹络通信中,进程可以通过绑定⼀个端⼝号,来发送及接收⽹络数据。

        问题:

        有了IP地址和端⼝号,可以定位到⽹络中唯⼀的⼀个进程,但还存在⼀个问题,⽹络通信是基于⼆进制0/1数据来传输,如何告诉对⽅发送的数据是什么样的呢?

        ⽹络通信传输的数据类型可能有多种:图⽚,视频,⽂本等。同⼀个类型的数据,格式可能也不同,如发送⼀个⽂本字符串“你好!”:如何标识发送的数据是⽂本类型,及⽂本的编码格式呢?

        基于⽹络数据传输,需要使⽤协议来规定双⽅的数据格式。

        认识协议

        概念

        协议,⽹络协议的简称,⽹络协议是⽹络通信(即⽹络数据传输)经过的所有⽹络设备都必须共同遵从的⼀组约定、规则。如怎么样建⽴连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。

        协议(protocol)最终体现为在⽹络上传输的数据包的格式。

        作用

        为什么需要协议?

        就好⽐⻅⽹友,彼此协商胸⼝插⽀玫瑰花⻅⾯,这就是⼀种提前的约定,也可以称之为协议。

        初识网络原理,在这里插入图片描述,第6张

        计算机之间的传输媒介是光信号和电信号。通过"频率"和"强弱"来表⽰0和1这样的信息。要想传递各种不同的信息,就需要约定好双⽅的数据格式。

        • 计算机⽣产⼚商有很多;

        • 计算机操作系统,也有很多;

        • 计算机⽹络硬件设备,还是有很多;

        如何让这些不同⼚商之间⽣产的计算机能够相互顺畅的通信?

        就需要有⼈站出来,约定⼀个共同的标准,⼤家都来遵守,这就是⽹络协议;

        五元组

        在TCP/IP协议中,⽤五元组来标识⼀个⽹络通信:

        1. 源IP:标识源主机
        2. 源端口号:标识源主机中该次通信发送数据的进程
        3. 目的IP:标识⽬的主机
        4. 目的端口号:标识⽬的主机中该次通信接收数据的进程
        5. 协议号:标识发送进程和接收进程双⽅约定的数据格式

        初识网络原理,在这里插入图片描述,第7张

        协议分层

        对于⽹络协议来说,往往分成⼏个层次进⾏定义。

        分层的作用

        为什么需要⽹络协议的分层?

        分层最⼤的好处,类似于⾯向接⼝编程:定义好两层间的接⼝规范,让双⽅遵循这个规范来对接。

        在代码中,类似于定义好⼀个接⼝,⼀⽅为接⼝的实现类(提供⽅,提供服务),⼀⽅为接⼝的使⽤

        类(使⽤⽅,使⽤服务):

        • 对于使⽤⽅来说,并不关⼼提供⽅是如何实现的,只需要使⽤接⼝即可

        • 对于提供⽅来说,利⽤封装的特性,隐藏了实现的细节,只需要开放接⼝即可。

        OSI七层模型

        OSI:即Open System Interconnection,开放系统互连

        • OSI七层⽹络模型是⼀个逻辑上的定义和规范:把⽹络从逻辑上分为了7层。

        • OSI 七层模型是⼀种框架性的设计⽅法,其最主要的功能使就是帮助不同类型的主机实现数据传

        输;

        OSI七层模型划分为以下七层:

        初识网络原理,在这里插入图片描述,第8张

        OSI七层模型既复杂⼜不实⽤:所以OSI七层模型没有落地、实现。

        实际组建⽹络时,只是以OSI七层模型设计中的部分分层,也即是以下TCP/IP五层(或四层)模型来实现。

        TCP/IP五层(或四层)模型

        TCP/IP是⼀组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。

        TCP/IP通讯协议采⽤了5层的层级结构,每⼀层都呼叫它的下⼀层所提供的⽹络来完成⾃⼰的需求。

        • 应用层:负责应⽤程序间沟通,如简单电⼦邮件传输(SMTP)、⽂件传输协议(FTP)、⽹络远程访问协议(Telnet)等。我们的⽹络编程主要就是针对应⽤层。

        • 传输层:负责两台主机之间的数据传输。如传输控制协议(TCP),能够确保数据可靠的从源主机发送到⽬标主机。

        • ⽹络层:负责地址管理和路由选择。例如在IP协议中,通过IP地址来标识⼀台主机,并通过路由表的⽅式规划出两台主机之间的数据传输的线路(路由)。路由器(Router)⼯作在⽹路层。

        • 数据链路层:负责设备之间的数据帧的传送和识别。例如⽹卡设备的驱动、帧同步(就是说从⽹线上检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就⾃动重发)、数据差错校验等⼯作。有以太⽹、令牌环⽹,⽆线LAN等标准。交换机(Switch)⼯作在数据链路层。

        • 物理层:负责光/电信号的传递⽅式。⽐如现在以太⽹通⽤的⽹线(双绞线)、早期以太⽹采⽤的的同轴电缆(现在主要⽤于有线电视)、光纤,现在的wifi⽆线⽹使⽤电磁波等都属于物理层的概念。物理层的能⼒决定了最⼤传输速率、传输距离、抗⼲扰性等。集线器(Hub)⼯作在物理层。

        初识网络原理,在这里插入图片描述,第9张

        ⽹络设备所在分层

        • 对于⼀台主机,它的操作系统内核实现了从传输层到物理层的内容,也即是TCP/IP五层模型的下四层;

        • 对于⼀台路由器,它实现了从⽹络层到物理层,也即是TCP/IP五层模型的下三层;

        • 对于⼀台交换机,它实现了从数据链路层到物理层,也即是TCP/IP五层模型的下两层;

        • 对于集线器,它只实现了物理层;

        注意我们这⾥说的是传统意义上的交换机和路由器,也称为⼆层交换机(⼯作在TCP/IP五层模型的下两层)、三层路由器(⼯作在TCP/IP五层模型的下三层)。

        随着现在⽹络设备技术的不断发展,也出现了很多3层或4层交换机,4层路由器。我们以下说的络设备都是传统意义上的交换机和路由器。

        ⽹络分层对应

        ⽹络数据传输时,经过不同的⽹络节点(主机、路由器)时,⽹络分层需要对应。以下为同⼀个⽹段内的两台主机进⾏⽂件传输:

        初识网络原理,在这里插入图片描述,第10张

        初识网络原理,在这里插入图片描述,第11张

        初识网络原理,在这里插入图片描述,第12张

        封装和分用

        • 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在⽹络层叫做数据报

        (datagram),在链路层叫做帧(frame)。

        • 应⽤层数据通过协议栈发到⽹络上时,每层协议都要加上⼀个数据⾸部(header),称为封装

        (Encapsulation)。

        • ⾸部信息中包含了⼀些类似于⾸部有多⻓,载荷(payload)有多⻓,上层协议是什么等信息。

        • 数据封装成帧后发到传输介质上,到达⽬的主机后每层协议再剥掉相应的⾸部,根据⾸部中的"上

        层协议字段"将数据交给对应的上层协议处理。

        下图为数据封装的过程

        初识网络原理,在这里插入图片描述,第13张