The following issues exist with the EFI Socket Library: * Don't run socket applications or the socket driver for a long time - The IPv4Config and DHCP protocols are not properly running the renew and lease expiration timers. When the DHCP lease expires it is possible for a duplicate IP address to exist on the network. HSD 206136 * Network adapters must be initialized prior to running the socket application - Static and dynamic IP address need to be properly assigned to the network adapters on the system. Note that sockets does not assign the IP addresses since it does not understand how the system is connected to the network! * The default device must contain the Efi\etc directory populated with files containing the proper network configuration - A template set of files is in StdLib\Efi\etc. Note that the resolv.conf file contains the set of DNS servers. * Since DHCP is not running when the sockets application is running, the last negotiated packet is no longer available. As a result, any of the options that DHCP did negotiate are no longer available for sockets such as the list of DNS servers. * DHCP does not request the domain name and domain name server (DNS) addresses. This requires that sockets use configuration files in Efi\etc! * TCPv4 transfer rate is slow (< 10 Mbits/sec) - This is an unidentified issue. * Tcp4Dxe transmits more urgent data than is sent through sockets when normal data is queued for transmission before the urgent data. HSD 206365 * Raw socket applications are not able to pass the IP header as part of their payload by using the IP option IP_HDRINCL. This is because the UEFI IPv4 driver (Ip4Dxe) does not support RawData. HSD 206136 * Only version 4 of the UEFI network stack is supported