序列号

1017 笔记

ε祈祈猫儿з 提交于 2019-12-01 16:43:29
目录 1.软件开发架构: c/s架构 b/s架构 2.网络编程 互联网的组成 OSI七层协议 1.物理层 2.数据链路层 3.网络层 4.传输层 5.会话层 6.表示层 7.应用层 Socket 1.什么是Socket 2.为什么要使用Socket 3.如何使用 1.软件开发架构: 开发软件,必须要开发一套客户端与服务端 客户端与服务端的作用: 服务端:统一管理数据库的主机中的软件,就叫服务端 客户端:用户安装的软件,向服务端进行请求 c/s架构 Client:客户端 Server:服务端 用户安装客户端,厂商部署服务端 数据存放服务端与客户端的利与弊 服务端:统一处理有更好的安全性和稳定性而且升级比较容易,不过服务器负担增加了 客户端:非常快,将负担分配到每个用户,节约服务器资源,如果本地保存密码账号,安全性较低,且升级比较麻烦 c/s架构的软件:电脑上的QQ,pycharm等,手机端的微信,王者等 b/s架构 Browser:浏览器(客户端) Server:服务端 优点:以浏览器充当客户端,无需用户下载多个软件,也无需用户下载更新软件版本,直接在浏览器上访问需要使用的软件 缺点:消耗网络资源过大,当网络不稳定时,软件的使用也会不稳定 b/s架构的软件:网页上需要输入域名的网址(京东,淘宝) web浏览器与服务器之间得以相互通信,依靠的是两个协议 第一个是TCP/IP协议(传输层

TCP的三次握手与四次挥手理解

China☆狼群 提交于 2019-12-01 12:17:22
一、TCP三次握手(图片来自: https://www.cnblogs.com/xianyulaodi/p/6547807.html ) 字段说明: 序列号seq: 占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。 确认号ack: 占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接收到下一个字节的编号;因此当前报文段最后一个字节的编号+1即为确认号。 确认ACK: 占1位,仅当ACK=1时,确认号字段才有效。ACK=0时,确认号无效。 同步SYN: 连接建立时用于同步序号。当SYN=1,ACK=0时表示:这是一个连接请求报文段。若同意连接,则在响应报文段中使得SYN=1,ACK=1。因此,SYN=1表示这是一个连接请求,或连接接受报文。SYN这个标志位只有在TCP建产连接时才会被置1,握手完成后SYN标志位被置0。 终止FIN: 用来释放一个连接。FIN=1表示:此报文段的发送方的数据已经发送完毕,并要求释放运输连接。 PS: ACK、SYN和FIN这些大写的单词表示标志位,其值要么是1,要么是0;ack、seq小写的单词表示序号。 握手过程:

TCP三次握手过程

北城余情 提交于 2019-12-01 08:06:27
前言 TCP 三次握手过程对于面试是必考的一个,所以不但要掌握 TCP 整个握手的过程,其中有些小细节也更受到面试官的青睐。 学习导图 一、TCP 是什么? TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。 我们知道了上述了解到了 TCP 的定义,通俗一点的讲,TCP 就是一个双方通信的一个规范标准(协议)。 我们在学习 TCP 握手过程之前,首先必须了解 TCP 报文头部的一些标志信息,因为在 TCP 握手的过程中,会使用到这些报文信息,如果没有掌握这些信息,在学习握手过程中,整个人处于懵逼状态,也是为了能够深入 TCP 三次握手的原理。 二、TCP 头部报文 2.1 source port 和 distination port 两者分别为「源端口号」和「目的端口号」。源端口号就是指本地端口,目的端口就是远程端口。 一个数据包(pocket)被解封装成数据段(segment)后就会涉及到连接上层协议的端口问题。 可以这么理解,我们可以想象发送方很多的窗户,接收方也有很多的窗户,这些窗口都标有不同的端口号,源端口号和目的端口号就分别代表从哪个规定的串口发送到对方接收的窗口。不同的应用程度都有着不同的端口,之前网络分层的文章中有提到过。 扩展:应用程序的端口号和应用程序所在主机的 IP 地址统称为

面试官,不要再问我三次握手和四次挥手

∥☆過路亽.° 提交于 2019-12-01 02:46:08
三次握手和四次挥手是各个公司常见的考点,也具有一定的水平区分度,也被一些面试官作为热身题。很多小伙伴说这个问题刚开始回答的挺好,但是后面越回答越冒冷汗,最后就歇菜了。 见过比较典型的面试场景是这样的: 面试官:请介绍下三次握手 求职者:第一次握手就是客户端给服务器端发送一个报文,第二次就是服务器收到报文之后,会应答一个报文给客户端,第三次握手就是客户端收到报文后再给服务器发送一个报文,三次握手就成功了。面试官:然后呢?求职者:这就是三次握手的过程,很简单的。面试官:。。。。。。(番外篇:一首凉凉送给你) 记住猿人谷一句话: 面试时越简单的问题,一般就是隐藏着比较大的坑,一般都是需要将问题扩展的 。上面求职者的回答不对吗?当然对,但距离面试官的期望可能还有点距离。 希望大家能带着如下问题进行阅读,收获会更大。 请画出三次握手和四次挥手的示意图 为什么连接的时候是三次握手,关闭的时候却是四次握手? 什么是半连接队列? ISN(Initial Sequence Number)是固定的吗? 三次握手过程中可以携带数据吗? 如果第三次握手丢失了,客户端服务端会如何处理? SYN攻击是什么? 挥手为什么需要四次? 四次挥手释放连接时,等待2MSL的意义? 1. 三次握手 三次握手(Three-way Handshake)其实就是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。

Windows7旗舰版激活密钥

为君一笑 提交于 2019-12-01 02:01:24
6K2KY-BFH24-PJW6W-9GK29-TMPWP或22TKD-F8XX6-YG69F-9M66D-PMJB Windows 7 旗舰版 1: 戴尔 DELL 序列号: 342DG-6YJR8-X92GV-V7DCV-P4K27 2: 联想 LENOVO 序列号: 22TKD-F8XX6-YG69F-9M66D-PMJBM 3: 三星 SAMSUNG 序列号:49PB6-6BJ6Y-KHGCQ-7DDY6-TF7CD 4: 宏基 ACER 序列号: YKHFT-KW986-GK4PY-FDWYH-7TP9F FJGCP-4DFJD-GJY49-VJBQ7-HYRR2 都不行的话可以用windows loader,专业的windows7激活工具,我帮同学装windows7都用它激活。 来源: https://www.cnblogs.com/yangfang777/p/11647175.html

tcp工作原理和状态

倖福魔咒の 提交于 2019-11-30 22:16:44
1、三次握手 置位概念:根据TCP的包头字段,存在3个重要的标识ACK、SYN、FIN ACK:表示验证字段 SYN:位数置1,表示建立TCP连接 FIN:位数置1,表示断开TCP连接 三次握手过程说明: 1、由客户端发送建立TCP连接的请求报文,其中报文中包含seq序列号,是由发送端随机生成的,并且将报文中的SYN字段置为1,表示需要建立TCP连接。(SYN=1,seq=x,x为随机生成数值) 2、由服务端回复客户端发送的TCP连接请求报文,其中包含seq序列号,是由回复端随机生成的,并且将SYN置为1,而且会产生ACK字段,ACK字段数值是在客户端发送过来的序列号seq的基础上加1进行回复,以便客户端收到信息时,知晓自己的TCP建立请求已得到验证。(SYN=1,ACK=x+1,seq=y,y为随机生成数值)这里的ack加1可以理解为是确认和谁建立连接。 3、客户端收到服务端发送的TCP建立验证请求后,会使自己的序列号加1表示,并且再次回复ACK验证请求,在服务端发过来的seq上加1进行回复。(SYN=1,ACK=y+1,seq=x+1) 2、四次挥手 四次挥手过程说明: 1、客户端发送断开TCP连接请求的报文,其中报文中包含seq序列号,是由发送端随机生成的,并且还将报文中的FIN字段置为1,表示需要断开TCP连接。(FIN=1,seq=x,x由客户端随机生成) 2

(转)面试官,不要再问我三次握手和四次挥手

﹥>﹥吖頭↗ 提交于 2019-11-30 22:10:30
三次握手和四次挥手是各个公司常见的考点,也具有一定的水平区分度,也被一些面试官作为热身题。很多小伙伴说这个问题刚开始回答的挺好,但是后面越回答越冒冷汗,最后就歇菜了。 见过比较典型的面试场景是这样的: 面试官:请介绍下三次握手 求职者:第一次握手就是客户端给服务器端发送一个报文,第二次就是服务器收到报文之后,会应答一个报文给客户端,第三次握手就是客户端收到报文后再给服务器发送一个报文,三次握手就成功了。 面试官:然后呢? 求职者:这就是三次握手的过程,很简单的。 面试官:。。。。。。 (番外篇:一首凉凉送给你) 记住猿人谷一句话: 面试时越简单的问题,一般就是隐藏着比较大的坑,一般都是需要将问题扩展的 。上面求职者的回答不对吗?当然对,但距离面试官的期望可能还有点距离。 希望大家能带着如下问题进行阅读,收获会更大。 请画出三次握手和四次挥手的示意图 为什么连接的时候是三次握手? 什么是半连接队列? ISN(Initial Sequence Number)是固定的吗? 三次握手过程中可以携带数据吗? 如果第三次握手丢失了,客户端服务端会如何处理? SYN攻击是什么? 挥手为什么需要四次? 四次挥手释放连接时,等待2MSL的意义? 1. 三次握手 三次握手(Three-way Handshake)其实就是指建立一个TCP连接时,需要客户端和服务器总共发送3个包

三次握手和四次挥手面试常问

痞子三分冷 提交于 2019-11-30 21:00:47
三次握手和四次挥手是各个公司常见的考点,也具有一定的水平区分度,也被一些面试官作为热身题。很多小伙伴说这个问题刚开始回答的挺好,但是后面越回答越冒冷汗,最后就歇菜了。 见过比较典型的面试场景是这样的: 面试官:请介绍下三次握手 求职者:第一次握手就是客户端给服务器端发送一个报文,第二次就是服务器收到报文之后,会应答一个报文给客户端,第三次握手就是客户端收到报文后再给服务器发送一个报文,三次握手就成功了。 面试官:然后呢? 求职者:这就是三次握手的过程,很简单的。 面试官:。。。。。。 (番外篇:一首凉凉送给你) 记住猿人谷一句话:面试时越简单的问题,一般就是隐藏着比较大的坑,一般都是需要将问题扩展的。上面求职者的回答不对吗?当然对,但距离面试官的期望可能还有点距离。 希望大家能带着如下问题进行阅读,收获会更大。 请画出三次握手和四次挥手的示意图 为什么连接的时候是三次握手? 什么是半连接队列? ISN(Initial Sequence Number)是固定的吗? 三次握手过程中可以携带数据吗? 如果第三次握手丢失了,客户端服务端会如何处理? SYN攻击是什么? 挥手为什么需要四次? 四次挥手释放连接时,等待2MSL的意义? 1. 三次握手 三次握手(Three-way Handshake)其实就是指建立一个TCP连接时,需要客户端和服务器总共发送3个包

WireShark抓包分析

…衆ロ難τιáo~ 提交于 2019-11-30 12:17:35
简述:本文介绍了抓包数据含义,有TCP报文、Http报文、DNS报文。如有错误,欢迎指正。 1、TCP报文 TCP:(TCP是面向连接的通信协议,通过三次握手建立连接,通讯完成时要拆除连接,由于TCP 是面向连接的所以只能用于点对点的通讯)源IP地址:发送包的IP地址;目的IP地址:接收包的IP地址;源端口:源系统上的连接的端口;目的端口:目的系统上的连接的端口。 TCP是因特网中的传输层协议,使用三次握手协议建立连接。当主动方发出SYN连接请求后,等待对方回答SYN,ACK。这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制协议是可变大小的滑动窗口协议。第一次握手:建立连接时,客户端发送SYN包(SEQ=x)到服务器,并进入SYN_SEND状态,等待服务器确认。第二次握手:服务器收到SYN包,必须确认客户的SYN(ACK=x+1),同时自己也送一个SYN包(SEQ=y),即SYN+ACK包,此时服务器进入SYN_RECV状态。第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=y+1),此包发送完毕,客户端和服务器进入Established状态,完成三次握手。 1> 封包详细信息 A. 第一行,帧Frame 36838 指的是要发送的数据块,其中,所抓帧的序号为36838,捕获字节数等于传送字节数:70字节; B. 第二行,以太网

win7 激活码 秘钥

∥☆過路亽.° 提交于 2019-11-30 11:53:18
019.06最新windows7旗舰版系统激活码: 目前市面上的win7旗舰版激活码大部分都已经过期或失效了,下面来分享一些最新的。 win7旗舰版激活密钥: BG2KW-D62DF-P4HY6-6JDPD-DYK3W C7KYW-CBKVC-DPC82-7TPKD-Y8T2C GXRHM-CGB6Y-4WRD9-KFD7C-QXQ2B win7专业版激活密钥: YKHFT-KW986-GK4PY-FDWYH-7TP9 32KD2-K9CTF-M3DJT-4J3WC-733WD 74T2M-DKDBC-788W3-H689G-6P6GT GMJQF-JC7VC-76HMH-M4RKY-V4HX6 win7笔记本序列号: 1、戴尔 DELL 序列号: 342DG-6YJR8-X92GV-V7DCV-P4K27 2、联想 LENOVO 序列号: 22TKD-F8XX6-YG69F-9M66D-PMJBM 3、三星 SAMSUNG 序列号:49PB6-6BJ6Y-KHGCQ-7DDY6-TF7CD 4、宏基 ACER 序列号: YKHFT-KW986-GK4PY-FDWYH-7TP9F或FJGCP-4DFJD-GJY49-VJBQ7-HYRR2 win7激活方法: 1.计算机,右键鼠标,属性,查看自己的windows7版本信息。 2.在属性页面,拉到最下面,更改产品密钥