SlideShare uma empresa Scribd logo
1 de 39
APPLICATION LAYER
AGENDA
 OSI Model Block Diagram
 OSI Encapsulation Process
 Application Protocol Design
 Application Layer Protocols
1. HTTP(Hypertext Transfer Protocol)
2. DNS(Domain Name System)
3. FTP(File Transfer Protocol)
4. TELNET
5. DHCP(Dynamic Host Configuration Protocol)
6. SMTP(Simple Mail Transfer Protocol)
 Summary
 References
2
OSI MODEL BLOCK DIAGRAM
3
Application-Layer Protocols
AGENDA
 OSI Model Block Diagram
 OSI Encapsulation Process
 Application Protocol Design
 Application Layer Protocols
1. HTTP(Hypertext Transfer Protocol)
2. DNS(Domain Name System)
3. FTP(File Transfer Protocol)
4. TELNET
5. DHCP(Dynamic Host Configuration Protocol)
6. SMTP(Simple Mail Transfer Protocol)
 Summary
 References
4
OSI ENCAPSULATION PROCESS
5
Application-Layer Protocols
AGENDA
 OSI Model Block Diagram
 OSI Encapsulation Process
 Application Protocol Design
 Application Layer Protocols
1. HTTP(Hypertext Transfer Protocol)
2. DNS(Domain Name System)
3. FTP(File Transfer Protocol)
4. TELNET
5. DHCP(Dynamic Host Configuration Protocol)
6. SMTP(Simple Mail Transfer Protocol)
 Summary
 References
6
APPLICATION PROTOCOL DESIGN
 Think of different people/teams, working on the client and server
programs.
– Different programming languages.
– Diverse hardware, operating systems.
 Be unambiguous, precise.
– Consider potential error conditions.
 Allow for future extensions.
– Leave room for additional data, meta-data.
 Do not replicate services provided by lower layer protocols
– e.g., checksum 7
Application-Layer Protocols
AGENDA
 OSI Model Block Diagram
 OSI Encapsulation Process
 Application Protocol Design
 Application Layer Protocols
1. HTTP(Hypertext Transfer Protocol)
2. DNS(Domain Name System)
3. FTP(File Transfer Protocol)
4. TELNET
5. DHCP(Dynamic Host Configuration Protocol)
6. SMTP(Simple Mail Transfer Protocol)
 Summary
 References
8
APPLICATION LAYER PROTOCOLS
Application-Layer Protocols
 An application layer protocol defines how an application processes
(clients and servers), running on different end systems, pass
messages to each other.
 In particular, an application layer protocol defines:
–The types of messages, e.g., request messages and response
messages.
– The syntax of the various message types, i.e., the fields in the
message and
 how the fields are delineated.
–The semantics of the fields, i.e., the meaning of the information that
the
 field is supposed to contain;
–Rules for determining when and how a process sends messages
and responds to messages. 9
CONTINUE..
Application-Layer Protocols
 Many Internet application-layer protocols are fully specified in
Request.
 For Comments documents (RFCs) and are therefore in the public
domain.
–For example, the HTTP 1.1 specification is included in RFC 2068,
which was
 finalized and made public January 1997.
– If a browser (HTTP client) developer follows the rules of the HTTP
1.1 RFC,
 the browser will be able to retrieve Web pages from any Web server
that has also has followed the rules of the HTTP 1.1 RFC.
10
CONTINUE..
Application-Layer Protocols
Application layer protocols as follows:
1. HTTP(Hypertext Transfer Protocol)
2. DNS(Domain Name System)
3. FTP(File Transfer Protocol)
4. TELNET
5. DHCP(Dynamic Host Configuration Protocol)
6. SMTP(Simple Mail Transfer Protocol)
11
1. HTTP
Application-Layer Protocols
 Hypertext Transfer Protocol is used to transfer files that make up
the web pages of the World Wide Web.
 HTTP: TCP port 80.
 Was originally developed to publish and retrieve HTML pages.
 used for distributed, collaborative information systems.
 HTTP is used across the world wide web for data transfer and is one
of the most used application protocols.
 HTTP specifies a request/response protocol.
 When a client, typically a web browser, sends a request message to
a server, the HTTP protocol defines the message types the client
uses to request the web page and the message types the server
uses to respond.
 The three common message types are:
o GET
o POST
o PUT
12
CONTINUE..
 GET is a client request for data. A web browser sends the GET
message to request pages from a web server.
 POST and PUT are used to send messages that upload data to the
web server.
 HTTP protocol using GET.
13
Application-Layer Protocols
2. DNS
Application-Layer Protocols
 HOSTNAMES:
⚫ IPAddresses are great for computers
– IP address includes information used for routing.
⚫ IP addresses are tough for humans to remember.
⚫ IP addresses are impossible to guess.
– ever guessed at the name of a WWW site?
 The Domain Name System:
⚫ The domain name system is usually used to translate a host
name into an IP address .
⚫ Domain names comprise a hierarchy so that names are unique,
yet easy to remember.
14
CONTINUE..
 DNS Hierarchy
edu com org jp
rpi albany
15
Application-Layer Protocols
CONTINUE..
Application-Layer Protocols
 Host name structure:
• Each host name is made up of a sequence of labels separated by
periods.
– Each label can be up to 63 characters
– The total name can be at most 255characters.
• Examples:
– whitehouse.gov
– barney.the.purple.dinosaur.com
– monica.cs.rpi.edu
 Domain Name
• The domain name for a host is the sequence of labels that lead from
the host (leaf node in the naming tree) to the top of the worldwide
naming tree.
• A domain is a subtree of the world wide naming tree.
16
CONTINUE..
Application-Layer Protocols
 Top level domains:
• edu, gov, com, net, org, mil, …
• Countries each have a top level domain(2 letter domain name).
• New top level domains include:
.aero .biz .coop .info .name .pro
 DNS Organization
• Distributed Database
–The organization that owns a domain name is responsible for
running a DNS server that can provide the mapping between
hostnames within the domain to IP addresses.
– So - some machine run by RPI is responsible for everything within
the rpi.edu domain.
17
CONTINUE..
Application-Layer Protocols
 DNS Clients:
• A DNS client is called a resolver.
• A call to getByName(host)is handled by a resolver (typically part of
the client).
• Most Unix workstations have the file /etc/resolv.conf that contains
the local domain and the addresses of DNS servers for that domain.
 Nslookup:
• nslookup is an interactive resolver that allows
communicate directly with a DNS server.
• nslookup is usually available on Unix workstations.
the user to
18
CONTINUE..
 DNS Servers:
• Servers handle requests for their domain directly.
• Servers handle requests for other domains by contacting remote
DNS server(s).
• Servers cache external mappings.
o DNS Message Format:
19
Application-Layer Protocols
CONTINUE..
 DNS Message Header:
20
Application-Layer Protocols
3. FTP
Application-Layer Protocols
 promote sharing of files.
 encourage indirect use of remote computers.
 shield user from variations in file storage.
 transfer data reliably and efficiently.
 “FTP, although usable directly by a user at a terminal, is designed
mainly for use by programs”.
 To successfully transfer files, FTP requires two connections between
the client and the server: one for commands and replies, and the
other for the actual file transfer.
 The client establishes the first connection to the server on TCP port
21. This connection is used for control traffic, consisting of client
commands and server replies.
 The client establishes the second connection to the server over TCP
port 20. This connection is for the actual file transfer and is created
every time a file is transferred.
21
CONTINUE..
 The client can download (pull) a file from the server or upload (push)
a file to the server.
 FTP Process
22
Application-Layer Protocols
4. TELNET
 TELNET is a protocol that provides “a general, bi-directional, eight-bit
byte oriented communications facility”.
 telnet is a program that supports the TELNET protocol over TCP.
 Many application protocols are built upon the TELNET protocol.
 TELNET service:
23
Application-Layer Protocols
CONTINUE..
Application-Layer Protocols
 The TELNET Protocol
o TCP connection
o data and control over the same connection.
o Network Virtual Terminal
o negotiated options
24
CONTINUE..
 Network Virtual Terminal
o intermediate representation of a generic terminal.
o provides a standard language for communication of terminal control
functions.
25
Application-Layer Protocols
CONTINUE..
Application-Layer Protocols
 Negotiated Options:
o All NVTs support a minimal set of capabilities.
o Some terminals have more capabilities than the minimal set.
o The 2 endpoints negotiate a set of mutually acceptable options
(character set, echo mode, etc).
o The protocol for requesting optional features is well defined and
includes rules for eliminating possible negotiation “loops”.
o The set of options is not part of the TELNET protocol, so that new
terminal features can be incorporated without changing the TELNET
protocol.
26
CONTINUE..
Application-Layer Protocols
 Control Functions:
o TELNET includes support for a series of control functions commonly
supported by servers.
for communication of (the
o This provides a uniform mechanism
supported) control functions.
o Interrupt Process (IP)
– suspend/abort process.
o Abort Output (AO)
– process can complete, but send no more output to user’s terminal.
o Are You There (AYT)
– check to see if system is still running.
o Erase Character (EC)
– delete last character sent
– typically used to edit keyboard input.
o Erase Line (EL)
– delete all input in current line. 27
5. DHCP
Application-Layer Protocols
 DHCP enables clients on a network to obtain IP addresses and other
information from a DHCP server.
 DHCP allows a host to obtain an IP address dynamically when it
connects to the network.
 The DHCP server is contacted by sending a request, and an IP
address is requested.
 The DHCP server chooses an address from a configured range of
addresses called a pool and assigns it to the host client for a set
period.
 different ways of having DHCP servers arranged in next diagram
28
CONTINUE..
29
Application-Layer Protocols
7. SMTP
 Protocol originated in 1982 (RFC821, Jon Postel)
 Standard message format (RFC822,2822, D. Crocker)
 Goal: To transfer mail reliably and efficiently
30
Application-Layer Protocols
CONTINUE..
 SMTP clients and servers have two
main components:
⚫ User Agents – Prepares the
message, encloses it in an envelope.
(ex. Thunderbird, Eudora)
⚫ Mail Transfer Agent – Transfers the
mail across the internet (ex.
Sendmail, Exim)
⚫ Analogous to the postal system in
many ways
31
Application-Layer Protocols
CONTINUE..
 SMTP also allows the use of
Relays allowing other MTAs
to relay the mail.
 Mail Gateways are used to
relay mail prepared by a
protocol other than SMTP and
convert it to SMTP.
32
Application-Layer Protocols
CONTINUE..
 Connection establishment:
33
Application-Layer Protocols
CONTINUE..
 Message Progress:
34
Application-Layer Protocols
CONTINUE..
 Connection Termination:
35
TCP Connection Termination
Application-Layer Protocols
CONTINUE..
Application-Layer Protocols
Limitations in SMTP:
 Only uses NVT 7 bit ASCII format
⚫ How to represent other data types?
 No authentication mechanisms
 Messages are sent un-encrypted
 Susceptible to misuse (Spamming,
faking sender address)
36
SUMMARY
 OSI model has 7 layers.
 In particular, an application layer protocol defines:
– The types of messages, e.g., request messages and response
messages.
 Application layer has 6 protocols:
1. HTTP(Hypertext Transfer Protocol)
2. DNS(Domain Name System)
3. FTP(File Transfer Protocol)
4. TELNET
5. DHCP(Dynamic Host Configuration Protocol)
6. SMTP(Simple Mail Transfer Protocol) 37
REFERENCES
Web Sites:
 http://www.faqs.org/rfcs/rfc821.html (RFC 821).
 http://www.faqs.org/rfcs/rfc2821.html (RFC 2821)
 http://www.tcpipguide.com/free/t_SMTPSpecialFeaturesCapa
bilitiesandExtensions.html
 http://cns.utoronto.ca/usg/technotes/smtp-intro.html
 http://computer.howstuffworks.com/email5.htm
Books:
 Programmer's Guide to Internet Mail by John Rhoton
 TCP/IP Illustrated Volume 1 by Richard Stevens
38
THANK YOU…!!!
39

Mais conteúdo relacionado

Semelhante a application layer protocol for iot.pptx

The Internet and World Wide Web
The Internet and World Wide WebThe Internet and World Wide Web
The Internet and World Wide Web
webhostingguy
 
Final networks lab manual
Final networks lab manualFinal networks lab manual
Final networks lab manual
Jaya Prasanna
 
Computer Networks
Computer NetworksComputer Networks
Computer Networks
Shylesh BC
 
applicationapplicationapplicationapplication.ppt
applicationapplicationapplicationapplication.pptapplicationapplicationapplicationapplication.ppt
applicationapplicationapplicationapplication.ppt
DEEPAK948083
 

Semelhante a application layer protocol for iot.pptx (20)

An Introduction to HTTP
An Introduction to HTTPAn Introduction to HTTP
An Introduction to HTTP
 
Ch4 Protocols.pptx
Ch4 Protocols.pptxCh4 Protocols.pptx
Ch4 Protocols.pptx
 
Chapter2 Application
Chapter2 ApplicationChapter2 Application
Chapter2 Application
 
Application layer protocols
Application layer protocolsApplication layer protocols
Application layer protocols
 
The Internet and World Wide Web
The Internet and World Wide WebThe Internet and World Wide Web
The Internet and World Wide Web
 
A Presentation on Servers & Splunk
A Presentation on Servers & SplunkA Presentation on Servers & Splunk
A Presentation on Servers & Splunk
 
Sem 1 Ch 11
Sem 1 Ch 11Sem 1 Ch 11
Sem 1 Ch 11
 
15 Application layer.pptx
15 Application layer.pptx15 Application layer.pptx
15 Application layer.pptx
 
Final networks lab manual
Final networks lab manualFinal networks lab manual
Final networks lab manual
 
CCNA RS_NB - Chapter 4
CCNA RS_NB - Chapter 4CCNA RS_NB - Chapter 4
CCNA RS_NB - Chapter 4
 
Web Programming HTML.pptx
Web Programming HTML.pptxWeb Programming HTML.pptx
Web Programming HTML.pptx
 
Web technology-guide
Web technology-guideWeb technology-guide
Web technology-guide
 
CN UNIT V.pptx
CN UNIT V.pptxCN UNIT V.pptx
CN UNIT V.pptx
 
Computer Networks
Computer NetworksComputer Networks
Computer Networks
 
applicationapplicationapplicationapplication.ppt
applicationapplicationapplicationapplication.pptapplicationapplicationapplicationapplication.ppt
applicationapplicationapplicationapplication.ppt
 
Unit 2 ppt-idc
Unit 2 ppt-idcUnit 2 ppt-idc
Unit 2 ppt-idc
 
Ccna v5-S1-Chapter 10
Ccna v5-S1-Chapter 10Ccna v5-S1-Chapter 10
Ccna v5-S1-Chapter 10
 
Datacom_Section_2_-_Protocols.ppt
Datacom_Section_2_-_Protocols.pptDatacom_Section_2_-_Protocols.ppt
Datacom_Section_2_-_Protocols.ppt
 
CCNA RS_ITN - Chapter 10
CCNA RS_ITN - Chapter 10CCNA RS_ITN - Chapter 10
CCNA RS_ITN - Chapter 10
 
Networking Fundamentals
Networking Fundamentals Networking Fundamentals
Networking Fundamentals
 

Mais de aravind Guru

Connections finale competitions answers.
Connections finale competitions answers.Connections finale competitions answers.
Connections finale competitions answers.
aravind Guru
 
SANJAY.K MINOR PROJECT 2-3.pptx
SANJAY.K MINOR PROJECT 2-3.pptxSANJAY.K MINOR PROJECT 2-3.pptx
SANJAY.K MINOR PROJECT 2-3.pptx
aravind Guru
 
_tmpA8_ minor project ppt.pptx
_tmpA8_ minor project ppt.pptx_tmpA8_ minor project ppt.pptx
_tmpA8_ minor project ppt.pptx
aravind Guru
 
6.4 - Finance management and Resorce Mobilization.pptx
6.4 - Finance management and Resorce Mobilization.pptx6.4 - Finance management and Resorce Mobilization.pptx
6.4 - Finance management and Resorce Mobilization.pptx
aravind Guru
 

Mais de aravind Guru (18)

A PROFICIENT SENSOR NETWORK BASED SMART METER MULTI-DEMAND RESPONSE SYSTEM US...
A PROFICIENT SENSOR NETWORK BASED SMART METER MULTI-DEMAND RESPONSE SYSTEM US...A PROFICIENT SENSOR NETWORK BASED SMART METER MULTI-DEMAND RESPONSE SYSTEM US...
A PROFICIENT SENSOR NETWORK BASED SMART METER MULTI-DEMAND RESPONSE SYSTEM US...
 
Word Warriors Questions of the symposium for students
Word Warriors Questions of the symposium for studentsWord Warriors Questions of the symposium for students
Word Warriors Questions of the symposium for students
 
Connections finale competitions answers.
Connections finale competitions answers.Connections finale competitions answers.
Connections finale competitions answers.
 
Pulp and Paper making (2).pptx
Pulp and Paper making (2).pptxPulp and Paper making (2).pptx
Pulp and Paper making (2).pptx
 
Arduino_Beginner.pptx
Arduino_Beginner.pptxArduino_Beginner.pptx
Arduino_Beginner.pptx
 
3.Project Management.pptx
3.Project Management.pptx3.Project Management.pptx
3.Project Management.pptx
 
Process Control Laboratory.pptx
Process Control Laboratory.pptxProcess Control Laboratory.pptx
Process Control Laboratory.pptx
 
SANJAY.K MINOR PROJECT 2-3.pptx
SANJAY.K MINOR PROJECT 2-3.pptxSANJAY.K MINOR PROJECT 2-3.pptx
SANJAY.K MINOR PROJECT 2-3.pptx
 
_tmpA8_ minor project ppt.pptx
_tmpA8_ minor project ppt.pptx_tmpA8_ minor project ppt.pptx
_tmpA8_ minor project ppt.pptx
 
AASP_SUMMIT2015_Project_Mgt.pptx
AASP_SUMMIT2015_Project_Mgt.pptxAASP_SUMMIT2015_Project_Mgt.pptx
AASP_SUMMIT2015_Project_Mgt.pptx
 
Genetic Algorithm
Genetic AlgorithmGenetic Algorithm
Genetic Algorithm
 
6.4 - Finance management and Resorce Mobilization.pptx
6.4 - Finance management and Resorce Mobilization.pptx6.4 - Finance management and Resorce Mobilization.pptx
6.4 - Finance management and Resorce Mobilization.pptx
 
26-170918023441.pptx
26-170918023441.pptx26-170918023441.pptx
26-170918023441.pptx
 
isoosimodel
isoosimodelisoosimodel
isoosimodel
 
PID Controller Tuning
PID Controller TuningPID Controller Tuning
PID Controller Tuning
 
2. IoT Intro.pptx
2. IoT Intro.pptx2. IoT Intro.pptx
2. IoT Intro.pptx
 
1. IoT.pptx
1. IoT.pptx1. IoT.pptx
1. IoT.pptx
 
BATCH 1.pptx
BATCH 1.pptxBATCH 1.pptx
BATCH 1.pptx
 

Último

Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
pritamlangde
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 

Último (20)

Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
Introduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfIntroduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdf
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
Moment Distribution Method For Btech Civil
Moment Distribution Method For Btech CivilMoment Distribution Method For Btech Civil
Moment Distribution Method For Btech Civil
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 

application layer protocol for iot.pptx

  • 2. AGENDA  OSI Model Block Diagram  OSI Encapsulation Process  Application Protocol Design  Application Layer Protocols 1. HTTP(Hypertext Transfer Protocol) 2. DNS(Domain Name System) 3. FTP(File Transfer Protocol) 4. TELNET 5. DHCP(Dynamic Host Configuration Protocol) 6. SMTP(Simple Mail Transfer Protocol)  Summary  References 2
  • 3. OSI MODEL BLOCK DIAGRAM 3 Application-Layer Protocols
  • 4. AGENDA  OSI Model Block Diagram  OSI Encapsulation Process  Application Protocol Design  Application Layer Protocols 1. HTTP(Hypertext Transfer Protocol) 2. DNS(Domain Name System) 3. FTP(File Transfer Protocol) 4. TELNET 5. DHCP(Dynamic Host Configuration Protocol) 6. SMTP(Simple Mail Transfer Protocol)  Summary  References 4
  • 6. AGENDA  OSI Model Block Diagram  OSI Encapsulation Process  Application Protocol Design  Application Layer Protocols 1. HTTP(Hypertext Transfer Protocol) 2. DNS(Domain Name System) 3. FTP(File Transfer Protocol) 4. TELNET 5. DHCP(Dynamic Host Configuration Protocol) 6. SMTP(Simple Mail Transfer Protocol)  Summary  References 6
  • 7. APPLICATION PROTOCOL DESIGN  Think of different people/teams, working on the client and server programs. – Different programming languages. – Diverse hardware, operating systems.  Be unambiguous, precise. – Consider potential error conditions.  Allow for future extensions. – Leave room for additional data, meta-data.  Do not replicate services provided by lower layer protocols – e.g., checksum 7 Application-Layer Protocols
  • 8. AGENDA  OSI Model Block Diagram  OSI Encapsulation Process  Application Protocol Design  Application Layer Protocols 1. HTTP(Hypertext Transfer Protocol) 2. DNS(Domain Name System) 3. FTP(File Transfer Protocol) 4. TELNET 5. DHCP(Dynamic Host Configuration Protocol) 6. SMTP(Simple Mail Transfer Protocol)  Summary  References 8
  • 9. APPLICATION LAYER PROTOCOLS Application-Layer Protocols  An application layer protocol defines how an application processes (clients and servers), running on different end systems, pass messages to each other.  In particular, an application layer protocol defines: –The types of messages, e.g., request messages and response messages. – The syntax of the various message types, i.e., the fields in the message and  how the fields are delineated. –The semantics of the fields, i.e., the meaning of the information that the  field is supposed to contain; –Rules for determining when and how a process sends messages and responds to messages. 9
  • 10. CONTINUE.. Application-Layer Protocols  Many Internet application-layer protocols are fully specified in Request.  For Comments documents (RFCs) and are therefore in the public domain. –For example, the HTTP 1.1 specification is included in RFC 2068, which was  finalized and made public January 1997. – If a browser (HTTP client) developer follows the rules of the HTTP 1.1 RFC,  the browser will be able to retrieve Web pages from any Web server that has also has followed the rules of the HTTP 1.1 RFC. 10
  • 11. CONTINUE.. Application-Layer Protocols Application layer protocols as follows: 1. HTTP(Hypertext Transfer Protocol) 2. DNS(Domain Name System) 3. FTP(File Transfer Protocol) 4. TELNET 5. DHCP(Dynamic Host Configuration Protocol) 6. SMTP(Simple Mail Transfer Protocol) 11
  • 12. 1. HTTP Application-Layer Protocols  Hypertext Transfer Protocol is used to transfer files that make up the web pages of the World Wide Web.  HTTP: TCP port 80.  Was originally developed to publish and retrieve HTML pages.  used for distributed, collaborative information systems.  HTTP is used across the world wide web for data transfer and is one of the most used application protocols.  HTTP specifies a request/response protocol.  When a client, typically a web browser, sends a request message to a server, the HTTP protocol defines the message types the client uses to request the web page and the message types the server uses to respond.  The three common message types are: o GET o POST o PUT 12
  • 13. CONTINUE..  GET is a client request for data. A web browser sends the GET message to request pages from a web server.  POST and PUT are used to send messages that upload data to the web server.  HTTP protocol using GET. 13 Application-Layer Protocols
  • 14. 2. DNS Application-Layer Protocols  HOSTNAMES: ⚫ IPAddresses are great for computers – IP address includes information used for routing. ⚫ IP addresses are tough for humans to remember. ⚫ IP addresses are impossible to guess. – ever guessed at the name of a WWW site?  The Domain Name System: ⚫ The domain name system is usually used to translate a host name into an IP address . ⚫ Domain names comprise a hierarchy so that names are unique, yet easy to remember. 14
  • 15. CONTINUE..  DNS Hierarchy edu com org jp rpi albany 15 Application-Layer Protocols
  • 16. CONTINUE.. Application-Layer Protocols  Host name structure: • Each host name is made up of a sequence of labels separated by periods. – Each label can be up to 63 characters – The total name can be at most 255characters. • Examples: – whitehouse.gov – barney.the.purple.dinosaur.com – monica.cs.rpi.edu  Domain Name • The domain name for a host is the sequence of labels that lead from the host (leaf node in the naming tree) to the top of the worldwide naming tree. • A domain is a subtree of the world wide naming tree. 16
  • 17. CONTINUE.. Application-Layer Protocols  Top level domains: • edu, gov, com, net, org, mil, … • Countries each have a top level domain(2 letter domain name). • New top level domains include: .aero .biz .coop .info .name .pro  DNS Organization • Distributed Database –The organization that owns a domain name is responsible for running a DNS server that can provide the mapping between hostnames within the domain to IP addresses. – So - some machine run by RPI is responsible for everything within the rpi.edu domain. 17
  • 18. CONTINUE.. Application-Layer Protocols  DNS Clients: • A DNS client is called a resolver. • A call to getByName(host)is handled by a resolver (typically part of the client). • Most Unix workstations have the file /etc/resolv.conf that contains the local domain and the addresses of DNS servers for that domain.  Nslookup: • nslookup is an interactive resolver that allows communicate directly with a DNS server. • nslookup is usually available on Unix workstations. the user to 18
  • 19. CONTINUE..  DNS Servers: • Servers handle requests for their domain directly. • Servers handle requests for other domains by contacting remote DNS server(s). • Servers cache external mappings. o DNS Message Format: 19 Application-Layer Protocols
  • 20. CONTINUE..  DNS Message Header: 20 Application-Layer Protocols
  • 21. 3. FTP Application-Layer Protocols  promote sharing of files.  encourage indirect use of remote computers.  shield user from variations in file storage.  transfer data reliably and efficiently.  “FTP, although usable directly by a user at a terminal, is designed mainly for use by programs”.  To successfully transfer files, FTP requires two connections between the client and the server: one for commands and replies, and the other for the actual file transfer.  The client establishes the first connection to the server on TCP port 21. This connection is used for control traffic, consisting of client commands and server replies.  The client establishes the second connection to the server over TCP port 20. This connection is for the actual file transfer and is created every time a file is transferred. 21
  • 22. CONTINUE..  The client can download (pull) a file from the server or upload (push) a file to the server.  FTP Process 22 Application-Layer Protocols
  • 23. 4. TELNET  TELNET is a protocol that provides “a general, bi-directional, eight-bit byte oriented communications facility”.  telnet is a program that supports the TELNET protocol over TCP.  Many application protocols are built upon the TELNET protocol.  TELNET service: 23 Application-Layer Protocols
  • 24. CONTINUE.. Application-Layer Protocols  The TELNET Protocol o TCP connection o data and control over the same connection. o Network Virtual Terminal o negotiated options 24
  • 25. CONTINUE..  Network Virtual Terminal o intermediate representation of a generic terminal. o provides a standard language for communication of terminal control functions. 25 Application-Layer Protocols
  • 26. CONTINUE.. Application-Layer Protocols  Negotiated Options: o All NVTs support a minimal set of capabilities. o Some terminals have more capabilities than the minimal set. o The 2 endpoints negotiate a set of mutually acceptable options (character set, echo mode, etc). o The protocol for requesting optional features is well defined and includes rules for eliminating possible negotiation “loops”. o The set of options is not part of the TELNET protocol, so that new terminal features can be incorporated without changing the TELNET protocol. 26
  • 27. CONTINUE.. Application-Layer Protocols  Control Functions: o TELNET includes support for a series of control functions commonly supported by servers. for communication of (the o This provides a uniform mechanism supported) control functions. o Interrupt Process (IP) – suspend/abort process. o Abort Output (AO) – process can complete, but send no more output to user’s terminal. o Are You There (AYT) – check to see if system is still running. o Erase Character (EC) – delete last character sent – typically used to edit keyboard input. o Erase Line (EL) – delete all input in current line. 27
  • 28. 5. DHCP Application-Layer Protocols  DHCP enables clients on a network to obtain IP addresses and other information from a DHCP server.  DHCP allows a host to obtain an IP address dynamically when it connects to the network.  The DHCP server is contacted by sending a request, and an IP address is requested.  The DHCP server chooses an address from a configured range of addresses called a pool and assigns it to the host client for a set period.  different ways of having DHCP servers arranged in next diagram 28
  • 30. 7. SMTP  Protocol originated in 1982 (RFC821, Jon Postel)  Standard message format (RFC822,2822, D. Crocker)  Goal: To transfer mail reliably and efficiently 30 Application-Layer Protocols
  • 31. CONTINUE..  SMTP clients and servers have two main components: ⚫ User Agents – Prepares the message, encloses it in an envelope. (ex. Thunderbird, Eudora) ⚫ Mail Transfer Agent – Transfers the mail across the internet (ex. Sendmail, Exim) ⚫ Analogous to the postal system in many ways 31 Application-Layer Protocols
  • 32. CONTINUE..  SMTP also allows the use of Relays allowing other MTAs to relay the mail.  Mail Gateways are used to relay mail prepared by a protocol other than SMTP and convert it to SMTP. 32 Application-Layer Protocols
  • 35. CONTINUE..  Connection Termination: 35 TCP Connection Termination Application-Layer Protocols
  • 36. CONTINUE.. Application-Layer Protocols Limitations in SMTP:  Only uses NVT 7 bit ASCII format ⚫ How to represent other data types?  No authentication mechanisms  Messages are sent un-encrypted  Susceptible to misuse (Spamming, faking sender address) 36
  • 37. SUMMARY  OSI model has 7 layers.  In particular, an application layer protocol defines: – The types of messages, e.g., request messages and response messages.  Application layer has 6 protocols: 1. HTTP(Hypertext Transfer Protocol) 2. DNS(Domain Name System) 3. FTP(File Transfer Protocol) 4. TELNET 5. DHCP(Dynamic Host Configuration Protocol) 6. SMTP(Simple Mail Transfer Protocol) 37
  • 38. REFERENCES Web Sites:  http://www.faqs.org/rfcs/rfc821.html (RFC 821).  http://www.faqs.org/rfcs/rfc2821.html (RFC 2821)  http://www.tcpipguide.com/free/t_SMTPSpecialFeaturesCapa bilitiesandExtensions.html  http://cns.utoronto.ca/usg/technotes/smtp-intro.html  http://computer.howstuffworks.com/email5.htm Books:  Programmer's Guide to Internet Mail by John Rhoton  TCP/IP Illustrated Volume 1 by Richard Stevens 38