Mobile Computing & Software Engineering Lab Introduction and Overview Prof. Chuan-Ming Liu Computer Science and Information Engineering National Taipei University of Technology Taipei, TAIWAN NTUT, TAIWAN 1
Mobile Computing & Software Engineering Lab Brief History Network Group of connected, communicating devices internet v.s. Internet two or more networks that communicate (internet, lowercase i ) hundreds of thousands interconnected networks (Internet, uppercase I ) NTUT, TAIWAN 2
Mobile Computing & Software Engineering Lab Time Line The following is a list of important Internet events in chronological order: 1969. Four-node ARPANET established. 1970. ARPA hosts implement NCP. 1973. Development of TCP/IP suite begins. 1977. An internet tested using TCP/IP. 1978. UNIX distributed to academic sites. NTUT, TAIWAN 3
Mobile Computing & Software Engineering Lab Time Line (cont.) 1981. CSNET established. (NSF sponsored) 1983. TCP/IP becomes the official protocol 1983. MILNET was born. 1986. NSFNET established. (NSF) 1990. ARPANET replaced by NSFNET. 1995. NSFNET became a research network. 1995. ISPs started. NTUT, TAIWAN 4
Mobile Computing & Software Engineering Lab Internet today NTUT, TAIWAN 5
Mobile Computing & Software Engineering Lab Applications using TCP/IP TCP/IP provides the technology that glues internets together Applications using TCP/IP WWW browsing Chat rooms Streaming (webcasting) Etc… NTUT, TAIWAN 6
Mobile Computing & Software Engineering Lab Designing Applications in Distributed Environments Integrating the internet Programmers need to know the principles and techniques to design and implement distributed applications One primary goal for distributed computing: transparency NTUT, TAIWAN 7
Mobile Computing & Software Engineering Lab Protocols and Standards Protocols – rules Standards – agreed-upon rules NTUT, TAIWAN 8
Mobile Computing & Software Engineering Lab Protocols Entity Anything capable of sanding or receiving information Protocol is a set of rules that governs data communication Elements of a protocol Syntax (what) Semantics (how) Timing (when) NTUT, TAIWAN 9
Mobile Computing & Software Engineering Lab Standards Guidelines to manufacturers, vendors, government agencies, and other service providers Two categories for data communication standards: De facto (fact or convention) De jure (law or regulation) NTUT, TAIWAN 10
Mobile Computing & Software Engineering Lab Standards Creation Standards Creation Committees Committees International Standards Organization (ISO) International Telecommunications Union– Telecommunication Standards Sector (ITU-T) American National Standards Institute (ANSI) Institute of Electrical and Electronics Engineers (IEEE) Electronic Industries Association (EIA) NTUT, TAIWAN 11
Mobile Computing & Software Engineering Lab Internet Standards An Internet standard is a thoroughly tested specification that is useful to and adhered to by those who work with the Internet Internet draft : no official status Request for Comments ( RFC ) NTUT, TAIWAN 12
Mobile Computing & Software Engineering Lab 13 Maturity levels of an RFC NTUT, TAIWAN
Requirement levels of an RFC Mobile Computing & Software Engineering Lab 14 NTUT, TAIWAN
Mobile Computing & Software Engineering Lab RFCs can be found at http://www.faqs.org/rfcs NTUT, TAIWAN 15
Mobile Computing & Software Engineering Lab (Non)Standard Application Protocols Standard application protocols Documented Standardized Adopted as part of the official TCP/IP protocol suite File transfer, remote login, e-mail Nonstandard application protocols Private use NTUT, TAIWAN 16
Mobile Computing & Software Engineering Lab Example Remote login protocol– TELNET Define format of data sent to the remote machine format of message that the remote machine sends back Specify encoding character data for transmission messages to control the session or abort a remote operation NTUT, TAIWAN 17
Mobile Computing & Software Engineering Lab Example – TELNET Usage telnet machine Actions Connection: local window asks to connect to the remote machine Two-way communication after connection Send each keystroke Display each character on the user’s window NTUT, TAIWAN 18
Mobile Computing & Software Engineering Lab Example – TELNET [cmliu@csie ~]$ telnet csie.ntut.edu.tw Trying 140.124.180.1... Connected to csie.ntut.edu.tw (140.124.180.1). Escape character is '^]'. Fedora Core release 3 (Heidelberg) Kernel 2.6.10-1.741_FC3smp on an i686 login: NTUT, TAIWAN 19
Mobile Computing & Software Engineering Lab Alternative Service using TELNET TCP/IP uses protocol port numbers to identify application services Remote login service is assigned to port 23 The default service for TELNET protocol is the remote login service To specify the service, one should use telnet machine port# NTUT, TAIWAN 20
Mobile Computing & Software Engineering Lab Alternative Service using TELNET <cmliu@sun:~>[43]telnet purdue.edu 13 Trying 128.210.11.29... Connected to purdue.edu. daytime service Escape character is '^]'. Tue Feb 18 09:32:36 2003 Connection closed by foreign host. NTUT, TAIWAN 21
Mobile Computing & Software Engineering Lab Alternative Service using TELNET Finger service Port number:? 79 On-line testing NTUT, TAIWAN 22
Mobile Computing & Software Engineering Lab Application Flexibility Single piece of software can be used to access more than one service. Protocol design is to find fundamental abstractions that can be used in multiple applications Use standard protocol as possible NTUT, TAIWAN 23
Mobile Computing & Software Engineering Lab Application Flexibility TELNET protocol summary The TELNET protocol provides maximal flexibility because it only defines interactive communication and not the details of the service accessed. TELNET can be used as the communication mechanism for many interactive services besides remote login. NTUT, TAIWAN 24
Mobile Computing & Software Engineering Lab Provider’s Perspective Concurrence processing complicates network software design, implementation, and maintenance Providing concurrent access to application service is important and difficulty; we will discuss concurrent implementation of application protocol software in this course. NTUT, TAIWAN 25
Recommend
More recommend