Most of the X.509 standards are based on a format called ASN.1 (Abstract Syntax Notation). This is a tag-length-value (TLV) format that describes the structure of data. One of those data structures is an object ID or OID, which is typically represented in text as a set of integers, separated by dots. These are assigned to various organizations in a structured hierarchy and each organization can assign a meaning to items in their own hierarchy. One use for an OID is as a standard descriptor for an algorithm or parameter set.
In this case, the output from OpenSSL is simply telling you that the OID here is known to OpenSSL, and OpenSSL calls it
secp384r1 (the real OID is, as mentioned above, a sequence of integers). This name comes from SECG, which is a consortium which specified standards for elliptic curve cryptography. You can see a list of the curves which OpenSSL supports with
openssl ecparam -list_curves, which includes many other curves from SECG.
It happens that NIST, an agency of the U.S. government, also standardized this curve under the name P-384. In both cases, the
p refers to a curve over a prime field, and the
r in the SECG name means it is generated at random. NIST has only standardized a small number of curves, though, so you may also see curves with different names that don't have a field for the NIST curve.
Finally, it is allowed to use custom curves in many of these specifications, in which case you might not see either of those entries at all. However, as a practical matter, using a well-known curve means that you can generally benefit from a faster, specialized implementation, and usually one that is constant time (which is important for any sort of online processing). Therefore, using a standard curve is highly recommended and custom curves, having no benefits and plenty of potential downsides, are practically never used.
secp256r1is the correct ASN1 reference for P-256?
prime256v1 = P-256,
secp384r1 = P-384,
secp521r1 = P-521
prime256v1is the X9 name,
secp256r1SECG (Certicom), and
P-256NIST; OpenSSL uses the X9 name because it was first, and the NIST name probably because it's widely used (and was more so during the days of NSA Suite B).