PERIOR UNIVERSITY
COMPUTER MBA Professional Section X Session 2007-09
KHALID AZEEM
8257
What is a protocol?
1
S A protocol is a standard method that enables communication between processes (possibly running on different machines), which is a set of rules and procedures for sending and receiving data over a network. There are several depending on what is expected of communication. Some protocols will be for example specializing in the exchange of files (FTP), others can be used to manage the state of the transmission and errors (in the case of the ICMP), ... On the Internet, the protocols used are part of a suite of protocols; a set of protocols connected them. This suite of protocol called TCP / IP. It contains, among other things, the following protocols:
Common protocols • • • • • • • • • • •
IP (Internet Protocol) UDP (User Datagram Protocol) TCP (Transmission Control Protocol) DHCP (Dynamic Host Configuration Protocol) HTTP (Hypertext Transfer Protocol) FTP (File Transfer Protocol) Telnet (Telnet Remote Protocol) SSH (Secure Shell Remote Protocol) POP3 (Post Office Protocol 3) SMTP (Simple Mail Transfer Protocol) IMAP (Internet Message Access Protocol)
Protocols oriented and non-connection-oriented One class protocols generally into two categories depending on the level of checking data that we want: •
•
The connection-oriented protocols: These protocols operating control for the transmission of data over a communication between two machines. In such a scheme, the machine sends receiving acknowledgments when communicating, and the machine issuing guarantees the validity of the data it sends. The data are sent in the form of a stream. TCP is a connection-oriented protocol The connection-oriented protocols: This is a mode of communication in which the machine transmitter sends data without
2
warning the machine receiving, and receiving the machine receives the data without sending notice of receipt of the first. The data are sent in the form of blocks (datagram). UDP is a non-connectionoriented protocol Protocol implementation
A protocol defines only for how the machines should, ie the form and sequence data to be exchanged. A protocol on the other hand does not define how to program software in such a way as to make it compatible with the protocol. We call the translation and implementation of a protocol language. The specifications of the protocols are never complete, as it is common implementations are subject to some interpretation of specifications, which sometimes leads to the specificities of certain implementations or worse at the incompatibilities or security holes! Tips & Tricks relevant found in the knowledge base 26/08 14h56
The protocol BitTorrent
BitTorrent
14/03 17h19
Protocol IPX / SPX in Vista
Windows Vista
19/05 14h28
LAN and Internet Connection Sharing
Networks
17/01 11:35
Raise / check box or hotmail account MSN
Microsoft Outlook
27/12 01h17
The KDE applications
KDE
15/05 15h42
Associations of files on Windows Vista
Windows Vista
04/06 23:07
Installing NX Server
Ubuntu
17/01 12:21
Server said: 554 Access denied (0x800CCC79)
Microsoft Outlook
29/03 10:38
CMOS CHECKSUM FAILURE
BIOS
22/04 00h43
Managing remote files via FTP (win)
FTP
Importance The widespread use and expansion of communications protocols is both a prerequisite to the Internet, and a major contributor to its power and success. The pair of Internet Protocol (or IP) and Transmission Control Protocol (or TCP) are the most important of these, and the term TCP/IP refers to a collection (or protocol suite) of its most used protocols. Most of the 3
Internet's communication protocols are described in the RFC documents of the Internet Engineering Task Force (or IETF). Object-oriented programming has extended the use of the term to include the programming protocols available for connections and communication between objects. Generally, only the simplest protocols are used alone. Most protocols, especially in the context of communications or networking, are layered together into protocol stacks where the various tasks listed above are divided among different protocols in the stack. Whereas the protocol stack denotes a specific combination of protocols that work together, a reference model is a software architecture that lists each layer and the services each should offer. The classic seven-layer reference model is the OSI model, which is used for conceptualizing protocol stacks and peer entities. This reference model also provides an opportunity to teach more general software engineering concepts like hiding, modularity, and delegation of tasks. This model has endured in spite of the demise of many of its protocols (and protocol stacks) originally sanctioned by the ISO. The OSI model is not the only reference model however. Typical properties It is difficult to generalize about protocols because they vary so greatly in purpose and sophistication. Most protocols specify one or more of the following properties: • • • • • • • •
Detection of the underlying physical connection (wired or wireless), or the existence of the other endpoint or node Handshaking Negotiation of various connection characteristics How to start and end a message How to format a message What to do with corrupted or improperly formatted messages (error correction) How to detect unexpected loss of the connection, and what to do next Termination of the session or connection.
4
Communications protocol In the field of telecommunications, a communications protocol is the set of standard rules for data representation, signalling, authentication and error detection required to send information over a communications channel. An example of a simple communications protocol adapted to voice communication is the case of a radio dispatcher talking to mobile stations. The communication protocols for digital computer network communication have many features intended to ensure reliable interchange of data over an imperfect communication channel. Communication protocol is basically following certain rules so that the system works properly
Network protocols This is an incomplete list of individual network protocols, categorized by their nearest OSI model layers. Contents [hide]
•
1 Layer 1 protocols (Physical layer) 2 Layer 2 protocols (Data link layer) 3 Layer 2+3 protocols 4 Layer 3 protocols (Network layer) 5 Layer 3+4 protocols 6 Layer 4 protocols (Transport layer) 7 Layer 5 protocols (Session layer) 8 Layer 7 protocols (Application layer) 9 Protocol description languages 10 Other protocols
•
11 External links
• • • • • • • • •
Layer 1 protocols (Physical layer) ISDN Integrated Services Digital Network PDH Plesiochronous Digital Hierarchy o T-carrier (T1, T3, etc.) o E-carrier (E1, E3, etc.) 5
RS-232, a serial line interface originally developed to connect modems and computer terminals SDH Synchronous Digital Hierarchy SONET Synchronous Optical NETworking Modem standards/ITU V-Series Protocols used to communicate between analog modems over voice telephone lines. Various Ethernet physical layers
Layer 2 protocols (Data link layer) • • • • • • • • • • • • • • • • • • • • •
ARCnet CDP Cisco Discovery Protocol DCAP Data Link Switching Client Access Protocol Econet Ethernet FDDI Fiber Distributed Data Interface Frame Relay HDLC High Level Data Link Control LocalTalk L2F Layer 2 Forwarding Protocol L2TP Layer 2 Tunneling Protocol LAPD Link Access Procedures on the D channel LLDP Link Layer Discovery Protocol LLDP-MED Link Layer Discovery Protocol - Media Endpoint Discovery PPP Point-to-Point Protocol PPTP Point-to-Point Tunneling Protocol SLIP Serial Line Internet Protocol (obsolete) StarLan STP Spanning Tree Protocol Token ring VTP VLAN Trunking Protocol
Layer 2+3 protocols • • •
ATM Asynchronous Transfer Mode Frame relay, a simplified version of X.25 MPLS Multi-protocol label switching
6
• •
Signalling System 7, also called SS7, C7 and CCIS7; a common PSTN control protocol. X.25
Layer 3 protocols (Network layer) • • • • • • • • • • • • • • • •
ARP Address Resolution Protocol BGP Border Gateway Protocol EGP Exterior Gateway Protocol EIGRP Enhanced Interior Gataway Routing Protocol ICMP Internet Control Message Protocol IGMP Internet Group Management Protocol IGRP Interior Gataway Routing Protocol IPv4 Internet Protocol version 4 IPv6 Internet Protocol version 6 IPSec Internet Protocol Security IPX Internetwork Packet Exchange IS-IS Intermediate system to intermediate system MPLS Multiprotocol Label Switching OSPF Open Shortest Path First RARP Reverse Address Resolution Protocol RIP Routing Information Protocol
Layer 4 protocols (Transport layer) • • • • • •
IL Originally developed as transport layer for 9P SPX Sequenced Packet Exchange SCTP Stream Control Transmission Protocol TCP Transmission Control Protocol UDP User Datagram Protocol Sinec H1 for telecontrol
Layer 5 protocols (Session layer) • • • •
9P Distributed file system protocol developed originally as part of Plan 9 NCP NetWare Core Protocol NFS Network File System SMB Server Message Block (aka CIFS Common Internet FileSystem) 7
•
Layer 7 protocols (Application layer) • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •
AFP, Apple Filing Protocol BACnet, Building Automation and Control Network protocol BitTorrent, a peer-to-peer file sharing protocol BOOTP, Bootstrap Protocol DIAMETER, an authentication, authorization and accounting protocol DICT, Dictionary protocol DNS, Domain Name Service DHCP, Dynamic Host Configuration Protocol FTP, File Transfer Protocol Finger, which gives user profile information Gnutella, a peer-to-peer file-swapping protocol Gopher, a hierarchical hyperlinkable protocol HTTP, HyperText Transfer Protocol IMAP, Internet Message Access Protocol IRC, Internet Relay Chat protocol Jabber, an instant-messaging protocol LDAP Lightweight Directory Access Protocol MIME, Multipurpose Internet Mail Extensions MSNP, Microsoft Notification Protocol (used by Windows Live Messenger) NetBIOS, File Sharing and Name Resolution protocol - the basis of file sharing with Windows. NNTP, News Network Transfer Protocol NTP, Network Time Protocol NTCIP, National Transportation Communications for Intelligent Transportation System Protocol POP3 Post Office Protocol Version 3 RADIUS, an authentication, authorization and accounting protocol Rlogin, a UNIX remote login protocol rsync, a file transfer protocol for backups, copying and mirroring RTP, Real-time Transport Protocol RTSP, Real-time Transport Streaming Protocol SSH, Secure Shell SISNAPI, Siebel Internet Session Network API 8
• • • • • • •
SIP, Session Initiation Protocol, a signaling protocol SMTP, Simple Mail Transfer Protocol SNMP, Simple Network Management Protocol SOAP, Simple Object Access Protocol Telnet, a remote terminal access protocol TFTP, Trivial File Transfer Protocol, a simple file transfer protocol WebDAV, Web Distributed Authoring and Versioning
Internet protocol suite Internet protocol suite The Internet protocol suite is the set of communications protocols that implement the protocol stack on which the Internet and most commercial networks run. It has also been referred to as the TCP/IP protocol suite, which is named after two of the most important protocols in it: the Transmission Control Protocol (TCP) and the Internet Protocol (IP), which were also the first two networking protocols defined. Today's IP networking represents a synthesis of two developments that began in the 1970s, namely LANs (Local Area Networks) and the Internet, both of which have revolutionized computing. The Internet Protocol suite—like many protocol suites—can be viewed as a set of layers. Each layer solves a set of problems involving the transmission of data, and provides a well-defined service to the upper layer protocols based on using services from some lower layers. Upper layers are logically closer to the user and deal with more abstract data, relying on lower layer protocols to translate data into forms that can eventually be physically transmitted. The TCP/IP reference model consists of four layers.[1]
9