Linux Kernal version numbering

Please clarify on below two which one is the latest Kernal version.

Also clarify me , how to break and understand, which part meant for what?

kernel-2.6.18-348.6.1.el5.i686.rpm
kernel-2.6.18-308.11.1.el5.i686.rpm

Thanks

The kernel is just source code. The kernel version here is 2.6.18. To boot and load a kernel you must first build it of course, and you can choose many options when you do so; not all 2.6.18 kernels will be identical! Distributions can also patch the source before building, putting in their own custom modifications for bugfixes or specific features they need or what have you.

So, 348.6.1.el5.i686 refers to a specific configuration, architecture(i686), and patching of 2.6.18. Its exact meaning is up to whoever released it, presumably your distribution. What's your distribution?

LSB Version:      :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch       Distributor ID: RedHatEnterpriseServer       Description:    Red Hat Enterprise Linux Server release   5.9 (Tikanga)       Release:        5.9       Codename:       Tikanga

This is the lastest build

kernel-2.6.18-348.6.1.el5.i686.rpm

2.6.18 is the kernel version number as decided by Torvalds. 18-348.6.1 is the kernel packager's (Red hat in this case) build number. It can be anything the packager decides.