IP datagram
   HOME

TheInfoList



OR:

A datagram is a basic transfer unit associated with a
packet-switched network In telecommunications, packet switching is a method of grouping data into '' packets'' that are transmitted over a digital network. Packets are made of a header and a payload. Data in the header is used by networking hardware to direct the pack ...
. Datagrams are typically structured in header and payload sections. Datagrams provide a
connectionless communication Connectionless communication, often referred to as CL-mode communication,Information Processing Systems - Open Systems Interconnection, "Transport Service Definition - Addendum 1: Connectionless-mode Transmission", International Organization for ...
service across a packet-switched network. The delivery, arrival time, and order of arrival of datagrams need not be guaranteed by the network.


History

In the early 1970s, the term ''datagram'' was created by combining the words ''data'' and ''telegram'' by the CCITT rapporteur on packet switching, Halvor Bothner-By. While the word was new, the concept had already a long history. In 1962,
Paul Baran Paul Baran (born Pesach Baran ; April 29, 1926 – March 26, 2011) was a Polish-American engineer who was a pioneer in the development of computer networks. He was one of the two independent inventors of packet switching, which is today the dom ...
described, in a RAND Corporation report, a hypothetical military network having to resist a nuclear attack. Small standardized "message blocks", bearing source and destination addresses, were stored and forwarded in computer nodes of a highly redundant meshed computer network. "The network user who has called up a "virtual connection" to an end station and has transmitted messages ... might also view the system as a black box providing an apparent circuit connection". In 1967,
Donald Davies Donald Watts Davies, (7 June 1924 – 28 May 2000) was a Welsh computer scientist who was employed at the UK National Physical Laboratory (NPL). In 1965 he conceived of packet switching, which is today the dominant basis for data communic ...
published a seminal article in which he introduced the now largely used words ''packet'' and ''
packet switching In telecommunications, packet switching is a method of grouping data into '' packets'' that are transmitted over a digital network. Packets are made of a header and a payload. Data in the header is used by networking hardware to direct the p ...
''. His core network is similar to that of Paul Baran although it has been independently designed. To deal with datagram permutations (due to dynamically updated routing preferences) and to datagram losses (unavoidable when fast sources send to a slow destinations), he assumes that "all users of the network will provide themselves with some kind of error control" (what will be called later on a ''pure datagram'' service). His target is, for the first time in packet switching, a "common-carrier communication network". To support remote access to computer services by user terminals, which at that time transmitted in general character by character, he included at the network periphery interface computers that convert character flows into packet flows and conversely. In 1970, Lawrence Roberts and Barry D. Wessler published an article about
ARPANET The Advanced Research Projects Agency Network (ARPANET) was the first wide-area packet-switched network with distributed control and one of the first networks to implement the TCP/IP protocol suite. Both technologies became the technical fou ...
, the first multi-node packet-switching network. An accompanying paper described its switching nodes (the IMPs) and its packet formats. The network core performed datagram switching as in Baran's and Davies' model, but provision was added within the network, at its periphery, to deal with datagram losses and permutations. A reliable message transfer service was thus offered to user computers, thus greatly simplifying their own work, and keeping it less dependent on further research. In 1973,
Louis Pouzin Louis Pouzin (April 20, 1931 in Chantenay-Saint-Imbert, Nièvre, France) is a French computer scientist. He designed an early packet communications network, CYCLADES. This network was the first actual implementation of the pure datagram model, ...
presented his design for
Cyclades The Cyclades (; el, Κυκλάδες, ) are an island group in the Aegean Sea, southeast of mainland Greece and a former administrative prefecture of Greece. They are one of the island groups which constitute the Aegean archipelago. The name ...
, the first real size network implementing the pure datagram model of Donald Davies. The Cyclades team has thus been first to tackle the highly complex problem of providing to user applications a reliable virtual circuit service (the equivalent of an Internet TCP connection) while using an end to end network service known to possibly produce non negligible datagram losses and permutations. Although Pouzin's concern "in a first stage is not to make breakthrough in packet switching technology, but to build a reliable communications tool for Cyclades", two members of his team, Hubert Zimmerman and
Gérard Le Lann Gérard Le Lann is a French computer scientist at INRIA. In networking, he worked on the project CYCLADES with an intermediate stint on the Arpanet team. Life and career Gérard Le Lann's career has been summarized in 1975 as follows: ::Gé ...
, made significant contributions to the design of Internet's TCP that
Vint Cerf Vinton Gray Cerf (; born June 23, 1943) is an American Internet pioneer and is recognized as one of " the fathers of the Internet", sharing this title with TCP/IP co-developer Bob Kahn. He has received honorary degrees and awards that include ...
, its main designer, acknowledged. In 1981, the Defense Advanced Research Projects Agency (
DARPA The Defense Advanced Research Projects Agency (DARPA) is a research and development agency of the United States Department of Defense responsible for the development of emerging technologies for use by the military. Originally known as the Ad ...
) issued the first specification the
Internet protocol The Internet Protocol (IP) is the network layer communications protocol in the Internet protocol suite for relaying datagrams across network boundaries. Its routing function enables internetworking, and essentially establishes the Internet. ...
(IP). It introduced a major evolution of the datagram concept: '' fragmentation.'' With fragmentation, some parts of the global network may use large packet size (typically
local area network A local area network (LAN) is a computer network that interconnects computers within a limited area such as a residence, school, laboratory, university campus or office building. By contrast, a wide area network (WAN) not only covers a larger ...
s for processing power minimization), while some others may impose smaller packet sizes (typically
wide area network A wide area network (WAN) is a telecommunications network that extends over a large geographic area. Wide area networks are often established with leased telecommunication circuits. Businesses, as well as schools and government entities, u ...
s for response time minimization). Network nodes may split a packet of a datagram into several smaller packets of the same datagram. In 1999, the
Internet Engineering Task Force The Internet Engineering Task Force (IETF) is a standards organization for the Internet and is responsible for the technical standards that make up the Internet protocol suite (TCP/IP). It has no formal membership roster or requirements and a ...
(IETF) officialised the use of the already largely deployed '' Network address translation'' (NAT) whereby each public address can be shared by several private devices. With it, the forthcoming Internet Address exhaustion was delayed, leaving enough time to introduce
IPv6 Internet Protocol version 6 (IPv6) is the most recent version of the Internet Protocol (IP), the communications protocol that provides an identification and location system for computers on networks and routes traffic across the Internet. IPv ...
, the new generation of Internet packets supporting longer addresses. The initial principle of full end to end network transparency to datagrams was for this relaxed: NAT nodes had to manage per-connection states, making them in part
connection oriented Connection-oriented communication is a network communication mode in telecommunications and computer networking, where a communication session or a semi-permanent connection is established before any useful data can be transferred. The establish ...
. In 2015, the
IETF The Internet Engineering Task Force (IETF) is a standards organization for the Internet and is responsible for the technical standards that make up the Internet protocol suite (TCP/IP). It has no formal membership roster or requirements and a ...
upgraded its weak "informational" recommendation of 1998, that datagram switching nodes perform
active queue management In Router (computing), routers and network switch, switches, active queue management (AQM) is the policy of dropping packets inside a buffer associated with a network interface controller (NIC) before that buffer becomes full, often with the goal ...
(AQM), to make it a stronger and more detailed "
best current practice A Best Current Practice (BCP) is a ''de facto'' level of performance in engineering and information technology. It is more flexible than a standard, since techniques and tools are continually evolving. The Internet Engineering Task Force publish ...
" recommendation. While the initial datagram queueing model was simple to implement and needed no more tuning than queue lengths, support of more sophisticated and parametrized mechanisms were found necessary "to improve and preserve Internet performance" (
RED Red is the color at the long wavelength end of the visible spectrum of light, next to orange and opposite violet. It has a dominant wavelength of approximately 625–740 nanometres. It is a primary color in the RGB color model and a secondar ...
, ECN etc.). Further research on the subject was also called for, with a list of identified items.


Definition

The term ''datagram'' is defined as follows: A datagram needs to be self-contained without reliance on earlier exchanges because there is no connection of fixed duration between the two communicating points as there is, for example, in most voice telephone conversations. Datagram service is often compared to a mail delivery service; the user only provides the destination address, but receives no guarantee of delivery, and no confirmation upon successful delivery. Datagram service is therefore considered unreliable. Datagram service routes datagrams without first creating a predetermined path. Datagram service is therefore considered connectionless. There is also no consideration given to the order in which it and other datagrams are sent or received. In fact, many datagrams in the same group can travel along different paths before reaching the same destination.


Structure

Each datagram has two components, a header and a data payload. The header contains all the information sufficient for routing from the originating equipment to the destination without relying on prior exchanges between the equipment and the network. Headers may include source and destination addresses as well as a type field. The payload is the data to be transported. This process of nesting data payloads in a tagged header is called encapsulation.


Examples


Internet Protocol

The
Internet Protocol The Internet Protocol (IP) is the network layer communications protocol in the Internet protocol suite for relaying datagrams across network boundaries. Its routing function enables internetworking, and essentially establishes the Internet. ...
(IP) defines standards for several types of datagrams. The
internet layer The internet layer is a group of internetworking methods, protocols, and specifications in the Internet protocol suite that are used to transport network packets from the originating host across network boundaries; if necessary, to the destinat ...
is a datagram service provided by an IP. For example, UDP is run by a datagram service on the internet layer. IP is an entirely connectionless, best effort, unreliable, message delivery service. TCP is a higher level protocol running on top of IP that provides a reliable connection-oriented service.


See also

* Datagram socket *
Frame (networking) A frame is a digital data transmission unit in computer networking and telecommunication. In packet switched systems, a frame is a simple container for a single network packet. In other telecommunications systems, a frame is a repeating structure s ...
* Protocol Wars


References

{{Reflist Units of information Packets (information technology)