Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
TCP congestion control wikipedia , lookup
Computer security wikipedia , lookup
Computer network wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Deep packet inspection wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
EEC-484/584 Computer Networks Lecture 3 Wenbing Zhao [email protected] (Part of the slides are based on Drs. Kurose & Ross’s slides for their Computer Networking book) 2 Second Session Issue • Available time slot – – – – – – M W 4-5:50pm T Th 6-7:50pm M W 8-9:50pm M W 2-3:50pm T Th 2-3:50pm F 4-7:50pm • 1st option: to have a second session with at least 16 students • 2nd option: common lecture time, but 3 sessions of labs and discussions Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 3 Outline • • • • Mock quiz Reference models Networking Standards Application layer protocols – Overview • Change of schedule – Next time will be lecture – Lab 1 will be deferred to Sept 12 Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 4 Reference Models • The OSI Reference Model – ISO – International Standards Organization – OSI – Open Systems Interconnection • Open: open for communication with other systems • The TCP/IP Reference Model Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao The OSI Reference Model Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 5 6 Principles Applied in Deriving Layers • A layer should be created where a different level of abstraction is needed • Each layer should perform a well-defined function • The layer boundaries should be chosen to minimize info flow across interfaces • The number of layers should be – large enough to separate distinct functions – small enough to have a manageable architecture Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 7 TCP/IP Reference Model • TCP – Transmission Control Protocol • IP – Internet Protocol • Used in Internet and its predecessor ARPANET • TCP/IP invented by Cerf and Kahn in 1974, became official protocol of ARPANET in 1983 Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 8 TCP/IP Reference Model Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 9 TCP/IP Reference Model • Internet Layer – Connectionless (packet switched) – Injects packets into the network; delivers them to the destination – May be delivered out-of-order – Packet routing and congestion control are key issues – Uses Internet Protocol Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 10 TCP/IP Reference Model • Transport layer, two protocols • TCP – Transmission Control Protocol – Point-to-point – Connection-oriented – Reliable (no message loss or corruption) – Source ordered (sequenced) – Flow control – Byte stream, does not maintain message boundary Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 11 TCP/IP Reference Model • UDP – User Datagram Protocol – Point-to-point – Connectionless – Unreliable – Not source ordered – No flow control – Preserve message boundary Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 12 TCP/IP Reference Model • Application Layer – contains higher-level protocols – DNS – Domain Name Service • Maps host names onto their network addresses – HTTP – HyperText Transfer Protocol • Fetches pages on the World Wide Web – FTP – File Transfer Protocol • Allows user to transfer files efficiently from one machine to another Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 13 TCP/IP Reference Model • Host-to-Network Layer – Host has to connect to the network using some protocol so it can send IP packets to it – No protocol is defined Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 14 Network Standardization • Why standard? – Only way to achieve interoperability – Standards also increase the market for products adhering to them – Two kinds of standards • De facto – from the fact (standards that just happened) • De jure – by law (formal, legal standards adopted by authorized organization) Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao Treaty Organization between Nations United Nations ITU - International Telecommunications Union CCITT/ITU-T – telephone and data communications Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 15 16 Voluntary, Nontreaty Organization ISO (International Standards Organization) issues standards on wide range of topics 200 TC (Technical Committees) TC97 – computers and info processing SC (Subcommittees) WG (Working Groups) ANSI (American National Standards Institute) Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao IEEE 802 Standards Spring Semester 2006 EEC-484/584: Computer Networks 17 Wenbing Zhao 18 Internet Standard Body • Internet Society (used to be Internet Architecture Board) – Internet Research Task Force (IRTF) • Concentrate on long term research – Internet Engineering Task Force (IETF) • Deal with short term engineering issues • Standardization process – Proposed standard: request for comments (RFCs) – Draft standard: > 4 month test – Internet standard: if convinced the idea is sound Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 19 Application Layer Protocols • Principles of networked applications – Client server model – Sockets – Addressing – Protocol – What do we need from transport layer? • WWW and HTTP Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 20 Creating a Network Application • Write programs that – run on different end systems and – communicate over a network application transport network data link physical • No need to write code for devices in subnet – Subnet devices do not run user application code – application on end systems allows for rapid app development, propagation Spring Semester 2006 application transport network data link physical EEC-484/584: Computer Networks application transport network data link physical Wenbing Zhao 21 Inter-Process Communications • Process: program running within a host • Processes in different hosts communicate by exchanging messages Spring Semester 2006 • Client process: process that initiates communication • Server process: process that waits to be contacted EEC-484/584: Computer Networks Wenbing Zhao 22 Sockets • Process sends/receives messages to/from its socket • For each point-to-point connection, there are two sockets, one on each side • API: (1) choice of transport protocol; (2) ability to fix a few parameters Spring Semester 2006 host or server host or server Controlled by app developer process process socket socket TCP with buffers, variables Internet TCP with buffers, variables Controlled by OS EEC-484/584: Computer Networks Wenbing Zhao 23 Addressing • To receive messages, process must have identifier • Host device has unique 32-bit IP address • Question: Does IP address of host on which process runs suffice for identifying the process? Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 24 Addressing • Identifier includes both IP address and port numbers (16-bit) associated with process on host • Example port numbers: – HTTP server: 80 – SSH server: 22 • To send HTTP request to academic.csuohio.edu Web server: – IP address: 137.148.49.46 – Port number: 80 Spring Semester 2006 EEC-484/584: Computer Networks Wenbing Zhao 25 Application Layer Protocol Defines • Types of messages exchanged – e.g., request, response • Message syntax – what fields in messages & how fields are delineated • Message semantics – meaning of information in fields • Rules for when and how processes send & respond to messages Spring Semester 2006 Public-domain protocols: • defined in RFCs • allows for interoperability • e.g., HTTP, SMTP Proprietary protocols: • e.g., KaZaA EEC-484/584: Computer Networks Wenbing Zhao What Transport Service Does an Application Need? Data loss • some apps (e.g., audio) can tolerate some loss • other apps (e.g., file transfer, telnet) require 100% reliable data transfer Timing • some apps (e.g., Internet telephony, interactive games) require low delay to be “effective” Spring Semester 2006 Bandwidth • some apps (e.g., multimedia) require minimum amount of bandwidth to be “effective” • other apps (“elastic apps”) make use of whatever bandwidth they get EEC-484/584: Computer Networks Wenbing Zhao 26 27 Transport Service Requirements of Common Applications Data loss Bandwidth Time Sensitive file transfer e-mail Web documents real-time audio/video no loss no loss no loss loss-tolerant no no no yes, 100’s msec stored audio/video interactive games instant messaging loss-tolerant loss-tolerant no loss elastic elastic elastic audio: 5kbps-1Mbps video:10kbps-5Mbps same as above few kbps up elastic Application Spring Semester 2006 EEC-484/584: Computer Networks yes, few secs yes, 100’s msec yes and no Wenbing Zhao