Presentation is loading. Please wait.

Presentation is loading. Please wait.

INE1020: Introduction to Internet Engineering 5: Web-based Applications1 Lecture 12: Emerging Internet Technologies r Peer-to-peer vs. client-server computing.

Similar presentations


Presentation on theme: "INE1020: Introduction to Internet Engineering 5: Web-based Applications1 Lecture 12: Emerging Internet Technologies r Peer-to-peer vs. client-server computing."— Presentation transcript:

1 INE1020: Introduction to Internet Engineering 5: Web-based Applications1 Lecture 12: Emerging Internet Technologies r Peer-to-peer vs. client-server computing r Multicast vs. unicast communications r Internet Telephony

2 INE1020: Introduction to Internet Engineering 5: Web-based Applications2 1. Peer-to-peer Computing r Peer-to-peer computing: m Hosts or computers are linked together without a central repository for applications. m Hosts communicate with one another to share files. m Each host can act both as client or server at the same time. m cf. in client-server computing: a client is connected to a server (which is normally bigger and faster than the client). a server functions as the “nerve center”, where shared applications are located. clients talk to the the server when they need to use applications. The server rarely gets any files from the client. m Example: Napster, Gnutella, Freenet

3 INE1020: Introduction to Internet Engineering 5: Web-based Applications3 1. Peer-to-peer Computing r Key components: m Tracking online users Where to keep the information of which users are currently online. Choice: centralized (by a special server) or distributed (by each user). m Peer-to-peer sharing model push, pull, or both models protocol choice: HTTP, FTP,...

4 INE1020: Introduction to Internet Engineering 5: Web-based Applications4 1.1. P2P Example: Napster  provides the ability to search for MP3 files and initiate a direct transfer between the clients ( MP3 format is a compression system for music ). m the files stay on the client machine, never passing through the server. r Centralized user tracking: m Napster logs online users onto the central server. m The main purpose of this central server is to keep an index of all the Napster users currently online and connect them to each other. It does not contain any of the MP3 files itself.

5 INE1020: Introduction to Internet Engineering 5: Web-based Applications5 1.1. P2P Example: Napster m Query: Napster utility queries the index server for other Napster computers online that have the MP3 files you have requested. Whenever a match is found, the Napster server returns a list of computers which have the requested file. r Peer-to-peer sharing model: m Pull-model. m You initiate the downloading of the file(s). r OpenNap: Open Source Napster Server m Extension of Napster to share any media types and to link servers together m http://opennap.sourcefor ge.net/

6 INE1020: Introduction to Internet Engineering 5: Web-based Applications6 1.2. P2P Example: Gnutella r Allows sharing of any file types. r Distributed user tracking: m Your Gnutella utility announces your presence to the peer that you connect to. m The peer then propagates that information to all the peers it connects to and so on. m Example: m Query: You send your query to the peer that you connect to. That peer then propagates your queries to all peers that it connects to and so on. Peers that have the requested files send replies to you. r Peer-to-peer sharing model: m allows pull and push model. r To download Gnutella utility: m http://www.gnutella.co.uk/d ownloads/ Alice Charlie Eve Bob

7 INE1020: Introduction to Internet Engineering 5: Web-based Applications7 2. Multicast r Multicast: m sending of a packet from one sender to multiple receivers with a single send operation m involve one sender and multiple receivers - multicast group m cf. unicast: involve just one sender and one receiver m Example of multicast applications: sending time-critical, real-time stock quotes to clients news broadcast, video conferencing

8 INE1020: Introduction to Internet Engineering 5: Web-based Applications8 2. Multicast r Multicast application can be implemented in many ways: m use separate unicast transport connection to each of the receivers m use native multicast support at the network layer m what are the advantages of the second approach ?

9 INE1020: Introduction to Internet Engineering 5: Web-based Applications9 2. Multicast r Some reasons for using multicasting: m to decrease the network load. E.g. in stock ticker applications which are required to transmit packets to hundreds of stations. m supports webcasting applications (audio and video applications). E.g. one source sending real-time audio and video over the Internet to one or more receivers m client flexibility in joining and leaving a group makes the variable membership much easier to handle.

10 INE1020: Introduction to Internet Engineering 5: Web-based Applications10 2. Multicast r A single IP address is used to identify the group of receivers, namely: m class D multicast address m address 224.0.0.1 is used to address all hosts that take part in IP multicasting m there is no network and host part, so the receivers may be spread across many networks 1110 multicast address D 224.0.0.0 to 239.255.255.255 32 bits

11 INE1020: Introduction to Internet Engineering 5: Web-based Applications11 2. Multicast r Questions: ¬ How to establish and maintain a multicast group ? ­ How to deliver a multicast datagram to all group members ?

12 INE1020: Introduction to Internet Engineering 5: Web-based Applications12 2. Multicast r Answers: ¬ IGMP: Internet Group Management Protocol - for a host to join/leave a multicast group version 2 (IETF RFC 2236) operates between a host and its directly attached router used by the host to tell its attached router that its application wants to join a specific multicast group

13 INE1020: Introduction to Internet Engineering 5: Web-based Applications13 2. Multicast r Answers: ­ multicast routing protocols - for routers to deliver datagrams to the hosts that want to receive them it finds a tree of links that connects all of the routers that have attached hosts belonging to the multicast group

14 INE1020: Introduction to Internet Engineering 5: Web-based Applications14 2. Multicast Example: MBone r MBone: Multicast Backbone m MBone is a virtual Internet Backbone for Multicast IP m an experimental system which is acting as a testbed for multicast application and protocol design and refinement. m a voluntary effort, consisting of Internet service providers who route multicast traffic over their networks, and end users who install multicast routers at their sites. r MBone Multimedia Applications m VideoConference (vic) m Visual Audio Tool (vat) m WhiteBoard (wb) m Robust Audio Tool (rat) m Other Tools

15 INE1020: Introduction to Internet Engineering 5: Web-based Applications15 3. Internet Telephony r What is Internet Telephony?  Definition: Internet telephony (IPT) is transport of telephone calls over the Internet, no matter whether traditional telephony devices, multimedia PCs or dedicated terminals take part in the calls and no matter whether the calls are entirely or only partially transmitted over the Internet.

16 INE1020: Introduction to Internet Engineering 5: Web-based Applications16 3. Internet Telephony r Also known as VoIP (Voice over IP) Telephony r Refers to communications services - voice, fascimile, and/or voice-messaging applications - that are transported via the Internet rather than PSTN. r Involves: m conversion of the analog voice signal to digital format m compression/translation of the signal into IP packets for transmission over the Internet. m the process is reversed at the receiving end.

17 INE1020: Introduction to Internet Engineering 5: Web-based Applications17 3. Internet Telephony r Benefits of IP Telephony m Efficiency: Network unification & convergence –Unify network operation, management and maintenance Better utilize available network resources –Packetization allows transport of multiple media formats Ultimately delivering inexpensive calling m Flexibility: Efficient, Colorful and Information-rich Communications –Packetized voice can be mixed, maneuvered, and transported together with other types of media enabling unlimited opportunities for application innovation and value creation –Simultaneous availability of rich and relevant information

18 INE1020: Introduction to Internet Engineering 5: Web-based Applications18 3. Internet Telephony r Connection configuration: m PC-to-PC m PC-to-Phone via ITG = Internet Telephony Gateway m Phone-to-Phone m Phone-to-PC ITG

19 INE1020: Introduction to Internet Engineering 5: Web-based Applications19 Phone network connection Translation function Internet connection PSTN Internet 3. Internet Telephony r Internet Telephony Gateway (ITG) m takes the standard telephone signal, digitizes it, significantly compresses it, packetizes it for the Internet using Internet Protocol (IP), and routes it to a destination over the Internet. m reverses the operation for packets coming in from the network and going out the phone. m both operations (coming from and going to the phone network) take place at the same time, allowing a two-way conversation.

20 INE1020: Introduction to Internet Engineering 5: Web-based Applications20 3. Internet Telephony r Internet telephony applications: m Unified messaging - voicemail2email. m Adding Voice to the Interactive Online Gaming Experience IP Network

21 INE1020: Introduction to Internet Engineering 5: Web-based Applications21 Further Readings r P2P Computing m Napster http://www.howstuffworks.com/napster2.htm m Gnutella http://www.rixsoft.com/Knowbuddy/gnutellafaq.html r Multicast m http://www.cs.columbia.edu/~hgs/internet/multic ast.html r Interactive Communications http://iptel.org/info/ http://www.iptelephony.org/GIP/technology/


Download ppt "INE1020: Introduction to Internet Engineering 5: Web-based Applications1 Lecture 12: Emerging Internet Technologies r Peer-to-peer vs. client-server computing."

Similar presentations


Ads by Google