【Linux网络基础】网络拓扑、OSI层次模型、TCP/IP协议簇
一、前言
一个运维有时也要和网络打交道,所以具备最基本的网络知识,对一个运维人员来说是必要的。但,对于我们的工作来说这些并不是重点,因此,我不可能从最基础的网络知识开始讲起。本节内容更多是从一个梳理和总结的角度进行阐述。如若同学们遇到不懂,或不明白的地方,那么你要留心了,你有很多基础性的网络知识还不具备,我建议从网上有针对性的学习一下。
二、网络基础学习体系
网络的知识体系是一个庞大的体系,涉及到路由交换、安全、无线、语言、数据中心等多个方面,所以有很多的内容需要学习和了解。
思科课程体系的大致浏览(CCNA),虽然知识不多,培训周期一般在1周左右,但涵盖了大部分的知识内容,对于初步理解网络知识,掌握网络的相关配置,基本上已经非常满足了,特别是系统运维人员。
第1单元 | 第2单元 | 第3单元 | 第4单元 |
---|---|---|---|
网络基础 | 路由协议 | 二层交换网络 | WAN网络和IPv6 |
OSI七层模型 | IP路由原理 | VLAN | 串行点到点链路 |
TCP/IP简介 | 静态路由 | VTP | 帧中继网络 |
子网划分 | 默认路由 | STP | IPv6简介 |
Cisco IOS设备 | 动态路由 | 单臂路由 | |
管理网络环境 | 用户访问列表初步管理IP流量 |
说明:
对于系统运维人员,以上知识可以都学习一下,CCNA的学习难度不是很大,而且学习周期较短,对于快速成为一个系统运维工程师中,网络搞的最好的,就足够了。
如果时间精力有限,建议学习以下知识,作为步入网络知识的基石
- 网络基础知识:涉及到网络的发展历程,网络一些名词概念,路由交换。
- OSI七层模型的介绍
- TCP/IP协议簇的简介,包含TCP/IP三次握手和四次挥手的过程
- VLSM可变长子网的概念
三、网络重点知识总结性梳理
1. 网络拓扑
指构成网络的成员间特定的物理的,即真实的,或者逻辑的,即虚拟的排列方式。
如果两个网络的连接结构相同,我们就说它们的网络拓扑相同,尽管它们各自内部的物理接线、节点间距离可能会不同。
实质上网络拓扑就是类似于网络设备组成的一个连接图,通过设备的连接图可以判断设备的链接情况,便于出现故障时,根据拓扑图更快的定位故障点。
对于配置网络设备之前,一定要对网络设备进行规划,也就是网络设备如何进行链接,进而形成一个网络设备的连接图,即网络拓扑(类似于网络设备规划的地图)。
2. 网络的概念与发展
网络的演变发展过程:
- 简单的网络,是由两根网线将两个网络设备连接起来
- 在简单的网络环境中,就出现了IP地址的概念,类似于人的名字一样,便于互联访问;IP地址作为网络中的任意一个节点的标识符出现在网络中。
- 互联的网络,由于网络规模的壮大,就需要一个更科学的网络拓扑,因此出现了HUB(是一个总线)
- 但是HUB会出现冲突域的概念,某一时段,HUB接口中,只能有一个用户建立数据链路,和目的端进行通信,其他接口出于监听的状态(CSMA/CD技术)
- 介入设备越多,冲突几率越大
- 由于冲突域的问题,随着网路的发展,引入了交换机设备
- 交换机(switch,意为“开关”)是一种用于电信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。
- 最常见的交换机是以太网交换机
- 其他常见的还有:电话语音交换机、光纤交换机等
3. 交换机switch
交换机(switch,意为“开关”)是一种用于电信号转发的网络设备。
它可以为接入交换机的任意两个网络节点提供独享的电信号通路。
- 最常见的交换机是以太网交换机
- 其他常见的还有:电话语音交换机、光纤交换机等
作用和特点:
- 在一个交换机的端口上所连接的所有终端设备,均在一个网段上(称为一个广播域),并且一个网段会有一个统一的网络标识,会产生广播消耗设备CPU资源
- 交换机可以隔离冲突域,每一个端口就是一个冲突域
- 终端用户的设备接入:路由器指的不是家用的路由器,而是网络中的终端设备,非网络工程师很少见
- 基本的安全功能:如MAC地址的绑定功能
- 广播域的隔离(VLAN):VLAN,virtual LAN,在同一个广播域中分隔多个小的广播域,降低广播风暴的影响
广播域的介绍
广播方式不会根据需要传输或接收消息,而是在一个网段中全部机器都要进行无条件接收,因此当广播信息大量产生时,会耗费网段机器的CPU资源,来接收广播信息,即所谓的广播风暴。
两个不同的广播是不能进行通信的,因为所属在不同的两个网段中。
提示:相同的网段就是一个统一的网络标识。
4. 路由器router
常用的路由协议:OSPF路由协议,大企业RIP,静态路由route。
CISCO,广域网、公网互联需要路由器,路由器不转发私网地址。
路由器的实质是 隔离广播域,是两个广播域之间信息互通,也就是使两个不同的网段之间互相连通。
路由器的作用和特点:
- 路由协议的转发:
- 路由类似于现实生活中从A地到B地可能需要先不行,再坐车,再坐飞机才能到达B地。这个的整个过程在网络中对应数据的传递过程就称为路由。
- 因此,一个数据信息跨越不同的网段传递到目的地址,就可以把传递数据的过程称为路由,也可以看做每条传递数据的路径
- 数据转发,会维护一个路由表(相当于一个地图)
- 路由器会作为网关
- 一般会在网络出口的位置摆放一台路由器
- 广域网链路支持
协议
http协议,tcp/ip协议族
- tcp/ip 协议的三次握手和四次断开过程
- http协议的工作原理(拔高)
四、网络层次结构的划分
1. 园区网简单介绍
2. 网络的层次说明
核心层:
核心层的功能主要是 实现骨干网络之间的优化传输,骨干层设计任务的重点通常是冗余能力、可靠性和高速的传输
汇聚层:
汇聚层是楼群或小区的信息汇聚点,是连接接入层和核心层的网络设备,为接入层提供数据的汇聚、传输、管理、分发处理。
汇聚层为接入层提供基于策略的连接,如:地址合并、协议过滤、路由服务、认证管理等。
通过网段划分(如VLAN)与网络隔离可以防止某些网段的问题蔓延和影响到核心层。
汇聚层同时也可以提供接入虚拟网之间的互联,控制和限制接入层对核心层的访问,保证核心层的安全和稳定。
接入层:
接入层通常指网络中直接面向用户连接或访问的部分。
接入层的目的是 允许终端用户连接到网络,因此接入层交互机具有低成本和高端口密度特性。
3. OSI网络模型概念
OSI的概念:
open system interconnect 开放系统互联参考模型,是由ISO(国际标准化组织)定义的。
是个灵活的、稳健的和可互操作的模型,并不是协议,是用来了解和设计网络体系结构的。
OSI模型的目的:
规范不同系统的互联标准,使两个不同的系统能够较容易的通信,而不需要改变底层的硬件或软件的逻辑。
OSI模型分为7层:
OSI把网络按照层次分为7层,由下到上分别为:
- 物理层
- 数据链路层
- 网络层
- 传输层
- 会话层
- 表示层
- 应用层
为什么分为7层?
- 上层分为(boos 秘书 商务):秘书可以负责将信息进行编码,然后将数据加密和压缩等,将boss的信息传递给商务部
- 传输层(销售部、采购部),作为一个传输的通道,进行长期的连接,可以将从上层获得的流量进行一个分段
- 进行连接会话的建立,并且可以是可靠的连接
- 将上层的数据进行分块/分段
- 网络层(邮局):将流量送到目的地,是一个寻址的概念,并且把上层分好段的设备进行一个打包
- 数据链路层:将打包的设备运输到家门口,进行拆包,分给公司内部的每个人,也负责将上层的打包分派给底层的搬运工
- 物理层:就相当于搬运工。
OSI层模型的结构:
可以依靠OSI参考模型,作为一个通信的依据。
- 应用层:应用程序及接口
- 表示层:对数据进行转换、加密和压缩
- 会话层:建立、管理和中止会话
- 传输层:提供可靠的端到端的报文传输和差别控制
- 网络层:将分组从源端传送到目的端;提供网络互连
- 数据链路层:将分组数据分装成帧;提供节点到节点方式的传输
- 物理层:在媒体上传输比特;提供机械和电气的规约
层次 | 说明 | 功能/协议 |
---|---|---|
应用层 | 应用程序及接口,类似于公司的老板 | 提供应用程序的接口FTP telnet http pop3等 |
表示层 | 对数据进行转换,加密和压缩 | 将上层的数据进行转换和编译压缩为标准的文件,如jpg,gif,ascii码等 |
会话层 | 建立,管理和终止会话 | |
传输层 | 提供可靠的端到端的报文传输和差错控制,实质上就是负责建立连接的 | TCP UDP 建立可靠和非可靠连接将上层的数据进行分段处理 |
网络层 | 将分组从源端传送到目的端,提供网络互联 | 实质上就是提供路由寻址(IP协议)将上层分段的数据进行打包 |
数据链路层 | 将分组数据封装成帧,提供节点到节点的传输 | 帧就是本地局域网中传输数据的一个单元,负责在局域网内部的点对点的寻址 |
物理层 | 在媒体上传输比特 | 就是底层的链路介质的规范 |
特点说明:
- OSI 模型每层都有自己的功能集
- 层与层之间相互独立又互相依靠
- 上层依赖于下层,下层为上层提供服务
1. OSI层次--应用层
- 为应用软件提供接口,使应用程序能够使用网络服务
常见的应用层协议:
- http(80), ftp(20/21), smtp(25), pop3(110), telnet(23), dns(53)等
2. OSI层次--表示层
- 数据的解码和编码
- 数据的加密和解密
- 数据的压缩和解压缩
3. OSI层次--会话层
- 建立、维护和管理应用程序之间的会话
功能:
- 对话控制
- 同步
4. OSI层次--传输层
- 负责建立端到端的连接,保证报文在端到端之间的传输
传输层的功能:
- 服务点编址、分段与重组、连接控制、流量控制、差错控制。
5. OSI层次--网络层
- 负责将分组数据从源端传输到目的端
网络层作用:
- 为网络设备提供逻辑地址
- 进行路由选择、分组转发
网络层:对应设备有路由器。
路由器的作用:
- 广播、组播控制
- 对数据做寻址、选择到达目的的网络的最佳路径
- 流量管理
- 连接广域网 WAN
IP 地址的概念说明:
根据地址的概念,来举例介绍网络号和主机号的概念,以及路由寻址和路由的概念。
6. OSI层次--数据链路层
- 在不可靠的物理链路上,提供可靠的数据传输服务,把帧从一跳(结点)移动到另一跳(结点)。
数据链路层的功能:
- 组帧、物理编址、流量控制、差错控制、接入控制
数据链路层:MAC 层-IEEE 802.3 协议,MAC地址是48bit
IP地址是三层地址,那么 mac地址就是 二层地址。
全球网络设备唯一的地址作用的域不同:IP作用在不同的网络之间,MAC地址作用在相同的网络内部MAC地址 48位的地址,采用16进制表示
MAC地址是硬件地址,IP地址会被看做是逻辑地址
数据链路层:对应设备有交换机
7. OSI层次--物理层
- 负责把逐个的比特从一跳(结点)移动到另一跳(节点)
物理层的功能:
- 定义接口和媒体的物理特性
- 定义比特的表示、数据传输效率、信号的传输模式(单工、半双工、全双工)
- 定义网络物理拓扑(网状、星型、环型、总线型等拓扑)
就是将逐个的bit进行传输的过程。
网络物理连接介质:网线
要连接局域网,网线是必不可少的。
在局域网中常见的网线主要为双绞线。
双绞线是由许多对线组成的数据传输线。
它的特点就是价格便宜,所以被广泛应用,如我们常用的电话线等。它是用来RJ45水晶头相连的。
制作规范:
568A 不怎么用了
568B 线序:橙白、橙、绿白、蓝、蓝白、绿、棕白、棕
网络物理连接截止:光纤线
8. OSI层次模型总结
9. OSI 网际互联
传输过程说明:
假设A用户要传输数据给B用户,并且A用户和B用户是在两个不同的网段中
- 数据请求从A的应用层发出,传输到表示层进行数据的编译、加密、压缩
- 表示层将数据发送到会话层
- 传输层由端口号的概念用于识别上层的服务,并且将上层的服务进行分段,并且用于保持A-B之间的通信连接,以及连接的可靠性【TCP】
- 在网络层将数据进行打包,并在打包后的数据前面,定义目标IP地址和源地址IP地址【IP】
- 在数据链路层进行再加工,在加工后的数据假面定义目标MAC和源MAC地址【MAC】
- 在物理层,最终将数据变化为机器识别的10101的二进制编码,在网线上进行传输
- 到了路由器要对数据进行转发,依次会解压数据的信息,获得到目标IP网段,路由器是依据IP地址转发数据的,所以工作在3层,因此收到数据包,要先将二进制码转换为帧,再将帧转换为ip数据包,对ip数据包目标地址进行寻址
- 根据路由表确认到相应的传输接口后,会再将数据打包好进行传输
- B收到数据后,再依次解包,收到相应的数据,反之亦然。
10. OSI互联数据包封装过程
封装的过程,就是从上至下,将数据进行打包的过程,并且在每一层加上相应的字段进行标识。
11. OSI互联数据包解封装过程
提问:A--B传输的过程,具体 IPA -- IPB,macA--macB的传输过程进行思考
4. TCP/IP协议簇(DoD参考模型)
- 传输控制协议(tcp/ip)簇是相关国防部DoD所创建的,主要用来确保数据的完整性以及在毁灭性战争中维持通信
- 是由一组不同功能的协议组合在一起构成的协议簇
- 利用一组协议完成OSI所实现的功能
1. TCP/IP 协议簇中的相关协议
TCP/IP协议簇--应用层:
TCP/IP协议簇--主机到主机层:
TCP与UDP对比:
TCP相关报文结构:
- 源端口:即本地发起连接的端口
- 目标端口:即要访问的服务的端口
- 序列号:因为传输层会将上层的数据进行分段,因此需要对分段数据进行编号,同时也便于数据的重组
- 验证号:用于对数据的进行验证
UDP相关报文结构:
TCP/UDP端口号(1-65535)
- 在没有特殊指定情况下,源端口随机分配,目标端口使用知名端口
- 应用客户端使用的源端口号一般为系统中未使用的且大于1023的
- 目标端口号为服务器端应用服务的进程,如:telnet为23
【Linux网络基础】网络拓扑、OSI层次模型、TCP/IP协议簇的更多相关文章
- 【Linux网络基础】TCP/IP协议簇的详细介绍(三次握手四次断开,11种状态)
一.TCP/IP协议簇(DoD参考模型) 用于简化OSI层次,以及相关的标准. 传输控制协议(tcp/ip)簇是相关国防部DoD所创建的,主要用来确保数据的完整性以及在毁灭性战争中维持通信 是由一组不 ...
- 【Linux网络基础】TCP/IP 协议簇(各个常见协议介绍)
一.应用层协议 1. FTP 协议所在层次:应用层协议 名称:FTP协议 协议端口:20,21 协议说明: FTP(File Transfer Protocol,文件传输协议)是TCP/IP协议组 ...
- 网络基础二 tcp/ip协议簇 端口 三次握手 四次挥手 11种状态集
第1章 概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成 ...
- 计算机网络——OSI、TCP/IP协议族详解
一.OSI七层协议体系结构域TCP/IP四层体系结构对比 ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是 ...
- TCP/IP 协议簇 端口 三次握手 四次挥手 11种状态集
第1章 概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN(Virtual LAN),翻译成中文是“虚拟局域网”.LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成 ...
- TCP/IP协议簇分层详解---转
http://blog.csdn.net/hankscpp/article/details/8611229 一. TCP/IP 和 ISO/OSI ISO/OSI模型,即开放式通信系统互联参考模型(O ...
- TCP/IP协议簇 端口 三次握手 四次挥手 11种状态集
第一章:概念介绍 1.1 VLAN 1.1.1 什么是VLAN VLAN (Virturl LAN) ,翻译成中文是:“虚拟局域网”.VLAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计 ...
- 套接字、UDP通信、TCP通信、TCP/IP协议簇
一.套接字(socket) 1.英语单词socket:n.插座:穴:v.插入插座 2.套接字就是源IP地址和目的IP地址.源端口号和目的端口号的组合,是通过传输层进行通信的.IP指定电脑,端口指定某一 ...
- 简单概述 TCP/IP 协议簇
前言 通信协议是计算机之间交换信息所使用的一种公共语言的规范和约定.Internet 的通信协议包含 100 多种相互关联的协议,但是 TCP 和 IP 是其中两个最核心的关键协议,所以把 Inter ...
随机推荐
- html 中video标签视频不自动播放的问题
有个需求,客户想做个打开官网自动播放一段视频,楼主使用了video标签,即下面的代码::于是我在video标签上添加了属性 autoplay=“autoplay” loop=“loop”然而通过地址栏 ...
- 微信小程序placeholder设置自定义颜色
原地址链接:https://blog.csdn.net/august_leo/article/details/80877382 这是微信小程序input组件的官方文档描述,下图红框里的placehol ...
- 用最新的版本,蹦最野的迪~~~IDE写大数据程序避坑指南
文章更新于:2020-04-05 注:本次实验使用的操作系统及各个程序版本号 类别 版本号 说明 操作系统 Ubuntu 16.04.6 LTS 代号 xenial jdk java version ...
- 家庭版记账本app进度之对于按钮的点击事件以及线性布局以及(alertdialog)等相关内容的应用测试
通过线性布局,制作出连个按钮还有文本输入框以及嘴上放的标题文本进行信息的相关显示,完后最后的信息的输入,之后在屏幕的的下方进行显示 当点击第一个按钮的时候,在下方就会简单的出现你自己刚刚输入的相关信息 ...
- wireshark抓包实战(五),首选项设置和基本的抓包设置
一.首选项 首选项一般是修改软件底层的一些默认参数 选中编辑,点击首选项按钮 二.抓包选项设置 点击捕获,选中选项 1.捕获网卡设置 2.保存文件方式设置 很多情况下wireshark会保存很大的数据 ...
- java day04记录
本文主要记录arr数组用法.count计算.arr倒排序技巧案例 package day4homework; import java.util.Scanner; /* 从键盘上输入10个整数,合法值位 ...
- JS入门系列(1)-原型-函数原型
实例1: 首先定义一个Persion类或者说是函数 var p1 = Persion();:表示,作为普通函数调用 var p2 = new Persion();:表示,作为构造器调用 创建函数之后, ...
- python3(十三)map reduce
# map()函数接收两个参数,一个是函数,一个是Iterable, # map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回. def f(x): return x * ...
- 在linux中使用mailx发送邮件
[root@ml ~]# yum -y install mailx #安装 [root@ml ~]# vim /etc/mail.rc 在最后一行添加(我这里使用的是qq邮箱): @qq.com ...
- Python——flask漏洞探究
python的用途是真的多,就连网站也能做,这个有点像Java的Servlet flask基础 hello world 我们先从基础的开始,在网页上打出hello world,python代码如下: ...