<%@ page import="java.security.Security" %> <%@ page import="java.net.InetAddress" %> <%@ page import="java.util.Date" %> InetAddress Information & Test

InetAddress Information & Test

This JSP is provided as a part of the following TechNote:

"Understanding, Tuning, and Testing the InetAddress Class and Cache"
http://www.IBM.com/support/docview.wss?uid=swg21207534

Information:

<% // print to page out.println("Security Property: networkaddress.cache.ttl = " + Security.getProperty("networkaddress.cache.ttl") + "; default: null" + "
"); out.println("Security Property: networkaddress.cache.negative.ttl = " + Security.getProperty("networkaddress.cache.negative.ttl") + "; default: 10" + "
"); out.println(" System Property: sun.net.inetaddr.ttl = " + System.getProperty("sun.net.inetaddr.ttl") + "; default: null" + "
"); out.println(" System Property: sun.net.inetaddr.negative.ttl = " + System.getProperty("sun.net.inetaddr.negative.ttl") + "; default: null" + "
"); out.println(" System Property: com.ibm.cacheLocalHost = " + System.getProperty("com.ibm.cacheLocalHost") + "; default: null" + "
"); out.println(" System Property: java.net.preferIPv4Stack = " + System.getProperty("java.net.preferIPv4Stack") + "; default: null" + "
"); out.println("
"); if (System.getSecurityManager() == null){ out.println(" Java 2 Security: Disabled
"); }else{ out.println(" Java 2 Security: Enabled
"); } out.println(" InfoTest Mode: JSP
"); %>

Test:

Iterations:
Interval (milliseconds):
Hostname to resolve (ibm.com):
<% if ((request.getParameter("iterations")!= null) || (request.getParameter("interval")!= null) || (request.getParameter("hostname")!= null)){ //print to log System.out.println("===/ InetAddress Cache Test /==="); System.out.println("Security Property: networkaddress.cache.ttl = " + Security.getProperty("networkaddress.cache.ttl")); System.out.println("Security Property: networkaddress.cache.negative.ttl = " + Security.getProperty("networkaddress.cache.negative.ttl")); System.out.println(" System Property: sun.net.inetaddr.ttl = " + System.getProperty("sun.net.inetaddr.ttl")); System.out.println(" System Property: sun.net.inetaddr.negative.ttl = " + System.getProperty("sun.net.inetaddr.negative.ttl")); if (System.getSecurityManager() == null){ System.out.println(" Java 2 Security: Disabled"); }else{ System.out.println(" Java 2 Security: Enabled"); } System.out.println(" InfoTest Mode: Application"); //print to page out.println("

Test Results:


"); //variables int loopTimes = Integer.parseInt(request.getParameter("iterations")); int interval = Integer.parseInt(request.getParameter("interval")); String nameToResolve = request.getParameter("hostname"); //print to page out.println("Iterations " + loopTimes + "
"); out.println("Interval " + interval + "
"); out.println("Hostname to resolve " + nameToResolve + "
"); //print to log System.out.println("Iterations " + loopTimes); System.out.println("Interval " + interval); System.out.println("Hostname to resolve " + nameToResolve); try{ //loop for user specified number of times. for (int j = 0; j < loopTimes; j++){ //print startup information: date, nameToResolve out.println("

"); out.println("Iteration " + j + " // " + new java.util.Date() + "
"); System.out.println("Iteration " + j + " // " + new java.util.Date()); //attempt name resolution and print results to page and log InetAddress[] results = InetAddress.getAllByName(nameToResolve); for (int i=0; i < results.length; i++){ String temp = results[i].getHostAddress(); out.println(temp + "
"); System.out.println(temp); } //wait user specified amount of time before proceeding out.println("Pause for " + interval + " milliseconds..." + "
"); System.out.println("Pause for " + interval + " milliseconds..."); Thread.sleep(interval); out.println("Pause complete." + "
"); System.out.println("Pause complete."); } out.println("Test Complete."); System.out.println("===/ InetAddress Cache Test Complete /==="); } catch (Exception e) { out.println(e); System.out.println(e); } } %>