Lesson 2 Flashcards
Types of messages exchanges in App-layer protocols
Request and Response
Example of Proprietary Protocols
Skype
Define (6) App-layer protocol
- Types of Messages exchanged
- Message Syntax
- Message Semantics
- Rules for when and how processes send and respond to messages
- Open Protocols
- Proprietary Protocols
Example of Network Apps
- Web
- Text Messaging
- Remote Log In
- P2P File Sharing
- Multi-user network games
- Streaming Stored Video
- Voice Over IP
- Real-Time Video Conferencing
- Social Networking
- Search
Example of Streaming Stored Video
Youtube, Hulu, Netflix
Example of Voice Over IP
Skype
2 Application Architectures
Client-Server
Peer-To-Peer
it includes both IP address and port numbers associated with progress on host
Identifier
Port Numbers
HTTP Server:
Mail Server:
HTTP Server: 80
Mail Server: 25
Transport Services an App need
- Data Integrity
- Timing
- Throughput
- Security
it is a measure of how many units of information a system can process in a given amount of time.
throughput
What is throughput
it is a measure of how many units of information a system can process in a given amount of time.
What do you call when valuable or sensitive information on a computer is compromised due to theft, human error, viruses, malware, or power failure
Data Loss
File Transfer in Throughput
Elastic Throughput
Email in throughput
Elastic Throughput
Web Documents in Throughput
Elastic
Throughput: Real-time Audio (kbps)
5kbps-1mbps
Throughput: Real-time Video (kbps)
10kbps-5mbps
Throughput: Stored Audio
5kbps-1mbps
Throughput: Stored Video
10kbps-5mbps
Throughput: Interactive Games
Few kbps up
Throughput: Text Messaging
Elastic
DATA LOSS: FILE TRANSFER
No Loss
DATA LOSS: Email
No Loss
DATA LOSS: Web Documents
No Loss
DATA LOSS: Real-Time Audio/Video
Loss-Tolerant
DATA LOSS: Stored Audio/Video
Loss-Tolerant
DATA LOSS: Interactive Games
Loss-Tolerant
DATA LOSS: Text Messaging
No Loss
3 TCP SERVICES
- Reliable Transport
- Flow Control
- Congestion Control
Does TCP Service provide Timing and Minimum throughput?
No
In UDP Service, is data transfer unreliable?
Yes
UDP Service does not provide the following (8):
- Reliability
- Flow Control
- Congestion Control
- Timing
- Throughput
- Guarantee
- Security
- Connection Set Up
It define the language that network applications speak to fulfill user requests
Application Layer protocol
Refers to HTML file, JPEG Image, Java Applet, Audio File
Object
Webpage consist of _________ like HTML-FILE
Objects
is a browser that requests, receives using HTTP protocol
client
sends objects in response to requests,
Server
It uses HTTP Protocol
Server
They use to initiate TCP connection to HTTP server in Port 80
HTTP client
is HTTP is STATELESS?
YES
HTTP client request message contains what?
URL (or objects)
What is the format of HTTP request message?
ASCII
3 GENERAL FORMAT OF HTTP REQUEST MESSAGES
Request Line
Header Line
Body
4 TYPES OF HTTP REQUEST MESSAGES
Post Method
Get Method
Head Method
Put Method
TYPES OF HTTP REQUEST MESSAGES:
- Web page often includes form input
- User input sent from client to server in entity body of _________ request message
POST METHOD
Include user data in URL field of HTTP request message (following a’?’)
Get Method
Requests headers (only) that would be retired if specific URL were requested with an HTTP GET method
Head Method
- Uploads a new file (object) to server
Put Method
Completely replaces file that exists at specified URL with content in entity body of POST HTTP request message
Put method
TWO TYPES OF HTTP CONNECTIONS
- Non-persistent HTTP
- Persistent HTTP
Sequence of Non-persistent HTTP
- TCP connection opened
- At most one object sent over TCP connection
- TCP connection closed
Sequence of Persistent HTTP
- TCP connection opened to a server
- Multiple Objects can be sent over single TCP connection between client, and that server
- TCP connection closed
Only one Object can be sent over TCP connection
NON-PERSISTENT HTTP
Multiple objects can be sent
PERSISTENT HTTP
5 RESPONSE STATUS CODES
404
400
505
301
200 OK
RESPONSE STATUS CODE 404
404 NOT FOUND requested documented not found on this server
RESPONSE STATUS CODE 400
400 Bad Request: requested messages not understood by server
RESPONSE STATUS CODE 505
505 HTTP Version Not Supported
RESPONSE STATUS CODE 301
301 Moved Permanently: Requested object moved, new location specified later in this message (in Location: Field)
RESPONSE STATUS CODE 200 OK
Request succeeded, request object later in this message
These are use by web sites and client browsers to maintain some state between transactions
Cookies
3 Uses of Cookies
- Track user behavior on a given website (first party cookies)
- Track user behavior across multiple websites (Third party cookies) without user ever choosing to visit tracker site
- Tracking may be invisible to
Cookies can be used in (4)
- Authorization
- Shopping cats
- Recommendations
- User session state (web email)
Cookie is also known as?
Unique ID
Common Identity is also known as?
Cookie Value
Third party persistent cookies is also known as?
Tracking Cookies
FOUR COMPONENTS OF COOKIES
- Cookie header line of HTTP response message
- Cookie hear line in next HTTP request message
- Cookie file kept on user’s host, managed by user’s browser
- Back-end database at web site
Satisfy client request without involving origin server
Web caches
WEB CACHES: What is the Average rate from browsers to origin servers?
15/sec
WEB CACHES: What is the Average data rate to browsers?
1.50 Mbps
Web Caches are also known as?
Proxy Servers
3 COMPONENTS OF ELECTROMAGNETIC MAIL
- User Agents
- Mail Servers
- Simple Mail Transfer Protocol (SMTP)
Other term for User Agent
Mail Reader
it contains Incoming messages for user
Mailbox
it means outgoing mail messages
Message Queue
- EXAMPLE OF ELECTRONIC MAIL USER AGENT
- Outlook
- Thunderbird
- iPhone
- Mail Client
SMTP use ___________ connection
Persistent
It is Between mail servers to sent mail messages
SMTP
They Send mail server
Client
They Receive mail server
Server
What SMTP server uses to determine end of message?
CRLF
SMTP:PUSH
HTTP:
PULL
The transfer of email messages from client to server happen on what port?
PORT 25
3 PHASES OF TRANSFER
- Handshaking (Greeting)
- Transfer of messages
- Closure
The Format used for commands is
ASCII text
Protocol for exchanging email messages
SMTP
Standard for text message format
RFC 822
entered by user, formatted by local user agent
Header lines
Format of Header lines
To:
From:
Subject:
Where the “message” ASCII characters only
Body
Fields giving info about data
Headers
Info (Payload) being communicated
Data
MAIL ACCESS PROTOCOLS
1, POP
2. IMAP
3. HTTP
CLIENT COMMANDS: declares username
User
CLIENT COMMANDS: password
Pass
SERVER RESPONSES
+ OK
- ERR
TRANSACTION PHASE
List
Retr
Dele
Quit
list message numbers
List
retrieve message by number
Retr
delete
Dele
Keeps all messages in one place: at server
IMAP
Where does IMAP store all messages?
server
implemented in hierarchy of many name servers
Distributed Database
4 DNS SERVICES
- Hostname to IP address translation
- Host aliasing
- Mail server aliasing
- Load distribution
3 SUB BRANCHES OF ROOT DNS SERVERS
com DNS servers
org DNS servers
edu DNS servers
Organization’s own DNS server(s), providing authoritative hostname to IP mappings for organizations named hosts.
AUTHORITATIVE DNS SERVERS
RR format
(name, value, type, TTL)
4 FLAGS
- Query or reply
- Recursion desired
- Recursion available
- Reply is authoritative
- No always-on server
- Arbitrary end systems directly communicate
- Peers are intermittently connected and changed IP addresses
PURE P2P ARCHITECTURE
EXAMPLE OF PURE P2P ARCHITECTURE
- File distribution (BitTorrent)
- Streaming (KanKan)
- VoIP (Skype)
Group of peers exchanging chunks of a file
Torrent
Tracks peers participating in torrent
Tracker
Peers may come and go
Churn
EXAMPLES OF VBR
MPEG 1
MPEG 2
MPEG 4
Stores copies of content in CDN nodes
CDN
Learn how to build client/server applications that communicate using sockets
SOCKET PROGRAMMING
Door between application process and end-end transport protocol
Socket
2 Socket types for 2 transport services
UDP and TCP
Time for a small packet to travel from client to server and back
RTT