UDP和ICMP之间的利用关系

场景说明:目前在windows上测试,或者在Linux上测试,发送UDP数据包,尽管目标端口不可达,但是并没有返回ICMP报文目的端口不可达的情况,真正做到了UDP报文的投递的特性,根本就没有等待,尽管调用了connect函数,但是没有任何的效果,其实我们可以想象到TCP的三次握手就是connect

函数的结果,但是UDP调用connect函数,却未必达到这个效果,因为UDP根本就没有三次握手,想来这个问题就可想而知的答案。但是根据《TCP/IP协议卷》,确实应该当UDP端口无法投递的时候,发送一个ICMP目的端口不可达的报文,但是我没有接收到。难道是被路由器过滤掉了,这个完全不清楚。并且我是使用tftp运行在linux测试的,结果没有得到和书本上类似的答案。UDP的规则之一就是:当接收到的UDP报文的目的端口和当前进程不相符合的时候,发送ICMP报文。

抓包使用的命令如下:

tcpdump -i em1 icmp

时间: 2024-12-14 22:58:51

UDP和ICMP之间的利用关系的相关文章

[R语言]关联规则1---不考虑items之间的时序关系

本文介绍的是关联规则,分为两部分:第一部分是---不考虑用户购买的items之间严格的时序关系,每个用户有一个“购物篮”,查找其中的关联规则.第二部分--- 考虑items之间的严格的时序关系来分析用户道具购买路径以及关联规则挖掘.此文为第一部分的讲解.(本文所需的代码和数据集可以在这里下载.) 关联规则最常听说的例子是“啤酒与尿布”:购买啤酒的用户通常也会购买尿布.在日常浏览电商网站时也会出现“购买该商品的用户还会购买….”等提示,这其中应用的就是关联规则的算法. 本文重点讲解的是关联规则的R

Prism 文档 第三章 管理组件之间的依赖关系

                                                                      第3章:管理组件之间的依赖关系 基于Prism库的复合应用程序可能包含许多松耦合的类型和服务.他们需要提供内容和接收基于用户行为的通知.因为他们是松散耦合的,他们需要一种方式进行互动和相互沟通来提供所需的业务功能. 为了集中这些不同的块,基于Prism库的应用程序依赖于依赖注入容器.依赖注入容器通过提供设施去实例化类的实例和管理他们基于容器配置的寿命来减少对

利用关系抽取构建知识图谱的一次尝试

关系抽取 ??信息抽取(Information Extraction, IE)旨在从大规模非结构或半结构的自然语言文本中抽取结构化信息.关系抽取(Relation Extraction, RE)是其中的重要子任务之一,主要目的是从文本中识别实体并抽取实体之间的语义关系,是自然语言处理(NLP)中的一项基本任务.比如,我们可以从下面的一段话中, 鸿海集团董事长郭台铭25日表示,阿里巴巴集团董事局主席马云提的新零售.新制造中的「新制造」,是他给加上的.网易科技报导,郭台铭在2018深圳IT领袖峰会谈

手动创建Maven项目并建立两个项目之间的依赖关系

用命令行快速建立maven项目 -> mvn:archetype:generate -> 直接回车或者自己输入你想生成的 -> groupId ->artifactId ->如果有默认值回车即可 最后 y 确认创建 我们看下他的目录结构 项目名: src ->main ->java ->test ->java pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0"

kbit和bit之间的换算关系

网络速率:用Kbps   Mbps   Gbps   或   Kb.   Mb.   Gb等来表示   1Gbps=1000Mbps   1Mbps=1000Kbps   1Kbps=1000bit 数据传输速率:用KBps   MBps   或KB.MB   .GB等来表示   1GB=1024MB   1MB=1024KB   1KB=1024Byte 1Byte=8bit 1kbps=1000bps 全称 :Bits   Per   Second 通信线路等数据传送速度的单位.比特每秒.1

UNIX和Linux之间有什么关系?

1.UNIX和Linux之间有什么关系? 答:1969年UNIX诞生于Bell实验室,是一种多用户多任务操作系统.最早是用汇编语言写的,之后用C语言重写.UNIX对硬件依赖性强,是一种非开源的商业操作系统. Linux是1991年一个芬兰研究生Linus写的一个类UNIX操作系统,Linux一出现就表现出强大的生命力,它可以运行在多种硬件平台上.后来Linus把源码公布出来,得到了很多人的支持,逐渐成为了基于GPL协议的GNU自由软件,免费且开源发展迅速. 2.BSD是什么? 我们通常说的Fre

通过setSystemUiVisibility实现状态栏跟Activity之间的位置关系

以前说到去除状态栏和标题栏总会用到动态代码的方式实现: getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN , WindowManager.LayoutParams. FLAG_FULLSCREEN); requestWindowFeature(Window.FEATURE_NO_TITLE); 但是在项目开发中,在收集资料时突然找到了一个很好用的API,这个API是 setSystemUiVisibility();

CUDA __shared__ thread、block、grid之间的一维关系 (例子chapter5 dot点积(GPU高性能编程))

chapter5里重要的例子是dot,来解释一个block内多个thread的共享内存和同步. __shared__共享内存:“对于在GPU上启动的每个线程块,cuda c编译器都将创建该变量的一个副本.线程块中的每个线程都共享这块内存,并和其他线程块无关,这使一个线程块中多个线程能够在计算上进行通信和协作” __syncthreads():确保线程块中的每个线程都执行完__syncthreads()前面的语句后,在往下执行. 例子是Grid->一维Block->一维Thread: 通过实例代

UML 类与类之间的四大关系的一些图标及代码含义

UML 类与类之间的四大关系的一些图标及代码含义 另一个版本: 关联:连接模型元素及链接实例,用一条实线来表示: 依赖:表示一个元素以某种方式依赖于另一个元素,用一条虚线加箭头来表示: 聚合:表示整体与部分的关系,用一条实线加空心菱形来表示: 组成:表示整体与部分的有一关系,用一条实线加实心菱形来表示: 泛化(继承):表示一般与特殊的关系,用一条实线加空心箭头来表示: 实现:表示类与接口的关系,用一条虚线加空心箭头来表示:类与类之间存在以下关系:(1)泛化(Generalization)(2)关