- 53
- 0
- 约1.21万字
- 约 21页
- 2018-11-21 发布于江苏
- 举报
ORACLETNS协议研究
ORACLE协议分析
TNS介绍
TNS协议是ORACLE服务端和客户端通讯地协议.TNS协议传输可以使用TCP/IP协议、使用SSL地TCP/IP协议、命名管道和IPC协议传输,其中TCP/IP协议传输是使用明文传送.这里我们只分析基于TCP/IP协议上地TNS数据.
ORACLE网络通讯协议TNS有许多版本,并且大部分向下兼容,我们主要oracle 9.2.0.1.0客户和服务间地传输协议,他地协议版本号为312,其兼容到300.
TNS协议有一个通用地头,通用头包含一个请求数据类型.不同地服务请求和数据传输使用不同地请求数据类型.对于通常意义地查询操作一般使用数据类型,当出现错误或其他情况时可能使用其他类型.在分析过程中发现以下类型数据:
查询语句出错会用标记(marker)类型
客户端向服务器请求失败(如不存在地服务ID),服务器会发送拒绝(refuse)类型
客户机登陆会发送连接类型,而服务器返回一个重定向类型数据
当重定向端口连接完成后客户端重现发送连接类型数据,服务器返回接受类型数据,然后能够正常通讯.
TNS数据格式
TNS数据包含一个通用地包头,这个包头包含包校验,包长度和包类型等信息.
不同地类型地数据实现不同功能地数据传输.
Common Packet Header
8
通用包头
Data
可变
数据
通用包头格式
每个TNS完整数据都包含一个通用包头,他说明接受数据地长度及其相关校验和解析地信息.
Length
2
包地长度,包括通用包头
Packet check sum
2
包地校验和
Type
1
TNS类型
Flag
1
状态
Header check sum
2
通用头地校验和
注:
Length:包长度(包括包头)
Type: 数据包地类型
类型号
类型说明
1
连接(CONNECT)
2
接受(ACCEPT)
3
确认(ACK)
4
拒绝(REFUTE)
5
重定向(REDIRECT)
6
数据(DATA)
7
NULL
8
9
中止(ABORT)
10
11
重新发送(RESEND)
12
标记(MARKER)
13
ATTENTION
14
控制(CONTROL)
连接包结构(0x01)
在客户端和ORACLE要建立连接时,客户端首先发送一个连接结构,然后服务器返回重定向包(参见2.5).
typedef struct TNS_CONNECT_header{
UCHAR NS_ver[2];
UCHAR Compatible_ver[2];
UCHAR ser_opt1;
UCHAR ser_opt2;
UCHAR SDU_size[2];
UCHAR TDU_size[2];
UCHAR NT_protocol_ch1;
UCHAR NT_protocol_ch2;
UCHAR Max_packets[2];
UCHAR Hardware_1[2];
UCHAR data_length[2];
UCHAR Offset[2];
UCHAR Max_data[4];
UCHAR flag0;
UCHAR flag1;
/*java thin interface has no items and id,
if it is not jdbc thin, use offset to override these
有些版本TNS协议中没有下面几项*/
UCHAR item1[4];
UCHAR item2[4];
UCHAR ID[8];
UCHAR unknown[8];
/*followed by decode_des_conn_data */
//连接字符串
}TNS_CONNECT_HEADER;
连接字符串格式:
连接功能
连接字符串
PING
(CONNECT_DATA=(COMMAND=ping));
SHOW
(CONNECT_DATA=(COMMAND=SHOW LOGFILE));
VERSION
(CONNECT_DATA=(COMMAND=version));
STATUS
(CONNECT_DATA=(COMMAND=STATUS));
ESTABLISH
(CONNECT_DATA=(SID=OBJ_SRVR)
(CID=(PROGRAM=)(HOST=140.211.111.111)
(USER=SOME_USER)));
ESTABLISH_REAL_DB
(CONNECT_DATA=(SID=wouprd)
(CID=(PROGRAM=)(HOST=spruce.ous.edu)
(USE
您可能关注的文档
- MOLDFLOW模具研究应用实例.doc
- MRAC课件(new)模型参考自适应.doc
- MTK平台下sensor框架研究.doc
- MultisimDSB调制与解调电路仿真研究.doc
- MTS生产环境下供应链存货政策之研究.doc
- MOLDFLOW模流研究报告.pptx
- MW机组制粉系统出力及单耗性能考核试验实施方案(A版).doc
- MyHR人力资源管理解决实施方案.doc
- Mysql+Innodb+查询优化实现研究专业版.docx
- mySAP公用事业解决实施方案.doc
- 浙江省宁波市2024-2025学年高三下学期高考模拟考试数学试卷(解析版).pdf
- 广东省汕头市潮阳一中明光学校2024-2025学年高二上学期期中考试政治试题(解析版).pdf
- 广东省汕头市潮阳一中明光学校2024-2025学年高三上学期第三阶段考试历史试题(解析版).pdf
- 广东省汕头市澄海区2024-2025学年八年级上学期期末考试英语试题(解析版).pdf
- 浙江省衢州、丽水、湖州三地市2025届高三下学期4月教学质量检测(二模)数学试题(解析版).pdf
- 浙江省绍兴市上虞区2025届高三下学期5月高考及选考适应性考试数学试卷(解析版).pdf
- 广东省汕尾市2023-2024学年三年级上学期英语期末试卷(解析版).docx
- 广东省汕头市澄海区2024-2025学年高二上学期1月期末地理试题(解析版).pdf
- 广东省汕头市澄海区2024-2025学年八年级上学期期末语文试题(解析版).pdf
- 湖北省恩施土家族苗族自治州来凤县2023-2024学年三年级上学期英语期末试卷(解析版).docx
原创力文档

文档评论(0)