博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网络基础知识(一)wireshark 三次握手实践
阅读量:6279 次
发布时间:2019-06-22

本文共 2004 字,大约阅读时间需要 6 分钟。

wireshark 三次握手简介

192.168.18.120 IP地址为我的本机虚拟机IP地址

过滤设置:ip.addr == 192.168.18.120 (ip.addr == 192.168.18.120 显示所有目标或源地址是192.168.18.120的数据包)

第一次握手

第二次握手 

第三次握手 

观察其中红色方框内的3条数据包就是一次TCP建立连接的过程

[1]客户端首先向服务器发一个数据包syn位置1,5774->80,嘿,哥们儿,您我想访问你的web资源,能不能把你的80端口打开, 【73--->120】

[2]服务器向客户端返回一个数据包syn位置1,ack位置1,80->5774,可以啊,我已经把80端口打开了,但是为了保证待会儿可靠传输,你也把你的5774端口打开呗,【120--->73】

[3]最后,客户端会再向服务器端发送一个数据包ack位置1,5774->80,没问题我也把的5774端口打开了,好的到此一次TCP连接就此建立,【73--->120】

 

 开始测试,以下为抓取的数据包

请求数据分析

服务器响应结果分析

以上这个什么啥意思?

 响应结果我们可以清楚的看到,服务器响应数据中返回的Openresty 输出的信息ngx.say() 函数执行的结果,这也是我们想要的结果

ngx.say("Tinywan redis_test_short set result: ", ok)ngx.say("redis_test_short result: ", res)

最后整体抓包

 

长链接测试

 

 

 

短连接测试代码

#  test_redis_long    location /test_redis_short {        default_type 'text/html';        content_by_lua_file "/mnt/hgfs/Linux-Share/Lua/lua_project_v0.01/application/redis/test_short.lua";    }
test_short.lua
--[[-----------------------------------------------------------------------* |  Copyright (C) Shaobo Wan (Tinywan)* |  Github: https://github.com/Tinywan* |  Author: Tinywan* |  Date: 2017/5/8 16:25* |  Mail: Overcome.wan@Gmail.com* |------------------------------------------------------------------------* |  version: 1.0* |  description: redis 短连接测试* |--------------------------------------------------------------------------]]local redis = require "resty.redis"local red = redis:new()local ok, err = red:connect("127.0.0.1", 63700)if not ok then    ngx.say("failed to connect: ", err)    returnendlocal res, err = red:auth("tinywan123456")if not res then    ngx.say("failed to authenticate: ", err)    returnendok, err = red:set("redis_test_short", "redis_test_short"..ngx.time())if not ok then    ngx.say("failed to set dog: ", err)    returnendngx.say("Tinywan redis_test_short set result: ", ok)local res, err = red:get("redis_test_short")if not res then    ngx.say("failed to get dog: ", err)    returnendif res == ngx.null then    ngx.say("dog not found.")    returnendngx.say("redis_test_short result: ", res)

 

转载地址:http://hzbva.baihongyu.com/

你可能感兴趣的文章
IT高管和易筋经的故事
查看>>
VS2015 中统计整个项目的代码行数
查看>>
Unite 2017 | 从《闹闹天宫》看MOBA游戏里的网络同步技术
查看>>
科研必备:10款提升科研效率的神器
查看>>
spring batch中用到的表
查看>>
转载:[Mitbbs]FB的intern和准备的经历
查看>>
poj 1990 树状数组
查看>>
八条基本措施保障Windows Vista的安全
查看>>
latex用法疑难解析
查看>>
System.Web.Caching.Cache类 缓存 各种缓存依赖
查看>>
星级评分--jQuery插件
查看>>
jquery插件制作 -- 1.我们的第一个插件:txtHover
查看>>
资源文件夹res/raw和assets的使用
查看>>
UINode扩展
查看>>
NoClassDefFoundError: org/apache/commons/pool/impl/GenericObjectPool
查看>>
LINUX常用命令
查看>>
百度云盘demo
查看>>
善用Eclipse的代码模板功能
查看>>
概率论与数理统计习题
查看>>
RAID一个硬盘FAIL。
查看>>