http kernel