|
The
SSL Secured Web Server
Project objective
- Start with the Web server created in Project 1, which required the
following:
- Implement a TCPServer by building a multi-threaded Web server,
so that a browser-client can access an HTML file
- Serve the browser through a non-standard port; i.e., some port
number other than the standard port 80 (assignment specifies port
6789)
- Implement the Web server using HTTP 1.0
- Test various program execution times by changing the buffer size
(via console input) and calling various HTML file sizes, all through
the secured Web server
Process
- On my local PC, the source code file was compiled via the command
javac filename.java
- Using the run command java filename, the server sent an acknowledgement
Server alive on 68.100.196.247, which is the IP address of
my local PC
- When IE was launched, a command line prompt asks the user to enter
a buffer size
- After typing in https://68.100.196.247:6789/filename.html, the server's
public key certificate was displayed in the browser window. Since the
server certificate was self-signed, the user is asked to either accept
or decline the certificate
- Upon acceptance of the self-signed certificate, the requested page
was displayed in the browser; the length of time (in milliseconds) for
file transfer was displayed on the server console screen
Results
- The delay increases significantly in SSL vs. unsecured Web server
- A graphical representation of the delays is given in the figure below
Conclusion
- The SSL handshake in this simple implementation has adversely affected
server performance by adding on to the transfer time set by TCP flow-control.
Even though the flow-control service in TCP is matching the speed at
which the sender is sending to the rate at which the receiving application
is reading, the multiple steps in the SSL handshake make delays more
than twice as long as with an unsecured server.
- Caveat: Sending and receiving were executed
on a local machine. A networked server running on an institutional LAN
would probably show even more dramatic differences in delay at various
buffer sizes.
|
|
|