* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Database Client/Server Apps - NYU Stern School of Business
SIP extensions for the IP Multimedia Subsystem wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Airborne Networking wikipedia , lookup
Computer network wikipedia , lookup
Deep packet inspection wikipedia , lookup
Distributed firewall wikipedia , lookup
Dynamic Host Configuration Protocol wikipedia , lookup
Wake-on-LAN wikipedia , lookup
Remote Desktop Services wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Internet protocol suite wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Norman White Stern School of Business Csntier.ppt      Background Data communications TCP/IP Physical networks Database management systems   Data Communications Networking … Some Basics    SOURCE SINK MEDIUM SOURCE telephone cable satellite MEDIUM SINK         Telephone Satellite Cellular Wifi Cable Fiber Optic Blue Tooth etc.  Analog  Represent information as a waveform  Music, video,voice  Digital   Represent Information as a string of bits Digitization   Convert from analog to digital by sampling the waveform at fixed intervals ISDN phone line 64000 bits per second  8000 samples per second (each sample an 8 bit (0-255)) Number   Converts Digital signal to analog so it can be sent over phone lines Reconverts analog to digital on other end 1 1 1 0 0 01110000 0 0 0   Need rules to communicate between systems Communications protocols are the rules for a particular method of communication     Who says what, when How are errors handled How much information in a message How is message routed from sender to receiver  Asynchronous - A single character is a message    Errors sometimes detected, but no recovery Horizontal parity used to detect single character errors Synchronous - A group of characters constitute a message  Synchronous protocols usually recover from errors  Bisynchronous     Point to point conversation Not used much any more Each message is acknowledged as received Multilateral protocols    Messages routed from one machine to another Message includes address of destination Needs to be routed by intermediate nodes     Application Layer – Applications and processes that use network Host-host Transport Level – end to end data delivery Internet layer – defines the datagram and handles data routing Network Access layer – routines for accessing physical networks Protocol of the Internet    Originally developed as a protocol that would withstand wide network outages (Arpanet) Now it has become the standard protocol for almost all data communications Consists of two parts, IP and TCP    Handles communications between 2 processes anywhere on internet Guarantees correct data is received by receiver Uses IP for delivery and routing of packets   Fixed size blocks of information that are sent using TCP Packet includes information like Address of host to send this to  Address of host it is coming from  Destination Port Number  Sending Port Number  MAC address of sender/receiver (hardware address)  Sequence info  Data      Handle datagrams Defines Internet addressing scheme Routes datagrams to remote hosts Performs fragmentation and reassembly of datagrams    Every host has an address in the form of www.zzz.yyy.zzz (the “IP” address) Each subcomponent refers to a particular breakdown of all of the machines on the internet. 128.122.197.133 = sales.stern.nyu.edu 128 = edu domain  122 = nyu network  197 = subnet at stern  133 = address of sales computer     The TCP/IP protocols include the concept of “name lookup”, where names like sales.stern.nyu.edu are translated into their numeric addresses (128.122.197.133) Hence one has to specify the locations of the “name servers” you wish to use.  These are servers that are given a name (sales.stern.nyu.edu) and return its address.  Gateways (also called IP routers) are the computers used to connect your network to the internet   TCP/IP uses “ports” to connect services between machines The destination machine has particular ports offering different types of service    23 = telnet , 80 = WWW etc. Client machine uses random port when it connects to a service (i.e. port 80 for http requests) Combination of destination port and originating port = socket (i.e. a destination port that is in use)        telnet - 23 Ssh - 22 ftp - 21 NFS - Network File Service - 2049 Talk - 517 Sendmail - 25 http - 80  World Wide Web (usually port 80)   Hyper media interface to internet Connects clients and servers using HTTP  Hyper Text Transfer Protocol  Subset of the internet   Problem – How do we fully connect thousands of computers together? (How many wires?)  2 computers – 1  3 computers – 3  4 computers - 6  5 computers – 10  N computers – (N*(N-1)/2)  1000 computers – about .5 million connections Solution  Don’t connect every computer to every other computer, instead “route” information from one computer to another  Protocol    Rules to follow telling each computer what to send where, when Packet switched protocols include routing of packets from source to destination Protocols also define rules to follow if there are errors, I.e. how to recover, retransmit etc.   Low level protocols route packets (of bits) around the network. Packets include address High level protocols know what the packets contain    TCP/IP client server protocols Client sends requests over network to a “server” program running on another computer WWW C/S application     A program on one computer (the Client) can request services from a program on another computer (the Server) Client issues requests to a server someplace on the network Requests are specially formatted messages which can be understood by almost any type of computer Requests are sent using a “standard” telecommunications protocol   Server responds with a message in the “standard” format Client receives message and processes it    In the WWW model, the client is the browser (Firefox, Safari, I.E.) running on your computer The server is the web server running somewhere on the internet Both the client and server must be connected through a TCP/IP communications network  The situation gets more complex, if the initial (Tier 1) server in turn becomes a client and requests services from another server in order to process the web request. There are now 3 programs running on 3 different computers involved in the processing of the web request. User Web Browser Web Server Data Base Server  Two tier    Clients connect directly to servers Example PC clients, LAN DB server, Web server Three … N tier   Clients connect to intermediate servers which in turn issue requests to other servers Examples  PC to UNIX to IBM Mainframe User Web Browser Application Server Web Server Data Base Server     JAVA – Sun developed language that runs code on the user’s machine (i.e. built in to the web browser)  Off loads processing from server  Basis for new JINI language for appliances FAT Client  Term used to refer to putting all of application code on the user’s machine (on the hard drive) THIN Client –  Distribute applications directly over the internet using JAVA. App is downloaded everytime your run it. CACHE  Keep recently used html pages, images, applets etcs on user hard drive. Only download when they change  TCO   HTTP   Hyper Text Transfer Protocol – Protocol of the WWW Applet   Total Cost of Ownership – includes support A compiled Java program ready for distribution over WWW Digital Signature  Numeric identifier indicating that a document hasn’t been compromised or that authenticates the creator.          Data Base Servers Application Servers Web Servers Ad Servers (Double Click) Multimedia (audio/video servers) Calendar Servers Authentication (LDAP) servers Mail servers Proxy Servers       CS computing isolates each layer from the other layers. Computers can be added as necessary to scale performance Processing can happen anywhere, so that bottlenecks can be eliminated Machines can be dedicated/optimized for different kinds of processing Can start with everything on one machine, but add machines as load grows Needs TCP/IP network protocol