数据包tds通讯结构Word下载.docx
- 文档编号:21484094
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:19
- 大小:39.37KB
数据包tds通讯结构Word下载.docx
《数据包tds通讯结构Word下载.docx》由会员分享,可在线阅读,更多相关《数据包tds通讯结构Word下载.docx(19页珍藏版)》请在冰豆网上搜索。
|----------|----------|---------|----------|-------+-----------|
|数据包|数据包|包的||||
|的类型|的|大小|信号数|包数|窗口|
||标志位||||状态|
+----------+----------+---------+----------|-------|-----------|
结构为:
0字节为包的类型:
其中:
0x01TDS4.2或7.0查询包
0x02TDS4.2或5.0请求包
0x04服务器的回应包
0x06取消
0x0FTDS5.0查询包
0x10TDS7.0请求包
(可能是bitwise加旗的)
1字节为包的状态:
0x00还有包后续包
....0...=(没有事件通知)
.....0..=(没有参与请求)
......0.=(没有参与确认)
.......0=(没有后续缓冲器)
0x01最后一个包
2字节为TDS包长
4字节为信道数
6字节包的数目
7字节窗口状态
0为不使用
1为使用
-------->
登录
根据通用包头的结构我们可以了解到个任意包的类型是什么,但不管是什么包(查询包,请求包,还是响应包),一般情况下它一次最多只能传送512各字节,因此任何包它都要小于等于512个字节,也就是说如果发送包大于512个字节计算机在数据传输的时候就要把他分成几个部分,下面是一个请求包(tds5.0)他分成了两个包(共597个字节):
第一个包:
字节结构类型字段意义说明
8dbcharhost_name[30];
主机名
38dbtinyinthost_name_length;
主机名长度
39dbcharuser_name[30];
用户名
69dbtinyintuser_name_length;
用户名长度
70dbchar口令[30];
用户密码
100dbtinyintpassword_length;
用户密码长度
101dbcharhost_process[30];
主机所处进程
131dbtinyinthost_process_length;
主机所处进程的长度
132dbchar2字节int客户订购=3(2byteintISB在IO字节)
1334字节int客户订购=1(4byteintISB在IO字节)
134字符格式(字符格式=6(ASCII特性))
1358字节漂流物格式=10(8byteIEEE漂流物有LSB在瞧!
字节)
1368字节日期格式=9(8bytedatetimeLSM在瞧!
137dbtinyintuse_database是否用数据库(=1)
138dbtinyintbulk_copy复制大小
145139dbchar接口备用接口
140dbchardialog_type对话类型
141dbcharbuffer_size缓冲器大小(缓冲器大小=)
魔法[3]
148dbcharapp_name[30];
应用名
178dbtinyintapp_name_length;
应用名长度
179dbcharserver_name[30];
SQL服务器名
209dbtinyintserver_name_length;
服务器名长度
210dbcharmagic3;
还没有结果
211dbtinyintpassword2_length;
服务器密码长度
212dbcharpassword2[30];
服务器密码
242dbcharmagic4[223];
还没有结果
465dbtinyintpassword2_length_plus2;
加密长度
466dbsmallintmajor_version;
tds最高版本号
468dbsmallintminor_version;
tds最低版本号
470dbcharlibrary_name[10];
ct-库或分贝分贝-库
480dbtinyintlibrary_length;
481dbsmallintmajor_version2;
应用程序最高版本号
483dbsmallintminor_version2;
应用程序最低版本号
485dbchar短日期型转换(转换简略datetime=0)
4864字节漂流物格式=13(4字节IEEE漂流物有LSB在瞧!
4874字节日期格式=17(4字节datetimeLSM在瞧!
488dbchar语言[30];
使用语言
第二个包:
518dbtinyintlanguage_length客户机本地使用语言的长度
519dbcharlanguage_changes语言的改变(通知语言改变=0)
520dbsmallintold_secure;
/*explaination?
*/
522dbtinyint加密;
522通过安全请求x0
....0...=(保证登录不请求定义)
.....0..=(没有用安全标签不要使用安全标签)
......0.=(没有挑战性请求不挑战登录)
.......0=(没有加密请求不加密登录)
523dbtinyintbulk_security大量安全大小复制安全小块=0
524dbcharsec_spare[9]//exlaination?
533dbcharchar_set[30]字符集名字=iso_1
563dbtinyintchar_set_length字符集名字长度=5
564dbtinyint通知字符设置改变=1
565dbcharblock_size[6]包的大小小包裹大小=512
571dbtinyintblock_size_length包大小的长度
572未知的字节/*是00000000*/
576dbtinyinttoken_typeTDS表示类型
577dbtinyinttoken_length表示类型的长度
578能力类型=1(请求能力)
579没有.能力咬的=7
580能力字节1=03
581capybility字节2=6d
.1......=支持tokenized文本和图象
..1.....=支持tokenized大小复制
....1...=支持敏感安全数据类型
.....1..=支持敏感安全数据类型
......1.=支持边界安全数据类型
.......1=之前悬而未决"
创造proc"
到动态准备声明
582capybility字节3=7F
.1......=支持接来首先行指针cornmands
..1.....=支持接来最后的行指针命令
..1....=支持接来完全的行指针命令
....1...支持接来亲戚行指针命令
.....1..=支持multi_rowfetchcursor命令
......1.=支持expelited注意
.......1=支持非-加速注意
583capybility字节4=FF
1.......=支持文本数据类型
.1......=支持图象数据类型
..1.....=支持十进的数据类型
...1....=支持长的varchar数据类型
....1...=支持长的变量长度二进位的数据类型
.....1..=支持无效力的整数
......1.=支持无效力的日期/时间
.......1=支持无效力的货币
584capybility字节5=FF
1.......=支持变量长度二进位的数据类型
.1......=支持8字节货币数据类型
..1.....=支持4字节moneydata类型
...1....=支持8字节日期/时间数据类型
....1...=支持4字节日期/时间数据类型
.....1..=支持4字节漂浮的点数据类型
......1.=支持8字节漂浮的点数据类型
.......1=支持数字的数据类型
585capybility字节6=FF
1.......=RPC请求使用TDS_DBRPC
.1......=支持1字节整数
..1.....=支持1字节整数
...1....=支持1字节整数
....1...=支持小块数据类型
.....1..=支持固定的长度特性数据类型
......1.=支持varchar数据类型
.......1=支持固定的长度二进位的数据类型
586能力字节7=铁
1.......=语言请求
.1......=RPC请求
..1.....=已注册的程序事件通知
...1....=支持多样的命令每请求
....1...=大小复制请求
.....1..=指针命令请求
......1.=动态sql请求
587能力类型=2(回答能力)
588没有.能力字节的=7
589能力字节7=00
590能力字节6=00
591能力字节5=00
592能力字节4=68
593能力字节3=0A
594能力字节2=00
595能力字节1=00
596
TDS-----(Reponse
0x21(语言请求)
1字节4byte字符[n]
+--------+------+------------------+
|表示|长度|数据(对作用)|
例如:
TDS表示类型=0x21(语言请求)
表示bypes保持=25(4字节)
消息=滴下桌子longquerytest
0x79(返回状态信息)
4字节
+------+----------+
|表示|返回状态|
TDS表示类型=0x79
回来状态价值=0
0x81(删除行穿过指针)
int8int164bypesint8int8字符[n]
+---------+---------+--------+----------+----------+-------+
|表示|长度|游标号|游标状态|表名长度|表名|
TDS表示类型=0x81(删除行穿过指针)
表示字节保持=4
指针Id=0
指针状态=52(未知的指针状态)
桌子名字长度=0
桌子名字=组
行数据
0xA7(计算"
控制"
)
1字节2byte2byte
+------+------+-------+
|表示|长度|?
?
|
TDS表示类型=0xAE
表示字节保持=2
Unknow通常是0000
0xAA(错误消息)
int8int164typesint8int8
+------+------+--------------+-----+-----+
|表示|长度|服务器消息数目|状态|级别|
int8字符[n]int8int8字符[n]int16
+----------+--------+-------------+---------+----------+-------+
|消息长度|消息长度|服务器名长度|服务器名|程序名长度|线#|
TDS表示类型=0xAA(错误消息)
表示字节保持=104
SQL服务器信息数=5105
通知情形=2
通知班级=16
消息长度=43
[43字节(s)文本的]
服务器名字长度=3
服务器名字=Z
程序名字长度=0
线#在一炉或proc=67
[121字节(s)行数据的]
0xAB(通知消息)
+----------+--------+-------------+---------+-----------+-------+
TDS表示类型=0xAA(通知消息)
表示字节保持=88
SQL服务器信息数=22001
通知情形=0
通知班级=1
消息长度=38
消息=RegQueryvalueEx()
服务器名字长度=222
程序名字长度=86
线#在一炉或proc=38169
[61字节(s)行数据的]
0xAC(输出参数)
int16int8字符[n]5字节int8
+------+------+-----+---------+---------+-----------------+------+
||包长|列长|列名|?
?
|返回的数据类型|....|
这最后的信息取决于数据类型:
1.如果为固定的类型(大小为n)则:
n字节
+---------+
|数据|
int8int8n字节
+-------------+---------------+--------+
2.否则为:
|列的大小|实际大小|数据|
0xAD(登陆请求)
+-------+------+------+-----------+------------+-------------+-------------|
|表示|长度|状态|TDS版本号|应用程序长度|应用程序名字|应用程序版本号|
TDS表示类型=0xAD
Tokeng字节保持=20
登录状态=5(登陆请求完全成功)
TDS版本=50000
程序名字长度=10
程序名字服务器=sql服务器
服务器程序版本=1001
0xAE(用户控制列)
0xD1(行(s)数据的)
int8变量大小
+----------+--------------------+
|表示|数据行|
数据行:
|数据行数|列名|长度|数据|
+----------+------+------+------+
TDS表示类型=0xD1(行(s)数据的)
行#列名字长度数据
1dbname5放2
1用户名称5客人
0xD3(数据-计算结果)
0xD7
0xE2(交换能力)
TDStokeng类型=0xE2(Exchangcapabiligies)
Toden字节保持=18
能力类型=1(请求能力)
的没有caability字节=7
能力字节7=E6
1.......=语言请求
.1......=RPC请求
..1.....=注册程序事件通告
.....1..=指针命令请求
......1.=动态SQL数据库请求
capybility字节6=FF
1.......=RPC请求使用TDS_DBRPC
.1......=支持1字节长的整型
..1.....=支持2字节长的整型
...1....=支持4字节长的整型
....1...=支持为位数据型
.....1..=支持固定长度字符型数据类型
......1.=支持字符型数据类型
.......1=支持固定长度整型数据类型
capybility字节5=FF
1.......=支持变量长度二进位的数据类型
.1......=支持8字节货币数据类型
..1.....=支持4字节moneydata类型
...1....=支持8字节日期/时间数据类型
....1...=支持4字节日期/时间数据类型
.....1..=支持4字节漂浮的点数据类型
......1.=支持8字节漂浮的点数据类型
.......1=支持数字的数据类型
capybility字节4=CF
1.......=支持文本数据类型
.1......=支持图象数据类型
....1...=支持长的变量长度二进位的数据类型
.....1..=支持无效力的整数
......1.=支持无效力的日期/时间
.......1=支持无效力的货币
capybility字节3=41
.1......=支持接来首先行指针cornmands
.......1=支持非-加速
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据包 tds 通讯 结构
![提示](https://static.bdocx.com/images/bang_tan.gif)