Osi Model
Osi Model
PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information.
PDF generated at: Tue, 12 Oct 2010 16:05:08 UTC
Contents
Articles
OSI model 1
Application Layer 9
Presentation Layer 11
Session Layer 13
Transport Layer 14
Network Layer 17
Data Link Layer 19
Physical Layer 23
Internet Protocol Suite 25
References
Article Sources and Contributors 31
Image Sources, Licenses and Contributors 33
Article Licenses
License 34
OSI model 1
OSI model
The Open Systems Interconnection model (OSI model) is a product of the Open Systems Interconnection effort at
the International Organization for Standardization. It is a way of sub-dividing a communications system into smaller
parts called layers. A layer is a collection of conceptually similar functions that provide services to the layer above it
and receives services from the layer below it. On each layer an instance provides services to the instances at the layer
above and requests service from the layer below.
For example, a layer that provides error-free communications across a network provides the path needed by
applications above it, while it calls the next lower layer to send and receive packets that make up the contents of the
path. Conceptually two instances at one layer are connected by a horizontal protocol connection on that layer.
History
In 1978, work on a layered model of
network architecture was started and
the International Organization for
Standardization (ISO) began to
develop its OSI framework
architecture. OSI has two major
components: an abstract model of
networking, called the Basic Reference
Model or seven-layer model, and a set
of specific protocols.
The concept of a 7 layer model was provided by the work of Charles Bachman, then of Honeywell. Various aspects
of OSI design evolved from experiences with the ARPANET, the fledgling Internet, NPLNET, EIN, CYCLADES
network and the work in IFIP WG6.1. The new design was documented in ISO 7498 and its various addenda. In this
model, a networking system is divided into layers. Within each layer, one or more entities implement its
functionality. Each entity interacts directly only with the layer immediately beneath it, and provides facilities for use
by the layer above it.
Protocols enable an entity in one host to interact with a corresponding entity at the same layer in another host.
Service definitions abstractly describe the functionality provided to an (N)-layer by an (N-1) layer, where N is one of
the seven layers of protocols operating in the local host.
OSI model 2
OSI Model
Some orthogonal aspects, such as management and security, involve every layer.
Security services are not related to a specific layer: they can be related by a number of layers, as defined by ITU-T
X.800 Recommendation.[3]
This services are aimed to improve the Cia triad (i.e.Confidentiality, Integrity, Availability) of transmitted data.
Actually the availability of communication service is determined by network design and/or network management
protocols. Appropriate choices for these are needed to protect against denial of service.
Careful analysis of the Network Layer indicated that the Network Layer could have at least 3 sublayers:
1.Subnetwork Access - that considers protocols that deal with the interface to networks, such as X.25; 2.Subnetwork
Dependent Convergence - when it is necessary to bring the level of a transit network up to the level of networks on
either side; 3.Subnetwork Independent Convergence - which handles transfer across multiple networks. The best
example of this latter case is CLNP, or IPv7 ISO 8473. It manages the connectionless transfer of data one hop at a
time, from end system to ingress router, router to router, and from egress router to destination end system. It is not
responsible for reliable delivery to a next hop, but only for the detection of errored packets so they may be discarded.
In this scheme, IPv4 and IPv6 would have to be classed with X.25 as Subnet Access protocols because they carry
interface addresses rather than node addresses.
A number of layer management protocols, a function defined in the Management Annex, ISO 7498/4, belong to the
Network Layer. These include routing protocols, multicast group management, Network Layer information and
error, and Network Layer address assignment. It is the function of the payload that makes these belong to the
Network Layer, not the protocol that carries them.
Reinitiate connection (if an excessive number of PDUs are unacknowledged) No Yes No Yes No
Multiplexing and demultiplexing over a single virtual circuit No No Yes Yes Yes
Perhaps an easy way to visualize the Transport Layer is to compare it with a Post Office, which deals with the
dispatch and classification of mail and parcels sent. Do remember, however, that a post office manages the outer
envelope of mail. Higher layers may have the equivalent of double envelopes, such as cryptographic presentation
services that can be read by the addressee only. Roughly speaking, tunneling protocols operate at the Transport
Layer, such as carrying non-IP protocols such as IBM's SNA or Novell's IPX over an IP network, or end-to-end
encryption with IPsec. While Generic Routing Encapsulation (GRE) might seem to be a Network Layer protocol, if
the encapsulation of the payload takes place only at endpoint, GRE becomes closer to a transport protocol that uses
IP headers but contains complete frames or packets to deliver to an endpoint. L2TP carries PPP frames inside
transport packet.
Interfaces
Neither the OSI Reference Model nor OSI protocols specify any programming interfaces, other than as deliberately
abstract service specifications. Protocol specifications precisely define the interfaces between different computers,
but the software interfaces inside computers are implementation-specific.
For example Microsoft Windows' Winsock, and Unix's Berkeley sockets and System V Transport Layer Interface,
are interfaces between applications (Layer 5 and above) and the transport (Layer 4). NDIS and ODI are interfaces
between the media (Layer 2) and the network protocol (Layer 3).
Interface standards, except for the Physical Layer to media, are approximate implementations of OSI Service
Specifications.
Examples
Layer OSI protocols TCP/IP AppleTalk IPX SNA UMTS Misc. examples
Signaling
protocols
Name System
[5]
# 7
7 Application FTAM, X.400, NNTP, SIP, INAP, AFP, ZIP, RIP, APPC HL7, Modbus
X.500, DAP, SSI, DNS, MAP, RTMP, SAP
ROSE, RTSE, FTP, Gopher, TCAP, NBP
ACSE HTTP, NFS, ISUP,
NTP, DHCP, TUP
SMPP, SMTP,
SNMP, Telnet,
RIP, BGP
3 Network ISO/IEC 8208, IP, IPsec, SCCP, ATP IPX RRC (Radio Resource NBF, Q.931, IS-IS
X.25 (PLP), ICMP, IGMP, MTP (TokenTalk Control) Packet Data Leaky bucket,
ISO/IEC 8878, OSPF or Convergence Protocol token bucket
X.223, EtherTalk) (PDCP) and BMC
ISO/IEC 8473-1, (Broadcast/Multicast
CLNP X.233. Control)
OSI model 7
2 Data Link PPP, SLIP, MTP, LocalTalk, IEEE SDLC LLC (Logical Link 802.3 (Ethernet),
ISO/IEC 7666,
PPTP, L2TP Q.710 AppleTalk 802.3 Control), MAC 802.11a/b/g/n
X.25 (LAPB),
Remote framing, (Media Access MAC/LLC, 802.1Q
Token Bus,
Access, PPP Ethernet Control) (VLAN), ATM,
X.222,
II HDP, FDDI, Fibre
ISO/IEC 8802-2
framing Channel, Frame
LLC Type 1 and
[6] Relay, HDLC, ISL,
2
PPP, Q.921, Token
Ring, CDP, ARP
(maps layer 3 to
layer 2 address),
ITU-T G.hn DLL
CRC, Bit stuffing,
ARQ, Data Over
Cable Service
Interface
Specification
(DOCSIS)
See also
• Cognitive networks
• Hierarchical internetworking model
• Internet protocol suite
• Layer 8
• OSI protocol suite
• Protocol stack
• Service layer
• TCP/IP model
• X.25 protocol suite
• WAP protocol suite
References
[1] ITU-T X-Series Recommendations (http:/ / www. itu. int/ rec/ T-REC-X/ en).
[2] "Publicly Available Standards" (http:/ / standards. iso. org/ ittf/ PubliclyAvailableStandards/ index. html). Standards.iso.org. 2010-07-30. .
Retrieved 2010-09-11.
[3] X.800 : Security architecture for Open Systems Interconnection for CCITT applications (http:/ / www. itu. int/ rec/ T-REC-X. 800-199103-I/
e)
[4] "ITU-T Recommendation X.224 (11/1995) ISO/IEC 8073" (http:/ / www. itu. int/ rec/ T-REC-X. 224-199511-I/ en/ ). .
[5] ITU-T Recommendation Q.1400 (03/1993) (http:/ / www. itu. int/ rec/ T-REC-Q. 1400/ en/ ), Architecture framework for the development of
signaling and OA&M protocols using OSI concepts, pp 4, 7.
[6] CISCO Cisco Systems, Inc. Internetworking Technology Handbook OSI Model Physical Layer (http:/ / www. cisco. com/ en/ US/ docs/
internetworking/ technology/ handbook/ Intro-to-Internet. html#wp1020669)
[7] RFC 3439
External links
• ISO/IEC standard 7498-1:1994 (http://standards.iso.org/ittf/PubliclyAvailableStandards/
s020269_ISO_IEC_7498-1_1994(E).zip) (PDF document inside ZIP archive) (requires HTTP cookies in order to
accept licence agreement)
• ITU-T X.200 (the same contents as from ISO) (http://www.itu.int/rec/dologin_pub.asp?lang=e&
id=T-REC-X.200-199407-I!!PDF-E&type=items)
• The ISO OSI Reference Model , Beluga graph of data units and groups of layers (http://infchg.appspot.com/
usr?at=1263939371)
• OSI Reference Model — The ISO Model of Architecture for Open Systems Interconnection (http://www.
comsoc.org/livepubs/50_journals/pdf/RightsManagement_eid=136833.pdf)PDF (776 KB), Hubert
Zimmermann, IEEE Transactions on Communications, vol. 28, no. 4, April 1980, pp. 425 – 432.
• Internetworking Basics (http://www.cisco.com/en/US/docs/internetworking/technology/handbook/
Intro-to-Internet.html)
Application Layer 9
Application Layer
Application Layer is a term used in categorizing protocols and methods in architectural models of computer
networking. Both the OSI model and the Internet Protocol Suite (TCP/IP) define application layers.
In TCP/IP, the Application Layer contains all protocols and methods that fall into the realm of process-to-process
communications via an Internet Protocol (IP) network using the Transport Layer protocols to establish underlying
host-to-host connections.
In the OSI model, the definition of its Application Layer is narrower in scope, explicitly distinguishing additional
functionality above the Transport Layer at two additional levels: Session Layer and Presentation Layer. OSI
specifies strict modular separation of functionality at these layers and provides protocol implementations for each
layer.
The common application layer services provide semantic conversion between associated application processes. Note:
Examples of common application services of general interest include the virtual file, virtual terminal, and job
transfer and manipulation protocols.
Protocol examples
• 9P, Plan 9 from Bell Labs distributed file system protocol
• AFP,
• APPC, Advanced Program-to-Program Communication
• AMQP, Advanced Message Queuing Protocol
• BitTorrent
• Atom Publishing Protocol
• BOOTP, Bootstrap Protocol
• CFDP, Coherent File Distribution Protocol
• DDS, Data Distribution Service
• DHCP, Dynamic Host Configuration Protocol
• DeviceNet
• DNS, Domain Name System (Service) Protocol
• eDonkey
• ENRP, Endpoint Handlespace Redundancy Protocol
• FastTrack (KaZaa, Grokster, iMesh)
• Finger, User Information Protocol
• Freenet
• FTAM, File Transfer Access and Management
• FTP, File Transfer Protocol
• Gopher, Gopher protocol
• HL7, Health Level Seven
• HTTP, HyperText Transfer Protocol
• H.323, Packet-Based Multimedia Communications System
• IMAP, IMAP4, Internet Message Access Protocol (version 4)
• IRCP, Internet Relay Chat Protocol
• Kademlia
• LDAP, Lightweight Directory Access Protocol
• LPD, Line Printer Daemon Protocol
• MIME (S-MIME), Multipurpose Internet Mail Extensions and Secure MIME
Application Layer 10
• Modbus
• Netconf
• NFS, Network File System
• NIS, Network Information Service
• NNTP, Network News Transfer Protocol
• NTCIP, National Transportation Communications for Intelligent Transportation System Protocol
• NTP, Network Time Protocol
• OSCAR, AOL Instant Messenger Protocol
• PNRP, Peer Name Resolution Protocol
• POP, POP3, Post Office Protocol (version 3)
• RDP, Remote Desktop Protocol
• Rlogin, Remote Login in UNIX Systems
• RPC, Remote Procedure Call
• RTMP Real Time Messaging Protocol
• RTP, Real-time Transport Protocol
• RTPS, Real Time Publish Subscribe
• RTSP, Real Time Streaming Protocol
• SAP, Session Announcement Protocol
• SDP, Session Description Protocol
• SIP, Session Initiation Protocol
• SLP, Service Location Protocol
• SMB, Server Message Block
• SMTP, Simple Mail Transfer Protocol
• SNMP, Simple Network Management Protocol
• SNTP, Simple Network Time Protocol
• SPTP, Secure Parallel Transfer Protocol
• SSH, Secure Shell
• SSMS, Secure SMS Messaging Protocol
• TCAP, Transaction Capabilities Application Part
• TDS, Tabular Data Stream
• TELNET, Terminal Emulation Protocol of TCP/IP
• TFTP, Trivial File Transfer Protocol
• TSP, Time Stamp Protocol
• VTP, Virtual Terminal Protocol
• Waka, an HTTP replacement protocol
• Whois (and RWhois), Remote Directory Access Protocol
• WebDAV
• X.400, Message Handling Service Protocol
• X.500, Directory Access Protocol (DAP)
• XMPP, Extensible Messaging and Presence Protocol
Application Layer 11
References
External links
• How The Application Layer Works (http://learn-networking.com/tcp-ip/how-the-application-layer-works)
(refers to the Internet Protocol Suite (aka "TCP/IP"))
Presentation Layer
The Presentation Layer is Layer 6 of the seven-layer OSI model of computer networking.
The Presentation Layer is responsible for the delivery and formatting of information to the application layer for
further processing or display. It relieves the application layer of concern regarding syntactical differences in data
representation within the end-user systems. Note: An example of a presentation service would be the conversion of
an EBCDIC-coded text file to an ASCII-coded file.
The Presentation Layer is the lowest layer at which application programmers consider data structure and
presentation, instead of simply sending data in form of datagrams or packets between hosts. This layer deals with
issues of string representation - whether they use the Pascal method (an integer length field followed by the specified
amount of bytes) or the C/C++ method (null-terminated strings, i.e. "thisisastring\0"). The idea is that the application
layer should be able to point at the data to be moved, and the Presentation Layer will deal with the rest.
Serialization of complex data structures into flat byte-strings (using mechanisms such as TLV or XML) can be
thought of as the key functionality of the Presentation Layer.
Encryption is typically done at this level too, although it can be done on the Application, Session, Transport, or
Network Layers; each having its own advantages and disadvantages. Another example is representing structure,
which is normally standardized at this level, often by using XML. As well as simple pieces of data, like strings, more
complicated things are standardized in this layer. Two common examples are 'objects' in object-oriented
programming, and the exact way that streaming video is transmitted.
In many widely used applications and protocols, no distinction is made between the presentation and application
layers. For example, HTTP, generally regarded as an application layer protocol, has Presentation Layer aspects such
as the ability to identify character encoding for proper conversion, which is then done in the Application Layer.
Within the service layering semantics of the OSI network architecture, the Presentation Layer responds to service
requests from the Application Layer and issues service requests to the Session Layer.
Services
• Encryption
• Compression
Sublayers
The Presentation Layer is composed of two sublayers:
• CASE (Common Application Service Element)
• SASE (Specific Application Service Element)
Presentation Layer 12
CASE
The CASE sublayer provides services for the Application Layer and request services from the Session Layer. It
provides support for common application services, such as:
• ACSE (Association Control Service Element)
• ROSE (Remote Operation Service Element)
• CCR (Commitment Concurrency and Recovery)
• RTSE (Reliable Transfer Service Element)
SASE
The SASE sublayer provides application specific services (protocols), such as
• FTAM (File Transfer, Access and Manager)
• VT (Virtual Terminal)
• MOTIS (Message Oriented Text Interchange Standard)
• CMIP (Common Management Information Protocol)
• JTM (Job Transfer and Manipulation) a former OSI standard [1]
• MMS (Manufacturing Messaging Service)
• RDA (Remote Database Access)
• DTP (Distributed Transaction Processing)
• Tel Net(a remote terminal access protocol)
Protocols
• AFP, Apple Filing Protocol
• ASCII, American Standard Code for Information Interchange
• EBCDIC, Extended Binary Coded Decimal Interchange Code
• ICA, Independent Computing Architecture, the Citrix system core protocol
• LPP, Lightweight Presentation Protocol
• NCP, NetWare Core Protocol
• NDR, Network Data Representation
• XDR, eXternal Data Representation
• X.25 PAD, Packet Assembler/Disassembler Protocol
References
[1] http:/ / www. furniss. co. uk/ jtm/ index. html
Session Layer 13
Session Layer
The Session Layer is Layer 5 of the seven-layer OSI model of computer networking.
The Session Layer provides the mechanism for opening, closing and managing a session between end-user
application processes, i.e. a semi-permanent dialogue. Communication sessions consist of requests and responses
that occur between applications. Session Layer services are commonly used in application environments that make
use of remote procedure calls (RPCs).
An example of a Session Layer protocol is the OSI protocol suite Session Layer Protocol, also known as X.225 or
ISO 8327. In case of a connection loss this protocol may try to recover the connection. If a connection is not used for
a long period, the Session Layer Protocol may close it and re-open it. It provides for either full duplex or half-duplex
operation and provides synchronization points in the stream of exchanged messages.[1]
Other examples of Session Layer implementations include Zone Information Protocol (ZIP) – the AppleTalk
protocol that coordinates the name binding process, and Session Control Protocol (SCP) – the DECnet Phase IV
Session Layer protocol.
Within the service layering semantics of the OSI network architecture, the Session Layer responds to service
requests from the Presentation Layer and issues service requests to the Transport Layer.
Services
• Authentication
• Permissions
• Session restoration (checkpointing and recovery)
The Session Layer of the OSI model is responsible for session checkpointing and recovery. It allows information of
different streams, perhaps originating from different sources, to be properly combined or synchronized.
An example application is web conferencing, in which the streams of audio and video must be synchronous to avoid
so-called lip synch problems. Floor control ensures that the person displayed on screen is the current speaker.
Another application is in live TV programs, where streams of audio and video need to be seamlessly merged and
transitioned from one to the other to avoid silent airtime or excessive overlap.
Protocols
• ADSP, AppleTalk Data Stream Protocol
• ASP, AppleTalk Session Protocol
• H.245, Call Control Protocol for Multimedia Communication
• ISO-SP, OSI Session Layer Protocol (X.225, ISO 8327)
• iSNS, Internet Storage Name Service
• L2F, Layer 2 Forwarding Protocol
• L2TP, Layer 2 Tunneling Protocol
• NetBIOS, Network Basic Input Output System
• PAP, Password Authentication Protocol
• PPTP, Point-to-Point Tunneling Protocol
• RPC, Remote Procedure Call Protocol
• RTCP, Real-time Transport Control Protocol
• SMPP, Short Message Peer-to-Peer
• SCP, Secure Copy Protocol
• SSH, Secure Shell
Session Layer 14
See also
• Session (computer science)
References
[1] ITU-T Recommendation X.225 (http:/ / www. itu. int/ rec/ T-REC-X. 225/ en/ )
Transport Layer
In computer networking, the Transport Layer provides end-to-end communication services for applications[1]
within a layered architecture of network components and protocols. The transport layer provides convenient services
such as connection-oriented data stream support, reliability, flow control, and multiplexing.
Transport layers are contained in both the TCP/IP model (RFC 1122),[2] which is the foundation of the Internet, and
the Open Systems Interconnection (OSI) model of general networking. The definitions of the Transport Layer are
slightly different in these two models. This article primarily refers to the TCP/IP model, in which TCP is largely for
a convenient application programming interface to internet hosts, as opposed to the OSI model definition of the
Transport Layer.
The most well-known transport protocol is the Transmission Control Protocol (TCP). It lent its name to the title of
the entire Internet Protocol Suite, TCP/IP. It is used for connection-oriented transmissions, whereas the
connectionless User Datagram Protocol (UDP) is used for simpler messaging transmissions. TCP is the more
complex protocol, due to its stateful design incorporating reliable transmission and data stream services. Other
prominent protocols in this group are the Datagram Congestion Control Protocol (DCCP) and the Stream Control
Transmission Protocol (SCTP).
Services
There are many services that can be optionally provided by a Transport Layer protocol, and different protocols may
or may not implement them.
• Connection-oriented communication: Interpreting the connection as a data stream can provide many benefits to
applications. It is normally easier to deal with than the underlying connection-less models, such as the
Transmission Control Protocol's underlying Internet Protocol model of datagrams.
• Byte orientation: Rather than processing the messages in the underlying communication system format, it is often
easier for an application to process the data stream as a sequence of bytes. This simplification helps applications
work with various underlying message formats.
• Same order delivery: The Network layer doesn't generally guarantee that packets of data will arrive in the same
order that they were sent, but often this is a desirable feature. This is usually done through the use of segment
Transport Layer 15
numbering, with the receiver passing them to the application in order. This can cause head-of-line blocking.
• Reliability: Packets may be lost during transport due to network congestion and errors. By means of an error
detection code, such as a checksum, the transport protocol may check that the data is not corrupted, and verify
correct receipt by sending an ACK or NACK message to the sender. Automatic repeat request schemes may be
used to retransmit lost or corrupted data.
• Flow control: The rate of data transmission between two nodes must sometimes be managed to prevent a fast
sender from transmitting more data than can be supported by the receiving data buffer, causing a buffer overrun.
This can also be used to improve efficiency by reducing buffer underrun.
• Congestion avoidance: Congestion control can control traffic entry into a telecommunications network, so as to
avoid congestive collapse by attempting to avoid oversubscription of any of the processing or link capabilities of
the intermediate nodes and networks and taking resource reducing steps, such as reducing the rate of sending
packets. For example, automatic repeat requests may keep the network in a congested state; this situation can be
avoided by adding congestion avoidance to the flow control, including slow-start. This keeps the bandwidth
consumption at a low level in the beginning of the transmission, or after packet retransmission.
• Multiplexing: Ports can provide multiple endpoints on a single node. For example, the name on a postal address is
a kind of multiplexing, and distinguishes between different recipients of the same location. Computer applications
will each listen for information on their own ports, which enables the use of more than one network service at the
same time. It is part of the Transport Layer in the TCP/IP model, but of the Session Layer in the OSI model.
Analysis
The Transport Layer is responsible for delivering data to the appropriate application process on the host computers.
This involves statistical multiplexing of data from different application processes, i.e. forming data packets, and
adding source and destination port numbers in the header of each Transport Layer data packet. Together with the
source and destination IP address, the port numbers constitutes a network socket, i.e. an identification address of the
process-to-process communication. In the OSI model, this function is supported by the Session Layer.
Some Transport Layer protocols, for example TCP, but not UDP, support virtual circuits, i.e. provide connection
oriented communication over an underlying packet oriented datagram network. A byte-stream is delivered while
hiding the packet mode communication for the application processes. This involves connection establishment,
dividing of the data stream into packets called segments, segment numbering and reordering of out-of order data.
Finally, some Transport Layer protocols, for example TCP, but not UDP, provide end-to-end reliable
communication, i.e. error recovery by means of error detecting code and automatic repeat request (ARQ) protocol.
The ARQ protocol also provides flow control, which may be combined with congestion avoidance.
UDP is a very simple protocol, and does not provide virtual circuits, nor reliable communication, delegating these
functions to the application program. UDP packets are called datagrams, rather than segments.
TCP is used for many protocols, including HTTP web browsing and email transfer. UDP may be used for
multicasting and broadcasting, since retransmissions are not possible to a large amount of hosts. UDP typically gives
higher throughput and shorter latency, and is therefore often used for real-time multimedia communication where
packet loss occasionally can be accepted, for example IP-TV and IP-telephony, and for online computer games.
In many non-IP-based networks, for example X.25, Frame Relay and ATM, the connection oriented communication
is implemented at network layer or data link layer rather than the Transport Layer. In X.25, in telephone network
modems and in wireless communication systems, reliable node-to-node communication is implemented at lower
protocol layers.
The OSI model defines five classes of transport protocols: TP0, providing the least error recovery, to TP4, which is
designed for less reliable networks.
Transport Layer 16
Protocols
The exact definition of what qualifies as a transport layer protocol is not firm. The following is a short list:
• ATP, AppleTalk Transaction Protocol
• CUDP, Cyclic UDP
• DCCP, Datagram Congestion Control Protocol
• FCP, Fiber Channel Protocol
• IL, IL Protocol
• NBF, NetBIOS Frames protocol
• SCTP, Stream Control Transmission Protocol
• SPX, Sequenced Packet Exchange
• SST, Structured Stream Transport
• TCP, Transmission Control Protocol
• UDP, User Datagram Protocol
• UDP Lite
• µTP, Micro Transport Protocol
Reinitiate connection (if an excessive number of PDUs are unacknowledged) No Yes No Yes No
multiplexing and demultiplexing over a single virtual circuit No No Yes Yes Yes
References
[1] RFC 1122, §1.1.3. "The transport layer provides end-to-end communication services for applications."
[2] RFC 1122, Requirements for Internet Hosts -- Communication Layers, IETF, R. Braden (Editor), October 1989
[3] "ITU-T Recommendation X.224 (11/1995) ISO/IEC 8073" (http:/ / www. itu. int/ rec/ T-REC-X. 224-199511-I/ en/ ). .
Network Layer
The Network Layer is Layer 3 of the seven-layer OSI model of computer networking.
The Network Layer is responsible for routing packets delivery including routing through intermediate routers,
whereas the Data Link Layer is responsible for Media Access Control, Flow Control and Error Checking.
The Network Layer provides the functional and procedural means of transferring variable length data sequences
from a source to a destination host via one or more networks while maintaining the quality of service functions.
Functions of the Network Layer include:
• Connection model: connectionless communication
For example, IP is connectionless, in that a frame can travel from a sender to a recipient without the recipient
having to send an acknowledgement. Connection-oriented protocols exist higher at other layers of that model.
• Host addressing
Every host in the network needs to have a unique address which determines where it is. This address will
normally be assigned from a hierarchical system, so you can be "Fred Murphy" to people in your house, "Fred
Murphy, Main Street 1" to Dubliners, or "Fred Murphy, Main Street 1, Dublin" to people in Ireland, or "Fred
Murphy, Main Street 1, Dublin, Ireland" to people anywhere in the world. On the Internet, addresses are
known as Internet Protocol (IP) addresses.
• Message forwarding
Since many networks are partitioned into subnetworks and connect to other networks for wide-area
communications, networks use specialized hosts, called gateways or routers to forward packets between
networks. This is also of interest to mobile applications, where a user may move from one location to another,
and it must be arranged that his messages follow him. Version 4 of the Internet Protocol (IPv4) was not
designed with this feature in mind, although mobility extensions exist. IPv6 has a better designed solution.
Network Layer 18
Within the service layering semantics of the OSI network architecture the Network Layer responds to service
requests from the Transport Layer and issues service requests to the Data Link Layer.
Protocols
• IPv4/IPv6, Internet Protocol
• DVMRP, Distance Vector Multicast Routing Protocol
• ICMP, Internet Control Message Protocol
• IGMP, Internet Group Multicast Protocol
• PIM-SM, Protocol Independent Multicast Sparse Mode
• PIM-DM, Protocol Independent Multicast Dense Mode
• IPsec, Internet Protocol Security
• IPX, Internetwork Packet Exchange
• RIP, Routing Information Protocol
• DDP, Datagram Delivery Protocol
See also
• Datakit
• Router
• DECnet
• AppleTalk
References
• RFC 1122
• RFC 3439
• Tanenbaum, Andrew S. (2003). Computer networks. Upper Saddle River, New Jersey: Prentice Hall.
ISBN 0-13-066102-3.
Network Layer 19
External links
• OSI Reference Model—The ISO Model of Architecture for Open Systems Interconnection [1]PDF (776 KB),
Hubert Zimmermann, IEEE Transactions on Communications, vol. 28, no. 4, April 1980, pp. 425-432.
References
[1] http:/ / www. comsoc. org/ livepubs/ 50_journals/ pdf/ RightsManagement_eid=136833. pdf
Models of communication
• Flow control, in addition to the one provided on the Transport layer. Data link layer error control is not used in
LAN protocols such as Ethernet, but in modems and wireless networks.
• Media access control (MAC) sublayer:
• Multiple access protocols for channel-access control, for example CSMA/CD protocols for collision detection
and retransmission in Ethernet bus networks and hub networks, or the CSMA/CA protocol for collision
avoidance in wireless networks.
• Physical addressing (MAC addressing)
• LAN switching (packet switching) including MAC filtering and spanning tree protocol
• Data packet queueing or scheduling
• Store-and-forward switching or cut-through switching
• Quality of Service (QoS) control
• Virtual LANs (VLAN)
Protocol examples
• ARCnet
• ATM
• Cisco Discovery Protocol (CDP)
• Controller Area Network (CAN)
• Econet
• Ethernet
• Ethernet Automatic Protection Switching (EAPS)
• Fiber Distributed Data Interface (FDDI)
• Frame Relay
• High-Level Data Link Control (HDLC)
• IEEE 802.2 (provides LLC functions to IEEE 802 MAC layers)
• IEEE 802.11 wireless LAN
• Link Access Procedures, D channel (LAPD)
• LocalTalk
• Multiprotocol Label Switching (MPLS)
• Point-to-Point Protocol (PPP)
• Serial Line Internet Protocol (SLIP) (obsolete)
• Spanning tree protocol
• StarLan
• Token ring
• Unidirectional Link Detection (UDLD)
• and most forms of serial communication.
Data Link Layer 22
Interfaces
The Data Link Layer is often implemented in software as a "network card driver". The operating system will have a
defined software interface between the data link and the network transport stack above. This interface is not a layer
itself, but rather a definition for interfacing between layers.
See also
• ODI
• NDIS
• SANA-II - Standard Amiga Networking Architecture, version 2
• S. Tanenbaum, Andrew (2005). Computer Networks (4th Edition ed.). 482,F.I.E., Patparganj, Delhi 110 092:
Dorling Kindersley(India)Pvt. Ltd.,licenses of Pearson Education in South Asia. ISBN 81-7758-165-1.
References
[1] "What is Layer 2, and Why Should You Care?" (http:/ / www. accel-networks. com/ blog/ 2009/ 09/
what-is-layer-2-and-why-should-you-care. html). accel-networks.com. . Retrieved 2009-09-29.
Physical Layer 23
Physical Layer
The Physical Layer is the first and lowest layer in the seven-layer OSI model of computer networking. The
implementation of this layer is often termed PHY.
The Physical Layer consists of the basic hardware transmission technologies of a network. It is a fundamental layer
underlying the logical data structures of the higher level functions in a network. Due to the plethora of available
hardware technologies with widely varying characteristics, this is perhaps the most complex layer in the OSI
architecture.
The Physical Layer defines the means of transmitting raw bits rather than logical data packets over a physical link
connecting network nodes. The bit stream may be grouped into code words or symbols and converted to a physical
signal that is transmitted over a hardware transmission medium. The Physical Layer provides an electrical,
mechanical, and procedural interface to the transmission medium. The shapes and properties of the electrical
connectors, the frequencies to broadcast on, the modulation scheme to use and similar low-level parameters, are
specified here.
Within the semantics of the OSI network architecture, the Physical Layer translates logical communications requests
from the Data Link Layer into hardware-specific operations to affect transmission or reception of electronic signals.
List of services
The major functions and services performed by the Physical Layer are:
• Bit-by-bit or symbol-by-symbol delivery
• Providing a standardized interface to physical transmission media, including
• Mechanical specification of electrical connectors and cables, for example maximum cable length
• Electrical specification of transmission line signal level and impedance
• Radio interface, including electromagnetic spectrum frequency allocation and specification of signal strength,
analog bandwidth, etc.
• Specifications for IR over optical fiber or a wireless IR communication link
• Modulation
• Line coding
• Bit synchronization in synchronous serial communication
• Start-stop signalling and flow control in asynchronous serial communication
• Circuit switching
• Multiplexing
• Establishment and termination of circuit switched connections
• Carrier sense and collision detection utilized by some level 2 multiple access protocols
• Equalization filtering, training sequences, pulse shaping and other signal processing of physical signals
• Forward error correction[2] for example bitwise convolutional coding
• Bit-interleaving and other channel coding
Physical Layer 24
List of protocols
• Telephone network modems- V.92
• IRDA Physical Layer
• USB Physical Layer
• EIA RS-232, EIA-422, EIA-423, RS-449, RS-485
• Ethernet physical layer Including 10BASE-T, 10BASE2, 10BASE5, 100BASE-TX, 100BASE-FX, 100BASE-T,
1000BASE-T, 1000BASE-SX and other varieties
• Varieties of 802.11Wi-Fi Physical Layers
• DSL
• ISDN
• T1 and other T-carrier links, and E1 and other E-carrier links
• SONET/SDH
• Optical Transport Network (OTN)
• GSM Um radio interface physical layer
• Bluetooth Physical Layer
• ITU Recommendations: see ITU-T
• Firewire
• TransferJet Physical Layer
• Etherloop
• ARINC 818 Avionics Digital Video Bus
• G.hn/G.9960 Physical Layer
See also
• Clock recovery
• Ethernet physical layer
• Data transmission
• Digital communication
• Digital modulation
• Line code
• Pulse shaping
• Bit synchronization
• Channel model
References
[1] This article incorporates public domain material from the General Services Administration document "Federal Standard 1037C" (http:/ /
www. its. bldrdoc. gov/ fs-1037/ fs-1037c. htm).
[2] Bersekas, Dimitri; Gallager, Robert (1992). Data Networks. Prentice Hall. p. 61. ISBN 0-13-200916-1.
External links
• http://www.erg.abdn.ac.uk/users/gorry/course/phy-pages/phy.html
• http://www.tcpipguide.com/free/t_PhysicalLayerLayer1.htm
History
The Internet Protocol Suite resulted from research and development conducted by the Defense Advanced Research
Projects Agency (DARPA) in the early 1970s. After initiating the pioneering ARPANET in 1969, DARPA started
work on a number of other data transmission technologies. In 1972, Robert E. Kahn joined the DARPA Information
Processing Technology Office, where he worked on both satellite packet networks and ground-based radio packet
networks, and recognized the value of being able to communicate across both. In the spring of 1973, Vinton Cerf, the
developer of the existing ARPANET Network Control Program (NCP) protocol, joined Kahn to work on
Internet Protocol Suite 26
open-architecture interconnection models with the goal of designing the next protocol generation for the ARPANET.
By the summer of 1973, Kahn and Cerf had worked out a fundamental reformulation, where the differences between
network protocols were hidden by using a common internetwork protocol, and, instead of the network being
responsible for reliability, as in the ARPANET, the hosts became responsible. Cerf credits Hubert Zimmerman and
Louis Pouzin, designer of the CYCLADES network, with important influences on this design.
The design of the network included the recognition that it should provide only the functions of efficiently
transmitting and routing traffic between end nodes and that all other intelligence should be located at the edge of the
network, in the end nodes. Using a simple design, it became possible to connect almost any network to the
ARPANET, irrespective of their local characteristics, thereby solving Kahn's initial problem. One popular expression
is that TCP/IP, the eventual product of Cerf and Kahn's work, will run over "two tin cans and a string."
A computer called a router (a name changed from gateway to avoid confusion with other types of gateways) is
provided with an interface to each network, and forwards packets back and forth between them. Requirements for
routers are defined in (Request for Comments 1812).[3]
The idea was worked out in more detailed form by Cerf's networking research group at Stanford in the 1973–74
period, resulting in the first TCP specification.(Request for Comments 675) [4] (The early networking work at Xerox
PARC, which produced the PARC Universal Packet protocol suite, much of which existed around the same period of
time, was also a significant technical influence; people moved between the two.)
DARPA then contracted with BBN Technologies, Stanford University, and the University College London to
develop operational versions of the protocol on different hardware platforms. Four versions were developed: TCP
v1, TCP v2, a split into TCP v3 and IP v3 in the spring of 1978, and then stability with TCP/IP v4 — the standard
protocol still in use on the Internet today.
In 1975, a two-network TCP/IP communications test was performed between Stanford and University College
London (UCL). In November, 1977, a three-network TCP/IP test was conducted between sites in the US, UK, and
Norway. Several other TCP/IP prototypes were developed at multiple research centres between 1978 and 1983. The
migration of the ARPANET to TCP/IP was officially completed on January 1, 1983, when the new protocols were
permanently activated.[5]
In March 1982, the US Department of Defense declared TCP/IP as the standard for all military computer
networking.[6] In 1985, the Internet Architecture Board held a three day workshop on TCP/IP for the computer
industry, attended by 250 vendor representatives, promoting the protocol and leading to its increasing commercial
use.
The functional groups of protocols and methods are the Application Layer, the Transport Layer, the Internet Layer,
and the Link Layer (RFC 1122). This model was not intended to be a rigid reference model into which new protocols
have to fit in order to be accepted as a standard.
The following table provides some examples of the protocols grouped in their respective layers.
Application DNS, TFTP, TLS/SSL, FTP, Gopher, HTTP, IMAP, IRC, NNTP, POP3, SIP, SMTP, SMPP, SNMP, SSH, Telnet, Echo, RTP,
PNRP, rlogin, ENRP
Routing protocols like BGP and RIP which run over TCP/UDP, may also be considered part of the Internet Layer.
OSPF for IPv4 was initially considered IP layer protocol since it runs per IP-subnet, but has been placed on the Link since RFC 2740.
[15] Four layers Five layers Four+one layers Five layers Three layers
Four layers Four layers
[14]
"Internet "Internet "Five-layer Internet "TCP/IP 5-layer "TCP/IP model" "Arpanet reference model"
"TCP/IP reference
model" [16] model" model" or "TCP/IP reference model"
model"
protocol suite"
[14] Host-to-network Network Data link Data link (Network Network access Network interface
Link
interface interface)
These textbooks are secondary sources that may contravene the intent of RFC 1122 and other IETF primary
sources.[18]
Different authors have interpreted the RFCs differently regarding the question whether the Link Layer (and the
TCP/IP model) covers Physical Layer issues, or if a hardware layer is assumed below the Link Layer. Some authors
have tried to use other names for the Link Layer, such as network interface layer, in view to avoid confusion with the
Data Link Layer of the seven layer OSI model. Others have attempted to map the Internet Protocol model onto the
OSI Model. The mapping often results in a model with five layers where the Link Layer is split into a Data Link
Layer on top of a Physical Layer. In literature with a bottom-up approach to Internet communication,[10] [11] [13] in
which hardware issues are emphasized, those are often discussed in terms of Physical Layer and Data Link Layer.
The Internet Layer is usually directly mapped into the OSI Model's Network Layer, a more general concept of
network functionality. The Transport Layer of the TCP/IP model, sometimes also described as the host-to-host layer,
is mapped to OSI Layer 4 (Transport Layer), sometimes also including aspects of OSI Layer 5 (Session Layer)
functionality. OSI's Application Layer, Presentation Layer, and the remaining functionality of the Session Layer are
collapsed into TCP/IP's Application Layer. The argument is that these OSI layers do usually not exist as separate
processes and protocols in Internet applications.
However, the Internet protocol stack has never been altered by the Internet Engineering Task Force from the four
layers defined in RFC 1122. The IETF makes no effort to follow the OSI model although RFCs sometimes refer to
it. The IETF has repeatedly stated that Internet protocol and architecture development is not intended to be
OSI-compliant.
RFC 3439, addressing Internet architecture, contains a section entitled: "Layering Considered Harmful".[18]
Implementations
Most computer operating systems in use today, including all consumer-targeted systems, include a TCP/IP
implementation.
Minimally acceptable implementation includes implementation for (from most essential to the less essential) IP,
ARP, ICMP, UDP, TCP and sometime IGMP. It is in principle possible to support only one of transport protocols
(i.e. simple UDP), but it is rarely done, as it limits usage of the whole implementation. IPv6, beyond own version of
ARP (NBP), and ICMP (ICMPv6), and IGMP (IGMPv6) have some additional required functionalities, and often is
accompanied with integrated IPSec security layer. Other protocols could be easily added later (often they can be
implemented entirely in the userspace), for example DNS for resolving domain names to IP addresses or DHCP
client for automatic configuration of network interfaces.
Most of the IP implementations are accessible to the programmers using socket abstraction (usable also with other
protocols) and proper API for most of the operations. This interface is known as BSD sockets and was used initially
in C.
Unique implementations include Lightweight TCP/IP, an open source stack designed for embedded systems and
KA9Q NOS, a stack and associated protocols for amateur packet radio systems and personal computers connected
via serial lines.
Internet Protocol Suite 29
See also
• List of network protocols
• List of automation protocols
• List of TCP and UDP port numbers
• FLIP (Fast-Local-Internet-Protocol) another stack
References
[1] RFC 1122, Requirements for Internet Hosts -- Communication Layers, R. Braden (ed.), October 1989
[2] RFC 1123, Requirements for Internet Hosts -- Application and Support, R. Braden (ed.), October 1989
[3] Baker, Fred, ed (June 1995). Requirements for IP Version 4 Routers (http:/ / tools. ietf. org/ html/ rfc1812). Internet Engineering Task Force,
Network Working Group. Request for Comments 1812. . Retrieved 2009-09-22
[4] V.Cerf et al. (December 1974). "Specification of Internet Transmission Control Protocol" (http:/ / www. ietf. org/ rfc/ rfc0675. txt). .
[5] Internet History (http:/ / www. livinginternet. com/ i/ ii. htm)
[6] Ronda Hauben. "From the ARPANET to the Internet" (http:/ / www. columbia. edu/ ~rh120/ other/ tcpdigest_paper. txt). TCP Digest
(UUCP). . Retrieved 2007-07-05.
[7] IETF, RFC 1122, p.7, "To communicate using the Internet system, a host must implement the layered set of protocols comprising the Internet
protocol suite. A host typically must implement at least one protocol from each layer."
[8] Mark Dye, Mark A. Dye, Wendell, Network Fundamentals: CCNA Exploration Companion Guide, 2007, ISBN 1-58713-208-7
[9] James F. Kurose, Keith W. Ross, Computer Networking: A Top-Down Approach, 2008, ISBN 0-321-49770-8 (http:/ / www.
pearsonhighered. com/ educator/ academic/ product/ 0,,0321497708,00+ en-USS_01DBC. html)
[10] Behrouz A. Forouzan, Data Communications and Networking (http:/ / books. google. com/ books?id=U3Gcf65Pu9IC&
printsec=frontcover& dq=forouzan+ "computer+ networks"& ei=RPZ9SOCvMofctAO02di0AQ& hl=en&
sig=ACfU3U2Hh_n83pPtf5uCreCih0HnWvNcxg#PPA29,M1)
[11] Douglas E. Comer, Internetworking with TCP/IP: Principles, Protocols and Architecture, Pearson Prentice Hall 2005, ISBN 0-13-187671-6
(http:/ / books. google. com/ books?id=jonyuTASbWAC& pg=PA155& hl=sv& source=gbs_toc_r& cad=0_0&
sig=ACfU3U18gHAia1pU_Pxn-rhkCnH1v70M6Q#PPA161,M1)
[12] Charles M. Kozierok, "The TCP/IP Guide", No Starch Press 2005 (http:/ / books. google. com/ books?id=Pm4RgYV2w4YC& pg=PA131&
dq="TCP/ IP+ model+ layers"& lr=& hl=sv& sig=ACfU3U3ofMwYAbZfGz1BmAXc2oNNFC2b8A#PPA129,M1)
[13] William Stallings, Data and Computer Communications, Prentice Hall 2006, ISBN 0-13-243310-9 (http:/ / books. google. com/
books?id=c_AWmhkovR0C& pg=PA35& dq="internet+ layer"+ "network+ access+ layer"& ei=-O99SI3EJo32sgOQpPThDw& hl=en&
sig=ACfU3U38aXznzeAnQdbLcPFXfCgxAd4lFg)
[14] IETF, RFC 1122, p.7-8, "The protocol layers [...] are as follows [...]:[...] Application Layer [...] Transport Layer [...] Internet Layer [...] Link
Layer"
[15] Andrew Tanenbaum, Computer Networks, section 1.4.3, "[...] the OSI model has seven layers and the TCP/IP has four layers."
[16] Tanenbaum, Andrew S. (2002). Computer Networks. Prentice Hall. p. 41. ISBN 0130661023. "1.4.2 The TCP/IP Reference Model" Excerpt
at Google Books (http:/ / books. google. com/ books?id=Pd-z64SJRBAC& pg=PA42& vq=internet+ layer& dq=networks& hl=sv&
source=gbs_search_s& sig=ACfU3U3DHANeIz0sOsd5NK4VXSrgNFYVAw#PPA42,M1)
[17] IETF, RFC 1122, p.8, "The application layer is the top layer of the Internet protocol suite."
[18] R. Bush; D. Meyer (December 2002). Some Internet Architectural Guidelines and Philosophy (http:/ / www. isi. edu/ in-notes/ rfc3439. txt).
Internet Engineering Task Force. . Retrieved 2007-11-20
Further reading
• Douglas E. Comer. Internetworking with TCP/IP - Principles, Protocols and Architecture. ISBN 86-7991-142-9
• Joseph G. Davies and Thomas F. Lee. Microsoft Windows Server 2003 TCP/IP Protocols and Services. ISBN
0-7356-1291-9
• Forouzan, Behrouz A. (2003). TCP/IP Protocol Suite (2nd ed.). McGraw-Hill. ISBN 0-07-246060-1.
• Craig Hunt TCP/IP Network Administration. O'Reilly (1998) ISBN 1-56592-322-7
• Maufer, Thomas A. (1999). IP Fundamentals. Prentice Hall. ISBN 0-13-975483-0.
• Ian McLean. Windows(R) 2000 TCP/IP Black Book. ISBN 1-57610-687-X
• Ajit Mungale Pro .NET 1.1 Network Programming. ISBN 1-59059-345-6
• W. Richard Stevens. TCP/IP Illustrated, Volume 1: The Protocols. ISBN 0-201-63346-9
Internet Protocol Suite 30
• W. Richard Stevens and Gary R. Wright. TCP/IP Illustrated, Volume 2: The Implementation. ISBN
0-201-63354-X
• W. Richard Stevens. TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP, and the UNIX Domain
Protocols. ISBN 0-201-63495-3
• Andrew S. Tanenbaum. Computer Networks. ISBN 0-13-066102-3
• David D. Clark, "The Design Philosophy of the DARPA Internet Protocols" (http://groups.csail.mit.edu/ana/
Publications/PubPDFs/The design philosophy of the DARPA internet protocols.pdf), Computer
Communications Review 18:4, August 1988, pp. 106–114
External links
• Internet History (http://www.livinginternet.com/i/ii.htm) -- Pages on Robert Kahn, Vinton Cerf, and TCP/IP
(reviewed by Cerf and Kahn).
• RFC 675 (http://www.ietf.org/rfc/rfc0675.txt) - Specification of Internet Transmission Control Program,
December 1974 Version
• TCP/IP State Transition Diagram (http://www.night-ray.com/TCPIP_State_Transition_Diagram.pdf) (PDF)
• RFC 1180 A TCP/IP Tutorial - from the Internet Engineering Task Force (January 1991)
• TCP/IP FAQ (http://www.itprc.com/tcpipfaq/)
• TCP/IP Resources List (http://www.private.org.il/tcpip_rl.html)
• The TCP/IP Guide (http://www.tcpipguide.com/free/) - A comprehensive look at the protocols and the
procedures/processes involved
• A Study of the ARPANET TCP/IP Digest (http://www.columbia.edu/~rh120/other/tcpdigest_paper.txt)
• TCP/IP Sequence Diagrams (http://www.eventhelix.com/RealtimeMantra/Networking/)
• The Internet in Practice (http://www.searchandgo.com/articles/internet/internet-practice-4.php)
• TCP/IP - Directory & Informational Resource (http://softtechinfo.com/network/tcpip.html)
• Daryl's TCP/IP Primer (http://www.ipprimer.com) - Intro to TCP/IP LAN administration, conversational style
• Introduction to TCP/IP (http://www.linux-tutorial.info/MContent-142)
• TCP/IP commands from command prompt (http://blog.webgk.com/2007/10/
dns-tcpip-commands-from-command-prompt.html)
• cIPS (http://sourceforge.net/projects/cipsuite/) — Robust TCP/IP stack for embedded devices without an
Operating System
• TCP Server Client Program using Python (http://pal-subbiah.spaces.live.com/blog/)
Article Sources and Contributors 31
Application Layer Source: http://en.wikipedia.org/w/index.php?oldid=389551543 Contributors: AS, Ahoerstemeier, AlistairMcMillan, Amillar, AndyHedges, Arunachalammanohar,
Ashdurbat, B4hand, Brest, Butko, ChazBeckett, Cradel, DDR2Nite, DIonized, DeweyQ, Dogcow, Dominio, Eimsand, Ejabberd, ElKevbo, Enjoi4586, Fctoma, Frap, Fredrik, Geozapf, GermanX,
Gilliam, Graham87, GrapeSteinbeck, Grapht, Gruzd, Harryboyles, Hawaiiboy99, Hede2000, Honcw, Hrvoje Simic, Hu12, Ipahophead, IvanLanin, James smith2, Jamie, Jauerback, Jaybeeunix,
Jaymcjay, Jerome Charles Potts, Jnc, Johnuniq, Jorunn, Kbrose, Kbthompson, Kesac, Lababidi, LiDaobing, Looxix, Lost.goblin, Lulu of the Lotus-Eaters, Lysdexia, Mange01, MartinHarper,
MattieTK, Mfloryan, Mhby87, Minesweeper, Morte, Mwtoews, Nhorton, Night Gyr, Nixdorf, Orphan Wiki, Oxymoron83, Panarchy, Pgallert, Reconsider the static, RedWolf, Rich Farmbrough,
Rserpool, SatyrTN, Schlesselman, ScottDavis, Squideshi, Stephan Leeds, Suruena, Template namespace initialisation script, Tmopkisn, Useight, West.andrew.g, Wisamsafi, Wknight94,
Wmasterj, Yacht, Yerpo, Zac439, Zfr, ديسلا ىفطصم دمحأ, 144 anonymous edits
Presentation Layer Source: http://en.wikipedia.org/w/index.php?oldid=387634468 Contributors: ACSE, Alan Pascoe, AlistairMcMillan, Anon lynx, Arastcp, B4hand, Bkell, Borgx, Butko,
CyborgTosser, Danielcohn, Dgtsyb, Digisus, EagleOne, Enjoi4586, Facuq, FelipeVargasRigo, Francs2000, Gmlk, Guy Harris, Hede2000, Hetar, Itai, James smith2, Jelsova, Jengelh, Jnc, Jotel,
Kbrose, Keegscee, Khendon, Kremso, LiDaobing, Looxix, MartinHarper, Michael Hardy, Modster, Nisiguti, Orderud, Ravensun, RedWolf, Rjgodoy, SatyrTN, ScottDavis, Sdfisher, Shanes,
Stdazi, Template namespace initialisation script, Timsk, Ugur Basak, Underpants, Widefox, Yacht, 60 anonymous edits
Session Layer Source: http://en.wikipedia.org/w/index.php?oldid=389152912 Contributors: Alan.tate, Aldie, AlistairMcMillan, Arastcp, Bettia, Borgx, Btornado, Butko, Conti, Danielcohn,
Dgtsyb, Digisus, Dontopenyoureyes, Eleassar, Enjoi4586, FelipeVargasRigo, Fred Bradstadt, GLaDOS, Gbeeker, Giftlite, Guy Harris, Hede2000, J.Tame, JHolman, James smith2, Jamesooders,
Jll, Jonathan Drain, Kbrose, Kris Schnee, LFaraone, LOLEDITING, LiDaobing, Looxix, Mange01, MartinHarper, Mav, MementoVivere, Nisiguti, Oli Filth, Pilif12p, RedWolf, Rick Sidwell,
SatyrTN, ScottDavis, Shiro jdn, Stdazi, Template namespace initialisation script, Tinnitus97, Tobias Conradi, Underpants, Widefox, Yacht, 58 anonymous edits
Transport Layer Source: http://en.wikipedia.org/w/index.php?oldid=389950337 Contributors: 1ForTheMoney, Adoniscik, Alansohn, Aldie, AlistairMcMillan, Altenmann, Alvestrand, Andrew
Hampe, Andreyf, BenBreen2003, Bigmantonyd, Borgx, Brettmeyers, Butko, Butlerm, Choudesh, Conan, Costello, Dgreen34, Dgtsyb, Eggnock, Enjoi4586, FatalError, Fmunshi, Fred Bradstadt,
Gavinatkinson, GermanX, Giftlite, Guy Harris, Hadal, Hede2000, Hullbr3ach, Imcdnzl, Int21h, Ipatrol, J.delanoy, JHolman, Jec, Jimfbleak, Jnc, Johnuniq, Kadin2048, Kbrose, Kingpin13,
Kungfuadam, Kwi, LiDaobing, Limbo socrates, Looxix, Lost.goblin, MTC, Mange01, Marcan, MartinHarper, Mirv, Mmmready, Nealmcb, Nixdorf, Ovy, Phantomsteve, Phatom87, PrologFan,
Razorflame, Retroguy90, Rmhermen, Robth, Samjoopin, SatyrTN, ScottDavis, Suffusion of Yellow, Suruena, Tcmcfaul, Template namespace initialisation script, Tpvibes, Vipinhari, Wmasterj,
Yacht, Yyy, Zac439, ZeroOne, Zoicon5, 120 anonymous edits
Network Layer Source: http://en.wikipedia.org/w/index.php?oldid=384407933 Contributors: Abhi 4442003, Adrian M. H., Alfio, Arastcp, Arunachalammanohar, Bendykst, Borgx, Butko,
Capricorn42, Colin Marquardt, Crawdaddio, Dgtsyb, Digisus, Dominio, Dribbleboy, Dthomsen8, Egret, ElKevbo, Enchanter, Enjoi4586, Enochlau, Epbr123, Feezo, Fredrik, Giftlite, Goatasaur,
Gouldja, GringoCroco, Haakon, Hede2000, Immibis, Infrogmation, JCWilson, James smith2, Jgiam, Jnc, Jorge Stolfi, Josh Parris, Karih, Kbrose, Lankiveil, Looxix, Mange01, Mark7-2,
MartinHarper, Mhby87, Muhandes, Nathan Hamblen, Niteowlneils, Nixdorf, Oscarthecat, Pepsi Lite, QuadrivialMind, RazorICE, Rick Sidwell, RobertMfromLI, SatyrTN, ScottDavis, Strake,
Template namespace initialisation script, Tompagenet, Widefox, Yacht, Zac439, 113 anonymous edits
Data Link Layer Source: http://en.wikipedia.org/w/index.php?oldid=384539507 Contributors: 1000Faces, 3DS Mike, AAA!, AGruntsJaggon, Aldie, AlexandriNo, Alfio, Amillar, Angela,
Arastcp, B4hand, Barri, BigDunc, Blehfu, Butko, Cahoover, Canterbury Tail, Casey Abell, DanMS, DavidABraun, Dddddd2w32, Dgtsyb, Diogenes00, Docu, Dominio, Eekoo, Egil, Ehn, Ember
of Light, Enjoi4586, Excirial, Falkonry, Gasheadsteve, Giftlite, Guy Harris, Hadal, Hede2000, Ibarrere, Intgr, Invictus42, Itusg15q4user, J.delanoy, James smith2, Jmkim dot com, Kannadigahavi,
Kbrose, Ken l lee, Konstable, Kubanczyk, Lawrence Cohen, Looxix, Luís Felipe Braga, Mange01, Martijn Hoekstra, MartinHarper, Mathieumcguire, Michael Hardy, Mlpearc, Nixdorf,
Nolispanmo, Numa, Oli Filth, Philip Trueman, Plasticup, Playstationman, Rabarberski, Ravensun, RedWolf, Remember the dot, Rick Sidwell, SatyrTN, ScottDavis, Shanel, Shiro jdn, Sin-man,
SirPavlova ♥, SpaceFlight89, Stdazi, Suruena, Talinus, Template namespace initialisation script, TexasAndroid, TheFeds, Thierryc, Tide rolls, Timo Honkasalo, Tomchiukc, TripleF, Turian,
TutterMouse, Udunuwara, Webgeek, Weregerbil, Why Not A Duck, Widefox, Willy on Wheels over Ethernet, Wplacek, Yacht, Yyy, ZeWrestler, Zfr, 155 anonymous edits
Physical Layer Source: http://en.wikipedia.org/w/index.php?oldid=390284084 Contributors: 1exec1, AGruntsJaggon, Acdx, Alai, Alfio, Amaurea, Amillar, Amire80, Arastcp, Arnero, BertK,
BjKa, Borgx, Bouquet, Brest, Butko, CONFIQ, CanadianLinuxUser, Carl.bunderson, Chriscandy, Clovis Sangrail, CosineKitty, DerHexer, Deville, Dgtsyb, Dicklyon, Digisus, Dkovacs,
Dominio, Drieken, Dtgm, Eastlaw, EdH, Emperorbma, Enjoi4586, Epbr123, Europrobe, Extraordinary, Fahidka, Gary63, Gerixau, Giftlite, Giraffedata, Grafen, Grassynoel, Grendelkhan, Guy
Harris, Harobikes34, Harp, Hede2000, Hetar, Hosterweis, IMC Networks, Iain99, Ibarrere, ImpossibleEcho, IntrigueBlue, Itai, Itpastorn, Itusg15q4user, James smith2, John Silvestri, Johnuniq,
Article Sources and Contributors 32
Jredmond, Kaaveh Ahangar, Kbrose, KelleyCook, Kevin Rector, Kremso, Kubanczyk, Lawrence Cohen, Linkminer, Looxix, Luckyherb, Mange01, Marianocecowski, Marketsnipers,
MartinHarper, Mhby87, Mlewis000, Mosca, Nbarth, Nubiatech, NyAp, Pepsi Lite, Phantasee, Phoenix-forgotten, RexNL, Rick Sidwell, RockMFR, Rwwww, SatyrTN, Savannah Kaylee,
Scootey, ScottDavis, Shashiranjan18, Sietse Snel, Slamminheads, Stdazi, Ta bu shi da yu, Tagishsimon, Template namespace initialisation script, TimothyJKeller, Tomchiukc, Tsuite, UU,
Underpants, Violask81976, Welsley, Widefox, Yacht, Yyy, 142 anonymous edits
Internet Protocol Suite Source: http://en.wikipedia.org/w/index.php?oldid=390277898 Contributors: 130.243.79.xxx, 203.109.250.xxx, 213.253.39.xxx, 66.169.238.xxx, A8UDI, Aapo
Laitinen, Abdull, Abdullais4u, Acceptus, Acroterion, Ahoerstemeier, Albanaco, Aldie, AliMaghrebi, Aliasptr, Alireza.usa, AlistairMcMillan, Amungale, Ana Couto, Anna Lincoln, Anororn,
Arcenciel, ArchonMagnus, Arteitle, ArticCynda, Avant Guard, Axcess, AxelBoldt, B4hand, Barberio, Barnacle157, Bender235, Bernard François, Betterworld, Bezenek, Bhavin, Biot,
Bloodshedder, Bmicomp, Branko, Brian.fsm, Brion VIBBER, Camw, Canthusus, CaptainVindaloo, Carnildo, Casey Abell, Cate, Cburnett, Chadernook, Cheesycow5, Ckatz, Coasting,
Conversion script, Coolcaesar, Ctm314, Cynthia Rhoads, DARTH SIDIOUS 2, Damian Yerrick, Daniel Staal, DanielCD, Darkhalfactf, DavidDW, DavidDouthitt, DerekLaw, Dgtsyb, Dmeranda,
Dnas, Dogcow, Doradus, Dorgan65, Doug Bell, Drphilharmonic, Duffman, EagleOne, Ed g2s, Edmilne, Edward, Edwardando, Eeekster, Ekashp, Ellywa, Elwood j blues, EncMstr, Enjoi4586,
Epbr123, Eptin, Equendil, Ericl234, Erik Sandberg, Ethanthej, Etu, Evil Monkey, Evil saltine, Expensivehat, Falcon9x5, Ferkelparade, Fixman88, Fr34k, Freyr, GaelicWizard, Geneb1955,
Gilliam, Glane23, Glenn, Globemasterthree, Golbez, GordonMcKinney, Graham87, Gringo.ch, Gsl, Guy Harris, Haakon, Hadal, Hairy Dude, HarisM, Hcberkowitz, Headbomb, Helix84, Here,
Hoary, Holylampposts, Hpnguyen83, Hyad, IMSoP, Ilario, Imcdnzl, Imran, Indeterminate, Inhumandecency, Inomyabcs, Intgr, Itai, J.delanoy, JTN, Jackqu7, James Mohr, JamesBWatson,
Jantangring, Jatkins, JesterXXV, Jimp, Jmdavid1789, Jnc, Joanjoc, John Vandenberg, Johnblade, JonHarder, Jorunn, Jrogern, Jsoon eu, Jusdafax, JustAGal, KYPark, Kaare, Kasperd, Kbrose,
Kim Bruning, KnowledgeOfSelf, Konman72, Koyaanis Qatsi, Krauss, Krellis, Kungming2, Kusma, Kvng, Kyng, Labongo, Larree, Law, Layer, Leapfrog314, Lee Carre, Logictheo, Lova Falk,
Luna Santin, Magister Mathematicae, Maltest, Mandarax, Mange01, Manop, Marcika, Martyman, Martyvis, Master Conjurer, Matt Dunn, Mattbrundage, Matthew Woodcraft, Matusz, Mav,
Mckoss, Mendel, Merlissimo, Metaclassing, Michael Hardy, Miles, MilesMi, Mintguy, Mrzaius, Mukkakukaku, Mwarren us, Mzje, NMChico24, Nasz, Navedahmed123, NawlinWiki,
Nealcardwell, Nealmcb, NewEnglandYankee, Ngriffeth, Nhorton, Nick C, Niteowlneils, Nivix, Nixdorf, Nknight, Nmacu, Nubiatech, Nv8200p, Obradovic Goran, Oheckmann, Olathe, Otets,
OttoTheFish, Oxwil, Oxymoron83, Palfrey, Papadopa, Patilravi1985, Paul, Paul Koning, Paulkramer, Peripitus, Pfalstad, Pharaoh of the Wizards, Phgao, Piano non troppo, PioM, Plugwash,
Pokeywiz, Poslfit, Pps, Public Menace, Punjabi101, Quinxorin, R'n'B, RaNo, Radagast83, Ramnath R Iyer, Rayward, RedWolf, Reliablesources, RevRagnarok, Rich Farmbrough, Rich257,
Richardwhiuk, Rick Block, Rick Sidwell, Rjd0060, Rjwilmsi, RobEby, RobertG, RobertL30, Roberta F., Robost, Rodeosmurf, Ross Fraser, Rrelf, Rserpool, Runis57, Ruthherrin, SJP, STHayden,
SWAdair, Samjoopin, SasiSasi, Sheldrake, Shii, Shiraun, Shiro jdn, Shizhao, Sietse Snel, Sjakkalle, Skullketon, Smartse, Snaxe920, Spmion, Stefan Milosevski, Stephan Leeds, Stephenb, Sully,
SuperWiki, Suruena, Svick, Swhitehead, Swpb, Ta bu shi da yu, Tagishsimon, Tarquin, Techpro30, Template namespace initialisation script, Tfl, That Guy, From That Show!, Thatguyflint, The
Anome, The Nut, TheOtherJesse, Theresa knott, Thingg, Thumperward, Thunderboltz, Thw1309, Tide rolls, Tim Watson, Timwi, TinaSDCE, Tmaufer, Tmchk, Tobias Hoevekamp, TomPhil,
Tr606, Tyler, Typhoon, Ukexpat, Unyoyega, Vanis314, Victor Liu, Violetriga, Wadamja, Waggers, Weregeek, Weylinp, Whereizben, Wiki104, Wikid77, Wikiklrsc, William Avery, Wimt,
Wolfkeeper, Wonderstruck, Wrs1864, XJamRastafire, Xeesh, Xosé, Yakudza, Yas, Ydalal, Yudiweb, ZNott, Zac439, Zeerak88, Zfr, Zigger, Zoicon5, Zondor, Zundark, ^demon, يتوص تاش, 719
anonymous edits
Image Sources, Licenses and Contributors 33
License
Creative Commons Attribution-Share Alike 3.0 Unported
http:/ / creativecommons. org/ licenses/ by-sa/ 3. 0/