Quiz 3 - Transport & Application Layer Protocols and DNS (Ch. 9-10) Flashcards
Describe HTTP packets in networking layers
Describe Transport Layer protocols

How do you select the Transport Layer protocol?
- Based on Quality of service (QoS) requirement
- QoS is an acceptable level of network performance
QoS factor: Reliability
- some apps can tolerate some loss
- (e.g., audio)
- other apps require 100% reliable data transfer
- (e.g., file transfer, telnet)
QoS factor: Timing
- some apps require low delay to be “effective”
- (e.g., Internet telephony, interactive games)
QoS factor: Throughput
- some apps require minimum amount of throughput to be “effective”
- (e.g., multimedia)
- other apps make use of whatever throughput they get
- (“elastic apps”)
QoS factor:Security
- encryption
- data integrity
- etc.
Transport service requirements of common apps
What are the Layer 4 (Transport) Protocols?
- TCP
- UDP
Describe TCP
- connection-oriented: setup required between client and server processes reliable transport between sending and receiving
- process flow control: sender won’t overwhelm receiver
- congestion control: throttle sender when network overloaded
- does not provide: timing, minimum throughput guarantees, security
Describe UDP
- unreliable data transfer between sending and receiving process
- does not provide: connection setup, reliability, flow control, congestion control, timing, throughput guarantee, or security
- faster than TCP
What is Connection-oriented communication?
- Within the connection, messages are
- sequenced,
- acknowledged, and
- retransmitted if necessary
How does TCP handle connections?
- There is a formal opening of the connection.
- A connection opening requires three segments. (three-way handshake)
- There is a formal closing of the connection.
Is TCP is a connection-oriented protocol?
- Yes.
Transport protocols for Internet apps
What determines the choice of transport protocol?
- QoS determines the transport protocol
How are processes on the same host uniquely identified?
- To be uniquely identified, each process must have an identifier
- Identifier includes both IP address of the host and port numbers associated with process on host.
Addressing processes within a host
- Hosts are identified by unique 32-bit IP address
- But many processes can be running on the same host
How are ports designated?
- Using a 16-bit value
- between 0 and 65,535
What is the range for Well-known ports?
- 0 to 1,023
What is the range for Registered ports?
- 1,024 to 49,151
What is the range for Dynamic range ports?
- 49,152 to 65,535
What is a Socket?
- Virtual identifier
- A virtual connection to a process running on a host
- Combination of the (virtual) port number and the (virtual) IP address
What is at the beginning of TCP and UDP headers?
- Both TCP and UDP headers begin with a
- source port number field and a
- destination port number field
What port numbers do clients use?
- Clients use ephemeral port numbers
- (usually 1024 - 4999)
How do clients assign port numbers?
- A client generates a different ephemeral port number for each connection
What port numbers do server programs use?
- Server programs use well-known port numbers
- (0 - 1023)
What does the Internet do?
- The Internet establishes a global data communications system
- (hardware and software infrastructure)
- between computers.
What is the Web?
- The Web is one of the services communicated via the Internet.
- It is a collection of interconnected documents and other resources,
- linked by hyperlinks and URLs.
What is a URL?
- URL: Is a symbolic meaning for specifying…
- A Web resource
- The Web server on which the resource resides
- The protocol that will be used to retrieve the resource
- URL components are separated from each other by
- forward slashes,
- dots, and sometimes
- colons
- e.g., http://www.facebook.com/georgemason
What is HTTP?
- Hypertext Transfer Protocol (HTTP)
- HTTP is a file transfer standard
How does HTTP use TCP/IP?
- HTTP uses the services of TCP and IP to actually move data between the browser and the server
What are Cookies?
- Cookies: very small text files written to the client’s hard drive
- contain “state” information
- Allow a server application to understand the http requests that make up a continuous exchange
Why are cookies commonly used with HTTP?
- HTTP Protocol is stateless
- Makes it difficult to design complex and interactive Web pages.
- Other technologies enhance HTTP:
- JavaScript/AJAX
- Server-side scripting
- Adobe Flash
- Cookies
What is a stateless protocol?
-
Each command is performed independently
- without reference to any commands the user previously executed
What does FTP do?
- Establishes rules for transferring data between an ftp server and a client
- Users can download a file from an ftp server and upload a file to an ftp server
- Used to download large data sets where the receiver is interested in the data but not concerned with presentation
How does FTP work?
- Users interact with the server to obtain data sets but do not interact with the data
- In many instances, a password is required to log on to an ftp server before data can be moved in either direction
- Transfers can be initiated by graphical user interface programs or line commands
How does email work?
- Messages are stored on e-mail server
- Most e-mail clients notify you when new message arrives
- or automatically download
What level protocols does email use?
- E-mail programs use application-level protocols
- SMTP: Simple Mail Transfer Protocol
- Uses TCP port 25
What is STMP and what is it used for?
- SMTP: Simple Mail Transfer Protocol
- For E-Mail delivery
What protocols are used for email downloading (receiving)
- POP: Post Office Protocol
- IMAP: Internet Message Access Protocol
How does POP work?
- Downloads e-mail to computer’s e-mail client inbox
- Disconnects as soon as e-mail is downloaded
How does IMAP work?
- More complex, more sophisticated than POP
- Allows multiple clients to simultaneously connect to same inbox
- Clients can use/manipulate multiple mailboxes and folders on same server
- Clients can search e-mail on server besides inbox
- Clients can remain connected to the server
What are the components of VoIP?

How does VoIP work?
-
Voice is digitized by an ADC
- (analog to digital conversion)
-
Process is reversed by a DAC
- (digital to analog conversion)
- Together the ADC/DAC is called a codec
- (compression-decompression algorithm)
How does VoIP handle signaling and transport?
-
UDP
- There is no time to wait for the transmission of lost packets
- UDP makes more sense because of its lightweight processing requirements
-
Real-Time Protocol (RTP) Header
- Makes up for two UDP deficiencies
- Adds sequence numbers to packets
- Adds a time stamp for when its codec octets should be played back
- Allows smooth playback
- Makes up for two UDP deficiencies
What is the structure of a VoIP packet?

How does the Skype network operate?
- Users must log into the network before they receive service
- Once connected, the two parties communicate entirely P2P (transport)
How does DNS work?
- You want to access www.amazon.com. So, your host (PC/laptop) has to send packets to the www.amazon.com server. But, in order to do so, it has to first learn the IP address of the destination host.
- The originating host must contact a DNS server to find the IP address.
- The DNS server sends a response message to the originating host with the IP address of the destination host.
- The originating host can now send packets to the target host.
What protocol and port does DNS mainly use?
- DNS primarily uses
- UDP on
- port number 53 to serve requests.
What is a good analogy for a DNS host?
- The DNS host is like a telephone directory
- You send it the host name for which you need an IP address
After the IP address of a destination host has been resolved by the DNS server, does the orignating host need to do DNS lookup again?
- No
- DNS lookup is not needed for the rest of the communication between the originating host and the target host
Describe the hierarchy of DNS

What is the DNS root and how many servers are used?
- The root is all domains
- There are 13 DNS root servers
What are TLDs and how are they divided up?
- There are two kinds of top level domains
-
Generic top-level domains indicate organization type
- (.com, .edu, .gov, etc.).
-
Country top-level domains are specific to a country
- (.UK, .CA, .CH, etc.).
What are SLDs?
- Companies want Second-Level Domain Names
- (microsoft.com, apple.com etc.).
- Competition for these names is fierce.
What are subdomains and how are they used?
- subdomains are “third-level” domains
- (e.g., som.gmu.edu, mail.google.com, store.apple.com, etc.)
- Most companies divide their organizations into subdomains
What is at the bottom of the DNS hierarchy?
- At the bottom of the hierarchy are individual hosts
- (e.g., research1.som.gmu.edu, research2.som.gmu.edu, etc.)
What is a local name server?
- a local cache (typically at the ISP) of DNS directory entries
- does not strictly belong to hierarchy
- each ISP (residential ISP, company, university) has one
- also called default name server
How does a local name server work?
- when host makes DNS query, query is sent to its local DNS server
- acts as proxy, forwards query into hierarchy
- once (any) name server learns mapping, it caches mapping
- cache entries timeout (disappear) after some time
- TLD servers typically cached in local name servers
- Thus root name servers not often visited
What are the various types of DNS services?
- Primary service:
- Hostname to IP address translation
- Other services:
-
Host aliasing
- Multiple hostnames may correspond to a single IP address:
- combined with virtual hosting, this allows a single machine to serve many web sites.
- Multiple hostnames may correspond to a single IP address:
-
Load distribution
- a single hostname may correspond to many IP addresses
- avoids overwhelming a single host server
-
Host aliasing