深入探索 TCP TIME-WAIT】的更多相关文章

1​ TIME-WAIT 状态 主动关闭连接的一方,在四次挥手最后一次发送 ACK 后,进入 TIME_WAIT 状态.在这个状态里,主动关闭连接一方等待 2MSL(Maximum Segment Life,报文段最大生存时间,在RFC793 中定义为 2 min,而在 Linux 中定义为 30s),若这段时间内未收到被动关闭一方重发的 FIN,则由 TIME_WAIT 状态转到 CLOSED 状态. 祭上状态机图: 在这里为了讨论方便,假设主动关闭连接的一方均为本地客户端,被动关闭连接的一方…
Ping程序 Ping程序由Mike Muuss编写,目的是为了测试另一台主机是否可达. 该程序发送一份ICMP回显请求报文给主机,并等待返回ICMP回显应答. ping程序还能测出到这台主机的往返时间 Traceroute程序 Traceroute程序是一个能更深入探索TCP/IP协议的方便可用的工具 Traceroute程序可以让我们看到IP数据报从一台主机传到另一台主机所经过的路由. 该程序使用ICMP报文和IP首部中的TTL字段.Traceroute程序的操作过程大概如下: 先发送一份T…
1.概述 由Van jacobson编写的工具,用于探索tcp/ip协议,使用ICMP报文和首部TTL字段,TTL字段由发送端设置一个8bit字段,初始值为RFC指定,当前值为64, 每个处理数据的路由器都需要把TTL值减1或减去数据报在路由器中停留的秒数,作为跳站的计数器,所经过的每个路由器都将其减1.TTL目的防止数据报在选路时无休止在网络流动.在Traceroute程序发送一份UDP数据报给主机,…
什么是Socket?    大家都用电脑上网,当我们访问运维社区https://www.unixhot.com的时候,我们的电脑和运维社区的服务器就会创建一条Socket,我们称之为网络套接字.那么既然是网络通信,肯定是成对的.至少有一个客户端和服务端,我们称之为套接字对.    一个套接字对(socket pair)是一个定义该网络连接的两个端点的五元组,包括: 源IP地址 源端口 目的IP地址 目的端口 类型:TCP or UDP 那么针对于HTTP请求来说,我们知道底层是建立了一条TCP的…
本篇博客转自赵班长 所有运维都会的Socket知识!!! 原创: 赵班长 新运维社区 什么是Socket? 大家都用电脑上网,当我们访问运维社区https://www.unixhot.com的时候,我们的电脑和运维社区的服务器就会创建一条Socket,我们称之为网络套接字.那么既然是网络通信,肯定是成对的.至少有一个客户端和服务端,我们称之为套接字对. 一个套接字对(socket pair)是一个定义该网络连接的两个端点的五元组,包括: 源IP地址 源端口 目的IP地址 目的端口 类型:TCP…
TCP点对点穿透探索 点对点穿透是穿透什么 点对点穿透,需要实现的是对NAT的穿透.想实现NAT的穿透,当然要先了解NAT到底是什么,以及NAT是用来干什么的.NAT全称Network Address Translation,意思是网络地址转换,在1994年提出.它可以对不同的IP及端口进行映射,将一个网络地址转换为另一个.NAT的主要用途,大家可以看路由器.路由器具有一个WAN口及多个LAN口:WAN口对外,连接因特网,拥有公网IP:LAN口对内,构建本地网络,分配的是私网IP.当处于LAN网…
TCP超时重传机制探索 作者:tll (360电商技术) 1)通信模型 TCP(Transmission Control Protocol)是一种可靠传输协议.在传输过程中当发送方(sender)向接收方(receiver)发送的数据丢失时,将引起发送方向接收方重传丢失的数据包. 其通信模型例如以下: wx_fmt=png" data-ratio="1.5138121546961325" data-w="362" _src="https://mm…
最近完成了几项比较简单的项目, 终于是在996里偷了点闲暇时光, 想着来研究研究些啥吧?  一个普通的控制台日志映入了我的眼帘(孽缘呀): (图中使用 SpringBoot 的 log4j 来输出日志, logginglevel: debug, jdk版本为1.8) 造成这种现象的原因可能是, Mybatis在执行接口方法时, 实例化了多个Preparedstatement, 启用了不同的NIO线程, 但是其中, 咦?! 没错, NIO中出了一段IO!!! (天哪!), 在查询网络资料后, 发现…
    最近在园子里看了大神写的(面试官,不要再问我三次握手和四次挥手),忍不住写段程序来测试一番.     在网上找了很多例子,大多只实现了TCP点对点通讯,但实际应用中,一个服务器端口往往要监听多个客户端发来的消息. 测试工具下载:https://download.csdn.net/download/nbyanghuichao/11872360     本例采用System.Threading实现多线程监听,下面只介绍核心代码,省略了消息提示和错误处理,可以从我的GitHub获取完整代码:h…
开篇:ASP.Net是一项动态网页开发技术,在历史发展的长河中WebForm曾一时成为了ASP.Net的代名词,而ASP.Net MVC的出现让这项技术更加唤发朝气.但是,不管是ASP.Net WebForm还是ASP.Net MVC在请求处理机制上大部分都是相同的,只是在请求处理管道上的处理事件做了不同的操作,因此,本文标题不区分ASP.Net WebForm和ASP.Net MVC,但在后续的介绍中会区分开来介绍.此外,本文以IIS经典模式为主,不讨论集成模式(IIS7后加入了集成模式,不用…
转自 http://blog.csdn.net/sjin_1314/article/details/18178329 原文:Characterization and Measurement of TCP Traversal through NATs and Firewalls 原作者:Saikat Guha Paul Francis [摘要]     近些年,标准化社区已经开发出一些UDP穿透NAT/防火墙的技术(也就是,在NAT之后的主机之间建立UDP流).然而,由于TCP连接建立的不对称特点…
传输层协议使用带外数据(out-of-band,OOB)来发送一些重要的数据,如果通信一方有重要的数据需要通知对方时,协议能够将这些数据快速地发送到对方.为了发送这些数据,协议一般不使用与普通数据相同的通道,而是使用另外的通道.linux系统的套接字机制支持低层协议发送和接受带外数据.但是TCP协议没有真正意义上的带外数据.为了发送重要协议,TCP提供了一种称为紧急模式(urgentmode)的机制.TCP协议在数据段中设置URG位,表示进入紧急模式.接收方可以对紧急模式采取特殊的处理.很容易看…
继研究了Neutron之后,继续Nova的外围研究之旅.本站是研究块存储服务Cinder. 0.验证环境 环境包括: 1.一个controller节点,运行nova-api, nova-scheduler, cinder-api, cinder-scheduler, mysql, rabbitmq 2.一个Nova compute节点,运行一个虚机 3.三个cinder volume节点,每个节点使用LVMISCSIDriver来使用本地存储 4. 创建一个volume type,设置 volu…
在侦查过程中,信息收集的初始阶段是扫描. 侦查是什么? 侦查是尽可能多的收集目标网络的信息.从黑客的角度来看,信息收集对攻击非常有帮助,一般来说可以收集到以下信息: 电子邮件.端口号.操作系统.运行的服务.Traceroute或者DNS的信息.防火墙识别和逃逸等等 NMAP的简介 nmap是一个网络连接端扫描软件,用来扫描网上电脑开放的网络连接端.确定哪些服务运行在哪些连接端,并且推断计算机运行哪个操作系统(这是亦称 fingerprinting).它是网络管理员必用的软件之一,以及用以评估网络…
经典摘抄 第五章 IP协议相关技术 1.DNS可以将网址自动转换为具体的IP地址. 2.主机识别码的识别方式:为每台计算机赋以唯一的主机名,在进行网络通信时,可以直接使用主机名称而无需输入一大长串的IP地址.主机会利用一个叫做htons的数据库文件实现该功能. 3.DNS系统:主机的管理机构可以对数据进行变更和设定,可以维护一个用来表示组织内部主机名和IP地址之间对应关系的数据库. 4.域名是指为了识别主机名称和组织机构名称的一种具有分层的名称.域名由几个英文字母用点号连接构成.可以在每个主机名…
目录: 1.如何区分内网IP和外网IP? 保留字段 2.子网掩码是起什么作用的? 将DNS和IP异或,表示哪段起作用 3.ping到底起什么作用? ping本地.ping远程 下面针对上面三个问题分别讲解: 一. 公网IP和内网IP的概念解析 (1)   tcp/ip协议中,专门保留了三个IP地址区域作为私有地址,其地址范围如下:  10.0.0.0/8:10.0.0.0-10.255.255.255  172.16.0.0/12:172.16.0.0-172.31.255.255  192.1…
http://1024monkeys.wordpress.com/2014/04/01/game-servers-udp-vs-tcp/ 在编写网络游戏的时候,到底使用UDP还是TCP的问题迟早都要面对. 一般来说你会听到人们这样说:“除非你正在写一个动作类游戏,否则你就用TCP吧” 或者是 “你能够在MMO游戏中用TCP,因为魔兽世界就用的TCP!” 遗憾的是,这些观点都没有反映这个问题的复杂性. 背景 首先,说明一下,我之前主要是用TCP进行网络编程.我曾为一个流行的在线纸牌游戏编写服务器了…
http://blog.jobbole.com/64638/ 在编写网络游戏的时候,到底使用UDP还是TCP的问题迟早都要面对. 一般来说你会听到人们这样说:“除非你正在写一个动作类游戏,否则你就用TCP吧” 或者是 “你能够在MMO游戏中用TCP,因为魔兽世界就用的TCP!” 遗憾的是,这些观点都没有反映这个问题的复杂性. 背景 首先,说明一下,我之前主要是用TCP进行网络编程.我曾为一个流行的在线纸牌游戏编写服务器了好几年,在高峰期我们的每台服务器能够承受4000到10000个连接(同一台物…
搬运自http://blog.csdn.net/programmer_at/article/details/49203241  当前TCP/IP协议存在哪些问题?如何改进? 当时没有回答好,然后提到了NDN可以针对TCP/IP做出改进,但是在行家面前就漏 洞百出,一是对TCP/IP网络理解不够深入,另外一方面是自己对NDN比较陌生.趁着这段时间比较得闲,在网上搜了<Named Data Networking(NDN) Project>(2010.10)和初略看了看北大出版的<信息中心网络…
探索Oracle数据库升级6 11.2.0.4.3 Upgrade12c(12.1.0.1) 一.前言:       Oracle 12c公布距今已经一年有余了,其最大亮点是一个能够插拔的数据库(PDB),这是在之前版本号没有的.可是假设我们要将曾经版本号的数据库升级到12c来,那么也应顺其自然的将其变成一个pdb,那么我们的工作不仅包括了数据库软件的升级,同一时候也包括怎样将一个NO-CDB的数据库plug to CDB none. 二.升级要求: 三.升级前准备: 3.1.查看数据库版本号及…
内容简介 1.第三部分第二课:IP地址和域名 2.第三部分第三课预告:协议 第三部分第二课:IP地址和域名 上一课我们说了在Web之中,全球各地有无数台机器,有些充当客户机,有些作为服务器. 那么这些机器如何找到和辨认彼此呢?难道不会“只是因为在人群中多看了你一眼,再也没能想起你容颜”吗? 如果我用我的浏览器上网,我怎么知道哪个服务器向我发送此网站呢? 为了解决这个难题,IT科学家们使用了一个叫做IP地址的东西(东西好像有点太难听了,IP它根本就不是个东西好嘛). IP是Internet Pro…
内容简介 1.Web探索之旅:开宗明义 2.第一部分第一课:什么是Web? 3.第一部分第二课:Web,服务和云 4.第一部分第三课:Web的诞生史 Web探索之旅:开宗明义 大家好. 我们这个系列课程相对比较简单,比[C语言探索之旅],[C++探索之旅],[Linux探索之旅],[TCP/IP网络探索之旅]简单,会让大家在轻松中理解关于Web的方方面面. 您是否对Web感兴趣但是不知道什么是Web呢? 您是否觉得“网络黑客”很神秘? 您是否不清楚Internet和Web有什么区别? 如果您有凡…
前言 web 端播放rtsp 流,一般都是采用vlc插件,默认是用 UDP 协议播放,这就会存在丢包的可能性,导致界面会变花,要想不花,需要使用更可靠的TCP协议.关于这两种协议的区别,大家可以自行查资料. Web VLC 文档设置 官方文档上面告诉我们设置的方式 ,大家可以查看文档 ,代码如下: var options = new Array(":aspect-ratio=4:3", "--rtsp-tcp"); var id = vlc.playlist.add…
TCP/IP协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输.TCP/IP协议采用4层结构,分别是应用层.传输层.网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求.由于我们大部分时间都工作在应用层,下层的事情不用我们操心:其次网络协议体系本身就很复杂庞大,入门门槛高,因此很难搞清楚TCP/IP的工作原理,通俗一点讲就是,一个主机的数据要经过哪些过程才能发送到对方的主机上. 那我们就来探索一下这个过程: 0.物…
1.关机命令(shutdown) 2.管理 Windows 服务(sc) 3.管理任务进程(tasklist.taskkill) 4.显示 TCP/IP 配置值(ipconfig) 5.网络诊断工具(ping) 6.路由跟踪工具(tracert) 7.临时设置环境变量(set) 8.总结 1.关机命令(shutdown) shutdown 命令用来关闭或重新启动本地或远程计算机. 在 10 秒的延迟后,关闭计算机: shutdown /s /t 10 在 10 秒的延迟后,关闭并重新启动计算机:…
一篇文章带你熟悉 TCP/IP 协议(网络协议篇二) 同样的,本文篇幅也比较长,先来一张思维导图,带大家过一遍. 一图看完本文 一. 计算机网络体系结构分层 计算机网络体系结构分层计算机网络体系结构分层不难看出,TCP/IP 与 OSI 在分层模块上稍有区别.OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”. 二. TCP/IP 基础 1. TCP/IP 的具体含义 从字面意义上讲,有人可能会认为 TCP/IP 是指 TCP 和…
我又来了,这篇文章还是来做(da)推(guang)介(gao)我自己的!俗话说事不过三,我觉得我下次得换个说法了,不然估计要被厌恶了,但是我是好心呐,一定要相信我纯洁的眼神.由于这两年接触到了比较多的这方面的知识,不想忘了,我决定把他们记录下来,所以决定在GitBook用半年时间上面写下来,这是目前写的一节,后面会在gitbook上不断更新,欢迎大家star,主要是在写完之前欢迎各位给出指正的意见.最最重要的,地址在这里:https://www.gitbook.com/book/rogerzhu…
TCP/IP.HTTP.HTTPS.HTTP2.0 HTTP,全称超文本传输协议(HTTP,HyperText Transfer Protocol),是一个客户端和服务器端请求和应答的标准(TCP),互联网上应用最为广泛的一种网络协议.客户端是终端用户,服务器端是网站.通过使用Web浏览器.网络爬虫或者其它的工具,客户端发起一个到服务器上指定端口(默认端口为80)的HTTP请求. HTTPS,即加密后的HTTP.HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非…
利用Tsung模拟基于Tcp的业务流程,实属无奈.因ConnectManager部署在linux下,其中,Loadrunner的winsocket因不支持linux platform而无法使用,而Jmeter 又因本身太耗机器的资源,所以,最后决定探索一下Tsung--这个神奇而又让人感到很无奈的工具. 说它无奈主要是它的易用性,一切设置,一切脚本处理都要在xml文档里编写,对于一个使用loadrunner和Jmeter的人,这是相当的残酷的.原因有以下: 1.user manual是英文版的,…
文章转自:https://www.cnblogs.com/onepixel/p/7092302.html TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输.TCP/IP 协议采用4层结构,分别是应用层.传输层.网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求.由于我们大部分时间都工作在应用层,下层的事情不用我们操心:其次网络协议体系本身就很复杂庞大,入门门槛高,因此很难搞清楚TCP/IP的工作原…