Application-layer Protocols

Topics

Application Protocol Design

In Summary

Learn by Example

Knock-Knock Protocol

Java Implementation

Supporting multiple clients

The TELNET Protocol

TELNET vs. telnet

The TELNET Protocol

Network Virtual Terminal

Network Virtual Terminal

Negotiated Options

Negotiated Options

Option examples

Control Functions

Control Functions

More Control Functions

Command Structure

Looking for Commands

Command Codes

Playing with TELNET

Some TCP Servers you can play with

telnet hostname port

telnet vs. TCP

FTP
File Transfer Protocol

FTP Objectives
(from RFC 959)

The FTP Model

Control and Data Connections

Control Connection

Standard Connection Model

Alternative Connection Model

Access Control Commands

Transfer Parameter Commands

Service Commands

FTP Replies

FTP Reply Status Code

FTP Reply Status Code

Data Transfer Modes

RFC 959

Address Conversion Functions and
The Domain Name System

Hostnames

The Domain Name System

DNS Hierarchy

Host name structure

Domain Name

Top level domains

DNS Organization

DNS Distributed Database

DNS Clients

/etc/resolv.conf

nslookup

"$ nslookup"

DNS Servers

Server - Server Communication

DNS Data

The Root DNS Server

Server Operation

DNS Message Format

DNS Message Header

Message Flags

Recursion

Question Format

Response Resource Record

UDP & TCP

Lots more

Internet Addresses in Java

Printing Internet Addresses

Additional InetAddress methods

Additional InetAddress methods