Internet Protocol (IP)

Source: Wikipedia: IP


Internet Protocol

From Wikipedia, the free encyclopedia
Jump to: navigation, search
This article is about a specific protocol technology. For the entire set of Internet related protocols, see Internet Protocol Suite.
The Internet Protocol Suite
Application Layer
BGP · DHCP · DNS · FTP · GTP · HTTP · IMAP · IRC · LDAP · Megaco · MGCP · NNTP · NTP · POP · RIP · RPC · RTP · RTSP · SDP · SIP · SMTP · SNMP · SOAP · SSH · Telnet · TLS/SSL · XMPP · (more)
Transport Layer
TCP · UDP · DCCP · SCTP · RSVP · ECN · (more)
Internet Layer
IP (IPv4, IPv6) · ICMP · ICMPv6 · IGMP · IPsec · (more)
Link Layer
ARP/InARP · NDP · OSPF · Tunnels (L2TP) · PPP · Media Access Control (Ethernet, DSL, ISDN, FDDI) · (more)
This box: view • talk • edit
Network Neutrality
Related issues and topics

Automatic telephone exchange
Data discrimination
End-to-end principle
Internet Protocol
Tiered Internet
Quality of service
United States of America

Network neutrality in the United States
Federal Communications Commission
Canada

Network neutrality in Canada
Canadian Radio-television and Telecommunications Commission
Crystal Clear app browser.png Internet portal
This box: view • talk • edit

The Internet Protocol (IP) is a protocol used for communicating data across a packet-switched internetwork using the Internet Protocol Suite, also referred to as TCP/IP.

IP is the primary protocol in the Internet Layer of the Internet Protocol Suite and has the task of delivering distinguished protocol datagrams (packets) from the source host to the destination host solely based on their addresses. For this purpose the Internet Protocol defines addressing methods and structures for datagram encapsulation. The first major version of addressing structure, now referred to as Internet Protocol Version 4 (IPv4) is still the dominant protocol of the Internet, although the successor, Internet Protocol Version 6 (IPv6) is being deployed actively worldwide.

Contents
[hide]

* 1 IP encapsulation
* 2 Services provided by IP
* 3 Reliability
* 4 IP addressing and routing
* 5 Version history
* 6 Reference diagrams
* 7 See also
* 8 References
* 9 External links

[edit] IP encapsulation

Data from an upper layer protocol is encapsulated as packets/datagrams (the terms are synonymous in IP). Circuit setup is not needed before a host may send packets to another host that it has previously not communicated with (a characteristic of packet-switched networks), thus IP is a connectionless protocol. This is in contrast to public switched telephone networks that require the setup of a circuit for each phone call (connection-oriented protocol).
[edit] Services provided by IP

Because of the abstraction provided by encapsulation, IP can be used over a heterogeneous network, i.e., a network connecting computers may consist of a combination of Ethernet, ATM, FDDI, Wi-Fi, token ring, or others. Each link layer implementation may have its own method of addressing (or possibly the complete lack of it), with a corresponding need to resolve IP addresses to data link addresses. This address resolution is handled by the Address Resolution Protocol (ARP) for IPv4 and Neighbor Discovery Protocol (NDP) for IPv6.
[edit] Reliability

The design principles of the Internet protocols assume that the network infrastructure is inherently unreliable at any single network element or transmission medium and that it is dynamic in terms of availability of links and nodes. No central monitoring or performance measurement facility exists that tracks or maintains the state of the network. For the benefit of reducing network complexity, the intelligence in the network is purposely mostly located in the end nodes of each data transmission, cf. end-to-end principle. Routers in the transmission path simply forward packets to next known local gateway matching the routing prefix for the destination address.

As a consequence of this design, the Internet Protocol only provides best effort delivery and its service can also be characterized as unreliable. In network architectural language it is a connection-less protocol, in contrast to so-called connection-oriented modes of transmission. The lack of reliability allows any of the following fault events to occur:

* data corruption
* lost data packets
* duplicate arrival
* out-of-order packet delivery; meaning, if packet 'A' is sent before packet 'B', packet 'B' may arrive before packet 'A'. Since routing is dynamic and there is no memory in the network about the path of prior packets, it is possible that the first packet sent takes a longer path to its destination.

The only assistance that the Internet Protocol provides in Version 4 (IPv4) is to ensure that the IP packet header is error-free through computation of a checksum at the routing nodes. This has the side-effect of discarding packets with bad headers on the spot. In this case no notification is required to be sent to either end node, although a facility exists in the Internet Control Message Protocol (ICMP) to do so.

IPv6, on the other hand, has abandoned the use of IP header checksums for the benefit of rapid forwarding through routing elements in the network.

The resolution or correction of any of these reliability issues is the responsibility of an upper layer protocol. For example, to ensure in-order delivery the upper layer may have to cache data until it can be passed to the application.

In addition to issues of reliability, this dynamic nature and the diversity of the Internet and its components provide no guarantee that any particular path is actually capable of, or suitable for performing the data transmission requested, even if the path is available and reliable. One of the technical constraints is the size of data packets allowed on a given link. An application must assure that it uses proper transmission characteristics. Some of this responsibility lies also in the upper layer protocols between application and IP. Facilities exist to examine the maximum transmission unit (MTU) size of the local link, as well as for the entire projected path to the destination when using IPv6. The IPv4 internetworking layer has the capability to automatically fragment the original datagram into smaller units for transmission. In this case, IP does provide re-ordering of fragments delivered out-of-order.[1]

Transmission Control Protocol (TCP) is an example of a protocol that will adjust its segment size to be smaller than the MTU. User Datagram Protocol (UDP) and Internet Control Message Protocol (ICMP) disregard MTU size thereby forcing IP to fragment oversized datagrams.[2]
[edit] IP addressing and routing

Perhaps the most complex aspects of IP are IP addressing and routing. Addressing refers to how end hosts become assigned IP addresses and how subnetworks of IP host addresses are divided and grouped together. IP routing is performed by all hosts, but most importantly by internetwork routers, which typically use either interior gateway protocols (IGPs) or external gateway protocols (EGPs) to help make IP datagram forwarding decisions across IP connected networks
[edit] Version history

In May 1974, the Institute of Electrical and Electronic Engineers (IEEE) published a paper entitled "A Protocol for Packet Network Interconnection."[3] The paper's authors, Vint Cerf and Bob Kahn, described an internetworking protocol for sharing resources using packet-switching among the nodes. A central control component of this model was the "Transmission Control Program" (TCP) that incorporated both connection-oriented links and datagram services between hosts. The monolithic Transmission Control Program was later divided into a modular architecture consisting of the Transmission Control Protocol at the connection-oriented layer and the Internet Protocol at the internetworking (datagram) layer. The model became known informally as TCP/IP, although formally it was henceforth referenced as the Internet Protocol Suite.

The Internet Protocol is one of the determining elements that define the Internet. The dominant internetworking protocol (Internet Layer) in use today is IPv4; with number 4 assigned as the formal protocol version number carried in every IP datagram. IPv4 is described in RFC 791 (1981).

The successor to IPv4 is IPv6. Its most prominent modification from Version 4 is the addressing system. IPv4 uses 32-bit addresses (c. 4 billion, or 4.3×109, addresses) while IPv6 uses 128-bit addresses (c. 340 undecillion, or 3.4×1038 addresses). Although adoption of IPv6 has been slow, as of June 2008, all United States government systems have demonstrated basic infrastructure support for IPv6 (if only at the backbone level).[4]

Version numbers 0 through 3 were development versions of IPv4 used between 1977 and 1979.[citation needed] Version number 5 was used by the Internet Stream Protocol (IST), an experimental stream protocol. Version numbers 6 through 9 were proposed for various protocol models designed to replace IPv4: SIPP (Simple Internet Protocol Plus, known now as IPv6), TP/IX (RFC 1475), PIP (RFC 1621) and TUBA (TCP and UDP with Bigger Addresses, RFC 1347). Version number 6 was eventually chosen as the official assignment for the successor Internet protocol, subsequently standardized as IPv6.

A humorous Request for Comments that made an IPv9 protocol center of its storyline was published on April 1, 1994 by the IETF.[5] It was intended as an April Fool's Day joke. Other protocol proposals named "IPv9" and "IPv8" have also briefly surfaced, though these came with little or no support from the wider industry and academia.[6]
[edit] Reference diagrams
Internet Protocol Suite in operation between two hosts connected via two routers and the corresponding layers used at each hop

Sample encapsulation of application data from UDP to a Link protocol frame
[edit] See also

Main lists: List of basic internet topics and List of Internet topics

* All IP
* ATM
* Connectionless protocol
* Flat IP
* Geolocation software
* IANA
* Internet
* Internet Protocol Suite
* Internet Stream Protocol
* ip - the ip structure for the C programming language
* IP address
* IP packet
* IPv4
* IPv6
* TCP and UDP port numbers
* TDM
* Transmission Control Protocol

[edit] References

1. ^ Siyan, Karanjit. Inside TCP/IP, New Riders Publishing, 1997. ISBN 1-56205-714-6
2. ^ Basic Journey of a Packet
3. ^ Vinton G. Cerf, Robert E. Kahn, "A Protocol for Packet Network Intercommunication", IEEE Transactions on Communications, Vol. 22, No. 5, May 1974 pp. 637-648
4. ^ CIO council adds to IPv6 transition primer, gcn.com
5. ^ RFC 1606: A Historical Perspective On The Usage Of IP Version 9. April 1, 1994.
6. ^ Theregister.com

[edit] External links
Search Wiktionary Look up internet protocol in Wiktionary, the free dictionary.

* Internet Protocol at the Open Directory Project
* RFC 791
* Data Communication Lectures of Manfred Lindner - Part IP Technology Basics
* Data Communication Lectures of Manfred Lindner - Part IP Technology Details
* Data Communication Lectures of Manfred Lindner - Part IPv6
* IPv6.com - Knowledge Center for Next Generation Internet IPv6

Retrieved from "http://en.wikipedia.org/wiki/Internet_Protocol"
Categories: Internet Protocol | Internet Layer protocols
Hidden categories: All articles with unsourced statements | Articles with unsourced statements from July 2009
Personal tools

* New features
* Log in / create account

Namespaces

* Article
* Discussion

Variants

Views

* Read
* Edit
* View history

Actions

Search
Search
Navigation

* Main page
* Contents
* Featured content
* Current events
* Random article

Interaction

* About Wikipedia
* Community portal
* Recent changes
* Contact Wikipedia
* Donate to Wikipedia
* Help

Toolbox

* What links here
* Related changes
* Upload file
* Special pages
* Permanent link
* Cite this page

Print/export

* Create a book
* Download as PDF
* Printable version

Languages

* Afrikaans
* العربية
* Беларуская
* Bosanski
* Български
* Català
* Česky
* Dansk
* Deutsch
* Eesti
* Español
* Esperanto
* فارسی
* Français
* Galego
* 한 국어
* Hrvatski
* Bahasa Indonesia
* Íslenska
* Italiano
* עברית
* ქართული
* ລາວ
* Latina
* Latviešu
* Magyar
* Македонски
* മലയാളം
* Nederlands
* नेपाल भाषा
* 日本語
* ‪Norsk (bokmål)‬
* ‪Norsk (nynorsk)‬
* Piemontèis
* Polski
* Português
* Română
* Русский
* Shqip
* සිංහල
* Simple English
* Slovenčina
* Soomaaliga
* Српски / Srpski
* Srpskohrvatski / Српскохрватски
* Basa Sunda
* Suomi
* Svenska
* தமிழ்
* ไทย
* Українська
* اردو
* Tiếng Việt
* ייִדיש
* Yorùbá
* 粵語
* 中文

* This page was last modified on 7 June 2010 at 15:08.
* Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. See Terms of Use for details.
Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.
* Contact us

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License