History Internet Internet � 1962: Paul Baran, packet switching � 1969: DARPA, 4-node ARPANET � 1974: Vint Cerf, Bob Kahn, TCP � 1982: TCP/IP στο ARPANET � 1984: DNS � 1986: NSFNET Backbone Network, 56kbps � 1992 : Tim Berners-Lee, WWW Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 2 Development of the internet Internet Network service providers (US) NSFNET MCI, NETCOM δίκτυο κορ µ ού SPRINT, PSI AT&T, BBN ANS, Uunet, Verio ∆ίκτυα τοπικής ε µ βέλειας EBONE, Qwest,... ∆ίκτυα πελατών NAPs (Network Access Points) Architecture and Χρήστες ISPs Services Internet: 1990 ∆ίκτυα πελατών Internet: 2000+ Χρήστες 2000: >75 public NAPs, 100M computers, 3M domains Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 3
Client-server service model Applications � Server: application that listens to a specific � Use the client – server model network address (N,p) � FTP: Listens to port 21, 2 TCP connections • p: same for identical services � SMTP: simple mail transfer protocol � Client: “light” application, runs locally, • Receives: message + addresses of receivers connects for short time to a server using TCP � Telnet: Simulates direct terminal connection or UDP server C � RTP: real-time transfer protocol server A server C applications • audio+video transmission with small dealy • Transmitter: Codes, Compresses 100 101 server B • Receiver: Stores, decodes ports client client Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 5 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 6 Electronic mail WWW Access the mail server for messages Send an email message � HTTP: hypertext transfer protocol POP3 • Uses TCP for transmission of files (port 80) IMAP SMTP SMTP http • web browser: client, remote machine: server http • 1. “click” go to my home page user agent (Jane) user agent (Alice) (Netscape) <A HREF=“http://www.aueb.gr/users/courcou”> (MS Outlook) mail server mail server • 2. Opens a connection with the server (3-way xxx.ntua.gr 25 hermes.aueb.gr 25 handshake), Send the file’s address • 3. server: Asks for the password, authentication, Sends the file and terminates his connection mail to jane@ntua.gr from alice@aueb.gr POP3: port 110, memory less • 4. browser: Terminates his connection IMAP: memory http: only a browser is required to send and receive Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 7 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 8
WWW (2) HTML � HTML: hypertext marking language <HTML> <HEAD> • The browsers understand html <TITLE> Origins of the Internet</TITLE> </HEAD> � example: • My personal web page, <BODY BGCOLOUR = “white” TEXT = “darkblue”> <P>The history of the Internet begins at the height of the cold war.... • HTML code ...see <A HREF = http://www.aueb.gr/fileF.html> map F <\A> for details... � URL: uniform resource locator .................................................................a nuclear attack?</P> • “identity” of network places <P>Communication networks of the day were.................................. ....................................................................................................... − www.aueb.gr/users/courcou ....<IMG SRC = http://www.ntua.gr/pictures/stars.gif > ................ − Access protocol, Network address ................................................................................................</P> − host name, path </BODY> </HTML> Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 9 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 10 Management of TCP connections How http functions 3 way handshake model Web page = consists of different objects ( base html file + JPEG, GIF,Java ap.) client server SYN: (SYN=1, seq=client_isn) TCP client server A Base html file F SYN.ack: (SYN=1, seq=server_isn, Get F ack= client_isn+1) SYN F ack: (SYN=0, seq=client_isn+1, SYN.ack ack= server_isn+1) Get A B A m ack data http request Get B FIN Get F B ack F FIN Get A Http1.1 A ack Get B B Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 11 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 12
Http mesages http request message request line (one line) Two types of http messages: request and response HTTP RESPONSE message HTTP REQUEST message HTTP/1.1 200 OK POST /yahoo.com/search HTTP/1.1 Connection: close GET /users/courcou/index.html HTTP/1.1 Date:… Host: www.aueb.gr header lines Server:Apache Connection: close Last-modified: Mon, 12 May 1999 02:23:26 User-agent: Mozilla/4.0 Content-length: 23232 Accept-language:gr Content-type: text/html arg1?arg2?arg3 data…………………… entity body ……………………….. Πείρα µ α : 301 Moved Permanently telnet www.aueb.gr 80 304 Not modified since GET /users/courcou/index.html HTTP/1.0 400 Bad Request 401 Authorization required 404 Not Found Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 13 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 14 http request message http response message Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 15 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 16
http response status codes Authentication � In the first line of a response message Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 17 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 18 Cookies Conditional GET � Keep “state” � Client-side caching Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 19 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 20
Creating Dynamic Content Dynamic Content Common Gateway Interface (CGI) � A set of standard methods and routines used to write a stand- � A request is generated by the browser (as an alone software program that knows how to receive requests from a Web Server and returns data to the server HTTP request) and contains several things � Written in a wide variety of programming languages (Perl, Visual Basic etc.) (concept of the request string): � Problem : Create a process for each CGI program Web Server • server + program + form data Common Gateway Interface http://www.anyserver.com/cgi-bin/results.cgi?name=Sony&cat=TV Process 1 Process 2 -Runtime Environment -Runtime Environment location and - Environment Variables - Environment Variables Key=value pairs web server -Program -Program name of program Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 21 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 22 IP addresses Internet • 4 numbers separated by fullstops • example: 128.171.17.13 • Official server addresses / hosts • Official Name: ΙΡ address 128.171.17.13 Names and addresses 246.38.17.145 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 24
From names to addresses Name and addresses (2) root name server � Basic Problem: root name server Computer Name -> Network address iterative query 2 2 6 • Corresponding example: Telephone catalogue 7 3 3 local � Name on the internet: Hierarchical Structure authoritative 4 name name server • domains: .com, .edu, .gov, .int, .mil, …, .gr, ,.fr, .be, ... server dns.berkeley.edu 7 1 8 dns.aueb.gr 4 5 1 5 6 8 • Sub-domains: berkeley.edu, aueb.gr, forth.gr, … • Sub-sub-dmains: ics.forth.gr, thetis.ics.forth.gr, ... authoritative name server • Every (sub) domain has a responsible name server (DNS) requesting requesting dns.cs.berkeley.edu − Each DNS knows the addresses of the sub-domain DNS’s host host high.aueb.gr dias.aueb.gr cyber.cs.berkeley.edu recursive queries Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 25 Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 26 The Internet value chain (2) Internet value chain Backbone ISP user Applications and content Access (ASP) Bit pipes Server farm Basic concepts and directions in telecommunications C. Courcoubetis Basic concepts - 28
Recommend
More recommend