网络协议分析期末复习(四)
目录
0.前言
1.IP层对改善TCP性能支持的机制
2.TCP防止半开放连接的机制
3.TCP协议中强推位(P)和紧急位(U)的用法
4.TCP的流量控制和拥塞控制的异同点
异:
(1)两者的特点不同:
(2)两者的主要方法不同:
(3)两者的实质不同:
同:
5.RIP克服慢收敛问题的对策
① 水平分割:
② 抑制法:
③ 毒性逆转:
④ 触发更新:
6.RIP路由协议保持信息时效性的定时器
7.各种OSPF报文的作用
① Hello报文
② DD报文
③ LSR报文
④ LSU报文
⑤ LSAck报文
8.OSPF协议的非骨干区域的差异
0.前言
从该篇开始的知识点大多会出简答题、分析题等题型,请重点关注。
1.IP层对改善TCP性能支持的机制
avgQ=(1-Wq)×avgQ+ Wq×q。
其中,Wq为权值,q为采样测量时实际队列长度。这样由于Internet数据的突发本质或者短暂拥塞导致的实际队列长度暂时的增长将不会使得平均队长有明显的变化,从而“过虑"掉短期的队长变化,尽量反映长期的拥塞变化。
2.TCP防止半开放连接的机制
半开放连接的定义:如果一方关闭或者异常关闭(断电,断网),而另一方并不知情,这样的链接称之为半打开。处于半打开的连接,如果双方不进行数据通信,是发现不了问题的,只有在通信是才真正的察觉到这个连接已经处于半打开状态,如果双方不传输数据的话,仍处于连接状态的一方就不会检测另外一方已经出现异常。
可以通过心跳机制(Keepalive机制)解决该问题,即:向应用程序协议框架添加一条keepalive消息(一条空消息)。长度前缀或定界系统可能发送空消息(例如,0字节的长度前缀或单个结束分隔符)。
此外,还可以通过显式定时器解决该问题:设置一个定时器,每次传输数据时该定时器都会被重置,定时器到期时则认为连接已经断开(每次传输数据时都会重置计时器)。
3.TCP协议中强推位(P)和紧急位(U)的用法
① URG(紧急位):设置为1时紧急指针有效。为0时紧急指针没有意义;
紧急指针是一个偏移量,以序号字段的值相加指向紧急数据的最后一个字节。紧急指针指向的数据段从第一个字节到指针的位置,不进入缓冲区直接交付给上层程序,其他数据段进入缓冲区。
② PSH(推位):设置为1时将数据尽快交给应用层,不做处理;
设置PSH位,客户段通知TCP在向服务器发送报文段的视乎不用等缓冲区满了以后在提交数据使数据滞留。发送方置PSH位是缓冲区的数据立即交付给上层数据。
URG和PSH最大的区别操作的数据位置不同,URG直接将TCP中紧急数据不进入缓冲区交付,PSH不因为缓冲区没满而滞留数据,尽快交付。
4.TCP的流量控制和拥塞控制的异同点
异:
(1)两者的特点不同:
① 拥塞控制的特点:拥塞控制基 于 终端的资源控制仅需设定一条规则,即可限定每台终端的带宽使用上限,同时可以设定每台终端的会话数量,防止由一病毒等原囚造成的网络资源耗尽。
② 流量控制的特点:流量控制基于内容进行会话识别可以通过高速的深层协议分析,识别每一个网络会话所属的应用,可以针对某种协议进行拦截或者制定相应的带宽分配策略,而传统的路由器和防火墙等网络设备只能根据端口进行最初级的识别。
(2)两者的主要方法不同:
① 拥塞控制的主要方法:拥塞控制的主要控制方法有缓冲区域分配法、分组丢弃法、定额控制法。
② 流量控制的主要方法:流量控制的最主要方法,是引入QoS的概念,从通过为不同类型的网络数据包标记,从而决定数据包通行的优先次序。
(3)两者的实质不同:
① 拥塞控制的实质:到达通信子网中某一部分的分组数量过多,使得该部分网络来不及处理,以致引起这部分乃至整个网络性能下降的现象,严重时甚至会导致网络通信业务陷入停顿,即出现死锁现象。
② 流量控制的实质:一种利用软件或硬件方式来实现对电脑网络流量的控制。用于控制调制解调器与计算机之间的数据流,具有防止因为计算机和调制解调器之间通信处理速度的不匹配而引起的数据丢失。
同:
流量控制和拥塞控制都是流量控制机制。
5.RIP克服慢收敛问题的对策
① 水平分割:
路由器记录收到各路由的接口,而这路由器通告路由时,就不会把该路由再通过那个接口送回去。
② 抑制法:
抑制法迫使路由器收到某网络不可达的信息后固定时间内忽略任何关于该网络的路由信息.该抑制时间典型长度一般为60s。
③ 毒性逆转:
当一条连接消失后,路由器在若干个更新周期内斗保留该路由,但是在广播路由时则规定该路由的费用为无限长。
④ 触发更新:
当路由信息发生变化时,运行RIP的设备会立即向邻居设备发送更新报文,而不必等待定时更新,从而缩短了网络的收敛时间。
6.RIP路由协议保持信息时效性的定时器
RIP主要使用四个定时器:
① 更新定时器(Update timer):它定时触发更新报文的发送,更新周期默认为30秒。
② 老化定时器/超时定时器(Age timer):如果设备没有在某条路由的老化时间内收到邻居发来的路由更新报文,则认为该路由不可达。Age timer缺省为180s。
③ 垃圾超时定时器/删除定时器(Garbage-Collect timer):RIP协议规定,在某条路由失效(Age timer超时或收到某条路由的不可达消息)后,该路由表项并不立即从路由表中删除,而是将这条路由放入Garbage队列。Garbage-Collect timer会监视Garbage队列,删除超时的路由。如果在此期间收到了任何关于该路由的更新报文,则会重新将这条路由放回到Age队列。设置Garbage-Collect timer的目的是为了防止路由振荡。Garbage-Collect timer的缺省为120s。
④ 抑制定时器(Hold-Down timer):当RIP设备收到对端的路由更新,其cost为16,对应路由进入抑制Hold-down状态,并启动抑制定时器。为了防止路由震荡,在抑制定时器超时之前,即使再收到对端路由cost小于16的更新,也不接受。只有满足以下条件,RIP设备才允许接受对端新的路由更新:
·更新报文携带的cost值等于或小于前一个报文的cost值。
·抑制定时器超时,路由器进入垃圾收集状态。
7.各种OSPF报文的作用
OSPF用IP报文直接封装协议报文,协议号为89。OSPF分为5种报文:Hello报文、DD报文、LSR报文、LSU报文和LSAck报文。
① Hello报文
最常用的一种报文,其作用为建立和维护邻接关系,周期性的在使能了OSPF的接口上发送。报文内容包括一些定时器的数值、DR、BDR以及已知的邻居。
② DD报文
两台路由器在邻接关系初始化时,用DD报文描述本端路由器的LSDB,进行数据库的同步。报文内容包括LSDB中每一条LSA的Header(LSA的Header可以唯一标识一条LSA)。
LSA Header只占一条LSA的整个数据量的一小部分,这样可以减少路由器之间的协议报文流量,对端路由器根据LSA Header就可以判断出是否已有这条LSA。在两台路由器交换DD报文的过程中,一台为Master,另一台为Slave。由Master规定起始序列号,每发送一个DD报文序列号加1,Slave方使用Master的序列号作为确认。
③ LSR报文
两台路由器互相交换过DD报文之后,需要发送LSR报文向对方请求更新LSA,内容包括所需要的LSA的摘要信息。
④ LSU报文
LSU报文用来向对端路由器发送其所需要的LSA或者泛洪本端更新的LSA,内容是多条LSA(全部内容)的集合。LSU报文在支持组播和广播的网络中是以组播形式将LSA泛洪出去。为了实现Flooding的可靠性传输,需要LSAck报文对其进行确认,对没有收到确认报文的LSA进行重传,重传的LSA是直接发送到邻居的。
⑤ LSAck报文
LSAck报文用来对接收到的LSU报文进行确认,内容是需要确认的LSA的Header(一个LSAck报文可对多个LSA进行确认)。LSAck报文根据不同的链路以单播或组播的形式发送。
8.OSPF协议的非骨干区域的差异
① 标准区域:除骨干区域外的默认的区域类型,在该类型区域中,各种类型的 LSA 均允许发布。
② 末梢(末节)区域:即 STUB 区域,该类型区域中不接受关于 AS外部的路由信息,即不接受类型 5 的 AS 外部LSA,需要路由到自治系统外部的网络时,路由器使用缺省路由(0.0.0.0),末梢区域中不能包含有自治系统边界路由器 ASBR。
③ 完全末梢(完全末节)区域:即totally Stubby 区域,该类型区域中不接受关于 AS 外部的路由信息,同时也不接受来自 AS 中其他区域的汇总路由,即不接受类型 3、类型 4、类型 5 的 LSA,完全末梢区域也不能包含有自治系统边界路由器 ASBR。
④ 次末梢(末节)区域:即NSSA区域,允许接收以7类LSA发送的外部路由信息,并且ABR要负责把类型7的LSA转换成类型5的LSA。
相关文章:
网络协议分析期末复习(四)
目录 0.前言 1.IP层对改善TCP性能支持的机制 2.TCP防止半开放连接的机制 3.TCP协议中强推位(P)和紧急位(U)的用法 4.TCP的流量控制和拥塞控制的异同点 异: (1)两者的特点不同:…...
Matlab对图像和视频的简单处理(图像视频文件读取和输出,转灰度图,取指定帧的图像)
文章目录1.图像文件的读取2.图像效果展示3.将彩色图转换为灰度图4.视频文件的读取5.读取视频中指定帧的图像6.图片文件的报错1.图像文件的读取 语法介绍: A imread(filename) A imread(filename, fmt)参数介绍: filename:要读取的图像文…...
ArrayList源码分析
ArrayList源码分析目标:一、 ArrayList的简介二、ArrayList原理分析2.1 ArrayList的数据结构源码分析2.2 ArrayList默认容量&最大容量2.3 为什么ArrayList查询快,增删慢?2.4 ArrayList初始化容量1、创建ArrayList对象分析:无参数2、创建A…...
SpringBoot IOC、DI、@Autowired、@Resource、作用域
一、初识Spring1.1 Spring是什么Spring是一个轻量级Java开发框架,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题。它是一个分层的开源框架,为开发Java应用程序提供全面的基础架构支持。Spring负责基础架构,Java开发者可以专…...
链表相关oj题
1.Leetcode203 移除链表元素 解题思路:从头节点开始进行元素删除,每删除一个元素,需要重新链接节点 struct ListNode* removeElements(struct ListNode* head, int val){struct ListNode*dummyheadmalloc(sizeof(struct ListNode));dummyhea…...
【Linux】操作系统(Operator System)
操作系统(Operator System )一、操作系统的概念二、操作系统的作用三、系统调用和库函数一、操作系统的概念 操作系统是一组控制和管理计算机软硬件资源,为用户提供便捷使用的计算机程序的集合,是配置在计算机硬件系统上的第一层…...
机器学习自学笔记——感知机
感知机预备知识 神经元 感知机算法最初是由科学家从脑细胞的神经凸起联想而来。如下图,我们拥有三个初始xxx值,x1,x2,x0x_1,x_2,x_0x1,x2,x0。其中x01x_01x01为一个初始的常量,专业上称作“偏置”。每个xxx的值都会乘上一个权重…...
C++ Primer第五版_第三章习题答案(21~30)
文章目录练习3.21练习3.22练习3.23练习3.24练习3.25练习3.26练习3.27练习3.28练习3.29练习3.30练习3.21 请使用迭代器重做3.3.3节的第一个练习。 #include <vector> #include <iterator> #include <string> #include <iostream>using std::vector; usi…...
colmap+openmvs进行三维重建流程全记录
window下的colmapopenmvs进行三维重建流程全记录 1.colmap安装与配置 可参考:https://blog.csdn.net/weixin_44153180/article/details/129334018?spm1001.2014.3001.5501 2.openmvs安装与配置 可参考:https://blog.csdn.net/rdw1246010462/article…...
yolov8命令行运行参数详解
序言 整理来自yolov8官方文档常用的一些命令行参数,官方文档YOLOv8 Docs yolov8命令行的统一运行格式为: yolo TASK MODE ARGS其中主要是三部分传参: TASK(可选) 是[detect、segment、classification]中的一个。如果没有显式传递…...
分布式锁简介
Redis因为单进程、性能高常被用于分布式锁;锁在程序中作用是同步工具,保证共享资源在同一时刻只能被一个线程访问。 Java中经常用的锁synchronized、Lock,但是Java的锁智能保证单机的时候有效,分布式集群环境就无能为力了…...
【嵌入式Linux学习笔记】Linux驱动开发
Linux系统构建完成后,就可以基于该环境方便地进行开发了,相关的开发流程与MCU类似,但是引入了设备树的概念,编写应用代码要相对复杂一点。但是省去了很多配置工作。 学习视频地址:【正点原子】STM32MP157开发板 字符…...
2023年中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛(同步赛)(H题)(线段树)
又到了万物复苏的季节,家乡的苹果树结果了。像往常一样小龙同学被叫回家摘苹果。 假设需要采摘的一棵树上当前有a颗苹果,那么小龙会采摘⌈a/3⌉颗苹果,其中⌈x⌉表示不小于x的最小整数。 但是,为了可持续发展,若a小于1…...
Linux内核Thermal框架详解十三、Thermal Governor(3)
接前一篇文章Linux内核Thermal框架详解十二、Thermal Governor(2) 二、具体温控策略 上一篇文章介绍并详细分析了bang_bang governor的源码。本文介绍第2种温控策略:fair_share。 2. fair_share fair_share governor总的策略是频率档位⽐较…...
TikTok品牌出海创世纪(二)
目录 1.推荐算法打造王者品牌 2.品牌聚焦海外Z群体 3.持续扩展应用场景 加速品牌全球化传播 品牌聚焦海外Z群体 “这个地球上,三分之二的人都在用Facebook“,这是对Facebook曾经统治地位最直观的描述。 但如今,这家全球社交媒体巨头的光环正…...
iOS中SDK开发 -- cocoapods库创建
在iOS项目中,经常使用cocoadpods来进行依赖管理以及三方库引入等。引入的三方库一般会有几种形式:一、在Pods目录下可以直接看到源代码的开源库,如AFNetworking,Masonry等常见开源库。二、在Pods目录下拉取的项目文件只能看到对应…...
2023年了,还是没学会内卷....
先做个自我介绍:我,普本,通信工程专业,现在飞猪干软件测试,工作时长两年半。 回望疫情纪元,正好是实习 毕业这三年。要说倒霉也是真倒霉,互联网浪潮第三波尾巴也没抓住,狗屁造富神…...
chatGPT爆火,什么时候中国能有自己的“ChatGPT“
目录 引言 一、ChatGPT爆火 二、中国何时能有自己的"ChatGPT" 三、为什么openai可以做出chatGPT? 四、结论 引言 随着人工智能技术的不断发展,自然语言处理技术也逐渐成为了研究的热点之一。其中,ChatGPT作为一项领先的自然语言处理技术…...
【Matlab算法】粒子群算法求解一维非线性函数问题(附MATLAB代码)
MATLAB求解一维非线性函数问题前言正文函数实现(可视化处理)可视化结果前言 一维非线性函数是指函数的自变量和因变量都是一维实数,而且函数的形式是非线性的,也就是不符合线性函数的形式。在一维非线性函数中,自变量…...
2023 最新发布超全的 Java 面试八股文,整整 1000道面试题,太全了
作为一名优秀的程序员,技术面试都是不可避免的一个环节,一般技术面试官都会通过自己的方式去考察程序员的技术功底与基础理论知识。 2023 年的互联网行业竞争越来越严峻,面试也是越来越难,很多粉丝朋友私信希望我出一篇面试专题或…...
产品经理面经|当面试官问你还有什么问题?
相信很多产品经理在跳槽面试的时候,在面试尾声都会遇到这样的环节,面试官会问你有什么问题要问的,一般来说大家都能随时随地甩出几个问题来化解,但其实在这个环节对于应聘者来说也是一个很好的机会来展现自己的能力,甚…...
单链表的基本操作
目录 一.链表的基本概念和结构 二.链表的分类 三.单链表的基本操作 1.创建一个节点 2.打印 3.尾插 4.头插 5.尾删 6.头删 7.查找 8.指定位置插入 9.指定位置删除 10.销毁 一.链表的基本概念和结构 概念:链表是一种物理存储结构上非连续、非顺序的存储结…...
【微信小程序-原生开发】系列教程目录(已完结)
01-注册登录账号,获取 AppID、下载安装开发工具、创建项目、上传体验 https://sunshinehu.blog.csdn.net/article/details/128663679 02-添加全局页面配置、页面、底部导航 https://sunshinehu.blog.csdn.net/article/details/128705866 03-自定义底部导航&#x…...
JavaEE--Thread 类的基本用法(不看你会后悔的嘿嘿)
Thread类是JVM用来管理线程的一个类,换句话说,每个线程都唯一对应着一个Thread对象. 因此,认识和掌握Thread类弥足重要. 本文将从 线程创建线程中断线程等待线程休眠获取线程实例 等方面来进行具体说明. 1)线程创建 方法1:通过创建Thread类的子类并重写run () 方法 class M…...
MySQL数据库基本使用(二)-------数据库及表的增删改查及字符集修改
1.MySQL数据库的使用演示 1.1创建自己的数据库 命令格式如下(创建的数据库名称不能与已经存在的数据库重名): mysql> create database 数据库名;例如: mysql> create database atguigudb; #创建atguigudb数据库…...
互联网摸鱼日报(2023-03-17)
互联网摸鱼日报(2023-03-17) InfoQ 热门话题 开源新生代的成长之路:从校园到开源,需要迈过哪些挑战? 从 Clickhouse 到 Apache Doris,慧策电商 SaaS 高并发数据服务的改造实践 刚刚,百度文心…...
【前后端】低代码平台Jeecg-Boot 3.2宝塔云服务器部署流程
1 后端 部署流程 修改配置文件 更改数据库、redis的配置。 在system子模块中的target文件夹下生成 jar 包jeecg-boot-module-system-3.2.0.jar。 复制到云服务器 生成数据库 在这里插入图片描述 使用命令运行后端程序 java -jar ./jeecg-boot-module-system-3.2.0.jar宝…...
leetcode todolist
数组 数组的改变、移动 453. 最小移动次数使数组元素相等 665. 非递减数列 283. 移动零 数组的旋转 189. 旋转数组 396. 旋转函数 统计数组中的元素 645. 错误的集合 697. 数组的度 448. 找到所有数组中消失的数字 442. 数组中重复的数据 41. 缺失的第一个正数 数…...
改进YOLO系列 | CVPR2023最新 PConv | 提供 YOLOv5 / YOLOv7 / YOLOv7-tiny 模型 YAML 文件
DWConv是Conv的一种流行变体,已被广泛用作许多神经网络的关键构建块。对于输入 I ∈ R c h w I \in R^{c \times h \times w} I∈...
像ChatGPT玩转Excel数据
1.引言 最近ChatGPT的出现,把人工智能又带起了一波浪潮。机器人能否替代人类又成了最近热门的话题。 今天我们推荐的一个玩法和ChatGPT有点不一样。我们的课题是“让用户可以使用自然语言从Excel查询到自己想要的数据”。 要让自然语言可以从Excel中查数据&#…...
前端做兼职网站/搜索引擎seo推广
http://acm.timus.ru/problem.aspx?space1&num1806 只要算法对 ural 一般不会卡时间的 这个题是一个简单的最短路 spfa 关键在于找边 找边的方法是 对于每一个点 枚举它的所有可能的变化 搜索是否有和变化后的字符串一样的 搜索的时候既可以用 map 也可以 自己写字典树 m…...
行业网站开发管理软件/如何进行网站推广?网站推广的基本手段有哪些
100佳精美的个性名片设计些列第四篇。名片,中国古代称名刺,是标示姓名及其所属组织、公司单位和联系方法的纸片。名片是新朋友互相认识、自我介绍的最快有效的方法。交换名片是商业交往的第一个标准官式动作。一起欣赏这些精美的个性名片。 61. REACTOR …...
做外贸网站选美国服务器的费用/营销策划推广
德国慕尼黑是Windows到Linux过渡的先锋,它已经投资数百万欧元,放弃依赖微软软件,进而拥抱开源软件,而且它现在准备抛弃最后的数十款Windows应用程序。 在这一点上,慕尼黑市政府部分电脑仍在使用Windows,因为…...
做公司标志用哪个网站/百度软文推广公司
近年来,大规模的个人信息泄漏事件不断发生,由此引发的精准诈骗也经常被媒体报道。有着庞大用户群体和海量交易的阿里巴巴却能独善其身,这背后有什么独门秘籍呢?当我们表明来意时,阿里安全技术平台资深专家玄泰反复提到…...
阿里网站年费续费怎么做分录/百度广告一级代理
txt中数据格式如下:期号 红球 蓝球 开奖时间 开奖公告2012041 08 11 15 20 24 32 02 2012-04-10 开奖公告2012040 03 08 09 22 25 31 10 2012-04-08 开奖公告2012039 01 02 05 13 22 29 08 2012-04-05 开奖公告2012038 09 10 11 15 19 33 16 2012-04-03 开奖公告201…...
厦门网站关键词优化/保定seo推广公司
什么是spring Spring是java企业级应用的开源开发框架。Spring主要用来开发java应用,但是有些扩展是针对于J2EE平台的web应用。其目的是为了简化java企业级应用开发。 使用Spring框架的好处是什么 轻量:基本的版本大约为2MB控制反转Ioc:spr…...