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 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> HCIP day1 -> 正文阅读

[网络协议]HCIP day1

HCIP day1

OSI七层网络模型

1.应用层 人类语言(抽象)输入输出 抽象语言–>编码
2.表示层 编码–>二进制(数据)上三层均为应用程序处理加工数据,上三层被称为应用流层
3.会话层 应用程序内部提供的内部区分地址
4.传输层 提供端口号 分段(受MTU限制)TCP/UDP 下四层负责数据的传输 统称为数5.据流层
6.网络层 —路由器 internet协议(ip)
7.介质访问控制层–MAC层 控制物理硬件

传输层

提供端口号,分段(受MTU限制) TCP/UDP
1.通过端口号来区分不同的服务
a.静态端口号1-1023 一个端口号对应一个服务–呈永久绑定关系 80 23 22 21 20 53
b.动态端口号 1024-65535 一个端口号对应一个服务—呈暂时性绑定关系
c.特殊端口号0—代表所有端口号–网络编程中使用
2.数据分段
MSS 最大段长度 1480b
MTU最大传输单元 1500b
3.提供可靠的传输
TCP 传输控制协议 —面向连接的可靠传输协议
可靠机制:确认 重传 排序 流控
UDP 用户数据报文协议 —非面向连接的不可靠传输协议

网络层

Internet 协议 – IP地址
编址、寻址、根据IP地址来进行逻辑寻址 ipv4地址
介质访问控制层–MAC 控制物理硬件

数据链路层

根据Mac地址来物理寻址
MAC媒介访问控制子层
LLC逻辑链路控制子层

PDU:协议数据单元

上三层:数据报文
传输层:数据段
网络层:数据包
数据链路层:数据帧
物理层:比特流

IP地址

IPV4——私有地址、公有地址
32位2进制数——点分十进制的表示方法
一个完整的IP地址拥有网络掩码
netmast
网络掩码的作用:区分网络位和主机位
IPv4地址通过第一个8位还区分了主类
A:1-126
B:128-191
C:192-223
D:224-239
E:240-254
0.0.0.0/0 代表所有地址
127.0.0.1:本地环回地址
167.254.x.x:本地私有地址
192.168.1.0:主机位全0,网段号
192.168.1.255:主机位全1,网段广播地址
255.255.255.255:广播到所有的ip地址,仅作为目标地址
192.168.1.1/24
私有地址——本地唯一,免费
10.0.0.0/8
172.16.0.0/16-172.31.0.0/16
192.168.0.0/24-192.168.255.0/24
公有地址——全球唯一,付费

ARP协议

在同一个广播域目标mac未知的前提下,通过广播获取目标mac地址所使用的技术被称之为arp(地址解析协议)
arp的分类
正向arp:已知对端ip,通过广播来获取对端mac
反向arp:已知对端地址的mac,来获取对端的ip地址
免费arp:检测地址冲突

VLSM

可变长子网掩码
做法:通过借用主机位来充当网络位

CIDR

无类域间路由——汇总
做法:母网号一致,保留相同位去不同为
超网:汇总后的子网掩码长度小于主类子网掩码长度

VRP的使用

VRP——通用路由平台——华为设备的操作系统
IOS——思科
comware——H3C

路由器

路由器有一个非常重要的功能:选路
1.不同网络之间的互联
2.为它承载的数据,选择一条最适合的路,到达想去的网段
路由器中也有一张地图,叫做路由表
路由表功能:若表中存在记录 存在相应网段路由,我们无条件转发
如果表中不存在记录,直接丢
交换机认识直接转发,不认识洪泛
我们想要解决这个问题
加一条路进去,在路由器中我们称之为静态路由

静态路由

静态协议的优缺点:
缺点:1、中大型网络配置量过大
? 2、不能基于拓扑的变化而实时的变化
优点:
1、不会额外占用物理资源
2、安全问题
3、计算路径的问题

ip route-static 想去的网段 网段掩码 下一跳地址
ip route-static 想去的网段 网段掩码 出接口 下一跳地址
网络分为很多种不同的类型
1.点到点网络
2.点到多点网络

虚拟接口

环回口
个人PC上 环回口 127.0.0.1(ping不通表示网卡有问题)
127 --环回127.0.0.1 用于测试该设备的TCP/IP协议栈道能否正常工作

路由汇总

取相同位,去不同位

缺省路由

以0.0.0.0代表目标网段,子网掩码长度为0

路由黑洞

汇总的地址中包含了网络中不存在的网段,将导致流量的有去无回,尽量精确汇总来避免

空接口路由

为了防止网络出现环路,路由器使用最长匹配原则

浮动静态路由

静态路由的默认优先级为60;优先级0-255,越小越优;
在编写静态路由的时候,通过修改默认的优先级,来实现静态路由的效果。

TCP/IP模型 — TCP/IP协议簇

TCP/IP四层模型 — TCP/IP标准模型

TCP/IP五层模型 — TCP/IP对等模型

TCP和UDP的应用场景

TCP更适合于效率要求相对较低,但准确性要求较高的场景。

UDP更适合于效率要求相对较高,但准确性要求较低的场景 (即事类通讯)

可靠传输:按需传输、有确认机制、丢失重传、严格校验

不可靠传输:只管传,其他都不管,尽力而为音乐

UDP:语音类,实时传输类(视频,游戏)

TCP:文件类,追求完整传输的信息类

微信和QQ的聊天数据用的是UDP

封装和解封装

我们一般把数据从应用层开始到数据链路层的加工过程称为封装,反过程称为解封装

封装 — 将每一层最重要的数据添加到原始数据当中,来实现这一层的功能

应用层 — 应用层需要进行封装,封装方式取决于不同的应用

传输层 — 端口号 — TCP/UDP

网络层 — IP地址 — IP协议

数据链路层 — MAC地址 — 以太网协议

物理层

TCP/IP模型和OSI模型的区别:TCP/IP模型支持跨层封装

TCP/IP的跨层封装一般应用在直连设备之间的近距离通讯

跨层封装主要存在两种形式

1.跨四层封装 — OSPF

2.跨三,四层封装 — 直连交换机

四层详解

传输层:解决数据交给哪个应用程序,端口字段

还需要解决传输的质量和方法

两种传输协议,对应了两种不同的传输服务,TCP和UDP

TCP是一种可靠的传输协议,UDP是一种不可靠的传输协议
面向连接与无连接

面向连接与无连接

面向连接的意思是数据传输之前收发俩方需建立一条逻辑通路,类似我们电话时不能拿起来就说,需要先拨 号,对方拿起接通电话之后,才能说话,这里说话之前的动作就是面向连接。 无连接的意思是通信前不需要建立通路,通信完也不需要断开,自由发送。类似于古代的寄信,寄之前不需要 向对方打招呼,邮差收到信也不需要确认收件人是否方便接信直接处理就行。

TCP和UDP的应用场景

TCP更适合于效率要求相对较低,但准确性要求较高的场景。

UDP更适合于效率要求相对较高,但准确性要求较低的场景 (即事类通讯)

可靠传输:按需传输、有确认机制、丢失重传、严格校验

不可靠传输:只管传,其他都不管,尽力而为音乐

UDP:语音类,实时传输类(视频,游戏)

TCP:文件类,追求完整传输的信息类

微信和QQ的聊天数据用的是UDP

tcp的头部:

源端口:启动应用时根据空闲端口随机生成
在这里插入图片描述源端口:启动应用是根据空闲端口随机生成。
目的端口:固定的,代表了某中特定的应用。1-65535 范围,其中1-1023是知名端口号,代表的知名应
用。比如:http 80,ftp 20,21,https 443,ssh 22,telnet 23 。

首先,源端口与目的端口必不可少,没有这个数据就不知道发给那个应用。下来是报文序列号,为什么需要给 报文编号呢,当然是解决数据的乱序问题,不编个号怎么确认那个数据是先来的那个是后到的。然后确认序列 号,发出去的报文应该有个确认,不然我怎么知道对方收到没收到,如果没收到就应该重传,当然出现损坏也 会重传,如果是职场人,凡事有个响应是必要的。TCP是一个可靠传输协议,他面临的网络环境可能很复杂, 网络层是没有可靠性保证的,如果网络环境比较差,TCP作为靠谱协议他不能改变网络环境但是他可以通过算 法和重传来保证数据传输可靠。 下来的数据偏移指的是首部长度,指出TCP报文段的数据起始处距离TCP报文段的起始处有多远,以32比 特(4字节)为计算单位。最多有60字节的首部,若无选项字段,正常为20字节。Reserved, 保留字段,必须填0。 接下来是一些状态位,syn表示发起一个连接,ack是确认,RST是重新连接,表明TCP连接中出现严重错 误(如由于主机崩溃或其他原因),必须释放连接,然后再重新建立连接。FIN表示断开连接。PSH,表示数据 应尽快的交付接收应用进程,而不再等待整个缓存都填满了后再向上交付。URG,紧急指针有效标识。它告诉 系统此报文段中有紧急数据,应尽快传送(相当于高优先级的数据)。 window表示窗口大小,TCP能够做一次发多个数据,而不是一个一个发送,这样效率更高,确认是只需 要确认最后一个即可。那么窗口值设置多少好呢,TCP有流控机制,根据双方发送能力和接受能力来,也就是 说不能发的太多把对方撑死,也不能太少把对方饿死,TCP还有拥塞机制,如果网络传输拥塞丢包了,他就会 降低窗口值减小速度,也就说路上堵车我管不了,我能做的就是不开车骑个单车上班,尽量不迟到,不能改变 世界我就改变自己。这里其实就是算法来控制的,大家下去需要查阅资料写在作业里面,TCP的慢启动算法, TCP的拥塞避免算法,快重传算法,快速恢复算法等。

TCP的运行过程:

三次握手:

第一次握手
客户端给服务器发送一个SYN段(在 TCP 标头中 SYN 位字段为 1 的 TCP/IP 数据包), 该段中也包含客户端的初始序列号(Sequence number = J)。

第二次握手
服务器返回客户端 SYN +ACK 段(在 TCP 标头中SYN和ACK位字段都为 1 的 TCP/IP 数据包), 该段中包含服务器的初始序列号(Sequence number = K);同时使 Acknowledgment number = J + 1来表示确认已收到客户端的 SYN段(Sequence number = J)。

第三次握手
客户端给服务器响应一个ACK段(在 TCP 标头中 ACK 位字段为 1 的 TCP/IP 数据包), 该段中使 Acknowledgment number = K + 1来表示确认已收到服务器的 SYN段(Sequence number = K)

四次挥手

第一次挥手:
客户端向服务器端发送断开 TCP 连接请求的FIN=1报文,在报文中随机生成一个序列号 SEQ=x,表示要断开 TCP 连接。

第二次挥手:
当服务器端收到客户端发来的断开 TCP 连接的请求后,回复发送标志位ACK=1报文,表示已经收到断开请求。回复时,随机生成一个序列号 SEQ=y。由于回复的是客户端发来的请求,所以在客户端请求序列号 SEQ=x的基础上加 1,得到确认序列号ACK=x+1。

第三次挥手:
服务器端在回复完客户端的 TCP 断开请求后,不会马上进行 TCP 连接的断开。服务器端会先确认断开前,所有传输到客户端的数据是否已经传输完毕。确认数据传输完毕后才进行断开,向客户端发送FIN=1报文。再次随机生成一个序列号 SEQ=z。由于还是对客户端发来的 TCP 断开请求序列号 SEQ=x 进行回复,因此确认序列号ACK依然为 x+1

第四次挥手:
客户端收到服务器发来的 TCP 断开连接数据包后将进行回复,表示收到断开 TCP 连接数据包。向服务器发送标志位ACK=1 报文,生成一个序列号 SEQ=x+1。由于回复的是服务器,所以确认序列号ACK字段的值在服务器发来断开 TCP 连接请求序列号 SEQ=z 的基础上加 1,得到ACK=z+1

ipv4的计算

32个二进制组成
192.168.1.1 -->点分10进制书写格式
地址由2部分组成
网络位
主机位
192.168.1.1 192.168.1.2 这个俩个地址在同一网络位,也就是在一个广播域
到底如何判断俩个或多个地址是否在同一个网段(广播域)
IETF早期规定的网络位划分方法:主类划分法
XXXXXXXX.XXXXXXXX.XXXXXXXX.XXXXXXXX
1x20+1x21+1x22+1x23+1x24+1x25+1x2^6=1+2+4+8+16+32+64
在这里插入图片描述
130.1.1.1 130.2.2.2 180.1.2.2 180.1.3.3
199.2.2.2 199.2.1.2
在这里插入图片描述

特殊IP地址

1,127.0.0.1 - 127.255.255.255 ---- 环回地址
2,255.255.255.255 ---- 受限广播地址 ---- 受路由器的限制 — 只能作为目标IP使用
3,主机位全1 — 192.168.2.X/24 — 192.168.2.255 — 直接广播地址 — 只能作为目标IP使用
4,主机位全0 — 192.168.2.X/24 — 192.168.2.0 – 网段 – 网络号
5,0.0.0.0 — 1,代表没有IP。2,代表任意IP。 6,169.254.0.0/16 — 自动私有地址

VLSM与CIDR

无类地址—不在通过数字来辨识网段而是使用子网掩码来辨别,规则是网络位的地址子网掩码置1

10.1.1.1 255.255.255.0 24 10.1.1.1/24 20.1.1.1 255.255.224.0 19 20.1.1.1/19 192.168.1.0 255.255.255.252 30 192.168.1.0/30

VLSM — 可变长子网掩码 ---- 子网划分
核心思路:通过延长子网掩码(将主机位借到网络位)来实现网段的划分

192.168.1.0/24 公司新增俩个部门预计20人,如何拆出俩个网段并且不能浪费地址?
192.168.1.0 0XXXXXXX 25
192.168.1.128 1XXXXXXX 25
27
192.168.1.0/27 255.255.255.224
192.168.1.32/27
192.168.1.64/27
192.168.1.96/27
192.168.1.128/27
192.168.1.160/27
192.168.1.192/27
192.168.1.224/27

CIDR — 无类域间路由 ---- 汇总

可变长子网掩码—取相同去不同

192.168.1.0/27
192.168.1.32/27
192.168.1.160/27
192.168.1 NNNXXXXX 000XXXXX 0 001XXXXX 32 00XXXXXX 0 26
192.168.1.32/27
192.168.1.160/27
192.168.1 NNNXXXXX 001XXXXX 32 101XXXXX XXXXXXXX 24
192.168.1.64/27
192.168.1.96/27
192.168.1 NNNXXXXX 010XXXXX 011XXXXX 01XXXXXX 26
192.168.1.64/26

公司在上述任务完成后又增加一个预计50个人的部门,如何解决?
192.168.1.64/27
192.168.1.96/27
192.168.1.64/26 结果
192.168.1.128/27
192.168.1.160/27
192.168.1.192/27
192.168.1.224/27

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-07-21 21:50:39  更:2022-07-21 21:50:55 
 
开发: 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年5日历 -2024/5/19 4:48:26-

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