* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download COP 4930 Computer Network Projects
Survey
Document related concepts
Computer security wikipedia , lookup
Network tap wikipedia , lookup
Distributed firewall wikipedia , lookup
Computer network wikipedia , lookup
Deep packet inspection wikipedia , lookup
Airborne Networking wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Remote Desktop Services wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Wake-on-LAN wikipedia , lookup
List of wireless community networks by region wikipedia , lookup
Transcript
COP 4930 Computer Network Projects Summer C 2004 Prof. Roy B. Levow Lecture 1 Introduction Network: system for connecting computer using a single transmission technology Internet: set of networks connected by routers that are configured to pass traffic among any computers attached to networks in the set (fig. 17.3) – Internetworking - universal service over a collection of networks The Internet A single global network – Many interconnected networks Roots in military network called Arpanet Fundamental changes from centralized to distributed computing Incorporated features for reliability and robustness – Multiple links – Distributed routing The Internet.2 TCP/IP protocol made internetworking possible – Developed after Arpanet – Switchover occurred in 1983 Exponential growth - doubling every 18 months (fig. 2.2) Packet Networks and Packet transmission – Data exchange over a network using small transmission units Packet switching – Packets are transmitted from one node to another from source to destination – Each node receives packet and retransmits it to next node along route to destination Network Applications Network applications - programs that use a network – Usually organized as client-server applications Server clients starts and waits for requests from Examples – telent, ftp, http (web browsing), email Complexity of Networking Many different technologies – Hardware – Software No unifying theory Confusing terminology – Many TLAs – Constant change IP Address 32 bit binary identifier for computer on the Internet Ususally written as 4 decimal numbers separated by a “dot” – 131.91.128.83 – Each digit represents 8 bits of IP address Used internally for all communication Domain Name Mnemonic name for a computer on the Internet – www.fau.edu Components separated by “dot” Forms a forest of names with the rightmost, top-level, domain as the root Software translates to IP address Probing the Internet Various utilities provide information about computers on the internet – ping – is it possible to connect to the specified computer – traceroute (tracert) – lists nodes along route taken by a packet from source to destination – nslookup – get information about a node from IP address or domain name Network Programming Network allows arbitrary applications to communicate Programmer does not need to understand network technologies Network facilities accessed through an Application Program Interface Basic Paradigm for Network Communication Establish contact Exchange data (in both directions Terminate connection Establishing Contact Occurs between a pair of applications One application starts (first) and waits for contact – Called the server Other application initiates contact – Called the client Identifying a Service Two components of identification – A host computer running the service – The particular service on the computer Component identification – Computer: domain name or IP address – Application: service name or port Service routines translate between names and numbers Simple API Example Operation await_contact make_contact Meaning used by a server to wait for contact from a client Used by client to contact a server Simple API Example.2 Operation cname_to_comp appname_to_appnum Meaning used to translate a computer name to an equivalent internal binary value translate program name to internal binary value Simple API Example.3 Operation send recy send_eof Meaning used by either client or server to send data used by either client or server to receive data used by both client or server after they have finished sending data Example #1: Echo Useful for network testing Server returns exact copy of data sent User on computer X runs echoserver 22000 User on another computer runs echoclient X 22000 Example #2: Chat Miniature version of chat Allows two users to communicate User on computer X runs chatserver 25000 User on another computer runs chatclient X 25000 Example #3: Web Server User on computer X runs webserver 27000 User on another computer runs browser and enters URL: http://X:27000/index.html Simple web client