1 / 30

Data Communications and Network Programming: Course Introduction

Second Semester, 2014. Data Communications and Network Programming: Course Introduction. Asst. Prof. Chaiporn Jaikaeo, Ph.D. chaiporn.j@ku.ac.th http://www.cpe.ku.ac.th/~cpj Computer Engineering Department Kasetsart University, Bangkok, Thailand.

loisk
Download Presentation

Data Communications and Network Programming: Course Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Second Semester, 2014 Data Communications and Network Programming:Course Introduction Asst. Prof. Chaiporn Jaikaeo, Ph.D. chaiporn.j@ku.ac.th http://www.cpe.ku.ac.th/~cpj Computer Engineering Department Kasetsart University, Bangkok, Thailand Most materials in this presentation were prepared by Assoc. Prof. Anan Phoenphoem (http://www.cpe.ku.ac.th/~anan)

  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 Laptop Workstation Media Links Server Scanner Printer

  5. Data Communication Computer Hi, Hi, how how are are you? you? Hi, how are you? Hi, how are you? 01010001 01010001

  6. Data Comm. Components 5 Protocol 1 Message 2 Sender 3 Receiver 4 Medium Hi How are you doing?

  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 150 2 255

  10. Company B Network Interface Card (NIC) Company C Company D Connection Standards Company A

  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. UCLA Stanford UC Santa Barbara U. of Utah The Internet • The largest internetwork (network of networks) in the world • Devices communicating with TCP/IP protocol suite at high level

  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 http://www.computerworld.com/s/article/print/9191518/Final_IPv4_addresses_to_be_issued_within_months_NRO_warns

  16. Future of the Internet http://www.computerworld.com/s/article/9207961/Update_ICANN_assigns_its_last_IPv4_addresses

  17. Future of the Internet http://www.zdnet.com/blog/networking/its-official-asias-just-run-out-of-ipv4-addresses/948

  18. Internet of Things http://www.opinno.com/en/content/internet-things-0

  19. Connected Living https://devcentral.f5.com/articles/security-sidebar-defending-the-internet-of-things

  20. Connected Living http://www.jumpthecurve.net/wp-content/uploads/2014/03/ericssonthings1.jpg

  21. Future of the Internet http://www.itworld.com/networking/231929/usenix-google-deploys-ipv6-internal-network

  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)

  24. Ping

  25. Trace Route

  26. Monitoring Network Traffic Sample results from Wireshark

  27. Application Program Interface (API) • Set of operation for application programmer • Specify arguments and semantics

  28. API for developing applications that perform inter-process communication in C/C++ most commonly for communications across a computer network, especially UNIX Example functions listen – used by server to wait for contact from client connect – used by client to contact server send – used by either client or server to send data recv – used by either client or server to receive data Java, .NET, Python, etc. provide convenient wrappers around socket API Easier to write than C/C++ Berkeley Socket API

  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

More Related