16.01.2014 Views

Diploma Thesis Santiago Gómez Sáez - IAAS

Diploma Thesis Santiago Gómez Sáez - IAAS

Diploma Thesis Santiago Gómez Sáez - IAAS

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2.9. Structured Query Language Databases<br />

Connect<br />

Initial Hanshake packet<br />

Connection<br />

Phase<br />

Handshake response packet<br />

username, db name, hashed password<br />

OK packet || Error packet<br />

Authentication<br />

Phase<br />

Command type<br />

Figure 1.1.: Motivating Scenario.<br />

Command data<br />

OK packet || Command response packet<br />

Command response data<br />

Command<br />

Phase<br />

Disconnect<br />

OK packet || Error packet<br />

Disconnection<br />

Phase<br />

Figure 2.6.: MySQL communication protocol in the four communication phases [Ora13]<br />

During the connection phase, the client connects via Transmission Control Protocol (TCP) to<br />

the port where the main MySQL server thread listens on (commonly used port 3306). In the<br />

connection and authentication phases, the MySQL server sends to the client an initial handshake<br />

packet, containing information about the server, server flags, and a password challenge.<br />

The client responds with his access credentials and communication configuration flags. When<br />

the authentication succeeds, the command phase is initiated. This phase is actually where the<br />

operations on the database or on the server take place, e.g. server configuration, querying,<br />

statements execution, etc. The connection between the client and the server must be always<br />

ended in the client side, except for internal errors in the server where the communication is<br />

interrupt and lost.<br />

In this diploma thesis we extend a Java implementation of the MySQL protocol, which is<br />

described in more detail in Chapter 3, and adapt it for its integration and communication in<br />

ServiceMix-mt.<br />

21

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!