Direct Internet Message Encapsulation

Direct Internet Message Encapsulation

Direct Internet Message Encapsulation (DIME) was a Microsoft-proposed internet standard in the early 2000s for the streaming of binary and other encapsulated data over the Internet.

According to the IETF web site, the standard has been withdrawn and never made RFC status. However, Microsoft did at one time recommend DIME for transmitting files via Web services. It was also used in Java EE, but differences in the implementation of the protocol made it difficult[citation needed]

The first version was submitted to the IETF in November 2001; the last update was submitted in June 2002. By December 2003, DIME had lost out, in competition with Message Transmission Optimization Mechanism and SOAP with Attachments,.[1] Microsoft now describes DIME as "superseded by the SOAP Message Transmission Optimization Mechanism (MTOM) specification"[2]

The standard was supposed to be an improved version of MIME (see [1]). In particular, the difficulty with MIME is that each message must be encoded as text, and that its sections are separated by a well-known separator given in the message header. This means, unfortunately, that the entire stream of data must be known to the sender before starting the communication, so as to choose a separator that does not occur in the data. This is not useful if the entire stream is not available when the communication is initiated, or when searching it even with a randomly-generated attempt at a unique separator (e.g. a GUID) is expensive. DIME was more oriented to streaming, allowing for example a receiver to process chunks of the message as they arrived, without having to wait for the entire message to arrive.

Contents

Problems with the HTTP

DIME was defined the transmission format at the data link layer in the OSI model although it was typically transmitted over HTTP. One difficulty here was that it could form an HTTP message of, essentially, any size (the limit being the size information for each chunk, which was 32 bits so 1 gigabit). Many HTTP receivers were unused to messages as large as this, and if they buffered messages would simply fail, expecting a short message and receiving a huge one. Moreover, if the HTTP receiver was secured, it would, on receiving the message, send back a challenge message (400 code) to the sender. Because HTTP is connectionless, it would then entirely lose the possibly huge amount of data that had been sent to it, just to accept or deny the challenge. There was no entirely satisfactory solution to this. The response to the challenge could of course succeed, at the expense of sending the data twice, which if it were huge rather defeats its point. (It is fair to say any other method of sending data over HTTP suffers the same problem.) In the alternate, and probably better solution, the criteria for a successful challenge (e.g. a username and password) is established out-of-band, so it can be sent with the message the first time and not receive a challenge (the by-product of the connectionless HTTP protocol being that since each message is treated individual, any message must be able successfully to include its challenge response).

DIME was extremely fast compared to practical applications of other protocols. Because the data was binary rather than, say, Base64 encoded, it was relatively compact, and the chunking and packet methods built into the protocol meant it could be streamed and read by a suitable receiver before the whole message had been read.

Problems at the network layer

Because DIME was defined at the data link layer, it was possible to encapsulate a DIME message in another DIME message. This would not help at all for compression purposes, but was occasionally useful to bypass networking infrastructure such as routers at the network layer of the OS model, that would otherwise block the encapsulated traffic (being binary they may treat it with suspicion). That being said, other protocols such as MIME may equally suffer such. Since DIME was generally used between well-trusted clients, a specific port could be opened at the router for the express purpose of sending and receiving DIME traffic. This did not subvert the security aspects, since the challenge would still occur, merely that it accepted that binary traffic was the norm on that port, and not give numerous false positives.

See also

References

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать реферат

Look at other dictionaries:

  • Direct Internet Message Encapsulation — (DIME) ist ein von Microsoft vorgeschlagenes Nachrichtenformat für die Übertragung binärer Nachrichten mit SOAP. Es wurde inzwischen jedoch zugunsten von MTOM für obsolet erklärt. Siehe hierzu [1] unter Superseded Specifications DIME ist ein… …   Deutsch Wikipedia

  • Direct Internet Message Encapsulation — DIME est un standard internet proposé par Microsoft pour transférer des données binaires ou d autres types de données encapsulées à travers le protocole SOAP. D après le site de l IETF, ce standard a été retiré et n a jamais obtenu de statut RFC …   Wikipédia en Français

  • SOAP Message Transmission Optimization Mechanism — (MTOM) ist die W3C Empfehlung für die Übertragung binärer Daten in Webservices. Es verwendet XML binary Optimized Packaging (XOP) für die optimierte Übermittlung binärer Daten. MTOM ersetzt damit die sonst für die Übertragung binärer Daten… …   Deutsch Wikipedia

  • DIME — Direct Internet Message Encapsulation (Computing » Networking) *** Dense Inert Metal Explosive (Governmental » Military) * Dropping In A Microgravity Environment (Governmental » NASA) * Digital Interactive Music Engine (Community » Media) * Doin… …   Abbreviations dictionary

  • Abkürzungen/Computer — Dies ist eine Liste technischer Abkürzungen, die im IT Bereich verwendet werden. A [nach oben] AA Antialiasing AAA authentication, authorization and accounting, siehe Triple A System AAC Advanced Audio Coding AACS …   Deutsch Wikipedia

  • Liste der Abkürzungen (Computer) — Dies ist eine Liste technischer Abkürzungen, die im IT Bereich verwendet werden. A [nach oben] AA Antialiasing AAA authentication, authorization and accounting, siehe Triple A System AAC Advanced Audio Coding AACS …   Deutsch Wikipedia

  • Liste von Abkürzungen (Computer) — Dies ist eine Liste technischer Abkürzungen, die im IT Bereich verwendet werden. Inhaltsverzeichnis A B C D E F G H I J K L M N O P Q R S T U V W X Y Z siehe auch: Liste von Dateiendu …   Deutsch Wikipedia

  • MIME — This article is about the email content type system. For the World Wide Web content type system, see Internet media type. For mime as an art form, see Mime artist. For the British engineering society, see Institution of Mechanical Engineers.… …   Wikipedia

  • SOAP with Attachments — SwA Struktur SOAP with Attachments (SwA) ist ein W3C Vorschlag für den Transport von SOAP Nachrichten innerhalb von MIME Nachrichten primär über HTTP. SOAP with Attachments definiert Regeln für die Verwendung von URI Referenzen, welche aus den… …   Deutsch Wikipedia

  • DIME — bezeichnet eine US amerikanische Münze mit dem Wert von einem Zehntel US Dollar eine kanadische Münze mit dem Wert eines Zehntel Kanadischen Dollars eine omotische Sprache aus der Provinz Kaffa in Äthiopien, siehe Dime (Sprache) die Abkürzung für …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”