Network Applications 1/19/20122 Outline Ø Recap ❒ ISO/OSI Layering and Internet Layering ❒ Application layer overview3 Recap: Summary of the Taxonomy of Communication Networks circuit-switched network communication network switched network broadcast communication packet-switched network datagram network virtual circuit network4 Recap: Statistical Multiplexing ❒ no reservation: all arrivals into the single link with rate R, the queueing delay + transmission delay: ❒ reservation: each flow uses its own reserved (sub)link with rate R/n, the queueing delay + transmission delay: A simple model to compare bandwidth efficiency of - reservation/dedication (aka circuit-switching) and - no reservation (aka packet switching) setup - a single bottleneck link with rate R - n flows; each flow has an arrival rate of a/n ρ−11RLρ−11RLnRecap: Layering ❒ Why layering ❒ reference model ❒ modularization ❒ Concepts ❒ service, interface, and protocol ❒ physical vs logical communication ❒ Key design decision: what functionalities to put in each layer: End-to-end arguement 56 Outline ❒ Recap Ø ISO/OSI Layering and Internet Layering ❒ Application layer overview7 ISO/OSI Reference Model ❒ Seven layers ❍ lower three layers are hop-by-hop ❍ next four layers are end-to-end (host-to-host) Application Presentation Session Transport Network Datalink Physical Application Presentation Session Transport Network Datalink Physical Network Datalink Physical Physical medium8 Internet Layering ❒ Lower three layers are hop-by-hop ❒ Next two layers are end-to-end Application Transport Network Datalink Physical Application Transport Network Datalink Physical Network Datalink Physical Physical medium9 Internet Protocol Layers ❒ A rough division ❒ Five layers ❍ Application: specific network applications • ftp, smtp, http, p2p, IP telephony ❍ Transport: host-host data transfer • tcp (reliable), udp (not reliable) ❍ Network: routing of datagram from source to destination • ip ❍ Link: data transfer between neighboring network elements • ethernet, 802.11, cable, DSL, … ❍ Physical: bits “on the wire” • cable, wireless, optical fiber application transport network link physical10 The Hourglass Architecture of the Internet network infrastructure end users IP Ethernet Cable/DSL Wireless TCP UDP Telnet Email FTP WWW11 Link Layer (Ethernet) ❒ Services o multiple access control - arbitrate access to shared medium o multiplexing/demultiplexing - from/to the network layer o error detection ❒ Interface o send frames to a directly attached (network-layer) peer IP4/6 Ethernet Cable/DSL Wireless TCP UDP Telnet Email FTP WWW12 Link Layer: Protocol Header (Ethernet) IP4/6 Ethernet Cable/DSL Wireless TCP UDP Telnet Email FTP WWW IP4/6 Ethernet Cable/DSL Wireless TCP UDP Telnet Email FTP WWW IP4 link IP6 IP4 link IP613 Network Layer: IP ❒ Services o routing: best-effort to send packets from source to destination o multiplexing/demultiplexing from/to the transport o fragmentation and reassembling: partition a fragment into smaller packets - removed in IPv6 o error detection o certain QoS/CoS o does not provide reliability or reservation q Interface: o send a packet to a (transport-layer) peer at a specified global destination, with certain QoS/CoS IP Ethernet Cable/DSL Wireless TCP UDP SSL Telnet Email FTP WWWIP Ethernet Cable/DSL Wireless TCP UDP SSL Telnet Email FTP WWW IP Ethernet Cable/DSL Wireless TCP UDP SSL Telnet Email FTP WWW 14 Network Layer: IPv4 Header15 Services Provided by UDP ❒ A connectionless service ❒ Does not provide: connection setup, reliability, flow control, congestion control, timing, or bandwidth guarantee ❍ why is there a UDP? IP Ethernet Cable/DSL Wireless TCP UDP Telnet Email FTP WWW16 Transport Layer: UDP Header IP Ethernet Cable/DSL Wireless TCP UDP Telnet Email FTP WWW IP Ethernet FDDI Wireless UDP TCP Telnet Email FTP WWW17 Transport Layer: TCP ❒ Services o multiplexing/demultiplexing o reliable transport o between sending and receiving processes o setup required between sender and receiver: a connection-oriented service o flow control: sender won’t overwhelm receiver o congestion control: throttle sender when network overloaded o error detection o does not provide timing, minimum bandwidth guarantees q Interface: o send a packet to a (app-layer) peer IP Ethernet FDDI Wireless TCP UDP Telnet Email FTP WWW18 Transport Layer: TCP Header IP Ethernet Cable/DSL Wireless UDP TCP Telnet Email FTP WWW IP Ethernet FDDI Wireless TCP UDP Telnet Email FTP WWWSecure Socket Layer Architecture HTTP POP3SSL Record-Layer Packet Format 20: change_cipher 21: alert 22: handshake 23: application21 Summary: The Big Picture of the Internet ❒ Hosts and routers: ❍ >850 mil. hosts (2011) ❍ autonomous systems organized roughly hierarchical ❍ backbone links 10~40Gbps ❒ Software: ❍ datagram switching with virtual circuit support at backbone ❍ layered network architecture • use end-to-end arguments to determine the services provided by each layer ❍ the hourglass architecture of the Internet IP4/6 Ethernet Cable/DSL Wireless TCP UDP Telnet Email FTP WWW SSL22 Outline ❒ Recap ❒ ISO/OSI Layering and Internet Layering Ø Application layer overview23 Application Layer: Goals ❒ Conceptual + implementation aspects of network application protocols ❍ client server paradigm ❍ peer to peer paradigm ❍ network app. programming ❒ Learn about applications by examining common applications ❍ smtp/pop ❍ dns ❍ http ❍ content distribution24 Network Applications vs. Application-layer Protocols Network application: communicating, distributed processes ❍ a process is a program that is running within a host • a user agent is a process serving as an interface to the user – web: browser – streaming audio/video: media player ❍ processes communicate by an application-layer protocol • e.g., email, Web Application-layer protocols ❍ one “piece” of an app ❍ define messages exchanged by apps and actions taken ❍ implementing services by using the service provided by the lower layer, i.e.,
View Full Document