^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) .. SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) Intel(R) Active Management Technology (Intel AMT)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) =================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) Prominent usage of the Intel ME Interface is to communicate with Intel(R)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) Active Management Technology (Intel AMT) implemented in firmware running on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) the Intel ME.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) Intel AMT provides the ability to manage a host remotely out-of-band (OOB)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) even when the operating system running on the host processor has crashed or
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) is in a sleep state.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) Some examples of Intel AMT usage are:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) - Monitoring hardware state and platform components
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) - Remote power off/on (useful for green computing or overnight IT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) maintenance)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) - OS updates
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) - Storage of useful platform information such as software assets
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) - Built-in hardware KVM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) - Selective network isolation of Ethernet and IP protocol flows based
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) on policies set by a remote management console
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) - IDE device redirection from remote management console
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) Intel AMT (OOB) communication is based on SOAP (deprecated
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) starting with Release 6.0) over HTTP/S or WS-Management protocol over
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) HTTP/S that are received from a remote management console application.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) For more information about Intel AMT:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) https://software.intel.com/sites/manageability/AMT_Implementation_and_Reference_Guide/default.htm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) Intel AMT Applications
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) ----------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) 1) Intel Local Management Service (Intel LMS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) Applications running locally on the platform communicate with Intel AMT Release
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) 2.0 and later releases in the same way that network applications do via SOAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) over HTTP (deprecated starting with Release 6.0) or with WS-Management over
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) SOAP over HTTP. This means that some Intel AMT features can be accessed from a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) local application using the same network interface as a remote application
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) communicating with Intel AMT over the network.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) When a local application sends a message addressed to the local Intel AMT host
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) name, the Intel LMS, which listens for traffic directed to the host name,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) intercepts the message and routes it to the Intel MEI.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) For more information:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) https://software.intel.com/sites/manageability/AMT_Implementation_and_Reference_Guide/default.htm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) Under "About Intel AMT" => "Local Access"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) For downloading Intel LMS:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) https://github.com/intel/lms
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) The Intel LMS opens a connection using the Intel MEI driver to the Intel LMS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) firmware feature using a defined GUID and then communicates with the feature
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) using a protocol called Intel AMT Port Forwarding Protocol (Intel APF protocol).
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) The protocol is used to maintain multiple sessions with Intel AMT from a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) single application.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) See the protocol specification in the Intel AMT Software Development Kit (SDK)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62) https://software.intel.com/sites/manageability/AMT_Implementation_and_Reference_Guide/default.htm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) Under "SDK Resources" => "Intel(R) vPro(TM) Gateway (MPS)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) => "Information for Intel(R) vPro(TM) Gateway Developers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) => "Description of the Intel AMT Port Forwarding (APF) Protocol"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) 2) Intel AMT Remote configuration using a Local Agent
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) A Local Agent enables IT personnel to configure Intel AMT out-of-the-box
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) without requiring installing additional data to enable setup. The remote
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) configuration process may involve an ISV-developed remote configuration
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) agent that runs on the host.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) For more information:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) https://software.intel.com/sites/manageability/AMT_Implementation_and_Reference_Guide/default.htm
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) Under "Setup and Configuration of Intel AMT" =>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) "SDK Tools Supporting Setup and Configuration" =>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) "Using the Local Agent Sample"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) Intel AMT OS Health Watchdog
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) ----------------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) The Intel AMT Watchdog is an OS Health (Hang/Crash) watchdog.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) Whenever the OS hangs or crashes, Intel AMT will send an event
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) to any subscriber to this event. This mechanism means that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) IT knows when a platform crashes even when there is a hard failure on the host.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) The Intel AMT Watchdog is composed of two parts:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) 1) Firmware feature - receives the heartbeats
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) and sends an event when the heartbeats stop.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) 2) Intel MEI iAMT watchdog driver - connects to the watchdog feature,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) configures the watchdog and sends the heartbeats.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) The Intel iAMT watchdog MEI driver uses the kernel watchdog API to configure
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) the Intel AMT Watchdog and to send heartbeats to it. The default timeout of the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) watchdog is 120 seconds.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) If the Intel AMT is not enabled in the firmware then the watchdog client won't enumerate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) on the me client bus and watchdog devices won't be exposed.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) ---
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) linux-mei@linux.intel.com