序列号

WINCE 读取U盘ID号

社会主义新天地 提交于 2019-12-11 16:24:05
读取 U 盘物理序列号 // usb.cpp: 定义控制台应用程序的入口点。 // #include "stdafx.h" /************************************************************* Win32 控制台应用程序 编译环境:Visual Studio 2005 主要功能: 1). 读取U盘序列号,保存在USBSerial数组里。 2). 验证 第一次运行程序读取U盘序列号存放在 C:\Windows\system32\USBSerial.dat文件中 以后运行检验读取到的U盘序列号与保存在文件中的是否一致, 若相同,置 gTag 为1; 若不一致,置 gTag 为0; ***********************************************************/ #include<windows.h> #include <winioctl.h> #include <stdio.h> #include <initguid.h> #include <setupapi.h> #include <string.h> #pragmacomment(lib,"setupapi.lib") wchar_tUSBSerial[5][100] = {TEXT("")}; int gTag = 0;

计算机网络 TCP协议

混江龙づ霸主 提交于 2019-12-09 19:46:17
TCP:面向连接的运输 TCP协议是面向连接的协议, 把连接作为最基本的抽象 。每一条TCP连接唯一的被通信两端的两个端点所确定。TCP协议是点对点,而不是点对多点。端点又被称为套接字,TCP协议规定,IP地址拼接端口号就构成套接字。 预备知识: 1 可靠数据运输原理:   1、TCP协议发送两种数据包,一种数据包用来传输数据,一种数据包用来发送控制信息。TCP数据都会有一个 包头 , 包头 中有相应标志位, 标志位 的设定用于表明数据包是用于 数据发送 还是用于 传输控制信息 。 2 TCP 建立一个连接需要三个报文段 :    情况1: 防止已失效的请求报文段突然又传送到了服务端而产生连接的误判。   客户端发送了一个连接请求报文段A到服务端,但是在某些网络节点上长时间滞留了,而后客户端又超时 重发 了一个连接请求报文段B该服务端,而后 正常建立连接,数据传输完毕,并 释放了连接 。但是请求报文段A延迟了一段时间后,又到了服务端,这本是一个早已失效的报文段,但是服务端收到后会误以为客户端又发出了一次连接请求,于是向客户端发出确认报文段,并同意建立连接。那么问题来了,假如这里没有三次握手,这时服务端只要发送了确认,新的连接就建立了,但由于 客户端没有发出建立连接的请求 ,因此 不会理会服务端的确认 ,也不会向服务端发送数据,而服务端却认为新的连接已经建立了,并在

TCP,TCP/IP协议簇和UDP的区别与理解

谁都会走 提交于 2019-12-06 19:38:45
TCP/IP协议介绍 TCP/IP协议是一个协议簇(多个协议的集合)。 TCP,IP协议是两个重要且主要的协议,就以此命名了。 TCP/IP协议集 TCP/IP协议簇主要分为应用层,传输层,网络层,网络访问层(简单汇总)。 应用层: 超文本传输协议(HTTP):万维网的基本协议. 文件传输(FTP简单文件传输协议) 远程登录(Telnet),提供远程访问其它主机功能,它允许用户登录internet主机,并在这台主机上执行命令. 网络管理(SNMP简单网络管理协议),该协议提供了监控网络设备的方法,以及配置管理,统计信息收集,性能管理及安全管理等. 域名系统(DNS) , 该系统用于将internet中的域名及其公共广播中的网络节点转换成IP地址. 网络层: Internet协议(IP ipv4 ipv6) Internet控制信息协议(ICMP) 地址解析协议(ARP) 反向地址解析协议(RARP) 网络访问层: 简介: 网络访问层也称作主机到网络层(host-to-network). 功能: IP地址与物理地址硬件的映射 将IP封装成帧. 基于不同硬件类型的网络接口(定义了与物理介质的连接). TCP协议和UDP协议 TCP协议 TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议 面向连接 :指在收发数据及各项后续操作之前

【转载】TCP 与 UDP 的区别

邮差的信 提交于 2019-12-06 19:38:30
原文地址: TCP 与 UDP 的区别 首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! TCP/IP协议是一个协议簇。里面包括很多协议的。UDP只是其中的一个。之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他两命名了。 TCP/IP协议集包括应用层,传输层,网络层,网络访问层。 其中应用层包括: 超文本传输协议(HTTP):万维网的基本协议. 文件传输(TFTP简单文件传输协议): 远程登录(Telnet),提供远程访问其它主机功能,它允许用户登录 internet主机,并在这台主机上执行命令. 网络管理(SNMP简单网络管理协议),该协议提供了监控网络设备的方法,以及配置管理,统计信息收集,性能管理及安全管理等. 域名系统(DNS),该系统用于在internet中将域名及其公共广播的网络节点转换成IP地址. 其次网络层包括: Internet协议(IP) Internet控制信息协议(ICMP) 地址解析协议(ARP) 反向地址解析协议(RARP) 最后说网络访问层:网络访问层又称作主机到网络层(host-to-network).网络访问层的功能包括IP地址与物理地址硬件的映射,以及将IP封装成帧.基于不同硬件类型的网络接口

TCP的三次握手和四次挥手结合室友的北京字节面试

女生的网名这么多〃 提交于 2019-12-06 10:53:17
室友在今天再次经历了字节跳动的面试,面试我全程助攻,对于面试过程以及面试官的态度和问题也都有听到,当面试官再次问道tcp的握手过程时,我不禁感叹这个东西我要是不会是真不行啊!所以背着室友在这里总结他的面试经历。 面试官是由TCP和UDP区别开始问起的, 然后问到TCP的三次握手过程: 这里首先讲解什么是三次握手? 三次握手就是在客户端和服务端进行TCP连接时需要发送三个包,目的是确定客户端和服务端的发送能力和接收能力都没有问题、实质上其实就是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号,交换 TCP窗口大小 信息。 三次握手的过程: 第一次握手:客户端向服务端发送SYN报文段,并指明客户端的初始化序列号 ISN。 第二次握手:服务端收到客户端发送的SYN报文段,向客户端发送SYN报文,同时确定自己的ISN初始化序列号。 第三次握手:客户端向服务端发送ACK报文来建立TCP连接。 握手为什么要三次,两次行不行? 三次握手主要是为了确定客户端以及服务端的接收能力和发送能力都没问题 第一次握手:客户端发送报文,服务端接收报文,确认了客户端的发送能力以及服务端的接收能力都没问题; 第二次握手:服务端发送报文,客户端接收报文,客户端确认了自己的发送能力和接收能力和服务端的接收能力以及发送能力没问题,但是服务端没法确认客户端的接收能力是否正常。 第三次握手

oracle中如何创建表的自增ID(通过序列)

别来无恙 提交于 2019-12-06 04:31:14
1、什么是序列呢? 序列是一数据库对象,利用它可生成唯一的整数。一般使用序列自动地生成主码值。一个序列的值是由特别的Oracle程序自动生成,因而序列避免了在运用层实现序列而引起的性能瓶颈。 Oracle序列允许同时生成多个序列号,而每一个序列号是唯一的。 当一个序列号生成时,序列是递增,独立于事务的提交或回滚。容许设计缺省序列,不需指定任何子句。该序列为上升序列 ,由1开始,增量为1,没有上限。 2、创建/修改序列的语法 --创建序列的语法 -- create sequence [user.]sequence_name [increment by n] [start with n] [maxvalue n | nomaxvalue] [minvalue n | nominvalue]; --修改序列的语法-- alter sequence [user.]sequence_name [increment by n] [maxvalue n | nomaxvalue] [minvalue n | nominvalue];    3、序列参数说明 INCREMENT BY: 指定序列号之间的间隔,该值可为正的或负的整数,但不可为0。序列为升序。忽略该子句时,缺省值为1。 START WITH:指定生成的第一个序列号。在升序时,序列可从比最小值大的值开始,缺省值为序列的最小值。对于降序

四次挥手

自古美人都是妖i 提交于 2019-12-06 00:55:59
1)客户端进程发出连接释放报文,并且停止发送数据。释放数据报文首部,FIN=1,其序列号为seq=u(等于前面已经传送过来的数据的最后一个字节的序号加1),此时,客户端进入FIN-WAIT-1(终止等待1)状态。 TCP规定,FIN报文段即使不携带数据,也要消耗一个序号。 2)服务器收到连接释放报文,发出确认报文,ACK=1,ack=u+1,并且带上自己的序列号seq=v,此时,服务端就进入了CLOSE-WAIT(关闭等待)状态。TCP服务器通知高层的应用进程,客户端向服务器的方向就释放了,这时候处于半关闭状态,即客户端已经没有数据要发送了,但是服务器若发送数据,客户端依然要接受。这个状态还要持续一段时间,也就是整个CLOSE-WAIT状态持续的时间。 3)客户端收到服务器的确认请求后,此时,客户端就进入FIN-WAIT-2(终止等待2)状态,等待服务器发送连接释放报文(在这之前还需要接受服务器发送的最后的数据)。 4)服务器将最后的数据发送完毕后,就向客户端发送连接释放报文,FIN=1,ack=u+1,由于在半关闭状态,服务器很可能又发送了一些数据,假定此时的序列号为seq=w,此时,服务器就进入了LAST-ACK(最后确认)状态,等待客户端的确认。 5)客户端收到服务器的连接释放报文后,必须发出确认,ACK=1,ack=w+1,而自己的序列号是seq=u+1,此时

网络协议抓包分析

江枫思渺然 提交于 2019-12-05 21:03:47
一、网络配置 由于本次作业须使用自己的学号作为IP地址,要修改IP地址的主机位为我的学号38,因此进入更改适配器选项——网卡属性——双击Internet协议版本4(TCP/IPv4)——修改IP地址为172.24.58.38,子网掩码为255.255.224.0,默认网关为172.24.48.1,DNS首选服务器为10.1.1.3,备用服务器为10.1.1.2。并在命令提示符中输入ipconfig命令查看配置信息是否正确。 对IP地址的修改首先要注意网关的地址要与修改前的一致,且修改后的IP地址与网关必须处于同一网段内,通过IP地址与子网掩码的与运算可判断本机IP与网关是否在同一网段内。 网络地址规划表: 源IP地址 目的IP地址 域名 172.24.58.38 183.232.231.174 www.baidu.com 172.24.58.38 183.232.231.172 www.baidu.com 最后进入命令提示符输入ping www.baidu.com ,发现可以连通互联网。 二、应用层分析 2.1 对于www(HTTP)协议分析 尽量关闭系统的后台软件,减少网络流量,再打开wireshark软件,打开浏览器进入 www.baidu.com 网址,可看到wireshark软件成功抓到数据包。 网络的第1帧,当打开浏览器进入网址时

应用Wireshark观察基本网络协议

好久不见. 提交于 2019-12-05 20:12:07
TCP:   TCP/IP通过三次握手建立一个连接。这一过程中的三种报文是:SYN,SYN/ACK,ACK。   第一步是找到PC发送到网络服务器的第一个SYN报文,这标识了TCP三次握手的开始。 如果你找不到第一个SYN报文,选择 Edit -> Find Packet 菜单选项。选择Display Filter,输入过滤条件:tcp.flags,这时会看到一个flag列表用于选择。选择合适的flag,tcp.flags.syn并且加上==1。点击Find,之后trace中的第一个SYN报文就会高亮出来了。   注意:Find Packet也可以用于搜索十六进制字符,比如恶意软件信号,或搜索字符串,比如抓包文件中的协议命令。 一个快速过滤TCP报文流的方式是在 Packet List Panel 中右键报文,并且选择 Follow TCP Stream 。这就创建了一个只显示TCP会话报文的自动过滤条件。   这一步骤会弹出一个会话显示窗口,默认情况下包含TCP会话的ASCII代码,客户端报文用红色表示服务器报文则为蓝色。   窗口类似下图所示,对于读取协议有效载荷非常有帮助,比如HTTP,SMTP,FTP。   更改为十六进制Dump模式查看载荷的十六进制代码,如下图所示: 关闭弹出窗口,Wireshark就只显示所选TCP报文流。现在可以轻松分辨出3次握手信号。 注意

Paxos协议理解

与世无争的帅哥 提交于 2019-12-05 19:48:38
第三次报告: 理解Paxos协议 一、 Paxos协议背景 什么是Paxos协议? 一般地,从客户端和服务器的角度,任何一个分布式系统都可以理解成由一个服务器集合和一个客户端集合组成,一个或多个客户端向一个或多个服务器发送命令,服务器接收到命令后,执行相应操作以提供服务。可以将每个服务器建模成一个 决定状态机 (DSM:对任意输入只有唯一状态转移路径的状态机)。它具有自身的状态,在接收到客户端的命令后,作出相应的响应,进而状态发生转移。 现在考虑一个简单的存储数据A的服务。最简单的情况下,该服务对应的服务器集合只有一个元素,也就是说只有一个服务器负责处理来自客户端的对数据A的写入。这个服务器对应的状态机的状态可以定义为: 数据A的值 。当客户端的命令到来时,服务器状态机做出响应,并导致状态转移。即使有多个客户端发送命令,因为只有单个服务器且输入是离散的,因此只需要这个服务器决定执行哪个命令。 然而,当单个服务器出现故障甚至宕机,那么这个服务就会无法使用。为避免这种情况,负责数据A存储服务的服务器集合应该包含多个服务器,这样即使其中某(几)个服务器发生故障,其它服务器应当也能提供服务。这种当系统部分出错仍能提供服务的概念被称为错误容忍(Fault tolerant)。 现在,服务器集合中的每个服务器都要维护自己的状态机。每个状态机的状态都是自己那份数据A的值。显然,由于状态机是决定的