MIME Application: An Overview of Internet Media Types
Multi purpose Internet Mail Extensions (MIME types) originally referred to email content formats but are today used to describe various types of web content. MIME type categories include application, audio, example, image, message, model, multipart, text and video.
This site is offered as a very general layman's resource to help computer users research and troubleshoot various MIME type error messages.
Most of the info discusses MIME application types but we do touch on some of the other popular MIME formats as well.
TIP! The overwhelming majority of our visitors can serve themselves well by clicking through mime format types - as most visitors wish to simply familiarize themselves with what a particular mime type refers to and sometimes how to view or open it.
And now for a more detailed look at Internet Media Types and Mime Application subtypes
Multipart Internet Mail Extensions (MIME) and Internet Media Types
Formally named MIMEs, today the preferred term is Internet Media Types. As most are read by browsers rather than e-mail clients.
Internet Media Types allow both e-mail clients and browsers to display non-ASCII sets of characters; audio, video, image and application files; and how to handle multi-part messages and non-ASCII header information.
There are four Internet protocol suites in use today:
Internet protocol suites are commonly referred to as TCP/IP because the two were the first network transmission protocols to be standardized, with others that use MIME types, such as Hyper Text Transfer Protocol (HTTP) following.
Internet Media Types are used across many of the Internet Protocol Suites including with HTTP.
Within TCP/IP the following protocols were initially included:
These have been extended to include a long list of protocols including: Bitcoin, BitTorrent, Freenet, Gopher, AOL Instant Messenger Protocol, Tor, Whois, Bootstrap Protocol (BOOTP) and Internet Relay Chat Protocol (IRCP) among many others.
We will examine five commonly encountered application layer protocols.
Simple Mail Transfer Protocol (SMTP)
E-mail clients use SMTP to send messages to one another. Users enter messages into the clients. Once sent, the messages are handled by a message transfer agent that is included with all e-mail programs. SMTP uses Transmission Control Protocol ports 25, and 587. E-mail client utilize SMTP to send messages, while e-mail servers use SMTP for both the transmission and receipt of messages. E-mail clients use Post Office (POP) and Internet Message Access (IMAP) Protocols.
Post Office Protocols (POP)
Version 3 is the currently-used POP system being used as of 2015. Client e-mail programs use POP protocols to access messages on mail servers. Communication is made between the e-mail client and server through port 110.
POP e-mail servers operate in two distinct modes. The first automatically deletes messages once they have been downloaded to a client. The second stores a copy of every message on the server. Different servers come with different POP settings. Users who are accustomed to a POP3 server that stores messages may be disappointed if they begin using a server than does not and they lose messages as a result.
Domain Name System (DNS)
The DNS employs a domain naming scheme that is hierarchal and uses a user datagram protocol (UDP) to facilitate transport layer connections. DNS uses a client/server structure. UDP port number 53 is used with DNS.
DNSs are loaded with e-mail addresses and fully qualified domain names (FQDN), each pointing to assigned Internet Protocol addresses. Browsers and e-mail clients provide the DNS with FQDNs and the DNS response with the appropriate IP address.
Hyper Text Transfer Protocol (HTTP)
This is probably where Internet Media types or MIME types get used most thoroughly. Most web pages are viewed using HTTP. Web browsers like Mozilla Firefox, Google Chrome, Internet Explorer and Edge each employ HTTP.
Hyperlinks form the basis for the World Wide Web. These pointers allow users to instantly access any web page or media type; somewhat like with DNS and SMTP, HTTP employs a client / server model. Port 80 is accessed on servers by users wishing to view Hyper Text Markup Language Documents.
HTTP servers retain no information about historical client requests as they are stateless protocols. Users' browsers open, maintain and close Transmission Control Protocol connections.
The transport layer architecture of a computer network allows for information to be relayed between host machines and provide for services like connection multiplexing, flow control, data stream support and reliability.
The transport layer is responsible for providing the services that include the following details:
Protocols that are routinely placed inside TCP/IP transport layers include: AppleTalk Transaction Protocol (Apple also uses protocol itmss), Micro Transport Protocol, User Datagram Protocol, Transmission Control Protocol, Reliable User Diagram Protocol, Reliable Datagram Protocol, Multi-path TCP, IL Protocol, Structured Stream Protocol, Fibre Channel Protocol and others.
The Internet layer comprises a class of protocols that defines how data packets are handled for a sending host, across network nodes to a receiving host. Unique network addresses are known as Internet Protocol (IP) addresses and IP-packets conform to this standard.
The goals of the Internet Layer are:
The central Internet Layer protocols are Internet Group Management Protocol (IGMP), Reverse Address Resolution Protocol (RARP), Address Resolution Protocol (ARP), Internet Protocol (IP) and Internet Control Message Protocol (ICMP).
A major distinction between current Internet Protocol and earlier protocols used WITH Arpanet, the network that predated the Internet is that the Internet layer itself does not deal with the reliability of transmissions. All Internet Protocol package handling is performed on a best efforts basis.
Each of the end hosts if responsible for confirming that packets have been reliably transmitted. Requiring network nodes to perform reliability checks significantly slows network performance, and reduces scalability. The end-point solutions in place provide a great deal of safety in that the Internet can continue to operate in the even that a large group of nodes fail. TCP in the Transport Layer performs reliability checks.
Internet Protocol (IP) and Internet Protocol Version 4 (IPv4)
Internet Protocol Version was first defined and came into regular use in 1984. It is responsible for delivering the vast majority of Internet data as of 2015.
Version 4 Internet Protocol employs four byte long (32-bit) location addresses, which has put limits on the number of addresses available. Though not used as widely, Internet Protocol Version 6 addresses this issue.
Roughly 18 million specific address blocks are reserved for private networks and 270 million are designated as multicast addresses.
IPv4 is concerned with the fragmentation and addressing of packets. The routing scheme used by IPv4 to determine the most efficient path for a data packet to transverse the Internet and is determined by information contained in the packet's header, including the destination IP address.
Packets may not always arrive in the order that they were transmitted. Some packets may be transmitted along entirely different paths. IPv4 reassembles streams of packets that have become fragmented due to varying routing. Different network nodes have varying Maximum Transmission Units. The size of a packets or the route that it takes is limited by this specification.
The most low-level layer in the Internet Protocol Suite is the Link Layer. Link Layer protocols run specifically on a link that hosts are networked with. Link Layer protocols allow local nodes of wide area networks and local area networks to communicate.
Protocols Utilized In The Link Layer
The central protocols utilized in the link layer are Network Discovery Protocol (NDP), Reverse Address Resolution Protocol (RARP) and Address Resolution Protocol (ARP).
Others include: Asynchronous Balanced Mode, Aurora Protocol, Binary Synchronous Communications, Asynchronous Transfer Mode, Sleep Proxy, Link Layer Topographic Discovery, High-Level Data Link Control, Cell Loss Priority, LocalTalk, Neighbor Discovery, High-Level Data Link Control and many others.
It is important to note that Ethernet and IEEE 802 standards do not use Internet Protocol Suite terminology; rather Open Systems Interconnection (OSI) model is used. The Link Layer and Internet Protocol Suites do no discuss physical transmission or other hardware issues, while the OSI model does.
The Internet Protocol Suite
Using the Application, Transport, Internet and Link layers the Internet Protocol Suite or TCP/IP gives the Internet all the tools necessary to carry the tasks required for its operation. MIME types and Internet Media Types are utilized by some of these protocols in order to determine the appropriate application to use to view content when reading e-mail or browsing web pages, among many other uses.
The Application Layer is the top layer and the Link Layer is the most basic. Originally, the Internet Protocol Suite only encompassed TCP/IP protocol, but with the evolution of the Internet and ever-increasing availability with a multitude of media types, beginning in the mid-1990s a common naming scheme was needed in order to tell users' preferred application: be it e-mail client or web browser, how to view files from different sources and with data configured in varying ways.
The Internet Media Type and MIME type will continue to be an important part of Internet Protocols for the foreseeable future.