Prefetch Technologies // Keeping your cache lines cozy

Archive

Posts from 2005

Apache mod_log_forensic

webNov 25, 2005 1 min read

While looking around the Apache module directory yesterday I came across the mod_log_forensic module. This module will log the request headers from each connection, which can be useful for investigating problematic connections and security incidents. To enable mod_log_forensic during the Apache configuration process, the "--enable-log_forensic=shared" option can be passed as an argument to the configure script: To enable mod_log_forensic, the ForensicLog command needs to be added to indicate the location to log the request headers: Once the forensic module is setup, each request to the server will generate a log entry similar to the following: The funny looking string of characters (the forensic id) is written before and after each request, and the headers are printed between the identifiers. This is nifty stuff!

$ read more →

Measuring approximate CPU speeds with openssl

securityNov 23, 2005 3 min

I use a variety of hardware in my day-to-day activities, and was curious to see how they compared to each other. While I could run a micro benchmarking tool to get detailed information on memory, cpu, network and disk throughput, I thought it would be easier to use openssl's 'speed' option to get a rough approximation of each machines capabilities. The results are listed below: Ultra 10 with (1) 440 MHZ UltraSPARC IIi CPU: Fujitsu 250 with (1) 900 MHZ UltraSPARC64V CPU: Powerbook G4 with (1) 1.5 GHZ G4: IBM HS20 Blade with (1) 3.0 GHZ Intel Xeon CPU w/ Hyperthreading:

$ read more →

Adding DTrace probes to Apache

webdtraceNov 20, 2005 4 min

In an attempt to learn how DTrace probes and Apache work, I called up my friend Clay last week, and we sat down to integrate some probes into Apache. After looking through the Apache source code and analyzing the available documentation on statically defined probes, we determined that adding probes would be simple, but getting apache to build would be a bit tedious (luckily Clay is an autoconf/libtool expert!!). After mucking with the build process for a few hours, Clay was able to tweak the APR (Apache Portable Runtime) Makefile.in, and we were able to integrate numerous DTrace probes into Apache. The first probe we added was in the apr_palloc() routine: This probe would be helpful for figuring out which pools were accessed, and for determing the number of bytes allocated to each pool: We can also use this probe to understand how frequently apr_palloc() gets called: After toying with the memory management layer (the really interesting stuff comes from the Apache allocator() routines -- but that is a BLOG entry in and of itself), we decided to add a probe to display incoming connections: Result: %d IP Address: %x SRC Port %d ",pid, (int)copyin(arg0,4), (int)copyin(arg1,4), (short int)copyin(arg2,4)); }'` This probe will display the httpd process id that accept()'ed the connection along with the SRC port ad IP address of the client…

$ read more →

Concert review U2

musicNov 20, 2005 1 min

It seems like yesterday that I purchased War on casette tape to listen to Sunday Bloody Sunday. War was a great album, Sunday Bloody Sunday was an awesome tune, and I eventually wore out the casette tape! Well -- all of my War listening momenets came back to me Friday night when I saw U2 live, and I must say they were awesome! U2 opened up with the City of blinding lights, and proceeded to play the following setlist: City Of Blinding Lights Vertigo / Rockaway Beach (snippet) / Rock 'N' Roll Nigger (snippet) Elevation Beautiful Day / Sgt…

$ read more →

Debugging libtool

webNov 20, 2005 1 min

While debugging Apache this week, I wanted to get verbose output from libtool. After digging around on the web, I found that setting LTFLAGS to "--debug" will cause libtool to display numerous useful pieces of information: If you are trying to figure out how things are built with libtool, this will definitely helpful!

$ read more →