1 Data Communications and Network Programming: Course Introduction Asst. Prof. Chaiporn Jaikaeo, Ph.D. Computer Engineering Department Kasetsart University, Bangkok, Thailand First Semester, 2015 Most materials in this presentation were prepared by Assoc. Prof. Anan Phoenphoem (
2 Outline Motivation Growth of Computer Networking Data Communication Networks Protocols and Standards Standard Organizations
3 Motivations Efficient way to share resources Cost – less expensive Accessibility – easier Efficient way to exchange information Time – faster Size – bigger Correctness – accurate
4 Example - A Computer Network Media Links Printer Workstation Laptop Scanner Server
5 Data Communication Hi, how are you? Hi, how are you? Computer you? how are Hi, you? how are Hi,
6 Data Comm. Components Hi How are you doing? 5Protocol 4Medium 3Receiver 2Sender 1Message
7 Protocols and Standards Protocol A set of rules governing data communications Syntax: format of data block Semantics: meaning of each section Timing: speed and sequencing Standards De facto (in practice) standards not approved but widely adopted De jure (in law) standards approved by a standard organization, e.g., ISO, IEEE
8 Protocols and Standards To communicate, two devices must follow the same set of communication protocols E.g., they must be connected to the same medium understand each other's messages In other words, they comply with the same standard
9 Data Representation Standards Numbers 8/16/32 bit integers floating point Text ASCII, Unicode Images Bit patterns, Graphics formats JPG/GIF/etc Audio Samples of continuous signal Video Sequence of bitmap images
10 Connection Standards Company A Company D Network Interface Card (NIC) Company B Company C
11 Internetworking How to allow devices from different standards to communicate Gateways/routers – devices capable of communicating in several standards These become "network of networks"
12 The Internet The largest internetwork (network of networks) in the world Devices communicating with TCP/IP protocol suite at high level UCLAStanford UC Santa Barbara U. of Utah
13 Internet Growth #computers attached to Internet
14 Recent and Future Trends The availability of high-quality teleconferencing systems Some social networking applications such as Facebook Twitter Google+ Many others The Internet of Things (IoT)
15 Future of the Internet
16 Future of the Internet
17 Future of the Internet
Internet of Things 18
Connected Living 19
Connected Living 20
21 Future of the Internet
22 What Will We Learn in this course Data communication concepts Computer networking devices Internet protocol suite (TCP/IP) Capture and analyze network traffic of well- known applications Network programming Standalone socket applications Web-based applications Web services
23 Languages and Tools Basic network tools ping, traceroute (tracert on Windows) Network traffic monitor Wireshark Programming Java (with Groovy shell) Serial communication library Such as RXTX
24 Ping
25 Trace Route
26 Monitoring Network Traffic Sample results from Wireshark
Serial Communication Most basic form of device-to-device communication However, most recent computers do not come with a serial port Use USB-Serial dongle instead 27 TX RX GND USB-Serial Dongle
28 Berkeley Socket API Provides serial-communication abstraction over the Internet Java,.NET, Python, etc. provide convenient wrappers around socket API Easier to write than C/C++
29 Web APIs (Web Services) APIs defining set of request and response messages via web context (i.e., HTTP) usually in Extensible Markup Language (XML) or JavaScript Object Notation (JSON) format Examples Facebook API Twitter API Various Google APIs
30 Summary Motivations of computer networking Data Communication components Network application programming and APIs