Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Zero-configuration networking wikipedia , lookup
Computer network wikipedia , lookup
Piggybacking (Internet access) wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Network tap wikipedia , lookup
CS447 - Networks and Data Communications Introduction to CS447 Department of Computer Science Southern Illinois University Edwardsville Spring, 2016 Dr. Hiroshi Fujinoki E-mail: [email protected] Introduction/000 CS447 - Networks and Data Communications Agenda • Topics this course will discuss • Types of networks this course will deal with • What this course is about • What this course is NOT about • Programming projects expected in this course Introduction/001 CS447 - Networks and Data Communications Topics this course will discuss Three logical layers in computer networks Applications (application software) • E-mail • Web-browser • Streaming audio/video • Game • On-line banking • Telephony Protocols • HTTP • TCP • IP Hardware • Routers • Switches • Wireless transmitters • Cables • Ethernet adapters • Modems Computer Management Information System Algorithms • Routing algorithms • Routing protocols • Error control • FTP • SSL • Flow control • UDP • Compression System Software The areas this course (CS447) will deal with Computer Science Electrical Engineering Protocols = implementation Algorithms = design/logics Introduction/002 CS447 - Networks and Data Communications What this course is about 1. Understanding major components in computer networks 2. Understanding how the network hardware and software components work 3. Understanding how to make sure the things work as expected 4. Understanding fundamental network programming skills Introduction/008 CS447 - Networks and Data Communications 1. Understanding components in computer networks - What are the major network hardware components? Data transmitting devices (NICs) Switching devices (Repeaters, Hubs, Switches and Routers) Network Cables (Copper wire, Optical fiber) - What are the major network software components? Network application software Data transmission protocols Various data transmission and routing algorithms Introduction/009 CS447 - Networks and Data Communications 2. Understanding how the network hardware and software components work • Design Concepts - What are the purposes of the network system software? - How are the network system software designed? • Implementation - How can we (our network application software) develop the system software or network application programs? - We cover this by programming assignments 3. Understanding how to make sure the things work as expected • Performance Evaluation - How can we measure the performance of the system software? • Performance Prediction Introduction/010 - How can we predict the performance? CS447 - Networks and Data Communications 4. Understanding fundamental network programming skills • Almost all network applications that use TCP/IP depend on “socket interface” to perform any network activity. - You can develop any network application using socket • Socket interface is provided as a set of functions (a. k. a., “API”) that application programs can call to perform network activities • Each platform has its own socket interface Windows = “winsock” library Have syntax-level compatibility UNIX/LINUX = socket library • Most of the high-level programming languages have socket library included in it Introduction/011 CS447 - Networks and Data Communications Weight for subjects Understanding components in computer networks (lectures and quizzes) Performance Evaluation and Prediction Implementation (programming assignments) Introduction/012 Design Concepts CS447 - Networks and Data Communications What this course is NOT about • Learning products from particular software/hardware venders - Learn DreamWeaver for developing web home pages - Learn how to set up routers from particular manufactures - Learn how to make a home page using HTML, PHP, MS ASP, etc. • Preparing for particular network certificate - Understanding topics in this course will provide a foundation for those certificate • After all, this course is never meant for particular network products • Not for anything that does not require understanding of working of underlying networks Introduction/013 CS447 - Networks and Data Communications What programming project covers Programming projects expected in this course Application Layer E-mail WWW Game Streaming Audio/Video Tele-Conferencing Telephony Socket Interface (as function calls) System Software Layer TCP IP Device Drivers Hardware Layer Hardware (Network Adapter) Introduction/014 CS447 - Networks and Data Communications Definitions for academic dishonesty Can we do this? 1. Get a source code from somebody’s website and modify it. NO 2. Get a source code from a friend and modify it. NO 3. Work with your friend and create a source code. Then modify it. NO 4. Get source code given by a professor in another course and modify it. NO 5. Study example source code from a book and develop your own (instead of copying it). YES Only “function-level” copy is allowed (up to 5 to 6 lines in the entire work) Source must be mentioned Introduction/015 CS447 - Networks and Data Communications Types of networks this course will deal with • Circuit-Switching Networks - Data is transmitted as a stream of signals - Before you start transmission, you need to reserve network resources Communication Networks - You hold the resources until you complete your transmission - Telephone networks • Packet-Switching Networks - Data is transmitted by packets - You can start transmission any time Introduction/003 - Network resources are shared - Internet CS447 - Networks and Data Communications Circuit-Switching Networks Example: Public telephone networks Analog Signal Analog Signal Analog Signal Analog Switch Analog Switch Analog Signal Analog Switch Analog Switch Analog Switch Introduction/004 Analog Signal Analog Switch CS447 - Networks and Data Communications Circuit-Switching Networks Example: Public telephone networks Analog Signal Analog Signal Analog Signal Analog Signal Analog Switch Analog Switch Analog Switch Analog Switch Analog Switch Introduction/005 Analog Signal Analog Switch CS447 - Networks and Data Communications Packet-Switching Networks Example: Internet 111 Digital Switch Digital Switch 111 111 Sender PC Receiver PC 010 Digital Switch 100 010 010 010 Digital Switch Digital Switch Digital Switch 111 010100111 100 100 Digitized data 100 Digital Switch Digital Switch 100 111 010100111 Analog Signal Analog Signal Introduction/006 010 CS447 - Networks and Data Communications Types of networks this course will deal with • Circuit-Switching Networks - Data is transmitted as a stream of signals - Before you start transmission, you need to reserve network resources Communication Networks - You hold the resources until you complete your transmission - Telephone networks • Packet-Switching Networks - Data is transmitted by packets This course will mainly discuss packet-switching networks Introduction/007 - You can start transmission any time - Network resources are shared - Internet