自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 VLAN技术详解

注:本文内容转载于知乎老哥:https://zhuanlan.zhihu.com/p/35616289为什么需要VLAN1. 什么是VLAN?VLAN(Virtual LAN),翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。在此让我们先复习一下广播域的概念。广播域,指的是广播帧(目标MAC地址全部为1)所能传递到的范围,亦即能够直接通信的范围。严格地说,并不仅.

2020-10-17 09:57:33 4167 2

原创 计算机网络基础以及JAVA网络编程

1.概述  计算机网络是通过传输介质、通信设施和网络通信协议,把分散在不同地点的计算机设备互连起来的,实现资源共享和数据传输的系统。网络编程就是编写程序使互联网的两个(或多个)设备(如计算机)之间进行数据传输。Java语言对网络编程提供了良好的支持。通过其提供的接口我们可以很方便地进行网络编程。2.网络分层  计算机网络20世纪60年代出现,经历了20世纪70年代、80年代和90年代的发展,进入21世纪后,计算机网络已经成为信息社会的基础设施,深入到人类社会的方方面面,与人们的工作、学习和生..

2020-10-02 21:25:18 413

原创 数据链路层和传输层提供的可靠传输的区别

我们知道数据链路层和传输层都提供可靠传输服务,传输层是一定要提供的,比如TCP就是可靠传输协议,保证了端到端的可靠传输,确保每一个报文段都能按序送达对方,如果下层传输丢失,也能及时通过ARQ协议来重传,那么为什么会丢失呢?1.可能是因为网络层的路由器负载过高,导致后来的数据报被丢弃,那么传输层就需要重传了;2.因为有定时器的存在,一段时间没收到确认就重传;3.还有一种丢失的可能就是数据链路层检测数据帧传输出错,被丢弃了,因为我们知道数据链路层是提供节点到节点之间的可靠交付,那么这时候传输层的报文

2020-10-02 20:41:26 10953 8

原创 详解广播域和冲突域的区别

总览1、广播域可以跨网段,而冲突域只是发生的同一个网段的。以太网中,冲突域是由hub组织的。一个hub就是一个冲突域。交换机的每个端口都是一个冲突域。网段,又叫潜在冲突域。2、冲突域在同一个冲突域中的每一个节点都能收到所有被发送的帧。广播域在网络中能接收任一设备发出的广播帧的所有设备的集合 。3、冲突域是基于第一层(物理层),而广播域是机于第二层(数据链路层) 。4、广播域就是说,如果站点发出一个广播信号后能接收到这个信号的范围,通常来说一个局域网就是一个广播域。(用路由器连接的除外)。冲突

2020-09-30 11:35:23 35405 7

原创 一张图教你如何选择Java中的集合框架(干货!!!)

2020-09-27 15:43:59 182

原创 集线器、网桥、交换机的区别(详解干货!!!)

一.集线器  集线器(HUB),它是工作在物理层的设备, 由于它只是工作在物理层的设备,所以它并不关心也不可能关心OSI上面几层所涉及的,它的工作机制流程是:从一个端口接收到数据包时,会在其他端口把这个 包转发一次,因为它不知道也不可能知道这个包是发给谁的(物理层设备只关心电压这些物理概念),它也只能对所有人广播(这里和下文提到的 广播该词的意思和ARP请求时的广播有些不同,这里的广播意思是:使用物理层转发设备,如HUB,导致的广播,可以说这个广播是被逼的,因为设备的问题! 是设备转发包引起的广播!而A

2020-09-17 09:44:26 14727 18

原创 mininet使用的一些小技巧功能

1.用户查看设备信息和状态的命令参数这些命令在 mininet> 命令模式下使用,仅查看网络设备状态信息,不对网络结构进行改变net查看链路信息,两个设备之间的之间连线,称为一个链路,链路是双向的nodes查看有哪些可用节点links检测链路是否正常工作pingall检测各个主机之间的连通性pingpair检测前两个主机的连通性dump查看节点信息...

2020-07-10 20:05:55 1111

原创 面向接口编程----思维

相信看到这篇文字的人已经不需要了解什么是接口了,我就不再过多的做介绍了,直接步入正题,接口测试如何编写。那么在这一篇里,我们用一个例子,让各位对这个重要的编程思想有个直观的印象。为充分考虑到初学者,所以这个例子非常简单,望各位高手见谅。  为了摆脱新手的概念,我这里也尽量不用main方法,而采用testNG编写测试用例。定义:现在我们要开发一个应用,模拟移动存储设备的读写,即计算机与U盘、MP3、移动硬盘等设备进行数据交换。上下文(环境):已知要实现U盘、MP3播放器、移动硬盘三种移动存储设备,

2020-06-28 12:03:34 178

原创 wait方法和sleep方法的区别

一.概念、原理、区别Java中的多线程是一种抢占式的机制而不是分时机制。线程主要有以下几种状态:可运行,运行,阻塞,死亡。抢占式机制指的是有多个线程处于可运行状态,但是只有一个线程在运行。 当有多个线程访问共享数据的时候,就需要对线程进行同步。线程中的几个主要方法的比较: Thread类的方法:sleep(),yield()等 Object的方法:wait()和notify()等每个对象都有一个机锁来控制同步访问。Synchronized...

2020-06-28 10:06:33 362

原创 详解floodlight控制器的路由转发机制

Floodlight路由机制解析路由部分是floodlight最核心的机制,这两天仔细读了一下floodlight这部分的代码,总算有了大体上的了解,与各位分享。本文中的floodlight(FL)与控制器/网络控制器(NC, nework controller ) 等术语等同,交换机(SW)默认为openflow-enabled switch,不再赘述。首先谈一下SDN控制器的路由原理:当交换机收到一个不能被当前流表各条流匹配的数据包时,会把这个数据包以openflow的格式(PACKET_I

2020-05-23 21:25:23 810

原创 二、三层转发原理(多例详解,图文相结合说明ping过程)

※ 首先要了解① 源主机在发起通信之前,会将自己的IP与目的主机的IP进行比较,如果两者位于同一网段(用网络掩码计算后具有相同的网络号),那么源主机发送arp请求广播报,请求目的主机的mac地址,在收到目的主机的ARP应答后获得对方的物理层(MAC)地址,然后用对方MAC作为报文的目的MAC进行报文发送。位于同一VLAN(网段)中的主机互访时属于这种情况,这时用于互连的交换机作二层交换转发;...

2020-01-13 10:51:43 30067 5

转载 OpenFlowJ-Loxigen简介

转自https://blog.csdn.net/xjtuse2014/article/details/53729001OpenFlowJ-Loxigen简介Floodlight v1.0及以上版本的依靠新的OpenFlowJ-Loxigen库。OpenFlowJ-Loxigen支持的OpenFlow版本由1.0到1.4。所有OpenFlow的概念和类型都可以通过OpenFlowJ-Loxi...

2020-01-12 20:19:53 343

原创 关于多态的一个经典实例

废话不多说,直接上代码。。。public class A { public String show(D obj) { return ("A and D"); } public String show(A obj) { return ("A and A"); }}public class B extends A{...

2019-12-04 16:32:39 762

转载 JAVA基础——接口

原文链接:https://blog.csdn.net/qq_19782019/article/details/80259836接口概念官方解释:Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。我的解释:接口可以理解为一种特殊的类,里面全部是由全局常...

2019-12-02 22:14:10 104

转载 Java之对象的多态性

Java之对象的多态性(两篇好文章)原文链接:https://blog.csdn.net/qq_19782019/article/details/79788326 https://blog.csdn.net/chenssy/article/details/127...

2019-12-02 22:13:01 114

转载 Iperf原理介绍

第一部分Iperf 版本建议采用linux版本,事实上,windows版也很好用。Iperf是一个TCP/IP和UDP/IP的性能测量工具,通过调谐各种参数可以测试TCP的最大带宽,并报告带宽、延迟,最大段和最大传输单元大小等统计信息。Iperf可以运行于Linux/BSD、Unix及Windows等操作系统。带宽测试通常采用UDP模式,因为能测出极限带宽、时延抖动、丢包...

2019-11-08 15:44:18 7915

转载 图说TCP之滑动窗口和拥塞窗口

见http://www.360doc.com/content/19/1025/16/66999432_869016746.shtml

2019-10-25 16:42:31 147

转载 关于MTU和MSS,以及IP层为何要分片,TCP层为何要分段

MTU: Maxitum Transmission Unit最大传输单元MSS: Maxitum Segment Size最大分段大小由于以太网EthernetII最大的数据帧是1518Bytes这样,刨去以太网帧的帧头(DMAC目的地址MAC48bit=6Bytes+SMAC源MAC地址48bit=6Bytes+Type域2bytes)14Bytes和帧尾CRC校验部分4Bytes(这...

2019-10-23 17:35:03 1662

转载 Dijkstra算法详解

转自 :https://www.cnblogs.com/skywang12345/p/3711512.html迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。它的主要特点是以起始点为中心向外层层扩展(广度优先搜索思想),直到扩展到终点为止基本思想 通过Dijkstra计算图G中的最短路径时,需要指定起点s(即从顶点s开始计算)。...

2019-10-19 22:11:45 234

原创 socket通信关于bind端口和IP

socket通信关于bind 端口和IP转自:https://blog.csdn.net/windyf2013/article/details/79738287结论:1、采用TCP通信时,客户端不需要bind()他自己的IP和端口号,而服务器必须要bind()自己本机的IP和端口号;2、若采用UDP通信时(这里是有客户端和服务器之分才这么说的,若是指定特定端口的UDP对等通信则不一样了...

2019-09-21 20:48:00 1180 1

原创 SYN泛洪攻击

转自:https://blog.csdn.net/justenjoyitpy/article/details/78151239SYN泛洪攻击概述SYN泛洪攻击利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,使得被攻击方资源耗尽,从而不能够为正常用户提供服务。SYN泛洪攻击原理在TCP协议中被称为三次握手(Three-way Handshake)的...

2019-09-21 15:52:38 1592

原创 网络编程之socket

转载自:https://www.cnblogs.com/clschao/articles/9593164.html看到本篇文章的题目是不是很疑惑,what is this?,不要着急,但是记住一说网络编程,你就想socket,socket是实现网络编程的工具,那么什么是socket,什么是网络编程,什么是网络,为什么要学习socket,都在下面有讲解,大家细细看来!本节目录一 为...

2019-09-20 15:05:46 210

原创 scapy构造数据包总结

1.收发数据包函数scapy模块中有好几个收发数据包的函数,他们能完成不同的功能:send() 只发送而不接收数据包,并且网络层之下的都默认处理好了,只需传给它网络层之上(包括网络层)的参数即可 sendp() 只发送不接收,并且数据链路层之下的都处理好了,只需传给它数据链路层之上(包括数据联络层,最常用的是Ether)的参数 sr1() 发送完只接受1个响应包 sr() 发...

2019-09-18 15:07:03 12531

原创 wireshark抓包工具详细说明及操作使用

见:https://blog.csdn.net/qq78069460/article/details/79153895

2019-09-17 10:49:08 664

原创 实验2:结合Socket实现DDoS攻击

本实验摘自实验楼:https://www.shiyanlou.com/courses/683/learning/?id=2238一、实验说明1.1 实验介绍通过上一节实验的SYN泛洪攻击结合Socket实现DDoS攻击。1.2 开发环境Ubuntu Linux Python 3.x版本1.3 知识点本次实验将涉及以下知识点:argparse 命令解析 socket...

2019-09-16 20:59:09 875

原创 实验1 : Scapy实现SYN泛洪攻击

本实验摘自实验楼:https://www.shiyanlou.com/courses/683/learning/?id=22361.1 实验介绍本次实验将使用python3版本的Scapy--Scapy3k来实现一个简单的DDos,本次实验分为两节,本节将学习如何使用Scapy3k来实现SYN泛洪攻击。1.2 知识点SYN泛洪攻击的实现原理 Scapy3k的基本用法1.3 效果...

2019-09-16 20:51:52 2576

原创 SDN核心技术剖析和实战指南---读书笔记

转自:https://www.cnblogs.com/cing/p/7678224.html第一章SDN定义如下:SDN是一种新兴的基于软件的网络架构及技术,其最大的特点在于具有松耦合的控制平面与数据平面、支持集中化的网络状态控制、实现底层网络设施对上层应用的透明。SDN和NFV:ONF(开发网络基金会)从用户角度定义SDN架构,ETSI(欧洲电信标准化协会)从网络运营商角度出...

2019-09-14 17:32:39 2244

原创 SDN控制器的LLDP链路发现与拓扑管理

链路发现:控制器在执行链路发现过程时,会首先通过一个packet-out消息向所有与之连接的交换机发送LLDP数据包,该消息命令交换机将LLDP数据包发送给所有端口,一旦交换机接收到packet-out消息,他就会把LLDP数据包通过其所有的端口发送给与之连接的设备,如果其邻居交换机是一台OpenFLow交换机,那么该交换机将自行相应的流表查找操作。因为交换机中并没有专门的流表项用于处理LLD...

2019-09-14 14:41:15 4086

原创 Floodlight 源码解读:FloodlightProvider

FloodlightProvider处理交换机之间的连接并将 OpenFlow 的消息转化成其他模块可以监听的事件 决定某些特定的 OpenFlow 消息(即 PacketIn,FlowRemove,PortStatus 等)被分派到该侦听消息的模块的顺序,模块可以决定允许该消息进入下一个监听对象或者停止处理消息FloodlightProvider 如何工作?FloodlightPro...

2019-09-08 21:26:30 245

原创 JAVA对象及其引用

关于对象与引用之间的一些基本概念。初学Java时,在很长一段时间里,总觉得基本概念很模糊。后来才知道,在许多Java书中,把对象和对象的引用混为一谈。可是,如果我分不清对象与对象引用,那实在没法很好地理解下面的面向对象技术。把自己的一点认识写下来,或许能让初学Java的朋友们少走一点弯路。为便于说明,我们先定义一个简单的类:c...

2019-08-17 16:23:16 63

转载 JAVA泛型的学习总结

参考链接:1.https://blog.csdn.net/s10461/article/details/539410912.https://www.jianshu.com/p/73888b8c2afe关于<? extends T>和<? super T><? extends T>和<? super T>是Java泛型中的“...

2019-08-13 14:55:50 119

转载 重放攻击和中间人攻击

重放攻击即假设A向B认证自己,B要求A提供账户和密码作为身份信息。但是,C截获了两人的通讯内容,并记下账户和密码。在A和B完成通讯后,C联系了B,假装自己是A,当B要求C提供账户和密码时,C将A的账户和密码发出,B就会认为和自己通讯的人是A。中间人攻击(Man-in-the-middle 缩写:MITM)中间人攻击是攻击者把自己当作客户端与服务器端的中间人,客户端发送的信息...

2019-07-14 16:03:20 3250

转载 模糊测试、黑盒测试、白盒测试、渗透测试

模糊测试模糊测试 (fuzz testing, fuzzing)是一种软件测试技术。其核心思想是自动或半自动的生成随机数据输入到一个程序中,并监视程序异常,如崩溃,断言(assertion)失败,以发现可能的程序错误,比如内存泄漏。模糊测试常常用于检测软件或计算机系统的安全漏洞。模糊测试的实现是一个非常简单的过程:1、准备一份插入程序中的正确的文件。2、用随机数据替换该文件的某些部分。...

2019-07-13 20:29:08 12600

转载 如何将floodlight导入eclipse

第一步安装eclipse和floodlightapt-get -y install build-essential default-jdk ant python-dev eclipsegit clone git://github.com/floodlight/floodlight.git第二步进入到floodlight的目录编译。必须安装ant才能编译,使用apt-get命令安装。...

2019-05-29 15:30:15 1147 4

转载 如何写一个Floodlight模块

目标这里完成一个floodligth模块,这个模块可以监听新的MAC地址,并且打印出新的MAC地址以及发现这些MAC地址的交换机的DPID信息.事前准备 已经装好floodlight,并且把floodlight导入到eclipse中 已经安装了mininet或者是物理ovs交换机 创建一个listener在eclipse中增加一个类1. 在eclipse项目中增...

2019-05-29 11:02:13 564

转载 网络攻击总结

1.什么是DOS攻击  首先注意这里是DOS(Denial Of Service)攻击,并非DoS。DoS是微软早期的系统版本。  DoS即Denial Of Service,拒绝服务的缩写。DoS是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提供正常的服务或资源访问,使目标系统服务系统停止响应甚至崩溃,而在此攻击中并不包括...

2019-05-05 11:10:06 683

原创 OpenFlow 协议详解(干货)

OpenFlow是一种新型的网络协议,它是控制器和交换机之间的标准协议。自2009年底发布1.0版本后,OpenFlow协议又经历了1.1、1.2、1.3及1.4版本的演进过程,目前使用和支持最多的是1.0和1.3版本。OpenFlow1.3在1.0版的基础上进一步优化及升级,其中添加了很多新的特性及消息,如支持多个流表(flow table)、组表(group table),支持多控制器等。一个...

2019-05-03 15:45:16 35492

转载 进程和线程

进程是资源(CPU、内存等)分配的基本单位,它是程序执行时的一个实例。程序运行时系统就会创建一个进程,并为它分配资源,然后把该进程放入进程就绪队列,进程调度器选中它的时候就会为它分配CPU时间,程序开始真正运行。线程是程序执行时的最小单位,它是进程的一个执行流,是CPU调度和分派的基本单位,一个进程可以由很多个线程组成,线程间共享进程的所有资源,每个线程有自己的堆栈和局部变量。线程由CPU独立...

2019-04-30 21:51:42 71

原创 手把手教你使用U盘安装Ubuntu系统

转自:http://bbs.zol.com.cn/diybbs/d33925_7.html手把手教你使用U盘安装Ubuntu系统Linux一直以来都是比较小众的系统,特别是在国内,用户相对Windows来说,更是少,甚至给人一种高端,复杂的印象,不过这些年来,使用linux的人越来越多了,而Ubuntu作为Linux系统中用户较多的一个分支,做得也确实不错,非常的“亲民”,而安装Ubunt...

2019-04-25 20:02:20 1926

转载 happens-before规则、调度器、进程同步、进程异步、进程互斥、互斥锁、死锁

happens-before。happens-before字面翻译过来就是先行发生,A happens-before B 就是A先行发生于B?不准确!在Java内存模型中,happens-before 应该翻译成:并不是说前一个操作必须要在后一个操作之前执行,而是指前一个操作的执行结果必须对后一个操作可见。讲白点就是前面一个操作把变量a赋值为1,那后面一个操作肯定能知道a已经变成了1。...

2019-04-20 17:04:47 393

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除